diff --git a/Printed-Parts/scad/x-end-idler.scad b/Printed-Parts/scad/x-end-idler.scad index 3711ad2..f94899b 100644 --- a/Printed-Parts/scad/x-end-idler.scad +++ b/Printed-Parts/scad/x-end-idler.scad @@ -13,10 +13,11 @@ module x_end_idler_holes() translate([0,3.5,0]) { // pulley screw - translate(v=[0,-19,30.25]) rotate(a=[0,-90,0]) cylinder(h = 80, r=1.8, $fn=30); - translate(v=[-4,-19,30.25]) rotate(a=[0,-90,0]) cylinder(h = 4, r=3.1, $fn=30); - translate(v=[-21.5,-19,30.25]) rotate(a=[0,-90,0]) rotate(a=[0,0,30]) cylinder(h = 10, r=3.2, $fn=6); - + translate(v=[0,-19,30.25]) rotate(a=[0,-90,0]) cylinder(h = 80, r=1.55, $fn=50); + translate(v=[-4,-19,30.25]) rotate(a=[0,-90,0]) cylinder(h = 4, r=3, $fn=50); + translate(v=[-21.5,-19,30.25]) rotate(a=[0,-90,0]) rotate(a=[0,0,30]) cylinder(h = 10, r=3.1, $fn=6); + translate(v=[-5.5,-19,30.25]) rotate(a=[0,-90,0]) cylinder(h = 1, r2=3, r1=4, $fn=50); + // pulley side cut translate(v=[-9,-19,30.25]) rotate(a=[0,-90,0]) cylinder(h = 9, r=9.5, $fn=30); translate([-19,-35,21.25]) cube([10,20,18]); @@ -51,8 +52,12 @@ module x_end_idler_base() translate(v=[-6,-16.5,30.25]) rotate(a=[0,-90,0]) cylinder(h = 0.5, r1=9, r2=12, $fn=30); translate([-25,-11.5,19]) cube([20,10,24]); } + } x_end_idler_holes(); + + + } translate([-15,10.5,6]) rotate([90,0,0]) cylinder( h=13, r=6, $fn=30); translate([-15,10.5,51]) rotate([90,0,0]) cylinder( h=13, r=6, $fn=30); @@ -61,7 +66,7 @@ module x_end_idler_base() { translate(v=[-19,-16.5,30.25]) rotate(a=[0,-90,0]) cylinder(h = 1, r1=9, r2=12, $fn=30); translate([-25,-11.5,19]) cube([20,10,24]); - translate(v=[0,-15.5,30.25]) rotate(a=[0,-90,0]) cylinder(h = 80, r=1.8, $fn=30); + translate(v=[0,-15.5,30.25]) rotate(a=[0,-90,0]) cylinder(h = 80, r=1.55, $fn=30); } } @@ -101,11 +106,7 @@ mirror([0,1,0]) translate([-50, -33, 0.6]) } -module reinforcement_selective_infill() -{ - rotate([90,0,-15,]) translate ([-1.5,8,26])linear_extrude(height = 0.2) polygon( points=[[-2,0],[0,12],[8,0]] ); // bearings - rotate([90,0,-50,]) translate ([8.5,8,1.4])linear_extrude(height = 0.2) polygon( points=[[0,0],[0,12],[8,0]] ); //body -} + module x_end_idler() { @@ -114,24 +115,49 @@ module x_end_idler() { x_end_idler_base(); waste_pocket(); - selective_infill(); - reinforcement_selective_infill(); - translate(v=[-8,-15.5,30.25]) rotate(a=[0,-90,0]) cylinder(h = 20, r=1.8, $fn=30); + + translate(v=[-8,-15.5,30.25]) rotate(a=[0,-90,0]) cylinder(h = 20, r=1.55, $fn=30); translate([-25,7.5,-1]) rotate([0,0,45]) cube([10,10,100]); //version translate([-23.7,-25,2]) rotate([90,0,90]) linear_extrude(height = 0.6) - { text("R1",font = "helvetica:style=Bold", size=3, center=true); } + { text("R2",font = "helvetica:style=Bold", size=4, center=true); } } + // bearings stop difference() { - // bearings stop translate([0,0,57]) rotate([0,0,90]) cylinder( h=1, r=8, $fn=30); translate([0,0,56.9]) rotate([0,0,90]) cylinder( h=0.5, r1=8, r2=7,$fn=30); translate([0,0,56.5]) rotate([0,0,90]) cylinder( h=2, r=7, $fn=30); translate([0.2,-0.5,50]) rotate([0,0,40]) cube([12,1,10]); } + + // bearings spacer + difference() + { + translate([0,0,26]) rotate([0,0,90]) cylinder( h=6, r=8, $fn=30); + translate([0,0,25]) rotate([0,0,90]) cylinder( h=8, r=7.55, $fn=60); + translate([0,0,25.9]) rotate([0,0,90]) cylinder( h=2, r2=7.5, r1=7.7,$fn=30); + translate([0,0,31.4]) rotate([0,0,90]) cylinder( h=2, r1=7.5, r2=8.3,$fn=30); + + rotate([0,0,310]) translate([-2.5,0,26]) cube([5,15,10]); + rotate([0,0,310-120]) translate([-2.5,0,26]) cube([5,15,10]); + rotate([0,0,310-240]) translate([-2.5,0,26]) cube([5,15,10]); + } + + + } -x_end_idler(); +difference() +{ + union() + { + x_end_idler(); + translate([-8,15,13.0]) rotate([0,0,-45.4]) cube([10,1.5,1]); + } + translate([-47,-40,60]) rotate([0,45,0]) cube([20,80,20]); + translate([-20,10.5,69]) rotate([0,45,0]) cube([20,20,20]); + translate([-25,37,49]) rotate([45,0,0]) cube([30,20,20]); +} diff --git a/Printed-Parts/scad/x-end-motor.scad b/Printed-Parts/scad/x-end-motor.scad index 43308a5..d8e0a9c 100644 --- a/Printed-Parts/scad/x-end-motor.scad +++ b/Printed-Parts/scad/x-end-motor.scad @@ -21,23 +21,44 @@ module x_end_motor_holes() translate(v=[-1,32,30.25]) { // Belt hole - translate(v=[-14,1,0]) cube(size = [10,46,22], center = true); + translate(v=[-19,-21,-12]) cube(size = [10,25,22]); // Motor mounting holes - translate(v=[20,-15.5,-15.5]) rotate(a=[0,-90,0]) rotate(a=[0,0,90]) cylinder(h=70, r=1.8, $fn=30); + translate(v=[0,-15.5,15.5]) rotate(a=[0,-90,0]) rotate(a=[0,0,90]) cylinder(h=30, r=1.55, $fn=60); + translate(v=[0,-15.5,15.5]) rotate(a=[0,-90,0]) rotate(a=[0,0,90]) cylinder(h=18, r2=1.55, r1=1.7, $fn=60); + translate(v=[1,-15.5,15.5]) rotate(a=[0,-90,0]) rotate(a=[0,0,90]) cylinder(h=10, r=3.05, $fn=60); + + translate(v=[20,-15,-15.5]) rotate(a=[0,-90,0]) rotate(a=[0,0,90]) cylinder(h=70, r=1.6, $fn=30); + translate(v=[1,-15,-15.5]) rotate(a=[0,-90,0]) rotate(a=[0,0,90]) cylinder(h=10, r=3.1, $fn=30); + translate(v=[20,-15.5,-15.5]) rotate(a=[0,-90,0]) rotate(a=[0,0,90]) cylinder(h=70, r=1.6, $fn=30); translate(v=[1,-15.5,-15.5]) rotate(a=[0,-90,0]) rotate(a=[0,0,90]) cylinder(h=10, r=3.1, $fn=30); - translate(v=[20,-15.5,15.5]) rotate(a=[0,-90,0]) rotate(a=[0,0,90]) cylinder(h=70, r=1.8, $fn=30); - translate(v=[1,-15.5,15.5]) rotate(a=[0,-90,0]) rotate(a=[0,0,90]) cylinder(h=10, r=3.1, $fn=30); - translate(v=[20,15.5,-15.5]) rotate(a=[0,-90,0]) rotate(a=[0,0,90]) cylinder(h=70, r=1.8, $fn=30); + translate(v=[20,-16,-15.5]) rotate(a=[0,-90,0]) rotate(a=[0,0,90]) cylinder(h=70, r=1.6, $fn=30); + translate(v=[1,-16,-15.5]) rotate(a=[0,-90,0]) rotate(a=[0,0,90]) cylinder(h=10, r=3.1, $fn=30); + translate(v=[20,-16.5,-15.5]) rotate(a=[0,-90,0]) rotate(a=[0,0,90]) cylinder(h=70, r=1.6, $fn=30); + translate(v=[1,-16.5,-15.5]) rotate(a=[0,-90,0]) rotate(a=[0,0,90]) cylinder(h=10, r=3.1, $fn=30); + + translate(v=[20,16.,-15.0]) rotate(a=[0,-90,0]) rotate(a=[0,0,90]) cylinder(h=70, r=1.6, $fn=30); + translate(v=[1,16.,-15.0]) rotate(a=[0,-90,0]) rotate(a=[0,0,90]) cylinder(h=10, r=3.1, $fn=30); + translate(v=[20,15.5,-15.5]) rotate(a=[0,-90,0]) rotate(a=[0,0,90]) cylinder(h=70, r=1.6, $fn=30); translate(v=[1,15.5,-15.5]) rotate(a=[0,-90,0]) rotate(a=[0,0,90]) cylinder(h=10, r=3.1, $fn=30); - translate(v=[20,15.5,15.5]) rotate(a=[0,-90,0]) rotate(a=[0,0,90]) cylinder(h=70, r=1.8, $fn=30); - translate(v=[1,15.5,15.5]) rotate(a=[0,-90,0]) rotate(a=[0,0,90]) cylinder(h=10, r=3.1, $fn=30); - + translate(v=[20,15,-16]) rotate(a=[0,-90,0]) rotate(a=[0,0,90]) cylinder(h=70, r=1.6, $fn=30); + translate(v=[1,15,-16]) rotate(a=[0,-90,0]) rotate(a=[0,0,90]) cylinder(h=10, r=3.1, $fn=30); + translate(v=[20,14.5,-16.5]) rotate(a=[0,-90,0]) rotate(a=[0,0,90]) cylinder(h=70, r=1.6, $fn=30); + translate(v=[1,14.5,-16.5]) rotate(a=[0,-90,0]) rotate(a=[0,0,90]) cylinder(h=10, r=3.1, $fn=30); + // Material saving cutout - translate(v=[-10,12,10]) cube(size = [60,42,42], center = true); + translate(v=[-10,12,12]) cube(size = [60,42,42], center = true); + translate(v=[-25,10.5,-11]) rotate([45,0,0]) cube(size = [60,10,10]); + translate(v=[-25,21,-11]) rotate([45,0,0]) cube(size = [60,10,10]); // Material saving cutout - translate(v=[-10,40,-30]) rotate(a=[45,0,0]) cube(size = [60,42,42], center = true); + translate(v=[-10,41,-30.5]) rotate(a=[45,0,0]) cube(size = [60,42,42], center = true); + + + translate([-15,-2,-33]) rotate([-45,0,0]) cylinder(h=25, r=1.7, $fn=30); + translate([-15,-2,-33]) rotate([-45,0,0]) cylinder(h=28-18, r=3.2, $fn=30); + translate([-35+2.8,10,-25]) rotate([45,0,0]) cube(size = [20,2,5.6]); + } } @@ -60,44 +81,8 @@ module x_end_motor_shaft_cutout() -module selective_infill()mirror([0,1,0]) translate([-50, -33, 0.6]) -{ - difference() - { - union() - { - difference() - { - translate([50,50,0.6]) rotate([0,0,90]) cylinder( h=6, r=11.7, $fn=30);//0, 17, 0.6 - translate([50,50,-1]) rotate([0,0,90]) cylinder( h=10, r=11.5, $fn=30); - } - difference() - { - translate([50,50,0.6]) rotate([0,0,90]) cylinder( h=6, r=10.7, $fn=30); //0, 17, 0.6 - translate([50,50,-1]) rotate([0,0,90]) cylinder( h=10, r=10.5, $fn=30); - } - difference() - { - translate([50,50,0.6]) rotate([0,0,90]) cylinder( h=6, r=9.9, $fn=30); //0, 17, 0.6 - translate([50,50,-1]) rotate([0,0,90]) cylinder( h=10, r=9.7, $fn=30); - } - difference() - { - translate([50,50,0.6]) rotate([0,0,90]) cylinder( h=6, r=9, $fn=30); //0, 17, 0.6 - translate([50,50,-1]) rotate([0,0,90]) cylinder( h=10, r=8.8, $fn=30); - } - } - translate([57.5,50.5,-1]) rotate([0,0,45]) cube([8,10,9]); // front - translate([52,30.5,-1]) rotate([0,0,45]) cube([10,20,20]); // front angled - translate([32,35.5,-1]) cube([8,30,9]); // inner horizontal - } -} - module reinforcement_selective_infill() -{ - rotate([90,0,-15,]) translate ([-1.5,8,26])linear_extrude(height = 0.2) polygon( points=[[-2,0],[0,12],[8,0]] ); //bearings - rotate([90,0,-50,]) translate ([8.5,8,1.4])linear_extrude(height = 0.2) polygon( points=[[0,0],[0,12],[8,0]] ); //body -} + // Final part @@ -108,8 +93,7 @@ module x_end_motor() x_end_motor_base(); x_end_motor_shaft_cutout(); x_end_motor_holes(); - selective_infill(); - reinforcement_selective_infill(); + // waste pocket translate([-15,7,6]) rotate([90,0,0]) cylinder(h=3.5, r=5, $fn=30); @@ -123,7 +107,7 @@ module x_end_motor() // version translate([-23.2,-20,2]) rotate([90,0,270]) linear_extrude(height = 0.6) - { text("R1",font = "helvetica:style=Bold", size=3, center=true); } + { text("R2",font = "helvetica:style=Bold", size=4, center=true); } } translate([-15,10,6]) rotate([90,0,0]) cylinder(h=3, r=5, $fn=30); @@ -137,10 +121,37 @@ module x_end_motor() translate([0,0,56.5]) rotate([0,0,90]) cylinder( h=2, r=7, $fn=30); translate([-0.18,-0.5,50]) rotate([0,0,-40]) cube([12,1,10]); } + + // bearings spacer + rotate([0,0,45]) difference() + { + translate([0,0,26]) rotate([0,0,90]) cylinder( h=6, r=8, $fn=30); + translate([0,0,25]) rotate([0,0,90]) cylinder( h=8, r=7.55, $fn=60); + translate([0,0,25.9]) rotate([0,0,90]) cylinder( h=2, r2=7.5, r1=7.7,$fn=30); + translate([0,0,31.4]) rotate([0,0,90]) cylinder( h=2, r1=7.5, r2=8.3,$fn=30); + + rotate([0,0,310]) translate([-2.5,0,26]) cube([5,15,10]); + rotate([0,0,310-120]) translate([-2.5,0,26]) cube([5,15,10]); + rotate([0,0,310-240]) translate([-2.5,0,26]) cube([5,15,10]); + } } -x_end_motor(); +difference() +{ + union() + { + x_end_motor(); + translate([-8,-17,13.0]) rotate([0,0,44.7]) cube([10,1.5,1]); + } + + translate([-47,-40,60]) rotate([0,45,0]) cube([20,80,20]); + translate([-20,-30.5,69]) rotate([0,45,0]) cube([20,20,20]); + translate([-25,-37,49]) rotate([45,0,0]) cube([30,20,20]); + translate([-25,23.5,49]) rotate([45,0,0]) cube([30,20,20]); +} + + diff --git a/Printed-Parts/scad/x-end.scad b/Printed-Parts/scad/x-end.scad index 2767258..139ec81 100644 --- a/Printed-Parts/scad/x-end.scad +++ b/Printed-Parts/scad/x-end.scad @@ -14,25 +14,32 @@ module x_end_base() // Main block height = 58; translate(v=[-15,-9,height/2]) cube(size = [17,39,height], center = true); + translate([-8,-28.5,0]) cube(size = [5,1,13.5]); // Bearing holder vertical_bearing_base(); //Nut trap // Cylinder - translate(v=[0,-17,0]) poly_cylinder(h = 8, r=12.5, $fn=25); - translate(v=[-6,-10.6,8]) rotate([0,0,48.2]) cube(size = [10,5,1], center = true); + translate(v=[0,-17,0]) poly_cylinder(h = 13.5, r=12.5, $fn=25); + difference() + { + translate(v=[0,-17,13]) poly_cylinder(h = 3, r=12.5, $fn=25); + translate(v=[8,-17,12]) rotate([0,0,0]) cube(size = [15,50,10], center = true); + translate(v=[8,-24,12]) rotate([0,0,0]) cube(size = [50,15,10], center = true); + translate(v=[0,-17, -1]) cylinder(h = 20, r = 6.7, $fn = 60); + } + // Nut brace - rotate([90,0,-15,]) translate ([-1, 8, 24])linear_extrude(height = 4) polygon( points=[[0,0],[0,12],[8,0]] ); - rotate([90,0,-50,]) translate ([9, 8, -0.6])linear_extrude(height = 4) polygon( points=[[0,0],[0,12],[8,0]] ); + //#rotate([90,0,-15,]) translate ([-1, 8, 24])linear_extrude(height = 4) polygon( points=[[0,0],[0,12],[8,0]] ); + //rotate([90,0,-50,]) translate ([9, 8, -0.6])linear_extrude(height = 4) polygon( points=[[0,0],[0,12],[8,0]] ); } module reinforcement_selective_infill() { - rotate([90,0,-15,]) translate ([-1.5, 8, 26])linear_extrude(height = 0.2) polygon( points=[[-2,0],[0,12],[8,0]] ); - - rotate([90,0,-50,]) translate ([8.5, 8, 1.4])linear_extrude(height = 0.2) polygon( points=[[0,0],[0,12],[12,0]] ); + rotate([90,0,-15,]) translate ([-1.5, 8, 26])linear_extrude(height = 0.2) polygon( points=[[-2,0],[0,5],[8,0]] ); + rotate([90,0,-50,]) translate ([8.5, 8, 1.4])linear_extrude(height = 0.2) polygon( points=[[0,0],[0,5],[12,0]] ); } @@ -68,19 +75,32 @@ module x_end_holes() // TR Nut trap // Hole for the nut - translate(v=[0,-17, -1]) poly_cylinder(h = 9.01, r = 7, $fn = 25); - translate(v=[0,-17, -0.1]) cylinder(h = 0.5, r1 = 6.8+0.8,r2 = 7, $fn = 25); + //#translate(v=[0,-17, -1]) poly_cylinder(h = 9.01, r = 6.7, $fn = 60); + translate(v=[0,-17, -1]) cylinder(h = 14.51, r = 6.7, $fn = 60); + translate(v=[0,-17, -0.1]) cylinder(h = 1, r1 = 7.2,r2 = 6.7, $fn = 60); // Screw holes for TR nut - translate(v=[0,-17, 0]) rotate([0, 0, -135]) translate([0, 9.5, -1]) cylinder(h = 10, r = 1.8, $fn=25); - translate(v=[0,-17, 0]) rotate([0, 0, -135]) translate([0, -9.5, -1]) cylinder(h = 8, r = 1.8, $fn=25); + translate(v=[0,-17, 0]) rotate([0, 0, -135]) translate([0, 9.5, -4]) cylinder(h = 19, r = 1.65, $fn=50); + translate(v=[0,-17, 0]) rotate([0, 0, -135]) translate([0, -9.5, -4]) cylinder(h = 19, r = 1.65, $fn=50); + + translate(v=[0,-17,0]) rotate([0,0,-135]) translate([0,9.5,-1]) cylinder(h=2, r1=2.2,r2=1.65, $fn=50); + translate(v=[0,-17,0]) rotate([0,0,-135]) translate([0,-9.5,-1]) cylinder(h=2, r1=2.2,r2=1.65,, $fn=50); + // Nut traps for TR nut screws - translate(v=[0,-17, 0]) rotate([0, 0, -135]) translate([0, 9.5, 4]) rotate([0, 0, 0])cylinder(h = 5, r = 3.45, $fn=6); + translate(v=[0,-17, 0]) rotate([0, 0, -135]) translate([0, 9.5, 11]) rotate([0, 0, 0])cylinder(h = 6, r = 3.1, $fn=6); - translate(v=[0,-17, 0]) rotate([0, 0, -135]) translate([0, -9.5, 4]) rotate([0, 0, 30])cylinder(h = 3, r = 3.2, $fn=6); - translate([-5.5,-17.2,4]) rotate([0,0,30]) cube([5,5,3]); - translate([-0,-17.2,4]) rotate([0,0,60]) cube([5,10,3]); + translate(v=[0,-17, 0]) rotate([0,0,-135]) translate([0,-9.5,10]) rotate([0,0,30])cylinder(h = 3, r = 3.1, $fn=6); + translate([-5.5,-17.2,10]) rotate([0,0,30]) cube([5,5,3]); + translate([-0,-17.2,10]) rotate([0,0,60]) cube([5,10,3]); + + translate([0,0,6.5]) + difference() + { + translate(v=[0,-17, 0]) rotate([0,0,-135]) translate([0,-9.5,5.8]) rotate([0,0,30])cylinder(h = 1, r = 3.1, $fn=6); + translate([-11,-12.0,4.5]) rotate([0,0,45]) cube([8,3,3]); + translate([-6.5,-16.85,4.5]) rotate([0,0,45]) cube([8,3,3]); + } } @@ -89,12 +109,27 @@ module x_end_plain() { difference() { - x_end_base(); - x_end_holes(); + union() + { + difference() + { + x_end_base(); + x_end_holes(); + } + translate(v=[-5.8,-13.3,13.5]) rotate([0,0,45.3]) cube(size = [10,2,1], center = true); } + difference() + { + translate(v=[0,-17, 0.3]) rotate([0,0,-135]) translate([0,-9.5,10]) rotate([0,0,30])cylinder(h = 3, r = 3.2, $fn=6); + translate(v=[-5.8,-13.3,13.5]) rotate([0,0,45.3]) cube(size = [10,2,1], center = true); + } + } + + + + } -x_end_plain(); module pushfit_rod(diameter,length)