]> www.fi.muni.cz Git - things.git/blob - servo-tube-holder-half-center.scad
dual-horn: modified vertical part, thicker support
[things.git] / servo-tube-holder-half-center.scad
1 eps = 0.01;
2 infty = 200;
3
4 wall = 1.0;
5
6 tube_d = 8.0 + 0.5;
7
8 clip_w = 6;
9
10 slot_w = 3;
11
12 support_l = 12;
13 servo_w = 12.5;
14
15 cable_w = 5;
16 cable_zoff = 2;
17
18 module clip(support_zoff) {
19 difference() {
20         hull() {
21                 // clip cylinder
22                 cylinder(r = tube_d/2 + wall, h = clip_w);
23                 // under the servo
24                 translate([-servo_w/2-wall, tube_d/2+support_zoff, 0])
25                         cube([servo_w+2*wall, support_l + wall, clip_w]);
26         }
27
28         // fuse tube
29         translate([0, 0, -eps])
30                 cylinder(r = tube_d/2, h = clip_w + 2*eps);
31
32         // slot
33         translate([-slot_w/2, -tube_d,, -eps])
34                 cube([slot_w, tube_d, clip_w + 2*eps]);
35
36         // servo
37         translate([-servo_w/2, tube_d/2+support_zoff+wall, wall])
38                 cube([servo_w, support_l + eps, clip_w]);
39         // cable hole
40         translate([-cable_w/2, tube_d/2+support_zoff+cable_zoff+wall, -eps])
41                 cube([cable_w, support_l + eps, clip_w]);
42 }
43 }
44
45 for (x = [-1, 1]) scale([x, 1, 1])
46 translate([servo_w, tube_d, 0])
47         clip(support_zoff = 0);
48
49 for (x = [-1, 1]) scale([x, -1, 1])
50 translate([servo_w, tube_d, 0])
51         clip(support_zoff = 3);