Optikai érzékelő#
Bevezetés#
A V5 optikai érzékelő RGB színérzékelő és közelségérzékelő kombinációjának segítségével érzékeli a közeli tárgyak színét, fényerejét és jelenlétét. A beépített LED-et is használhatja a tárgyak megvilágítására a pontosabb érzékelés érdekében.

Ez az oldal optical_sensor értéket használja példaként az optikai érzékelő nevére. Szükség szerint cserélje ki a saját konfigurált névre.
Az alábbiakban felsoroljuk az elérhető módszereket:
set_light– Be- vagy kikapcsolja az optikai érzékelő LED-jét.set_light_power– Beállítja az optikai érzékelő fényerősségi szintjét.is_near_object– Visszaadja, hogy az optikai érzékelő érzékel-e objektumot a hatótávolságon belül.color– Visszaadja az optikai érzékelő által érzékelt színt.brightness– Visszaadja az objektumról visszaverődő fény mennyiségét.hue– Visszaadja az optikai érzékelő által érzékelt színárnyalatot.object_detected– Regisztrál egy függvényt, amely akkor hívódik meg, amikor az optikai érzékelő objektumot érzékel.object_lost– Regisztrál egy függvényt, amely akkor hívódik meg, amikor az optikai érzékelő elveszít egy objektumot.
Konstruktor – Optikai érzékelő manuális inicializálása.
Optical– Optikai érzékelőt hoz létre.
beállított_fény#
set_light be- és kikapcsolja az optikai érzékelő LED-jét. Ez segíthet növelni az érzékelő pontosságát a színek érzékelésekor.
Usage:
optical_sensor.set_light(state)
Paraméterek |
Leírás |
|---|---|
állami |
Be- vagy kikapcsolja a LED-et. |
# Turn on the sensor's LED
optical_sensor.set_light(LEDStateType.ON)
beállítani_fény_erőt#
set_light_power Az optikai érzékelő LED-jének fényerejét állítja be. A fény segíthet az optikai érzékelőnek a tárgyak és a színek tisztább érzékelésében.
Ha az optikai érzékelő lámpája ki van kapcsolva, a fényerő 0% fölé állítása bekapcsolja a lámpát.
Ha az optikai érzékelő lámpája világít, a fényerő 0%-ra állítása kikapcsolja a lámpát.
A magasabb százalékos érték fényesebbé, az alacsonyabb százalékos érték pedig halványabbá teszi a fényt.
Usage:
optical_sensor.set_light_power(percent, units)
Paraméterek |
Leírás |
|---|---|
százalékos |
A LED fényerejének beállítása egész számként. |
egységek |
Opcionális. A fényerőt jelző mértékegység: |
# Turn on the sensor's light at half brightness
optical_sensor.set_light_power(50, PERCENT)
tárgy_közelében van#
is_near_object egy logikai értéket ad vissza, amely azt jelzi, hogy az optikai érzékelő érzékel-e objektumot a hatótávolságon belül.
True– Az optikai érzékelő objektumot érzékel.False– Az optikai érzékelő nem érzékel tárgyat.
Usage:
optical_sensor.is_near_object()
Paraméterek |
Leírás |
|---|---|
Ennek a metódusnak nincsenek paraméterei. |
# Drive forward until an object is found
drivetrain.drive(FORWARD)
while not optical_sensor.is_near_object():
pass
drivetrain.stop()
szín#
color egy Color class osztály egy példányát adja vissza a detektált színárnyalat-érték alapján. Ezek összehasonlíthatók előre definiált Color objektumokkal feltételes utasítások létrehozásához.
Lehetséges színek a következők:
Color.BLACKColor.WHITEColor.RED- Színárnyalat 340° és 20° közöttColor.GREEN- 80° és 140° közötti színárnyalatértékColor.BLUE- 200° és 240° közötti színárnyalatértékColor.YELLOW- 40° és 60° közötti színárnyalatértékColor.ORANGE- 20° és 40° közötti színárnyalatértékColor.PURPLE- 240° és 280° közötti színárnyalatértékColor.CYAN- 140° és 200° közötti színárnyalatérték
Megjegyzés: Az optikai érzékelő a megadott színnek megfelelő színárnyalat-tartományokat keresi. Az adott színárnyalat-tartományok észleléséhez lásd: hue.
Usage:
optical_sensor.color()
Paraméterek |
Leírás |
|---|---|
Ennek a metódusnak nincsenek paraméterei. |
# Drive forward until red is found
drivetrain.drive(FORWARD)
while not optical_sensor.color() == Color.RED:
pass
drivetrain.stop()
fényesség#
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 az optikai érzékelőre. Az alacsonyabb százalékos érték azt jelenti, hogy kevesebb fény verődik vissza.
Usage:
optical_sensor.brightness()
Paraméterek |
Leírás |
|---|---|
Ennek a metódusnak nincsenek paraméterei. |
színárnyalat#
hue Az 1-es paraméter visszaadja a detektált szín árnyalatértékét decimális alakban (float) 0 és 359 között.
A színárnyalat a színek leírásának egy módja, számok segítségével, egy színkör körül.

Usage:
optical_sensor.hue()
Paraméterek |
Leírás |
|---|---|
Ennek a metódusnak nincsenek paraméterei. |
# Look for the color pink using hue
while True:
brain.screen.clear_screen()
brain.screen.set_cursor(1, 1)
if 300 < optical_sensor.hue() < 359:
brain.screen.print("This is pink!")
else:
brain.screen.print("No pink detected!")
objektum_észlelt#
object_detected regisztrál egy függvényt, amely akkor hívódik meg, amikor az optikai érzékelő új objektumot észlel.
Usage:
optical_sensor.object_detected(callback, arg)
Paraméterek |
Leírás |
|---|---|
|
Egy korábban definiált függvény, amely akkor hajtódik végre, amikor az optikai érzékelő új objektumot észlel. |
|
Opcionális. Egy tuple, amely argumentumokat tartalmaz a visszahívó függvénynek átadandó. További információkért lásd a Függvények használata paraméterekkel részt. |
def my_function():
brain.screen.print("Optical Sensor detected an object")
# Call my_function whenever optical_sensor detects an object
optical_sensor.object_detected(my_function)
elveszett_objektum#
object_lost regisztrál egy függvényt, amely akkor hívódik meg, amikor az optikai érzékelő elveszít egy érzékelt objektumot.
Usage:
optical_sensor.object_lost(callback, arg)
Paraméterek |
Leírás |
|---|---|
|
Egy korábban definiált függvény, amely akkor hajtódik végre, amikor az optikai érzékelő elveszít egy érzékelt objektumot. |
|
Opcionális. Egy tuple, amely argumentumokat tartalmaz a visszahívó függvénynek átadandó. További információkért lásd a Függvények használata paraméterekkel részt. |
def my_function():
brain.screen.print("Optical Sensor lost an object")
# Call my_function whenever optical_sensor loses an object
optical_sensor.object_lost(my_function)
Konstruktőr#
A konstruktorokat Optical objektumok manuális létrehozására használjuk, amelyek szükségesek egy optikai érzékelő VEXcode-on kívüli konfigurálásához.
Optical#
Optical létrehoz egy optikai érzékelőt.
Usage:
Optical(smartport)
Paraméter |
Leírás |
|---|---|
|
Az optikai érzékelőhöz csatlakoztatott intelligens port, amelyet a következőképpen írunk fel: |
# Create an Optical Sensor in Port 10
optical_sensor = Optical(Ports.PORT10)