possibly the first usable version
This commit is contained in:
		| @@ -5,20 +5,20 @@ tolerance=0.4; | ||||
|  | ||||
| // overall size (width determined by tape width) | ||||
| overall_depth=50; | ||||
| overall_height=60; | ||||
| overall_height=60; // should be > overall_depth | ||||
|  | ||||
| // magnet size (set thickness and tolerance to 0 to omit) | ||||
| // magnet size  | ||||
| use_magnets=1; // 0 to omit | ||||
| magnet_diameter=3; | ||||
| magnet_thickness=1; | ||||
| magnet_tolerance=0.2; | ||||
|  | ||||
| // DIN rail mount | ||||
| use_din_mount=1; // 0 to omit | ||||
|  | ||||
| overall_width=tape_width+2+tolerance; | ||||
|  | ||||
| translate([8, 30, 30]) | ||||
| rotate([0, 180, 0]) | ||||
| { | ||||
|     include <din_rail.scad> | ||||
| } | ||||
| //rail_mockup(); // comment out for production | ||||
|  | ||||
| rotate([0, -90, 0]) | ||||
|     body(); | ||||
| @@ -26,6 +26,15 @@ rotate([0, -90, 0]) | ||||
| translate([-overall_height/2, 1.5*overall_depth+5, 0]) | ||||
|     lid(); | ||||
|  | ||||
| module rail_mockup() | ||||
| { | ||||
|     translate([5.2, 19.5, 30]) | ||||
|     rotate([0, 180, 0]) | ||||
|     { | ||||
|         include <din_rail.scad> | ||||
|     } | ||||
| } | ||||
|  | ||||
| module body() | ||||
| { | ||||
|     difference() | ||||
| @@ -85,28 +94,64 @@ module body() | ||||
|             cube([tape_width+tolerance, overall_depth-25, .25]); | ||||
|  | ||||
|         // label pocket on front | ||||
|         translate([1, 0, 1]) | ||||
|             cube([tape_width+tolerance, .25, overall_height-3-tape_thickness-tolerance]); | ||||
|         if (use_din_mount) | ||||
|         { | ||||
|             translate([1, 0, 9]) | ||||
|                 cube([tape_width+tolerance, .25, overall_height-3-tape_thickness-tolerance-8]); | ||||
|         } | ||||
|         else | ||||
|         { | ||||
|             translate([1, 0, 1]) | ||||
|                 cube([tape_width+tolerance, .25, overall_height-3-tape_thickness-tolerance]); | ||||
|         } | ||||
|  | ||||
|         // label pocket on back | ||||
|         translate([1, overall_depth-.25, 1]) | ||||
|             cube([tape_width+tolerance, .25, overall_height-3-tape_thickness-tolerance-15]); | ||||
|  | ||||
|         // magnets | ||||
|         translate([0, (overall_height-overall_depth)/2, overall_height-overall_depth]) | ||||
|         rotate([0,90,0]) | ||||
|         cylinder(d=magnet_diameter+magnet_tolerance, h=magnet_thickness+magnet_tolerance, $fn=60); | ||||
|         translate([0, overall_depth-(overall_height-overall_depth)/2, overall_height-overall_depth]) | ||||
|         rotate([0,90,0]) | ||||
|         cylinder(d=magnet_diameter+magnet_tolerance, h=magnet_thickness+magnet_tolerance, $fn=60); | ||||
|         translate([0, (overall_height-overall_depth)/2, overall_depth]) | ||||
|         rotate([0,90,0]) | ||||
|         cylinder(d=magnet_diameter+magnet_tolerance, h=magnet_thickness+magnet_tolerance, $fn=60); | ||||
|         translate([overall_width-magnet_thickness-magnet_tolerance, (overall_height-overall_depth)/2, overall_height-overall_depth]) | ||||
|         rotate([0,90,0]) | ||||
|         cylinder(d=magnet_diameter+magnet_tolerance, h=magnet_thickness+magnet_tolerance, $fn=60); | ||||
|         translate([overall_width-magnet_thickness-magnet_tolerance, overall_depth-(overall_height-overall_depth)/2, overall_height-overall_depth]) | ||||
|         rotate([0,90,0]) | ||||
|         cylinder(d=magnet_diameter+magnet_tolerance, h=magnet_thickness+magnet_tolerance, $fn=60); | ||||
|         translate([overall_width-magnet_thickness-magnet_tolerance, (overall_height-overall_depth)/2, overall_depth]) | ||||
|         rotate([0,90,0]) | ||||
|         cylinder(d=magnet_diameter+magnet_tolerance, h=magnet_thickness+magnet_tolerance, $fn=60); | ||||
|         if (use_magnets) | ||||
|         { | ||||
|             translate([0, (overall_height-overall_depth)/2, overall_height-overall_depth]) | ||||
|             rotate([0,90,0]) | ||||
|                 cylinder(d=magnet_diameter+magnet_tolerance, h=magnet_thickness+magnet_tolerance, $fn=60); | ||||
|             translate([0, overall_depth-(overall_height-overall_depth)/2, overall_height-overall_depth]) | ||||
|             rotate([0,90,0]) | ||||
|                 cylinder(d=magnet_diameter+magnet_tolerance, h=magnet_thickness+magnet_tolerance, $fn=60); | ||||
|             translate([0, (overall_height-overall_depth)/2, overall_depth]) | ||||
|             rotate([0,90,0]) | ||||
|                 cylinder(d=magnet_diameter+magnet_tolerance, h=magnet_thickness+magnet_tolerance, $fn=60); | ||||
|             translate([overall_width-magnet_thickness-magnet_tolerance, (overall_height-overall_depth)/2, overall_height-overall_depth]) | ||||
|             rotate([0,90,0]) | ||||
|                 cylinder(d=magnet_diameter+magnet_tolerance, h=magnet_thickness+magnet_tolerance, $fn=60); | ||||
|             translate([overall_width-magnet_thickness-magnet_tolerance, overall_depth-(overall_height-overall_depth)/2, overall_height-overall_depth]) | ||||
|             rotate([0,90,0]) | ||||
|                 cylinder(d=magnet_diameter+magnet_tolerance, h=magnet_thickness+magnet_tolerance, $fn=60); | ||||
|             translate([overall_width-magnet_thickness-magnet_tolerance, (overall_height-overall_depth)/2, overall_depth]) | ||||
|             rotate([0,90,0]) | ||||
|                 cylinder(d=magnet_diameter+magnet_tolerance, h=magnet_thickness+magnet_tolerance, $fn=60); | ||||
|         } | ||||
|  | ||||
|         // DIN mount | ||||
|         if (use_din_mount) | ||||
|         { | ||||
|             translate([0, 3, 0]) // front latch | ||||
|                 cube([overall_width, 6, 2.75]); | ||||
|             translate([0, 1, 1]) | ||||
|             { | ||||
|                 cube([overall_width, 5, 1.75]); | ||||
|                 cube([overall_width, 1, 7.5]); | ||||
|             } | ||||
|  | ||||
|             rotate([-55,0,0]) // pry slot for front latch | ||||
|             translate([overall_width/2-2, -5.5, 1.5]) | ||||
|                 cube([4, 6, 1]); | ||||
|  | ||||
|             translate([0, 31.5, 0]) // back notch | ||||
|                 cube([overall_width, 4, 2.75]); | ||||
|             translate([0, 35.25, 1]) | ||||
|                 cube([overall_width, 2, 1.75]); | ||||
|         } | ||||
|     } | ||||
|  | ||||
|     // tape path to well | ||||
| @@ -122,6 +167,7 @@ module body() | ||||
|         cube([1, 3, 5]); | ||||
| } | ||||
|  | ||||
|  | ||||
| module lid() | ||||
| { | ||||
|     difference() | ||||
|   | ||||
							
								
								
									
										
											BIN
										
									
								
								smd_magazine_8x1.5_DIN.stl
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								smd_magazine_8x1.5_DIN.stl
									
									
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
		Reference in New Issue
	
	Block a user