added small partes
This commit is contained in:
		
							
								
								
									
										68
									
								
								openscad/own/sparkcube_accessories/endstop_clamp_x.scad
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										68
									
								
								openscad/own/sparkcube_accessories/endstop_clamp_x.scad
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,68 @@ | ||||
| sw_w=10.5; | ||||
| sw_t=6; | ||||
| sw_l=20; | ||||
| sw_clearance=1; | ||||
| sw_hole_dist=10; | ||||
| sw_hole_dia=2; | ||||
| mt=2; | ||||
| tab_w=20; | ||||
| tab_h=4; | ||||
| tab_d=10; | ||||
| $fn=20; | ||||
| offset=0.4; | ||||
|  | ||||
| module switch(){ | ||||
|     difference(){ | ||||
|         cube([sw_w,sw_t,sw_l]); | ||||
|         rotate([90,0,0]){ | ||||
|             translate([sw_w/4,sw_l/2-sw_hole_dist/2,-sw_t])cylinder(d=sw_hole_dia,h=sw_t); | ||||
|             translate([sw_w/4,sw_l/2+sw_hole_dist/2,-sw_t])cylinder(d=sw_hole_dia,h=sw_t); | ||||
|         } | ||||
|     } | ||||
| } | ||||
|  | ||||
|  | ||||
| module tab(){ | ||||
|     union(){ | ||||
|         cube([tab_d,tab_w,tab_h]); | ||||
|         translate([-tab_d,-tab_w/2,0])cube([tab_d,tab_w*2,tab_h]); | ||||
|     } | ||||
| } | ||||
|  | ||||
| module bracket(){ | ||||
| //switch baseplate | ||||
| difference(){ | ||||
|     cube([sw_w/2,mt,sw_l]); | ||||
|     rotate([90,0,0]){ | ||||
|             translate([sw_w/4,sw_l/2-sw_hole_dist/2,-sw_t])cylinder(d=sw_hole_dia,h=sw_t); | ||||
|             translate([sw_w/4,sw_l/2+sw_hole_dist/2,-sw_t])cylinder(d=sw_hole_dia,h=sw_t); | ||||
|     } | ||||
| } | ||||
| // tab_clamp | ||||
| translate([tab_d/2,-tab_h,-mt]){ | ||||
| difference(){ | ||||
|     translate([0,-offset,0])cube([mt,tab_h+mt+offset,tab_w+2*mt]); | ||||
|     translate([0,tab_h,mt])rotate([90,0,0])tab(); | ||||
|     } | ||||
| } | ||||
| } | ||||
|     | ||||
| module extender(){ | ||||
|     difference(){ | ||||
|         cube([sw_l,sw_w*3,mt]); | ||||
|         rotate([0,0,-90]){ | ||||
|             hull(){ | ||||
|                 translate([-(sw_w*3/2)*0.25,sw_l/2-sw_hole_dist/2,0])#cylinder(d=sw_hole_dia,h=mt); | ||||
|                 translate([-(sw_w*3/2)*1.75,sw_l/2-sw_hole_dist/2,0])#cylinder(d=sw_hole_dia,h=mt); | ||||
|             } | ||||
|             hull(){ | ||||
|                 translate([-(sw_w*3/2)*0.25,sw_l/2+sw_hole_dist/2,0])#cylinder(d=sw_hole_dia,h=mt); | ||||
|                 translate([-(sw_w*3/2)*1.75,sw_l/2+sw_hole_dist/2,0])#cylinder(d=sw_hole_dia,h=mt); | ||||
|             } | ||||
|         } | ||||
|     } | ||||
| } | ||||
| translate([-tab_d/2,0,tab_h+mt])rotate([90,0,0])%switch(); | ||||
| translate([0,-tab_w,0])%tab(); | ||||
| translate([-tab_d/2,0,tab_h])rotate([90,0,0])bracket(); | ||||
| //rotate([0,0,90])translate([-2*sw_w+mt/2,-sw_w*3/2,tab_h])extender(); | ||||
		Reference in New Issue
	
	Block a user