59 lines
1.3 KiB
OpenSCAD
59 lines
1.3 KiB
OpenSCAD
$fn=64;
|
|
|
|
//outside
|
|
diameter=15.2+0.7;
|
|
diameterBig=17+0.7;
|
|
pushFitRadius=1;
|
|
|
|
//to motor
|
|
shaftDiameter=7+0.4;
|
|
shaftLength=13;
|
|
shaftLowerDiameter=12;
|
|
shaftLowerLength=3;
|
|
screwDiameter=2.7;
|
|
screwDiameterLoose=3.2;
|
|
screwPosition=8;
|
|
|
|
module pushFit() {
|
|
union() {
|
|
cylinder(h=35, r=diameter/2);
|
|
|
|
union() {
|
|
for (i=[0:360/6:360]) {
|
|
rotate([0,0,i]) translate([diameterBig/2-pushFitRadius,0,0]) rotate([0,-1.5,0]) cylinder(h=35, r=pushFitRadius);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
module pushFit2() {
|
|
union() {
|
|
cylinder(h=35, r=diameter/2);
|
|
|
|
union() {
|
|
for (i=[0:360/6:360]) {
|
|
rotate([0,0,i]) translate([diameterBig/2-pushFitRadius,0,0]) rotate([0,-0.7,45]) cube([pushFitRadius,pushFitRadius,35]);
|
|
}
|
|
}
|
|
|
|
translate([0,0,1]) cylinder(h=1, d1=19, d2=diameter);
|
|
cylinder(h=1, d=19);
|
|
}
|
|
}
|
|
|
|
module toMotor() {
|
|
union() {
|
|
cylinder(h=shaftLowerLength, r=shaftLowerDiameter/2);
|
|
translate([0,0,shaftLowerLength-0.01]) cylinder(h=shaftLength, r=shaftDiameter/2);
|
|
translate([0,0,screwPosition]) rotate([90,0,0]) cylinder(h=10,r=screwDiameter/2); //screw hole
|
|
translate([0,0,screwPosition]) rotate([-90,0,0]) cylinder(h=10,r=screwDiameterLoose/2); //screw hole big
|
|
}
|
|
}
|
|
|
|
|
|
difference() {
|
|
pushFit2();
|
|
translate([0,0,-0.1]) toMotor();
|
|
}
|
|
|