ソースを参照

add better mounting slot in the microphone mount for the four capsule array to fit it, this is much more solid than before although not perfect

Fernando Pablo Lopez-Lezcano 10 年 前
親
コミット
c746cf4c8c
3 ファイル変更、27 行追加、9 行削除
  1. 4 1
      TinySpHEAR_EM182.scad
  2. 2 2
      TinySpHEAR_EM200.scad
  3. 21 6
      TinySpHEAR_mount_pcb.scad

+ 4 - 1
TinySpHEAR_EM182.scad

@@ -33,6 +33,9 @@ capsule_radius = 5;
 capsule_height = 4.5;
 mic_radius = 9.6;
 
+// lower the capsule assembly into the mount a bit more
+mic_to_mount_fit = 0.5;
+
 ////
 //// render the different assemblies
 ////
@@ -53,7 +56,7 @@ mic_radius = 9.6;
 // the whole microphone
 // or use render_tetra_microphone_cutout(0, 0) for a "transparent" view
 //
-render_tetra_microphone(0, 0, 0);
+*render_tetra_microphone_cutout(0, 0, 0);
 
 //// microphone shock mount
 

+ 2 - 2
TinySpHEAR_EM200.scad

@@ -61,7 +61,7 @@ mount_top_eccentricity = 1.6;
 // the whole microphone
 // or use render_tetra_microphone_cutout(0, 0) for a "transparent" view
 //
-render_tetra_microphone(0, 0, 0);
+*render_tetra_microphone(0, 0, 0);
 
 //// microphone shock mount
 
@@ -76,7 +76,7 @@ render_tetra_microphone(0, 0, 0);
 *render_tetra_shock_mount_ring_connectors(5);
 
 // the full mount
-*render_tetra_shock_mount(0);
+*render_tetra_shock_mount(-3);
 
 // individual capsule holders
 

+ 21 - 6
TinySpHEAR_mount_pcb.scad

@@ -90,6 +90,9 @@ lip_fit = 0.15;
 flare_height = 50;
 stalk_height = 40;
 
+// adjust mic array to mount fit
+mic_to_mount_fit = 0.0;
+
 // wall thickness
 wall = 1.0;
 
@@ -257,19 +260,31 @@ module tetra_mount_flare(height, lip, transition, bot_radius, bot_corner, top_ra
 
 module tetra_capsule_array_mount(angles) {
     difference() {
-        translate([0, 0, 0]) {
+        union() {
             rotate([0, 0, 45]) {
                 difference() {
                     hull() {
                         cylinder(r = mount_radius + wall, h = thin_mint, $fn = facets);
                         translate([0, 0, mount_top_height]) {
-                            rounded_block(thin_mint, capsule_radius + wall, mount_radius_capsule, mount_radius);
+                            rounded_block(thin_mint, capsule_radius + wall, mount_radius_capsule - wall/2, mount_radius*4/5);
                         }
                     }
                     hull() {
                         cylinder(r = mount_radius, h = thin_mint, $fn = facets);
                         translate([0, 0, mount_top_height]) {
-                            rounded_block_relative(thin_mint, capsule_radius + wall, mount_radius_capsule, mount_radius, -wall);
+                            rounded_block_relative(thin_mint, capsule_radius + wall, mount_radius_capsule - wall/2, mount_radius*4/5, -wall);
+                        }
+                    }
+                }
+                // internal divider wall with slot for capsule ridges
+                translate([-(leg_thick + wall*2)/2, -(mount_radius_capsule - wall/2), mount_top_height/2]) {
+                    difference() {
+                        cube([leg_thick + wall*2, (mount_radius_capsule - wall/2) * 2, mount_top_height/2]);
+                        // arch at bottom of dividing wall
+                        translate([0, mount_radius_capsule - wall/2, -wall]) {
+                            rotate([0, 90, 0]) {
+                                cylinder(r = mount_radius_capsule - wall, h = leg_thick + wall*3, $fn = facets);
+                            }
                         }
                     }
                 }
@@ -277,15 +292,15 @@ module tetra_capsule_array_mount(angles) {
         }
         // indentations that match the two lower capsule holders
         // add ridge height adjustment
-        translate([0, 0, mount_top_height + (mic_radius - capsule_height) + capsule_height * cos(elev_angle)]) {
+        translate([0, 0, mount_top_height + (mic_radius - capsule_height) + capsule_height * cos(elev_angle) - mic_to_mount_fit]) {
             rotate([0, (90 + elev_angle), angles[0]]) {
                 translate([0, 0, mic_radius - capsule_height]) {
-                    capsule([], 0, 1, 0.1, 3, 1);
+                    capsule([], 0, 1, 0.02, 1.5, 1);
                 }
             }
             rotate([0, (90 + elev_angle), angles[1]]) {
                 translate([0, 0, mic_radius - capsule_height]) {
-                    capsule([], 0, 1, 0.1, 3, 1);
+                    capsule([], 0, 1, 0.02, 1.5, 1);
                 }
             }
         }