Compare commits

...

13 Commits

Author SHA1 Message Date
akukan 8d80d83ee1
PTFE trap for new version of spoolholder 2017-11-21 14:47:27 +01:00
akukan f9838b821c
Single screw holder for mounting P.I.N.D.A. probe 2017-10-31 11:50:54 +01:00
akukan 1c6cd122a7
Single screw holder for mounting P.I.N.D.A. probe 2017-10-31 11:50:14 +01:00
akukan bae3db610e
Superswitch case - new design for smaller board 2017-10-31 09:22:29 +01:00
akukan bb9e635972
Superswitch case - new design for smaller board 2017-10-31 09:21:44 +01:00
akukan b8c75a6b76 Multi-material spool holder 2017-09-13 09:51:52 +02:00
akukan 5e84850910 Delete y-splitter.scad
scad file removed
2017-05-31 13:26:44 +02:00
akukan fc5f3e9dbe stl corrected 2017-05-31 13:25:08 +02:00
akukan 75d411800b y-splitter added 2017-05-29 09:24:59 +02:00
akukan d467164ed1 Update README.md 2017-05-24 15:28:20 +02:00
akukan c390ed260d Multi Material upgrade parts added 2017-05-24 15:27:26 +02:00
akukan 143b303d68 Multi Material upgrade parts added 2017-05-24 15:26:15 +02:00
akukan 2408cbe5b3 Update README.md 2017-03-16 10:19:49 +01:00
26 changed files with 303095 additions and 2 deletions

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,62 @@
// PRUSA MM upgrade
// e-motor-holder
// GNU GPL v3
// Josef Průša <iam@josefprusa.cz> and contributors
// http://www.reprap.org/wiki/Prusa_Mendel
// http://prusamendel.org
module selinfill()
{
translate( [ 15, 0, 29.8] ) rotate([0,29,0]) cube( [ 14, 2, 0.5] );
translate( [ 21, 0, 39] ) rotate([0,29,0]) cube( [ 14, 2, 0.5] );
translate( [ 33, 0, 24.65] ) cube( [ 0.5, 2, 8] );
translate( [ 28.2, 0, 16.15] ) rotate([0,29,0]) cube( [ 0.5, 2, 10] );
translate( [ 25.2, 0, 20] ) rotate([0,29,0]) cube( [ 0.5, 2, 15] );
}
module holder()
{
difference()
{
union()
{
translate( [ 16.8, -22, 35] ) rotate([0,70,0]) cube( [ 30, 18, 14] );
translate( [ 24, -22, 5] ) cube( [ 17, 18, 35] );
translate( [ 12, -22, 26] ) cube( [ 30, 18, 24] );
}
translate( [ -22, -26, 52] ) rotate([0,29,0]) cube( [ 55, 55, 7] );
translate( [ 24, -28, 0] ) rotate([0,27,0]) cube( [ 15, 55, 40] );
translate( [ 12, -28, 48] ) rotate([0,27,0]) cube( [ 40, 55, 20] );
translate( [ 11, -28, 42] ) cube( [ 40, 55, 20] );
translate( [ 37, -28, 22] ) cube( [ 20, 55, 20] );
translate([8,-9,12]) rotate([0,90,0]) cylinder( h=25, r=1.5, $fn=50 );
translate([27,-9,12]) rotate([0,90,0]) cylinder( h=6, r=2.8, $fn=50 );
// ziptie
translate( [ 7, -22, 33.8] ) rotate([0,29,0]) cube( [ 24, 2, 2.5] );
translate( [ 28.5, -22, 23.8] ) rotate([0,29,0]) cube( [ 2, 2, 17] );
translate([28.6,-20,23.6]) rotate([90,90,0]) cylinder( h=2, r=1.5, $fn=50 );
translate( [ 33.0, -22, 33.0] ) rotate([0,29,0]) cube( [ 5, 3, 4] );
translate( [ 5, -22, 45] ) rotate([0,21,0]) cube( [ 50, 2, 1.5] );
translate( [ 33.0, -19, 33.0] ) rotate([45,29,0]) cube( [ 5, 6, 4] );
translate([0,-7,0]) selinfill();
translate([0,-11,0]) selinfill();
translate([0,-15,0]) selinfill();
translate([0,-19,0]) selinfill();
// edges
translate( [ 20,-2, -3] ) rotate([45,0,0]) cube( [ 20, 10, 10] );
translate( [ 10,-9, 20] ) rotate([0,0,45]) cube( [ 10, 10, 30] );
}
}
holder();
translate([0,-44,0]) mirror([0,1,0]) holder();

View File

