added y belt holder for TS
[clinton/wilson.git] / scad / y-belt-holder-ts.scad
1 // PRUSA iteration3
2 // Y belt holder
3 // GNU GPL v3
4 // Josef Průša <iam@josefprusa.cz> and contributors
5 // http://www.reprap.org/wiki/Prusa_Mendel
6 // http://prusamendel.org
7
8 // Adapted for Wilson TS by mrice
9
10 belt_spacing = 2.0; // gt2=2mm
11 tooth_w = 1;
12 min_h = 8; // belt starts this far from bottom of bed
13 max_h = 22; // belt can be up to this far from bottom of bed
14 nut_trap_w = 6;
15
16 module belt_holder_base(){
17 translate([-33-8.5,0,0]) cube([33,15,max_h]); // this is the part the belt is cut into
18 translate([-33-9.5,12,0]) cube([35,15,12]);
19 }
20
21 module belt_holder_beltcut(){
22 position_tweak=.5;
23 // Belt slit
24 translate([-66,-0.5+10,0]) cube([67,1,15]);
25 // Smooth insert cutout
26 translate([-66,-0.5+10,12]) rotate([45,0,0]) cube([67,15,15]);
27 // Individual teeth
28 for ( i = [0 : 23] ){
29 translate([0-(i*belt_spacing)+position_tweak,-0.5+8,0]) cube([tooth_w,3,15]);
30 }
31 // Middle opening
32 translate([-2-25,-1,0]) cube([4,11,15]);
33 }
34
35 module belt_holder_holes(){
36 translate([0,19,-2]) {
37 translate([-14.5,0,0]) {
38 cylinder(h=30, r=1.8, $fn=10);
39 translate([0,0,10]) cylinder(h=30, r=nut_trap_w/2+.5, $fn=6);
40 }
41 translate([-35.5,0,0]) {
42 cylinder(h=30, r=1.8, $fn=10);
43 translate([0,0,10]) cylinder(h=30, r=nut_trap_w/2+.5, $fn=6);
44 }
45 }
46 }
47
48 // Final part
49 module belt_holder(){
50 difference(){
51 belt_holder_base();
52 translate([0,0,min_h]) belt_holder_beltcut();
53 belt_holder_holes();
54 }
55 }
56
57 belt_holder();