Oog#
Invoering#
De VR Eye Sensor kan objecten detecteren en hun kleur, helderheid en tint bepalen. Je kunt er ook het detectiebereik en de lichtinstellingen mee aanpassen voor nauwkeurigere metingen.
Hieronder vindt u een lijst met alle beschikbare methoden:
Getters – Lezen de aanwezigheid, kleur, helderheid en tint van objecten.
near_object– Geeft aan of de oogsensor een object binnen bereik detecteert.detect– Geeft aan of de oogsensor een specifieke kleur detecteert.brightness– Geeft de hoeveelheid licht terug die door het object wordt weerkaatst, uitgedrukt als een percentage.
Callback – Voer code uit wanneer een object wordt gedetecteerd of verloren gaat.
object_detected– Registreert een functie die wordt aangeroepen wanneer de oogsensor een object detecteert.object_lost– Registreert een functie die wordt aangeroepen wanneer de oogsensor een object verliest.
Getters#
near_object#
near_object retourneert een Boolean die aangeeft of de oogsensor een object binnen bereik detecteert of niet.
True– De sensor bevindt zich in de buurt van een object.False– De sensor bevindt zich niet in de buurt van een object.
Usage:
eye.near_object()
Parameters |
Beschrijving |
|---|---|
Deze methode heeft geen parameters. |
def main():
# Stop driving when Eye Sensor is
# near an object
drivetrain.drive(FORWARD)
while True:
if front_eye.near_object():
drivetrain.stop()
wait(5, MSEC)
# VR threads — Do not delete
vr_thread(main)
detect#
detect retourneert een Boolean die rapporteert of de oogsensor een bepaalde kleur detecteert, op basis van de gedetecteerde tintwaarde.
True— De oogsensor detecteert de geselecteerde kleur.False— De oogsensor detecteert de geselecteerde kleur niet.
Usage:
eye.detect(color)
Parameters |
Beschrijving |
|---|---|
|
De kleur waarop de oogsensor moet controleren:
|
def main():
# Stop the robot if the Eye Sensor
# detects red
drivetrain.turn(RIGHT)
while True:
if front_eye.detect(RED):
drivetrain.stop()
wait(5, MSEC)
# VR threads — Do not delete
vr_thread(main)
brightness#
brightness geeft de hoeveelheid licht terug die door het object wordt weerkaatst als een decimaal getal (float) dat een percentage vertegenwoordigt.
Een hoger percentage betekent dat er meer licht teruggekaatst wordt naar de oogsensor. Een lager percentage betekent dat er minder licht teruggekaatst wordt.
Usage:
eye.brightness(units)
Parameters |
Beschrijving |
|---|---|
|
De eenheid die de helderheid weergeeft: |
Terugbelverzoek#
object_detected#
object_detected registreert een functie die wordt aangeroepen wanneer de oogsensor een nieuw object detecteert.
Usage:
eye.object_detected(callback)
Parameters |
Beschrijving |
|---|---|
|
Een eerder gedefinieerde functie die wordt uitgevoerd wanneer de oogsensor een nieuw object detecteert. |
def detected():
# Display a message
drivetrain.stop()
brain.print("object detected")
wait(0.5,SECONDS)
brain.clear()
def main():
# Drive until an object is detected
drivetrain.drive(FORWARD)
front_eye.object_detected(detected)
# VR threads — Do not delete
vr_thread(main)
object_lost#
object_lost registreert een functie die wordt aangeroepen wanneer de oogsensor een gedetecteerd object verliest.
Usage:
eye.object_lost(callback)
Parameters |
Beschrijving |
|---|---|
|
Een eerder gedefinieerde functie die wordt uitgevoerd wanneer de oogsensor een gedetecteerd object verliest. |
def lost():
# Display a message
drivetrain.stop()
brain.print("object lost")
wait(0.5,SECONDS)
brain.clear()
def main():
# Back away from an object
drivetrain.drive(REVERSE)
front_eye.object_lost(lost)
# VR threads — Do not delete
vr_thread(main)