Dokumentci a Robotika c. trgy els feladathoz

Bag Tams, Flp Dvid, Bokros Krisztin

Feladat:

Stt cskkal jellt t kvetse valamilyen jrmvel

A jrm:

Lnctalpas meghajts, a kt oldal kln-kln meghajtott. Ezzel elrjk, hogy akr helyben is meg tud fordulni. Msik nagy elnye, hogy egyszer megcsinlni. Kt fnyrzkel segti a naviglsban, melyek az elejn tallhatak. Egymstl val tvolsguk rgztett, gy csak egy adott szlessg cskon tud vgigmenni.

A szerkezet elejn tallhat mg kt tkzs-rzkel. Ezek segtsgvel az tjba kerl akadlyokat rzkeli, s lehetsghez kpest megprblja kikerlni azt!

A tetejn tallhat lmpa azt jelzi, hogy most rajta vagyunk-e az ton vagy pp egy akadlyt kerlnk ki (ekkor villog).

 

                                

 

Mkds:

Ktfle zemmdban kpes mkdni. Az egyikben az utat kveti, a msikban pedig az akadlyt kerli ki. Errl tjkoztat minket a villog lmpa!

A program a kezdeti belltsok s a kalibrls utn elindtja a follow_track nev taszkot, amely – mint a neve is mutatja – kveti a plyt. Emellett mg az tkzst figyel taszkot (collision) is elindtja. Ez utbbi vr, amg az tkzs-szenzorok nem jeleznek neki, majd lelltja a plyakvetst, elindtja a villogst (blinking), letr a plyrl s elkezdi keresni a plyt is prhuzamusan (search_track). Ha vgre visszatalltunk a plyra, akkor lelltunk minden fut taszkot, s jra elkezdjk kvetni a plyt.

tkvet zemmd:

Gyakorlatilag a stt vonal szln halad. Kezdetben kalibrlja magt, teht gy kell rhelyezni a plyra, hogy a baloldali rzkel a stt cskon, a jobboldali pedig azon kvl legyen! Innentl a kvetkez szablyok szerint mkdik:

 

rzkelk llapota
(balo.-jobbo.)

Jrm helyzete

Teend

Stt-vilgos

Az t szln vagyunk

Haladunk tovbb egyenesen

Stt-stt

Teljesen rmentnk az tra

Jobbra fordulunk

Vilgos-stt

Az t baloldaln vagyunk

Jobbra fordulunk

Vilgos-vilgos

Letrtnk az trl

Balra fordulunk

Egszen addig folyatatja ezt, mg az tkzsrzkelk nem jeleznek! Ekkor vlt t akadly-kikerl zemmdra.

 

Akadly-kikerl zemmd:

Amint nekitkzik egy akadlynak tvlt akadly-kikerl zemmdra, amit addig folytat, amg az rzkelk kt stt rszre nem futnak (ez elbb-utbb nagy valsznsggel bekvetkezik, lsd az algoritmust). Elszr htra tolat egy kicsit, majd jobbra fordul kb. 90 fokot. Azrt csak kb., mert a forduls mrtke idben van meghatrozva, ami elg pontatlan. Egyrszt a lass adatfeldolgozs, msrszt a plya egyenetlensge s a mechanikus alkatrszek nem-determinisztikus viselkedsbl kifolylag. Ezutn elre halad egy elre megadott ideig, majd balra fordulva megprblja kikerlni az akadly. Ha ez nem sikerl (nekimegy a falnak), akkor visszatolat, jobbra fordul (kb. 90 fokot), elre megy s egy elre belltott id mlva ismt megksrli az akadly melletti elhaladst. Ezt addig ismtelgeti, mgnem sikeresen elhaladt az akadly mellett. Persze ha idkzben visszatall az tra, akkor lell ez az zemmd! Most megprbl visszatrni a plyra, szintn az elbb ismertetett mdon. Azaz elre megy, jobbra fordul, elremegy, ha akadlyba tkzik, visszafordul,… Ha mr megtallta a plyt, akkor mindkt rzkel a plya felett fog llni, ezrt a plyakvets jbli elindtsakor balra fog kanyarodni, ami pp a megfelel irny.

A forrskdbl mindez sokkal vilgosabban ltszik!

 

Letlthet anyagok:

Vide a plyakvetsrl

Vide az akadly-kikerlsrl

Kommentezett NQC-forrskd