Optiskais sensors#
Ievads#
V5 optiskais sensors nosaka tuvumā esošo objektu krāsu, spilgtumu un klātbūtni, izmantojot RGB krāsu sensora un tuvuma sensora kombināciju. Tas var arī izmantot iebūvēto LED gaismu, lai apgaismotu objektus precīzākai noteikšanai.

Šajā lapā kā optiskā sensora nosaukuma piemērs tiek izmantots optical_sensor Ja nepieciešams, nomainiet to ar savu konfigurēto nosaukumu.
Zemāk ir pieejamo metožu saraksts:
set_light– Ieslēdz vai izslēdz optiskā sensora gaismas diodi.set_light_power– Iestata optiskā sensora gaismas jaudas līmeni.is_near_object– Atgriež, vai optiskais sensors uztver objektu diapazonā.color– Atgriež optiskā sensora noteikto krāsu.brightness– Atgriež no objekta atstarotās gaismas daudzumu.hue– Atgriež optiskā sensora noteikto nokrāsu.object_detected– Reģistrē funkciju, kas jāizsauc, kad optiskais sensors nosaka objektu.object_lost– Reģistrē funkciju, kas jāizsauc, kad optiskais sensors pazaudē objektu.
Konstruktors — manuāla optiskā sensora inicializācija.
Optical– Izveido optisko sensoru.
iestatītā_gaisma#
set_light ieslēdz vai izslēdz optiskā sensora LED indikatoru. Tas var palīdzēt palielināt sensora precizitāti, nosakot krāsas.
Usage:
optical_sensor.set_light(state)
Parametri |
Apraksts |
|---|---|
štats |
Ieslēdz vai izslēdz LED. |
# Turn on the sensor's LED
optical_sensor.set_light(LEDStateType.ON)
iestatīt_gaismas_jaudu#
set_light_power iestata optiskā sensora gaismas diodes spilgtumu. Gaisma var palīdzēt optiskajam sensoram skaidrāk noteikt objektus un krāsas.
Ja optiskā sensora gaisma ir izslēgta, gaismas jaudas iestatīšana virs 0% ieslēgs gaismu.
Ja optiskā sensora gaisma ir ieslēgta, gaismas jaudas iestatīšana uz 0% izslēgs gaismu.
Augstāks procentuālais daudzums padara gaismu spilgtāku. Zemāks procentuālais daudzums padara gaismu blāvāku.
Usage:
optical_sensor.set_light_power(percent, units)
Parametri |
Apraksts |
|---|---|
procenti |
Gaismas diodes spilgtums, kas jāiestata kā vesels skaitlis. |
vienības |
Pēc izvēles. Spilgtuma attēlošanas mērvienība: |
# Turn on the sensor's light at half brightness
optical_sensor.set_light_power(50, PERCENT)
ir_objekta_tuvumā#
is_near_object atgriež Būla vērtību, kas norāda, vai optiskais sensors uztver objektu diapazonā.
True— optiskais sensors nosaka objektu.False– Optiskais sensors neuztver objektu.
Usage:
optical_sensor.is_near_object()
Parametri |
Apraksts |
|---|---|
Šai metodei nav parametru. |
# Drive forward until an object is found
drivetrain.drive(FORWARD)
while not optical_sensor.is_near_object():
pass
drivetrain.stop()
krāsa#
color atgriež Color class instanci, pamatojoties uz noteikto nokrāsas vērtību. Tos var salīdzināt ar iepriekš definētiem Color objektiem, lai izveidotu nosacījuma paziņojumus.
Iespējamās krāsas ir:
Color.BLACKColor.WHITEColor.RED— nokrāsas vērtība no 340° līdz 20°Color.GREEN— nokrāsas vērtība no 80° līdz 140°Color.BLUE— nokrāsas vērtība no 200° līdz 240°Color.YELLOW— nokrāsas vērtība no 40° līdz 60°Color.ORANGE— nokrāsas vērtība no 20° līdz 40°Color.PURPLE— nokrāsas vērtība no 240° līdz 280°Color.CYAN— nokrāsas vērtība no 140° līdz 200°
Piezīme: Optiskais sensors meklē nokrāsu diapazonus, kas atbilst norādītajai krāsai. Lai noteiktu konkrētu nokrāsu diapazonus, skatiet hue.
Usage:
optical_sensor.color()
Parametri |
Apraksts |
|---|---|
Šai metodei nav parametru. |
# Drive forward until red is found
drivetrain.drive(FORWARD)
while not optical_sensor.color() == Color.RED:
pass
drivetrain.stop()
spilgtums#
brightness atgriež no objekta atstarotās gaismas daudzumu decimāldaļā (float), kas apzīmē procentus.
Augstāks procentuālais daudzums nozīmē, ka uz optisko sensoru tiek atstarots vairāk gaismas. Zemāks procentuālais daudzums nozīmē, ka uz optisko sensoru tiek atstarots mazāk gaismas.
Usage:
optical_sensor.brightness()
Parametri |
Apraksts |
|---|---|
Šai metodei nav parametru. |
nokrāsa#
hue atgriež noteiktās krāsas nokrāsas vērtību decimālskaitļa veidā (float) no 0 līdz 359.
Nokrāsa ir veids, kā aprakstīt krāsu, izmantojot skaitļus ap krāsu apli.

Usage:
optical_sensor.hue()
Parametri |
Apraksts |
|---|---|
Šai metodei nav parametru. |
# 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!")
objekts_atklāts#
object_detected reģistrē funkciju, kas tiks izsaukta ikreiz, kad optiskais sensors atrod jaunu objektu.
Usage:
optical_sensor.object_detected(callback, arg)
Parametri |
Apraksts |
|---|---|
|
Iepriekš definēta funkcija, kas tiek izpildīta, kad optiskais sensors nosaka jaunu objektu. |
|
Neobligāti. Tuple, kas satur argumentus, kas jānodod atzvanīšanas funkcijai. Plašāku informāciju skatiet sadaļā Funkciju izmantošana ar parametriem. |
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)
objekts_pazaudēts#
object_lost reģistrē funkciju, kas tiks izsaukta ikreiz, kad optiskais sensors pazaudē noteiktu objektu.
Usage:
optical_sensor.object_lost(callback, arg)
Parametri |
Apraksts |
|---|---|
|
Iepriekš definēta funkcija, kas tiek izpildīta, kad optiskais sensors pazaudē noteiktu objektu. |
|
Neobligāti. Tuple, kas satur argumentus, kas jānodod atzvanīšanas funkcijai. Plašāku informāciju skatiet sadaļā Funkciju izmantošana ar parametriem. |
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)
Konstruktors#
Konstruktori tiek izmantoti, lai manuāli izveidotu Optical objektus, kas ir nepieciešami optiskā sensora konfigurēšanai ārpus VEXkoda.
Optical#
Optical izveido optisko sensoru.
Usage:
Optical(smartport)
Parametrs |
Apraksts |
|---|---|
|
Viedports, kuram ir pievienots optiskais sensors, tiek pierakstīts kā |
# Create an Optical Sensor in Port 10
optical_sensor = Optical(Ports.PORT10)