Skip to content

Commit

Permalink
New extruder design
Browse files Browse the repository at this point in the history
Extruder design and naming changed
  • Loading branch information
michalprusa committed Apr 16, 2016
1 parent 0e6a366 commit 84256dc
Show file tree
Hide file tree
Showing 9 changed files with 48,423 additions and 49,781 deletions.
5 changes: 5 additions & 0 deletions Printed-Parts/scad/extruder-body.scad
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
use <extruder-main.scad>
difference(){
extruder_body();
extruder_mount_holes();
}
24 changes: 0 additions & 24 deletions Printed-Parts/scad/extruder-carriage-side.scad

This file was deleted.

9 changes: 9 additions & 0 deletions Printed-Parts/scad/extruder-cover.scad
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
use <extruder-main.scad>
difference(){
extruder_cover();
extruder_mount_holes();

// Easy assembly trim
cube([50,50,15.2]);

}
287 changes: 287 additions & 0 deletions Printed-Parts/scad/extruder-main.scad
Original file line number Diff line number Diff line change
@@ -0,0 +1,287 @@
module extruder_body(){
union(){
difference(){
// Main
union(){
cube([35,44,15]);
translate([-12,41,0])cube([45,3,12]); // P.I.N.D.A. Probe mount
//fan nice look
translate([35,0,0]) cube([10,12,15]);
}
// Fan nice look edge cut
translate([+52.6,-3.49,0]) rotate([0,0,-45-180]) translate([0,-5,-0.1]) cube([10,10,20]);

// P.I.N.D.A. Probe mount edge cut
translate([-32,40,5]) rotate([0,45,0]) translate([0,-5,-0.1]) cube([10,10,20]); // Top
translate([-32,40,-7]) rotate([0,45,0]) translate([0,-5,-0.1]) cube([10,10,20]); // Bottom


// P.I.N.D.A. probe mount hole
translate([35/2,0,6]){
translate([-23,32.99,0])rotate([-90,0,0])cylinder(r=14/2, h=8, $fn=20);
translate([-23,0,0])rotate([-90,0,0])cylinder(r=8/2, h=50, $fn=20);
}

extruder_nozzle_cut();
// larger groove for easy entry
translate([35/2,0,15]) rotate([-90,0,0]) cylinder(r=7.13, h=20, $fn=120);

// Extruder cables path
translate([33+4,10,-1]) cylinder(r=2, h=17,$fn=30);
translate([33+4,12,9]) cube([4,4,20], center=true);

extruder_nozzle_cooling();

}

// Cooling grill
difference(){
union(){
// Fins up
//translate([0,37,0]) rotate([0,0,25]) cube([6,1.4,15]);
translate([0,32,0]) rotate([0,0,25]) cube([6,1.4,15]);
//translate([0,27,0]) rotate([0,0,25]) cube([6,1.4,15]);
translate([0,22,0]) rotate([0,0,25]) cube([6,1.4,15]);
//translate([0,17,0]) rotate([0,0,25]) cube([6,1.4,15]);

// Structural support
translate([0,13,11]) rotate([0,0,0]) cube([4,30,1]);
//translate([0,13,14.5]) rotate([0,0,0]) cube([4,30,0.5]);
}
// Trim
translate([-35,0,0])cube([35,43,15]);

}
}

mirror([1,0,0]){
// Filament visualisation
%translate([-35/2,-50,15])rotate([-90,0,0])cylinder(r=1.75/2, h=100, $fn=20);

// Motor visualisation
translate([-42,-42,-1]) %cube([42,42,1]);
translate([-21,-21,0])%cylinder(r=2.5, h=20, $fn=30);
translate([-21,-21,8])%cylinder(r=4, h=13, $fn=30);

// MOTOR
difference(){
union(){
// base
difference(){
translate([-42,-42,0]) cube([42,42,30]);
//main cut
translate([-21,-19.5-10-3,-1]) cube([42,23,32]);
translate([-15,-49.5,-1]) cube([42,23,32]);
translate([-51,-33,-1]) rotate([0,65,0]) cube([10,25,10]);
translate([-35/2+3+1.8+0.5,-41,2+3+2.5])cube([42,42,32]);
//base round cutout
translate([-21,-21,-2]) cylinder(r=11.5, h=33, $fn=200);

//filament hole
translate([-35/2,-42,15])rotate([-90,0,0])cylinder(r=2.2/2, h=20, $fn=20);
translate([-35/2,-42,15])rotate([-90,0,0])cylinder(r2=2.2/2,r1=3.6/2, h=1.5, $fn=20);
}

//filament guide
translate([-35/2-3,-19,15-4])cube([6,10,8]);
difference(){
union(){
translate([-35/2-3,-8.4+2+1.2,0.4]) rotate([45,0,0]) cube([6,15,15]);
translate([-35/2-3,-8.4+2+1.2,0.4+8]) rotate([45,0,0]) cube([6,15,15]);
}
translate([-35/2-4,-1,2]) cube([8,15,25]);

}
}
// Filament ptfe guide cutout

// PTFE secure ring slot
translate([-35/2,-3.99,15])rotate([-90,0,0]) cylinder(r=7.5/2, h=5, $fn=50); // Bottom hole
translate([-35/2,-3.99,21])rotate([-90,0,0]) cylinder(r=7.5/2, h=5, $fn=50); // Top hole
translate([-35/2 - 7.5/2,-3.99,21])rotate([-90,0,0])cube([7.5,6,8]); // Slot cut

// PTFE tube slot
translate([-35/2,-23,15])rotate([-90,0,0]) cylinder(r=4.2/2, h=25, $fn=50); // Main hole
translate([-35/2,-9,15])rotate([-60,0,0]) rotate([0,0,10])cylinder(r=4.2/2, h=25, $fn=50); // Top hole
// Slot cut
difference(){
translate([-35/2,-8,14])rotate([-60,0,0]) rotate([0,0,30])cylinder(r=4.85/2, h=25, $fn=6);
translate([-22,-20,5])cube([10,50,10]);
}

// drive pulley cutout
translate([-21,-21,8])cylinder(r=4, h=13, $fn=80);
// idler bearing cutout
translate([-21+13,-21,8])cylinder(r=8.5, h=13, $fn=80);

translate([-21,-27,8])cube([10,10,13]); // Trim


// filament clean hole
translate([-43,-21,15])rotate([90,0,90])cylinder(r=20/2, h=20, $fn=6);
translate([-43,-21,15])rotate([90,0,90])cylinder(r1=27/2,r2=20/2, h=5, $fn=6);

// round corners
translate([-2.5,-42+2.5,0]) rotate([0,0,-45]) translate([0,-5,-0.1]) cube([10,10,10]);
translate([-42+2.5,-42+2.5,0]) rotate([0,0,-45-90]) translate([0,-5,-0.1]) cube([10,10,33]);



// idler nut traps Bottom
translate([-23,-53.5,7.5-(5.5/2)-0.1])cube([2.5,20,5.7]); // Nut trap
translate([-32,-36.5-2.2,7.5-1.5])cube([40,4,3]); // Screw hole

// idler nut traps Top
translate([-23,-53.5,30-7.5-(5.5/2)-0.1])cube([2.5,20,5.7]); // Nut trap
translate([-32,-36.5-2.2,30-7.5-1.5])cube([40,4,3]); // Screw hole
}
}
}