@ -0,0 +1,239 @@
// PRUSA MM upgrade
// extruder-adaptor-MM
// GNU GPL v3
// Josef Průša <iam@josefprusa.cz> and contributors
// http://www.reprap.org/wiki/Prusa_Mendel
// http://prusamendel.org
use <extruder-main.scad>
module ext_body()
{
difference()
{
extruder_body();
extruder_mount_holes();
}
translate( [40 , -9.5 , 0] ) cube( [ 2 , 2 , 30 ] );
}
module m3nut()
{
difference()
{
cube([2,6,8]);
translate([-0.5,3,3]) rotate([0,90,0]) cylinder(r=1.25, h=3, $fn=20);
}
}
module ext_body_CP()
{
difference()
{
union(){
difference()
{
ext_body();
translate( [-5 , -49.5 , -26] ) cube( [ 50 , 40 , 80 ] );
translate([-20,26,-2]) cube([20,30,30]);
// screw end larger hole
translate([-20,40,12])rotate([0,90,0])cylinder(r=1.6, h=24, $fn=20);
translate([2,40,11.5])rotate([0,90,0])cylinder(r=1.6, h=3, $fn=20);
translate([2,40,12])rotate([0,90,0])cylinder(r=1.6, h=3, $fn=20);
translate([2,40,12.5])rotate([0,90,0])cylinder(r=1.6, h=3, $fn=20);
// M3 nuts
//translate([0,46,9]) m3nut();
translate([0,42,9]) m3nut();
translate([2,45,11.5])rotate([0,90,0])cylinder(r=1.6, h=3, $fn=20);
translate([2,45,12])rotate([0,90,0])cylinder(r=1.6, h=3, $fn=20);
translate([2,45,12.5])rotate([0,90,0])cylinder(r=1.6, h=3, $fn=20);
translate([-20,45,12])rotate([0,90,0])cylinder(r=1.7, h=24, $fn=20);
}
translate( [27 , -42 , 0] ) cube( [ 15, 33 , 8 ] );
translate( [0 , -42 , 0] ) cube( [ 30, 34 , 8 ] );
translate( [0 , -9.5 , 0] ) cube( [ 13, 9.5 , 22.5 ] );
translate( [29 , -9.5 , 0] ) cube( [ 13, 9.5 , 30 ] );
translate( [0 , -42 , 0] ) rotate([0,0,0]) cube( [ 6.3, 33 , 15 ] );
translate( [28.7 , -35 , 0] ) rotate([0,0,0]) cube( [ 6.3, 26 , 15 ] );
}
translate([36.5, -36.5, -1]) cylinder( h = 60, r = 1.6, $fn=30);
translate( [23 , -10 , 22.5] ) cube( [ 25, 11 , 30 ] );
translate( [35 , -20 , 22.5] ) rotate([0,45,0]) cube( [ 10, 30 , 10 ] );
translate( [-7 , -20 , 22.5] ) rotate([0,45,0]) cube( [ 10, 30 , 10 ] );
translate( [33.7 , -50.7 , 2.5] ) cube( [ 5.6, 17.5 , 2 ] );
translate( [-8 , -30 , 20] ) rotate([0,45,0]) cube( [ 10, 30 , 10 ] );
translate( [32.5 , -60 , 16] ) rotate([0,45,0]) cube( [ 20, 60 , 10 ] );
translate( [28 , -48.5 , 0] ) rotate([45,0,0]) cube( [ 20, 20 , 10 ] );
translate( [-5 , -10 , 15] ) rotate([0,0,0]) cube( [ 50, 15 , 20 ] );
translate([17.5, -0, 15]) rotate([90,0,0]) cylinder( h = 25, r = 6, $fn=30);
translate([17.5, -2, 15]) rotate([90,0,0]) cylinder( h = 10, r = 10, $fn=30);
translate( [6.3 , -50 , 3.8] ) rotate([0,0,0]) cube( [ 22.4, 30 , 30 ] );
translate( [-6 , -57.5 , -2] ) rotate([0,0,45]) cube( [ 20, 20 , 30 ] );
translate( [54 , -56.5 , -2] ) rotate([0,0,45]) cube( [ 20, 20 , 30 ] );
translate([-5,-24,9]) rotate([0,90,0]) cylinder( h=44, r=1.6, $fn=30 );
translate([25,-24,9]) rotate([0,90,0]) cylinder( h=5, r2=1.6, r1=3, $fn=30 );
translate([-3,-24,9]) rotate([0,90,0]) cylinder( h=6, r=3, $fn=30 );
translate( [-10 , -35 , 8] ) rotate([45,0,0]) cube( [ 60, 10 , 10 ] );
translate( [-10 , -42 , 1] ) rotate([45,0,0]) cube( [ 16.5, 20 , 10 ] );
translate( [42 , -16.8 , 8] ) rotate([0,0,45]) cube( [ 10, 10 , 10 ] );
translate( [31 , -27 , 4] ) rotate([0,0,0]) cube( [ 2, 6 , 12 ] );
}
}
ext_body_CP();
module Y_part_holes()
{
translate([17.5, -36.5, -1]) cylinder( h = 60, r = 1.6, $fn=30);
translate([11, -14, -1]) cylinder( h = 60, r = 1.6, $fn=30);
translate([24, -14, -1]) cylinder( h = 60, r = 1.6, $fn=30);
translate([11, -27, -1]) cylinder( h = 60, r = 1.6, $fn=30);
translate([24, -27, -1]) cylinder( h = 60, r = 1.6, $fn=30);
}
module Y_teflon_tubes()
{
translate([17.5, -7, 15]) rotate([90,0,0]) cylinder( h = 15, r = 2, $fn=30);
translate([17.5, -20, 15]) rotate([90,0,13]) cylinder( h = 40, r = 2, $fn=30);
translate([17.5, -20, 15]) rotate([90,0,-13]) cylinder( h = 40, r = 2, $fn=30);
}
module Y_part_back()
{
difference()
{
translate( [7 , -42 , 8] ) cube( [ 21, 32.5 , 7 ] );
Y_teflon_tubes();
Y_part_holes();
translate( [4 , -29.7 , 11] ) cube( [ 10, 5.6 , 2 ] );
translate( [21 , -29.7 , 11] ) cube( [ 10, 5.6 , 2 ] );
translate( [3 , -50 , 7] ) rotate([0,0,45]) cube([ 10, 10 , 20 ]);
translate( [32 , -50 , 7] ) rotate([0,0,45]) cube([ 10, 10 , 20 ]);
}
}
module Y_part_forward()
{
difference()
{
translate( [7 , -42 , 15] ) cube( [ 21, 32.5 , 7.5] );
Y_teflon_tubes();
Y_part_holes();
translate([17.5, -36.5, 19]) cylinder( h = 4, r = 2.8, $fn=30);
translate([11, -14, 19]) cylinder( h = 4, r = 2.8, $fn=30);
translate([24, -14, 19]) cylinder( h = 4, r = 2.8, $fn=30);
translate([11, -27, 19]) cylinder( h = 4, r = 2.8, $fn=30);
translate([24, -27, 19]) cylinder( h = 4, r = 2.8, $fn=30);
translate( [3 , -50 , 7] ) rotate([0,0,45]) cube([ 10, 10 , 20 ]);
translate( [32 , -50 , 7] ) rotate([0,0,45]) cube([ 10, 10 , 20 ]);
}
}
module ex_body()
{
difference()
{
union()
{
// body
// round body
translate([-5.5,36.5,6])rotate([-90,0,0])cylinder(r=8.5, h=19, $fn=20);
// body block
translate([-13,36.5,5]) cube([17,19,10]);
translate([-13,36.5,15]) cube([5,19,1]);
// extruder body joint
translate([-0,33.5,0]) cube([3,2,15]);
translate([0,34,0]) cube([4,3,15]);
translate([0,35.5,0]) rotate([0,0,45]) cube([2,2,15]);
}
// M3 screws
//translate([-20,49,12])rotate([0,90,0])cylinder(r=1.7, h=24, $fn=20);
translate([-20,45,12])rotate([0,90,0])cylinder(r=1.7, h=24, $fn=20);
//translate([-14,49,12])rotate([0,90,0])cylinder(r=3, h=5, $fn=20);
translate([-14,45,12])rotate([0,90,0])cylinder(r=3, h=5, $fn=20);
// lower M3 screw end opening
//translate([2,49,11.5])rotate([0,90,0])cylinder(r=1.6, h=3, $fn=20);
//translate([2,49,12])rotate([0,90,0])cylinder(r=1.6, h=3, $fn=20);
//translate([2,49,12.5])rotate([0,90,0])cylinder(r=1.6, h=3, $fn=20);
// upper M3 screw end opening
translate([2,45,11.5])rotate([0,90,0])cylinder(r=1.6, h=3, $fn=20);
translate([2,45,12])rotate([0,90,0])cylinder(r=1.6, h=3, $fn=20);
translate([2,45,12.5])rotate([0,90,0])cylinder(r=1.6, h=3, $fn=20);
// M3 nuts opening
translate([0,42,9]) m3nut();
//translate([0,37,9]) m3nut();
// flat bottom side
translate([-20,33,-10]) cube([30,35,10]);
// slot
translate([-6,33,8]) cube([1.5,25,10]);
// 45 / 30 deg edges
translate([-15,32,12]) rotate([45,0,0]) cube([15,10,10]);
translate([-20,55,13]) rotate([45,0,0]) cube([25,3,5]);
translate([-2,45,-1]) rotate([0,30,0]) cube([15,15,15]);
translate([7,46,-1]) rotate([0,0,30]) cube([15,11,25]);
//PINDA mounting hole
translate([-5.5,60,6])rotate([90,0,0])cylinder(r=4.1, h=30, $fn=50);
// bottom cut
translate([-15,54.5,-1]) cube([20 , 8,20]);
}
}
ex_body();

