fairly happy
This commit is contained in:
@@ -47,11 +47,11 @@ info_block_offset_y=30;
|
|||||||
info_block_scale=0.3;
|
info_block_scale=0.3;
|
||||||
title_text_size = 4;
|
title_text_size = 4;
|
||||||
prop_text_size = 2.5;
|
prop_text_size = 2.5;
|
||||||
id_text_size = 2;
|
id_text_size = 1;
|
||||||
|
|
||||||
number_of_idts_per_quadrent=4;
|
number_of_idts_per_quadrent=4;
|
||||||
idt_x_spacing = 10;
|
idt_x_spacing = 10;
|
||||||
idt_y_spacing = 7;
|
idt_y_spacing = 12.5;
|
||||||
|
|
||||||
wafer_size_inch = 4;
|
wafer_size_inch = 4;
|
||||||
|
|
||||||
@@ -185,16 +185,22 @@ module delay_line_idt(
|
|||||||
finger_length = 50,
|
finger_length = 50,
|
||||||
gap = 0,
|
gap = 0,
|
||||||
thickness = 0,
|
thickness = 0,
|
||||||
impedance = 50,
|
impedance = 50,
|
||||||
|
|
||||||
|
// bond pad prams
|
||||||
has_bond_pads = false,
|
has_bond_pads = false,
|
||||||
bond_pad_leg_length = 0.00005,
|
bond_pad_leg_length = 0.00005,
|
||||||
bond_pad_leg_width = 0.00001875,
|
bond_pad_leg_width = 0.00001875,
|
||||||
bond_pad_size = 0.000075,
|
bond_pad_size = 0.000075,
|
||||||
bond_pad_angle = 45,
|
bond_pad_angle = 45,
|
||||||
bond_pad_bond_pad_shape = "square",
|
bond_pad_bond_pad_shape = "square",
|
||||||
post_scale = false,
|
|
||||||
|
// id number prams
|
||||||
id_number = 0,
|
id_number = 0,
|
||||||
has_id = true
|
has_id = true,
|
||||||
|
id_flip_dir = [1, 1, 1],
|
||||||
|
// extra
|
||||||
|
post_scale = false
|
||||||
) {
|
) {
|
||||||
|
|
||||||
local_scale = 0;
|
local_scale = 0;
|
||||||
@@ -207,7 +213,7 @@ module delay_line_idt(
|
|||||||
// n_fingers*lambda+lambda/2;
|
// n_fingers*lambda+lambda/2;
|
||||||
|
|
||||||
|
|
||||||
echo(str("lambda = ", lambda));
|
// echo(str("lambda = ", lambda));
|
||||||
// echo(str("lambda/4 = ", lambda/4));
|
// echo(str("lambda/4 = ", lambda/4));
|
||||||
// echo(str("lambda_scale = ", post_scale));
|
// echo(str("lambda_scale = ", post_scale));
|
||||||
delay_line(lambda, n_fingers, finger_length, gap, thickness);
|
delay_line(lambda, n_fingers, finger_length, gap, thickness);
|
||||||
@@ -215,8 +221,9 @@ module delay_line_idt(
|
|||||||
|
|
||||||
|
|
||||||
if (has_id) {
|
if (has_id) {
|
||||||
color([255/255, 0/255, 255/255])
|
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])
|
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)
|
||||||
text(str(id_number), size=id_text_size, halign="center");
|
text(str(id_number), size=id_text_size, halign="center");
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -328,9 +335,9 @@ module wafer(d) {
|
|||||||
module prameter_text() {
|
module prameter_text() {
|
||||||
text(str("IDT ", substrate, "#", test_number), size=4, font=FONT);
|
text(str("IDT ", substrate, "#", test_number), size=4, font=FONT);
|
||||||
translate([0, -title_text_size, 0])
|
translate([0, -title_text_size, 0])
|
||||||
text(str("c : ", c), size=prop_text_size, font=FONT);
|
text(str("c (ms): ", c), size=prop_text_size, font=FONT);
|
||||||
translate([0, -title_text_size*2, 0])
|
translate([0, -title_text_size*2, 0])
|
||||||
text(str("freq : ", freq), size=prop_text_size, font=FONT);
|
text(str("freq (Hz): ", freq), size=prop_text_size, font=FONT);
|
||||||
translate([0, -title_text_size*3, 0])
|
translate([0, -title_text_size*3, 0])
|
||||||
text(str("distance : ", distance), size=prop_text_size, font=FONT);
|
text(str("distance : ", distance), size=prop_text_size, font=FONT);
|
||||||
translate([0, -title_text_size*4, 0])
|
translate([0, -title_text_size*4, 0])
|
||||||
@@ -387,11 +394,11 @@ scale([info_block_scale, info_block_scale, info_block_scale]) {
|
|||||||
// bond_pad_size = size
|
// bond_pad_size = size
|
||||||
// );
|
// );
|
||||||
|
|
||||||
|
if ($preview)
|
||||||
// wafer(wafer_size_inch*25.4);
|
wafer(wafer_size_inch*25.4*post_scale);
|
||||||
for (i=[0:number_of_idts_per_quadrent-1]) {
|
for (i=[0:number_of_idts_per_quadrent-1]) {
|
||||||
translate([idt_x_spacing/4, 0, 0]) {
|
translate([idt_x_spacing/4, 0, 0]) {
|
||||||
translate([i * idt_x_spacing, idt_y_spacing, 0]) {
|
translate([i * idt_x_spacing, idt_y_spacing/2, 0]) {
|
||||||
delay_line_idt(
|
delay_line_idt(
|
||||||
c,
|
c,
|
||||||
freq,
|
freq,
|
||||||
@@ -405,10 +412,11 @@ for (i=[0:number_of_idts_per_quadrent-1]) {
|
|||||||
bond_pad_angle = leg_angle,
|
bond_pad_angle = leg_angle,
|
||||||
bond_pad_leg_width = leg_width,
|
bond_pad_leg_width = leg_width,
|
||||||
bond_pad_leg_length = leg_length,
|
bond_pad_leg_length = leg_length,
|
||||||
bond_pad_size = size
|
bond_pad_size = size,
|
||||||
|
id_number = i
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
translate([i * idt_x_spacing, -idt_y_spacing, 0]) {
|
translate([i * idt_x_spacing, -idt_y_spacing/2, 0]) {
|
||||||
scale([1, -1, 1]) {
|
scale([1, -1, 1]) {
|
||||||
delay_line_idt(
|
delay_line_idt(
|
||||||
c,
|
c,
|
||||||
@@ -423,16 +431,18 @@ for (i=[0:number_of_idts_per_quadrent-1]) {
|
|||||||
bond_pad_angle = leg_angle,
|
bond_pad_angle = leg_angle,
|
||||||
bond_pad_leg_width = leg_width,
|
bond_pad_leg_width = leg_width,
|
||||||
bond_pad_leg_length = leg_length,
|
bond_pad_leg_length = leg_length,
|
||||||
bond_pad_size = size
|
bond_pad_size = size,
|
||||||
|
id_number = i + number_of_idts_per_quadrent,
|
||||||
|
id_flip_dir = [1, -1, -1]
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
scale([-1, 1, 1])
|
scale([-1, 1, 1])
|
||||||
translate([idt_x_spacing/4, 0, 0]) {
|
translate([idt_x_spacing/4, 0, 0]) {
|
||||||
|
|
||||||
translate([i * idt_x_spacing, idt_y_spacing, 0]) {
|
translate([i * idt_x_spacing, idt_y_spacing/2, 0]) {
|
||||||
delay_line_idt(
|
delay_line_idt(
|
||||||
c,
|
c,
|
||||||
freq,
|
freq,
|
||||||
@@ -446,10 +456,12 @@ for (i=[0:number_of_idts_per_quadrent-1]) {
|
|||||||
bond_pad_angle = leg_angle,
|
bond_pad_angle = leg_angle,
|
||||||
bond_pad_leg_width = leg_width,
|
bond_pad_leg_width = leg_width,
|
||||||
bond_pad_leg_length = leg_length,
|
bond_pad_leg_length = leg_length,
|
||||||
bond_pad_size = size
|
bond_pad_size = size,
|
||||||
|
id_number = i + number_of_idts_per_quadrent*2,
|
||||||
|
id_flip_dir = [-1, 1, 1]
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
translate([i * idt_x_spacing, -idt_y_spacing, 0]) {
|
translate([i * idt_x_spacing, -idt_y_spacing/2, 0]) {
|
||||||
scale([1, -1, 1]) {
|
scale([1, -1, 1]) {
|
||||||
delay_line_idt(
|
delay_line_idt(
|
||||||
c,
|
c,
|
||||||
@@ -464,7 +476,9 @@ for (i=[0:number_of_idts_per_quadrent-1]) {
|
|||||||
bond_pad_angle = leg_angle,
|
bond_pad_angle = leg_angle,
|
||||||
bond_pad_leg_width = leg_width,
|
bond_pad_leg_width = leg_width,
|
||||||
bond_pad_leg_length = leg_length,
|
bond_pad_leg_length = leg_length,
|
||||||
bond_pad_size = size
|
bond_pad_size = size,
|
||||||
|
id_number = i + number_of_idts_per_quadrent*3,
|
||||||
|
id_flip_dir = [-1, -1, 1]
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user