Pohyb robota po čiare a zaznamenávanie vzdialenosti okolitých objektov (Dudík, Kemény)
Pohyb robota po čiare a zaznamenávanie vzdialenosti okolitých objektov
Úvod
Našou úlohou bolo naprogramovať Acrob robota tak aby sa hýbal smerom dopredu sledovaním čiary a popritom meral vzdialenosti okolitých objektov. Na sledovanie čiary sme použili dva svetelné čiarové senzory. Na zisťovanie vzdialenosti okolitých objektov sme použili IR senzor. Použili sme iba jeden senzor umiestnený na ľavom boku robota.
Zapojenie
adc_vals[0] - ľavý senzor adc_vals[1] - pravý senzor
Program po nadviazaní spojenia s počítačom pomocou bluetooth prostredníctvom programu putty reaguje na stlačenia kláves nasledovne:
p - testovacie tlačidlo, vypíše do výstupu putty "hello" i - vypíše hodnoty z poľa adc_vals od 0 po 7 w,s,a,d - ovládanie robota šípkami g - zastaví oba motory v - vypíše hodnoty senzorov na čiaru c - spustí sa nasledovanie čiary robotom
Algoritmus nasledovania čiary:
V cykle prechádza nasledovným vetvením: Ak vidí robot na oboch senzoroch svetlo ide rovno (predpokladá, že čiaru má medzi senzormi). Ak vidí na ľavom otočí sa na mieste do ľava, kým nevidí znova na oboch svetlo. Inak zistí, či je na pravom senzore tma, točí do prava, kým nevidí na oboch svetlo.
Výpis činnosti robota
Keď je spustený mód nasledovania čiary, pri každom prechode cyklom vypíše na nový riadok do programu putty jedno z písmen "r,p,l". r ak ide rovno, p - zabáča doprava, l - zabáča doľava. Po tom ako robota zastavíme, treba ručne z programu putty skopírovať celý výstup a uložiť do textového formátu (.txt).