Robotika speci

Kápolnás György
Kondor Viktor
Rideg Balázs
Sasvári Antal

2. feladat (körbejáró)

A robot érdekessége, hogy az RCX-ben semmlyen program nincs, teljesen a központi gép vezérli, Delphibõl, a spirit.ocx modul segítségével. A Delphi-program kapcsolgatja a motorokat, és kérdezi le az érzékelõket. Ehhez elõször nagy hatótávolságura kellett állítani az RCX infraadóvevõjét a megfelelõ spirit-függvénnyel.
A robot alvázát az elõzõ csoporttól kölcsönöztük, így a kettõs differenciálmü segítségével történik a meghajtás és a fordulás.
Elõl egy nyomásérzékelõ, bal oldalon pedig egy fényérzékelõ található. Két oldalt kis kerekek találhatók, ezek segítik, hogy "hozzásimuljon" a falhoz, azaz teljesen beálljon a fal irányába. A cél, hogy feltérképezze az õt körülvevõ "szoba" (vagy dobozok) határát, és ezt a monitorra rajzolja ki. Csak merõleges kanyarulatokat ismer fel. Indításkor úgy kell elhelyezni, hogy a bal oldali fényérzékelõ a fehér falnál legyen. Ekkor halad elõre, míg az elülsõ nyomásérzékelõ be nem nyomódik, vagy a bal oldali fényérékelõ el nem hagyta a fehér falat. Ha a fényérzékelõ hagyta el a falat, akkor balra kell fordulni. Visszatolat egy keveset, majd 90+epszilon fokot fordul balra egyhelyben, és elindul elõre. Az oldalsó kerekek miatt beáll a fallal egy irányba, és így halad tovább. A képernyõre ekkor kirajzolódik a fordulás elõtti egyenes szakasz képe. Ha a fényérzékelõ még falat lát, de az elsõ nyomásérzékelõ benyomódott, akkor beértünk egy sarokba, jobbra kell fordulni. Kirajzolódik az eddig megtett egyenes szakasz képe, kicsit megint visszatolat, majd 90-epszilon fokot fordul jobbra, így mikor elindul, "nekimegy" a falnak, majd az oldalsó kis kerekek segítségével hozzásimul.
Akkor áll le, ha a kiindulási hely epszilon sugarú környezetébe visszaér. Ha nem, ciki van, spirált kezd el rajzolni :-)