9:20 perckor kezdődött a Robolab 2 tárgy első foglalkozása az informatika épület 25 gépes géptermében (minden gépben i7-es processzor van és 22"-es monitor tartozik hozzá). Legózunk. 2 fős csapatokat alkottunk, csapattársam a kolumbiai Kamilo lett. Sajnos kicsit nehéz érteni a sajátos kolumbiai-spanyol akcentusa miatt, de legalább programozni tud:) Minden csoport kapott egy 500 darabos készletnyi LEGO NXT-t, amit később boldogan haza is hoztam. A két német tutor ismertette a feladatot és megmutatta a készletet és hogy hogyan programozhatóak az ún. téglák. Ezek az eszközök mikrokontroller alapú grafikus kijelzővel rendelkező eszközök, melyekhez internet kábelhez hasonló drótokkal csatlakoztathatóak a szervomotorok és szenzorok. Saját operációs rendszere van, amivel a rátöltött programokat is kezelni tudja, de irányítható bluetoothon keresztül is. Vennem kell egy NXT-t :D
A feladatot csak elnagyoltan ismertetem, mert hosszú. Adott egy 8x8-as négyzetháló, aminek bármelyik képzeletbeli vonalára tehető egy valódi fekete vonal, úgy, hogy összefüggjön valamelyik másikkal. Ezek alkothatnak elágazásokat is. Ezen a pályán kell végig mennie a robotnak úgy, hogy nem ismeri a pályát és
-érinti az összes vonalat
-ha lehet, ne menjen át ugyanazon a vonalon kétszer
-találjon meg a pályán elhelyezett 3 akadályt és jelezzen
-kerülje ki azokat
-miután az összeset megtalálta, a lehető legrövidebb úton térjen vissza a kiindulási ponthoz
Miután összeraktam a robot első verzióját, ebédeltünk a régi menzán, ahol egy hatalmas adag gyrostálat kértem, majd elindultam hazafelé. Itthon szigszalag pályát készítettem, amihez rögtön programot is írtam, hogy a robot (egy darab!) fényérzékelő szenzorával követni tudja a pályát, később pedig egy PID (arányos integráló differenciáló) algoritmussal is kiegészítettem, így nem csak finomabban tudja követni a pályát, de képes megtalálni az új vonalat ha egy vonal végére ér, vagy ha nem találja, akkor visszafordul. Ám ez még csak a feladat eleje, az "analóg" része, ezután jön a matematikai algoritmus írás, melyhez el kell (kéne) mélyednem a dinamikus programozás rejtelmeiben (melyet még soha nem tanultam). A következő feladat az elágazás felismerés. Nem könnyű.