]> www.fi.muni.cz Git - things.git/blob - servo-tube-holder-half-center.scad
switch holder.scad
[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 slot_w = 3;
9
10 servo_w = 12.5+0.5;
11 servo_side_l = 5 - 0.5;
12
13 clip_w = servo_side_l + wall;
14
15 servo_zoff = 14 + 2.0 + tube_d/2;
16 servo_screw_hole = 1.2;
17 servo_slot_z = 2 + 0.5;
18
19 module clip() {
20 difference() {
21         hull() {
22                 // clip cylinder
23                 cylinder(r = tube_d/2 + wall, h = clip_w);
24                 // under the servo
25                 translate([-servo_w/2-wall, servo_zoff-wall, 0])
26                         cube([servo_w+2*wall, servo_slot_z + 2*wall, clip_w]);
27         }
28
29         // fuse tube
30         translate([0, 0, -eps])
31                 cylinder(r = tube_d/2, h = clip_w + 2*eps);
32
33         // slot
34         translate([-slot_w/2, -tube_d,, -eps])
35                 cube([slot_w, tube_d, clip_w + 2*eps]);
36
37         // servo
38         translate([-servo_w/2, servo_zoff, wall])
39                 cube([servo_w, servo_slot_z, clip_w]);
40
41         // screw hole
42         translate([0, 0, wall + 0.6*servo_side_l])
43         rotate([-90, 0, 0])
44                 cylinder(r = servo_screw_hole/2, h = infty, $fn = 6);
45 }
46 }
47
48 for (x = [-1, 1]) scale([x, 1, 1])
49 translate([servo_w/2+2*wall, 0, 0])
50 clip();
51