-rw-r--r-- | another.scad | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/another.scad b/another.scad index 2383276..55fda78 100644 --- a/another.scad +++ b/another.scad | |||
@@ -147,97 +147,97 @@ module the_extruder( | |||
147 | cylinder(d=idler_screw_d,h=lever_thickness+2,center=true,$fn=30); | 147 | cylinder(d=idler_screw_d,h=lever_thickness+2,center=true,$fn=30); |
148 | }//place idler | 148 | }//place idler |
149 | // filament path | 149 | // filament path |
150 | rotate([0,0,45]) { | 150 | rotate([0,0,45]) { |
151 | translate([pulley_d/2-idler_filament_offset,0,0]) rotate([90,0,0]) { | 151 | translate([pulley_d/2-idler_filament_offset,0,0]) rotate([90,0,0]) { |
152 | cylinder(d=filament_d,h=gearbox_d,center=false,$fn=15); | 152 | cylinder(d=filament_d,h=gearbox_d,center=false,$fn=15); |
153 | }//rotate translate | 153 | }//rotate translate |
154 | translate([pulley_d/2+filament_offset,0,0]) rotate([-90,0,0]) { | 154 | translate([pulley_d/2+filament_offset,0,0]) rotate([-90,0,0]) { |
155 | cylinder(d=filament_d,h=gearbox_d,center=false,$fn=15); | 155 | cylinder(d=filament_d,h=gearbox_d,center=false,$fn=15); |
156 | translate([0,0,mount_d/sqrt(2)/2+mount_screw_d]) | 156 | translate([0,0,mount_d/sqrt(2)/2+mount_screw_d]) |
157 | pushfit(pf); | 157 | pushfit(pf); |
158 | }//rotate translate | 158 | }//rotate translate |
159 | }//rotate | 159 | }//rotate |
160 | }//translate teeth | 160 | }//translate teeth |
161 | }//translate pulley | 161 | }//translate pulley |
162 | }//translate protrusion | 162 | }//translate protrusion |
163 | }//vitamins | 163 | }//vitamins |
164 | 164 | ||
165 | module lever() { | 165 | module lever() { |
166 | translate([0,0,protrusion_h+pulley_elevation+teeth_elevation]) { | 166 | translate([0,0,protrusion_h+pulley_elevation+teeth_elevation]) { |
167 | difference() { | 167 | difference() { |
168 | union() { | 168 | union() { |
169 | hull() { | 169 | hull() { |
170 | place_idler() | 170 | place_idler() |
171 | cylinder(d=lsd,h=lever_thickness,center=true,$fn=60); | 171 | cylinder(d=lsd,h=lever_thickness,center=true,$fn=60); |
172 | translate([mount_d/2,0,0]) | 172 | translate([mount_d/2,0,0]) |
173 | cylinder(d=lsd,h=lever_thickness,center=true,$fn=60); | 173 | cylinder(d=lsd,h=lever_thickness,center=true,$fn=60); |
174 | }//hull | 174 | }//hull |
175 | hull() { | 175 | hull() { |
176 | translate([mount_d/2,0,0]) | 176 | translate([mount_d/2,0,0]) |
177 | cylinder(d=lsd,h=lever_thickness,center=true,$fn=60); | 177 | cylinder(d=lsd,h=lever_thickness,center=true,$fn=60); |
178 | translate([mount_d/2,-longwing,0]) rotate([0,90,0]) | 178 | translate([mount_d/2,-longwing,0]) rotate([0,90,0]) |
179 | cylinder(d=lever_thickness,h=lsd,center=true,$fn=60); | 179 | cylinder(d=lever_thickness,h=lsd,center=true,$fn=60); |
180 | }//hull | 180 | }//hull |
181 | }//union | 181 | }//union |
182 | 182 | ||
183 | // filament path | 183 | // filament path |
184 | place_idler() | 184 | place_idler() |
185 | translate([-idler_d/2-idler_filament_offset,0,0]) | 185 | translate([-idler_d/2-idler_filament_offset,0,0]) |
186 | rotate([90,0,0]) { | 186 | rotate([90,0,0]) { |
187 | mirror([0,1,0]) | 187 | mirror([0,1,0]) |
188 | teardrop(d=filament_path_d,h=3*gearbox_d,center=true); | 188 | teardrop(d=filament_path_d,h=3*gearbox_d,center=true); |
189 | translate([0,0, | 189 | translate([0,0, |
190 | sqrt(2)*(mount_d-pulley_d+lsd)/2 | 190 | sqrt(2)*(mount_d-pulley_d+lsd)/2 |
191 | ]) { | 191 | ]) { |
192 | cylinder(d1=filament_path_d,d2=2*filament_path_d, | 192 | cylinder(d1=filament_path_d,d2=2*filament_path_d, |
193 | h=filament_path_d,$fn=2*filament_path_d*fnd); | 193 | h=filament_path_d,$fn=2*filament_path_d*fnd); |
194 | translate([0,0,filament_path_d-epsilon]) | 194 | translate([0,0,filament_path_d-epsilon]) |
195 | cylinder(d=2*filament_path_d,h=lsd,$fn=2*filament_path_d*fnd); | 195 | cylinder(d=2*filament_path_d,h=lsd*sqrt(2),$fn=2*filament_path_d*fnd); |
196 | }//translate | 196 | }//translate |
197 | }//rotate translate place_idler | 197 | }//rotate translate place_idler |
198 | 198 | ||
199 | // idler space and mounting hole | 199 | // idler space and mounting hole |
200 | place_idler() { | 200 | place_idler() { |
201 | difference() { | 201 | difference() { |
202 | cylinder(d=idler_d+idler_clearance*2,h=idler_h+idler_v_tolerance,center=true,$fn=60); | 202 | cylinder(d=idler_d+idler_clearance*2,h=idler_h+idler_v_tolerance,center=true,$fn=60); |
203 | if(supports) for(y=[-lsd/2+extrusion_width:(lsd-2*extrusion_width)/3:lsd/2-extrusion_width]) | 203 | if(supports) for(y=[-lsd/2+extrusion_width:(lsd-2*extrusion_width)/3:lsd/2-extrusion_width]) |
204 | translate([-lsd/2-1,y-extrusion_width/2,-idler_h/2-idler_v_tolerance/2-1]) | 204 | translate([-lsd/2-1,y-extrusion_width/2,-idler_h/2-idler_v_tolerance/2-1]) |
205 | cube(size=[lsd+2,extrusion_width,idler_h+idler_v_tolerance+2]); | 205 | cube(size=[lsd+2,extrusion_width,idler_h+idler_v_tolerance+2]); |
206 | } | 206 | } |
207 | cylinder(d=idler_screw_d,h=lever_thickness+2,center=true,$fn=30); | 207 | cylinder(d=idler_screw_d,h=lever_thickness+2,center=true,$fn=30); |
208 | translate([0,0,lever_thickness/2-idler_screwhead_h]) | 208 | translate([0,0,lever_thickness/2-idler_screwhead_h]) |
209 | cylinder(d=idler_screwhead_d,h=idler_screwhead_h+1,$fn=fnd*idler_screwhead_d); | 209 | cylinder(d=idler_screwhead_d,h=idler_screwhead_h+1,$fn=fnd*idler_screwhead_d); |
210 | } | 210 | } |
211 | // mounting screw hole | 211 | // mounting screw hole |
212 | translate([mount_d/2,0,0]) | 212 | translate([mount_d/2,0,0]) |
213 | cylinder(d=mount_screw_d+mount_screw_d_tolerance,h=lever_thickness+2,center=true,$fn=fnd*mount_screw_d); | 213 | cylinder(d=mount_screw_d+mount_screw_d_tolerance,h=lever_thickness+2,center=true,$fn=fnd*mount_screw_d); |
214 | 214 | ||
215 | // lever end | 215 | // lever end |
216 | translate([mount_d/2,0,0]) rotate([0,90,0]) { | 216 | translate([mount_d/2,0,0]) rotate([0,90,0]) { |
217 | translate([0,-longwing,lsd/2]) finger_indent(d=lever_thickness-1,r=15); | 217 | translate([0,-longwing,lsd/2]) finger_indent(d=lever_thickness-1,r=15); |
218 | translate([0,-longwing,0]) | 218 | translate([0,-longwing,0]) |
219 | mirror([0,0,1]) | 219 | mirror([0,0,1]) |
220 | difference() { | 220 | difference() { |
221 | cylinder(d=spring_d+spring_d_clearance,h=lsd,$fn=fnd*(spring_d+spring_d_clearance)); | 221 | cylinder(d=spring_d+spring_d_clearance,h=lsd,$fn=fnd*(spring_d+spring_d_clearance)); |
222 | sphere(d=spring_d*3/4,$fn=fnd*spring_d*3/4); | 222 | sphere(d=spring_d*3/4,$fn=fnd*spring_d*3/4); |
223 | } | 223 | } |
224 | }//rotate-translate | 224 | }//rotate-translate |
225 | }//difference | 225 | }//difference |
226 | // bridging patch | 226 | // bridging patch |
227 | if(bridges) place_idler() | 227 | if(bridges) place_idler() |
228 | translate([0,0,lever_thickness/2-mount_screwhead_h]) | 228 | translate([0,0,lever_thickness/2-mount_screwhead_h]) |
229 | mirror([0,0,1]) | 229 | mirror([0,0,1]) |
230 | cylinder(d=mount_screwhead_d,h=layer_height); | 230 | cylinder(d=mount_screwhead_d,h=layer_height); |
231 | }//translate | 231 | }//translate |
232 | }//lever module | 232 | }//lever module |
233 | 233 | ||
234 | module body() { | 234 | module body() { |
235 | difference() { | 235 | difference() { |
236 | union() { | 236 | union() { |
237 | cylinder(d=gearbox_d,h=body_h,$fn=fnd*gearbox_d); | 237 | cylinder(d=gearbox_d,h=body_h,$fn=fnd*gearbox_d); |
238 | // spring tensioner part | 238 | // spring tensioner part |
239 | translate([-gearbox_d/2,0,0]) hull() { | 239 | translate([-gearbox_d/2,0,0]) hull() { |
240 | translate([0,-longwing,ls_z]) | 240 | translate([0,-longwing,ls_z]) |
241 | rotate([0,90,0]) | 241 | rotate([0,90,0]) |
242 | cylinder(d=lever_thickness,h=fsw,$fn=fnd*lever_thickness); | 242 | cylinder(d=lever_thickness,h=fsw,$fn=fnd*lever_thickness); |
243 | hh=body_h-ls_z; | 243 | hh=body_h-ls_z; |