Original-Prusa-i3/Printed-Parts/scad/cable-holder.scad

83 lines
2.7 KiB
OpenSCAD

// PRUSA iteration4
// cable holder
// GNU GPL v3
// Josef Průša <iam@josefprusa.cz> and contributors
// http://www.reprap.org/wiki/Prusa_Mendel
// http://prusamendel.org
module zip_main()
{
// ziptie cut for upper cables
translate([-10, -30.5, 24]) cube([20, 2, 3]);
translate([-6, -30.5, 24]) cube([2, 20, 3]);
translate([5, -30.5, 24]) cube([2, 20, 3]);
difference()
{
translate([0.5, -26, 24]) rotate([0, 0, 90]) cylinder(h = 3, r = 6, $fn = 30);
translate([0.5, -26, 23]) rotate([0, 0, 90]) cylinder(h = 5, r = 4.6, $fn = 30);
translate([-10, -35.5, 23]) cube([20, 5, 5]);
translate([-10, -27, 23]) cube([20, 10, 5]);
}
}
module zip_ext_cables()
{
// ziptie cut for lower cables
translate([-10, -25.5, 24]) cube([20, 2, 3]);
translate([-4.5, -45.5, 24]) cube([2, 20, 3]);
translate([3.5, -45.5, 24]) cube([2, 20, 3]);
}
module cable_holder()
{
difference()
{
union()
{
// base block
translate([0.5, -26, 24]) rotate([0, 0, 90]) cylinder(h = 39.5, r = 5, $fn = 30);
translate([-4.5, -26, 24]) cube([10, 9, 39.5]);
translate([-3, -35, 24]) cube([7, 10, 39.5]);
}
// screw
translate([0.5, -27, 19.5]) rotate([0, 0, 90]) cylinder(h = 42, r = 1.75, $fn = 30);
translate([0.5, -27, 19.5 + 41]) rotate([0, 0, 90]) cylinder(h = 5, r = 3.15, $fn = 30);
// upper cables cut
translate([0.5, -18, 23]) rotate([0, 5, 90]) cylinder(h = 41, r = 5, $fn = 30);
translate([-10, -20, 23]) rotate([-5, 0, 0]) cube([20, 9, 45]);
// lower angled cut
translate([-10, -44, 23]) rotate([-4, 0, 0]) cube([20, 9, 45]);
// wires
translate([-0.8, -35, 23]) rotate([0, 4, 90]) cylinder(h = 41, r = 1.25, $fn = 30);
translate([1.8, -35, 23]) rotate([0, 4, 90]) cylinder(h = 41, r = 1.25, $fn = 30);
// ziptie openings
translate([0, 0, 5]) zip_main();
translate([0, 0, 18]) zip_main();
translate([0, 0, 32]) zip_main();
translate([0, 0, 11]) zip_ext_cables();
translate([0, 0, 25]) zip_ext_cables();
// round edge cut
translate([0, 1.8, -1.5])
difference()
{
translate([-10, -32, 63]) rotate([0, 90, 0]) cylinder(h = 41, r = 4, $fn = 30);
translate([-10, -32, 63]) rotate([0, 90, 0]) cylinder(h = 41, r = 2, $fn = 30);
translate([-10, -36, 53]) rotate([0, 0, 0]) cube([20, 9, 10]);
translate([-10, -32, 58]) rotate([0, 0, 0]) cube([20, 9, 10]);
}
}
}
cable_holder();