|
@@ -34,8 +34,25 @@ pcb_width = 16.51;
|
|
|
// measured = 1.33 (fit = 0.28)
|
|
// measured = 1.33 (fit = 0.28)
|
|
|
pcb_thickness = 1.61;
|
|
pcb_thickness = 1.61;
|
|
|
|
|
|
|
|
|
|
+// we leave 12mm of the pcb exposed on the bottom of the body so that we
|
|
|
|
|
+// can solder the wires that connect the microphone with the
|
|
|
|
|
+// preamplifier, same at the top of the pcb to solder the wires
|
|
|
|
|
+// to the capsules
|
|
|
|
|
+pcb_low_exp = 12.0;
|
|
|
|
|
+pcb_hi_exp = 8.0;
|
|
|
|
|
+
|
|
|
// diameter of four conductor cable
|
|
// diameter of four conductor cable
|
|
|
-cable_diam = 8.75;
|
|
|
|
|
|
|
+cable_diam = 9.5;
|
|
|
|
|
+
|
|
|
|
|
+// lip that mounts flares into main body box
|
|
|
|
|
+mount_lip = 6.0;
|
|
|
|
|
+
|
|
|
|
|
+// main body corner radius
|
|
|
|
|
+mount_corner = 10.0;
|
|
|
|
|
+
|
|
|
|
|
+// capsule array mount, height of flare and stalk
|
|
|
|
|
+flare_height = 50;
|
|
|
|
|
+stalk_height = 40;
|
|
|
|
|
|
|
|
// add to length and width of pcb
|
|
// add to length and width of pcb
|
|
|
pcb_fit = 0.25 / 2;
|
|
pcb_fit = 0.25 / 2;
|
|
@@ -58,9 +75,6 @@ pcb_back = 2.0;
|
|
|
// calculated minimum "radius" of microphone box
|
|
// calculated minimum "radius" of microphone box
|
|
|
box_radius = pcb_front + (pcb_thickness + pcb_tfit) + pcb_back + 2 * wall;
|
|
box_radius = pcb_front + (pcb_thickness + pcb_tfit) + pcb_back + 2 * wall;
|
|
|
|
|
|
|
|
-// number of facets for rendering cylinders
|
|
|
|
|
-facets = 64;
|
|
|
|
|
-
|
|
|
|
|
// the printed circuit board
|
|
// the printed circuit board
|
|
|
|
|
|
|
|
module pcb(length, width, thick) {
|
|
module pcb(length, width, thick) {
|
|
@@ -230,41 +244,22 @@ module tetra_capsule_array_mount(angles) {
|
|
|
// indentations that match the two lower capsule holders
|
|
// indentations that match the two lower capsule holders
|
|
|
// add ridge height adjustment
|
|
// add ridge height adjustment
|
|
|
translate([0, 0, mount_top_height + (mic_radius - capsule_height) + capsule_height * sin(elev_angle)]) {
|
|
translate([0, 0, mount_top_height + (mic_radius - capsule_height) + capsule_height * sin(elev_angle)]) {
|
|
|
- capsule(angles[0], -elev_angle, [], 0, 1, 0.1, 1, 3);
|
|
|
|
|
- capsule(angles[1], -elev_angle, [], 0, 1, 0.1, 1, 3);
|
|
|
|
|
|
|
+ capsule(angles[0], -elev_angle, [], 0, 1, 0.1, 3, 1);
|
|
|
|
|
+ capsule(angles[1], -elev_angle, [], 0, 1, 0.1, 3, 1);
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
-echo("box radius is ", box_radius);
|
|
|
|
|
-
|
|
|
|
|
-// lip that mounts flares into main body box
|
|
|
|
|
-mount_lip = 6.0;
|
|
|
|
|
-
|
|
|
|
|
-// main body corner radius
|
|
|
|
|
-mount_corner = 10.0;
|
|
|
|
|
-
|
|
|
|
|
// main body of microphone mount
|
|
// main body of microphone mount
|
|
|
//
|
|
//
|
|
|
-// we leave 12mm of the pcb exposed on the bottom of the body so that we
|
|
|
|
|
-// can solder the wires that connect the microphone with the
|
|
|
|
|
-// preamplifier, same at the top of the pcb to solder the wires
|
|
|
|
|
-// to the capsules
|
|
|
|
|
-pcb_low_exp = 12.0;
|
|
|
|
|
-pcb_hi_exp = 8.0;
|
|
|
|
|
-
|
|
|
|
|
translate([0, 0, -(pcb_length - pcb_low_exp - pcb_hi_exp + 10)]) {
|
|
translate([0, 0, -(pcb_length - pcb_low_exp - pcb_hi_exp + 10)]) {
|
|
|
tetra_mount_body(pcb_length - pcb_low_exp - pcb_hi_exp, box_radius + wall, mount_corner, mount_lip, mount_lip, 0);
|
|
tetra_mount_body(pcb_length - pcb_low_exp - pcb_hi_exp, box_radius + wall, mount_corner, mount_lip, mount_lip, 0);
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
// flare to microphone stalk
|
|
// flare to microphone stalk
|
|
|
//
|
|
//
|
|
|
-// add 12mm of exposed pcb coverage
|
|
|
|
|
|
|
|
|
|
//translate([0, 0, pcb_length - pcb_low_exp - pcb_hi_exp + 10]) {
|
|
//translate([0, 0, pcb_length - pcb_low_exp - pcb_hi_exp + 10]) {
|
|
|
-flare_height = 50;
|
|
|
|
|
-stalk_height = 40;
|
|
|
|
|
-
|
|
|
|
|
translate([0, 0, 0]) {
|
|
translate([0, 0, 0]) {
|
|
|
tetra_mount_flare(10 + pcb_hi_exp, mount_lip, flare_height, box_radius + wall, mount_corner,
|
|
tetra_mount_flare(10 + pcb_hi_exp, mount_lip, flare_height, box_radius + wall, mount_corner,
|
|
|
mount_radius + wall, stalk_height);
|
|
mount_radius + wall, stalk_height);
|
|
@@ -275,18 +270,17 @@ translate([0, 0, 0]) {
|
|
|
|
|
|
|
|
// flare to microphone cable
|
|
// flare to microphone cable
|
|
|
//
|
|
//
|
|
|
-// add 8mm of exposed pcb coverage
|
|
|
|
|
|
|
|
|
|
translate([0, 0, -(10 + pcb_length - pcb_low_exp - pcb_hi_exp + 10)]) {
|
|
translate([0, 0, -(10 + pcb_length - pcb_low_exp - pcb_hi_exp + 10)]) {
|
|
|
|
|
+//translate([0, 0, 0]) {
|
|
|
rotate([0, 180, 0]) {
|
|
rotate([0, 180, 0]) {
|
|
|
- tetra_mount_flare(10 + pcb_low_exp, mount_lip, 20, box_radius + wall, mount_corner, cable_diam / 2, 10);
|
|
|
|
|
|
|
+ tetra_mount_flare(10 + pcb_low_exp, mount_lip, 20, box_radius + wall, mount_corner, cable_diam / 2 + wall, 10);
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
-// the microphone itself
|
|
|
|
|
-rendermic = 1;
|
|
|
|
|
-
|
|
|
|
|
-rotate([90, 0, 0]) {
|
|
|
|
|
|
|
+// first try at a ccrma logo
|
|
|
|
|
+//
|
|
|
|
|
+*rotate([90, 0, 0]) {
|
|
|
translate([0, 10, box_radius + 1.5]) {
|
|
translate([0, 10, box_radius + 1.5]) {
|
|
|
scale([0.03, 0.03, 0.02]) {
|
|
scale([0.03, 0.03, 0.02]) {
|
|
|
surface(file = "ccrma-black.png", center = true, invert = true);
|
|
surface(file = "ccrma-black.png", center = true, invert = true);
|
|
@@ -294,15 +288,15 @@ rotate([90, 0, 0]) {
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
-//capsule_radius = 7;
|
|
|
|
|
-//mic_radius = 11;
|
|
|
|
|
|
|
+// the microphone itself
|
|
|
|
|
+rendermic = 1;
|
|
|
|
|
|
|
|
-translate([0, 0, 3 + pcb_hi_exp + flare_height + stalk_height + 30]) {
|
|
|
|
|
|
|
+translate([0, 0, 2.8 + pcb_hi_exp + flare_height + stalk_height + 30]) {
|
|
|
// all four capsules
|
|
// all four capsules
|
|
|
- capsule(45, elev_angle, leg_angles_top, 60, 0, 0.0, 0, 0);
|
|
|
|
|
- capsule(-135, elev_angle, leg_angles_top, 60, 0, 0.0, 0, 0);
|
|
|
|
|
- capsule(-45, -elev_angle, leg_angles_bot, 0, 1, 0.0, 0, 0);
|
|
|
|
|
- capsule(135, -elev_angle, leg_angles_bot, 0, 1, 0.0, 0, 0);
|
|
|
|
|
|
|
+ capsule(45, elev_angle, leg_angles_top, 60, 0, 0.0, 0.0, 0);
|
|
|
|
|
+ capsule(-135, elev_angle, leg_angles_top, 60, 0, 0.0, 0.0, 0);
|
|
|
|
|
+ capsule(-45, -elev_angle, leg_angles_bot, 0, 1, 0.0, 0.0, 0);
|
|
|
|
|
+ capsule(135, -elev_angle, leg_angles_bot, 0, 1, 0.0, 0.0, 0);
|
|
|
// the mount
|
|
// the mount
|
|
|
*mount([-45, 135], mount_wall, mic_mount_wall, mic_mount_height + mount_top_height + mount_height + capsule_bottom);
|
|
*mount([-45, 135], mount_wall, mic_mount_wall, mic_mount_height + mount_top_height + mount_height + capsule_bottom);
|
|
|
}
|
|
}
|