Laboratorium 1 - Sprawozdanie

1.Wstęp

Celem laboratorium było zapoznanie się z podstawowymi elementami zestawu Lego Mindstorms oraz wypróbowanie jego możliwości programując pierwsze, krótkie aplikacje.

2.Przygotowania

W sali zastaliśmy już zbudowanego przez poprzednią grupę robota: student.agh.edu.pl_wiedzma_rob12.jpg

i dzięki temu mogliśmy zabrać się od razu do sprawdzania jego możliwości. Przetestowaliśmy działanie czujników i silników za pomocą wbudowanych funkcji „Try me!” i „Viev”. W przypadku tej drugiej interesujące były przede wszystkim zakresy w jakich podawane były poszczególne parametry robota i otoczenia. Na przykład według czujników robota zmierzona temperatura wynosiła -20 stopni Celsjusza. Również kat rozwarcia szczęk robota (napędzanych przez silnik pomocniczy) operował na wartościach ujemnych - ta informacja przydała nam się w późniejszym programowaniu robota.

3. Programowanie robota przy użyciu NXT Program

Programowanie robota bez użycia komputera jest możliwe przy użyciu funkcji NXT Program. Jest ona jednak bardzo ograniczona i po wykonaniu przy jej użyciu kilku prostych programów, szybko uruchomiliśmy dołączony do robota software na PC.

4. Programowanie robota przy pomocy oprogramowania Lego Mindstorms

Zaczęliśmy od prostego algorytmu, w którym robot reagował na dotyk ucieczką i wyświetlał jedną z dostępnych w systemie grafik na ekranie. Stopniowo dodawaliśmy kolejne elementy składniowe dostępne w programie takie jak:

  1. Pętle (skończone i nieskończone)
  2. Opóźnienia
  3. Działanie silników B i C (odpowiedzialnych za przemieszczanie się robota) i silnika A (silnika pomocniczego, odpowiedzialnego za ruch szczęk robota)

Schemat wykonanego programu: student.agh.edu.pl_wiedzma_cale.jpg

W ostatecznej wersji programu Leon poruszał się od jednej do drugiej krawędzi stołu, atakując szczypcami napotkane przeszkody i reagując na nie zdziwioną miną. :-)

5. Wnioski i spostrzeżenia

Robot nie wykonywał algorytmu, gdy na początku miał zaciśnięte szczęki. Wymusiło to na nas zastosowanie przed pierwszą pętlą bloku rozwierającego szczęki robota. Problemem jest zaprogramowanie dokładnego obrotu robota o zadany kąt. W programie istnieje możliwość wykonania obrotu wybranego silnika o zadany kąt, lecz jest to kąt tego silnika. W związku z tym kąt obrotu należy wyznaczać na wyczucie. Zdarzało nam się również, że robot zatrzymywał się bez żadnej widocznej przyczyny. Niestety, ze względu na brak czasu, nie udało nam się wyjaśnić tego problemu.

Program zrealizowany na zajęciach: sroda930_1.rbt

pl/dydaktyka/jsi/2009/sprawozdania/jsi20091202-09c.txt · ostatnio zmienione: 2019/06/27 15:50 (edycja zewnętrzna)
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0