changeset 109:970638b228a4

Remove all testing code from kubik.py
author Radomir Dopieralski <sheep-devel@sheep.art.pl>
date Wed, 02 Jul 2014 14:57:32 +0200
parents 0948869675f8
children ad4e95b79a5a
files kubik.py
diffstat 1 files changed, 9 insertions(+), 52 deletions(-) [+]
line wrap: on
line diff
--- a/kubik.py	Wed Jul 02 09:23:31 2014 +0000
+++ b/kubik.py	Wed Jul 02 14:57:32 2014 +0200
@@ -1,12 +1,9 @@
-import time
 import math
 
 import serial
 import maestro
 
 
-#logging.basicConfig(level=logging.DEBUG)
-
 def _solve_triangle(a, b, c):
     """Calculate an angle of a triangle using the law of cosines."""
     a, b, c = abs(a), abs(b), abs(c)
@@ -22,6 +19,7 @@
 
 
 def _normalize_degrees(angle):
+    """Convert an angle to range +-180 degree range."""
     while angle > 180:
         angle -= 360
     while angle < -180:
@@ -30,20 +28,25 @@
 
 
 class HipServo(maestro.Servo):
+    """The hip servos have their range extended."""
     min_position = 560 * 4
     max_position = 2432 * 4
     max_degrees = 180
 
 
 class KneeServo(maestro.Servo):
-    pass
+    """Standard servo."""
 
 
 class AnkleServo(maestro.Servo):
-    pass
+    """Standard servo."""
 
 
 class Leg(object):
+    """A signle leg, containing 3 servos: hip, knee and ankle, and three
+       connections between them: coxa, femur and tibia.
+    """
+
     # Lengths of leg segments, in mm
     coxa = 12.5  # between the hip and the knee
     femur = 30.0  # between the knee and the ankle
@@ -107,52 +110,6 @@
         ]
 
     def home(self):
-        """Move all legs to the initial position."""
+        """Move all legs to their initial position."""
         for leg in self.legs:
             leg.move_to((30, 30, -35))
-
-    def run(self):
-        try:
-            while True:
-                for i in range(-35, -25):
-                    time.sleep(0.0125)
-                    self.legs[0].move_to((20, 0, i))
-                    self.legs[1].move_to((20, 0, i))
-                    self.legs[2].move_to((20, 0, i))
-                    self.legs[3].move_to((20, 0, i))
-                for i in range(-25, -35, -1):
-                    time.sleep(0.0125)
-                    self.legs[0].move_to((20, 0, i))
-                    self.legs[1].move_to((20, 0, i))
-                    self.legs[2].move_to((20, 0, i))
-                    self.legs[3].move_to((20, 0, i))
-                for i in range(0, 20):
-                    time.sleep(0.0125)
-                    self.legs[0].move_to((20-i, 0, -35))
-                    self.legs[1].move_to((20-i, 0, -35))
-                    self.legs[2].move_to((20+i, 0, -35))
-                    self.legs[3].move_to((20+i, 0, -35))
-                for i in range(20, 0, -1):
-                    time.sleep(0.0125)
-                    self.legs[0].move_to((20-i, 0, -35))
-                    self.legs[1].move_to((20-i, 0, -35))
-                    self.legs[2].move_to((20+i, 0, -35))
-                    self.legs[3].move_to((20+i, 0, -35))
-                for i in range(0, 20):
-                    time.sleep(0.0125)
-                    self.legs[0].move_to((20, i, -35))
-                    self.legs[1].move_to((20, i, -35))
-                    self.legs[2].move_to((20, i, -35))
-                    self.legs[3].move_to((20, i, -35))
-                for i in range(20, 0, -1):
-                    time.sleep(0.0125)
-                    self.legs[0].move_to((20, i, -35))
-                    self.legs[1].move_to((20, i, -35))
-                    self.legs[2].move_to((20, i, -35))
-                    self.legs[3].move_to((20, i, -35))
-        finally:
-            self.home()
-
-
-if __name__ == '__main__':
-    Robot().run()