-
Notifications
You must be signed in to change notification settings - Fork 3
/
y-belt-holder.scad
60 lines (52 loc) · 2.97 KB
/
y-belt-holder.scad
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
// PRUSA iteration3
// Y belt holder
// GNU GPL v3
// Josef Pr?sa <[email protected]>
// Václav 'ax' H?la <[email protected]>
// http://www.reprap.org/wiki/Prusa_Mendel
// http://github.com/prusajr/PrusaMendel
include <configuration.scad>
module i3_belt_clamp() {
difference(){
union(){
translate([5, 0, (y_belt_center-(belt_width+3)/2)/2]) cube_fillet([10, 35, y_belt_center-(belt_width+3)/2], center = true, radius=3);
translate([22.5, 0, (y_belt_center-(belt_width+3)/2)/2]) cube_fillet([45, 14, y_belt_center-(belt_width+3)/2], center = true, radius=3);
translate([17.5, 0, (belt_width+3)/2 + (y_belt_center-(belt_width+3)/2)]) {
translate([0, (14/2-(belt[2]+0.1))/2+(belt[2]+0.1), 0]) cube([35, 14/2-(belt[2]+0.1), (belt_width+3)], center = true);
translate([0, -(14/2-(belt[4]+0.05))/2-(belt[4]+0.05), 0]) cube([35, 14/2-(belt[4]+0.05), (belt_width+3)], center = true);
}
translate([0, (belt[2]+0.1)/2, y_belt_center]) {
for (i = [0 : 35/belt[0]-1+((35%belt[0])/(35%belt[0]+1))]) {
translate([(belt[0]*belt[1])/2+i*belt[0], 0, 0]) cube([belt[0]*belt[1], (belt[2]+0.1), belt_width+3], center = true);
}
}
}
translate([0, 0, (belt_width+3)/2 + (y_belt_center-(belt_width+3)/2)]) {
translate([17.5, (14/2-(belt[2]+0.1))/2+(belt[2]+0.1), 0]) cube([belt[3]*3, 14/2+(belt[2]+0.1), belt_width+3], center = true);
translate([5, -12, 0]) rotate([0, 180, 0]) screw_hole(type=y_bearing_screw);
translate([5, 12, 0]) rotate([0, 180, 0]) screw_hole(type=y_bearing_screw);
translate([40, 0, 0]) rotate([0, 180, 0]) screw_hole(type=y_bearing_screw);
}
}
}
module i2_belt_clamp() {
difference(){
union(){
translate([0, 0, (y_belt_center-(belt_width+3)/2)/2]) cube_fillet([12, y_belt_clamp_hole_distance+10, y_belt_center-(belt_width+3)/2], center = true, radius=3);
translate([0, 0, (belt_width+3)/2 + (y_belt_center-(belt_width+3)/2)]) {
translate([0, -(y_belt_clamp_hole_distance/2-(belt[4]+0.05)-5)/2-(belt[4]+0.05), 0]) cube([12, y_belt_clamp_hole_distance/2-(belt[4]+0.05)-5, (belt_width+3)], center = true);
translate([0, +(y_belt_clamp_hole_distance/2-(belt[4]+0.05)-5)/2+(belt[2]+0.05), 0]) cube([12, y_belt_clamp_hole_distance/2-(belt[2]+0.05)-5, (belt_width+3)], center = true);
translate([-5, (belt[2]+0.1)/2, 0]) {
for (i = [0 : 12/belt[0]-1+((12%belt[0])/(12%belt[0]+1))]) {
translate([(belt[0]*belt[1])/2+i*belt[0], 0, 0]) cube([belt[0]*belt[1], (belt[2]+0.1), (belt_width+3)], center = true);
}
}
}
}
translate([(belt_width+3)/2 + (y_belt_center-(belt_width+3)/2), (14/2-(belt[2]+0.1))/2+(belt[2]+0.1), 17.5]) cube([belt_width+3, 14/2+(belt[2]+0.1), belt[3]*3], center = true);
translate([0, -y_belt_clamp_hole_distance/2, y_belt_center-(belt_width+3)/2]) rotate([0, 180, 0]) screw_hole(type=y_bearing_screw);
translate([0, y_belt_clamp_hole_distance/2, y_belt_center-(belt_width+3)/2]) rotate([0, 180, 0]) screw_hole(type=y_bearing_screw);
}
}
i3_belt_clamp();
translate([55, 0, 0]) i2_belt_clamp();