| 1 | // PRUSA iteration3 |
| 2 | // Y belt holder |
| 3 | // GNU GPL v3 |
| 4 | // Josef Průša <josefprusa@me.com> |
| 5 | // Václav 'ax' Hůla <axtheb@gmail.com> |
| 6 | // http://www.reprap.org/wiki/Prusa_Mendel |
| 7 | // http://github.com/prusajr/PrusaMendel |
| 8 | |
| 9 | include <configuration.scad> |
| 10 | |
| 11 | module y_belt_holder(len=40) { |
| 12 | y_delta = i_am_box == 0 ? -2.5 : xy_delta; |
| 13 | ybelt_hole_to_side = 5; |
| 14 | real_len = len + 2 * ybelt_hole_to_side; |
| 15 | screw_hole_z_offset = i_am_box == 0 ? 0 : 4; |
| 16 | |
| 17 | difference(){ |
| 18 | union(){ |
| 19 | |
| 20 | translate([-21 - belt_thickness, -7, 0]) cube_fillet([13 + y_delta, 14, len], vertical=[3,0,0,0], fn=8 ); |
| 21 | translate([-14, -5.5, len / 2]) cube_fillet([24 + 2 * y_delta, 3, len], vertical=[3, 0, 0, 0], center = true); |
| 22 | translate([-24.5, 0, real_len / 2]) cube_fillet([11.5, 16, real_len], center = true, vertical = [1, 1, 1, 1], $fn=16); |
| 23 | translate([-4.0 + y_delta, 0, len / 2]) cube_fillet([8, 14, len], center = true, vertical = [2,2,0,2]); |
| 24 | |
| 25 | } |
| 26 | translate([-4.5 + y_delta, 0, real_len / 2]) cube([10, 10, 10], center = true); |
| 27 | translate([-11, 0, ybelt_hole_to_side + len]) { |
| 28 | # translate([screw_hole_z_offset,0,0]) rotate([0, -90, 0]) plate_screw(20); |
| 29 | # translate([8 + y_delta, 0, 0]) cube([10, 9, 9], center=true); |
| 30 | } |
| 31 | translate([-11, 0, ybelt_hole_to_side]) { |
| 32 | translate([screw_hole_z_offset,0,0]) rotate([0, -90, 0]) plate_screw(20); |
| 33 | translate([8 + y_delta, 0, 0]) cube([10, 9, 9], center=true); |
| 34 | } |
| 35 | |
| 36 | translate([-8 + y_delta, 0, 0]) mirror([1, 0, 0]) belt(real_len); |
| 37 | } |
| 38 | } |
| 39 | |
| 40 | |
| 41 | y_belt_holder(); |