belt tensioner, pulley screw fix, trapeziod nut reinforcement, tolerances

pull/61/head
akukan 2018-02-11 11:09:21 +01:00 committed by GitHub
parent 576ff8fbe6
commit 653881f62f
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 157 additions and 85 deletions

View File

@ -13,10 +13,11 @@ module x_end_idler_holes()
translate([0,3.5,0]) translate([0,3.5,0])
{ {
// pulley screw // pulley screw
translate(v=[0,-19,30.25]) rotate(a=[0,-90,0]) cylinder(h = 80, r=1.8, $fn=30); 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.1, $fn=30); 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.2, $fn=6); 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 // pulley side cut
translate(v=[-9,-19,30.25]) rotate(a=[0,-90,0]) cylinder(h = 9, r=9.5, $fn=30); 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]); 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(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]); translate([-25,-11.5,19]) cube([20,10,24]);
} }
} }
x_end_idler_holes(); x_end_idler_holes();
} }
translate([-15,10.5,6]) rotate([90,0,0]) cylinder( h=13, r=6, $fn=30); 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); 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(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([-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() module x_end_idler()
{ {
@ -114,24 +115,49 @@ module x_end_idler()
{ {
x_end_idler_base(); x_end_idler_base();
waste_pocket(); waste_pocket();
selective_infill();
reinforcement_selective_infill(); translate(v=[-8,-15.5,30.25]) rotate(a=[0,-90,0]) cylinder(h = 20, r=1.55, $fn=30);
translate(v=[-8,-15.5,30.25]) rotate(a=[0,-90,0]) cylinder(h = 20, r=1.8, $fn=30);
translate([-25,7.5,-1]) rotate([0,0,45]) cube([10,10,100]); translate([-25,7.5,-1]) rotate([0,0,45]) cube([10,10,100]);
//version //version
translate([-23.7,-25,2]) rotate([90,0,90]) linear_extrude(height = 0.6) 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() difference()
{ {
// bearings stop
translate([0,0,57]) rotate([0,0,90]) cylinder( h=1, r=8, $fn=30); 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.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,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]); 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]);
}

View File

@ -21,23 +21,44 @@ module x_end_motor_holes()
translate(v=[-1,32,30.25]) translate(v=[-1,32,30.25])
{ {
// Belt hole // 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 // 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=[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,-15.5,15.5]) rotate(a=[0,-90,0]) rotate(a=[0,0,90]) cylinder(h=10, r=3.1, $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,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.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=[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,15,-16]) 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=[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 // 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 // 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 // Final part
@ -108,8 +93,7 @@ module x_end_motor()
x_end_motor_base(); x_end_motor_base();
x_end_motor_shaft_cutout(); x_end_motor_shaft_cutout();
x_end_motor_holes(); x_end_motor_holes();
selective_infill();
reinforcement_selective_infill();
// waste pocket // waste pocket
translate([-15,7,6]) rotate([90,0,0]) cylinder(h=3.5, r=5, $fn=30); 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 // version
translate([-23.2,-20,2]) rotate([90,0,270]) linear_extrude(height = 0.6) 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); 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,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]); 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]);
}

View File

@ -14,25 +14,32 @@ module x_end_base()
// Main block // Main block
height = 58; height = 58;
translate(v=[-15,-9,height/2]) cube(size = [17,39,height], center = true); 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 // Bearing holder
vertical_bearing_base(); vertical_bearing_base();
//Nut trap //Nut trap
// Cylinder // Cylinder
translate(v=[0,-17,0]) poly_cylinder(h = 8, r=12.5, $fn=25); translate(v=[0,-17,0]) poly_cylinder(h = 13.5, r=12.5, $fn=25);
translate(v=[-6,-10.6,8]) rotate([0,0,48.2]) cube(size = [10,5,1], center = true); 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 // 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,-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,-50,]) translate ([9, 8, -0.6])linear_extrude(height = 4) polygon( points=[[0,0],[0,12],[8,0]] );
} }
module reinforcement_selective_infill() 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,-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]] );
rotate([90,0,-50,]) translate ([8.5, 8, 1.4])linear_extrude(height = 0.2) polygon( points=[[0,0],[0,12],[12,0]] );
} }
@ -68,19 +75,32 @@ module x_end_holes()
// TR Nut trap // TR Nut trap
// Hole for the nut // Hole for the nut
translate(v=[0,-17, -1]) poly_cylinder(h = 9.01, r = 7, $fn = 25); //#translate(v=[0,-17, -1]) poly_cylinder(h = 9.01, r = 6.7, $fn = 60);
translate(v=[0,-17, -0.1]) cylinder(h = 0.5, r1 = 6.8+0.8,r2 = 7, $fn = 25); 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 // 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, -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 = 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,-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 // 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(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,4]) rotate([0,0,30]) cube([5,5,3]); translate([-5.5,-17.2,10]) rotate([0,0,30]) cube([5,5,3]);
translate([-0,-17.2,4]) rotate([0,0,60]) cube([5,10,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() difference()
{ {
x_end_base(); union()
x_end_holes(); {
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) module pushfit_rod(diameter,length)