-
Notifications
You must be signed in to change notification settings - Fork 0
/
Blind Adaptor B.scad
100 lines (87 loc) · 2.63 KB
/
Blind Adaptor B.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
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
// Comment out follwing line for main bit (inner)
END_BIT = true;
inner_dia = 26.6;
inner_fin_dia = 29;
flange_dia = 30;
flange_height = 1;
flange_extra = 2;
fin_width = 2;
fin_count = 6;
blind_fin_dia = 28.8;
// blind_fin_width = 2.5;
blind_fin_width = 6;
// blind_big_fin_width = 9;
blind_big_fin_width1 = 17.5;
blind_big_fin_width2 = 10;
outer_dia = 36.3;
notch_depth = .2;
notch_width = 1;
notch_height = 16;
$fn=100;
if (END_BIT == undef){
mainbit(25);
// notch to hold in place
color("Blue"){
rotate(220) {translate([(inner_dia / 2)-notch_depth, 0, notch_height]) {
cube([notch_depth, notch_width, notch_depth], center=true);
}
}}
}
if (END_BIT == true) {
height=7;
// Flange
difference () {
cylinder (h = flange_height, d=outer_dia + flange_extra * 2, center = false);
translate([0,0,-.1]) cylinder (h = height, d=flange_dia, center = false);
}
translate([0,0,flange_height]) mainbit(height);
}
module mainbit(height){
difference () {
cylinder (h = height, d=outer_dia, center = false);
// Remove the main inner cylinder
cylinder (h = height*3, d=inner_dia, center = true);
// Remove the blind fins
for (a = [0: 360 / fin_count : 360-1]) {
rotate (a) {
difference() {
translate([0, -blind_fin_width/ 2, -.1]) {
cube ([outer_dia, blind_fin_width, height+.2]);
}
cylinder (h = height, d=blind_fin_dia, center = false);
}
}
}
// Remove the motor inner fins
difference() {
union() {
for (a = [360 / fin_count/2: 360 / fin_count : 179]) {
rotate (a) {
translate([-inner_fin_dia / 2, -fin_width / 2, -.1]) {
cube ([inner_fin_dia, fin_width, height+.2]);
}
}
}
}
// Put in an end stop to prevent motor pushing past insert
translate([0, 0, notch_height]) cylinder(d=inner_fin_dia, h=1);
// And the big bit from the stop
}
// Remove the blind big fins
bigfin(0, blind_big_fin_width1, height, blind_fin_dia);
bigfin(180, blind_big_fin_width2, height, blind_fin_dia);
// Remove the "leftover" bit on the big side
cutout = 15.5;
translate([0, -cutout/2, -.1]) cube([outer_dia, cutout, height+.2]);
}
}
module bigfin(angle, width, height, innerd) {
rotate (angle) {
difference() {
translate([0, -width/ 2, -.1]) {
cube ([outer_dia, width, height+.2]);
}
cylinder (h = height, d=innerd, center = false);
}
}
}