raised left motor mount, reduced size of frame to match extended rear corners, shortened rear corner idler posts to not interfere with frame

This commit is contained in:
2022-03-07 12:49:47 +01:00
parent 97b0bb7fba
commit 377e122f21
3 changed files with 40 additions and 28 deletions

View File

@@ -2,7 +2,7 @@
* Add place to mount electronics (likely just an extra part)
* add slot for motor electronic connection
* Raise motor mount on front left motor
* Raise motor mount on front left corner
## Electronics

View File

@@ -8,13 +8,13 @@ module frame() {
tslot(xsize - 2 * corner_offset);
translate([ 0, corner_offset, 0 ]) rotate([ -90, 0, 0 ])
tslot(ysize - 2 * corner_offset);
tslot(ysize - 2 * corner_offset - rail_holder_width + wall_thickness);
translate([ corner_offset, ysize, 0 ]) rotate([ 0, 90, 0 ])
tslot(xsize - 2 * corner_offset);
translate([ frame_size/2 + rail_holder_width, ysize, 0 ]) rotate([ 0, 90, 0 ])
tslot(xsize - frame_size - rail_holder_width * 2);
translate([ xsize, corner_offset, 0 ]) rotate([ -90, 0, 0 ])
tslot(ysize - 2 * corner_offset);
tslot(ysize - 2 * corner_offset - rail_holder_width + wall_thickness);
}
module corners() {
translate([ 0, 0 ]) flcorner();
@@ -76,9 +76,15 @@ union() {
moving_parts();
}
*intersection() {
ysled_slider(spread=sled_ysize);
translate([0, -1000, -1000])
cube([2000, 2000, 2000]);
*union() {
rails();
frame();
intersection() {
union() {
corners();
}
translate([-1000, - 1000, -1000])
cube([2000, 2000, 1000]);
}
}
*xsled2();

View File

@@ -23,7 +23,7 @@ belt_height2 = belt_height1 + belt_width + 2;
ysled_rail_spacing = (sled_ysize);
motor_shaft_xoffset = 15;
motor_mount_length_adjustment = 4;
motor_mount_length_adjustment = 8;
motor_mount_length = nema17_face + wall_thickness + motor_mount_length_adjustment;
// distance between centerline of rail and centerline of frame Y tube.
@@ -70,7 +70,7 @@ module corner_base(extension = wall_thickness) {
}
// Adjustable feet
cylinder(d=8, h=odim * 2 + 1, $fn = screw_num_sides);
cylinder(d=8, h=odim * 2 + 1, center=true, $fn = screw_num_sides);
}
}
@@ -169,17 +169,19 @@ module nema17_housing() {
hwidth = corner_size + frame_size + wall_thickness;
hheight = nema17_face + wall_thickness * 2;
hdepth = frame_size + wall_thickness * 2;
vertical_extension = frame_size + belt_height2;
screw_dxy = 31 / 2;
slot_vector = [0, - motor_mount_length_adjustment, 0];
translate([ 0, -nema17_face / 2 - frame_size / 2 - wall_thickness, 0 ]) {
slotify([0, - motor_mount_length_adjustment, 0]) {
translate([ 0, 0, -2 ])
cube([ nema17_face + 1, nema17_face + 1, hdepth ], center = true);
slotify(slot_vector) {
translate([ 0, 0, -belt_height2/2 - wall_thickness ])
cube([ nema17_face + 1, nema17_face + 1, hdepth + belt_height2 ], center = true);
cylinder(d = 23, frame_size);
}
for (x = [-1, 1], y = [-1,1]) {
slotify([0, - motor_mount_length_adjustment, 0])
slotify(slot_vector)
translate([
x * screw_dxy,
y * screw_dxy,
@@ -232,6 +234,7 @@ module idler_post(belt_height, toothed = true) {
module flcorner() {
bom_item();
motor_height = belt_height2 - belt_height1;
union() {
rotate([ 0, 0, 0 ]) {
corner_base();
@@ -245,10 +248,10 @@ module flcorner() {
])
cube([
frame_size + wall_thickness + corner_size,
motor_mount_length,
frame_size + wall_thickness * 2
motor_mount_length + wall_thickness,
frame_size + wall_thickness * 2 + motor_height
]);
translate([ motor_shaft_xoffset, 0, 0 ]) nema17_housing();
translate([ motor_shaft_xoffset, 0, motor_height ]) nema17_housing();
}
// translate([motor_shaft_xoffset, 0, 0 ]) nema17_housing();
@@ -258,8 +261,11 @@ module flcorner() {
motor_shaft_xoffset,
-nema17_face / 2 - frame_size / 2 - wall_thickness, frame_size / 2
]) {
translate([0,0,motor_height])
nema17();
translate([ 0, 0, -frame_size / 2 + belt_height2 ]) { active_pulley(); }
translate([ 0, 0, -frame_size / 2 + belt_height2 ])
rotate([180,0,0])
{ active_pulley(); }
}
}
@@ -312,13 +318,13 @@ module blcorner() {
cylinder(d = 3, h = belt_height2, $fn=screw_num_sides);
}
}
translate([motor_shaft_xoffset + pulley_sbend_offset, 0, 0])
translate([motor_shaft_xoffset + pulley_sbend_offset, 0, frame_size/2])
rotate([0,0,-90])
idler_post(belt_height = belt_height1, toothed=true);
idler_post(belt_height = belt_height1 - frame_size/2, toothed=true);
translate([0, -(motor_shaft_xoffset + pulley_sbend_offset), 0])
translate([0, -(motor_shaft_xoffset + pulley_sbend_offset), frame_size/2])
rotate([0,0,-90])
idler_post(belt_height = belt_height2, toothed=true);
idler_post(belt_height = belt_height2 - frame_size/2, toothed=true);
}
module brcorner() {
@@ -328,13 +334,13 @@ module brcorner() {
corner_base(extension = rail_holder_width);
rail_holder(false);
}
translate([-(motor_shaft_xoffset + pulley_sbend_offset), 0, 0])
translate([-(motor_shaft_xoffset + pulley_sbend_offset), 0, frame_size/2])
rotate([0,0,180])
idler_post(belt_height = belt_height2, toothed=true);
idler_post(belt_height = belt_height2 - frame_size/2, toothed=true);
translate([0, -(motor_shaft_xoffset + pulley_sbend_offset), 0])
translate([0, -(motor_shaft_xoffset + pulley_sbend_offset), frame_size/2])
rotate([0,0,180])
idler_post(belt_height = belt_height1, toothed=true);
idler_post(belt_height = belt_height1 - frame_size/2, toothed=true);
}
module xsled_slider() {