module extruder_cover(){
union(){
difference(){
// Main
union(){
translate([0,0,15]) cube([35,44,15]);

//fan nice look
translate([35,0,15]) cube([10,12,15]);
}
// Fan nice look edge cut
translate([+52.6,-3.49,0]) rotate([0,0,-45-180]) translate([0,-5,-0.1]) cube([10,10,32]);

extruder_nozzle_cut();


// Extruder cables path
translate([33+4,10,-1]) cylinder(r=2, h=32,$fn=30);
translate([33+4,12,22]) cube([4,4,20], center=true);

extruder_nozzle_cooling();

}

// 5015 print fan mount pillar
translate([6,33,27])rotate([0,0,67]) cube([8,24,3]); // Connecting cube
translate([35/2+12-42.75,6.5+38.5,25])cylinder(r=5.8, h=5, $fn=6); // Hexagon at the end

// Print colling airway
translate([10,44,28])rotate([0,0,0]) cube([25,9,2]);
translate([10,51.6,28.5])rotate([-45,0,0]) cube([25,7,2]);

translate([34,44,22])rotate([0,0,0]) cube([1,16,8]);
translate([10,44,24])rotate([0,0,0]) cube([1,14,6]);


// Cooling grill
difference(){
union(){
// Fins up
//translate([0,37,0]) rotate([0,0,25]) cube([6,1.4,15]);
translate([0,32,15]) rotate([0,0,25]) cube([6,1.4,15]);
//translate([0,27,0]) rotate([0,0,25]) cube([6,1.4,15]);
translate([0,22,15]) rotate([0,0,25]) cube([6,1.4,15]);
//translate([0,17,0]) rotate([0,0,25]) cube([6,1.4,15]);

// Structural support
translate([0,13,19]) rotate([0,0,0]) cube([4,30,1]);
//translate([0,13,14.5]) rotate([0,0,0]) cube([4,30,0.5]);
}
// Trim
translate([-35,0,0])cube([35,43,35]);

}
}

}