View File

@ -0,0 +1,237 @@
// PRUSA MM upgrade
// extruder-body-mm
// GNU GPL v3
// Josef Průša <iam@josefprusa.cz> and contributors
// http://www.reprap.org/wiki/Prusa_Mendel
// http://prusamendel.org
module extruder_body_base()
{
difference()
{
union()
{
translate( [ -21, -22, 22] ) rotate([0,0,0]) cube( [ 42, 43, 4] );
// filament tubes body
translate([3,4.25,7]) rotate([0,90,0]) cylinder( h=18, r=5, $fn=30 );
translate([-26,4.25,7]) rotate([0,90,0]) cylinder( h=23, r=5, $fn=30 );
// filament tube printing support
translate( [ -15, 2, 8] ) rotate([0,0,0]) cube( [ 9, 5, 18] );
translate( [ -10, 2, 8] ) rotate([0,-30,0]) cube( [ 8, 5, 8] );
translate( [ 7, 2, 8] ) rotate([0,0,0]) cube( [ 9, 5, 18] );
translate( [ 3, 2, 12] ) rotate([0,30,0]) cube( [ 8, 5, 8] );
// sprint tension nuts body
translate( [ -13, -12, -2] ) rotate([0,0,0]) cube( [ 10, 8, 28] );
// side walls
translate( [ -15, -14, -2] ) rotate([0,0,0]) cube( [ 4, 28, 28] );
translate( [ -19, -22, -2] ) rotate([0,0,0]) cube( [ 35, 3, 28] );
translate( [ 16, -22, -2] ) rotate([0,0,0]) cube( [ 8, 35, 28] );
translate( [ -17, -22, -2] ) rotate([0,0,0]) cube( [ 30, 7, 28] );
translate( [ -6, 2, 11] ) rotate([0,-18,0]) cube( [ 3, 5, 13] );
translate([-15.5,15.5,-2]) cylinder( h=28, r=5.5, $fn=6 );
translate([-15.5,-15.5,-2]) cylinder( h=28, r=5.5, $fn=6 );
translate([15.5,-15.5,-2]) cylinder( h=28, r=5.5, $fn=6 );
// input PTFE tube support
translate( [ -21, 2, 10] ) rotate([0,0,0]) cube( [ 8, 4, 13] );
translate( [ -26, 2, 11] ) rotate([0,25,0]) cube( [ 8, 4, 13] );
translate( [ 16, 2, 10] ) rotate([0,0,0]) cube( [ 5, 4, 13] );
}
// shared side wall cut
translate( [ -11, -20, -4] ) rotate([0,0,0]) cube( [ 22, 7, 29] );
// filament
translate([-50,4.25,7]) rotate([0,90,0]) cylinder( h=100, r=1, $fn=30 );
// filament entry
translate([-15,4.25,7]) rotate([0,90,0]) cylinder( h=10, r1=2, r2=1, $fn=30 );
// filament PTFE tubes
translate([6,4.25,7]) rotate([0,90,0]) cylinder( h=30, r=2.2, $fn=30 );
translate([-44,4.25,7]) rotate([0,90,0]) cylinder( h=30, r=2, $fn=30 );
translate([-51,4.25,7]) rotate([0,90,0]) cylinder( h=30, r=3, r2=2, $fn=30 );
// pulley distances
translate([0,0,1]) cylinder( h=18, r=5, $fn=30 );
translate([0,8.5,1]) cylinder( h=18, r=5, $fn=30 );
translate([1,0,12.5]) cylinder( h=6, r=5.5, $fn=30 );
translate([1,8.5,12.5]) cylinder( h=6, r=5.5, $fn=30 );
translate([0,0,12.5]) cylinder( h=6, r=5.5, $fn=30 );
translate([0,8.5,12.5]) cylinder( h=6, r=5.5, $fn=30 );
translate( [-7.3, -1, 3] ) rotate([0,-5,-45]) cube( [ 5, 6, 19] );
translate( [-2.8, 1, 3] ) rotate([0,-5,0]) cube( [ 5, 6, 19] );
translate( [-3.3, 6, 3] ) rotate([0,-5,45]) cube( [ 5, 6, 19] );
translate( [4, 6.5, 3] ) rotate([0,0,45]) cube( [ 4, 4, 19] );
translate( [4, -3.5, 3] ) rotate([0,0,45]) cube( [ 4, 4, 19] );
// idler spacing
translate( [ -10, -1, -11] ) rotate([0,0,0]) cube( [ 16, 12, 15] );
translate([-8,10,16.5]) rotate([0,90,90]) cylinder( h=13, r1=5, r2=6, $fn=30 );
translate([-8,10,4]) rotate([0,90,90]) cylinder( h=13, r1=5, r2=6, $fn=30 );
// spring tension screws
translate([-8,-23,16.5]) rotate([0,90,90]) cylinder( h=52, r=1.7, $fn=30 );
translate([-8,-23,4]) rotate([0,90,90]) cylinder( h=52, r=1.7, $fn=30 );
translate([-8,-15,16.5]) rotate([0,90,90]) cylinder( h=18, r=1.7, $fn=30 );
translate([-8,-15,4]) rotate([0,90,90]) cylinder( h=18, r=1.7, $fn=30 );
// spring tension nuts
translate( [ -25, -9, 1] ) rotate([0,0,0]) cube( [ 20, 2.2, 6] );
translate( [ -25, -9, 13.5] ) rotate([0,0,0]) cube( [ 20, 2.2, 6] );
// motor mounting screws
translate([-15.5,15.5,-3]) cylinder( h=30, r=1.6, $fn=30 );
translate([15.5,15.5,-3]) cylinder( h=30, r=1.6, $fn=30 );
translate([-15.5,-15.5,-3]) cylinder( h=30, r=1.6, $fn=30 );
translate([15.5,-15.5,-3]) cylinder( h=30, r=1.6, $fn=30 );
// idler washer opening
translate([15.5,15.5,21.2]) cylinder( h=1, r=3.6, $fn=30 );
// motor mounting screw heads
translate([-15.5,15.5,24]) cylinder( h=4, r=3.2, $fn=30 );
translate([15.5,15.5,24]) cylinder( h=4, r=3.2, $fn=30 );
translate([-15.5,-15.5,24]) cylinder( h=4, r=3.2, $fn=30 );
translate([15.5,-15.5,24]) cylinder( h=4, r=3.2, $fn=30 );
translate([-15.5,15.5,25.5]) cylinder( h=1, r=3.2, r2=3.8, $fn=30 );
translate([15.5,-15.5,25.5]) cylinder( h=1, r=3.2, r2=3.8, $fn=30 );
translate([-15.5,-15.5,25.5]) cylinder( h=1, r=3.2, r2=3.8, $fn=30 );
translate([15.5,15.5,25.5]) cylinder( h=1, r=3.2, r2=3.8, $fn=30 );
// motor face
translate([0,0,-2]) cylinder( h=2, r=11.5, $fn=30 );
// top hole
//#translate([0,0,21]) rotate([0,0,0]) cylinder( h=6, r=9, $fn=6 );
translate([-3,-6,-3]) rotate([0,0,45]) cube([5,5,50]);
// front wall idler round cutoff
translate([15.5,15.5,-3]) cylinder( h=25, r=6.5, $fn=30 );
// top / bottom opening hole
translate([-7,-4,21.9]) rotate([0,0,0]) cube([14,19,10]);
translate([-3,-11,21]) rotate([0,0,0]) cube([18,13,10]);
translate([-9,-4,27]) rotate([0,45,0]) cube([5,19,5]);
translate([2,-4,27]) rotate([0,45,0]) cube([5,19,5]);
translate([-8,15,25]) rotate([45,0,0]) cube([16,5,5]);
translate([-8,-4,25]) rotate([45,0,0]) cube([16,5,5]);
translate([-3,-11,25.5]) rotate([45,0,0]) cube([18,5,5]);
translate([-3,2,25]) rotate([45,0,0]) cube([18,5,5]);
translate([-6.5,-11.5,29]) rotate([0,45,0]) cube([5,10,5]);
translate([11.5,-11.5,29]) rotate([0,45,0]) cube([5,14.5,5]);
// 45 EDGES
translate([21,18,21]) rotate([0,0,45]) cube([10,10,10]);
translate([-21,18,21]) rotate([0,0,45]) cube([10,10,10]);
// shared wall opening
translate([3,-18,12]) rotate([90,90,0]) cylinder( h=25, r=9, $fn=6 );
// festo mounting reinforcement
translate([20,4.25,7]) rotate([0,90,0]) cylinder( h=3.5, r=3.9, $fn=30 );
translate([23,4.25,7]) rotate([0,90,0]) cylinder( h=1.5, r=5.2, $fn=30 );
translate([22,4.25,7]) rotate([0,90,0]) cylinder( h=2, r1=3.9, r2=4.55, $fn=30 );
// screw heads upside down print support
translate( [ -15.5 , 15.5 ,27] ) rotate([0,180,0])
{
intersection(){cylinder(r=3.2, h=10, $fn=30);
translate( [ 0 , 0 , 2.5 ] ) cube([3.8,8,2], center=true);}
translate( [ 0 , 0 , 3 ] ) cube([3.8,3.8,2], center=true);
}
translate( [ -15.5 , -15.5 ,27] ) rotate([0,180,0])
{
intersection(){cylinder(r=3.2, h=10, $fn=30);
translate( [ 0 , 0 , 2.5 ] ) cube([3.8,8,2], center=true);}
translate( [ 0 , 0 , 3 ] ) cube([3.8,3.8,2], center=true);
}
translate( [ 15.5 , -15.5 ,27] ) rotate([0,180,0])
{
intersection(){cylinder(r=3.2, h=10, $fn=30);
translate( [ 0 , 0 , 2.5 ] ) cube([3.8,8,2], center=true);}
translate( [ 0 , 0 , 3 ] ) cube([3.8,3.8,2], center=true);
}
translate( [ 15.5 , 15.5 ,27] ) rotate([0,180,0])
{
intersection(){cylinder(r=3.2, h=10, $fn=30);
translate( [ 0 , 0 , 2.5 ] ) cube([3.8,8,2], center=true);}
translate( [ 0 , 0 , 3 ] ) cube([3.8,3.8,2], center=true);
}
}
translate( [ -10.1, 2, 23] ) rotate([0,60,0]) cube( [ 3, 5, 3] );
}
module extruder_body()
{
difference()
{
extruder_body_base();
translate( [ -21, -25, 47] ) rotate([0,27,0]) cube( [ 55, 50, 5] );
translate( [ 19, -30, 29] ) rotate([0,70,0]) cube( [ 30, 50, 8] );
translate([8,-9,12]) rotate([0,90,0]) cylinder( h=25, r=1.5, $fn=50 );
translate( [ 15.5, -12, 9] ) cube( [ 4, 6, 6] );
}
}
difference()
{
union()
{
extruder_body();
translate([0,-44,0]) mirror([0,1,0]) extruder_body();
}
translate([22,9,20]) rotate([0,65,0]) cylinder( h=1, r=2, $fn=30 );
translate([22,4,20]) rotate([0,65,0]) cylinder( h=1, r=2, $fn=30 );
translate([22,-53,20]) rotate([0,65,0]) cylinder( h=1, r=2, $fn=30 );
}

