Mercurial > ukubik
changeset 73:d944b23935e4
Wiggle when picked up
| author | Radomir Dopieralski <sheep-devel@sheep.art.pl> |
|---|---|
| date | Wed, 10 Sep 2014 21:23:01 +0200 |
| parents | 6be60d8eb0a2 |
| children | 5221e4f69437 |
| files | stomp.py wiggle.py |
| diffstat | 2 files changed, 22 insertions(+), 2 deletions(-) [+] |
line wrap: on
line diff
--- a/stomp.py Wed Sep 10 21:00:25 2014 +0200 +++ b/stomp.py Wed Sep 10 21:23:01 2014 +0200 @@ -12,6 +12,7 @@ def stomp(leg): for z in range(-30, 10, 1): leg.move_to((None, None, z)) + avg_acc, min_acc, max_acc = robot.get_accel() yield for z in range(10, -50, -1): leg.move_to((None, None, z))
--- a/wiggle.py Wed Sep 10 21:00:25 2014 +0200 +++ b/wiggle.py Wed Sep 10 21:23:01 2014 +0200 @@ -7,7 +7,7 @@ import kubik -FPS = 24 +FPS = 6 def wiggle(robot): @@ -21,8 +21,27 @@ for wait in range(3): yield; +def watch(robot): + state = 0 + avg_accel, min_accel, max_accel = robot.get_accel() + while True: + wiggler = wiggle(robot) + avg_accel, min_accel, max_accel = robot.get_accel() + print avg_accel, min_accel, max_accel + print state + if state == 0: + if max_accel[2] > 30 and min_accel[2] < 24: + state = 1 + elif state == 1: + next(wiggler) + if max_accel[2] < 28 and min_accel[2] > 26: + state = 0 + yield + + + robot = kubik.Robot(serial.Serial('/dev/rfcomm0', 115200)) robot.run_animations([ - wiggle(robot), + watch(robot), ], FPS)
