1
0

TinySpHEAR_EM200.scad 2.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899
  1. //
  2. // Spherical Harmonics Ear Project (*SpHEAR)
  3. //
  4. // TinySpHEAR, First Order (B-format) Ambisonics Microphone
  5. // Microphone optimized for EM200 capsules and Zapnspark interface
  6. //
  7. // Copyright 2015-2016, Fernando Lopez-Lezcano, All Rights Reserved
  8. // nando@ccrma.stanford.edu
  9. //
  10. // This program is free software: you can redistribute it and/or modify
  11. // it under the terms of the GNU General Public License as published by
  12. // the Free Software Foundation, either version 3 of the License, or
  13. // (at your option) any later version.
  14. //
  15. // This program is distributed in the hope that it will be useful,
  16. // but WITHOUT ANY WARRANTY; without even the implied warranty of
  17. // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  18. // GNU General Public License for more details.
  19. //
  20. // You should have received a copy of the GNU General Public License
  21. // along with this program. If not, see <http://www.gnu.org/licenses/>.
  22. //
  23. // 3d Models released under the Creative Commons license as follows:
  24. // Attribution-NonCommercial-ShareAlike 4.0 International (CC BY-NC-SA 4.0)
  25. // http://creativecommons.org/licenses/by-nc-sa/4.0/
  26. include <SpHEAR_common.scad>;
  27. include <TinySpHEAR_common.scad>;
  28. include <TinySpHEAR_mount_pcb.scad>;
  29. // dimensions of the EM200 electret microphone capsule (measured 14.59 max)
  30. capsule_radius = 14.6 / 2;
  31. capsule_height = 4.75;
  32. mic_radius = 11;
  33. // make triangular legs have the height of the capsule
  34. connect = 1;
  35. leg_thick = capsule_height;
  36. // adjust the depth of slots in mount
  37. mic_to_mount_fit = -0.4;
  38. ////
  39. //// render the different assemblies
  40. ////
  41. facets = 128;
  42. //// microphone body and array
  43. *render_tetra_capsule_array(139.5);
  44. *render_tetra_capsule_flare(0);
  45. *render_tetra_pcb_mount(0, 0);
  46. *render_tetra_connector_flare(0);
  47. *render_tetra_cable_flare(0);
  48. // the whole body
  49. *render_tetra_body(0, 0, 0);
  50. // the whole microphone
  51. // or use render_tetra_microphone_cutout(0, 0) for a "transparent" view
  52. //
  53. *render_tetra_microphone(0, 0, 0);
  54. //// windscreen
  55. *translate([0, 0, tetra_pcb_mount_height - windscreen_thread_height]) {
  56. render_tetra_windscreen_bottom(windscreen_thread_height);
  57. render_tetra_windscreen_mount(0);
  58. render_tetra_windscreen_top(windscreen_height * 2 + windscreen_thread_height + 5);
  59. // sleeves that connect the top and bottom frames
  60. render_tetra_windscreen_connectors(windscreen_height + windscreen_thread_height);
  61. }
  62. //// microphone shock mount
  63. *render_tetra_shock_mount_stand(0);
  64. *render_tetra_shock_mount_external_ring(0);
  65. *render_tetra_shock_mount_internal_ring_bot(0);
  66. *render_tetra_shock_mount_internal_ring_top(0);
  67. *render_tetra_shock_mount_ring_connectors(5);
  68. // the full mount
  69. *render_tetra_shock_mount(-3);
  70. // individual capsule holders
  71. *render_tetra_capsule_top(0);
  72. *render_tetra_capsule_bot(0);