View File

@ -0,0 +1,116 @@
// PRUSA MM upgrade
// extruder-idlers-mm
// GNU GPL v3
// Josef Průša <iam@josefprusa.cz> and contributors
// http://www.reprap.org/wiki/Prusa_Mendel
// http://prusamendel.org
module idler()
{
difference()
{
union()
{
difference()
{
translate( [ -9, 15, -1.5] ) cube( [ 30, 8, 23] );
translate( [ -10, 14, 20] ) rotate([0,-20,0]) cube( [ 10, 10, 5] );
translate( [ -12, 14, -4] ) rotate([0,20,0]) cube( [ 10, 10, 5] );
}
translate([15.5,15.5,-1.5]) cylinder( h=23, r=5.5, $fn=30 );
//bottom axis holder
translate([0,8.5,0.5]) cylinder( h=3.25, r=5, $fn=30 );
translate( [ -5, 8.5, 0.5] ) cube( [ 10, 7, 3.25] );
//upper axis holder
translate([0,8.5,18.25]) cylinder( h=3.5, r=5, $fn=30 );
translate( [ -5, 8.5, 18.25] ) cube( [ 10, 8, 3.5] );
//springs
translate([-8,12,16.5]) rotate([0,90,90]) cylinder( h=11, r1=4, r2=5.3, $fn=30 );
translate([-8,12,4]) rotate([0,90,90]) cylinder( h=11, r1=4, r2=5.3, $fn=30 );
}
// drive gear cutout
translate([0,8.5,4]) cylinder( h=10.5, r=5.2, $fn=30 );
translate([0,8.5,14]) cylinder( h=4.25, r=5.2, $fn=30 );
// drive gear axis
translate([0,8.5,1.15]) cylinder( h=23, r=1.5, $fn=30 );
translate([0,8.5,-1]) cylinder( h=26, r=0.8, $fn=30 );
// M3 screw
translate([15.5,15.5,-3]) cylinder( h=30, r=1.6, $fn=30 );
// cutout hole
translate([2,30,11]) rotate([90,0,0]) cylinder( h=20, r=7, $fn=6 );
// washers
translate([15.5,15.5,-2.25]) cylinder( h=1, r=4, $fn=30 );
translate([15.5,15.5,21.25]) cylinder( h=1, r=4, $fn=30 );
// edge
translate( [ 22.5, 15, -4] ) rotate([0,0,30]) cube( [ 15, 15, 30] );
//spring
translate([-8,14,16.5]) rotate([0,90,90]) cylinder( h=15, r1=2.9,r2=3.5, $fn=30 );
translate([-8,14,4]) rotate([0,90,90]) cylinder( h=15, r1=2.9,r2=3.5, $fn=30 );
// screws
translate([-8,-15,16.5]) rotate([0,90,90]) cylinder( h=40, r=1.9, $fn=30 );
translate([-8,-15,4]) rotate([0,90,90]) cylinder( h=40, r=1.9, $fn=30 );
translate( [ -20, 25, -13] ) rotate([45,0,0]) cube( [ 50, 10, 10] );
translate( [ -20, 25, 19] ) rotate([45,0,0]) cube( [ 50, 10, 10] );
// selective infill
difference()
{
translate([0,8.5,19.25]) cylinder( h=1.5, r=4.1, $fn=30 );
translate([0,8.5,18.00]) cylinder( h=5, r=4, $fn=30 );
}
difference()
{
translate([0,8.5,1.4]) cylinder( h=1.5, r=4.1, $fn=30 );
translate([0,8.5,0.00]) cylinder( h=5, r=4, $fn=30 );
}
#translate( [ -0, 11, 18.9] ) cube( [ 0.2, 10, 1.8] );
#translate( [ 3, 11, 18.9] ) cube( [ 0.2, 10, 1.8] );
#translate( [ -3, 11, 18.9] ) cube( [ 0.2, 10, 1.8] );
translate( [ -0, 11, 1.4] ) cube( [ 0.2, 10, 1.5] );
translate( [ 3, 11, 1.4] ) cube( [ 0.2, 10, 1.5] );
translate( [ -3, 11, 1.4] ) cube( [ 0.2, 10, 1.5] );
}
}
translate([0,2.5,23]) rotate([-90,0,0])
difference()
{
union()
{
idler();
translate([0,0,-5]) rotate([0,180,180]) mirror([0,1,0]) idler();
}
translate([12,24,5]) rotate([90,0,0]) cylinder( h=2, r=2, $fn=30 );
translate([12,24,15]) rotate([90,0,0]) cylinder( h=2, r=2, $fn=30 );
translate([12,24,-10]) rotate([90,0,0]) cylinder( h=2, r=2, $fn=30 );
}

