Finalzed Parameters for Storage and Rails

This commit is contained in:
Admin
2025-02-28 17:06:40 +01:00
parent 9af7ac91a6
commit e1c1b341e3
12 changed files with 79 additions and 14 deletions

View File

@@ -1,15 +1,28 @@
tape_thickness = 1.2;
distance_between_parts = 4;
parts = 800; //amount of parts in
total_distance = parts*distance_between_parts;
cases = [
//Case,thickness+~0.2,Distance between parts,tape width
["0603",1,4,8],
["1206",1.4,4,8],
["SOD80",1.7,4,8]
];
//Selected Package
selected_part_size = "SOD80"; // [ "0603","1206","SOD80"]
//Amount of parts to be stored
parts = 1000; //amount of parts in
//Inner Diameter of filled storage
inner_diameter=16;
tape_width= 8;
/* [Hidden] */
function selector(item) = cases[search([item], cases)[0]];
active_case = selector(selected_part_size);
tape_thickness = active_case[1];
distance_between_parts = active_case[2];
total_distance = parts*distance_between_parts;
tape_width= active_case[3];
part_width=tape_width+2.4;
turns= 25;// https://de.planetcalc.com/9063/
$fa = 1;
$fs = 0.5;
outerdiameter=72;
outerdiameter=ceil(sqrt(4*tape_thickness*total_distance/(3.1415)+inner_diameter*inner_diameter));
boxdim=outerdiameter+10;
echo(str("Outer Diameter: ",str(outerdiameter)));
boxdimhalf = boxdim/2;
offset_insert_view=-boxdimhalf-0.001+(boxdimhalf-outerdiameter/2+tape_thickness*1.2/2);
difference() {
@@ -19,8 +32,8 @@ difference() {
circle(d=outerdiameter);
}
}
translate([offset_insert_view,-20,1]) cube([tape_thickness*1.2,boxdimhalf+3.001,part_width-0.4],center=true); //Tape inlet
translate([-boxdimhalf,-0.75*boxdimhalf,0])cube([(boxdimhalf-outerdiameter/2)*2+tape_thickness*1.2/2+0.001,10,tape_width],center=true); //viewing window
translate([offset_insert_view,-boxdimhalf,1]) cube([tape_thickness*1.2,boxdim,part_width-0.4],center=true); //Tape inlet
translate([-boxdimhalf,-0.75*boxdimhalf,0])cube([(boxdimhalf-outerdiameter/2)*2+tape_thickness*0.6+0.001,10,tape_width],center=true); //viewing window
translate([boxdimhalf-8,-boxdimhalf+2,0])rotate([0,0,30]) cube([8,10,tape_width+4],center=true); //Retention space for front magazine clip
translate([boxdimhalf-3,boxdimhalf-3,0])rotate([0,0,30]) cube([8,30,tape_width+4],center=true);
translate([boxdimhalf+2,boxdimhalf-6,0])rotate([0,0,80]) cube([8,30,tape_width+4],center=true);