Reaali Robootika.COM

NXT robotimaailm ja programmeerimine C-keeles

Robootika tasemetöö

Aasta lõpus robootika diplomi välja andmiseks on tarvis kontrollida õpilaste teadmisi mitmes vallas.

Ülesanded said koostatud põhimõttel, et oleksid kaetud kõik peamised programmeerimisalased võtted, andurid ja NXT.

Kokku 5 ülesannet, igas ülesandes on kaks taset, lihtsam ja keerulisem. Diplom tuleb igaühele personaalne, arvestades tehtud ülesandeid ja taset.

Eeldus: programmeerimine on tehtud NXC-keeles, BricxCC keskkonnas.

Ülesannete vabadus: Võib spikerdada, maha kirjutada, kopeerida, kasutada enda või teiste varem tehtud programme

Ülesande vastuvõtmine: Iga üks selgitab oma koodi ja programmi toimise põhimõtet.

1. Stopper

Oranž nupp käivitab stopperi, seejärel kuvatakse ekraanil info, et stopper käib. Uuesti oranži nupu vajutamine peatab stopperi ning NXT kuvab ekraanil kulunud aja.

Kolmas oranži nupu vajutus nullib stopperi ja seejärel algab protsess otsast peale – st. saab jälle käivitada stopperi.

Teine tase

Ekraanil kuvatakse stopperi numbrid täpsusega kümnendik sekundit.

NXT teeb iga 10 sekundi järel piuksu sel ajal kui stopper käib.

2. Roboti liikumine

Ehitada kõige tavalisem bot, ehk robot mis liigub ja keerab kahe vedava rattaga.

Robot peab sooritama järgmise ülesande:

  1. Liigub edasi 50cm
  2. keerab 45 kraadi paremale ümber ühe ratta ja sõidab seejärel edasi 25 cm
  3. keerab 135 kraadi paremale kohapeal ja sõidab edasi 50 cm
  4. keerab 45 kraadi paremale kohapeal ja sõidab seejärel edasi 25 cm
  5. keerab 135 kraadi paremale ümber ühe ratta ja jääb seisma.

NB! Programmis peab kasutama roboti omadusi – ratta läbimõõtu, ratastevahelist kaugust ning liikumine tuleb välja arvutada mootori pööreteks.

Teine tase

Kasutada liikumiseks ja pööramiseks alamprotseduure. Parameetritena anda ette teepikkus, pöördenurk ja pööramise iseloom (ümber ühe ratta/kahe rattaga).

3. Inimeste lugemine

Ehitada robot, mis loendab uksest sisenevaid inimesi. Vabal valikul kasutada Ultrasonic, valguse või Mindsensor IR distance andurit.

Inimesed mööduvad ca 30 cm kaugusel andurist. Inimese möödumisest annab NXT heliga märku.

Teine tase

Arvestades inimeste möödumise tihedust, kuvada ekraanil eeldatav keskmine inimeste möödumise arv:

  • tunnis - vorming: “0000” inimest
  • tööpäevas (8 tundi) - vorming: “0000” tuh. inimest
  • nädalas (5 tööpäeva) - vorming: “0000” tuhat inimest
  • aastas (240 tööpäeva) - vorming: “0,0” miljonit inimest.

4. Värviliste Lego-klotside loendamine

Ehitada robot, mis tuvastab värviandurist mööduvate klotside värvid ja loendab kokku erinevat värvi klotsid ja kuvab informatsiooni ekraanil. Kasutada ühte mootorit klotside ükshaaval läbilaskmiseks.

Teine tase

Värviklotside loendamisel saadud informatsioon salvestada massiivi ja ekraanil kuvada massiivi salvestatud informatioon.

5. Joonejärgija robot

Ehitada joonejärgija robot kasutades valgusandurit.

Teine tase

Joonejärgija robot

1) Mindsensors LineLeaderiga või

2) programmeerida ning häälestada PID-controller koos ühe valgussensoriga