View File

@ -0,0 +1,106 @@
// PRUSA MM upgrade
// SuperSwitch-case-v2
// GNU GPL v3
// Josef Průša <iam@josefprusa.cz> and contributors
// http://www.reprap.org/wiki/Prusa_Mendel
// http://prusamendel.org
$fn=50;
heightY=94;
widthX=51;
wall=1.5;
txt="Y";
pcb = 14; // pcb height over bottom
s=0;
cambox();
module cambox(){
difference() {
translate([0,-heightY/2,0]) box(widthX,heightY,30,3,1.5);
// M3
translate([4,0,-1]) cylinder(h=5, r=1.75, center=false);
translate([47,0,-1]) cylinder(h=5, r=1.75, center=false);
// wire
hull(){
translate([15.5,heightY/2-5,30]) rotate([-90,0,0]) cylinder(h=10, r=3.5, center=false);;
translate([15.5,heightY/2-5,23]) rotate([-90,0,0]) cylinder(h=10, r=3.5, center=false);;
}
hull(){
translate([25.5,-heightY/2-5,30]) rotate([-90,0,0]) cylinder(h=10, r=1.75, center=false);;
translate([25.5,-heightY/2-5,25]) rotate([-90,0,0]) cylinder(h=10, r=1.75, center=false);;
}
translate([widthX/2-5,0,-2]) rotate([0,0,0]) cylinder(20,20,20,$fn=3);
translate([widthX/2+5,25,-2]) rotate([0,0,180]) cylinder(20,20,20,$fn=3);
translate([widthX/2+5,-25,-2]) rotate([0,0,180]) cylinder(20,20,20,$fn=3);
translate([widthX/2-13,heightY/2-14,0.5]) {rotate([0,0,0]){
linear_extrude(height = wall+2, center = false, convexity = 5, twist = 0, slices = 20, scale = 1.0) {
text(text = "UP", font = "Marsh:style=Stencil", halign="center", size=7);
}}}
translate([widthX/2-12,-heightY/2+10,-2]) rotate([0,0,0]) cylinder(8,8,8,$fn=3);
}
translate([4,0,1.5]) rotate([0,0,180])support(3.5,3,1);
translate([47,0,1.5]) rotate([0,0,0])support(3.5,3,1);
difference() {
union() {
translate([4,0.9,20]) rotate([0,0,180]) triangle(0,4,1);
translate([4,-heightY/2+14.9,20]) rotate([0,0,180]) triangle(0,4,1);
translate([widthX,0.9,20]) rotate([0,0,180]) triangle(0,4,1);
translate([widthX,-heightY/2+14.9,20]) rotate([0,0,180]) triangle(0,4,1);
}
translate([4.3,0,20]) rotate([0,45,0])cube([6,heightY-6,6], center=true);
translate([widthX-4.3,0,20]) rotate([0,45,0])cube([6,heightY-6,6], center=true);
}
difference() {
translate([widthX/2,heightY/2-5,12]) rotate([0,0,90])support(2.8,15,2);
translate([widthX/2,heightY/2-8,13]) rotate([0,45,90]) cube([15,10,10], center=true);
}
}
module triangle(long, width, ukos){
translate([0,8,-0.5]) cube([width,long,8+0.5], center=false);
difference() {
cube([width,8,8], center=false);
translate([-1,3,-5]) rotate([30,0,0])cube([6,6,13], center=false);
if (ukos==1) {
}
}
}
module support(mx,v,d){ // M3 height
difference() {
hull() {
cylinder(h=v, r=mx, center=false);
translate([mx+d,-mx,s]) cube([1,mx*2,v], center=false);
}
translate([0,0,-0.1]) cylinder(h=v+0.2, r=mx/2, center=false);
}
}
module box(x,y,z,zz,s){ // x y z - round edges
difference() {
union() {
hull() {
translate([zz,zz,0]) cylinder(h=z, r=zz+s, center=false, $fn=4);
translate([x-zz,zz,0]) cylinder(h=z, r=zz+s, center=false, $fn=4);
translate([zz,y-zz,0]) cylinder(h=z, r=zz+s, center=false, $fn=4);
translate([x-zz,y-zz,0]) cylinder(h=z, r=zz+s, center=false, $fn=4);
}
}
hull() {
translate([zz,zz,s]) cylinder(h=z, r=zz, center=false, $fn=4);
translate([x-zz,zz,s]) cylinder(h=z, r=zz, center=false, $fn=4);
translate([zz,y-zz,s]) cylinder(h=z, r=zz, center=false, $fn=4);
translate([x-zz,y-zz,s]) cylinder(h=z, r=zz, center=false, $fn=4);
}
}
}

