made Y idler configurable by bearing size, also made it square for perfect print...
[clinton/prusa3.git] / x-end.scad
index 972f52d..ed4db2e 100644 (file)
@@ -8,7 +8,7 @@
 
 include <configuration.scad>
 use <bushing.scad>
-rod_distance = 45;
+xaxis_rod_distance = 45;
 
 module x_end_motor(){
     mirror([0,1,0]) {
@@ -20,7 +20,7 @@ module x_end_motor(){
 
         difference(){
             union(){
-                translate([-13.5,-15,26]) cube_fillet([17,12,52], center = true, vertical=[0,0,3,1.5], top=[0,3,6,3]);
+                translate([-13.75,-15,26]) cube_fillet([17.5,12,52], center = true, vertical=[0,0,3,1.5], top=[0,3,6,3]);
                 translate([-10,-34,9]) intersection(){
                     cube_fillet([10,37,18], center = true, vertical=[0,0,0,0], top=[0,3,5,3]);
                     translate([-10/2,10,-26]) rotate([45,0,0]) cube_fillet([10,60,60], radius=2);
@@ -37,8 +37,8 @@ module x_end_motor(){
             }
         }
         //smooth rod caps
-        translate([-22, -10.5, 0]) cube([17, 2, 15]);
-        translate([-22, -10.5, 45]) cube([17, 2, 10]);
+        translate([-22, -10, 0]) cube([17, 2, 15]);
+        translate([-22, -10, 45]) cube([17, 2, 10]);
     }
 }
 
@@ -47,14 +47,14 @@ module x_end_base(vfillet=[3,3,3,3], thru=true, len=40){
     difference(){
         union(){
             difference(){
-                translate([-4.5-10+2-1,-10+len/2,30]) cube_fillet([15+2,len,60], center = true, vertical=vfillet, top=[5,3,5,3]);
+                #translate([-13.75-0.5,-10+len/2,30]) cube_fillet([18.5,len,60], center = true, vertical=vfillet, top=[5,3,5,3]);
                 bushing_negative(60);
             }
             //rotate([0,0,0]) translate([0,-9.5,0]) 
             if (bearing_choice == 1) {
                 linear_bushing(60);
             } else {
-                linear_bearing(65);
+                linear_bearing(60);
             }
             // Nut trap
             difference(){
@@ -65,11 +65,12 @@ module x_end_base(vfillet=[3,3,3,3], thru=true, len=40){
                 }
 
                 //bottom hole
-                translate([0,17,-1]) cylinder(h = 4, r=2.45);
+                
+                translate([0,17,-1]) cylinder(h = 4, r=2.75);
                 //nut slid in
-                translate([5,17,4]) cube([21,9.5,4.1], center = true);
+                translate([5,17,4]) cube([9.2*2,9.2*sqrt(3/4),4.1], center = true);
 
-                translate([0,17,6.5]) cylinder(h = 4, r=2.45);
+                translate([0,17,6.5]) cylinder(h = 4, r=2.75);
             }
         }
 
@@ -77,18 +78,18 @@ module x_end_base(vfillet=[3,3,3,3], thru=true, len=40){
         translate([-5.5-10+1.5,22-9,30]) cube([10,55,32], center = true);
 
         if(thru == true){
-            translate([-14,-11,6]) rotate([-90,0,0]) pushfit_rod(8,50);
-            translate([-14,-11,rod_distance+6]) rotate([-90,0,0]) pushfit_rod(8,50);
+            translate([-14,-11,6]) rotate([-90,0,0]) pushfit_rod(8.2,50);
+            translate([-14,-11,xaxis_rod_distance+6]) rotate([-90,0,0]) pushfit_rod(8.2,50);
         } else {
-            translate([-14,-7,6]) rotate([-90,0,0]) pushfit_rod(8,50);
-            translate([-14,-7,rod_distance+6]) rotate([-90,0,0]) pushfit_rod(8,50);
+            translate([-14,-7,6]) rotate([-90,0,0]) pushfit_rod(8.25,50);
+            translate([-14,-7,xaxis_rod_distance+6]) rotate([-90,0,0]) pushfit_rod(8.25,50);
         }
 
 
     }
 
     //threaded rod
-    translate([0,17,0]) %cylinder(h = 70, r=2.5);
+    #translate([0,17,0]) %cylinder(h = 70, r=2.5+0.2);
 
 }