2159eed1 |
1 | // PRUSA iteration3 |
e6b2166c |
2 | // Y belt holder |
2159eed1 |
3 | // GNU GPL v3 |
e6b2166c |
4 | // Josef Průša <iam@josefprusa.cz> and contributors |
2159eed1 |
5 | // http://www.reprap.org/wiki/Prusa_Mendel |
e6b2166c |
6 | // http://prusamendel.org |
2159eed1 |
7 | |
ac040094 |
8 | include <../configuration.scad> |
2159eed1 |
9 | |
e6b2166c |
10 | module belt_holder_base(){ |
11 | translate([-33-8.5,0,-1]) cube([33,15,16]); |
12 | translate([-33-8.5,11,-1]) cube([33,15,16]); |
13 | translate([-50,22,-1]) cube([50,4,16]); |
abcf6c93 |
14 | } |
15 | |
e6b2166c |
16 | module belt_holder_beltcut(){ |
17 | position_tweak=-0.2; |
18 | // Belt slit |
ac040094 |
19 | translate([-66,-0.5+10,belt_tooth_distance]) cube([67,1,15]); |
e6b2166c |
20 | // Smooth insert cutout |
abcf6c93 |
21 | translate([-66,-0.5+10,12]) rotate([45,0,0]) cube([67,15,15]); |
e6b2166c |
22 | // Individual teeth |
abcf6c93 |
23 | for ( i = [0 : 23] ){ |
ac040094 |
24 | translate([0-i*belt_tooth_distance+position_tweak,-0.5+8,3]) cube([1.7,3,15]); |
abcf6c93 |
25 | } |
e6b2166c |
26 | // Middle opening |
abcf6c93 |
27 | translate([-2-25,-1,3]) cube([4,11,15]); |
28 | } |
29 | |
e6b2166c |
30 | module belt_holder_holes(){ |
31 | translate([-4.5,0,7.5]) rotate([-90,0,0]) cylinder(h=30, r=1.7, $fn=10); |
32 | translate([-45.5,0,7.5]) rotate([-90,0,0]) cylinder(h=30, r=1.7, $fn=10); |
abcf6c93 |
33 | } |
2159eed1 |
34 | |
e6b2166c |
35 | // Final part |
36 | module belt_holder(){ |
37 | difference(){ |
38 | belt_holder_base(); |
39 | belt_holder_beltcut(); |
40 | belt_holder_holes(); |
41 | } |
3ade0448 |
42 | } |
88f30890 |
43 | |
e6b2166c |
44 | belt_holder(); |