View File

@ -0,0 +1,193 @@
// PRUSA MM upgrade
// SuperSwitch-case
// GNU GPL v3
// Josef Průša <iam@josefprusa.cz> and contributors
// http://www.reprap.org/wiki/Prusa_Mendel
// http://prusamendel.org
module holder_box()
{
difference()
{
translate([0,-20,18]) rotate([0,0,0]) cube([10,3,7]);
translate([6,-20,14]) rotate([0,-45,0]) cube([15,5,5]);
translate([-1,-17,14]) rotate([45,0,0]) cube([15,6,5]);
}
}
module box()
{
difference()
{
union()
{
//back plate
translate([-65,-25,0]) rotate([0,0,0]) cube([130,53,2]);
difference()
{
translate([-65,-25,0]) rotate([0,0,0]) cube([130,53,30]);
translate([-63,-23,0]) rotate([0,0,0]) cube([126,49,32]);
}
translate([-50,-13.5,0]) cube([100,2,5]);
translate([-50,13.5,0]) cube([100,2,5]);
translate([-46,-12.5,0]) cylinder( h=6, r=5, $fn=60 );
translate([-46,14.5,0]) cylinder( h=6, r=5, $fn=60 );
translate([46,-12.5,0]) cylinder( h=6, r=5, $fn=60 );
translate([46,14.5,0]) cylinder( h=6, r=5, $fn=60 );
translate([-12,-21,0]) cylinder( h=4, r=3, $fn=60 );
translate([-12,22,0]) cylinder( h=4, r=3, $fn=60 );
//corners
translate([-65,14,0]) rotate([0,0,45]) cube([20,20,30]);
translate([-65,-39,0]) rotate([0,0,45]) cube([20,20,30]);
translate([65,14,0]) rotate([0,0,45]) cube([20,20,30]);
translate([65,-39,0]) rotate([0,0,45]) cube([20,20,30]);
}
//corners cut
translate([-67,16,-1]) rotate([0,0,45]) cube([20,20,33]);
translate([-67,-41,-1]) rotate([0,0,45]) cube([20,20,33]);
translate([67,16,-1]) rotate([0,0,45]) cube([20,20,33]);
translate([67,-41,-1]) rotate([0,0,45]) cube([20,20,33]);
translate([65,-41,-1]) rotate([0,0,0]) cube([20,90,35]);
translate([-85,-41,-1]) rotate([0,0,0]) cube([20,90,35]);
translate([-80,-45,-1]) rotate([0,0,0]) cube([150,20,35]);
translate([-80,28,-1]) rotate([0,0,0]) cube([150,20,35]);
translate([-46,-12.5,-1]) cylinder( h=10, r=1.5, $fn=60 );
translate([-46,14.5,-1]) cylinder( h=10, r=1.5, $fn=60 );
translate([46,-12.5,-1]) cylinder( h=10, r=1.5, $fn=60 );
translate([46,14.5,-1]) cylinder( h=10, r=1.5, $fn=60 );
translate([-46,-12.5,-1]) cylinder( h=5, r=3.2, $fn=60 );
translate([-46,14.5,-1]) cylinder( h=5, r=3.2, $fn=60 );
translate([46,-12.5,-1]) cylinder( h=5, r=3.2, $fn=60 );
translate([46,14.5,-1]) cylinder( h=5, r=3.2, $fn=60 );
translate([-46,-12.5,-1]) cylinder( h=2, r1=4, r2=3, $fn=60 );
translate([-46,14.5,-1]) cylinder( h=2, r1=4, r2=3, $fn=60 );
translate([46,-12.5,-1]) cylinder( h=2, r1=4, r2=3, $fn=60 );
translate([46,14.5,-1]) cylinder( h=2, r1=4, r2=3, $fn=60 );
// frame mounting holes
translate([-12,-21,-1]) cylinder( h=15, r=1.7, $fn=60 );
translate([-12,22,-1]) cylinder( h=15, r=1.7, $fn=60 );
translate([-12,-21,4]) cylinder( h=8, r=3, $fn=60 );
translate([-12,22,4]) cylinder( h=4, r=3, $fn=60 );
translate([-12,-21,-4]) cylinder( h=5, r1=4, r2=1.7,$fn=60 );
translate([-12,22,-4]) cylinder( h=5, r1=4, r2=1.7,$fn=60 );
// cut off
translate([-25,0,-1]) cylinder( h=15, r=11, $fn=6 );
translate([-15,0,-1]) cylinder( h=15, r=11, $fn=6 );
translate([30,0,-1]) cylinder( h=15, r=11, $fn=6 );
translate([15,0,-1]) cylinder( h=15, r=11, $fn=6 );
translate([20,0,-1]) cylinder( h=15, r=11, $fn=6 );
translate([54,0,-1]) cylinder( h=15, r=8, $fn=6 );
translate([-53,0,-1]) cylinder( h=15, r=8, $fn=6 );
// M3 nut
translate([71,2,21]) rotate([0,0,90]) cube([6,15,2.5]);
// wires to rambo hole
difference()
{
translate([-74,2,8]) rotate([0,90,0]) cylinder( h=15, r=8, $fn=6 );
translate([-80,-10,6]) rotate([0,90,0]) cube([20,30,30]);
}
// wires to motor hole
translate([60,-7,18]) rotate([0,90,0]) cylinder( h=15, r=7, $fn=6 );
translate( [ -46 , -12.5 ,1] )
{
intersection(){cylinder(r=3.2, h=10, $fn=30);
translate( [ 0 , 0 , 2.5 ] ) cube([3.8,8,2], center=true);}
translate( [ 0 , 0 , 3 ] ) cube([3.8,3.8,2], center=true);
}
translate( [ -46 , 14.5 ,1] )
{
intersection(){cylinder(r=3.2, h=10, $fn=30);
translate( [ 0 , 0 , 2.5 ] ) cube([3.8,8,2], center=true);}
translate( [ 0 , 0 , 3 ] ) cube([3.8,3.8,2], center=true);
}
translate( [ 46 , -12.5 ,1] )
{
intersection(){cylinder(r=3.2, h=10, $fn=30);
translate( [ 0 , 0 , 2.5 ] ) cube([3.8,8,2], center=true);}
translate( [ 0 , 0 , 3 ] ) cube([3.8,3.8,2], center=true);
}
translate( [ 46 , 14.5 ,1] )
{
intersection(){cylinder(r=3.2, h=10, $fn=30);
translate( [ 0 , 0 , 2.5 ] ) cube([3.8,8,2], center=true);}
translate( [ 0 , 0 , 3 ] ) cube([3.8,3.8,2], center=true);
}
translate([53.7,5,27]) cylinder( h=5, r=10, $fn=60 );
}
// wires to rambo hole shield
difference()
{
translate([-74,2,8]) rotate([0,90,0]) cylinder( h=11, r=10, $fn=6 );
translate([-80,2,8]) rotate([0,90,0]) cylinder( h=25, r=8, $fn=6 );
translate([-80,-10,6]) rotate([0,90,0]) cube([20,30,30]);
translate([-80,-10,17]) rotate([0,70,0]) cube([20,30,10]);
}
// door mounts
translate([0,-3,5]) holder_box();
translate([-56,-3,5]) holder_box();
translate([-56,6,5]) mirror([0,1,0]) holder_box();
translate([0,6,5]) mirror([0,1,0]) holder_box();
// M3 screw for doors
difference()
{
union()
{
translate([59,5,2]) rotate([0,0,90]) cylinder( h=25, r=5, $fn=6 );
translate([63,0,2]) rotate([0,0,90]) cube([10,4,25]);
}
translate([59,5,17]) cylinder( h=25, r=1.6, $fn=60 );
translate([59,5,29]) cylinder( h=5, r1=1.6, r2=3, $fn=60 );
translate([58,-5,-5]) rotate([0,-30,0]) cube([10,20,25]);
translate([71,2,21]) rotate([0,0,90]) cube([6,15,2.5]);
}
}
box();

