Szem#
Bevezetés#
A VR szemérzékelő képes tárgyakat érzékelni, és azonosítani azok színét, fényerejét és árnyalatát. Lehetővé teszi az érzékelési tartomány és a megvilágítási beállítások módosítását a pontosabb mérések érdekében.
Az alábbiakban felsoroljuk az összes elérhető módszert:
Getterek – Objektum jelenlétének, színének, fényerejének és árnyalatának kiolvasása.
near_object– Visszaadja, hogy a Szemérzékelő érzékel-e tárgyat a hatótávolságon belül.detect– Visszaadja, hogy a Szemérzékelő érzékel-e egy adott színt.brightness– Visszaadja a tárgyról visszaverődő fény mennyiségét százalékban.
Visszahívás – Kód futtatása objektum észlelésekor vagy elveszésekor.
object_detected– Regisztrál egy függvényt, amely minden alkalommal meghívódik, amikor a Szemérzékelő objektumot érzékel.object_lost– Regisztrál egy függvényt, amely akkor hívódik meg, amikor a Szemérzékelő elveszít egy objektumot.
Getterek#
near_object#
near_object függvény egy Boolean értéket ad vissza, amely jelzi, hogy a Szemérzékelő érzékel-e tárgyat a hatótávolságon belül.
True– Az érzékelő egy tárgy közelében van.False– Az érzékelő nincs tárgy közelében.
Usage:
eye.near_object()
Paraméterek |
Leírás |
|---|---|
Ennek a metódusnak nincsenek paraméterei. |
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 egy Boolean értéket ad vissza, amely jelzi, hogy a Szemérzékelő érzékeli-e a megadott színt a detektált színárnyalat alapján.
True— A szemérzékelő érzékeli a kiválasztott színt.False— A szemérzékelő nem érzékeli a kiválasztott színt.
Usage:
eye.detect(color)
Paraméterek |
Leírás |
|---|---|
|
A szemérzékelő által ellenőrizendő szín:
|
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 értéke a tárgyról visszaverődő fény mennyiségét adja vissza decimális törtként (float), amely százalékot jelent.
A magasabb százalékos érték azt jelenti, hogy több fény verődik vissza a szemérzékelőre. Az alacsonyabb százalékos érték azt jelenti, hogy kevesebb fény verődik vissza.
Usage:
eye.brightness(units)
Paraméterek |
Leírás |
|---|---|
|
A fényerőt jelző mértékegység: |
Visszahívás#
object_detected#
object_detected regisztrál egy függvényt, amely minden alkalommal meghívódik, amikor a Szemérzékelő új objektumot észlel.
Usage:
eye.object_detected(callback)
Paraméterek |
Leírás |
|---|---|
|
Egy korábban definiált függvény, amely akkor hajtódik végre, amikor a Szemérzékelő új objektumot észlel. |
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 regisztrál egy függvényt, amely akkor hívódik meg, amikor a Szemérzékelő elveszít egy érzékelt objektumot.
Usage:
eye.object_lost(callback)
Paraméterek |
Leírás |
|---|---|
|
Egy korábban definiált függvény, amely akkor hajtódik végre, amikor a Szemérzékelő elveszít egy érzékelt tárgyat. |
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)