Elektronika

Odpravljanje težav s senzorji VEX IQ (2. generacija)

Kadar se robot ne obnaša kot je predvideno pri uporabi povratnih informacij senzorjev, lahko sledite postopnemu postopku odpravljanja težav, da poiščete in odpravite težave. Ta članek pojasnjuje korake postopka odpravljanja težav in nudi nasvete za njihovo uporabo.

Koraki tega postopka so:

  1. Prepoznajte težavo

  2. Preverite strojno opremo

  3. Preverite programsko opremo

  4. Analizirajte in uporabite podatke


Prepoznajte težavo

Prvi korak pri odpravljanju težav s senzorjem je prepoznati, kateri senzor povzroča težavo. Primerjajte opaženo obnašanje robota z načrtovanim obnašanjem. Ali je težavno obnašanje posledica delovanja senzorja? Če je tako, kateri senzor je vzrok? Če potrebujete več informacij, da ugotovite, kateri senzor je morda problematičen, preberite spodnje članke, ki se nanašajo na senzorje vašega robota.

Senzorji VEX IQ (2. generacija):

Ko prepoznate, kateri senzor povzroča nenamerno obnašanje, lahko nadaljujete s postopkom.


Preverite strojno opremo

Drugi korak je preverjanje strojne opreme robota, da zagotovite pravilno delovanje senzorja. Vsak od naslednjih vidikov strojne opreme bi lahko vplival na delovanje vašega senzorja.

Preverite namestitev senzorja

Simple Clawbot build driving on a field. The robot has an attached Optical Sensor that is highlighted and pointing towards a Red Cube in front of it.

Najprej si oglejte, kje je senzor nameščen na robotu. Ali je senzor zakrit s čim, na primer z drugim delom robota? Zagotovite, da ima senzor dovolj prostora za delovanje, kot je predvideno.

Kot je prikazano tukaj, ima optični senzor neoviran vidni kot do predmeta, ki ga mora zaznati.

Preverite priključitev senzorja

Brain screen is shown in the Devices menu with a Touch LED device selected.

Preizkusite delovanje senzorja tako, da si ogledate podatke, prikazane na zaslonu naprav (Devices Screen) na VEX IQ (2. generacija) Brain. To vam pomaga preveriti, ali je senzor priključen in deluje.

Za dostop do zaslona naprav sledite korakom v tem članku.

Diagram of a (2nd gen) Brain connected to a (2nd gen) Distance Sensor.

Ko je zaslon naprav odprt, preverite, ali senzor poroča podatke.

Če ne, se prepričajte, da so senzorji pravilno priključeni. Pri priključevanju senzorjev bi morali slišati klik, ko se zaponka senzorja popolnoma zaskoči v priključek.

Poskusite lahko tudi zamenjati senzor z drugim, da preverite, ali to odpravi vašo težavo.

Če ste spremenili kaj v zvezi z namestitvijo ali priključitvijo senzorja, znova preizkusite projekt, da preverite, ali je bila težava odpravljena. Če namestitev in priključitev senzorja nista bili spremenjeni, nadaljujte z naslednjim korakom postopka odpravljanja težav.


Preverite programsko opremo

Ko ste preverili, da je senzor pravilno nameščen in priključen na robota, si oglejte projekt v VEXcode IQ. Iterativno izboljševanje projekta vam pomaga zagotoviti, da se podatki senzorja v projektu učinkovito izkoriščajo. Naslednje strategije vam lahko pomagajo pri programiranju senzorja.

Če v projektu VEXcode IQ uporabite katero koli od teh strategij, znova preizkusite projekt, da preverite, ali je bila težava odpravljena.

Preverite vdelano programsko opremo in konfiguracijo

VEXcode IQ with a connected Brain and the Brain dropdown menu opened, indicating that it can be used to check the Brain's firmware. The VEXos version is listed as 1.0.4 and there is no Update button shown.

Najprej se prepričajte, da je vdelana programska oprema vašega IQ Brain posodobljena.

Za več informacij o posodabljanju vdelane programske opreme na IQ (2. generacija) Brain v aplikacijskem VEXcode IQ si oglejte ta članek.

Za več informacij o posodabljanju vdelane programske opreme na IQ (2. generacija) Brain v spletnem VEXcode IQ si oglejte ta članek.

VEXcode IQ Devices menu with a long list of connected devices shown. This menu can be used to make sure each sensor is connected properly, and to check its specific port on the Brain.

Ko ste se prepričali, da so vse naprave pravilno priključene na Brain, preverite konfiguracijo naprav v VEXcode IQ.

Preverite, ali so v konfiguraciji prisotni vsi senzorji. Nato preverite, ali je vsak priključen na pravilen priključek.

