Difference between revisions of "Robot constructs a map of a maze - Adam Bilisics"

From RoboWiki
Jump to: navigation, search
(Skenovanie objektov - vytváranie mapy)
(Video robotnacky)
 
(4 intermediate revisions by the same user not shown)
Line 7: Line 7:
 
[[Image:Robotnacka.png]]
 
[[Image:Robotnacka.png]]
  
== Tu môžete vidieť príklad mapy  ==
+
== Tu môžete vidieť príklad ako korytnačka mapuje ==
  
 
Ukážka programu ktorý zobrazuje mapu vytvorenú senzormi a simulátor v ktorom sa "skutočná" korytnačka hýbe<br>
 
Ukážka programu ktorý zobrazuje mapu vytvorenú senzormi a simulátor v ktorom sa "skutočná" korytnačka hýbe<br>
Line 14: Line 14:
 
[[Image:Robotnacka1.png]]<br>
 
[[Image:Robotnacka1.png]]<br>
  
== Algoritmus pohybu  ==
+
== Video robotnacky ==
 +
[http://www.youtube.com/watch?v=vf2MgU_dsnk Novšie video robotnačky bez oblúkov]<br>
 +
[http://www.youtube.com/watch?v=WIwQwHXV-ns Nové video robotnačky s oblúkmi] <br>
 +
[http://www.youtube.com/watch?v=FM87j9FqgUI  Video robotnacky]
 +
 
 +
== Počiatočné nastavenia korytnačky a algoritmus pohybu  ==
  
 
'''Pohyb'''
 
'''Pohyb'''
Robota je treba dať do ľavého horného rohu a nastaviť ho smerom dole. Pohyb je jednoduchý. Vypočítal som na koľko robotových krokov dokáže senzor rozpoznať zmenu. Vždy sa teda posúva o túto jednotku. Robot sa pohybuje rovno o náhodný počet týchto jednotiek, ale ak by mal naraziť zastaví sa.
+
Robota je treba dať do ľavého horného rohu a nastaviť ho smerom dole. POZOR ! Je nutné ho však odsadiť od ľavej steny aspoň o kúsok(100). Zvyšok scaneovania si bude držat už potrebný odostup od stien. Pohyb je jednoduchý. Vypočítal som na koľko robotových krokov dokáže senzor rozpoznať zmenu. Vždy sa teda posúva o túto jednotku. Robot sa pohybuje rovno o náhodný počet týchto jednotiek, ale ak by mal naraziť zastaví sa.
  
 
== Skenovanie objektov - vytváranie mapy ==
 
== Skenovanie objektov - vytváranie mapy ==
  
 
Mapa sama o sebe je len dvojrozmerná pole integerov, ktoré je na začiatku vynulované. Akonáhle kontrolujeme či sa môžeme posunúť ďalej, pozrieme všetky senzory(nie len predné) a podľa natočenia robota si do mapy na dané miesto pripočítame +1. Toleranciu som dal 50 jednotiek. Ak senzor zaznamenáva väčšiu vzdialenosť, neukladá nič.
 
Mapa sama o sebe je len dvojrozmerná pole integerov, ktoré je na začiatku vynulované. Akonáhle kontrolujeme či sa môžeme posunúť ďalej, pozrieme všetky senzory(nie len predné) a podľa natočenia robota si do mapy na dané miesto pripočítame +1. Toleranciu som dal 50 jednotiek. Ak senzor zaznamenáva väčšiu vzdialenosť, neukladá nič.

Latest revision as of 15:39, 30 June 2013

Úvod

Mojím projektom je naprogramovať robotnačku. Táto sa bude pohybovať po priestore, vyhýbať sa prekážkam pomocou senzorov a ukladať si údaje so senzorov do dvojrozmernej mapy a teda vytvárať virtuálnu mapu priestoru.

Finálny projekt je v jazyku JAVA a môžete si zdojový kód stiahnuť tu: Robotnacka

Robotnacka.png

Tu môžete vidieť príklad ako korytnačka mapuje

Ukážka programu ktorý zobrazuje mapu vytvorenú senzormi a simulátor v ktorom sa "skutočná" korytnačka hýbe
Robotnacka2.png
Robotnacka3.png
Robotnacka1.png

Video robotnacky

Novšie video robotnačky bez oblúkov
Nové video robotnačky s oblúkmi
Video robotnacky

Počiatočné nastavenia korytnačky a algoritmus pohybu

Pohyb Robota je treba dať do ľavého horného rohu a nastaviť ho smerom dole. POZOR ! Je nutné ho však odsadiť od ľavej steny aspoň o kúsok(100). Zvyšok scaneovania si bude držat už potrebný odostup od stien. Pohyb je jednoduchý. Vypočítal som na koľko robotových krokov dokáže senzor rozpoznať zmenu. Vždy sa teda posúva o túto jednotku. Robot sa pohybuje rovno o náhodný počet týchto jednotiek, ale ak by mal naraziť zastaví sa.

Skenovanie objektov - vytváranie mapy

Mapa sama o sebe je len dvojrozmerná pole integerov, ktoré je na začiatku vynulované. Akonáhle kontrolujeme či sa môžeme posunúť ďalej, pozrieme všetky senzory(nie len predné) a podľa natočenia robota si do mapy na dané miesto pripočítame +1. Toleranciu som dal 50 jednotiek. Ak senzor zaznamenáva väčšiu vzdialenosť, neukladá nič.