changeset 47:16316a3f7549

Real servo horn dimensions
author Radomir Dopieralski <sheep-devel@sheep.art.pl>
date Mon, 18 Aug 2014 19:11:28 +0200
parents 4918c6d577e9
children dda48811342a
files scad/leg.scad scad/sg90.scad
diffstat 2 files changed, 32 insertions(+), 30 deletions(-) [+]
line wrap: on
line diff
--- a/scad/leg.scad	Sun Aug 17 11:30:37 2014 +0200
+++ b/scad/leg.scad	Mon Aug 18 19:11:28 2014 +0200
@@ -3,8 +3,8 @@
 module leg(hip, knee, ankle, explode) {
     SG90_single_horn();
     translate([0, 0, explode]) SG90_horn_screw();
-    translate([9, 0, 7 - explode]) rotate([0, 180, 0]) SG90_horn_screw();
-    translate([15, 0, 7 - explode]) rotate([0, 180, 0]) SG90_horn_screw();
+    translate([6, 0, 7 - explode]) rotate([0, 180, 0]) SG90_horn_screw();
+    translate([12, 0, 7 - explode]) rotate([0, 180, 0]) SG90_horn_screw();
     translate([0, 0, -explode]) rotate(hip - 90) {
         SG90();
         translate([18, -23 - explode, -29]) rotate([90, 180, 90]) {
@@ -12,19 +12,19 @@
             translate([0, 0, explode]) rotate(knee) {
                 SG90_single_horn();
                 translate([0, 0, explode]) SG90_horn_screw();
-                translate([24, 0, 0]) {
+                translate([17.6, 0, 0]) {
                     translate([0, 0, 6 - explode]) rotate([0, 180, 0])
                         SG90_double_horn();
-                    translate([-9, 0, 5 - explode * 2]) rotate([0, 180, 0])
+                    translate([-6, 0, 5 - explode * 2]) rotate([0, 180, 0])
                         SG90_horn_screw();
-                    translate([-15, 0, 5 - explode * 2]) rotate([0, 180, 0])
+                    translate([-12, 0, 5 - explode * 2]) rotate([0, 180, 0])
                         SG90_horn_screw();
-                    translate([9, 0, 5 - explode * 2]) rotate([0, 180, 0])
+                    translate([6, 0, 5 - explode * 2]) rotate([0, 180, 0])
                         SG90_horn_screw();
-                    translate([15, 0, 5 - explode * 2]) rotate([0, 180, 0])
+                    translate([12, 0, 5 - explode * 2]) rotate([0, 180, 0])
                         SG90_horn_screw();
                 }
-                translate([48, 0, 0]) rotate([0, 0, 180]) {
+                translate([35.2, 0, 0]) rotate([0, 0, 180]) {
                     SG90_single_horn();
                     translate([0, 0, explode]) SG90_horn_screw();
                     translate([0, 0, -explode]) rotate(ankle) {
--- a/scad/sg90.scad	Sun Aug 17 11:30:37 2014 +0200
+++ b/scad/sg90.scad	Mon Aug 18 19:11:28 2014 +0200
@@ -27,27 +27,27 @@
             cylinder(r=0.8, h=5, $fn=10);
         }
     }
-    translate([1.27 * 3, -10, -26.6]) rotate([0, 90, 90]) {
-        color("Orange") translate([1.27, 1.27, 12]) cylinder(r1=0.75, r2=0, h=20);
-        color("Red") translate([1.27, 1.27 + 2.54, 12]) cylinder(r1=0.75, r2=0, h=20);
-        color("Brown") translate([1.27, 1.27 + 2.54 * 2, 12]) cylinder(r1=0.75, r2=0, h=20);
+    translate([1, -10, -25]) rotate([0, 90, 90]) {
+        color("Orange") translate([1.27, 0, 12]) cylinder(r1=0.75, r2=0, h=20);
+        color("Red") translate([1.27, 1, 12]) cylinder(r1=0.75, r2=0, h=20);
+        color("Brown") translate([1.27, 2, 12]) cylinder(r1=0.75, r2=0, h=20);
     }
 }
 
 module _SG90_horn_arm() {
     difference() {
-        translate([18,0,3]) {
-            cylinder(r=2, h=1.6, $fn=10);
-            translate([0,-2,0]) rotate([0,0,96]) {
-                cube([4, 18, 1.6]);
+        translate([13.8, 0, 3.1]) {
+            cylinder(r=1.85, h=1.3, $fn=10);
+            translate([0,-2,0]) rotate([0,0,94]) {
+                cube([4, 13.8, 1.3]);
             }
-            translate([0,-2,0]) rotate([0,0,84]) {
-                cube([4, 18, 1.6]);
+            translate([0,-2,0]) rotate([0,0,86]) {
+                cube([4, 13.8, 1.3]);
             }
         }
         for(i=[0:5]) {
-            translate([18 - (i * 3),0,0]) {
-                cylinder(r=0.7, h=8, $fn=8);
+            translate([13.8 - i * 2,0,0]) {
+                cylinder(r=0.6, h=8, $fn=8);
             }
         }
     }
@@ -57,13 +57,13 @@
     rotate(angle) color("Snow") {
         difference() {
             union() {
-                cylinder(r=4, h=5, $fn=20);
+                cylinder(r=3.3, h=4.4, $fn=20);
                 _SG90_horn_arm();
             }
             translate([0,0,-1]) {
-                cylinder(r=2.275, h=4, $fn=6);
+                cylinder(r=2.275, h=3.2, $fn=6);
                 cylinder(r=1, h=8, $fn=10);
-                translate([0, 0, 5]) cylinder(r=2, h=4, $fn=10);
+                translate([0, 0, 4.4]) cylinder(r=2.35, h=2, $fn=10);
             }
         }
     }
@@ -73,14 +73,14 @@
     rotate(angle) color("Snow") {
         difference() {
             union() {
-                cylinder(r=4, h=5, $fn=20);
+                cylinder(r=3.3, h=4.4, $fn=20);
                 _SG90_horn_arm();
                 rotate(180) _SG90_horn_arm();
             }
             translate([0,0,-1]) {
-                cylinder(r=2.275, h=4, $fn=6);
+                cylinder(r=2.275, h=3.2, $fn=6);
                 cylinder(r=1, h=8, $fn=10);
-                translate([0, 0, 5]) cylinder(r=2, h=4, $fn=10);
+                translate([0, 0, 4.4]) cylinder(r=2.35, h=2, $fn=10);
             }
         }
     }
@@ -88,11 +88,13 @@
 
 module SG90_horn_screw() {
     color("DarkGray") union() {
-        translate([0, 0, 4]) difference() {
-            cylinder(r=1.4, h=1, $fn=6);
-            translate([-0.25, -2, 0.5]) cube([0.5, 4, 1]);
+        translate([0, 0, 3.4]) difference() {
+            union() {
+                cylinder(r=1.4, h=0.9, $fn=6);
+                translate([0, 0, -3.4]) cylinder(r=0.8, h=4, $fn=8);
+            }
+            translate([-0.25, -2, 0.4]) cube([0.5, 4, 1]);
         }
-        cylinder(r=0.8, h=4, $fn=8);
     }
 }