summaryrefslogtreecommitdiff
authorMichael Krelin <hacker@klever.net>2016-07-15 21:52:05 (UTC)
committer Michael Krelin <hacker@klever.net>2016-07-15 21:52:05 (UTC)
commitd67ab62d587d8108c93a7cbd1dcc9c0af1381076 (patch) (unidiff)
tree88f7d6bb1395d570b8f459945b5f4a137f1fe972
parentcd89e0556473d0dde27950f397326b2ed4a4d684 (diff)
downloadcarriagery-d67ab62d587d8108c93a7cbd1dcc9c0af1381076.zip
carriagery-d67ab62d587d8108c93a7cbd1dcc9c0af1381076.tar.gz
carriagery-d67ab62d587d8108c93a7cbd1dcc9c0af1381076.tar.bz2
widened opening for the bearings
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--x-carriage.scad2
1 files changed, 2 insertions, 0 deletions
diff --git a/x-carriage.scad b/x-carriage.scad
index 6dc5b67..47ba499 100644
--- a/x-carriage.scad
+++ b/x-carriage.scad
@@ -35,48 +35,50 @@ module belt(pitch=belt_pitch,width=belt_width,thickness=belt_thickness,tooth=bel
35 translate([-l/2,-width/2,-thickness]) 35 translate([-l/2,-width/2,-thickness])
36 intersection() { 36 intersection() {
37 union() { 37 union() {
38 cube(size=[l,width,thickness+tolerance]); 38 cube(size=[l,width,thickness+tolerance]);
39 for(x=[0:pitch:l/2]) for(s=[-1,1]) 39 for(x=[0:pitch:l/2]) for(s=[-1,1])
40 translate([l/2+s*x,0,thickness]) 40 translate([l/2+s*x,0,thickness])
41 rotate([-90,0,0]) 41 rotate([-90,0,0])
42 cylinder(r=tooth+tolerance,h=width,$fn=6); 42 cylinder(r=tooth+tolerance,h=width,$fn=6);
43 } 43 }
44 translate([0,-1,0]) 44 translate([0,-1,0])
45 cube(size=[l,width+2,thickness+tooth+1]); 45 cube(size=[l,width+2,thickness+tooth+1]);
46 } 46 }
47} 47}
48 48
49module xcarriage() { 49module xcarriage() {
50 cw = bearings_l+2*bearings_m;// carriage width 50 cw = bearings_l+2*bearings_m;// carriage width
51 % for(mz=[0,1]) mirror([0,0,mz]) translate([0,0,-belts_apart/2]) belt(l=cw+2); 51 % for(mz=[0,1]) mirror([0,0,mz]) translate([0,0,-belts_apart/2]) belt(l=cw+2);
52 difference() { 52 difference() {
53 translate([-cw/2,-belt_width/2,-(rods_apart+bearings_d+bearings_m)/2]) 53 translate([-cw/2,-belt_width/2,-(rods_apart+bearings_d+bearings_m)/2])
54 cube(size=[cw,bearings_d/2+bearings_s+belt_width/2,rods_apart+bearings_d+bearings_m]); 54 cube(size=[cw,bearings_d/2+bearings_s+belt_width/2,rods_apart+bearings_d+bearings_m]);
55 55
56 for(sz=[-1,1]) translate([0,0,sz*rods_apart/2]) { 56 for(sz=[-1,1]) translate([0,0,sz*rods_apart/2]) {
57 rotate([0,90,0]) 57 rotate([0,90,0])
58 cylinder(d=bearings_d,h=bearings_l,center=true,$fn=60); 58 cylinder(d=bearings_d,h=bearings_l,center=true,$fn=60);
59 translate([0,-bearings_d/2,0])
60 cube(size=[bearings_l,bearings_d,bearings_d],center=true);
59 for(sx=[-1,1]) translate([sx*bearings_l/4,0,0]) 61 for(sx=[-1,1]) translate([sx*bearings_l/4,0,0])
60 rotate([0,90,0]) cylinder(d=bearings_d-bearings_m,h=cw+2,center=true,$fn=60); 62 rotate([0,90,0]) cylinder(d=bearings_d-bearings_m,h=cw+2,center=true,$fn=60);
61 translate([-cw/2-1,-belt_width,-(bearings_d-bearings_m)/2]) 63 translate([-cw/2-1,-belt_width,-(bearings_d-bearings_m)/2])
62 cube(size=[cw+2,belt_width,bearings_d-bearings_m]); 64 cube(size=[cw+2,belt_width,bearings_d-bearings_m]);
63 rotate([0,90,0]) difference() { 65 rotate([0,90,0]) difference() {
64 cylinder(d=tiehole_od,h=tiehole_w,center=true,$fn=60); 66 cylinder(d=tiehole_od,h=tiehole_w,center=true,$fn=60);
65 cylinder(d=tiehole_id,h=tiehole_w+2,center=true,$fn=60); 67 cylinder(d=tiehole_id,h=tiehole_w+2,center=true,$fn=60);
66 } 68 }
67 } 69 }
68 70
69 difference() { 71 difference() {
70 gap=belts_apart/6; 72 gap=belts_apart/6;
71 translate([0,-.5,-gap/2]) 73 translate([0,-.5,-gap/2])
72 cube(size=[cw+2,belt_width+2,belts_apart+2*belt_thickness+gap],center=true); 74 cube(size=[cw+2,belt_width+2,belts_apart+2*belt_thickness+gap],center=true);
73 for(mx=[0,1]) mirror([mx,0,0]) { 75 for(mx=[0,1]) mirror([mx,0,0]) {
74 ofc = mounting_holes_apart/2+screwhead_d/2+belt_thickness+belt_tooth+play_tolerance; // offset from center 76 ofc = mounting_holes_apart/2+screwhead_d/2+belt_thickness+belt_tooth+play_tolerance; // offset from center
75 r=1; 77 r=1;
76 x0 = ofc+r; x1=cw/2-r; 78 x0 = ofc+r; x1=cw/2-r;
77 z0 = r; z1 = belts_apart/2-belt_thickness; 79 z0 = r; z1 = belts_apart/2-belt_thickness;
78 difference() { 80 difference() {
79 hull() for(x=[x0,x1]) for(z=[z0,z1]) 81 hull() for(x=[x0,x1]) for(z=[z0,z1])
80 translate([x,0,z]) 82 translate([x,0,z])
81 rotate([90,0,0]) cylinder(r=r,h=belt_width+2,center=true,$fn=30); 83 rotate([90,0,0]) cylinder(r=r,h=belt_width+2,center=true,$fn=30);
82 translate([cw/2,0,belts_apart/2]) mirror([0,0,1]) belt(width=belt_width+2,l=cw/2+2,tolerance=fit_tolerance); 84 translate([cw/2,0,belts_apart/2]) mirror([0,0,1]) belt(width=belt_width+2,l=cw/2+2,tolerance=fit_tolerance);