====== Laboratorium nr.3 - zaawansowane programowanie w LEGO ====== ===== 1. Wstęp ===== Celem laboratorium było zbudowanie złożonego robota, wykorzystując instukcje znajdujące się w zakładce "Robo center". Na potrzeby laboratorium zdecydowałem się na robota z zakładki "animals" o nazwie Spike. ===== 2. Przebieg laboratorium ===== ==== a) Budowa robota ==== Konstrukcja robota była o wiele bardziej pracochłonna niż jego poprzedników z poprzednich zajęć. Jako, że w pojedynkę musiałem zbudować robota i zaprogramować jego działanie, nie udało mi się zbudować ogona skorpiona, co ograniczało wykorzystanie jego możliwości. Zbudowany przeze mnie robot wyglądał następująco: {{:pl:mindstorms:studenci:przedmioty:jsi:jsi2008:rus1.jpg?500x500|rys.1 "Spike"}} {{:pl:mindstorms:studenci:przedmioty:jsi:jsi2008:rus2.jpg?500x500|rys.2 "Spike"}} ==== b) Programowanie robota ==== Ze względu na to, że zostało mało czasu, zająłem się programowaniem robota. Najbardziej interesowało mnie przetestowanie ciekawie zrealizowanego mechanizmu poruszania się robota. W związku z tym dwa algorytmy, które przetestowałem były związane z poruszaniem się i obracaniem się robota. Pierwszy z nich realizował reagowanie robota na dźwięki. Robot po usłyszeniu dźwięku miał zareagować własnym sygnałem po czym wycofać się.Drugi program miał realizować omijanie przeszkód. Oba programy znajdują się w spakowanym archiwum: {{https://ai.ia.agh.edu.pl/wiki/_media/pl:mindstorms:studenci:przedmioty:jsi:jsi2008:lab3.rar}} W przypadku obu programów robot nie poruszał się idealnie w linii prostej. Trudno mi powiedzieć czy było to winą złej konstrukcji robota, złego algorytmu, czy może jakiegoś uszkodzenia mechanicznego. ===== 3. Wnioski ===== Najistotniejszym wnioskiem, który wyciągnąłem podczas tego ćwiczenia jest to, że w przypadku bardziej złożonych algorytmów czy robotów, zrealizowanie w pojedynkę postawionych zadań jest właściwie niemożliwe. Bardzo żałuje, że nie zdążyłem zbudować ogona robota, gdyż obok mechanizmu poruszania się robota, wyglądał na moduł pozwalający na realizację najciekawszych zadań.