pybricks.pupdevices.UltrasonicSensor: Move cleanup example.

Also generalize the example so that it can be used on all hubs.
This commit is contained in:
Laurens Valk
2022-01-07 13:38:07 +01:00
committed by laurensvalk
parent 65c81834c9
commit ffb2f8aa96
4 changed files with 31 additions and 40 deletions
-7
View File
@@ -235,10 +235,3 @@ Turning the hub off
.. literalinclude::
../../../examples/pup/hub_primehub/system_shutdown.py
Clean up after program stop
*****************************************
.. literalinclude::
../../../examples/pup/hub_primehub/cleanup.py
+6
View File
@@ -36,3 +36,9 @@ Gradually change the brightness of the lights
.. literalinclude::
../../../examples/pup/sensor_ultrasonic/math.py
Turn off the lights when the program ends
**********************************************
.. literalinclude::
../../../examples/pup/sensor_ultrasonic/cleanup.py
-33
View File
@@ -1,33 +0,0 @@
from pybricks.hubs import PrimeHub
from pybricks.parameters import Color, Port
from pybricks.pupdevices import ColorSensor, UltrasonicSensor
# Initialize the hub
hub = PrimeHub()
# Initialize the sensors
ultrasonic_sensor = UltrasonicSensor(Port.E)
color_sensor = ColorSensor(Port.F)
# Turn on upper halves
ultrasonic_sensor.lights.on([50, 50, 0, 0])
# Your robot's code goes here
def main():
while True:
color = color_sensor.color()
if color == Color.RED:
hub.display.text("R")
else:
hub.display.text("?")
# Wrap the code in try-finally to ensure the cleanup code is always executed
# no matter if the program gets stopped gracefully by the user or by an error
try:
main()
finally:
# The cleanup code goes here
color_sensor.lights.off()
ultrasonic_sensor.lights.off()
+25
View File
@@ -0,0 +1,25 @@
from pybricks.parameters import Port
from pybricks.pupdevices import UltrasonicSensor
from pybricks.tools import wait
# Initialize the sensor.
sensor = UltrasonicSensor(Port.A)
# Turn on the upper lights.
sensor.lights.on([50, 50, 0, 0])
def main():
while True:
print("Main program is running.")
wait(500)
# Wrap the main code in try/finally so that the cleanup code always runs
# when the program ends, even if an exception was raised.
try:
main()
finally:
# The cleanup code goes here.
print("Cleaning up.")
sensor.lights.off()