changeset 151:25def98f32a5

correct servo positions
author Radomir Dopieralski <sheep-devel@sheep.art.pl>
date Wed, 06 Aug 2014 20:44:24 +0200
parents af2b8a1fa8f3
children 6d63e4e4542d
files kubik.py stomp.py
diffstat 2 files changed, 22 insertions(+), 21 deletions(-) [+]
line wrap: on
line diff
--- a/kubik.py	Wed Aug 06 18:51:39 2014 +0200
+++ b/kubik.py	Wed Aug 06 20:44:24 2014 +0200
@@ -33,9 +33,8 @@
     # Lengths of leg segments, in mm
     coxa = 16.0  # between the hip and the knee
     femur = 50.0  # between the knee and the ankle
-    tibia = 45.0  # between the ankle and the foot
+    tibia = 70.0  # between the ankle and the foot
     base = 45.0, 45.0  # from the center of body
-    home = 45.0, 45.0, -35.0
 
 
 class Robot(robot.Robot):
@@ -46,22 +45,22 @@
         m.init()
 
         self.legs = (
-            Leg(HipServo(m, 1, reverse=True, trim=250),
-                KneeServo(m, 2, reverse=True, trim=-200),
+            Leg(HipServo(m, 1, reverse=False, trim=0),
+                KneeServo(m, 2, reverse=True, trim=0),
                 AnkleServo1(m, 0, reverse=True, trim=0, center=1500 * 4),
+                (-1, -1)),
+            Leg(HipServo(m, 4, reverse=False, trim=0),
+                KneeServo(m, 5, reverse=False, trim=0),
+                AnkleServo2(m, 3, reverse=False, trim=0, center=1500 * 4),
                 (-1, 1)),
-            Leg(HipServo(m, 4, reverse=True, trim=-100),
-                KneeServo(m, 5, reverse=False, trim=-200),
-                AnkleServo2(m, 3, reverse=False, trim=-240, center=1500 * 4),
+            Leg(HipServo(m, 7, reverse=True, trim=0),
+                KneeServo(m, 8, reverse=True, trim=0),
+                AnkleServo1(m, 6, reverse=True, trim=0, center=1500 * 4),
                 (1, 1)),
-            Leg(HipServo(m, 7, reverse=False, trim=-150),
-                KneeServo(m, 8, reverse=True, trim=100),
-                AnkleServo1(m, 6, reverse=True, trim=0, center=1500 * 4),
+            Leg(HipServo(m, 10, reverse=True, trim=0),
+                KneeServo(m, 11, reverse=False, trim=0),
+                AnkleServo2(m, 9, reverse=False, trim=0, center=1500 * 4),
                 (1, -1)),
-            Leg(HipServo(m, 10, reverse=False, trim=-250),
-                KneeServo(m, 11, reverse=False, trim=-100),
-                AnkleServo2(m, 9, reverse=False, trim=100, center=1500 * 4),
-                (-1, -1)),
         )
 
 if __name__ == "__main__":
--- a/stomp.py	Wed Aug 06 18:51:39 2014 +0200
+++ b/stomp.py	Wed Aug 06 20:44:24 2014 +0200
@@ -8,20 +8,22 @@
 
 
 def stomp(leg):
-    for z in range(-30, 10, 1):
-        leg.move_to((None, None, z))
+    hx, hy, hz = (int(a) for a in leg.home)
+    for x, y in zip(range(hx, hx + 40), range(hy, hy + 40)):
+        leg.move_to((None, y, hz + 10))
         yield
-    for z in range(10, -50, -1):
-        leg.move_to((None, None, z))
+    for x, y in zip(range(hx + 40, hx - 40, -1), range(hy + 40, hy - 40, -1)):
+        leg.move_to((None, y, hz + 10))
         yield
-    for z in range(-50, -30, 1):
-        leg.move_to((None, None, z))
+    for x, y in zip(range(hx - 40, hx), range(hy - 40, hy)):
+        leg.move_to((None, y, hz + 10))
         yield
 
 
+
 if __name__ == '__main__':
     robot = kubik.Robot()
     robot.home()
     robot.run_animations([
-        stomp(robot.legs[0]),
+        stomp(robot.legs[3]),
     ], FPS)