Advertisement
Guest User

Untitled

a guest
Dec 28th, 2022
36
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.65 KB | None | 0 0
  1. // Created 2018-2017 by D. Pantazis
  2. // Used thread library created by Ryan A. Colyer.
  3. // http://www.thingiverse.com/thing:1686322
  4. // This work is released with CC0 into the public domain.
  5. // https://creativecommons.org/publicdomain/zero/1.0/
  6. //
  7. // v1.0
  8. //
  9. $fn=196;
  10. nbush=12;
  11. rbush=44;
  12. use <threads.scad>
  13.  
  14. // translate([-15,-15,0])import("NutShell.stl", convexity=3);
  15.  
  16. // Create a thread
  17. diameter=14.0; // OD
  18. pitch=1.5; // pitch
  19. tol=0.85; // thread tolerance
  20. Ht=12;
  21.  
  22. // part OD
  23. OD=22;
  24. H=10.0;
  25.  
  26. // base OD
  27. ODB=55;
  28. module RHole(height=Ht) {
  29. ScrewHole(diameter, height, position=[0,0,0], rotation=[0,0,0], pitch=pitch, tolerance=tol)
  30. children();
  31. }
  32. module LHole(height, position=[0,0,0], rotation=[0,0,0], tolerance=tol) {
  33. mirror([0,0,0])ScrewHole(diameter, height, position=position, rotation=rotation, pitch=pitch, tolerance=tolerance)
  34. children();
  35. }
  36.  
  37. module ThreadChamferID() {
  38. cylinder(h = 1.250*pitch, r1 = (diameter+1.0*pitch)/2, r2 = (diameter-1*pitch)/2, center = false);
  39. }
  40.  
  41. module NutChamfer(){
  42. difference(){
  43. cylinder(h = pitch, r1 = (OD+0.50*pitch)/2, r2 = (OD+0.5*pitch)/2, center = false);
  44. cylinder(h = pitch, r1 = (OD-2*pitch)/2, r2 = (OD+0.125*pitch)/2, center = false);
  45. }
  46. }
  47.  
  48. difference() {
  49. //puck
  50. union() {
  51. translate([0,0,1]) cylinder(h=20, r=ODB, center=false);
  52. translate([0,0,0]) cylinder(h=1, r1=ODB-1, r2=ODB, center=false);
  53. translate([0,0,21]) cylinder(h=1, r1=ODB, r2=ODB-1, center=false);
  54. }
  55. //Center
  56. translate([0,0,-0]) cylinder(h=12, r=59/2, center=false);
  57. translate([0,0,-0.1]) cylinder(h=1, r1=1+(59/2), r2=(59/2), center=false);
  58.  
  59. // pivot pins
  60. for (a=[0:1]) rotate([0,0,(a*180)]) translate([59/2,0,-1]) cylinder(h=13, r=7.0, center=false);
  61. for (a=[0:1]) rotate([0,0,(a*180)]) translate([59/2,0,-0.001])cylinder(h=1, r1=7+1, r2=7, center = false);
  62. // bushing holes
  63. for (b=[1:nbush/2]) rotate([0,0,(b*(360/(nbush)))+(-180/(nbush))]) translate([rbush,0,-0.25*pitch]) ThreadChamferID();
  64. for (c=[1:nbush/2]) rotate([0,0,(c*(360/(nbush)))+(-180/(nbush))]) translate([rbush,0,-0.001]) RHole(Ht);
  65. for (f=[1:nbush/2]) rotate([0,0,(f*(360/(nbush)))+(-180/(nbush))]) translate([rbush,0,-0.001]) cylinder (h=25, r=(diameter-pitch-0.5)/2, center=false);
  66. for (d=[1:nbush/2]) rotate([0,0,180+(d*(360/(nbush)))+(-180/(nbush))]) translate([rbush,0,-1])ThreadChamferID();
  67. for (e=[1:nbush/2]) rotate([0,0,180+(e*(360/(nbush)))+(-180/(nbush))]) translate([rbush,0,-0.001]) RHole(Ht);
  68. for (e=[1:nbush/2]) rotate([0,0,180+(e*(360/(nbush)))+(-180/(nbush))]) translate([rbush,0,-0.001]) cylinder (h=25, r=(diameter-pitch-0.5)/2, center=false);
  69. cylinder(h=25, r=17/2, center=false);
  70. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement