6. Programowanie robotów przemysłowych
HI. Dwie komórki sieci są ze sobą połączone, jeśli odpowiadające im obszary stykają się ze sobą, tzn. sąsiedztwo r= 1.
IV. Tworzona jest mapa dyfuzyjna:
a. Inicjalizacja sieci - ustalenie wartości wag połączeń między sąsiadujący, mi komórkami sieci, zgodnie ze wzorem
a^=dist(c§,cH) (6.3)1
gdzie: ą, % to odpowiednie komórki mapy, afj - waga łącząca komórkę
CgZ Cy.
Wagi połączeń między komórkami są proporcjonalne do odległości euldj. desowej między środkami odpowiadających komórkom obszarów, wynoszą 1 lub -Jl.
b. Ustalenie wartości sygnałów zewnętrznych
Uy=0, gdy komórka jest fragmentem przeszkody;
Ug = 1, gdy komórka jest wolna.
c. Ustalenie początkowej wartości komórek
Xg = T» 1, gdy komórka cy reprezentuje cel,
Xy=0, w przeciwnym przypadku,
gdzie 7 jest wartością początkową komórki reprezentującej cel.
d. Proces dyfuzji - stan komórki w chwili / + 1 jest obliczany z zależności
%;!+1)=%(/)max{j^-(0,max(jc*/(r j -<$)} (6.4)
Proces dyfuzji jest kontynuowany aż do osiągnięcia przez sieć stanu równowagi, gdy
Xy(t+])=Xg(ł=0) f ' (6.5)
Więcej informacji dotyczących zagadnienia planowania ruchu i sterowania robotów mobilnych znajdzie Czytelnik w książkach [11, 20, 22, 26, 34*36, 86, 88, 98, 108, 122, 138] i artykułach [7, 52, 71, 99, 109+112,118, 123,125].
6.5.8. Oprogramowanie do nawigacji robotów mobilnych
Opisano tu dostępne na rynku oprogramowanie wykorzystywane do nawigacji autonomicznych robotów mobilnych.
Carmen Robot Navigation Toolkit
Carmen [204] jest darmowym oprogramowaniem do sterowania robotów mobilnych. Jest to modułowe oprogramowanie zaprojektowane w celu zapewniania 184 podstaw nawigacji, włączając w to: kontrolę sensorów, omijanie przeszkód,
lokalizację, budowę map oraz planowanie ścieżki. Podstawowe cechy oprogramowania Carmen:
- modułowość,
- wsparcie dla różnych platform,
- wsparcie programowe dla skanerów laserowych SICK oraz odbiorników GPS,
- moduł planowania ścieżki,
- moduł lokalizacji,
- moduł skanowania i budowy mapy.
Karto Software For Robots On The Move
Oprogramowanie Karto zawiera zaawansowane algorytmy budowy map oraz autonomicznej nawigacji robotów mobilnych [224]:
• Moduł lokalizacji umożliwia robotowi ustalenie jego pozycji względem otoczenia przy użyciu informacji z sensorów i znanego układu odniesienia (np. mapy otoczenia lub znaczników umieszczonych w środowisku). Zapewnia stały układ współrzędnych, względem którego są odnoszone ruchy robota w środowisku. Moduł ten może być traktowany jako lokalny GPS.
• Moduł tworzenia map służy do budowy modelu otoczenia przy wykorzystaniu sensorów robota. Wykorzystana technologia pozwala na tworzenie precyzyjnych map, nawet pomimo dużego zaszumienia danych z czujników. Mapy mogą być budowane w czasie rzeczywistym, podczas gdy robot wykonuje manewry w nieznanym środowisku.
• Moduł eksploracji umożliwia takie zaplanowanie sekwencji ruchów robota, aby całkowicie zbadać całą wymaganą przestrzeń. Zadanie to może być wymagane w celu zbudowania mapy nieznanego otoczenia lub prow adzenia obserwacji znanej przestrzeni.
• Moduł planowania optymalnej ścieżki robota do wyznaczonego celu i omijania przeszkód. Zastosowane szybkie algorytmy umożliwiają wytyczanie trasy w czasić rzeczywistym, podczas ruchu robota.
• Moduł sieci umożliwia zdalne przesyłanie danych ze skanerów laserowych ienkoderów do modułu budowy map, pracującego na zewnętrznym serwerze. Dzięki temu moduł budowy map nie obciąża mocy obliczeniowej sterownika robota.
Mobile Robot Programming Toolkit (MRPT)
MRPT [233] jest darmowym (licencja GNU) oprogramowaniem, które dostarcza programistom C++ obszerny zbiór bibliotek i aplikacji, zaw ierających struktury' danych i algorytmy stosowane na wielu płaszczyznach programow ania robotów Mobilnych: lokalizacji, symultanicznej lokalizacji i budowy map (ang. SLAM -''iinultaneous localization and mapping\ komputerowej wizji oraz planowania Hachu (omijania przeszkód).
185