瀏覽代碼

Added pulley idlers to y-carriage

Thomas Buck 6 年之前
父節點
當前提交
092471d9e0
共有 3 個檔案被更改,包括 57 行新增25 行删除
  1. 6
    4
      lib/bearing_idler.scad
  2. 44
    19
      lib/linear_bearing.scad
  3. 7
    2
      xyRepRap.scad

+ 6
- 4
lib/bearing_idler.scad 查看文件

@@ -65,7 +65,7 @@ module bearing_idler() {
65 65
                     translate([0, 0, belt_height + i - ramp_step_size])
66 66
                         cylinder(d = idler_dia + (i * 4 * (idler_ramp_dia - idler_dia)), h = ramp_step_size);
67 67
                     translate([0, 0, ramp_step_size - i])
68
-                        cylinder(d = idler_dia + (i * 2), h = ramp_step_size);
68
+                        cylinder(d = idler_dia + (i * 4 * (idler_ramp_dia - idler_dia)), h = ramp_step_size);
69 69
                 }
70 70
                 translate([0, 0, -1])
71 71
                     cylinder(d = bearing_outer + dia_off, h = belt_height + 2);
@@ -74,12 +74,12 @@ module bearing_idler() {
74 74
     }
75 75
 }
76 76
 
77
-module bearing_spacer() {
77
+module bearing_spacer(h = spacer_height, add_dia = 0) {
78 78
     $fn = 30;
79 79
     difference() {
80
-        cylinder(d = bearing_inner + spacer_size_add, h = spacer_height);
80
+        cylinder(d = bearing_inner + spacer_size_add + add_dia, h = h);
81 81
         translate([0, 0, -1])
82
-            cylinder(d = bearing_inner + dia_off, h = spacer_height + 2);
82
+            cylinder(d = bearing_inner + dia_off, h = h + 2);
83 83
     }
84 84
 }
85 85
 
@@ -181,4 +181,6 @@ module bearing_appendage(slot, preview) {
181 181
     }
182 182
 }
183 183
 
184
+//bearing_idler();
185
+
184 186
 //slot_mount_bracket(30, true);

+ 44
- 19
lib/linear_bearing.scad 查看文件

@@ -1,4 +1,6 @@
1 1
 
2
+include <bearing_idler.scad>
3
+
2 4
 // #######################################################
3 5
 // ################### Linear Bearings ###################
4 6
 // #######################################################
@@ -40,7 +42,13 @@ module lm8uu() {
40 42
 
41 43
 // TODO add cable tie lm8uu mounting
42 44
 
43
-module y_carriage() {
45
+module generate_spacer(pos) {
46
+    color("green")
47
+    translate([pos[0], pos[1], -0.5])
48
+        bearing_spacer(pos[2] + 0.5 + ((idler_outer_height - bearing_height) / 2), 2);
49
+}
50
+
51
+module y_carriage(idler_a = [0, 0, 0], idler_b = [0, 0, 0]) {
44 52
     $fn = 20;
45 53
     
46 54
     // attaching to x-rails
@@ -104,7 +112,7 @@ module y_carriage() {
104 112
         }
105 113
     }
106 114
     
107
-    color("yellow")
115
+    color("magenta")
108 116
     translate([(lm8uu_outer + lm8uu_dia_add) / 2 + y_carriage_rail_support, 0, 0])
109 117
     rotate([-90, 0, 0]) {
110 118
         // y-bearings
@@ -113,26 +121,43 @@ module y_carriage() {
113 121
         %translate([0, 0, y_carriage_length - lm8uu_height - y_carriage_rail_support])
114 122
             lm8uu();
115 123
     }
124
+    
125
+    // idlers for the corexy belts
126
+    translate([0, 0, y_carriage_wall]) {
127
+        translate(idler_a)
128
+            bearing_idler();
129
+        
130
+        translate(idler_b)
131
+            bearing_idler();
132
+        
133
+        generate_spacer(idler_a);
134
+        generate_spacer(idler_b);
135
+    }
116 136
 }
117 137
 
118
-/*
138
+draw_y_carriage = false;
139
+draw_rail_len = 100;
119 140
 
120
-translate([(lm8uu_outer + lm8uu_dia_add) / 2 + y_carriage_rail_support, 0, 0])
121
-rotate([-90, 0, 0]) {
122
-    // y-bearings
123
-    %translate([0, 0, y_carriage_rail_support])
124
-        lm8uu();
125
-    %translate([0, 0, y_carriage_length - lm8uu_height - y_carriage_rail_support])
126
-        lm8uu();
127
-}
141
+if (draw_y_carriage) {
142
+    translate([(lm8uu_outer + lm8uu_dia_add) / 2 + y_carriage_rail_support, 0, 0])
143
+    rotate([-90, 0, 0]) {
144
+        // y-bearings
145
+        %translate([0, 0, y_carriage_rail_support])
146
+            lm8uu();
147
+        %translate([0, 0, y_carriage_length - lm8uu_height - y_carriage_rail_support])
148
+            lm8uu();
149
+    }
128 150
 
129
-// x-rails
130
-for (i = [y_carriage_len_add : x_rail_dist : x_rail_dist + y_carriage_len_add]) {
131
-    %translate([y_carriage_width + 1, i, 0])
132
-        rotate([0, 90, 0])
133
-        cylinder(d = lm8uu_inner, h = 50);
134
-}
151
+    // x-rails
152
+    for (i = [y_carriage_len_add : x_rail_dist : x_rail_dist + y_carriage_len_add]) {
153
+        %translate([y_carriage_width + 1, i, 0])
154
+            rotate([0, 90, 0])
155
+            cylinder(d = lm8uu_inner, h = draw_rail_len);
156
+    }
135 157
 
136
-y_carriage();
158
+    y_carriage([15, 15, 10], [10, 65, 2]);
137 159
 
138
-*/
160
+    translate([(2 * y_carriage_width + y_carriage_block_width) + draw_rail_len -5, y_carriage_length, 0])
161
+        rotate([0, 0, 180])
162
+        y_carriage([15, 15, 10], [10, 65, 2]);
163
+}

+ 7
- 2
xyRepRap.scad 查看文件

@@ -222,6 +222,11 @@ module frame() {
222 222
 rail_mount_dist = 12;
223 223
 y_carriage_pos = 175;
224 224
 
225
+idler_a_blue = [  19, 15,  5.5];
226
+idler_a_red  = [  19, 65, 12.5];
227
+idler_b_blue = [30.3, 65, 12.5];
228
+idler_b_red  = [30.3, 15,  5.5];
229
+
225 230
 module rail(length) {
226 231
     cylinder(d = rail_dia, h = length);
227 232
     echo(rail_dia=rail_dia, rail_len=length);
@@ -236,7 +241,7 @@ module y_rails() {
236 241
     
237 242
     // y carriage on blue side
238 243
     translate([rail_y_off_1 - (lm8uu_outer + lm8uu_dia_add) / 2 + y_carriage_rail_support, y_carriage_pos, -slot])
239
-        y_carriage();
244
+        y_carriage(idler_a_blue, idler_b_blue);
240 245
     
241 246
     // rail mounts for blue side
242 247
     color("green")
@@ -255,7 +260,7 @@ module y_rails() {
255 260
     // y carriage on red side
256 261
     translate([outer_width - slot - y_carriage_width - y_carriage_block_width, y_carriage_pos + y_carriage_length, -slot])
257 262
         rotate([0, 0, 180])
258
-        y_carriage();
263
+        y_carriage(idler_a_red, idler_b_red);
259 264
     
260 265
     // rail mounts for red side
261 266
     color("green")

Loading…
取消
儲存