1
0
mirror of https://github.com/undera/pylgbst.git synced 2020-11-18 19:37:26 -08:00

Implemented "run away" script

This commit is contained in:
Andrey Pohilko 2017-09-16 21:24:16 +03:00
parent 1171ee2668
commit 8f65d1553a

View File

@ -1,18 +1,22 @@
from vernie import *
logging.basicConfig(level=logging.DEBUG)
robot = Vernie()
running = True
robot.say("Place your hand in front of sensor")
def callback(color, distance):
del color # drop unused
speed = (10 - distance) / 10
secs = (10 - distance) / 10
logging.info("%s => %s %s", distance, speed, secs)
if speed <= 1:
robot.motor_AB.timed(secs, -speed)
if color == COLOR_WHITE:
robot.motor_AB.timed(0.1, 0.2, async=True)
elif color != COLOR_NONE:
print(color)
else:
speed = (10 - distance + 1) / 10.0
secs = (10 - distance + 1) / 10.0
print("Distance is %.1f inches, I'm running back with %s%% speed!" % (distance, int(speed * 100)))
if speed <= 1:
robot.motor_AB.timed(secs / 1, -speed, async=True)
def on_btn(pressed):
@ -23,9 +27,12 @@ def on_btn(pressed):
robot.button.subscribe(on_btn)
robot.color_distance_sensor.subscribe(callback)
robot.led.set_color(COLOR_GREEN)
while running:
time.sleep(1)
robot.led.set_color(COLOR_BLACK)
robot.color_distance_sensor.unsubscribe(callback)
robot.button.unsubscribe(on_btn)
time.sleep(5) # let color change