Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // Created 2018-2017 by D. Pantazis
- // Used thread library created by Ryan A. Colyer.
- // http://www.thingiverse.com/thing:1686322
- // This work is released with CC0 into the public domain.
- // https://creativecommons.org/publicdomain/zero/1.0/
- //
- // v1.0
- //
- $fn=196;
- nbush=12;
- rbush=44;
- use <threads.scad>
- // translate([-15,-15,0])import("NutShell.stl", convexity=3);
- // Create a thread
- diameter=14.0; // OD
- pitch=1.5; // pitch
- tol=0.85; // thread tolerance
- Ht=12;
- // part OD
- OD=22;
- H=10.0;
- // base OD
- ODB=55;
- module RHole(height=Ht) {
- ScrewHole(diameter, height, position=[0,0,0], rotation=[0,0,0], pitch=pitch, tolerance=tol)
- children();
- }
- module LHole(height, position=[0,0,0], rotation=[0,0,0], tolerance=tol) {
- mirror([0,0,0])ScrewHole(diameter, height, position=position, rotation=rotation, pitch=pitch, tolerance=tolerance)
- children();
- }
- module ThreadChamferID() {
- cylinder(h = 1.250*pitch, r1 = (diameter+1.0*pitch)/2, r2 = (diameter-1*pitch)/2, center = false);
- }
- module NutChamfer(){
- difference(){
- cylinder(h = pitch, r1 = (OD+0.50*pitch)/2, r2 = (OD+0.5*pitch)/2, center = false);
- cylinder(h = pitch, r1 = (OD-2*pitch)/2, r2 = (OD+0.125*pitch)/2, center = false);
- }
- }
- difference() {
- //puck
- union() {
- translate([0,0,1]) cylinder(h=20, r=ODB, center=false);
- translate([0,0,0]) cylinder(h=1, r1=ODB-1, r2=ODB, center=false);
- translate([0,0,21]) cylinder(h=1, r1=ODB, r2=ODB-1, center=false);
- }
- //Center
- translate([0,0,-0]) cylinder(h=12, r=59/2, center=false);
- translate([0,0,-0.1]) cylinder(h=1, r1=1+(59/2), r2=(59/2), center=false);
- // pivot pins
- for (a=[0:1]) rotate([0,0,(a*180)]) translate([59/2,0,-1]) cylinder(h=13, r=7.0, center=false);
- 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);
- // bushing holes
- for (b=[1:nbush/2]) rotate([0,0,(b*(360/(nbush)))+(-180/(nbush))]) translate([rbush,0,-0.25*pitch]) ThreadChamferID();
- for (c=[1:nbush/2]) rotate([0,0,(c*(360/(nbush)))+(-180/(nbush))]) translate([rbush,0,-0.001]) RHole(Ht);
- 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);
- for (d=[1:nbush/2]) rotate([0,0,180+(d*(360/(nbush)))+(-180/(nbush))]) translate([rbush,0,-1])ThreadChamferID();
- for (e=[1:nbush/2]) rotate([0,0,180+(e*(360/(nbush)))+(-180/(nbush))]) translate([rbush,0,-0.001]) RHole(Ht);
- 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);
- cylinder(h=25, r=17/2, center=false);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement