added own OpenScad models
							
								
								
									
										125
									
								
								openscad/own/universal rostock endstop holder/holder.scad
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,125 @@ | ||||
| // universal endstop holder for rostock delta printer | ||||
| // by zeus - zeus@ctdo.de - CC-BY-NC-4.0 | ||||
| // -> https://www.thingiverse.com/zeus | ||||
| // -> https://github.com/zeus86 | ||||
| // 2014-09-21 | ||||
| // | ||||
| // edit "module wall" for your needs if not using "sainsmart mechaical endstop pcb" | ||||
| // for further instructions look at the comments above the "wall"-module in this code. | ||||
| // | ||||
| // =================================================================== | ||||
| // | ||||
| //rod-diameter, set a bit thicker than the rod really is | ||||
| 	rod_dia=8.5;  | ||||
|  | ||||
| //center-to-center distance of the rods; set a bit smaller than the original 60 to keep the bearings smooth | ||||
| 	rod_distance=59.7;  | ||||
|  | ||||
| // overall thickness | ||||
| 	material_t=2.0; | ||||
|  | ||||
| // mounting-wall thickness | ||||
| 	wall_t=5; | ||||
|  | ||||
| //overall height | ||||
| 	holder_h=16.5; | ||||
|  | ||||
| //diameter of the holes | ||||
| 	hole_dia=3; | ||||
|  | ||||
| //cone cut-in of the holes for easier screw insertion; set to "0" if not needed | ||||
| 	cut_in=1;	 | ||||
| 	 | ||||
| wall_w=rod_distance-material_t*2+rod_dia/2-1; | ||||
| $fn=30; | ||||
|  | ||||
| // =================================================================== | ||||
|  | ||||
| module hex_standoff(){ | ||||
| 	rotate([90,0,0]){ | ||||
| 		translate([-rod_dia*0.66,holder_h/2,0]){ | ||||
| 			difference(){ | ||||
| 				cylinder(r=holder_h/1.75,h=rod_dia+material_t,center=true,$fn=6); | ||||
| 				cube([rod_dia/1.5,rod_dia/1.5,rod_dia+material_t],center=true); | ||||
| 			} | ||||
| 		} | ||||
| 	} | ||||
| } | ||||
|  | ||||
|  | ||||
| module clip(){ | ||||
| 	difference(){ | ||||
|  | ||||
| 		union(){ | ||||
| 			//outer cylinder | ||||
| 			cylinder(r=rod_dia/2+material_t,h=holder_h); | ||||
| 			//outer hex standoffs | ||||
| 			hex_standoff(); | ||||
| 		} | ||||
|  | ||||
| 		//inner cylinder | ||||
| 		cylinder(r=rod_dia/2,h=holder_h); | ||||
| 		//cutout | ||||
| 		translate([-rod_dia,0,holder_h/2]){ | ||||
| 			cube([rod_dia*2,rod_dia/1.25,holder_h],center=true); | ||||
| 		} | ||||
| 	} | ||||
| } | ||||
|  | ||||
| module hole(){ | ||||
| 	rotate([90,0,0]){ | ||||
| 		cylinder(r=hole_dia/2,h=wall_t*2, center=true); | ||||
| 		if (cut_in==1) { | ||||
| 			cylinder(r1=0,r2=hole_dia*0.6,h=wall_t*1.01,center=true); | ||||
| 		} | ||||
| 	} | ||||
| } | ||||
|  | ||||
| // =================================================================== | ||||
| // Edit the module below to add the holes you want to appear in the center-part. | ||||
| // should be mostly self-explaining | ||||
| // | ||||
| // 			translate([-22,0,3]){ | ||||
| //				hole();	 | ||||
| //			} | ||||
| // | ||||
| // this example code creates a hole, which is moved by -22mm(x), 0mm(y), and 3mm(z)  | ||||
| // measured from the absolute center of the coordinate-system (enable under "View -> Show Axes").  | ||||
| // =================================================================== | ||||
|  | ||||
| module wall(){ | ||||
| 	difference(){ | ||||
| 		translate([0,0,holder_h/2]){ | ||||
| 			cube([wall_w-material_t*4,wall_t,holder_h],center=true); | ||||
| 		} | ||||
| 		union(){ | ||||
| 			translate([-22,0,3]){ | ||||
| 				hole();	 | ||||
| 			} | ||||
| 			translate([-3,0,3]){ | ||||
| 				hole();	 | ||||
| 			} | ||||
| 			translate([11.5,0,3]){ | ||||
| 				hole();	 | ||||
| 			} | ||||
| 			translate([11.5,0,14]){ | ||||
| 				hole();	 | ||||
| 			} | ||||
| 		} | ||||
| 	} | ||||
| } | ||||
|  | ||||
| //left clip | ||||
| translate([-rod_distance/2,0,0]){ | ||||
| 	clip(); | ||||
| } | ||||
|  | ||||
| //right clip | ||||
| translate([rod_distance/2,0,0]){ | ||||
| 	rotate([0,0,180]){ | ||||
| 		clip(); | ||||
| 	} | ||||
| } | ||||
|  | ||||
| //wall | ||||
| wall(); | ||||
| After Width: | Height: | Size: 1.4 MiB | 
| After Width: | Height: | Size: 1.2 MiB | 
| After Width: | Height: | Size: 1.5 MiB | 
							
								
								
									
										
											BIN
										
									
								
								openscad/own/universal rostock endstop holder/img/holder.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 12 KiB | 
| After Width: | Height: | Size: 2.0 MiB | 
| After Width: | Height: | Size: 1.7 MiB | 
| After Width: | Height: | Size: 14 KiB | 
| @@ -0,0 +1,125 @@ | ||||
| // universal endstop holder for rostock delta printer | ||||
| // by zeus - zeus@ctdo.de - CC-BY-NC-4.0 | ||||
| // -> https://www.thingiverse.com/zeus | ||||
| // -> https://github.com/zeus86 | ||||
| // 2014-09-21 | ||||
| // | ||||
| // edit "module wall" for your needs if not using "sainsmart mechaical endstop pcb" | ||||
| // for further instructions look at the comments above the "wall"-module in this code. | ||||
| // | ||||
| // =================================================================== | ||||
| // | ||||
| //rod-diameter, set a bit thicker than the rod really is | ||||
| 	rod_dia=8.5;  | ||||
|  | ||||
| //center-to-center distance of the rods; set a bit smaller than the original 60 to keep the bearings smooth | ||||
| 	rod_distance=59.7;  | ||||
|  | ||||
| // overall thickness | ||||
| 	material_t=2.0; | ||||
|  | ||||
| // mounting-wall thickness | ||||
| 	wall_t=5; | ||||
|  | ||||
| //overall height | ||||
| 	holder_h=20; | ||||
|  | ||||
| //diameter of the holes | ||||
| 	hole_dia=3; | ||||
|  | ||||
| //cone cut-in of the holes for easier screw insertion; set to "0" if not needed | ||||
| 	cut_in=1;	 | ||||
| 	 | ||||
| wall_w=rod_distance-material_t*2+rod_dia/2-1; | ||||
| $fn=30; | ||||
|  | ||||
| // =================================================================== | ||||
|  | ||||
| module hex_standoff(){ | ||||
| 	rotate([90,0,0]){ | ||||
| 		translate([-rod_dia*0.66,holder_h/2,0]){ | ||||
| 			difference(){ | ||||
| 				cylinder(r=holder_h/1.75,h=rod_dia+material_t,center=true,$fn=6); | ||||
| 				cube([rod_dia/1.5,rod_dia/1.5,rod_dia+material_t],center=true); | ||||
| 			} | ||||
| 		} | ||||
| 	} | ||||
| } | ||||
|  | ||||
|  | ||||
| module clip(){ | ||||
| 	difference(){ | ||||
|  | ||||
| 		union(){ | ||||
| 			//outer cylinder | ||||
| 			cylinder(r=rod_dia/2+material_t,h=holder_h); | ||||
| 			//outer hex standoffs | ||||
| 			hex_standoff(); | ||||
| 		} | ||||
|  | ||||
| 		//inner cylinder | ||||
| 		cylinder(r=rod_dia/2,h=holder_h); | ||||
| 		//cutout | ||||
| 		translate([-rod_dia,0,holder_h/2]){ | ||||
| 			cube([rod_dia*2.5,rod_dia/1.25,holder_h+0.1],center=true); | ||||
| 		} | ||||
| 	} | ||||
| } | ||||
|  | ||||
| module hole(){ | ||||
| 	rotate([90,0,0]){ | ||||
| 		cylinder(r=hole_dia/2,h=wall_t*2, center=true); | ||||
| 		if (cut_in==1) { | ||||
| 			cylinder(r1=0,r2=hole_dia*0.6,h=wall_t*1.01,center=true); | ||||
| 		} | ||||
| 	} | ||||
| } | ||||
|  | ||||
| // =================================================================== | ||||
| // Edit the module below to add the holes you want to appear in the center-part. | ||||
| // should be mostly self-explaining | ||||
| // | ||||
| // 			translate([-22,0,3]){ | ||||
| //				hole();	 | ||||
| //			} | ||||
| // | ||||
| // this example code creates a hole, which is moved by -22mm(x), 0mm(y), and 3mm(z)  | ||||
| // measured from the absolute center of the coordinate-system (enable under "View -> Show Axes").  | ||||
| // =================================================================== | ||||
|  | ||||
| module wall(){ | ||||
| 	difference(){ | ||||
| 		translate([0,0,holder_h/2]){ | ||||
| 			cube([wall_w-material_t*4,wall_t,holder_h],center=true); | ||||
| 		} | ||||
| 		union(){ | ||||
| 			translate([-22,0,3]){ | ||||
| 				hole();	 | ||||
| 			} | ||||
| 			translate([0.2,0,3]){ | ||||
| 				hole();	 | ||||
| 			} | ||||
| 			translate([-22,0,13.3]){ | ||||
| 				hole();	 | ||||
| 			} | ||||
| 			translate([0.2,0,13.3]){ | ||||
| 				hole();	 | ||||
| 			} | ||||
| 		} | ||||
| 	} | ||||
| } | ||||
|  | ||||
| //left clip | ||||
| translate([-rod_distance/2,0,0]){ | ||||
| 	clip(); | ||||
| } | ||||
|  | ||||
| //right clip | ||||
| translate([rod_distance/2,0,0]){ | ||||
| 	rotate([0,0,180]){ | ||||
| 		clip(); | ||||
| 	} | ||||
| } | ||||
|  | ||||
| //wall | ||||
| wall(); | ||||
 zeus86
					zeus86