pátek 20. března 2009

Stav projektu k 20.3. 2009

Tak robot už je víceméně pohromadě. Proběhly první jízdní testy a přišlo se na závažné mouchy. Tak předně se robot nebyl schopný otočit na místě. A nebylo to jednou chybou, ale šlo o synergii chyb několika.

Předně byla chyba v programu a to v kódu modulu MotorControl. Byl špatně nastavený režim PWM. Místo režimu, kdy TOP odpovídá ICR1 tam byl 10 bitový režim. Takže místo 2500 byl vrchol čítače 1024, což znamená, že to muselo přetékat... Moc nechápu jak to mohlo fungovat, ale na stole se prostě chyba neprojevila, regulátor si s tím nějak poradil.

Druhý problém vězí v použitém h-můstku L298. Při proudu kolem 2A je na něm úbytek téměř 4V. To jsem bohužel zjistil až teď. S tímto budičem jsem pracoval už dřív, ale ne s takovými proudy a tak se tato nepříjemná vlastnost neprojevila. Pokusně jsme ji odstranili napájením robota z laboratorního zdroje cca 16 volty - čili na motorech pak bylo napětí 12V a robot se točil jak o život (ale jen chvíli - než zapůsobila ochrana proti přehřátí v L298). Zrovna teď pracuju na návrhu DPS nového modulu, tentokrát s unipolárními budiči L6203. Až bude hotový, dám sem opět schéma a DPS.

Při testování se naštěstí vyskytly i pozitivní okamžiky. Nechali jsme robota ujet rovně 750 cm a výsledek z odometrie byl 740 cm, což mi nepřipadá jako úplně špatné. Kolega má už také dobře zpracované ovládání joystickem. Funguje to opravdu perfektně.







středa 11. března 2009

Stav projektu k 11.3. 2009

Elektronika už má většinu plánované funkčnosti. Z těch podstatných věcí, které by měla umět a zatím neumí jsou to: ujet zadanou vzdálenost rovně, otočit se o daný úhel (na to je potřeba dopsat obsluhu pro kompas). Řídicí program v PC se už také rýsuje. Nyní je v něm možné ručně poslat paket vybraného typu a sledovat odpověď. V nejbližší době přibude pravidelné čtení dat z pohonů a ze senzorů. V další fázi pak bude možné ručně vytvořit mapu a budeme pracovat na tom, aby se v ní robot dokázal pohybovat. Tomu ale musí předcházet montáž modulů a senzorů na podvozek. Nyní je vše pro testovací účely řešeno systémem vrabčí hnízdo.


Na fotce níže jsou k vidění dva moduly MotorControl. Na jednom z nich je bohužel už třetí atmega8. Pokaždé odešel pin OC1B (nebo A, teď nevím). Poprvé to bylo zřejmě díky nepořádku na stole (vznikl nějaký šlus), podruhé z neznámého důvodu. Pro jistotu jsem na všechny cesty mezi procesor a budič L298 umístil ochranné odpory 1k. Uvidíme, teď už snad procesor vydrží.


Na fotce níže je lcd zobrazující stav levého předního motoru. RS značí požadovanou rychlost, AS aktuální, LO zátěž motoru v procentech (činitel pwm), TM teplotu, CU proud motorem a DI ujetou vzdálenost. Jakmile bude elektronika nějak rozumně upevněná na podvozku, provedeme testy k určení přesnosti odometrie. Výsledky měření na stole vypadají zatím dobře :-)


Níže displej zobrazující statistiky komunikace s podřízenými moduly. SE je počet odeslaných paketů, RE značí počet přijatých, FE počet chyb rámce, BR počet špatně přijatých paketů (chyba CRC), TO počet timeoutů při příjmu a SY je počet chyb synchronizace.




neděle 8. března 2009

Stav projektu k 6.3. 2009

Dnes jen stručně. Poslední z nezbytných modulů - SensMod je téměř hotový. Už se umí postarat o ultrazvuk i infračervená čidla - obojí kupodivu ukazuje téměř shodné hodnoty. Teď mě ještě čeká dopsání obsluhy pro kompas, který budeme používat pro otočení robotu o zadaný úhel. V souvislosti s kompasem - zatím počítáme s tím, že robot bude jezdit rovně a zatáčet o 90˚. Důvod je prostý - odometrie.

Zdrojový kód je, jako obvykle, na cvs, ale není to žádný zázrak. Na wiki projektu je již popsán způsob, jakým se PC dostane k údajům ze senzorů, zbývá ještě doplnit popis komunikace mezi MainMod a SensMod (je to ale téměř stejné).


Dále kolega zahájil práci na řídicím programu a provedli jsme nějaké testy komunikace mezi PC a elektronikou. Vše už je tedy téměř připraveno na první "jízdní" testy. Nejvíce práce zřejmě dá umístění všech senzorů a desek na podvozek :-)

Zatím to vypadá, že pro (budoucí) bezdrátové spojení použijeme XBee, právě studuju možnosti.