Compare commits
5 Commits
f3216a74db
...
04e1ad0d0a
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
04e1ad0d0a | ||
|
|
2516378755 | ||
|
|
f94a6d137e | ||
|
|
7526d8d2a1 | ||
|
|
21ed153977 |
@@ -1,70 +1,116 @@
|
||||
// ================= README =================
|
||||
// these are the normal parameters used by
|
||||
// each one of the layout scripts
|
||||
// however they do dont directly use them
|
||||
// and instead have thier own copy
|
||||
//
|
||||
// this was done in order to have more control
|
||||
// over each of the scripts themsevels
|
||||
// allowing each to have even more parameters
|
||||
// and having them show up in the open scad
|
||||
// parameters window
|
||||
// ================= README =================
|
||||
|
||||
// ================= openscad prams =================
|
||||
$fa = 1;
|
||||
|
||||
// min angle
|
||||
$fa = 0.1;
|
||||
|
||||
// min size
|
||||
$fs = 0.01;
|
||||
// ================= openscad prams =================
|
||||
|
||||
// ================= meta =================
|
||||
// version number of the current script
|
||||
SCRIPT_VERSION="0.0.1";
|
||||
// this really just need to be any mon font
|
||||
|
||||
// font for layout
|
||||
FONT="Ubuntu Sans Mono:style=Regular";
|
||||
|
||||
// the test number ref number for this set of IDTs
|
||||
test_number = 1;
|
||||
// scale in m
|
||||
|
||||
// this is needed due to the min size value
|
||||
// a pre scaler for the given values
|
||||
scale_unit = 1e3;
|
||||
|
||||
// ================= meta =================
|
||||
|
||||
|
||||
// ================= IDT =================
|
||||
|
||||
// the underlying substrate
|
||||
substrate = "SI";
|
||||
|
||||
// linbo
|
||||
// the aoucstice wave speed in the substrate
|
||||
c = 3992.0;
|
||||
// si
|
||||
// c = 3159.0;
|
||||
|
||||
// the target frequency of the IDT
|
||||
freq = 50.0e6;
|
||||
|
||||
// $fs = (c/freq);
|
||||
|
||||
// inout distance
|
||||
// the distance between the input and output IDT
|
||||
// should be between 100-200
|
||||
distance = 50;
|
||||
|
||||
// number of finger
|
||||
// the number of fingers the IDT has
|
||||
n_fingers = 50;
|
||||
|
||||
// should be 50-70
|
||||
// the length of the figure or aperture should be 50-70
|
||||
finger_length = 60;
|
||||
|
||||
// for tweaking the design
|
||||
// the gap between both sides of the IDT (should be used for tweaking)
|
||||
gap = 0;
|
||||
|
||||
// for tweaking the design
|
||||
// the thickness of the wire the connects all the fingers
|
||||
thickness = 0;
|
||||
|
||||
// adds an ID number to an IDT, useful if you have multiple on a wafer
|
||||
has_id_number = false;
|
||||
// ================= IDT =================
|
||||
|
||||
// ================= bond pad =================
|
||||
|
||||
// the length of the bond pad leg from the edge of the IDT to the center of the bond pad
|
||||
leg_length = 0.003;
|
||||
|
||||
// the width of the leg
|
||||
leg_width = 0.00001875;
|
||||
|
||||
// the angle the leg comes off from the IDT,
|
||||
// positive angle means the leg is angled away
|
||||
// negitive angle means the leg is angled inwards
|
||||
leg_angle = 10;
|
||||
|
||||
// the size of the bond pad
|
||||
size = 0.002;
|
||||
|
||||
// the shape of the bond pad (not implemented)
|
||||
bond_pad_shape = "square";
|
||||
|
||||
// ================= bond pad =================
|
||||
|
||||
// ================= text =================
|
||||
|
||||
info_block_offset_x=7;
|
||||
info_block_offset_y=30;
|
||||
// total scale of infoblock
|
||||
info_block_scale=0.3;
|
||||
|
||||
// the text size of the heading in the info block
|
||||
title_text_size = 4;
|
||||
|
||||
// the size of all the sub items in the info block
|
||||
prop_text_size = 2.5;
|
||||
|
||||
// the size of the ID numbers in on the IDTS
|
||||
id_text_size = 1;
|
||||
|
||||
// ================= text =================
|
||||
|
||||
// ================= array spacings =================
|
||||
number_of_idts_per_quadrent=4;
|
||||
idt_x_spacing = 10;
|
||||
idt_y_spacing = 12.5;
|
||||
// ================= array spacings =================
|
||||
|
||||
|
||||
// ================= wafers =================
|
||||
// the size of the wafer in inchs (why inch and not metric like everything else because its standard)
|
||||
wafer_size_inch = 4;
|
||||
// ================= wafers =================
|
||||
|
||||
38
dxfs/10MHz_pair_IDT/pair_idt.json
Normal file
38
dxfs/10MHz_pair_IDT/pair_idt.json
Normal file
@@ -0,0 +1,38 @@
|
||||
{
|
||||
"parameterSets": {
|
||||
"design default values": {
|
||||
"$fa": "1",
|
||||
"$fs": "0.01",
|
||||
"FONT": "Ubuntu Sans Mono:style=Regular",
|
||||
"SCRIPT_VERSION": "0.0.1",
|
||||
"bond_pad_shape": "square",
|
||||
"c": "3992",
|
||||
"distance": "70",
|
||||
"finger_length": "50",
|
||||
"freq": "1e+7",
|
||||
"gap": "0",
|
||||
"has_id_number": "true",
|
||||
"id_text_size": "1",
|
||||
"idt_1_x_offset": "-15",
|
||||
"idt_1_y_offset": "0",
|
||||
"idt_2_x_offset": "15",
|
||||
"idt_2_y_offset": "0",
|
||||
"info_block_offset_x": "32",
|
||||
"info_block_offset_y": "-7",
|
||||
"info_block_scale": "0.3",
|
||||
"leg_angle": "10",
|
||||
"leg_length": "0.003",
|
||||
"leg_width": "0.00001875",
|
||||
"n_fingers": "50",
|
||||
"prop_text_size": "2.5",
|
||||
"scale_unit": "1000",
|
||||
"size": "0.002",
|
||||
"substrate": "SI",
|
||||
"test_number": "2",
|
||||
"thickness": "0",
|
||||
"title_text_size": "4",
|
||||
"wafer_size_inch": "4"
|
||||
}
|
||||
},
|
||||
"fileFormatVersion": "1"
|
||||
}
|
||||
713626
dxfs/10MHz_single_IDT/single_IDT_SI#1.dxf
Normal file
713626
dxfs/10MHz_single_IDT/single_IDT_SI#1.dxf
Normal file
File diff suppressed because it is too large
Load Diff
36
dxfs/10MHz_single_IDT/single_idt.json
Normal file
36
dxfs/10MHz_single_IDT/single_idt.json
Normal file
@@ -0,0 +1,36 @@
|
||||
{
|
||||
"parameterSets": {
|
||||
"design default values": {
|
||||
"$fa": "0.1",
|
||||
"$fs": "0.01",
|
||||
"FONT": "Ubuntu Sans Mono:style=Regular",
|
||||
"SCRIPT_VERSION": "0.0.1",
|
||||
"bond_pad_shape": "square",
|
||||
"c": "3992",
|
||||
"distance": "50",
|
||||
"finger_length": "50",
|
||||
"freq": "1e+7",
|
||||
"gap": "0",
|
||||
"has_id_number": "false",
|
||||
"id_text_size": "1",
|
||||
"idt_x_offset": "0",
|
||||
"idt_y_offset": "0",
|
||||
"info_block_offset_x": "25",
|
||||
"info_block_offset_y": "10",
|
||||
"info_block_scale": "0.3",
|
||||
"leg_angle": "10",
|
||||
"leg_length": "0.003",
|
||||
"leg_width": "0.00001875",
|
||||
"n_fingers": "50",
|
||||
"prop_text_size": "2.5",
|
||||
"scale_unit": "1000",
|
||||
"size": "0.002",
|
||||
"substrate": "SI",
|
||||
"test_number": "1",
|
||||
"thickness": "0",
|
||||
"title_text_size": "4",
|
||||
"wafer_size_inch": "4"
|
||||
}
|
||||
},
|
||||
"fileFormatVersion": "1"
|
||||
}
|
||||
3543358
dxfs/345MHz_grid_10_10_IDT/gird_array_idt.dxf
Normal file
3543358
dxfs/345MHz_grid_10_10_IDT/gird_array_idt.dxf
Normal file
File diff suppressed because it is too large
Load Diff
38
dxfs/345MHz_grid_10_10_IDT/gird_array_idt.json
Normal file
38
dxfs/345MHz_grid_10_10_IDT/gird_array_idt.json
Normal file
@@ -0,0 +1,38 @@
|
||||
{
|
||||
"parameterSets": {
|
||||
"design default values": {
|
||||
"$fa": "0.1",
|
||||
"$fs": "0.01",
|
||||
"FONT": "Ubuntu Sans Mono:style=Regular",
|
||||
"SCRIPT_VERSION": "0.0.1",
|
||||
"bond_pad_shape": "square",
|
||||
"c": "3992",
|
||||
"cols": "10",
|
||||
"distance": "50",
|
||||
"finger_length": "60",
|
||||
"freq": "3.45e+8",
|
||||
"gap": "0",
|
||||
"has_id_number": "true",
|
||||
"id_text_size": "0.5",
|
||||
"info_block_offset_x": "28",
|
||||
"info_block_offset_y": "-5",
|
||||
"info_block_scale": "0.3",
|
||||
"leg_angle": "10",
|
||||
"leg_length": "0.001",
|
||||
"leg_width": "0.00001875",
|
||||
"n_fingers": "50",
|
||||
"prop_text_size": "2.5",
|
||||
"rows": "10",
|
||||
"scale_unit": "1000",
|
||||
"size": "0.00075",
|
||||
"spacing_x": "4",
|
||||
"spacing_y": "7",
|
||||
"substrate": "SI",
|
||||
"test_number": "1",
|
||||
"thickness": "0",
|
||||
"title_text_size": "4",
|
||||
"wafer_size_inch": "4"
|
||||
}
|
||||
},
|
||||
"fileFormatVersion": "1"
|
||||
}
|
||||
@@ -24,7 +24,9 @@ module bi_directional_idt(
|
||||
// id number prams
|
||||
id_number = 0,
|
||||
has_id = false,
|
||||
id_flip_dir = [1, 1, 1],
|
||||
id_scale = [1, 1, 1],
|
||||
id_translate = [0, 0, 0],
|
||||
id_rot = [0, 0, 0],
|
||||
// extra
|
||||
post_scale = 1,
|
||||
echo_stats = false,
|
||||
@@ -46,7 +48,9 @@ module bi_directional_idt(
|
||||
if (has_id) {
|
||||
color([255/255, 0/255, 255/255])
|
||||
translate([finger_length*lambda/2, has_bond_pads ? -(bond_pad_leg_length * post_scale * cos(bond_pad_angle)) : -lambda*finger_length/2, 0])
|
||||
scale(id_flip_dir)
|
||||
translate(id_translate)
|
||||
rotate(id_rot)
|
||||
scale(id_scale)
|
||||
text(str(id_number), size=id_text_size, halign="center");
|
||||
}
|
||||
|
||||
|
||||
@@ -15,7 +15,6 @@ module bond_pad(
|
||||
bond_pad_shape = "square",
|
||||
post_scale = false
|
||||
) {
|
||||
if (post_scale) {
|
||||
circle(r=leg_width*post_scale);
|
||||
|
||||
rotate([0, 0, leg_angle+180]) {
|
||||
@@ -33,16 +32,4 @@ module bond_pad(
|
||||
|
||||
// echo(str("x = ", post_scale*leg_length*cos(leg_angle+180)));
|
||||
// echo(str("y = ", post_scale*leg_length*sin(leg_angle+180)));
|
||||
|
||||
|
||||
} else {
|
||||
rotate([0, 0, leg_angle+180]) {
|
||||
translate([-leg_length/2, -leg_width, 0]) {
|
||||
// color([0, 255/255, 255/255]) {
|
||||
square(size=[leg_length, leg_width]);
|
||||
// }
|
||||
}
|
||||
}
|
||||
square(size=[size, size], center=true);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -27,7 +27,7 @@ module delay_line(lambda = 1, n_fingers = 1, finger_length = 50, gap = 0, thickn
|
||||
[b, l4*5-l4],
|
||||
[0, l4*5-l4]
|
||||
];
|
||||
// union () {
|
||||
union () {
|
||||
|
||||
translate([0, l2, 0]){
|
||||
for(i = [0:n_fingers]){
|
||||
@@ -64,6 +64,6 @@ module delay_line(lambda = 1, n_fingers = 1, finger_length = 50, gap = 0, thickn
|
||||
square(size=[l4+thickness, l4]);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
188
wafer_layouts/gird_array_idt.scad
Normal file
188
wafer_layouts/gird_array_idt.scad
Normal file
@@ -0,0 +1,188 @@
|
||||
include <../modules/bidirectional_idt.scad>
|
||||
include <../modules/parameter_text.scad>
|
||||
include <../modules/wafer.scad>
|
||||
|
||||
// ================= README =================
|
||||
// these are the normal parameters used by
|
||||
// each one of the layout scripts
|
||||
// however they do dont directly use them
|
||||
// and instead have thier own copy
|
||||
//
|
||||
// this was done in order to have more control
|
||||
// over each of the scripts themsevels
|
||||
// allowing each to have even more parameters
|
||||
// and having them show up in the open scad
|
||||
// parameters window
|
||||
// ================= README =================
|
||||
|
||||
// ================= openscad prams =================
|
||||
|
||||
// min angle
|
||||
$fa = 0.1;
|
||||
|
||||
// min size
|
||||
$fs = 0.01;
|
||||
// ================= openscad prams =================
|
||||
|
||||
// ================= meta =================
|
||||
// version number of the current script
|
||||
SCRIPT_VERSION="0.0.1";
|
||||
|
||||
// font for layout
|
||||
FONT="Ubuntu Sans Mono:style=Regular";
|
||||
|
||||
// the test number ref number for this set of IDTs
|
||||
test_number = 1;
|
||||
|
||||
// this is needed due to the min size value
|
||||
// a pre scaler for the given values
|
||||
scale_unit = 1e3;
|
||||
|
||||
// ================= meta =================
|
||||
|
||||
|
||||
// ================= IDT =================
|
||||
|
||||
// the underlying substrate
|
||||
substrate = "SI";
|
||||
|
||||
// linbo
|
||||
// the aoucstice wave speed in the substrate
|
||||
c = 3992.0;
|
||||
// si
|
||||
// c = 3159.0;
|
||||
|
||||
// the target frequency of the IDT
|
||||
freq = 345.0e6;
|
||||
|
||||
// the distance between the input and output IDT
|
||||
// should be between 100-200
|
||||
distance = 50;
|
||||
|
||||
// the number of fingers the IDT has
|
||||
n_fingers = 50;
|
||||
|
||||
// the length of the figure or aperture should be 50-70
|
||||
finger_length = 60;
|
||||
|
||||
// the gap between both sides of the IDT (should be used for tweaking)
|
||||
gap = 0;
|
||||
|
||||
// the thickness of the wire the connects all the fingers
|
||||
thickness = 0;
|
||||
|
||||
// adds an ID number to an IDT, useful if you have multiple on a wafer
|
||||
has_id_number = true;
|
||||
// ================= IDT =================
|
||||
|
||||
// ================= bond pad =================
|
||||
|
||||
// the length of the bond pad leg from the edge of the IDT to the center of the bond pad
|
||||
leg_length = 0.001;
|
||||
|
||||
// the width of the leg
|
||||
leg_width = 0.00001875;
|
||||
|
||||
// the angle the leg comes off from the IDT,
|
||||
// positive angle means the leg is angled away
|
||||
// negitive angle means the leg is angled inwards
|
||||
leg_angle = 10;
|
||||
|
||||
// the size of the bond pad
|
||||
size = 0.00075;
|
||||
|
||||
// the shape of the bond pad (not implemented)
|
||||
bond_pad_shape = "square";
|
||||
|
||||
// ================= bond pad =================
|
||||
|
||||
// ================= text =================
|
||||
|
||||
info_block_offset_x=28;
|
||||
info_block_offset_y=-5;
|
||||
// total scale of infoblock
|
||||
info_block_scale=0.3;
|
||||
|
||||
// the text size of the heading in the info block
|
||||
title_text_size = 4;
|
||||
|
||||
// the size of all the sub items in the info block
|
||||
prop_text_size = 2.5;
|
||||
|
||||
// the size of the ID numbers in on the IDTS
|
||||
id_text_size = 0.5;
|
||||
|
||||
// ================= text =================
|
||||
|
||||
// ================= wafers =================
|
||||
// the size of the wafer in inchs (why inch and not metric like everything else because its standard)
|
||||
wafer_size_inch = 4;
|
||||
// ================= wafers =================
|
||||
|
||||
// ================= # IDTS =================
|
||||
|
||||
rows = 10;
|
||||
cols = 10;
|
||||
spacing_x = 4;
|
||||
spacing_y = 7;
|
||||
|
||||
// ================= # IDTS =================
|
||||
|
||||
|
||||
module params() {
|
||||
parameter_text(
|
||||
str("IDT ", substrate, "#", test_number),
|
||||
[
|
||||
str("c (ms): ", c),
|
||||
str("freq (Hz): ", freq),
|
||||
str("distance : ", distance),
|
||||
str("n_fingers : ", n_fingers),
|
||||
str("finger_length : ", finger_length),
|
||||
str("gap : ", gap),
|
||||
str("thickness : ", thickness),
|
||||
str("leg_length : ", leg_length),
|
||||
str("leg_angle : ", leg_angle),
|
||||
str("size : ", size),
|
||||
str("feat. size (mm): ", (c/freq)*1e3),
|
||||
str("version : ", SCRIPT_VERSION)
|
||||
]
|
||||
);
|
||||
}
|
||||
|
||||
|
||||
|
||||
translate([info_block_offset_x, -info_block_offset_y, 0])
|
||||
scale([info_block_scale, info_block_scale, info_block_scale])
|
||||
params();
|
||||
|
||||
wafer(4*0.0254*scale_unit);
|
||||
|
||||
translate([-spacing_x*rows/2, -spacing_y*cols/2, 0])
|
||||
for (x=[0:rows]) {
|
||||
for (y=[0:cols]) {
|
||||
translate([spacing_x*x, spacing_y*y, 0])
|
||||
bi_directional_idt(
|
||||
c,
|
||||
freq,
|
||||
n_fingers,
|
||||
distance,
|
||||
finger_length,
|
||||
gap,
|
||||
thickness,
|
||||
post_scale=scale_unit,
|
||||
center = true,
|
||||
has_bond_pads = true,
|
||||
bond_pad_angle = leg_angle,
|
||||
bond_pad_leg_width = leg_width,
|
||||
bond_pad_leg_length = leg_length,
|
||||
bond_pad_size = size,
|
||||
has_id = has_id_number,
|
||||
id_translate = [1.7, -0.5, 0],
|
||||
id_rot = [0, 0, 90],
|
||||
id_number = x*rows + y
|
||||
);
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -36,18 +36,18 @@ substrate = "LINBO";
|
||||
c = 3992.0;
|
||||
// si
|
||||
// c = 3159.0;
|
||||
freq = 50.0e6;
|
||||
freq = 10.0e6;
|
||||
|
||||
// $fs = (c/freq);
|
||||
|
||||
// inout distance
|
||||
distance = 50;
|
||||
distance = 70;
|
||||
|
||||
// number of finger
|
||||
n_fingers = 50;
|
||||
|
||||
// should be 50-70
|
||||
finger_length = 60;
|
||||
finger_length = 50;
|
||||
|
||||
// for tweaking the design
|
||||
gap = 0;
|
||||
@@ -55,7 +55,7 @@ gap = 0;
|
||||
// for tweaking the design
|
||||
thickness = 0;
|
||||
|
||||
has_id_number = false;
|
||||
has_id_number = true;
|
||||
// ================= IDT =================
|
||||
|
||||
// ================= bond pad =================
|
||||
@@ -67,8 +67,8 @@ bond_pad_shape = "square";
|
||||
// ================= bond pad =================
|
||||
|
||||
// ================= text =================
|
||||
info_block_offset_x=20;
|
||||
info_block_offset_y=-15;
|
||||
info_block_offset_x=32;
|
||||
info_block_offset_y=-7;
|
||||
info_block_scale=0.3;
|
||||
title_text_size = 4;
|
||||
prop_text_size = 2.5;
|
||||
@@ -76,9 +76,9 @@ id_text_size = 1;
|
||||
// ================= text =================
|
||||
|
||||
// ================= IDT Pos =================
|
||||
idt_1_x_offset = -5;
|
||||
idt_1_x_offset = -15;
|
||||
idt_1_y_offset = 0;
|
||||
idt_2_x_offset = 5;
|
||||
idt_2_x_offset = 15;
|
||||
idt_2_y_offset = 0;
|
||||
// ================= IDT Pos =================
|
||||
|
||||
@@ -128,6 +128,7 @@ bi_directional_idt(
|
||||
bond_pad_leg_width = leg_width,
|
||||
bond_pad_leg_length = leg_length,
|
||||
bond_pad_size = size,
|
||||
has_id = has_id_number,
|
||||
center = true
|
||||
);
|
||||
|
||||
@@ -146,5 +147,7 @@ bi_directional_idt(
|
||||
bond_pad_leg_width = leg_width,
|
||||
bond_pad_leg_length = leg_length,
|
||||
bond_pad_size = size,
|
||||
has_id = has_id_number,
|
||||
id_number = 1,
|
||||
center = true
|
||||
);
|
||||
37
wafer_layouts/quadrant_array.json
Normal file
37
wafer_layouts/quadrant_array.json
Normal file
@@ -0,0 +1,37 @@
|
||||
{
|
||||
"parameterSets": {
|
||||
"frogs": {
|
||||
"$fa": "1",
|
||||
"$fs": "0.01",
|
||||
"FONT": "Ubuntu Sans Mono:style=Regular",
|
||||
"SCRIPT_VERSION": "0.0.1",
|
||||
"bond_pad_shape": "square",
|
||||
"c": "3992",
|
||||
"distance": "50",
|
||||
"finger_length": "60",
|
||||
"freq": "5e+7",
|
||||
"gap": "0",
|
||||
"has_id_number": "true",
|
||||
"id_text_size": "1",
|
||||
"idt_x_spacing": "10",
|
||||
"idt_y_spacing": "12.5",
|
||||
"info_block_offset_x": "7",
|
||||
"info_block_offset_y": "30",
|
||||
"info_block_scale": "0.3",
|
||||
"leg_angle": "10",
|
||||
"leg_length": "0.003",
|
||||
"leg_width": "0.00001875",
|
||||
"n_fingers": "50",
|
||||
"number_of_idts_per_quadrent": "4",
|
||||
"prop_text_size": "2.5",
|
||||
"scale_unit": "1000",
|
||||
"size": "0.002",
|
||||
"substrate": "LINBO",
|
||||
"test_number": "1",
|
||||
"thickness": "0",
|
||||
"title_text_size": "4",
|
||||
"wafer_size_inch": "4"
|
||||
}
|
||||
},
|
||||
"fileFormatVersion": "1"
|
||||
}
|
||||
@@ -156,7 +156,7 @@ for (i=[0:number_of_idts_per_quadrent-1]) {
|
||||
bond_pad_size = size,
|
||||
has_id = has_id_number,
|
||||
id_number = i + number_of_idts_per_quadrent,
|
||||
id_flip_dir = [1, -1, -1]
|
||||
id_scale = [1, -1, -1]
|
||||
);
|
||||
}
|
||||
}
|
||||
@@ -182,7 +182,7 @@ for (i=[0:number_of_idts_per_quadrent-1]) {
|
||||
bond_pad_size = size,
|
||||
has_id = has_id_number,
|
||||
id_number = i + number_of_idts_per_quadrent*2,
|
||||
id_flip_dir = [-1, 1, 1]
|
||||
id_scale = [-1, 1, 1]
|
||||
);
|
||||
}
|
||||
translate([i * idt_x_spacing, -idt_y_spacing/2, 0]) {
|
||||
@@ -203,7 +203,7 @@ for (i=[0:number_of_idts_per_quadrent-1]) {
|
||||
bond_pad_size = size,
|
||||
has_id = has_id_number,
|
||||
id_number = i + number_of_idts_per_quadrent*3,
|
||||
id_flip_dir = [-1, -1, 1]
|
||||
id_scale = [-1, -1, 1]
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -15,75 +15,121 @@ include <../modules/wafer.scad>
|
||||
// parameters window
|
||||
// ================= README =================
|
||||
|
||||
|
||||
// ================= openscad prams =================
|
||||
$fa = 1;
|
||||
|
||||
// min angle
|
||||
$fa = 0.1;
|
||||
|
||||
// min size
|
||||
$fs = 0.01;
|
||||
// ================= openscad prams =================
|
||||
|
||||
// ================= meta =================
|
||||
// version number of the current script
|
||||
SCRIPT_VERSION="0.0.1";
|
||||
// this really just need to be any mon font
|
||||
|
||||
// font for layout
|
||||
FONT="Ubuntu Sans Mono:style=Regular";
|
||||
|
||||
// the test number ref number for this set of IDTs
|
||||
test_number = 1;
|
||||
// scale in m
|
||||
|
||||
// this is needed due to the min size value
|
||||
// a pre scaler for the given values
|
||||
scale_unit = 1e3;
|
||||
|
||||
// ================= meta =================
|
||||
|
||||
|
||||
// ================= IDT =================
|
||||
substrate = "LINBO";
|
||||
|
||||
// the underlying substrate
|
||||
substrate = "SI";
|
||||
|
||||
// linbo
|
||||
// the aoucstice wave speed in the substrate
|
||||
c = 3992.0;
|
||||
// si
|
||||
// c = 3159.0;
|
||||
freq = 50.0e6;
|
||||
|
||||
// $fs = (c/freq);
|
||||
// the target frequency of the IDT
|
||||
freq = 10.0e6;
|
||||
|
||||
// inout distance
|
||||
// the distance between the input and output IDT
|
||||
// should be between 100-200
|
||||
distance = 50;
|
||||
|
||||
// number of finger
|
||||
// the number of fingers the IDT has
|
||||
n_fingers = 50;
|
||||
|
||||
// should be 50-70
|
||||
finger_length = 60;
|
||||
// the length of the figure or aperture should be 50-70
|
||||
finger_length = 50;
|
||||
|
||||
// for tweaking the design
|
||||
// the gap between both sides of the IDT (should be used for tweaking)
|
||||
gap = 0;
|
||||
|
||||
// for tweaking the design
|
||||
// the thickness of the wire the connects all the fingers
|
||||
thickness = 0;
|
||||
|
||||
// adds an ID number to an IDT, useful if you have multiple on a wafer
|
||||
has_id_number = false;
|
||||
// ================= IDT =================
|
||||
|
||||
// ================= bond pad =================
|
||||
|
||||
// the length of the bond pad leg from the edge of the IDT to the center of the bond pad
|
||||
leg_length = 0.003;
|
||||
|
||||
// the width of the leg
|
||||
leg_width = 0.00001875;
|
||||
|
||||
// the angle the leg comes off from the IDT,
|
||||
// positive angle means the leg is angled away
|
||||
// negitive angle means the leg is angled inwards
|
||||
leg_angle = 10;
|
||||
|
||||
// the size of the bond pad
|
||||
size = 0.002;
|
||||
|
||||
// the shape of the bond pad (not implemented)
|
||||
bond_pad_shape = "square";
|
||||
|
||||
// ================= bond pad =================
|
||||
|
||||
// ================= text =================
|
||||
info_block_offset_x=20;
|
||||
info_block_offset_y=-15;
|
||||
|
||||
info_block_offset_x=25;
|
||||
info_block_offset_y=10;
|
||||
// total scale of infoblock
|
||||
info_block_scale=0.3;
|
||||
|
||||
// the text size of the heading in the info block
|
||||
title_text_size = 4;
|
||||
|
||||
// the size of all the sub items in the info block
|
||||
prop_text_size = 2.5;
|
||||
|
||||
// the size of the ID numbers in on the IDTS
|
||||
id_text_size = 1;
|
||||
|
||||
// ================= text =================
|
||||
|
||||
// ================= IDT Pos =================
|
||||
idt_x_offset = 0;
|
||||
idt_y_offset = 0;
|
||||
// ================= IDT Pos =================
|
||||
|
||||
// ================= wafers =================
|
||||
// the size of the wafer in inchs (why inch and not metric like everything else because its standard)
|
||||
wafer_size_inch = 4;
|
||||
// ================= wafers =================
|
||||
|
||||
|
||||
|
||||
// ================= IDT Pos =================
|
||||
|
||||
// the x offset of the IDT from the center
|
||||
idt_x_offset = 0;
|
||||
// the y offset of the IDT from the center
|
||||
idt_y_offset = 0;
|
||||
|
||||
// ================= IDT Pos =================
|
||||
|
||||
module params() {
|
||||
parameter_text(
|
||||
str("IDT ", substrate, "#", test_number),
|
||||
@@ -98,7 +144,7 @@ module params() {
|
||||
str("leg_length : ", leg_length),
|
||||
str("leg_angle : ", leg_angle),
|
||||
str("size : ", size),
|
||||
str("feat. size (mm): ", (c/freq)*1e3),
|
||||
str("feat. size (mm): ", (c/freq)*scale_unit),
|
||||
str("version : ", SCRIPT_VERSION)
|
||||
]
|
||||
);
|
||||
|
||||
Reference in New Issue
Block a user