summaryrefslogtreecommitdiff
Side-by-side diff
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--another.scad14
1 files changed, 4 insertions, 10 deletions
diff --git a/another.scad b/another.scad
index 9f42f46..b7b6e3a 100644
--- a/another.scad
+++ b/another.scad
@@ -1,25 +1,19 @@
draft=true;
layer_height=0.2; extrusion_width=0.4;
epsilon=0.01;
$fs=0.0125;
-use <threads.scad>;
-module pushfit_thread(h=10) {
- thr = 3/8 + .5/25.4;
- slit = 25.4*thr/2 + 0.4;
- if(draft) cylinder(d=thr*25.4,h=h);
- else english_thread(diameter=thr,threads_per_inch=28,length=h/25.4,internal=true);
- translate([-2,-slit,0]) cube([4,2*slit,h]);
-}
+use <pushfittery.scad>;
+include <pushfit_data.scad>;
module the_extruder(
// motor properties
gearbox_d = 36,
mount_d = 28, // the distance between opposite mounting holes
mounthole_depth = 5,
protrusion_d = 22, protrusion_h = 2.2, // the dimensions of the protrusion on top of gearbox
bore_d = 8, bore_l = 17.6,
bore_dd = 7,
// pulley properties
pulley_d = 11.5, pulley_h=10,
pulley_elevation = 1, // pulley elevation above the protrusion
@@ -104,25 +98,25 @@ module the_extruder(
translate([0,0,pulley_elevation]) {
cylinder(d=pulley_d,h=pulley_h,$fn=30);
translate([0,0,teeth_elevation]) {
place_idler() {
cylinder(d=idler_d,h=idler_h,center=true,$fn=30);
cylinder(d=idler_id,h=lever_thickness+2,center=true,$fn=30);
}//place idler
// filament path
rotate([0,0,45]) translate([(pulley_d-filament_path_d)/2,0,0]) {
rotate([90,0,0]) cylinder(d=filament_d,h=gearbox_d*2,center=true,$fn=15);
rotate([-90,0,0])
translate([0,0,mount_d/sqrt(2)/2+mount_screw_d])
- pushfit_thread();
+ pushfit(pushfit_threaded);
}
}//translate teeth
}//translate pulley
}//translate protrusion
}//vitamins
module lever() {
translate([0,0,protrusion_h+pulley_elevation+teeth_elevation]) {
difference() {
union() {
hull() {
place_idler()
@@ -222,25 +216,25 @@ module the_extruder(
cylinder(d=mount_screw_d+mount_screw_d_tolerance,
h=mount_screw_l-mounthole_depth/2-layer_height+1,
$fn=2*PI*mount_screw_d);
translate([0,0,mount_screw_l-mounthole_depth/2])
cylinder(d=mount_screwhead_d,h=body_h+1,$fn=2*PI*mount_screwhead_d);
}//for
// pushfit threads
translate([0,0,filament_elevation])
rotate([0,0,45]) translate([pulley_d/2,0,0])
rotate([-90,0,0])
translate([0,0,mount_d/sqrt(2)/2+mount_screw_d+epsilon])
rotate([0,0,180]) {
- pushfit_thread(h=10);
+ pushfit(pushfit_threaded);
cylinder(d=filament_guide_d,h=gearbox_d,center=true,$fn=2*PI*filament_guide_d);
translate([0,-filament_guide_d/2/sqrt(2),0])
rotate([0,0,45])
cube(size=[filament_guide_d/2,filament_guide_d/2,gearbox_d],center=true);
}
// pulley
cylinder(d=pulley_d+pulley_clearance,h=body_h+1,$fn=2*PI*(pulley_d+pulley_clearance));
// leverspace
hull() for(x=[0,gearbox_d])
rotate([0,0,45])
translate([x,0,ls_z-ls_h/2])
cylinder(d=idler_d+idler_clearance,h=ls_h,$fn=2*PI*idler_d);