1
0
mirror of https://github.com/nophead/Mendel90.git synced 2025-08-06 21:36:28 +02:00

Removed some extra edges is some STLs.

This commit is contained in:
Chris Palmer
2016-01-09 09:56:50 +00:00
parent e1a847b33f
commit ca74ca7ad2
2 changed files with 82 additions and 83 deletions

View File

@@ -63,86 +63,84 @@ module bar_clamp(d, h, w, switch = false, yaxis = false) {
tab_height = part_base_thickness + (nutty ? nut_depth : 0); tab_height = part_base_thickness + (nutty ? nut_depth : 0);
color(clamp_color) { translate([0, rail_offset, 0]) {
translate([0, rail_offset, 0]) { union() {
union() { difference() {
difference() { translate([0,-length/2,0]) rotate([90,0,90]) linear_extrude(height = w, center = true, convexity = 6) {
translate([0,-length/2,0]) rotate([90,0,90]) linear_extrude(height = w, center = true, convexity = 6) {
difference() {
union() {
translate([0, tab_height / 2, 0])
square([length, tab_height], center = true); // base
translate([0, h / 2, 0])
square([stem, h], center = true); // stem
translate([(stem/2 - outer_rad), h, 0])
circle(r = outer_rad, center = true); // band
translate([-stem/2 ,h,0])
square([stem - outer_rad, outer_rad]); // band tab
}
translate([(stem/2 - outer_rad), h, 0])
poly_circle(r = inner_rad, center = true); // bore
translate([-rail_offset, h, 0])
square([stem, gap]); // gap
}
}
//
// plastic saving cavity
//
translate([0, -cavity_l / 2 - bar_clamp_tab - wall, cavity_h / 2 - eta])
cube([cavity_w, cavity_l, cavity_h], center = true);
//
// nut trap
//
translate([0,-length + 1.5 * bar_clamp_tab,0])
rotate([0,0,90])
nut_trap(screw_clearance_radius, nut_radius, h - nut_trap_meat, horizontal = true);
//
// mounting holes
//
translate([0, -rail_offset, tab_height])
bar_clamp_holes(d, yaxis)
rotate([0,0,90])
if(nutty)
nut_trap(screw_clearance_radius(mount_screw), nut_radius(screw_nut(mount_screw)), nut_depth, true);
else
tearslot( h = 100, r = screw_clearance_radius(frame_screw), center = true, w = 2); // mounting screw
if(!yaxis)
translate([-w / 2 - axis_end_clearance,
outer_rad + microswitch_thickness() / 2 - rail_offset,
h - outer_rad + microswitch_first_hole_x_offset() + zswitch_tweak])
rotate([0, 90, 90])
microswitch_holes();
*translate([0,-50,-1]) cube([100,100,100]); // cross section for debug
}
if(switch && yaxis) { // switch bracket
difference() { difference() {
union() { union() {
translate([w / 2 -sbracket_length, translate([0, tab_height / 2, 0])
y_switch_y(d) + microswitch_thickness() / 2 - rail_offset, square([length, tab_height], center = true); // base
y_switch_z(h) - microswitch_button_x_offset() - microswitch_length() / 2]) translate([0, h / 2, 0])
cube([sbracket_length, sbracket_thickness, sbracket_height]); square([stem, h], center = true); // stem
translate([(stem/2 - outer_rad), h, 0])
circle(r = outer_rad, center = true); // band
translate([-stem/2 ,h,0])
square([stem - outer_rad, outer_rad]); // band tab
translate([w / 2 - eta - sbracket_thickness,
y_switch_y(d) - microswitch_thickness() / 2 - rail_offset +0.5,
y_switch_z(h) - microswitch_button_x_offset() - microswitch_length() / 2])
cube([sbracket_thickness,
y_switch_y(d) - outer_rad + microswitch_thickness() / 2 + 1,
h - (y_switch_z(h) - microswitch_button_x_offset() - microswitch_length() / 2)]);
} }
translate([y_switch_x(w), y_switch_y(d) - rail_offset, y_switch_z(h)]) translate([(stem/2 - outer_rad), h, 0])
mirror([0,1,0]) rotate([0, 90, 90]) poly_circle(r = inner_rad, center = true); // bore
microswitch_holes();
if(!nutty) translate([-rail_offset, h, 0])
translate([0, - 0.5 * bar_clamp_tab - 0.5,0]) // screwdriver access square([stem, gap]); // gap
rotate([0,0,90])
teardrop(h = 100, r = 3, center = true, truncate = false); }
} }
//
// plastic saving cavity
//
translate([0, -cavity_l / 2 - bar_clamp_tab - wall, cavity_h / 2 - eta])
cube([cavity_w, cavity_l, cavity_h], center = true);
//
// nut trap
//
translate([0,-length + 1.5 * bar_clamp_tab,0])
rotate([0,0,90])
nut_trap(screw_clearance_radius, nut_radius, h - nut_trap_meat, horizontal = true);
//
// mounting holes
//
translate([0, -rail_offset, tab_height])
bar_clamp_holes(d, yaxis)
rotate([0,0,90])
if(nutty)
nut_trap(screw_clearance_radius(mount_screw), nut_radius(screw_nut(mount_screw)), nut_depth, true);
else
tearslot( h = 100, r = screw_clearance_radius(frame_screw), center = true, w = 2); // mounting screw
if(!yaxis)
translate([-w / 2 - axis_end_clearance,
outer_rad + microswitch_thickness() / 2 - rail_offset,
h - outer_rad + microswitch_first_hole_x_offset() + zswitch_tweak])
rotate([0, 90, 90])
microswitch_holes();
*translate([0,-50,-1]) cube([100,100,100]); // cross section for debug
}
if(switch && yaxis) { // switch bracket
difference() {
union() {
translate([w / 2 -sbracket_length,
y_switch_y(d) + microswitch_thickness() / 2 - rail_offset,
y_switch_z(h) - microswitch_button_x_offset() - microswitch_length() / 2])
cube([sbracket_length, sbracket_thickness, sbracket_height]);
translate([w / 2 - sbracket_thickness,
y_switch_y(d) - microswitch_thickness() / 2 - rail_offset +0.5,
y_switch_z(h) - microswitch_button_x_offset() - microswitch_length() / 2])
cube([sbracket_thickness,
y_switch_y(d) - outer_rad + microswitch_thickness() / 2 + 1,
h - (y_switch_z(h) - microswitch_button_x_offset() - microswitch_length() / 2)]);
}
translate([y_switch_x(w), y_switch_y(d) - rail_offset, y_switch_z(h)])
mirror([0,1,0]) rotate([0, 90, 90])
microswitch_holes();
if(!nutty)
translate([0, - 0.5 * bar_clamp_tab - 0.5,0]) // screwdriver access
rotate([0,0,90])
teardrop(h = 100, r = 3, center = true, truncate = false);
} }
} }
} }
@@ -239,7 +237,7 @@ else {
z_bar_clamp_assembly(Z_bar_dia, gantry_setback, bar_clamp_depth, true); z_bar_clamp_assembly(Z_bar_dia, gantry_setback, bar_clamp_depth, true);
//bar_clamp(Z_bar_dia, gantry_setback, bar_clamp_depth, true, false); //bar_clamp(Z_bar_dia, gantry_setback, bar_clamp_depth, true, false);
//translate([30, 0, 0]) y_bar_clamp_assembly(Y_bar_dia, Y_bar_height, bar_clamp_depth, true); translate([30, 0, 0]) y_bar_clamp_assembly(Y_bar_dia, Y_bar_height, bar_clamp_depth, true);
//translate([30, 0, 0]) bar_clamp(Y_bar_dia, Y_bar_height, bar_clamp_depth, true, true); //translate([30, 0, 0]) bar_clamp(Y_bar_dia, Y_bar_height, bar_clamp_depth, true, true);
} }

View File

@@ -41,7 +41,7 @@ lug_width = 2 * nut_flat_radius(M3_nut) + wall;
lug_height = thickness + slot_height / 2 + M3_nut_radius; lug_height = thickness + slot_height / 2 + M3_nut_radius;
screw_x = length - wall - No2_pilot_radius; screw_x = length - wall - No2_pilot_radius;
screw_y = (d_width + slot_width) / 4; screw_y = (d_width + slot_width) / 4;
pitch = d_width + 2 * nut_flat_radius(M3_nut); pitch = d_width + 2 * nut_flat_radius(M3_nut) + eta;
cable_guide_width = 20; cable_guide_width = 20;
cable_guide_thickness = 4; cable_guide_thickness = 4;
@@ -81,6 +81,7 @@ module d_motor_bracket_lid_stl(nuts = true) {
if(nuts) { if(nuts) {
translate([length - front_thickness + lid_width - nut_cover_depth / 2, 0, 0]) translate([length - front_thickness + lid_width - nut_cover_depth / 2, 0, 0])
rounded_rectangle([nut_cover_depth, nut_cover_width, nut_cover_height], 2, center = false); rounded_rectangle([nut_cover_depth, nut_cover_width, nut_cover_height], 2, center = false);
for(side = [-1, 1]) for(side = [-1, 1])
translate([screw_x, side * screw_y, 0]) translate([screw_x, side * screw_y, 0])
cylinder(r = washer_diameter(M2p5_washer) / 2 + 2, h = lid_thickness); cylinder(r = washer_diameter(M2p5_washer) / 2 + 2, h = lid_thickness);
@@ -116,16 +117,16 @@ module d_motor_bracket_stl(motor_mount = true) {
union() { union() {
linear_extrude(height = thickness, convexity = 5) // base linear_extrude(height = thickness, convexity = 5) // base
polygon(points = [ [0, 0], polygon(points = [ [0, 0],
[overlap, 0], [overlap + thickness, 0],
[overlap, offset], [overlap + thickness, offset + eta],
[length - eta, offset], [length - eta, offset + eta],
[length - eta, offset + d_width], [length - eta, offset + d_width],
[overlap, offset + d_width], [overlap, offset + d_width],
[overlap, m_width], [overlap, m_width],
[0, m_width], [0, m_width],
]); ]);
translate([overlap , 0, eta]) // motor wall translate([overlap, 0, eta]) // motor wall
cube([thickness, d_width + offset, height]); cube([thickness, d_width + offset, height]);
for(y = [0, m_width - thickness]) // buttresses for(y = [0, m_width - thickness]) // buttresses
@@ -141,7 +142,7 @@ module d_motor_bracket_stl(motor_mount = true) {
cube([front_thickness + flange_thickness + wall, d_width, height]); cube([front_thickness + flange_thickness + wall, d_width, height]);
// nut lugs // nut lugs
translate([length + flange_thickness + wall - lug_depth / 2, offset + d_width / 2, eta]) translate([length + flange_thickness + wall - lug_depth / 2, offset + d_width / 2, 0])
rounded_rectangle([lug_depth, d_width + 2 * lug_width, lug_height], r = 2, center = false); rounded_rectangle([lug_depth, d_width + 2 * lug_width, lug_height], r = 2, center = false);
// d side walls // d side walls
@@ -161,7 +162,7 @@ module d_motor_bracket_stl(motor_mount = true) {
translate([nut_x + nut_slot / 2, d_width / 2 - side * pitch / 2 + offset, thickness + slot_height / 2]) //connector screws translate([nut_x + nut_slot / 2, d_width / 2 - side * pitch / 2 + offset, thickness + slot_height / 2]) //connector screws
rotate([90, 0, 90]) { rotate([90, 0, 90]) {
rotate([0,0,30]) rotate([0,0,30])
nut_trap(1, M3_nut_radius, nut_slot / 2, true); nut_trap(0, M3_nut_radius, nut_slot / 2, true);
translate([0, 5, 0]) translate([0, 5, 0])
cube([nut_flat_radius(M3_nut) * 2, 10, nut_slot], center = true); cube([nut_flat_radius(M3_nut) * 2, 10, nut_slot], center = true);
@@ -207,7 +208,7 @@ module d_shell_stl() {
difference() { difference() {
union() { union() {
// screw lugs // screw lugs
translate([shell_length + flange_thickness + wall - front / 2, d_width / 2, eta]) translate([shell_length + flange_thickness + wall - front / 2, d_width / 2, 0])
rounded_rectangle([front, d_width + 2 * lug_width, rounded_rectangle([front, d_width + 2 * lug_width,
thickness + slot_height / 2 + washer_diameter(M3_washer) / 2 + 1], r = 2, center = false); thickness + slot_height / 2 + washer_diameter(M3_washer) / 2 + 1], r = 2, center = false);