|
@@ -51,11 +51,11 @@ include <lib/linear_bearing.scad>
|
51
|
51
|
include <lib/extruder.scad>
|
52
|
52
|
|
53
|
53
|
module gt2_belt(length) {
|
54
|
|
- difference() {
|
55
|
|
- belting("straight", "GT2_2mm", belt_length = length);
|
56
|
|
- translate([-5, -5, 6])
|
57
|
|
- cube([length + 10, 10, 10]);
|
58
|
|
- }
|
|
54
|
+ //difference() {
|
|
55
|
+ // belting("straight", "GT2_2mm", belt_length = length);
|
|
56
|
+ // translate([-5, -5, 6])
|
|
57
|
+ // cube([length + 10, 10, 10]);
|
|
58
|
+ //}
|
59
|
59
|
}
|
60
|
60
|
|
61
|
61
|
// #######################################################
|
|
@@ -88,11 +88,11 @@ module foot() {
|
88
|
88
|
}
|
89
|
89
|
|
90
|
90
|
module lower_frame(double) {
|
91
|
|
- // bottom frame
|
92
|
|
- translate([slot + slot_off, 0, 0])
|
93
|
|
- tslot_x(slot, outer_width - (2 * (slot + slot_off)));
|
94
|
|
-
|
95
|
91
|
if (double) {
|
|
92
|
+ translate([slot + slot_off, 0, slot])
|
|
93
|
+ rotate([-90, 0, 0])
|
|
94
|
+ tslot_2_x(slot, outer_width - (2 * (slot + slot_off)));
|
|
95
|
+
|
96
|
96
|
translate([slot + slot_off, outer_length - slot, slot])
|
97
|
97
|
rotate([-90, 0, 0])
|
98
|
98
|
tslot_2_x(slot, outer_width - (2 * (slot + slot_off)));
|
|
@@ -102,6 +102,9 @@ module lower_frame(double) {
|
102
|
102
|
translate([outer_width - slot, slot + slot_off, 0])
|
103
|
103
|
tslot_2_y(slot, outer_length - (2 * (slot + slot_off)));
|
104
|
104
|
} else {
|
|
105
|
+ translate([slot + slot_off, 0, 0])
|
|
106
|
+ tslot_x(slot, outer_width - (2 * (slot + slot_off)));
|
|
107
|
+
|
105
|
108
|
translate([slot + slot_off, outer_length - slot, 0])
|
106
|
109
|
tslot_x(slot, outer_width - (2 * (slot + slot_off)));
|
107
|
110
|
|
|
@@ -155,7 +158,7 @@ module frame() {
|
155
|
158
|
slot_angle_connector();
|
156
|
159
|
translate([slot + slot_off, outer_length - slot, slot + slot_off])
|
157
|
160
|
slot_angle_connector();
|
158
|
|
- translate([slot + slot_off, 0, outer_height - slot - slot_off])
|
|
161
|
+ translate([slot + slot_off, 0, outer_height - slot - slot_off - slot])
|
159
|
162
|
rotate([0, 90, 0])
|
160
|
163
|
slot_angle_connector();
|
161
|
164
|
translate([slot + slot_off, outer_length - slot, outer_height - slot - slot_off - slot])
|
|
@@ -167,7 +170,7 @@ module frame() {
|
167
|
170
|
translate([outer_width - slot - slot_off, outer_length - slot, slot + slot_off])
|
168
|
171
|
rotate([0, -90, 0])
|
169
|
172
|
slot_angle_connector();
|
170
|
|
- translate([outer_width - slot - slot_off, 0, outer_height - slot - slot_off])
|
|
173
|
+ translate([outer_width - slot - slot_off, 0, outer_height - slot - slot_off - slot])
|
171
|
174
|
rotate([0, 180, 0])
|
172
|
175
|
slot_angle_connector();
|
173
|
176
|
translate([outer_width - slot - slot_off, outer_length - slot, outer_height - slot - slot_off - slot])
|
|
@@ -288,8 +291,8 @@ module x_rails() {
|
288
|
291
|
rotate([0, 90, 0])
|
289
|
292
|
rail(outer_width - (4 * slot));
|
290
|
293
|
|
291
|
|
- translate([x_carriage_pos, y_carriage_pos - x_carriage_len_add, slot / 2])
|
292
|
|
- x_carriage();
|
|
294
|
+ //translate([x_carriage_pos, y_carriage_pos - x_carriage_len_add, slot / 2])
|
|
295
|
+ // x_carriage();
|
293
|
296
|
}
|
294
|
297
|
|
295
|
298
|
module motion_xy() {
|
|
@@ -426,7 +429,7 @@ module heatbed_plate() {
|
426
|
429
|
|
427
|
430
|
module heatbed() {
|
428
|
431
|
translate([slot + frame_off_x, slot + frame_off_y, bed_draw_height]) {
|
429
|
|
- heatbed_plate();
|
|
432
|
+ //%heatbed_plate();
|
430
|
433
|
|
431
|
434
|
// t-slots as heatbed frame
|
432
|
435
|
translate([bed_x_off, bed_y_off, -slot - bed_z_dist])
|
|
@@ -453,18 +456,51 @@ module heatbed() {
|
453
|
456
|
}
|
454
|
457
|
}
|
455
|
458
|
|
|
459
|
+module motion_z() {
|
|
460
|
+ // front left bottom
|
|
461
|
+ color("green")
|
|
462
|
+ translate([(2 * slot) + 60, slot, slot / 2 + 5])
|
|
463
|
+ rotate([-90, 0, 90])
|
|
464
|
+ rail_mount(slot);
|
|
465
|
+ // front left top
|
|
466
|
+ color("green")
|
|
467
|
+ translate([(2 * slot) + 60, slot, outer_height - slot / 2 + 5 - slot])
|
|
468
|
+ rotate([-90, 0, 90])
|
|
469
|
+ rail_mount(slot);
|
|
470
|
+ // front left rail
|
|
471
|
+ color("cyan")
|
|
472
|
+ translate([slot + 60, slot + 15, 6])
|
|
473
|
+ rail(outer_height - slot - 12);
|
|
474
|
+
|
|
475
|
+ // front right bottom
|
|
476
|
+ color("green")
|
|
477
|
+ translate([outer_width - (2 * slot), slot, slot / 2 + 5])
|
|
478
|
+ rotate([-90, 0, 90])
|
|
479
|
+ rail_mount(slot);
|
|
480
|
+ // front right top
|
|
481
|
+ color("green")
|
|
482
|
+ translate([outer_width - (2 * slot), slot, outer_height - slot / 2 + 5 - slot])
|
|
483
|
+ rotate([-90, 0, 90])
|
|
484
|
+ rail_mount(slot);
|
|
485
|
+ // front right rail
|
|
486
|
+ color("cyan")
|
|
487
|
+ translate([outer_width - slot - 60, slot + 15, 6])
|
|
488
|
+ rail(outer_height - slot - 12);
|
|
489
|
+}
|
|
490
|
+
|
456
|
491
|
// #######################################################
|
457
|
492
|
// ###################### Extruders ######################
|
458
|
493
|
// #######################################################
|
459
|
494
|
|
460
|
495
|
module extruders() {
|
|
496
|
+ w = nema17_size + 25;
|
461
|
497
|
translate([0, -bracket_height, outer_height - slot])
|
462
|
498
|
rotate([0, 0, 90]) {
|
463
|
|
- translate([0, -(outer_width + (nema17_size + 10)) / 4, 0])
|
|
499
|
+ translate([0, -(outer_width + w) / 4, 0])
|
464
|
500
|
extruder(slot);
|
465
|
|
- translate([0, -(outer_width + (nema17_size + 10)) / 2, 0])
|
|
501
|
+ translate([0, -(outer_width + w) / 2, 0])
|
466
|
502
|
extruder(slot);
|
467
|
|
- translate([0, -(outer_width + (nema17_size + 10)) * 3 / 4, 0])
|
|
503
|
+ translate([0, -(outer_width + w) * 3 / 4, 0])
|
468
|
504
|
extruder(slot);
|
469
|
505
|
}
|
470
|
506
|
}
|
|
@@ -474,6 +510,9 @@ module extruders() {
|
474
|
510
|
// ########################################################
|
475
|
511
|
|
476
|
512
|
frame();
|
|
513
|
+
|
477
|
514
|
motion_xy();
|
478
|
|
-extruders();
|
|
515
|
+//extruders();
|
|
516
|
+
|
|
517
|
+motion_z();
|
479
|
518
|
heatbed();
|