View File

@ -0,0 +1,78 @@
// PRUSA MM upgrade
// SuperSwitch-cover-v2
// GNU GPL v3
// Josef Průša <iam@josefprusa.cz> and contributors
// http://www.reprap.org/wiki/Prusa_Mendel
// http://prusamendel.org
$fn=50;
heightY=94;
widthX=51;
wall=1.5;
txt="Y";
pcb = 14; // pcb height over bottom
boxtop(51,heightY,2,3,1.5);
module triangle(long, width, ukos){
translate([0,8,-0.5]) cube([width,long,8+0.5], center=false);
difference() {
cube([width,8,8], center=false);
translate([-1,3,-5]) rotate([30,0,0])cube([6,6,13], center=false);
if (ukos==1) {
}
}
}
module boxtop(x,y,z,zz,s){
difference() {
union() {
box(x,y,s,zz,s);
translate([1.1*s,1.1*s,0]) box(x-2.5*s,y-2.5*s,2*s,zz,s);
translate([widthX/2,heightY-5,0]) rotate([0,0,180]) cylinder(h=s+3, r=4, center=false);
}
translate([widthX/2,heightY-5,-2]) rotate([0,0,180]) cylinder(h=10, r=1.6, center=false);
translate([widthX/2,heightY-5,-1]) rotate([0,0,180]) cylinder(h=4, r=3, center=false);
translate([widthX/2,heightY-5,1]) rotate([0,0,180]) cube([5.2,3.2,5], center=true);
translate([widthX/2,92.2,8.6]) rotate([45,0,0])cube([widthX,8,12], center=true);
// TXT
translate([widthX/2,heightY/2-12,3]){rotate([0,180,0]){
linear_extrude(height = wall+2, center = false, convexity = 5, twist = 0, slices = 20, scale = 1.0) {
}}}
}
difference() {
union() {
translate([0.15,heightY/2-7,1]) rotate([0,0,0]) triangle(4,3,0);
translate([0.15,7,1]) rotate([0,0,0]) triangle(4,3,0);
translate([widthX-3.6,heightY/2-7,1]) rotate([0,0,0]) triangle(4,3,0);
translate([widthX-3.6,7,1]) rotate([0,0,0]) triangle(4,3,0);
}
translate([widthX/2,20,8]) rotate([45,0,0])cube([widthX,8,12], center=true);
translate([widthX/2,55,8]) rotate([45,0,0])cube([widthX,8,12], center=true);
translate([widthX/2,90,8]) rotate([45,0,0])cube([widthX,8,12], center=true);
}
}
module box(x,y,z,zz,s){ // x y z - round edges
difference() {
union() {
hull() {
translate([zz,zz,0]) cylinder(h=z, r=zz+s, center=false, $fn=4);
translate([x-zz,zz,0]) cylinder(h=z, r=zz+s, center=false, $fn=4);
translate([zz,y-zz,0]) cylinder(h=z, r=zz+s, center=false, $fn=4);
translate([x-zz,y-zz,0]) cylinder(h=z, r=zz+s, center=false, $fn=4);
}
}
hull() {
translate([zz,zz,s]) cylinder(h=z, r=zz, center=false, $fn=4);
translate([x-zz,zz,s]) cylinder(h=z, r=zz, center=false, $fn=4);
translate([zz,y-zz,s]) cylinder(h=z, r=zz, center=false, $fn=4);
translate([x-zz,y-zz,s]) cylinder(h=z, r=zz, center=false, $fn=4);
}
}
}

View File

