Krāsu sensors izmanto atstaroto gaismu, lai noteiktu objekta krāsu, nokrāsas vērtību, pelēktoņu vērtību, spilgtumu un tuvumu.
VEX IQ krāsu sensors ir iekļauts VEX IQ Super Kit komplektā, un to var arī iegādāties šeit.
Vai izmantojat 2. paaudzes VEX IQ robotu? Skatiet pārskatu par 2. paaudzes sensoriem šeitun informāciju par optisko sensoru, krāsu sensora 2. paaudzes versiju.
Krāsu sensora apraksts
VEX IQ krāsu sensoram ir vairāki režīmi, kas ļauj uztvert dažāda veida informāciju no apkārtējās vides. Tā apkopoto informāciju ietekmē vides apgaismojuma apstākļi, kā arī attālums starp sensoru un objektu vai virsmu, ko tas nolasa.
Kā darbojas krāsu sensors
Krāsu sensors var noteikt gan krāsu, gan tuvumu.
Krāsu noteikšana
Spilgtuma režīmā krāsu sensors tiek izmantots, lai noteiktu visas gaismas intensitāti robota vidē. Jo vairāk gaismas sasniedz krāsu sensoru, kamēr tas ir aktīvs, jo lielāka procentuālā vērtība, kas tiek nosūtīta uz robota smadzenēm.
Ja noteiktais spilgtuma procents ir zems vai neuzticams, var ieslēgt krāsu sensora lampu vai palielināt lampas spilgtuma procentuālo daudzumu, bloķēšanai izmantojot šādu iestatīto gaismu:
Krāsu sensors var ziņot par krāsu, ko tas redz kā krāsas vērtību vai kā nokrāsas vērtību.
Krāsu vērtības.Ir norādītas 14 krāsas, kuras krāsu sensors var noteikt. Bloka attēlā trūkstošās krāsas ir sarkana, zaļa, zila, balta un dzeltena.
Nokrāsu vērtības.Nokrāsu vērtības ir līdzīgas krāsu vērtībām, taču tās ir skaitliskas. Nokrāsas vērtība svārstās no 0 līdz 360, piemēram, grādiem. Iepriekš uzskaitītajām krāsu vērtībām ir savi līdzvērtīgi toņu vērtību diapazoni.
Nosakot krāsas un nokrāsas, ir svarīgi, lai krāsu sensoram būtu pietiekams gaismas daudzums. Noteikti pārbaudiet (sauktu arī par kalibrēšanu) savu krāsu sensoru dažādos apgaismojuma līmeņos un ar dažādu līmeņu lampu, lai noteiktu, kurš ir visdrošākais iestatījums jūsu robota krāsu sensoram.
Tuvuma noteikšana
Krāsu sensors ietver infrasarkano staru sensoru-emiteri. Infrasarkanais starotājs izstaro neredzamu gaismu un pēc tam nosaka tās atspulgu. Ja lielākā daļa infrasarkanās gaismas atlec atpakaļ pret sensoru, tas paziņo robota smadzenēm, ka objekts ir tuvu.
Krāsu sensora biežākie lietojumi
Krāsu sensori tiek izmantoti daudzās tehnoloģiju lietojumprogrammās, kur ir svarīgi, lai displejos vai produktos būtu noteiktas krāsas.
Daži izplatīti lietojumi ikdienas dzīvē ietver:
- Krāsu kalibrēšanas rīki pārbauda, vai digitālais ekrāns parāda precīzas krāsas, un pēc tam pielāgojiet displeja iestatījumus pēc vajadzības. Ir svarīgi, lai grafiķi un jebkurš dizaineris, kas strādā ar krāsām uz digitālā ekrāna, varētu redzēt tieši pareizo krāsu, kas tiek parādīta. Ja krāsas nav precīzas, rodas pārpratumi un izšķiesti resursi.
- Kameras un videokameras izmanto krāsu sensorus, lai pielāgotu iestatījumus atkarībā no apgaismojuma apstākļiem, lai uzlabotu fotoattēlus un videoklipus, maksimāli palielinot apgaismojuma līmeni un uzlabojot citādi blāvas krāsas. Šie sensori arī ļauj fotogrāfam fokusēties uz konkrētām krāsām savos fotoattēlos.
- Ražošanā dažkārt izmanto krāsu sensorus, lai ātri pārbaudītu, vai produktam ir pareizā krāsa, pirms tas tiek nosūtīts klientam. Piemēram, augļus un dārzeņus, kas nogatavojušies vai gatavi ēšanai krāsojas, var skenēt, lai pārliecinātos, ka tie ir pareizajā krāsā, lai tos nosūtītu uz tirgu.
Daži izplatīti VEX IQ robota lietojumi ietver:
- Šo sensoru var izmantot, lai noteiktu objekta krāsu. Skatiet šo animāciju, lai redzētu, kā robots brauc uz priekšu, līdz krāsu sensors nosaka zaļo kubu.
- Šo sensoru var izmantot, lai noteiktu līniju un/vai sekotu tai. Skatiet šo animāciju, lai redzētu robotu, kas izmanto krāsu sensoru, lai brauktu pa iezīmētu līniju.
- Šis sensors var noteikt, vai tuvumā atrodas objekts.
Krāsu sensori uz sacensību robota
Atcerieties, ka, nosakot krāsas un nokrāsas, ir svarīgi, lai krāsu sensoram būtu pietiekams gaismas daudzums. Noteikti pārbaudiet, sauktu arī par kalibrēšanu, savu krāsu sensoru katru reizi, kad ierodaties jaunā sacensību vietā, jo dažādi gaismas līmeņi var ietekmēt jūsu krāsu sensora darbību. Pārbaudiet savu projektu ar lampu, kas iestatīta dažādos līmeņos, lai noteiktu, kurš ir visuzticamākais iestatījums jūsu robota krāsu sensoram.
Krāsu sensora apkopotā informācija ir noderīga, lai programmētu konkurētspējīgu robotu, lai tas reaģētu uz dažādiem apstākļiem. Krāsu sensors var uzlabot sacensību robotu šādos veidos:
- Tas ļauj robotam noteikt sensora tuvumā esošā objekta krāsu. Tas ir noderīgi, ja vēlaties, lai robots kārtotu dažādu krāsu objektus, piebrauktu līdz īpašas krāsas objektam vai noteiktu objektu krāsu, kad tie iet garām sensoram.
- Tas ļauj robotam noteikt, cik daudz gaismas atstarojas atpakaļ sensorā. Tas ļauj jūsu robotam braukt, līdz tas sasniedz līniju uz virsmas, vai pat sekot līnijai.
- Tas ļauj robotam zināt, vai tuvumā atrodas objekts vai virsma. Tas ir noderīgi, lai noteiktu, vai noteiktā krāsa ir nolasījums no tuvumā esoša objekta vai, iespējams, anomāls attālas virsmas vai gaismas nolasījums.
Krāsu sensora kodēšana blokos
<Found an object> bloks ir Būla reportiera bloks, kas ziņo par nosacījumu kā patiesu vai nepatiesu. Būla bloki, piemēram, <Found an object> bloki, iederas blokos ar sešstūrainu (sešpusēju) ievadi citiem blokiem.
<Found an object> Būla bloks ziņo par “true”, ja “patiess”, ja krāsu sensors nosaka objektu, un “false”, ja sensors to nedara. Lai uzzinātu vairāk par Būla blokiem, apmeklējiet rakstu palīdzība vai bloku formas un nozīme.
Šajā piemērā bloks <Found an object> tiek izmantots, lai noteiktu tuvumu kopā ar bloku [Pagaidiet], lai robots brauktu uz priekšu, līdz tiek atklāts objekts.
<Color detects> bloks ir arī Būla reportiera bloks, kas ziņo par nosacījumu kā patiesu vai nepatiesu. <Color detects> bloks ziņo par “true”, ja “true”, ja krāsu sensors nosaka atlasīto krāsu, un “false”, ja sensors nosaka jebkuru citu krāsu. Lai uzzinātu vairāk par Būla blokiem, apmeklējiet rakstu palīdzība vai bloku formas un nozīme.
Šajā piemērā bloks <Color detects> tiek izmantots kopā ar bloku [Pagaidiet, līdz], lai liktu robotam braukt uz priekšu, līdz krāsu sensors nosaka zaļu objektu. Pēc tam robots pārtrauks braukt. Tas ir parādīts pirmajā videoklipā iepriekš.
Blokā (Brightness of) tiek ziņots par krāsu sensora noteikto gaismas daudzumu. Tas ir reportieris, ko izmanto citos blokos ar apļveida atstarpēm.
Blokā (Brightness of) tiek rādīts diapazons no 0% līdz 100%.
Šajā piemērā bloks (Brightness of) tiek izmantots, lai robots noteiktu līniju un sekotu tai, kā parādīts otrajā videoklipā iepriekš.
Blokā (Hue of) tiek ziņots par krāsu sensora noteikto krāsas nokrāsu. Tas ir reportieris, ko izmanto citos blokos ar apļveida atstarpēm.
Blokā (Brightness of) tiek rādīts diapazons no 0 līdz 360.
Šajā piemērā bloks (Hue of) tiek izmantots, lai robots pārbaudītu toņu vērtību diapazonu, kas atbilst sarkanajai krāsai, un pagrieztos pa labi par 90 grādiem, ja sensors nosaka šīs vērtības. Ja tiek noteiktas citas nokrāsas vērtības, robots pagriezīsies pa kreisi par 90 grādiem.
Bloks (Hue of) var būt noderīgs, ja robotam ir nepieciešams noteikt noteiktas krāsas, kad apkārtējā apgaismojuma apstākļi var būt nekonsekventi.
Krāsu sensora kodēšana programmā Python
Piezīme.Lai Python kodētu VEX IQ (1. paaudzes) bufera slēdzi, tam jābūt savienotam ar VEX IQ (2. paaudzes) smadzenēm. VEX IQ (1. paaudzes) smadzenes neatbalsta Python.
color_3.is_near_object()
Komanda color.is_near_object ziņo par Patiesi , ja krāsu sensors nosaka objektu vai virsmu tuvu sensora priekšpusei, un Nepareizi , ja krāsu sensors objektu vai virsmu tuvu sensora priekšpusei sensors.
Piezīme:Krāsu sensora nosaukums, kas parādās komandā, atbilst nosaukumam, kas ir norādīts konfigurācijā.
drivetrain.drive(FORWARD) |
| Šajā piemērākamēr cilpa ar nosacījumu nevis tiek izmantota ar komandu color.is_near_object , lai liktu robotam braukt uz priekšu, līdz krāsu sensors nosaka objektu tuvu priekšpusei. sensors. |
krāsa_3.krāsa()
Komanda color.color ziņo par krāsu, ko pašlaik nosaka krāsu sensors.
drivetrain.drive(FORWARD) |
| Šajā piemērā cilpa, kamēr ar nosacījumu , nevis tiek izmantota ar komandu color.color , lai robots brauktu uz priekšu, līdz krāsu sensors nosaka zaļu objektu. Pēc tam robots pārtrauks braukt. Tas ir parādīts pirmajā videoklipā iepriekš. |
krāsa_3.spilgtums()
Komanda color.brightness ziņo par krāsu sensora noteikto gaismas daudzumu. Tas parāda vērtību diapazonu no 0% līdz 100%.
color_3.set_light(25, PERCENT) |
| Šajā piemērā komanda color.brightness tiek izmantota, lai robots noteiktu līniju un sekotu tai, kā parādīts otrajā videoklipā iepriekš. |
color_3.hue()
Komanda color.hue ziņo par krāsu sensora noteikto krāsas nokrāsu. Tas ziņo par nokrāsu vērtību diapazonu no 0 līdz 360.
brain.screen.print(color_3.hue()) |
|
Šajā piemērā komanda color.hue tiek izmantota, lai robots pārbaudītu toņu vērtību diapazonu, kas atbilst sarkanajai krāsai, un pagrieztos pa labi par 90 grādiem, ja sensors nosaka šīs vērtības. Ja tiek noteiktas citas nokrāsas vērtības, robots pagriezīsies pa kreisi par 90 grādiem. Komanda color.hue var būt noderīga, ja robotam ir nepieciešams noteikt noteiktas krāsas, kad apkārtējā apgaismojuma apstākļi var būt nekonsekventi. |