Revert "reduced size to make holes line up with the single plate y-axis"
[clinton/prusa3.git] / old_single_plate / src / z-axis-bottom.scad
1 // PRUSA iteration3
2 // Z axis bottom holder
3 // GNU GPL v3
4 // Josef Průša <iam@josefprusa.cz> and contributors
5 // http://www.reprap.org/wiki/Prusa_Mendel
6 // http://prusamendel.org
7
8 module z_bottom_base(){
9 translate([0,0,0]) cube([8,40,16+25]); // plate touching the base
10 translate([0,-5,0]) cube([30,5.01,22]); // plate touching the base
11 translate([0,-5,0]) cube([50,15,5]); // plate touching the base
12 translate([0,-5,0]) cube([18,50,5]);
13 }
14
15 module z_bottom_fancy(){
16 // corner cutouts
17 translate([0.5,-2.5,0]) rotate([0,0,-45-180]) translate([-15,0,-1]) cube([30,30,51]);
18 translate([0.5,40-0.5,0]) rotate([0,0,-45+90]) translate([-15,0,-1]) cube([30,30,51]);
19 //translate([-4,40+5,5]) rotate([0,0,-35-0]) translate([0,0,0.1]) cube([30,30,51]);
20 translate([-4+11,40+5+5,0]) rotate([0,0,-45-0]) translate([0,0,-1]) cube([30,30,51]);
21 translate([8,0,12+20+6]) rotate([0,-90,0]) translate([0,-5,0]) cube([30,50,30]);
22 translate([20,-2,12+8]) rotate([45,0,0]) rotate([0,-90,0]) translate([0,-5,0]) cube([30,50,30]);
23 translate([8,20,12+30]) rotate([-45,0,0]) rotate([0,-90,0]) translate([0,-5,0]) cube([30,50,30]);
24 translate([50-2.5,-5+2.5,0]) rotate([0,0,-45-90]) translate([-15,0,-1]) cube([30,30,51]);
25 translate([50-1.5,10-1.5,0]) rotate([0,0,-45]) translate([-15,0,-1]) cube([30,30,51]);
26 //translate([0,0,5]) rotate([45+180,0,0]) rotate([0,0,-45+90]) translate([0,0,-15]) cube([30,30,30]);
27 // Stiffner cut out
28 translate([30,0,5.5]) rotate([0,-45,0]) translate([0,-5,0]) cube([30,50,30]);
29 }
30
31 module z_bottom_holes(){
32 // Frame mounting screw holes
33 translate([-1,10,10+5]) rotate([0,90,0]) cylinder(h = 20, r=1.8, $fn=30);
34 translate([-1,10+20,10+5]) rotate([0,90,0]) cylinder(h = 20, r=1.8, $fn=30);
35 translate([-1,10+10,10+20+5]) rotate([0,90,0]) cylinder(h = 20, r=1.8, $fn=30);
36
37 // Frame mounting screw head holes
38 translate([4,10,10+5]) rotate([0,90,0]) cylinder(h = 20, r=3.1, $fn=30);
39 translate([4,10+20,10+5]) rotate([0,90,0]) cylinder(h = 20, r=3.1, $fn=30);
40 translate([4,10+10,10+20+5]) rotate([0,90,0]) cylinder(h = 20, r=3.1, $fn=30);
41 translate([4,10+10-3.1,10+20+5]) cube([10,6.2,10]);
42
43 // Z rod holder
44 translate([25+4.3,4.2,-1]) rotate([0,0,0]) cylinder(h = 50, r=4.1, $fn=15);
45 translate([25+4.3-1,3,0.6]) cube([2,10,7]); // it's bit up because it helps with printing
46
47 // motor mounting
48 translate([25+4.3,21,-1]){
49 //translate([15.5,15.5,-1]) cylinder(h = 20, r=1.8, $fn=30);
50
51 translate([15.5,-15.5,-1]) cylinder(h = 20, r=1.8, $fn=30);
52 translate([-15.5,15.5,-1]) cylinder(h = 20, r=1.8, $fn=30);
53 translate([-15.5,-15.5,-1]) cylinder(h = 20, r=1.8, $fn=30);
54 }
55
56 }
57
58 // Final part
59 module z_bottom_holder(){
60 difference(){
61 z_bottom_base();
62 z_bottom_fancy();
63 z_bottom_holes();
64 }
65 translate([0,-13,0]) mirror([0,1,0]) difference(){
66 z_bottom_base();
67 z_bottom_fancy();
68 z_bottom_holes();
69 }
70 }
71
72 z_bottom_holder();