]> www.fi.muni.cz Git - things.git/commitdiff
smaller servo holder for CF tube
authorJan "Yenya" Kasprzak <kas@fi.muni.cz>
Fri, 22 Mar 2019 10:46:33 +0000 (11:46 +0100)
committerJan "Yenya" Kasprzak <kas@fi.muni.cz>
Fri, 22 Mar 2019 10:46:33 +0000 (11:46 +0100)
servo-tube-holder-half.scad [new file with mode: 0644]

diff --git a/servo-tube-holder-half.scad b/servo-tube-holder-half.scad
new file mode 100644 (file)
index 0000000..8e51b25
--- /dev/null
@@ -0,0 +1,53 @@
+eps = 0.01;
+infty = 200;
+
+wall = 1.5;
+
+tube_d = 8.0 + 0.5;
+
+clip_w = 6;
+
+slot_w = 3;
+slot_angle = 180+45;
+
+support_l = tube_d/2 + 10;
+
+module clip(support_zoff) {
+difference() {
+       union() {
+               // clip cylinder
+               cylinder(r = tube_d/2 + wall, h = clip_w);
+               // under the servo
+               hull() {
+                       translate([0, tube_d/2+support_zoff - wall, 0])
+                               cube([tube_d/2+wall, wall, clip_w]);
+                       translate([support_l-wall, tube_d/2+support_zoff - wall, 0])
+                               cube([wall, wall, clip_w/2]);
+               }
+               // vertical strut
+               hull() {
+                       translate([support_l - eps, tube_d/2+support_zoff-wall, 0])
+                               cube([eps, wall, wall]);
+                       translate([0, -tube_d/2-wall/2, 0])
+                               cube([eps, tube_d+wall/2+support_zoff, wall]);
+               }
+               
+       }
+
+       // fuse tube
+       translate([0, 0, -eps])
+               cylinder(r = tube_d/2, h = clip_w + 2*eps);
+
+       // slot
+       rotate([0, 0, slot_angle])
+       translate([0, -slot_w/2, -eps])
+               cube([tube_d, slot_w, clip_w + 2*eps]);
+}
+}
+
+// clip(support_zoff = -2);
+for (x = [-1, 1]) scale([x, 1, 1]) translate([tube_d, tube_d, 0])
+       clip(support_zoff = wall);
+
+for (x = [-1, 1]) scale([x, -1, 1]) translate([tube_d, tube_d, 0])
+       clip(support_zoff = wall-3);