module extruder_mount_holes(){

// Carriage mount right
translate([35/2-12,6.5,-0.01])cylinder(r=1.65, h=5, $fn=30); // Bottom hole
translate([35/2-12,6.5,6.5+0.2])cylinder(r=1.65, h=5, $fn=30); // Middle hole
translate([35/2-12,6.5,12.5+0.2])cylinder(r=1.65, h=14.3-0.2, $fn=30); // Top hole
translate([35/2-12,6.5,27])cylinder(r=3.1, h=5, $fn=30); // Head cut
translate([35/2-12-6.5,6.5-2.85,10])rotate([0,0,0]) cube([10,5.7,2.5]); // Nut Trap top
translate([35/2-12-6.5,6.5-2.85,4])rotate([0,0,0]) cube([10,5.7,2.5]); // Nut trap bottom

// Carriage mount left
translate([35/2+12+11,6.5-2,6.2])cylinder(r=1.7, h=20.8-0.2, $fn=30); // Screw hole
translate([35/2+12+11,6.5-2,-0.01])rotate([0,0,-15])cylinder(r=3.2, h=6, $fn=6); // Nut trap
translate([35/2+12+11,6.5-2,27])cylinder(r=3.1, h=5, $fn=30); // Head cut


// 5015 print fan top left mount hole
translate([35/2+12,6.5,-0.01])cylinder(r=1.65, h=35, $fn=30); // Screw cut
translate([35/2+12,6.5,11]) rotate([0,0,30])cylinder(r=3.2, h=17.01, $fn=6); // Nut Trap
translate([35/2+12,6.5,14]) rotate([0,0,30])cylinder(r=3.5, h=11.01, $fn=6); // Nut easy entry cut

// 5015 print fan bottom right mount hole
translate([35/2+12-42.75,6.5+38.5,15])cylinder(r=1.65, h=20, $fn=30); // Screw cut
translate([35/2+12-42.75,6.5+38.5,15]) cylinder(r=3.2, h=13.01, $fn=6); // Nut Trap


// Motor mount holes
translate([21,-21,0]){
// Top right
translate([-15.5,-15.5,4]) cylinder(r=1.65, h=50, $fn=30); // Screw hole
translate([-15.5,-15.5,-1]) cylinder(r=3.1, h=4.5, $fn=30); // Head cut

// Bottom right
translate([-15.5,15.5,4]) cylinder(r=1.65, h=50, $fn=30); // Screw hole
translate([-15.5,15.5,-1]) cylinder(r=3.1, h=4.5, $fn=30); // Head cut

// Top left
translate([15.5,-15.5,4]) cylinder(r=1.65, h=50, $fn=30); // Screw hole
translate([15.5,-15.5,-1]) cylinder(r=3.1, h=4.5, $fn=30); // Head cut

// Bottom left
translate([15.5,15.5,4]) cylinder(r=1.65, h=50, $fn=30); // Screw hole
translate([15.5,15.5,-1]) cylinder(r=3.1, h=4.5, $fn=30); // Head cut

}


}



module extruder_nozzle_cut(){

//Nozzle cutout
// Top
translate([35/2,-0.001,15]) rotate([-90,0,0]) cylinder(r=8.13, h=3.7+0.5, $fn=120);
// Groove
translate([35/2,0,15]) rotate([-90,0,0]) cylinder(r=6.13, h=20, $fn=120);
// Bottom
translate([35/2,9.8,15]) rotate([-90,0,0]) cylinder(r=8.13, h=3.7, $fn=120);
// Main body
translate([35/2,13,15]) rotate([-90,0,0]) cylinder(r=11.53, h=33.001, $fn=80);

}

module extruder_nozzle_cooling(){

// Nozzle cooling airway
translate([31.001,43-15,15])rotate([0,90,0])cylinder(r2=14, r1=11.5, h=4, $fn=100);
translate([-1,43-15-2.5,15])rotate([0,90,0])cylinder(r=11.5, h=40, $fn=80);
translate([-1,43-15,15])rotate([0,90,0])cylinder(r=11.5, h=40, $fn=80);
translate([-1,43-15+2.5,15])rotate([0,90,0])cylinder(r=11.5, h=40, $fn=80);

// Fan screws
translate([35.001,40,3])rotate([0,-90,0])cylinder(r=1.5, h=8, $fn=20);
translate([35.001,40-24,3])rotate([0,-90,0])cylinder(r=1.35, h=8, $fn=20);
translate([35.001,40,30-3])rotate([0,-90,0])cylinder(r=1.5, h=8, $fn=20);
translate([35.001,40-24,30-3])rotate([0,-90,0])cylinder(r=1.35, h=8, $fn=20);

}

//extruder_body();
//extruder_mount_holes();




21 changes: 0 additions & 21 deletions Printed-Parts/scad/extruder-motor-side.scad

This file was deleted.

Loading

0 comments on commit 84256dc

Please sign in to comment.