54 lines
1.1 KiB
OpenSCAD
54 lines
1.1 KiB
OpenSCAD
|
$fn=64;
|
||
|
|
||
|
length = 38;
|
||
|
width = 17;
|
||
|
height = 13;
|
||
|
wall = 5;
|
||
|
screw = 5.5; // M5 screw
|
||
|
pulley_width = 10;
|
||
|
pulley_thickness = 3;
|
||
|
|
||
|
difference() {
|
||
|
body();
|
||
|
screw1();
|
||
|
screw2();
|
||
|
pulley_slots();
|
||
|
translate([length/1.5, 0, 0])
|
||
|
rotate([0,35,0])
|
||
|
translate([-length/2, 0, 0])
|
||
|
cube([length, width*1.2, height], center=true);
|
||
|
}
|
||
|
|
||
|
|
||
|
|
||
|
module screw1() {
|
||
|
translate([-width/2 -1, 0, 0])
|
||
|
rotate([0, -90, 0])
|
||
|
cylinder(wall*2, d = screw);
|
||
|
|
||
|
translate([-(width/2)+wall/1.75, 0, 0])
|
||
|
rotate([0, -90, 0])
|
||
|
cylinder((wall*2), d = screw*2);
|
||
|
}
|
||
|
|
||
|
module screw2() {
|
||
|
translate([-width/8, 0, -wall*2])
|
||
|
cylinder(wall*2, d = screw);
|
||
|
}
|
||
|
|
||
|
module pulley_slots() {
|
||
|
translate([wall, 0, -wall])
|
||
|
cube([pulley_thickness, pulley_width, wall*2], center=true);
|
||
|
|
||
|
translate([wall*2.5, 0, -wall])
|
||
|
cube([pulley_thickness, pulley_width, wall*2], center=true);
|
||
|
}
|
||
|
|
||
|
|
||
|
module body() {
|
||
|
difference() {
|
||
|
cube([length, width, height], center=true);
|
||
|
translate([wall/1.5, 0, wall-1.5])
|
||
|
cube([length, width - (wall), height], center=true);
|
||
|
}
|
||
|
}
|