Increase Y corners height by 3mm to get space under bed. It also
[clinton/prusa3.git] / box_frame / y-axis-corner.scad
1 // PRUSA iteration3
2 // Y frame corners
3 // GNU GPL v3
4 // Josef Průša <josefprusa@me.com>
5 // Václav 'ax' Hůla <axtheb@gmail.com>
6 // http://www.reprap.org/wiki/Prusa_Mendel
7 // http://github.com/prusajr/PrusaMendel
8
9 include <configuration.scad>
10 use <y-drivetrain.scad>
11
12 module nutrod(r=4.4){
13 //threared rods
14 rotate([0,90,0]){
15 translate([0,0,-5]) cylinder(h = 270, r=r, $fn=30);
16 }
17 }
18
19 /*
20 20 mm betwenn the front threaded rods
21 25 mm between the side threaded and smooth rod
22 */
23
24 module leftfront(thru = false){
25 y_end_plug=2;
26 // translate so the rod is on x = 0
27 translate([-11,-y_end_plug,0])
28
29 difference(){
30 if (thru == false) {
31 translate([0,0,12-board_thickness]) cube_fillet([22, 22, 40 + board_thickness + xy_delta], vertical=[4,4,4,4], top=[2,6,6,6], fn=8);
32 } else {
33 translate([0,0,12-board_thickness]) cube_fillet([22, 22, 41.5 + board_thickness + xy_delta], vertical=[4,4,4,4], top=[2,4,9,4], fn=8);
34 }
35
36 //threaded rods across (short)
37 translate([0,11,10]) rotate([0,0,0]) nutrod();
38 translate([0,11,30]) rotate([0,0,0]) nutrod();
39 //threaded rod along (long, M10)
40 translate([11, 0, 14.6 + y_threaded_rod_long_r]) rotate([0,0,90]) nutrod(r=y_threaded_rod_long_r);
41
42 if(thru==false){
43 //Leave space on part top thru which the rod is inserted, but not too big so it still snaps in
44 translate([11, 15 + y_end_plug, 48 + bushing_xy[0] * 0.75 + xy_delta]) cube([bushing_xy[0] * 2.05, 30, 4], center=true);
45 //Actual smoooth rod
46 translate([11, y_end_plug, 48 + xy_delta]) rotate([0, 90, 90]) cylinder(h = 270, r=bushing_xy[0]);
47 }else{
48 translate([11, 17-5, 48 + 2.05 + xy_delta]) cube([8.2, 30, 4.1], center=true);
49 translate([11, -3, 48 + xy_delta]) rotate([0, 90, 90]) cylinder(h = 270, r=4.0);
50 }
51
52 }
53 }
54
55 leftfront();
56 translate([25,0,0]) mirror([1,0,0]) leftfront();
57 //translate([12,2,28]) rotate([0,0,0]) cube([10,4,1], center=true);
58
59 translate([0,25,0]) {
60 leftfront();
61 translate([25,0,0]) mirror([1,0,0]) leftfront();
62 //translate([12,2,28]) rotate([0,0,0]) cube([10,4,1], center=true);
63 }