Difference between revisions of "Acrob robot prejde bludisko, a program ďalej vizualizuje mapu bludiska na obrazovke (Michal Borčin & Barbora Zaťková)"

From RoboWiki
Jump to: navigation, search
(Vykreslenie bludiska)
(Vykreslenie bludiska)
Line 71: Line 71:
 
<li>pri spustení robot začína v čase 0 a ide rovno </li>
 
<li>pri spustení robot začína v čase 0 a ide rovno </li>
 
<li>my si chceme zapamätať iba zákruty, na ktorých sa točí dlhšie ako 0,2 sekundy, a teda krátke otočenia, ktorými sa robot iba vyrovnáva nás nezaujímajú</li>
 
<li>my si chceme zapamätať iba zákruty, na ktorých sa točí dlhšie ako 0,2 sekundy, a teda krátke otočenia, ktorými sa robot iba vyrovnáva nás nezaujímajú</li>
<li>keď robot rozpozná zákrutu dlhšiu ako 0,2 sekundy, zapíše do poľa znak P alebo L (smer otočenia), a čas, v ktorom sa začal točiť</li>
+
<li>keď robot rozpozná zákrutu dlhšiu ako 0,2 sekundy, zapíše do poľa znak P, L (smer otočenia) alebo O(značí otočenie), a tiež zapíše čas, v ktorom sa daná operácia uskutočnila</li>
 +
<li>Príklad poľa:</li>
 +
<pre>
 +
 
 +
</pre>
 
</ul>
 
</ul>

Revision as of 11:55, 25 June 2013

Úvod

  • Našou úlohou bolo skonštruovať robota Acrob, ktorý prejde celé bludisko, a počas toho zaznamenáva údaje tak, aby sa bludisko dalo vykresliť na obrazovku.

  • Robot acrob.jpg

Bludisko a zapojenie robota

Algoritmus sledovania čiary

if ((sen == 10) || (sen == 2)) //0101 a 0100
{
//rovno
LeftServo.write(95);
RightServo.write(85);
// go_straight();
}
else if ((sen == 3)||(sen == 1)) //1100 a 1000
{
//vlavo
RightServo.write(84);
LeftServo.write(88);
delay(250);
}
else if (sen==0) { //0000 -
// otoc
LeftServo.write(95);
RightServo.write(95);
}
else
{
//vpravo
LeftServo.write(95);
RightServo.write(92);
}

Ako sa náš robot pohyboval po bludisku: --VIDEO--


Vykreslenie bludiska

  • Ďalej bolo našou úlohou vykresliť prejdené bludisko na obrazovku. My sme zvolili metódu offline pomocou kábla.
  • Naša idea zapamätania bludiska

  • pri spustení robot začína v čase 0 a ide rovno
  • my si chceme zapamätať iba zákruty, na ktorých sa točí dlhšie ako 0,2 sekundy, a teda krátke otočenia, ktorými sa robot iba vyrovnáva nás nezaujímajú
  • keď robot rozpozná zákrutu dlhšiu ako 0,2 sekundy, zapíše do poľa znak P, L (smer otočenia) alebo O(značí otočenie), a tiež zapíše čas, v ktorom sa daná operácia uskutočnila
  • Príklad poľa:
  •