Difference between revisions of "Myš sledujúca čiaru - Marián Margeta a Marián Jonis"

From RoboWiki
Jump to: navigation, search
(New page: ==Cieľ projektu== Cieľom projketu, je naprorgrampvař robota ktorý na základe troch svetelných senzorov a ultrasonic senzora bude sledovať čiaru a zastane na prekážke. ==Popstup=...)
 
Line 5: Line 5:
 
Najprv sme naprogramovali simulator ktorý simuluje robota s danými senzormi. Simulovaný robot má kruhový tvar a pohybuje sa na dvoch kolesách s samostatnými motormi. Násedne sme pomocou evolučného algoritmu opakovane aplikovaného na niekoľko rôznich nastavní prostredia  vygenerovali rozhodovací strom ktorý sme následne sputili na skutočného robota a odtestovali.
 
Najprv sme naprogramovali simulator ktorý simuluje robota s danými senzormi. Simulovaný robot má kruhový tvar a pohybuje sa na dvoch kolesách s samostatnými motormi. Násedne sme pomocou evolučného algoritmu opakovane aplikovaného na niekoľko rôznich nastavní prostredia  vygenerovali rozhodovací strom ktorý sme následne sputili na skutočného robota a odtestovali.
  
[[Image:Tatrabot_coord_1.jpg|300px]]
 
 
==Simulácia==
 
==Simulácia==
 
Najprv sme odsimulovali pohyb robota. Robot je reprezentovaný tromi parametrami : vzdialenosť medzi jeho kolesami, súradnice stredu priamky medzi kolesami a smeru roobota , ktorý reprezentuje uhol voči stredu súradnicoého systému.
 
Najprv sme odsimulovali pohyb robota. Robot je reprezentovaný tromi parametrami : vzdialenosť medzi jeho kolesami, súradnice stredu priamky medzi kolesami a smeru roobota , ktorý reprezentuje uhol voči stredu súradnicoého systému.
Line 41: Line 40:
 
         }
 
         }
 
</code>
 
</code>
 +
[[Image:projekt_mouse_1.jpg|300px]] [[Image:projekt_mouse_2.jpg|300px]] [[Image:projekt_mouse_3.jpg|300px]]
 +
  
  

Revision as of 14:52, 26 May 2017

Cieľ projektu

Cieľom projketu, je naprorgrampvař robota ktorý na základe troch svetelných senzorov a ultrasonic senzora bude sledovať čiaru a zastane na prekážke.

Popstup

Najprv sme naprogramovali simulator ktorý simuluje robota s danými senzormi. Simulovaný robot má kruhový tvar a pohybuje sa na dvoch kolesách s samostatnými motormi. Násedne sme pomocou evolučného algoritmu opakovane aplikovaného na niekoľko rôznich nastavní prostredia vygenerovali rozhodovací strom ktorý sme následne sputili na skutočného robota a odtestovali.

Simulácia

Najprv sme odsimulovali pohyb robota. Robot je reprezentovaný tromi parametrami : vzdialenosť medzi jeho kolesami, súradnice stredu priamky medzi kolesami a smeru roobota , ktorý reprezentuje uhol voči stredu súradnicoého systému. public void move()

       {
           double oldX = x;
           double oldY = y;
           double oldHhead = heading;
           if (speedL == speedR)
           {
               x = x + speedL * Math.Cos(heading);
               y = y + speedR * Math.Sin(heading);
           }
           else
           {
               double R = ((speedL + speedR) * length) / ((speedR - speedL) * 2);
               double wd = (speedR - speedL) / length;
               x = x + R * Math.Sin(wd + heading) - R * Math.Sin(heading);
               y = y - R * Math.Cos(wd + heading) + R * Math.Cos(heading);
               heading += wd;
               while (heading >= (Math.PI * 2))
               {
                   heading -= (Math.PI * 2);
               }
           }
           colistion = false;
           if (hasColistion())
           {
               colistion = true;
               heading = oldHhead;
               x = oldX;
               y = oldY;
           }
       }

Projekt mouse 1.jpg Projekt mouse 2.jpg Projekt mouse 3.jpg


Zdojový kód

Zazipovaný zdorojový kód zdrojový kód projektu.

Conclusion

Záver

Video