1
0
mirror of https://github.com/undera/pylgbst.git synced 2020-11-18 19:37:26 -08:00
2017-09-16 21:24:16 +03:00

39 lines
936 B
Python

from vernie import *
robot = Vernie()
running = True
robot.say("Place your hand in front of sensor")
def callback(color, distance):
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):
global running
if pressed:
running = False
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