Popravite morebitne napačne konfiguracije naprav.

Zaženite vzorčni projekt

VEXcode Blocks Example Projects menu with a variety of projects across different categories to choose from. The Sensing category is highlighted.

Odprite vzorčni projekt, ki uporablja senzor, pri katerem odpravljate težave. Za filtriranje vzorčnih projektov izberite kategorijo »Sensing«.

Za več informacij o vzorčnih projektih in predlogah IQ Blocks si oglejte ta članek.

Za več informacij o vzorčnih projektih in predlogah IQ Python si oglejte ta članek.

Za več informacij o vzorčnih projektih in predlogah IQ C++ si oglejte ta članek.

VEXcode IQ with an Example Project opened from the Sensing category, including a stack of code blocks and a note with a description of the project. The note is highlighted.

Ko je projekt odprt, preberite opombo (Note), da ugotovite, ali je funkcionalnost vzorčnega projekta skladna s tem, kar želite doseči s senzorjem.

V prikazanem vzorčnem projektu opomba navaja, da se senzor razdalje uporablja za zaznavanje predmeta, tako da robot preneha z vožnjo, ko doseže predmet.

Zaženite vzorčni projekt in opazujte obnašanje robota. Nato si oglejte projekt, da ugotovite, kako se podatki senzorja uporabljajo za povzročanje opaženih obnašanj. Vzorčni projekt boste morda želeli zagnati večkrat, da si bolje pomagate.

Morda boste želeli ustvariti lastni poenostavljeni projekt, v katerem boste uporabili znanje, pridobljeno iz vzorčnega projekta.

Uporabite druga orodja VEXcode IQ

Na voljo so tudi orodja in strategije, ki vam pomagajo pri učenju programiranja senzorja v VEXcode IQ. Z uporabo pomoči (Help) se lahko posamično naučite o blokih ali ukazih v orodjarni (Toolbox). Podatke senzorja si lahko ogledate tudi med izvajanjem projekta, da bolje razumete, kaj senzor poroča.

VEXcode IQ with the Help menu opened and the Drive heading block selected. Descriptions of the block and how it can be used are shown along with images of example uses.

Pomoč (Help)

Preberite pomoč za bloke ali ukaze v vzorčnem projektu oziroma v svojem projektu, da se naučite o podatkih, ki se uporabljajo, katere vrednosti bo ukaz poročal, in si ogledate primere uporabe ukaza v projektu.

Si oglejte ta članek za več informacij o dostopu do pomoči v VEXcode IQ Blocks.

Si oglejte ta članek za več informacij o dostopu do pomoči v VEXcode IQ Python.

Si oglejte ta članek za več informacij o dostopu do pomoči v VEXcode IQ C++.

Izpisovanje podatkov

Podatke senzorja lahko izpisujete tudi med izvajanjem vzorčnega projekta ali svojega projekta, da bolje razumete, kaj senzor poroča v realnem času. To vam pomaga določiti, katere poročane vrednosti senzorja uporabiti kot parametre v projektu.

Upoštevajte, da je v projektu Blocks mogoče uporabiti ločen blok {When started} za organiziranje vseh ukazov za izpisovanje v svoji lastni skladi.

VEXcode IQ Blocks
VEXcode IQ blocks project that uses a When started hat block to print sensor data live while the project is running. The project has a When started block followed by 4 blocks in a Forever loop. In the loop, first there is a comment block that reads Print the Inertial sensor roll value on the brain, and then go to the next row. Next, a Print block reads print BrainInertial orientation of roll on Brain and set cursor to next row. Next, a comment block reads Wait to print the value, then repeat the loop. Lastly, a Wait block reads wait 0.1 seconds.
VEXcode IQ Python
while (True):
VEXcode IQ C++
int main() 

Izpisovanje na IQ Brain je koristno, kadar želite videti spreminjajoče se vrednosti med izvajanjem projekta VEXcode IQ. To vam pomaga določiti, katere poročane vrednosti senzorja uporabiti kot parametre v projektu. Ti ukazi za izpisovanje so lahko vdelani v že ustvarjen projekt VEXcode IQ, tako da si med gibanjem robota ogledate vrednosti senzorja ob določenih trenutkih.

Zgornji vzorčni projekti prikazujejo, kako izpisati vrednosti inercijskega senzorja na IQ Brain. Komentarji v vsakem projektu pojasnjujejo potek projekta in uporabo posameznih ukazov.

VEXcode IQ BlocksVEXcode IQ Python

