Commit | Line | Data |
---|---|---|
305ed29d MR |
1 | // |
2 | // Parametric sleeve-style belt guide for 624, 623 bearings and their ilk. | |
3 | // mrice | |
4 | ||
5 | layer_height = 0.3; | |
6 | hotend_width = 0.5; | |
7 | ||
8 | wall= hotend_width*3; | |
9 | clearence= hotend_width/2; | |
10 | ||
11 | // for 624 bearings: | |
12 | bearing_d = 13; | |
13 | bearing_h = 5; | |
14 | bearing_inside_d = 4; | |
15 | belt_w = 7; | |
16 | ||
17 | // for 623 bearings: | |
18 | //bearing_d = 10; | |
19 | //bearing_h = 4; | |
20 | //bearing_inside_d = 3; // hole diameter of the bearing | |
21 | ||
22 | //guide_outer_d = bearing_d + 12; | |
23 | flange_h = 3*layer_height; | |
24 | //flange_d = 21; | |
25 | ||
26 | hole_for_inner = bearing_d/2+(2*clearence); | |
27 | r_for_inner = hole_for_inner + (2*hotend_width); | |
28 | hole_for_outer = r_for_inner+clearence; | |
29 | r_for_outer = hole_for_outer + (hotend_width*2); | |
30 | ||
31 | flange_d = 2*r_for_outer + (6*hotend_width); | |
32 | ||
33 | module belt_guide_base(a) { | |
34 | if(a) { | |
35 | cylinder(r=r_for_outer, h=belt_w+flange_h, $fn=50); | |
36 | } | |
37 | else { | |
38 | cylinder(r=r_for_inner, h=belt_w+flange_h, $fn=50); | |
39 | } | |
40 | // outer flange | |
41 | cylinder(r=flange_d/2, h=flange_h, $fn=50); | |
42 | } | |
43 | ||
44 | module belt_guide_holes(a){ | |
45 | // hole for the bearing: | |
46 | if(a) { | |
47 | #translate([0,0,flange_h+(1-a)*(belt_w-bearing_h-layer_height)]) cylinder(r=hole_for_outer, h=bearing_h+10, $fn=50); | |
48 | } | |
49 | else { | |
50 | #translate([0,0,flange_h+(1-a)*(belt_w-bearing_h-layer_height)]) cylinder(r=hole_for_inner, h=bearing_h+10, $fn=50); | |
51 | } | |
52 | // hole for the rod through: | |
53 | translate([0,0,-1]) cylinder(r=bearing_d/2-wall, h=10, $fn=50); | |
54 | } | |
55 | ||
56 | // Final part | |
57 | module belt_guide(){ | |
58 | difference(){ | |
59 | belt_guide_base(0); | |
60 | belt_guide_holes(0); | |
61 | } | |
62 | } | |
63 | ||
64 | module belt_guide_sleeve() { | |
65 | difference(){ | |
66 | belt_guide_base(1); | |
67 | belt_guide_holes(1); | |
68 | } | |
69 | } | |
70 | ||
71 | belt_guide(); | |
72 | ||
73 | translate([flange_d+5,0,0]) belt_guide_sleeve(); |