@ -0,0 +1,69 @@
// PRUSA MM upgrade
// SuperSwitch-cover
// GNU GPL v3
// Josef Průša <iam@josefprusa.cz> and contributors
// http://www.reprap.org/wiki/Prusa_Mendel
// http://prusamendel.org
module holder_doors()
{
difference()
{
translate([10,-20,17]) rotate([0,0,0]) cube([10,3,7]);
translate([6,-20,14]) rotate([0,-45,0]) cube([15,5,5]);
}
}
module doors()
{
difference()
{
union()
{
translate([-65,-25,30]) rotate([0,0,0]) cube([130,53,2]);
translate([59,5,27]) cylinder( h=5, r=5, $fn=60 );
}
//corners
translate([-67,16,1]) rotate([0,0,45]) cube([20,20,33]);
translate([-67,-41,1]) rotate([0,0,45]) cube([20,20,33]);
translate([67,16,1]) rotate([0,0,45]) cube([20,20,33]);
translate([67,-41,1]) rotate([0,0,45]) cube([20,20,33]);
// M3 screw
translate([59,5,17]) cylinder( h=45, r=1.6, $fn=60 );
translate([59,5,29]) cylinder( h=3.5, r=3.2, $fn=60 );
translate([58.5,-0,21.3]) rotate([0,30,0]) cube([10,10,10]);
translate([62.8,-0,20]) cube([10,10,10]);
translate( [ 59 , 5 ,32] ) rotate([0,180,0])
{
intersection(){cylinder(r=3.2, h=10, $fn=30);
translate( [ 0 , 0 , 2.5 ] ) cube([3.8,8,2], center=true);}
translate( [ 0 , 0 , 3 ] ) cube([3.8,3.8,2], center=true);
}
}
translate([-55,-19.5,27]) cube([110,1,3]);
translate([-55,21.5,27]) cube([110,1,3]);
// holders
difference()
{
union()
{
translate([-4.8,-2.5,7]) holder_doors();
translate([-60.8,-2.5,7]) holder_doors();
translate([-4.8,42.5,7]) holder_doors();
translate([-60.8,42.5,7]) holder_doors();
}
translate([11,-40,23]) rotate([0,45,0]) cube([10,80,10]);
translate([-45,-40,23]) rotate([0,45,0]) cube([10,80,10]);
}
}
doors();

View File

@ -0,0 +1,85 @@
// PRUSA MM upgrade
// Y-Splitter
// GNU GPL v3
// Josef Průša <iam@josefprusa.cz> and contributors
// http://www.reprap.org/wiki/Prusa_Mendel
// http://prusamendel.org
module festo_cut()
{
translate([0,0,-37]) cylinder( h=72, r=1.0, $fn=30 );
translate([0,0,-23]) cylinder( h=25, r1=1.65, r2=2,$fn=30 );
translate([0,0,-25]) cylinder( h=2.2, r1=1, r2=1.4,$fn=30 );
translate([0,0,-3]) cylinder( h=3, r1=1.25, r2=1.5, $fn=30 );
translate([0,0,0]) cylinder( h=6, r=2.15, $fn=30 );
translate([0,0,5]) cylinder( h=1.5, r=5, $fn=30 );
translate([0,0,2]) cylinder( h=3.1, r=3.75, $fn=30 );
translate([0,0,4]) cylinder( h=3, r1=3.75, r2=4.25, $fn=30 );
translate([-10,-10,5]) cube([20,20,5]) ;
}
module festo_bottom_cut()
{
translate([0,0,-1]) cylinder( h=4.5, r=2.15, $fn=30 );
translate([0,0,3]) cylinder( h=0.8, r=2.15, r2=2.3,, $fn=30 );
translate([-15,-15,3.5]) cube([30,30,5]) ;
}
module final_part()
{
difference()
{
union()
{
translate([-11,-11,-18.2]) cube([22,22,30]);
translate([-11,0,-38]) cube([22,11,30]);
difference()
{
translate([-7,-4,-35]) cube([14,15,17]) ;
translate([-15,-20,-36]) rotate([0,0,45]) cube([20,20,20]) ;
translate([15,-20,-36]) rotate([0,0,45]) cube([20,20,20]) ;
translate([15,1,-36]) rotate([0,0,45]) cube([20,20,20]) ;
translate([-15,1,-36]) rotate([0,0,45]) cube([20,20,20]) ;
}
}
translate([-4.4,-4.4,5]) rotate([7,-7,0]) festo_cut();
translate([4.4,-4.4,5]) rotate([7,7,0]) festo_cut();
translate([-4.4,4.4,5]) rotate([-7,-7,0]) festo_cut();
translate([4.4,4.4,5]) rotate([-7,7,0]) festo_cut();
translate([0,0,-34]) cylinder( h=7, r=1.15, r2=1.3, $fn=30 );
translate([0,0,-41]) cylinder( h=10, r=2.15, $fn=30 );
translate([0,0,-38]) cylinder( h=5, r1=3, r2=2.15, $fn=30 );
translate([0,0,-39]) cylinder( h=4, r=7, $fn=30 );
translate([-14,-20,-30]) rotate([0,0,45]) cube([10,10,50]);
translate([-14,6,-40]) rotate([0,0,45]) cube([10,10,50]);
translate([14,-20,-30]) rotate([0,0,45]) cube([10,10,50]);
translate([14,6,-40]) rotate([0,0,45]) cube([10,10,50]);
translate([-3,0,0]) rotate([0,-5,0]) translate([-13,-1,-40]) rotate([0,0,60]) cube([20,10,60]);
translate([-4.5,18,0]) rotate([0,5,0]) translate([10,-1,-40]) rotate([0,0,-60]) cube([20,10,60]);
translate([-25,-6,-14]) rotate([0,90,0]) cylinder( h=50, r=1.5, $fn=30 );
translate([10.5,5,5]) rotate([0,90,0]) cylinder( h=2, r=1.5, $fn=30 );
translate([10.5,1,5]) rotate([0,90,0]) cylinder( h=2, r=1.5, $fn=30 );
translate([-12.5,5,5]) rotate([0,90,0]) cylinder( h=2, r=1.5, $fn=30 );
translate([-12.5,1,5]) rotate([0,90,0]) cylinder( h=2, r=1.5, $fn=30 );
}
}
final_part();

Binary file not shown.

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -1,4 +1,4 @@
# Original Prusa i3 MK2
# Original Prusa i3 MK2 + Multi Material upgrade
Original Prusa i3 MK2 is a 3D printer project maintained by PRUSA RESEARCH.
@ -10,5 +10,5 @@ This repository contains SCAD files and STLs of the printed parts.
* Prusa Research website : http://prusa3d.com
* Product page : http://shop.prusa3d.com/en/3d-printers/59-original-prusa-i3-mk2-kit.html
* Build manual : http://manual.prusa3d.com/c/English_manuals
* Build manual : http://manual.prusa3d.com/c/Original_Prusa_i3_MK2_kit_assembly
* Firmware : https://github.com/prusa3d/Prusa-Firmware