Viivanseuraaja zigzag ev3-g
<languages />
<translate>
Johdanto
Zigzag-viivanseuraaja on kenties yksinkertaisin viivanseuraaja, mutta senkin saa sopivilla parametrien arvoilla kulkemaan hyvin nopeaan.
Robotti
Koodi toimii melkein missä vain, mutta esimerkki on tehty Asimoville.
Anturit
Tämä tarvitsee värianturin.
Esimerkkivideo
Puuttuu vielä.
Teoriaa
Esimerkkikoodi tutkii, onko värianturin alla mustaa vai valkoista. Jos se on mustaa, se kääntyy vasemmalle ja jos se on valkoista, käännytään oikealle. Se toteutetaan ehto eli IF-lausekkeella. Moottorin ohjauksessa kannattaa käyttää Move Steering -lohkoa eli rattilohkoa. Huomaa, että lohkon laitetaan ON-asentoon, jotta koodin suoritus siirtyy heti tutkimaan mikä väri on anturin alla.
-
If-lausekkeessa on paljon erilaisia vaihtoehtoja.
-
Silmukka on monipuolinen härpäke.
Yleensä aluksi vauhtia kannattaa olla hyvin vähän, jotta ehdit näkemään mitä koodissa tapahtuu ja mitä robotti tekee. Siksi tämäkin robotti kulkee hyvin hitaasti.
Usein kannattaa laittaa harjoituskoodi tulostamaan ääniä, jotta paremmin saat selville missä kohtaa koodin suoritusta tapahtuu mitäkin. Siksi alla olevassa koodissa on äänet.
Alla oleva koodi käyttää moottoreita A ja D, mikä on oikeasti huono asia. Yleensä ajomoottoreihin kannattaa laittaa moottorit B ja C, koska se toimii paremmin.
Esimerkkikoodi
Zigzag-viivanseuranta EV3-G-koodauskielellä.
Tehtäviä
1. Poista äänet koodista.
2. Laita robotti kulkemaan nopeammin. Huomaa, että kun muutat nopeutta, saatat joutua muuttamaan kääntösädettä. Yleensä kannattaa muuttaa vain yhtä asiaa kerralla (vaikka sitten molempiin suuntiin). Mittaa aika radallasi, ja yritä puolittaa alkuperäinen aikasi.
3. Kirjoita koodi uudestaan, mutta käske sen kulkea toisella puolen viivaa.
4. Muuta koodi sellaiseksi, että se pysähtyy kun oikea rengas on kierähtänyt 3,5 kierrosta. Sitä varten muuta silmukan ääretönmerkkiö
5. Muuta lopetusehto siten että robottisi pysähtyy kohdatessaan hopeateipin.
6. Rescue-pelissä robotin pitää osata kulkea viivaa pitkin vaikka viivan suorasta osasta puuttuu pätkä. Tällöin se kulkee suoraan vähän matkaa, kunnes löytää viivansa uudestaan. Tee koodi, mikä osaa selvittää yhden aukon rescue-kentän.
</translate>