1
0
mirror of https://github.com/nophead/Mendel90.git synced 2025-01-17 04:48:15 +01:00
Mendel90/scad/z-motor-bracket.scad

205 lines
7.8 KiB
OpenSCAD
Raw Normal View History

2012-03-12 01:13:07 +00:00
//
// Mendel90
//
// GNU GPL v2
// nop.head@gmail.com
// hydraraptor.blogspot.com
//
// Fastens the Z motor to the gantry
//
include <conf/config.scad>
include <positions.scad>
use <z-coupling.scad>
corner_rad = 5;
length = ceil(NEMA_width(Z_motor));
thickness = 4;
back_thickness = part_base_thickness + (frame_nut_traps ? nut_trap_depth(frame_nut) : 0);
2012-03-12 01:13:07 +00:00
back_height = 24;
big_hole = NEMA_big_hole(Z_motor);
clamp_height = washer_diameter(washer) + 3;
clamp_thickness = bar_clamp_band;
clamp_screw_clearance = 2;
clamp_length = Z_bar_dia / 2 + bar_clamp_tab - 2;
gap = 1.5;
clamp_width = Z_bar_dia + 2 * clamp_thickness;
clamp_x = z_bar_offset() + clamp_length - bar_clamp_tab / 2;
function z_motor_bracket_height() = back_height;
module z_motor_bracket(y_offset, rhs) {
width = y_offset + length / 2;
This version used for the kits 1-6 at the GIST FOTM. Z axis length increased to 200mm. Added the Dibond variant that uses nuts in the parts instead of tapped holes. Added a ducted fan to the X carriage. Added a spool holder and filament dust wiper. Default hot end is now J-Head MK4. Default electronics is now Melzi plus ATX PSU on the mendel and dibond versions. The right hand stay has been moved inwards and base corner radius reduced to allow and ATX PSU to be mounted inboard. Mounting brackets for ATX PSU added. The electronics are now above the PSU. Mains inlet cover added for non ATX PSUs. Dummy load resistors added for ATX PSU. The extruder now has a groove mount for the JHead. Extruder connector increased from 9 way to 15 way to allow an IDC socket. The extruder ribbon cable is now 14 way to allow three wires for the heater. Added an extruder break out PCB. Wade's idler bracket now a bit wider to allow more tolerance on the length of the axle. Extruder motor screws now longer and hex head. The hobbed bolt now has two nuts and a star washer instead of one nut and a spring. Increased the bed ribbon cable to 26 way to make it standard size. Y carriage made a bit smaller. Thermistor added to the bed assembly. Bed cooling fan made an optional extra. Made the Z top limit switch the default. The X idler now has two bearings. Lead nuts now brass. Added metal pulleys as an option. T2.5 belts added as an option. Nut traps added to the Y carrige ribbon clamp. Corner shields and support material added to X motor bracket. Belt length calculations more accurate. Axis limit switch positions and overtravel optimised. Washer sizes tweaked. Ziptie length tweaked. PVC tubing diameter changed.
2012-11-15 17:45:30 +00:00
cutout = y_offset - length / 2 - part_base_thickness;
2012-03-12 01:13:07 +00:00
stl(rhs? "z_motor_bracket_rhs" : "z_motor_bracket_lhs");
color(z_motor_bracket_color) {
2012-03-12 01:13:07 +00:00
difference() {
union() {
//
// main body
//
translate([0, width / 2 - length / 2, back_height / 2])
difference() {
cube([length, width, back_height], center = true);
translate([0, -back_thickness, thickness])
cube([length + 1, width, back_height], center = true);
}
//
// Bracing webs
//
This version used for the kits 1-6 at the GIST FOTM. Z axis length increased to 200mm. Added the Dibond variant that uses nuts in the parts instead of tapped holes. Added a ducted fan to the X carriage. Added a spool holder and filament dust wiper. Default hot end is now J-Head MK4. Default electronics is now Melzi plus ATX PSU on the mendel and dibond versions. The right hand stay has been moved inwards and base corner radius reduced to allow and ATX PSU to be mounted inboard. Mounting brackets for ATX PSU added. The electronics are now above the PSU. Mains inlet cover added for non ATX PSUs. Dummy load resistors added for ATX PSU. The extruder now has a groove mount for the JHead. Extruder connector increased from 9 way to 15 way to allow an IDC socket. The extruder ribbon cable is now 14 way to allow three wires for the heater. Added an extruder break out PCB. Wade's idler bracket now a bit wider to allow more tolerance on the length of the axle. Extruder motor screws now longer and hex head. The hobbed bolt now has two nuts and a star washer instead of one nut and a spring. Increased the bed ribbon cable to 26 way to make it standard size. Y carriage made a bit smaller. Thermistor added to the bed assembly. Bed cooling fan made an optional extra. Made the Z top limit switch the default. The X idler now has two bearings. Lead nuts now brass. Added metal pulleys as an option. T2.5 belts added as an option. Nut traps added to the Y carrige ribbon clamp. Corner shields and support material added to X motor bracket. Belt length calculations more accurate. Axis limit switch positions and overtravel optimised. Washer sizes tweaked. Ziptie length tweaked. PVC tubing diameter changed.
2012-11-15 17:45:30 +00:00
for(x = [length / 2 - 2 * z_slot_inset - thickness / 2, -(length / 2 - 2 * z_slot_inset - thickness / 2)])
translate([x, y_offset - back_thickness + eta, thickness - eta])
2012-03-12 01:13:07 +00:00
rotate([90, 0, -90])
This version used for the kits 1-6 at the GIST FOTM. Z axis length increased to 200mm. Added the Dibond variant that uses nuts in the parts instead of tapped holes. Added a ducted fan to the X carriage. Added a spool holder and filament dust wiper. Default hot end is now J-Head MK4. Default electronics is now Melzi plus ATX PSU on the mendel and dibond versions. The right hand stay has been moved inwards and base corner radius reduced to allow and ATX PSU to be mounted inboard. Mounting brackets for ATX PSU added. The electronics are now above the PSU. Mains inlet cover added for non ATX PSUs. Dummy load resistors added for ATX PSU. The extruder now has a groove mount for the JHead. Extruder connector increased from 9 way to 15 way to allow an IDC socket. The extruder ribbon cable is now 14 way to allow three wires for the heater. Added an extruder break out PCB. Wade's idler bracket now a bit wider to allow more tolerance on the length of the axle. Extruder motor screws now longer and hex head. The hobbed bolt now has two nuts and a star washer instead of one nut and a spring. Increased the bed ribbon cable to 26 way to make it standard size. Y carriage made a bit smaller. Thermistor added to the bed assembly. Bed cooling fan made an optional extra. Made the Z top limit switch the default. The X idler now has two bearings. Lead nuts now brass. Added metal pulleys as an option. T2.5 belts added as an option. Nut traps added to the Y carrige ribbon clamp. Corner shields and support material added to X motor bracket. Belt length calculations more accurate. Axis limit switch positions and overtravel optimised. Washer sizes tweaked. Ziptie length tweaked. PVC tubing diameter changed.
2012-11-15 17:45:30 +00:00
right_triangle(width = y_offset - back_thickness - big_hole, height = back_height - thickness, h = thickness);
2012-03-12 01:13:07 +00:00
//
// bar clamp
//
translate([z_bar_offset() + clamp_length / 2 - eta, 0, clamp_height / 2 + eta])
cube([clamp_length, clamp_width, clamp_height], center = true);
translate([z_bar_offset(), 0, clamp_height / 2 + eta])
cylinder(h = clamp_height, r = Z_bar_dia/2 + clamp_thickness, center = true);
}
//
// front corners rounded
//
translate([-length / 2, - length / 2, thickness / 2])
fillet(r = corner_rad, h = thickness + 1);
translate([ length / 2, - length / 2, thickness / 2])
rotate([0,0, 90])
fillet(r = corner_rad, h = thickness + 1);
//
// Cut out between webs
//
This version used for the kits 1-6 at the GIST FOTM. Z axis length increased to 200mm. Added the Dibond variant that uses nuts in the parts instead of tapped holes. Added a ducted fan to the X carriage. Added a spool holder and filament dust wiper. Default hot end is now J-Head MK4. Default electronics is now Melzi plus ATX PSU on the mendel and dibond versions. The right hand stay has been moved inwards and base corner radius reduced to allow and ATX PSU to be mounted inboard. Mounting brackets for ATX PSU added. The electronics are now above the PSU. Mains inlet cover added for non ATX PSUs. Dummy load resistors added for ATX PSU. The extruder now has a groove mount for the JHead. Extruder connector increased from 9 way to 15 way to allow an IDC socket. The extruder ribbon cable is now 14 way to allow three wires for the heater. Added an extruder break out PCB. Wade's idler bracket now a bit wider to allow more tolerance on the length of the axle. Extruder motor screws now longer and hex head. The hobbed bolt now has two nuts and a star washer instead of one nut and a spring. Increased the bed ribbon cable to 26 way to make it standard size. Y carriage made a bit smaller. Thermistor added to the bed assembly. Bed cooling fan made an optional extra. Made the Z top limit switch the default. The X idler now has two bearings. Lead nuts now brass. Added metal pulleys as an option. T2.5 belts added as an option. Nut traps added to the Y carrige ribbon clamp. Corner shields and support material added to X motor bracket. Belt length calculations more accurate. Axis limit switch positions and overtravel optimised. Washer sizes tweaked. Ziptie length tweaked. PVC tubing diameter changed.
2012-11-15 17:45:30 +00:00
translate([0, length / 2 + cutout / 2 - eta, 0])
rounded_rectangle([length - 4 * z_slot_inset - 2 * thickness, cutout, back_height * 2 + 1], r = corner_rad / 2, center = true);
2012-03-12 01:13:07 +00:00
//
// motor holes
//
poly_cylinder(r = big_hole, h = thickness * 2 + 1, center = true); // hole for stepper locating boss
for(x = NEMA_holes(Z_motor)) // motor screw holes
for(y = NEMA_holes(Z_motor))
translate([x,y,0])
poly_cylinder(r = M3_clearance_radius, h = 2 * thickness + 1, center = true);
//
// bar clamp
//
translate([z_bar_offset() + clamp_length / 2, 0, 0]) // clamp slot
cube([clamp_length, gap, clamp_height * 2 + 1], center = true);
translate([clamp_x, Z_bar_dia / 2 + clamp_thickness, clamp_height / 2])
rotate([90, 0, 0])
nut_trap(screw_clearance_radius, nut_radius, nut_trap_depth, horizontal = true); // clamp screw
translate([z_bar_offset(), 0, 0])
poly_cylinder(r = Z_bar_dia / 2, h = clamp_height * 2 + 1, center = true); // hole for z rod
//
// screw slots in the back
//
for(side = [-1, 1])
translate([side * (length / 2 - z_slot_inset + z_nut_offset), width - length / 2 - back_thickness, back_height / 2 + thickness / 2])
2012-03-12 01:13:07 +00:00
rotate([90, 0, 0])
if(frame_nut_traps)
nut_trap(screw_clearance_radius(frame_screw), nut_radius(frame_nut), back_thickness - part_base_thickness, true);
This version used for the kits 1-6 at the GIST FOTM. Z axis length increased to 200mm. Added the Dibond variant that uses nuts in the parts instead of tapped holes. Added a ducted fan to the X carriage. Added a spool holder and filament dust wiper. Default hot end is now J-Head MK4. Default electronics is now Melzi plus ATX PSU on the mendel and dibond versions. The right hand stay has been moved inwards and base corner radius reduced to allow and ATX PSU to be mounted inboard. Mounting brackets for ATX PSU added. The electronics are now above the PSU. Mains inlet cover added for non ATX PSUs. Dummy load resistors added for ATX PSU. The extruder now has a groove mount for the JHead. Extruder connector increased from 9 way to 15 way to allow an IDC socket. The extruder ribbon cable is now 14 way to allow three wires for the heater. Added an extruder break out PCB. Wade's idler bracket now a bit wider to allow more tolerance on the length of the axle. Extruder motor screws now longer and hex head. The hobbed bolt now has two nuts and a star washer instead of one nut and a spring. Increased the bed ribbon cable to 26 way to make it standard size. Y carriage made a bit smaller. Thermistor added to the bed assembly. Bed cooling fan made an optional extra. Made the Z top limit switch the default. The X idler now has two bearings. Lead nuts now brass. Added metal pulleys as an option. T2.5 belts added as an option. Nut traps added to the Y carrige ribbon clamp. Corner shields and support material added to X motor bracket. Belt length calculations more accurate. Axis limit switch positions and overtravel optimised. Washer sizes tweaked. Ziptie length tweaked. PVC tubing diameter changed.
2012-11-15 17:45:30 +00:00
else
vertical_tearslot(h = back_thickness * 2 + 1, l = back_height - thickness - 2 * z_slot_inset,
r = screw_clearance_radius(frame_screw), center = true);
2012-03-12 01:13:07 +00:00
//
// rounded corners on the back
//
translate([-length / 2, width - length / 2 - back_thickness / 2, back_height])
rotate([-90, 0, 0])
fillet(r = corner_rad, h = back_thickness + 1);
translate([length / 2, width - length / 2 - back_thickness / 2, back_height])
rotate([-90, 90, 0])
fillet(r = corner_rad, h = back_thickness + 1);
}
}
}
This version used for the kits 1-6 at the GIST FOTM. Z axis length increased to 200mm. Added the Dibond variant that uses nuts in the parts instead of tapped holes. Added a ducted fan to the X carriage. Added a spool holder and filament dust wiper. Default hot end is now J-Head MK4. Default electronics is now Melzi plus ATX PSU on the mendel and dibond versions. The right hand stay has been moved inwards and base corner radius reduced to allow and ATX PSU to be mounted inboard. Mounting brackets for ATX PSU added. The electronics are now above the PSU. Mains inlet cover added for non ATX PSUs. Dummy load resistors added for ATX PSU. The extruder now has a groove mount for the JHead. Extruder connector increased from 9 way to 15 way to allow an IDC socket. The extruder ribbon cable is now 14 way to allow three wires for the heater. Added an extruder break out PCB. Wade's idler bracket now a bit wider to allow more tolerance on the length of the axle. Extruder motor screws now longer and hex head. The hobbed bolt now has two nuts and a star washer instead of one nut and a spring. Increased the bed ribbon cable to 26 way to make it standard size. Y carriage made a bit smaller. Thermistor added to the bed assembly. Bed cooling fan made an optional extra. Made the Z top limit switch the default. The X idler now has two bearings. Lead nuts now brass. Added metal pulleys as an option. T2.5 belts added as an option. Nut traps added to the Y carrige ribbon clamp. Corner shields and support material added to X motor bracket. Belt length calculations more accurate. Axis limit switch positions and overtravel optimised. Washer sizes tweaked. Ziptie length tweaked. PVC tubing diameter changed.
2012-11-15 17:45:30 +00:00
module z_motor_bracket_hole_positions(gantry_setback)
2012-03-12 01:13:07 +00:00
for(side = [-1, 1])
This version used for the kits 1-6 at the GIST FOTM. Z axis length increased to 200mm. Added the Dibond variant that uses nuts in the parts instead of tapped holes. Added a ducted fan to the X carriage. Added a spool holder and filament dust wiper. Default hot end is now J-Head MK4. Default electronics is now Melzi plus ATX PSU on the mendel and dibond versions. The right hand stay has been moved inwards and base corner radius reduced to allow and ATX PSU to be mounted inboard. Mounting brackets for ATX PSU added. The electronics are now above the PSU. Mains inlet cover added for non ATX PSUs. Dummy load resistors added for ATX PSU. The extruder now has a groove mount for the JHead. Extruder connector increased from 9 way to 15 way to allow an IDC socket. The extruder ribbon cable is now 14 way to allow three wires for the heater. Added an extruder break out PCB. Wade's idler bracket now a bit wider to allow more tolerance on the length of the axle. Extruder motor screws now longer and hex head. The hobbed bolt now has two nuts and a star washer instead of one nut and a spring. Increased the bed ribbon cable to 26 way to make it standard size. Y carriage made a bit smaller. Thermistor added to the bed assembly. Bed cooling fan made an optional extra. Made the Z top limit switch the default. The X idler now has two bearings. Lead nuts now brass. Added metal pulleys as an option. T2.5 belts added as an option. Nut traps added to the Y carrige ribbon clamp. Corner shields and support material added to X motor bracket. Belt length calculations more accurate. Axis limit switch positions and overtravel optimised. Washer sizes tweaked. Ziptie length tweaked. PVC tubing diameter changed.
2012-11-15 17:45:30 +00:00
translate([side * z_motor_bracket_hole_offset(), gantry_setback - part_base_thickness, back_height / 2 + thickness / 2])
2012-03-12 01:13:07 +00:00
rotate([90, 0, 0])
child();
This version used for the kits 1-6 at the GIST FOTM. Z axis length increased to 200mm. Added the Dibond variant that uses nuts in the parts instead of tapped holes. Added a ducted fan to the X carriage. Added a spool holder and filament dust wiper. Default hot end is now J-Head MK4. Default electronics is now Melzi plus ATX PSU on the mendel and dibond versions. The right hand stay has been moved inwards and base corner radius reduced to allow and ATX PSU to be mounted inboard. Mounting brackets for ATX PSU added. The electronics are now above the PSU. Mains inlet cover added for non ATX PSUs. Dummy load resistors added for ATX PSU. The extruder now has a groove mount for the JHead. Extruder connector increased from 9 way to 15 way to allow an IDC socket. The extruder ribbon cable is now 14 way to allow three wires for the heater. Added an extruder break out PCB. Wade's idler bracket now a bit wider to allow more tolerance on the length of the axle. Extruder motor screws now longer and hex head. The hobbed bolt now has two nuts and a star washer instead of one nut and a spring. Increased the bed ribbon cable to 26 way to make it standard size. Y carriage made a bit smaller. Thermistor added to the bed assembly. Bed cooling fan made an optional extra. Made the Z top limit switch the default. The X idler now has two bearings. Lead nuts now brass. Added metal pulleys as an option. T2.5 belts added as an option. Nut traps added to the Y carrige ribbon clamp. Corner shields and support material added to X motor bracket. Belt length calculations more accurate. Axis limit switch positions and overtravel optimised. Washer sizes tweaked. Ziptie length tweaked. PVC tubing diameter changed.
2012-11-15 17:45:30 +00:00
module z_motor_bracket_holes(gantry_setback)
z_motor_bracket_hole_positions(gantry_setback)
if(frame_nut_traps)
This version used for the kits 1-6 at the GIST FOTM. Z axis length increased to 200mm. Added the Dibond variant that uses nuts in the parts instead of tapped holes. Added a ducted fan to the X carriage. Added a spool holder and filament dust wiper. Default hot end is now J-Head MK4. Default electronics is now Melzi plus ATX PSU on the mendel and dibond versions. The right hand stay has been moved inwards and base corner radius reduced to allow and ATX PSU to be mounted inboard. Mounting brackets for ATX PSU added. The electronics are now above the PSU. Mains inlet cover added for non ATX PSUs. Dummy load resistors added for ATX PSU. The extruder now has a groove mount for the JHead. Extruder connector increased from 9 way to 15 way to allow an IDC socket. The extruder ribbon cable is now 14 way to allow three wires for the heater. Added an extruder break out PCB. Wade's idler bracket now a bit wider to allow more tolerance on the length of the axle. Extruder motor screws now longer and hex head. The hobbed bolt now has two nuts and a star washer instead of one nut and a spring. Increased the bed ribbon cable to 26 way to make it standard size. Y carriage made a bit smaller. Thermistor added to the bed assembly. Bed cooling fan made an optional extra. Made the Z top limit switch the default. The X idler now has two bearings. Lead nuts now brass. Added metal pulleys as an option. T2.5 belts added as an option. Nut traps added to the Y carrige ribbon clamp. Corner shields and support material added to X motor bracket. Belt length calculations more accurate. Axis limit switch positions and overtravel optimised. Washer sizes tweaked. Ziptie length tweaked. PVC tubing diameter changed.
2012-11-15 17:45:30 +00:00
rotate([0, 0, 90])
slot(h = 100, l = back_height - thickness - 2 * z_slot_inset, r = screw_clearance_radius(frame_screw), center = true);
else
frame_screw_hole();
2012-03-12 01:13:07 +00:00
module z_motor_assembly(gantry_setback, rhs, standalone = false) {
assembly("z_motor_assembly");
color(z_motor_bracket_color) render() z_motor_bracket(gantry_setback, rhs);
2012-03-12 01:13:07 +00:00
//
// Clamp screw and washer
//
translate([clamp_x, -clamp_width / 2, clamp_height / 2])
rotate([90, 0, 0])
screw_and_washer(cap_screw, screw_longer_than(clamp_width + washer_thickness(screw_washer(cap_screw))));
//
// Clamp nyloc
//
translate([clamp_x, clamp_width / 2 - nut_trap_depth, clamp_height / 2])
rotate([-90, 0, 0])
nut(nut, true);
//
// Mounting screws
//
if(!standalone)
This version used for the kits 1-6 at the GIST FOTM. Z axis length increased to 200mm. Added the Dibond variant that uses nuts in the parts instead of tapped holes. Added a ducted fan to the X carriage. Added a spool holder and filament dust wiper. Default hot end is now J-Head MK4. Default electronics is now Melzi plus ATX PSU on the mendel and dibond versions. The right hand stay has been moved inwards and base corner radius reduced to allow and ATX PSU to be mounted inboard. Mounting brackets for ATX PSU added. The electronics are now above the PSU. Mains inlet cover added for non ATX PSUs. Dummy load resistors added for ATX PSU. The extruder now has a groove mount for the JHead. Extruder connector increased from 9 way to 15 way to allow an IDC socket. The extruder ribbon cable is now 14 way to allow three wires for the heater. Added an extruder break out PCB. Wade's idler bracket now a bit wider to allow more tolerance on the length of the axle. Extruder motor screws now longer and hex head. The hobbed bolt now has two nuts and a star washer instead of one nut and a spring. Increased the bed ribbon cable to 26 way to make it standard size. Y carriage made a bit smaller. Thermistor added to the bed assembly. Bed cooling fan made an optional extra. Made the Z top limit switch the default. The X idler now has two bearings. Lead nuts now brass. Added metal pulleys as an option. T2.5 belts added as an option. Nut traps added to the Y carrige ribbon clamp. Corner shields and support material added to X motor bracket. Belt length calculations more accurate. Axis limit switch positions and overtravel optimised. Washer sizes tweaked. Ziptie length tweaked. PVC tubing diameter changed.
2012-11-15 17:45:30 +00:00
z_motor_bracket_hole_positions(gantry_setback)
frame_screw(part_base_thickness);
2012-03-12 01:13:07 +00:00
//
// Motor and screws
//
NEMA(Z_motor);
translate([0,0, thickness])
NEMA_screws(Z_motor);
//
// The coupling assembly
//
explode([0, 0, 30])
translate([0, 0, NEMA_shaft_length(Z_motor) + 1])
rotate([0,0,45])
z_coupler_assembly();
end("z_motor_assembly");
}
module z_motor_bracket_lhs_stl() z_motor_bracket(gantry_setback, false);
module z_motor_bracket_rhs_stl() mirror([1,0,0]) z_motor_bracket(gantry_setback, true);
2012-03-12 01:13:07 +00:00
module z_motor_brackets_stl() {
translate([ length / 2 + 1, 0, 0]) z_motor_bracket_lhs_stl();
translate([-length / 2 - 1, 0, 0]) z_motor_bracket_rhs_stl();
}
module z_motor_bracketsX2_stl() {
translate([0, -gantry_setback - 1, 0])
z_motor_brackets_stl();
rotate([0, 0, 180])
translate([0, -gantry_setback - 1, 0])
z_motor_brackets_stl();
2012-03-12 01:13:07 +00:00
}
if(0)
if(1)
z_motor_brackets_stl();
else
z_motor_bracketsX2_stl();
2012-03-12 01:13:07 +00:00
else
z_motor_assembly(gantry_setback, false);