forked from GregFrost/PrusaMendel
-
Notifications
You must be signed in to change notification settings - Fork 0
/
bushing.scad
72 lines (63 loc) · 1.83 KB
/
bushing.scad
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
// PRUSA Mendel
// Bushings
// GNU GPL v2
// Josef Průša
// prusadjs.cz
// http://www.reprap.org/wiki/Prusa_Mendel
// http://github.com/prusajr/PrusaMendel
include <configuration.scad>
/**
* @id bushing
* @name Bushing
* @category Printed
* @id bushing
*/
z_linear_bearings(luu_version=true);
luu_height=45;
uu_height=24;
module z_linear_bearings(luu=false,override_height=-1)
{
translate(v=[0,9.5,0]) rotate(a=[0,0,90])
assign (height=(override_height>0)?override_height:luu_version?luu_height 4 1:65)
{
difference()
{
union()
{
//main block
translate([-5,0,height/2]) cube([10,20,height],center=true);
//holder for main block in x-end
translate([-5,0,15.8/2]) cube([12,23,15.8],center=true);
translate([0,0,0]) cylinder(h=height,r=10,$fn=60);
}
//main axis
translate([0,0,-2]) cylinder(h=height 5, r=7.7, $fn=50);
//main cut
translate([10,0,height/2]) cube([20,14,height 5],center=true);
//smooth entry cut
translate([12,0,height/2]) rotate([0,0,45]) cube([20,20,height 5],center=true);
translate([0,0,14.5 2]) ziptie();
translate([0,0,height-(12 2)-5]) ziptie();
}
if (luu_version)
{
translate([-(10-5.5)/2-5.5,0,0 1]) cube([10-5.5,20,2], center = true);
translate([-(10-5.5)/2-5.5,0,luu_height 1 2 1]) cube([10-5.5,20,2], center = true);
}
else
{
translate([-(10-5.5)/2-5.5,0,0 1]) cube([10-5.5,20,2], center = true);
translate([-(10-5.5)/2-5.5,0,uu_height 1 2 1]) cube([10-5.5,20,2], center = true);
translate([-(10-5.5)/2-5.5,0,65-1]) cube([10-5.5,20,2], center = true);
translate([-(10-5.5)/2-5.5,0,65-uu_height-1-2-1]) cube([10-5.5,20,2], center = true);
}
}
}
//ziptie();
module ziptie(){
difference(){
translate(v=[0,0,0]) cylinder(h = 4.5, r=12.1);
translate(v=[0,0,-1]) cylinder(h = 5, r=10.1, $fn=50);
translate(v=[0,0,3]) cylinder(h = 2, r1=10.1, r2=12, $fn=50);
}}