//------------------------------------ // Left wipe plate and mount // No wiper // There is very little room for the // wiper, so something clever must be // done, and will be separate from the // wipe plate. //------------------------------------ translate([0, 0, 0]) rotate([0, 0, 0]) difference() { union() { translate([0, 0, 0]) cube([70, 30, 2]); // Struts translate([18 - 3, -5, 12]) rotate([0, 90, 0]) cube([12, 13, 2]); translate([48 - 3, -5, 12]) rotate([0, 90, 0]) cube([12, 13, 2]); // Strut extension to hold metal plate translate([18 - 3, -8, 5 + 7]) rotate([0, 90, 0]) cube([5.5, 7, 2]); translate([48 - 3, -8, 5 + 7]) rotate([0, 90, 0]) cube([5.5, 7, 2]); // Angle strut to avoid printing overhang translate([18 - 3, -5, 0]) rotate([40, 0, 0]) cube([2, 8, 19.4]); translate([48 - 3, -5, 0]) rotate([40, 0, 0]) cube([2, 8, 19.4]); } // Counterbore for bracket screws translate([10, 15, 1]) cylinder(r=5, h=2, $fn=64); translate([60, 15, 1]) cylinder(r=5, h=2, $fn=64); translate([10, 15, -1.5]) cylinder(r=2.7, h=6, $fn=64); translate([60, 15, -1.5]) cylinder(r=2.7, h=6, $fn=64); // Cut-out for Z-screw translate([35, 20, -1.5]) cylinder(r=11, h=6, $fn=64); translate([24, 20, -1.5]) cube([22, 20, 6]); // Plate (cut-out) (larger by 0.2) translate([15.8, -12, 7.3]) rotate([0, 90, 0]) cube([0.8, 14, 30.4]); // Clean-up, remove excess material translate([13, -19, 3]) cube([36, 8, 20]); translate([13, -15, 10]) cube([36, 14, 10]); }