From 9c5bff52f2050788bc2469a27fdb8f8d692caa01 Mon Sep 17 00:00:00 2001 From: michalprusa Date: Wed, 16 Mar 2016 15:37:51 +0100 Subject: [PATCH] Modified dimensions and new belt trap system Modified dimension of whole carriage to allow full 250mm travel distance and new belt trap for easier assembly --- Printed-Parts/scad/x-carriage.scad | 115 ++++++++++++++--------------- 1 file changed, 57 insertions(+), 58 deletions(-) diff --git a/Printed-Parts/scad/x-carriage.scad b/Printed-Parts/scad/x-carriage.scad index 83fe04a..cdc7920 100755 --- a/Printed-Parts/scad/x-carriage.scad +++ b/Printed-Parts/scad/x-carriage.scad @@ -13,36 +13,46 @@ module x_carriage_base(){ // Long bearing holder translate([-33/2,45,0]) rotate([0,0,90]) horizontal_bearing_base(2); // Base plate - translate([-33,-11.5,0]) cube([33,68,7]); + translate([-33,-12.5,0]) cube([33,69,7]); + // Belt holder base - translate([-33,20,0]) cube([33,16,17]); - // Belt diverter R - translate([7.5,27,0]) cube([5,7,17]); - translate([-0.5,27,0]) cube([8,7,2]); - translate([4,33,0]) rotate([0,0,-45]) cube([5,5,10]); + translate([-42.5,20,0]) cube([52,16,7]); + translate([-16.5-12,24.5,0])cylinder(r=4.5, h=15, $fn=25); + translate([-16.5+12,24.5,0])cylinder(r=4.5, h=15, $fn=25); + + // Endstop trigger nipple + scale([1.6,1.1,1])translate([1.5,-11.5,0])rotate([0,0,90])cylinder(r=5, h=12, $fn=6); - // Belt diverter L - translate([-33,3,00]){scale([-1,1,1]){ - translate([7.5,27,0]) cube([5,4,17]); + // Belt Insert R + difference(){ + union(){ + translate([2,27,0]) cube([10,6,15]); + translate([2,27-2.3-4.5,0]) cube([10,4.5,15]); + translate([-0.5,27,0]) cube([8,7,2]); + } + translate([-3,25,5.5]) rotate([0,0,-40]) cube([5,5.5,10]); +} + + // Belt Insert L +difference(){ + union(){ + translate([-33,3,00]){scale([-1,1,1]){ + translate([0,27,0]) cube([12.5,3,15]); + translate([2,27-7.5-2.3,0]) cube([12.5,7.5,15]); translate([-0.5,27,0]) cube([8,7,2]); - translate([4,33,0]) rotate([0,0,-45]) cube([5,5,10]); }} + + } + + translate([-36.5,27.7,5.5]) rotate([0,0,-55]) cube([5,5.5,10]); + + } } module x_carriage_beltcut(){ - // Cut in the middle for belt - translate([-2.5-16.5+1,19,7]) cube([4.5,13,15]); - // Cut clearing space for the belt - translate([-38,5,7]) cube([40,13,15]); - // Belt slit - translate([-37,21.5+10,6]) cube([41,0.6,15]); - // Smooth entrance - translate([-40,21.5+10,14]) rotate([45,0,0]) cube([42,15,15]); - // Teeth cuts - for ( i = [0 : 17] ){ - translate([0-i*2,21.5+8.5,6]) cube([1.1,2,15]); - } + + } module x_carriage_holes(){ @@ -52,21 +62,38 @@ module x_carriage_holes(){ translate([-33/2,45,0]) rotate([0,0,90]) horizontal_bearing_holes(2); // Extruder mounting holes translate([-16.5+12,24.5,-1])cylinder(r=1.7, h=20, $fn=25); - translate([-16.5+12,24.5,10])cylinder(r=3.2, h=20, $fn=6); + translate([-16.5+12,24.5,12])cylinder(r=5.8/2, h=20, $fn=25); translate([-16.5-12,24.5,-1])cylinder(r=1.7, h=20, $fn=25); - translate([-16.5-12,24.5,10])cylinder(r=3.2, h=20, $fn=6); + translate([-16.5-12,24.5,12])cylinder(r=5.8/2, h=20, $fn=25); // Carriage alignment // translate([-33,24.5-6-0.25,-0.01])cube([33,3.5,1.25]); + + // Cables keepout + translate([-12,-18.1,-1])cube([10,6,30]); + translate([-27,-12.5,0])cube([25,0.5,12]); + + + // Carriage slimer + translate([-55.5+3,19,-1])cube([10,40,30]); + translate([+12.5-3,19,-1])cube([10,40,30]); + + translate([+12.5-3.5-2,19,-1])rotate([0,90-65,0])cube([10,40,30]); + translate([-55.5+6.7+2,19,-10])rotate([0,-90+65,0])cube([10,40,30]); + // Filament hole + translate([-33/2,-10,1])rotate([0,0,90])cylinder(r=1.52, h=20, $fn=10); + } module x_carriage_fancy(){ // Top right corner translate([13.5,-5,0]) translate([0,45+11.5,-1]) rotate([0,0,45]) translate([0,-15,0]) cube([30,30,20]); - // Bottom right corner - translate([0,5,0]) translate([0,-11.5,-1]) rotate([0,0,-45]) translate([0,-15,0]) cube([30,30,20]); + // Belt Smooth insert + translate([0,36.5,23.5]) rotate([45,0,0]) translate([0,-15,0]) cube([20,10,10]); + translate([-52.9,36.5+3,23.5]) rotate([45,0,0]) translate([0,-15,0]) cube([20,10,10]); + // Bottom ĺeft corner - //translate([-33,5,0]) translate([0,-11.5,-1]) rotate([0,0,-135]) translate([0,-15,0]) cube([30,30,20]); + translate([-33,5,0]) translate([0,-11.5,-1]) rotate([0,0,-135]) translate([0,-15,0]) cube([30,30,20]); // Top left corner translate([-33-13.5,-5,0]) translate([0,45+11.5,-1]) rotate([0,0,135]) translate([0,-15,0]) cube([30,30,20]); } @@ -74,44 +101,16 @@ module x_carriage_fancy(){ // Final part module x_carriage(){ difference(){ - union(){ + x_carriage_base(); - translate([-34+4,-11,0])rotate([0,0,90])cylinder(r=5, h=12, $fn=6); - - translate([-34+4,-12-3.5,0])rotate([0,0,90])cylinder(r=5, h=12, $fn=6); - - //translate([-36,-15.5,0])cube([12,4.5,12]); - } + x_carriage_beltcut(); x_carriage_holes(); x_carriage_fancy(); - - translate([-34+4,-12-3.5,-1])rotate([0,0,0])cylinder(r=1.6, h=15, $fn=15); - - translate([-34+4,-12-3.5,-1])rotate([0,0,90])cylinder(r=3.25, h=7, $fn=6); - - } } -difference(){ -union(){ -difference(){ + x_carriage(); - - translate([-35,14,13.5])cube([40,15,20]); - -} -translate([-11.5-3,20,7])cube([4.7,9,15]); - -} - - -//translate([-15.5-2,25,21-3])rotate([0,90,0])cylinder(r=3.25, h=5, $fn=6); -translate([-40,21.5+10,18]) rotate([45,0,0]) cube([42,15,15]); -translate([-40,21.5-4,18]) rotate([45,0,0]) cube([42,15,15]); -translate([-15.5,25,21-3])rotate([0,90,0])cylinder(r=1.6, h=15, $fn=15); - -}