Optický senzor#
Zavedení#
Optický senzor V5 detekuje barvu, jas a přítomnost blízkých objektů pomocí kombinace barevného senzoru RGB a senzoru přiblížení. Pro přesnější detekci může také využít vestavěnou LED diodu k osvětlení objektů.

Tato stránka používá jako příklad názvu optického senzoru optical_sensor V případě potřeby jej nahraďte vlastním nakonfigurovaným názvem.
Níže je uveden seznam dostupných metod:
set_light– Zapíná nebo vypíná LED diodu optického senzoru.set_light_power– Nastavuje úroveň světelného výkonu optického senzoru.is_near_object– Vrací, zda optický senzor detekuje objekt v dosahu.color– Vrací barvu detekovanou optickým senzorem.brightness– Vrátí množství světla odraženého od objektu.hue– Vrací odstín detekovaný optickým senzorem.object_detected– Registruje funkci, která má být volána, když optický senzor detekuje objekt.object_lost– Registruje funkci, která se má volat, když optický senzor ztratí objekt.
Konstruktor – Ruční inicializace optického senzoru.
Optical– Vytvoří optický senzor.
set_light#
set_light zapíná nebo vypíná LED diodu optického senzoru. To může pomoci zvýšit přesnost senzoru při detekci barev.
Usage:
optical_sensor.set_light(state)
Parametry |
Popis |
|---|---|
stát |
Zapíná nebo vypíná LED. |
# Turn on the sensor's LED
optical_sensor.set_light(LEDStateType.ON)
set_light_power#
set_light_power nastavuje jas LED diody optického senzoru. Světlo může pomoci optickému senzoru jasněji detekovat objekty a barvy.
Pokud je světlo optického senzoru vypnuté, nastavení výkonu světla nad 0 % světlo zapne.
Pokud svítí světlo optického senzoru, nastavení výkonu světla na 0 % světlo vypne.
Vyšší procento světlo zesílí. Nižší procento světlo ztlumí.
Usage:
optical_sensor.set_light_power(percent, units)
Parametry |
Popis |
|---|---|
procento |
Jas, na který se má LED dioda nastavit, jako celé číslo. |
jednotky |
Volitelné. Jednotka pro vyjádření jasu: |
# Turn on the sensor's light at half brightness
optical_sensor.set_light_power(50, PERCENT)
je_blízko_objektu#
is_near_object vrací booleovskou hodnotu, která indikuje, zda optický senzor detekuje objekt v dosahu.
True– Optický senzor detekuje objekt.False– Optický senzor nedetekuje objekt.
Usage:
optical_sensor.is_near_object()
Parametry |
Popis |
|---|---|
Tato metoda nemá žádné parametry. |
# Drive forward until an object is found
drivetrain.drive(FORWARD)
while not optical_sensor.is_near_object():
pass
drivetrain.stop()
barva#
color vrací instanci třídy Color na základě detekované hodnoty odstínu. Tyto objekty lze porovnat s předdefinovanými objekty Color a vytvořit tak podmíněné příkazy.
Možné barvy jsou:
Color.BLACKColor.WHITEColor.RED- Hodnota odstínu mezi 340° a 20°Color.GREEN- Hodnota odstínu mezi 80° a 140°Color.BLUE- Hodnota odstínu mezi 200° a 240°Color.YELLOW- Hodnota odstínu mezi 40° a 60°Color.ORANGE- Hodnota odstínu mezi 20° a 40°Color.PURPLE- Hodnota odstínu mezi 240° a 280°Color.CYAN- Hodnota odstínu mezi 140° a 200°
Poznámka: Optický senzor hledá rozsahy odstínů, které odpovídají zadané barvě. Informace o detekci konkrétních rozsahů odstínů naleznete v části hue.
Usage:
optical_sensor.color()
Parametry |
Popis |
|---|---|
Tato metoda nemá žádné parametry. |
# Drive forward until red is found
drivetrain.drive(FORWARD)
while not optical_sensor.color() == Color.RED:
pass
drivetrain.stop()
jas#
brightness vrací množství světla odraženého od objektu jako desetinné číslo (float) představující procenta.
Vyšší procento znamená, že se zpět k optickému senzoru odráží více světla. Nižší procento znamená, že se zpět odráží méně světla.
Usage:
optical_sensor.brightness()
Parametry |
Popis |
|---|---|
Tato metoda nemá žádné parametry. |
odstín#
hue vrací hodnotu odstínu detekované barvy jako desetinné číslo (float) od 0 do 359.
Odstín je způsob, jak popsat barvu pomocí čísel v barevném kruhu.

Usage:
optical_sensor.hue()
Parametry |
Popis |
|---|---|
Tato metoda nemá žádné parametry. |
# 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!")
detekovaný_objekt#
object_detected registruje funkci, která má být volána vždy, když optický senzor detekuje nový objekt.
Usage:
optical_sensor.object_detected(callback, arg)
Parametry |
Popis |
|---|---|
|
Dříve definovaná funkce, která se provede, když optický senzor detekuje nový objekt. |
|
Volitelné. N-tice tuple obsahující argumenty, které se mají předat zpětné funkci. Další informace naleznete v části Použití funkcí s parametry. |
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)
ztracený_objekt#
object_lost registruje funkci, která má být volána vždy, když optický senzor ztratí detekovaný objekt.
Usage:
optical_sensor.object_lost(callback, arg)
Parametry |
Popis |
|---|---|
|
Dříve definovaná funkce, která se provede, když optický senzor ztratí detekovaný objekt. |
|
Volitelné. N-tice tuple obsahující argumenty, které se mají předat zpětné funkci. Další informace naleznete v části Použití funkcí s parametry. |
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)
Konstruktor#
Konstruktory se používají k ručnímu vytvoření objektů Optical , které jsou nezbytné pro konfiguraci optického senzoru mimo VEXcode.
Optical#
Optical vytvoří optický senzor.
Usage:
Optical(smartport)
Parametr |
Popis |
|---|---|
|
Inteligentní port, ke kterému je připojen optický senzor, zapsaný jako |
# Create an Optical Sensor in Port 10
optical_sensor = Optical(Ports.PORT10)