VEXcode IQ blocks project that uses a When started hat block to print sensor data live while the project is running. The project has a When started block followed by 4 blocks in a Forever loop. In the loop, first there is a comment block that reads Print the distance sensor value on the Console, and then go to the next row. Next, a Print block reads print Distance5 object distance in mm on Console and set cursor to next row. Next, a comment block reads Wait to print the value, then repeat the loop. Lastly, a Wait block reads wait 0.1 seconds.

while (True):
VEXcode IQ C++
int main() 

Izpisovanje v konzolo za izpis (Print Console) v VEXcode IQ je priporočljivo, kadar izvajate projekt VEXcode IQ, pri katerem se robot NE premika. Med izvajanjem projekta mora biti IQ Brain ves čas priključen, da se izpisovanje v konzolo za izpis izvaja pravilno. To je koristno, ker lahko vrednosti berete v oknu VEXcode IQ namesto na zaslonu Brain.

Ti primeri prikazujejo projekt, ki izpisuje podatke senzorja razdalje (2. generacija) v konzolo v VEXcode IQ.

Za več informacij o uporabi konzole za izpis v VEXcode IQ Blocks si oglejte ta članek.

Za več informacij o uporabi konzole za izpis v VEXcode IQ Python si oglejte ta članek.


Analizirajte in uporabite podatke

V naslednjem koraku uporabite znanje, pridobljeno v prejšnjih korakih, za prilagoditev prvotnega projekta. Za učinkovito uporabo senzorja pri doseganju svojega cilja lahko še naprej uporabljate orodja, kot sta pomoč in izpisovanje podatkov.

Postavljate si lahko tudi vprašanja o projektu, ki vam pomagajo napredovati. Razmislite o naslednjem:

  • Ali v projektu uporabljate večje kot < ali manjše kot >? Ali simbol kaže v pravo smer? Če uporabljate enako =, poskusite zamenjati z večje kot ali manjše kot, da uporabite obseg vrednosti.

  • Ali so vaši parametri pravilni? Ali za nastavljanje parametrov uporabljate podatke senzorja? Ali ste v spustnem meniju izbrali pravilno možnost?

  • Ali pogoje preverjate večkrat? Poskusite v projekt dodati zanko Forever, da se pogoj pri izvajanju projekta preverja večkrat zaporedoma.

  • Ali se projekt zaustavi? Ali so pogoji pravilno nastavljeni? Če uporabljate gnezdene zanke, poskusite poenostaviti projekt, da izolirati posamezna obnašanja.

  • Ali pogoji v okolju vplivajo na senzor? Ali je preveč svetlo ali pretemno? Ali so na poti predmeti ali osebe? Poskusite projekt zagnati na drugem mestu in preverite, ali to pomaga.

  • Ali izvajate najnovejšo različico projekta? Ali ste posodobljeni projekt prenesli na Brain? Poskrbite, da projekt vsakič znova prenesete, ko naredite spremembo.

  • Ali zaznavate pravilno barvo? Ali senzor poroča drugačno barvo, kot je navedena v projektu? Poskusite spremeniti parameter barve ali uporabiti obseg vrednosti odtenka in preverite, ali to pomaga.

  • Ali zaznavate predmet znotraj vidnega polja senzorja? Upoštevajte, da se vidno polje premika skupaj z gibanjem robota.

  • Ali pri preverjanju pogoja uporabljate blok z čakanjem? Pri preverjanju pogoja v projektu se prepričajte, da uporabljate bloke brez čakanja. Si oglejte ta članek za več informacij o blokih z čakanjem in brez čakanja v VEXcode IQ.

  • Če programirate z bloki, ali je celotna sklada priključena na blok {When started}? Bloki se izvajajo le, ko so medsebojno povezani. Ko povlečete bloke in jih povezujete, poslušajte za zvok klika.

Ko odgovarjate na ta vprašanja, vsakič spremenite le eno stvar v projektu, jo preizkusite in ocenite, ali je bila sprememba učinkovita. Pogosto preizkušanje projekta vam pomaga lažje razumeti, kako je vaša koda povezana z obnašanjem robota.  Morda boste morali korake v postopku odpravljanja težav večkrat ponoviti, da rešite težavo, in to je v redu. Vsaka iteracija vam bo pomagala bolje spoznati senzor, ki ga uporabljate, in kako ga programirati v VEXcode IQ.

Spletna trgovina

Potrebujete dodatne dele?

Originalni VEX deli, razširitveni seti in kompleti — vse za vaš naslednji robotski projekt na trgovina.robotech.si.

Pripravil RoboTech STEM Center
Stopite v stik

Imate
vprašanje?

Pišite nam — odgovorimo v najkrajšem možnem času.

Vaši podatki so varni in zaupni.