-rw-r--r-- | x-carriage.scad | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/x-carriage.scad b/x-carriage.scad index 8a9f0d9..c2552d2 100644 --- a/x-carriage.scad +++ b/x-carriage.scad @@ -12,24 +12,25 @@ rod_d = 8; mounting_holes_from_top = [ // the offsets of mounting holes on the back [0, 20], [-4.5,10], [4.5,10] ]; mounting_holes_apart = mounting_holes_from_top[2][0]-mounting_holes_from_top[1][0]; belt_tooth=0.70; belt_thickness=0.75; belts_thickness = belt_thickness*2+belt_tooth+0.5; belt_width = 6 + slide_tolerance; belts_apart = 12; belt_pitch = 2; +beltholder_chamfer = 1; tiehole_id = bearings_d+3; tiehole_od = bearings_d+10; tiehole_w = 4; screw_d = 3; screwhead_d = 5.5; screwhead_h = 3; module belt(pitch=belt_pitch,width=belt_width,thickness=belt_thickness,tooth=belt_tooth,l=100,tolerance=0) { translate([-l/2,-width/2,-thickness]) intersection() { @@ -84,19 +85,23 @@ module xcarriage() { hull() for(x=[mounting_holes_apart/2,x1]) translate([x,0,-r1-bgap]) rotate([90,0,0]) cylinder(r=r1,h=belt_width+2,center=true,$fn=30); } } // difference translate([0,0,30/*heatsink height*//2]) for(mhft = mounting_holes_from_top) translate([mhft[0],0,-mhft[1]]) { rotate([90,0,0]) cylinder(d=screw_d+2*play_tolerance,h=bearings_d+2*bearings_s+2,center=true,$fn=30); translate([0,belt_width/2+screwhead_h+play_tolerance,0]) rotate([90,0,0]) cylinder(d=screwhead_d+2*play_tolerance,h=screwhead_h+play_tolerance+1,$fn=30); } + ccs = (belt_thickness+2*beltholder_chamfer)/sqrt(2); + translate([0,-belt_width/2,belts_apart/2+belt_thickness/2-fit_tolerance/2]) + rotate([45,0,0]) cube(size=[cw+2,ccs,ccs],center=true); + } // difference } print=false; if(print) rotate([-90,0,0]) xcarriage(); else xcarriage(); |