Założeniem projektu jest stworzenie autonomicznego robota, zdolnego do samodzielnego poruszania sie w otoczeniu. W celu uniknięcia problemów, zwiazanych z opowiednim doborem komponentów, zdecydowaliśmy się użyć zestawów LEGO Mindsorms NXT do stworzenia jego konstrukcji.
Pierwotnie robot miał mieć konstrukcję dwukołową, z rolką toczną (rysunek).
Jednak ze względu na problemy konstrukcyjne (konieczność dorobienia rolki o odpowiednich parametrach), zdecydowaliśmy się na stworzenie konstrukcji gąsiennicowej, bazującej na gotowych elementach LEGO (zdjecia).
Projekt bryły robota, wykonany w programie QCad, dostępny jest w
plikach:
w formacie zgodnym z R12
(usb_R12.dxf),
w formacie
zgodnym z 2000 (usb_2000.dxf).
Zamiast standardowych czujników z zestawu LEGO Mindstorms NXT, użyliśmy następujących sensorów firmy mindsensors.com:
Developer's kit dostarczany przez firmę LEGO
Obecnie pracujemy nad stworzeniem oprogramowania dla robota, przy pomocy środowiska NBC/NXC. Ze wzgledu na dość ograniczone możliwości obliczeniowe, oraz małą pojemność jednostki centralnej Mindstorms NXT, bedziemy prawdopodobnie zmuszeni do stworzenia części software'u pracujacego na PC-cie. Wymiana informacji między robotem a PC-tem będzie zapewniana przez łącze bezprzewodowe Bluetooth.
Ebuild środowiska NBC/NXC dla systemu portage, dystrybycji Gentoo Linux, dostępny jest tutaj.
Programy skompliowane za pomocą nbc, można
skopiować do pamięci jednostki centralnej, przez port USB, za
pomocą programu
linxt.
Ebuild programu
linxt dla systemu portage, dystrybycji Gentoo Linux, dostępny jest tutaj.
Dodatkowo, ze względu na konieczność spełnienia zależności
od modułu Perl'a Device-USB
ebuild tego modułu jest dostępny tu.
Komunikację PC'ta z jednostką centralną NXT, poprzez łącze Bluetooth, zapewnia biblioteka nxtlibc, ebuild tej biblioteki dostepny jest tutaj.
W przypadku konieczności zaktualizowania firmware'u jednostki centralnej NXT, pomocna jest biblioteka libnxt. Transfer danych, w tym przypadku możliwy jest tylko za pośrednictwem portu USB. Wraz z biblioteką dostarczane są dwa programy:
Niejako konkurencyjnym projektem, w stosunku do biblioteki nxtlibc, jest
moduł Perl'a LEGO-NXT.
Jednak ten projekt przede wszystkim, ma zapewniać zdalne
sterowanie NXT'a, a nie
komunikację z programami na nim uruchomionymi. Ebuild tego
modułu znajduje się tutaj.
Podobnie jak w przypadku programu linxt, ten
moduł Perl'a, wymaga
zainstalowania dodatkowego modułu Perl'a, Net-Bluetooth.
Podobną funkcjonalność, jak w przypadku biblioteki nxtlibc ma biblioteka roboctl, dodatkowo zapewniająca współpracę, z robotami budowanymi, przy pomocy systemu VEX. Twórcą tej biblioteki jest Jason W. Bacon, który stworzył własną biblotekę libbacon, wykorzystywaną przez roboctl. Ebuild biblioteki libbacon, jest tutaj, a biblioteki roboctl jest tutaj.
Archiwum z overlay'em drzewa portage Gentoo Linuxa, zawierającym ebuildy: środowiska NBC/NXC, programu linxt, modułów Perl'a Device-USB, LEGO-NXT, Net-Bluetooth oraz bibliotek nxtlibc, libnxt, libbacon i roboctl dostępny jest tu.
Ze względu na zwartą budowę robota, port USB umieszczony na
obudowie jednostki centralnej, stał się niedostępny. Konieczne,
więc było dorobienie odpowiedniej przejściówki, umożliwiającej
programowanie robota za pośrednictwem portu USB. Maskę
przygotowaną do nałożenia na jednowarstwowy laminat, przedstawia
rysunek:
.
Jest to gotowa wersja, w postaci pliku
PNG (w rozdzielczości 150 pkt/mm x 150 pkt/mm), do wydrukowania
na drukarce laserowej, i nałożenia techniką termotransferu na
laminat.
Projekt przejściówki wykonany w QCad, dostępny jest w plikach:
w
formacie zgodnym z R12 (usb_R12.dxf),
w
formacie zgodnym z 2000 (usb_2000.dxf).
Gotową
przejściówkę przedstawiają zdjęcia:
Ostateczny schemat połączeń elementów robota przedstawia rysunek:
Działanie algorytmu sterowania, ilustruje poniższy schemat:
Zakres działania sensorów, w stosunku do wielkości robota, pokazuje rysunek:
Dodatkowo zaznaczone zostało odchylenie robota od kierunku północnego, zwracane przez kompas.
Podczas V-go Kongresu Kół Naukowych Uniwersytetu Warszawskiego,
został zaprezentowany poster dotyczący projektu ARS. Zawartość
posteru prezentuje plik w formacie PDF, zamieszczony
poniżej.
W ramach wystawy przedstawiającej aktywność kół naukowych i
artystycznych UW w roku 2008, został przygotowany poster
prezentujący projekt ARS. Ten poster prezentuje plik w formacie
PDF, zamieszczony poniżej.