First version of top dampener
This commit is contained in:
@@ -1,23 +1,50 @@
|
|||||||
$fn = 32;
|
$fn = 32;
|
||||||
|
|
||||||
|
$space = 5;
|
||||||
$width = 15.2;
|
$width = 15.2;
|
||||||
$length = $width;
|
$length = $width;
|
||||||
$height = 0.4;
|
$height = 0.4;
|
||||||
|
$holes = $height*4;
|
||||||
|
|
||||||
|
$columns = 6;
|
||||||
|
$rows = 5;
|
||||||
|
|
||||||
module pin(){
|
module pin(){
|
||||||
cylinder(h=$height+1, r=1, center=true);
|
cylinder(h=$holes, r=1, center=false);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
module switch(){
|
||||||
|
$xCenter = $width/2;
|
||||||
|
$yCenter = $length/2;
|
||||||
|
translate([$xCenter, $yCenter, 0])
|
||||||
|
cylinder(h=$holes, r=2.522, center=false);
|
||||||
|
translate([$xCenter + 0, $yCenter + 5.9,0])
|
||||||
|
pin();
|
||||||
|
translate([$xCenter + 5, $yCenter + 3.8,0])
|
||||||
|
pin();
|
||||||
|
translate([$xCenter + -5, $yCenter + 3.8,0])
|
||||||
|
pin();
|
||||||
|
translate([$xCenter + -5, $yCenter + -5.15,0])
|
||||||
|
pin();
|
||||||
|
translate([$xCenter + 5, $yCenter+-5.15,0])
|
||||||
|
pin();
|
||||||
|
}
|
||||||
|
|
||||||
|
module switches(){
|
||||||
|
for (x=[0:$columns -1])
|
||||||
|
for (y=[0:$rows-1])
|
||||||
|
translate([x * ($width + $space/2) ,y * ($length+$space/2) ,0])
|
||||||
|
switch();
|
||||||
|
}
|
||||||
|
|
||||||
|
module body(){
|
||||||
|
$x = (($width + ($space/2)) * $columns) + $width;
|
||||||
|
$y = (($length + ($space/2)) * $rows) + $width;
|
||||||
|
cube([$x, $y, $height]);
|
||||||
|
}
|
||||||
|
|
||||||
difference(){
|
difference(){
|
||||||
cube([$width,$length, $height], center=true);
|
body();
|
||||||
cylinder(h=$height+1, r=2.522, center=true);
|
translate([$space,$space,$holes/2*-1])
|
||||||
translate([0,5.9,0])
|
switches();
|
||||||
pin();
|
}
|
||||||
translate([5,3.8,0])
|
|
||||||
pin();
|
|
||||||
translate([-5,3.8,0])
|
|
||||||
pin();
|
|
||||||
translate([-5,-5.15,0])
|
|
||||||
pin();
|
|
||||||
translate([5,-5.15,0])
|
|
||||||
pin();
|
|
||||||
}
|
|
||||||
|
|
||||||
@@ -1,14 +1,26 @@
|
|||||||
$fn = 32;
|
$fn = 32;
|
||||||
|
|
||||||
$space = 5;
|
$space = 5.3;
|
||||||
$width = 15.2;
|
$width = 15.2;
|
||||||
$length = $width;
|
$length = $width;
|
||||||
$height = 0.4;
|
$height = 0.4;
|
||||||
$holes = $height*4;
|
$holes = $height*4;
|
||||||
|
$cut = $holes/2*-1;
|
||||||
|
|
||||||
$columns = 6;
|
$columns = 6;
|
||||||
$rows = 5;
|
$rows = 5;
|
||||||
|
|
||||||
|
$xBase = (($width + $space) * $columns) + $space;
|
||||||
|
$yBase = (($length + $space) * $rows) + $space;
|
||||||
|
|
||||||
|
$yTop = 30.750;
|
||||||
|
$xTop = 101.348;
|
||||||
|
|
||||||
|
$xPico = 52.53;
|
||||||
|
$yPico = 25;
|
||||||
|
|
||||||
|
$xAux = 10;
|
||||||
|
$yAux = 14.5;
|
||||||
module pin(){
|
module pin(){
|
||||||
cylinder(h=$holes, r=1, center=false);
|
cylinder(h=$holes, r=1, center=false);
|
||||||
}
|
}
|
||||||
@@ -28,23 +40,41 @@ module switch(){
|
|||||||
pin();
|
pin();
|
||||||
translate([$xCenter + 5, $yCenter+-5.15,0])
|
translate([$xCenter + 5, $yCenter+-5.15,0])
|
||||||
pin();
|
pin();
|
||||||
|
translate([0, $length, 0])
|
||||||
|
cube([$width, $space-1, $holes]);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
module switches(){
|
module switches(){
|
||||||
for (x=[0:$columns -1])
|
for (x=[0:$columns -1])
|
||||||
for (y=[0:$rows-1])
|
for (y=[0:$rows-1])
|
||||||
translate([x * ($width + $space/2) ,y * ($length+$space/2) ,0])
|
translate([x * ($width + $space) ,y * ($length+$space) ,0])
|
||||||
switch();
|
switch();
|
||||||
}
|
}
|
||||||
|
|
||||||
module body(){
|
module body(){
|
||||||
$x = (($width + ($space/2)) * $columns) + $width;
|
difference(){
|
||||||
$y = (($length + ($space/2)) * $rows) + $width;
|
cube([$xBase, $yBase + $yTop, $height]);
|
||||||
cube([$x, $y, $height]);
|
translate([$xTop,$yBase + $yTop,$holes/2*-1]){
|
||||||
|
rotate([0,0,-45]){
|
||||||
|
cube([1000, 1000, $holes]);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
module pico(){
|
||||||
|
translate([0,$yTop + $yBase - $yPico,$cut]){
|
||||||
|
cube([$xPico, $yPico, $holes]);
|
||||||
|
}
|
||||||
|
translate([$xPico, $yBase + $yTop - $yAux, $cut]){
|
||||||
|
cube([$xAux, $yAux, $holes]);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
difference(){
|
difference(){
|
||||||
body();
|
body();
|
||||||
translate([$space,$space,$holes/2*-1])
|
pico();
|
||||||
switches();
|
translate([$space,$space,$holes/2*-1])
|
||||||
}
|
switches();
|
||||||
|
}
|
||||||
|
|||||||
BIN
3d-models/top-dampener.stl
Normal file
BIN
3d-models/top-dampener.stl
Normal file
Binary file not shown.
Reference in New Issue
Block a user