robot z laserowym czujnikiem odległości do …extended kalman filter slam - slam z wykorzystaniem...

7
MODELOWANIE INŻYNIERSKIE 2017 nr 61, ISSN 1896-771X 27 ROBOT Z LASEROWYM CZUJNIKIEM ODLEGŁOŚCI DO BUDOWY MAP 2D Łukasz Mitka 1a , Michał Ciszewski 1b , Andrii Kudriashov 1c , Tomasz Buratowski 1d , Mariusz Giergiel 1e 1 Katedra Robotyki i Mechatroniki, Akademia Górniczo-Hutnicza a [email protected], b [email protected], c [email protected], d [email protected], e [email protected] Streszczenie W pracy zaprezentowano system budowy dwuwymiarowej mapy otoczenia dla robota mobilnego kołowego poru- szającego się po płaskiej powierzchni. Sterowanie robota i algorytmy mapujące zostały zaimplementowane z wyko- rzystaniem środowiska ROS. Testy systemu zostały przeprowadzone w środowisku symulacyjnym V-REP z wyko- rzystaniem wtyczek ROS. Walidację działania systemu przeprowadzono w warunkach rzeczywistych na przygoto- wanym torze testowym. Słowa kluczowe: robot mobilny, SLAM, skaner laserowy ROBOT WITH LASER SCANNER FOR 2D MAPPING Summary This paper presents a system for building of 2D environment map for a wheeled mobile robot, operating on flat surfaces. Robot control and mapping algorithms were implemented with use of ROS framework. System tests were conducted in V-REP simulation environment with use of ROS plugins. Validation of system operation was con- ducted in real conditions in a prepared test rig. Keywords: mobile robot, SLAM, laser scanner 1. WSTĘP Zagadnienia związane z nawigacją w nieznanym środo- wisku są znane w robotyce pod nazwą SLAM (ang. Simultaneous Localization And Mapping - jednoczesna lokalizacja i budowanie mapy). Po raz pierwszy założe- nia tej techniki zostały sformułowane w roku 1996 [7]. W swoich założeniach SLAM jest ogólnym sposobem rozwiązywania problemu budowy mapy nieznanego środowiska, natomiast nie określa konkretnego algoryt- mu obliczeniowego, w związku z tym powstały liczne prace w zakresie implementacji algorytmów dostosowa- nych do określonych warunków [5,9,10]. Technika znaj- duje zastosowanie w różnych dziedzinach. Najnowsze badania dotyczą zastosowania SLAM w systemach poszukiwawczych i ratunkowych USAR (ang. Urban Search and Rescue) z wykorzystaniem algorytmu budo- wy dwuwymiarowej mapy wspomagany trójosiowym czujnikiem IMU (ang. Inertial Measurement Unit) [10]. Innym zastosowaniem jest system do planowania trajek- torii w podziemnych kopalniach, bazujący na połączeniu danych z różnych czujników sterowany za pomocą systemu ROS (ang. Robot Operating System) [11]. SLAM znajduje również zastosowanie w robotach in- spekcyjnych. Przykładem takiej implementacji może być technika obrazowania podczerwieni, wykorzystana do detekcji gazu, pozwalająca na lokalizowanie wycieków w pomieszczeniu eksplorowanym przez robota [2]. Innym zastosowaniem techniki SLAM jest narzędzie tworzące trójwymiarowe mapy w trybie offline na podstawie danych zarejestrowanych podczas pracy robota [3] lub środowisko oparte na systemie ROS z symulatorem Gazebo przeznaczone do testowania algorytmów SLAM [1]. W artykule zaprezentowano testy symulacyjne i weryfikację w warunkach rzeczywistych systemu prze- znaczonego dla robotów mobilnych realizującego zadanie SLAM.

Upload: others

Post on 30-Jul-2020

7 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Robot z laserowym czujnikiem odległości do …Extended Kalman Filter SLAM - SLAM z wykorzystaniem rozszerzonego 29 (8) , n-e-y-i- ˚ (,˜˚, ˚ , infor-(9) ˜˚ ) ˚ (10) , , nieidealna

MODELOWANIE INŻYNIERSKIE 2017 nr 61, ISSN 1896-771X

27

ROBOT Z LASEROWYM CZUJNIKIEM

ODLEGŁOŚCI DO BUDOWY MAP 2D

Łukasz Mitka1a, Michał Ciszewski1b, Andrii Kudriashov1c,

Tomasz Buratowski1d, Mariusz Giergiel1e

1Katedra Robotyki i Mechatroniki, Akademia Górniczo-Hutnicza [email protected], [email protected], [email protected], [email protected], [email protected]

Streszczenie W pracy zaprezentowano system budowy dwuwymiarowej mapy otoczenia dla robota mobilnego kołowego poru-szającego się po płaskiej powierzchni. Sterowanie robota i algorytmy mapujące zostały zaimplementowane z wyko-rzystaniem środowiska ROS. Testy systemu zostały przeprowadzone w środowisku symulacyjnym V-REP z wyko-rzystaniem wtyczek ROS. Walidację działania systemu przeprowadzono w warunkach rzeczywistych na przygoto-wanym torze testowym.

Słowa kluczowe: robot mobilny, SLAM, skaner laserowy

ROBOT WITH LASER SCANNER FOR 2D MAPPING

Summary This paper presents a system for building of 2D environment map for a wheeled mobile robot, operating on flat surfaces. Robot control and mapping algorithms were implemented with use of ROS framework. System tests were conducted in V-REP simulation environment with use of ROS plugins. Validation of system operation was con-ducted in real conditions in a prepared test rig.

Keywords: mobile robot, SLAM, laser scanner

1. WSTĘP

Zagadnienia związane z nawigacją w nieznanym środo-wisku są znane w robotyce pod nazwą SLAM (ang. Simultaneous Localization And Mapping - jednoczesna lokalizacja i budowanie mapy). Po raz pierwszy założe-nia tej techniki zostały sformułowane w roku 1996 [7]. W swoich założeniach SLAM jest ogólnym sposobem rozwiązywania problemu budowy mapy nieznanego środowiska, natomiast nie określa konkretnego algoryt-mu obliczeniowego, w związku z tym powstały liczne prace w zakresie implementacji algorytmów dostosowa-nych do określonych warunków [5,9,10]. Technika znaj-duje zastosowanie w różnych dziedzinach. Najnowsze badania dotyczą zastosowania SLAM w systemach poszukiwawczych i ratunkowych USAR (ang. Urban Search and Rescue) z wykorzystaniem algorytmu budo-wy dwuwymiarowej mapy wspomagany trójosiowym czujnikiem IMU (ang. Inertial Measurement Unit) [10]. Innym zastosowaniem jest system do planowania trajek-

torii w podziemnych kopalniach, bazujący na połączeniu danych z różnych czujników sterowany za pomocą systemu ROS (ang. Robot Operating System) [11]. SLAM znajduje również zastosowanie w robotach in-spekcyjnych. Przykładem takiej implementacji może być technika obrazowania podczerwieni, wykorzystana do detekcji gazu, pozwalająca na lokalizowanie wycieków w pomieszczeniu eksplorowanym przez robota [2]. Innym zastosowaniem techniki SLAM jest narzędzie tworzące trójwymiarowe mapy w trybie offline na podstawie danych zarejestrowanych podczas pracy robota [3] lub środowisko oparte na systemie ROS z symulatorem Gazebo przeznaczone do testowania algorytmów SLAM [1]. W artykule zaprezentowano testy symulacyjne i weryfikację w warunkach rzeczywistych systemu prze-znaczonego dla robotów mobilnych realizującego zadanie SLAM.

Page 2: Robot z laserowym czujnikiem odległości do …Extended Kalman Filter SLAM - SLAM z wykorzystaniem rozszerzonego 29 (8) , n-e-y-i- ˚ (,˜˚, ˚ , infor-(9) ˜˚ ) ˚ (10) , , nieidealna

ROBOT Z LASEROWYM CZUJNIKIEM ODLEGŁOŚCI DO BUDOWY MAP 2D

2. METODY NAWIGACJI

I BUDOWY MAPY

SLAM jest metodą symultanicznej lokalizacji oraz mapowania, która rozwiązuje problem tworzenia mapy wtedy, kiedy podmiot jest ruchomy. Jest często wykrzystywana w robotyce oraz systemach autonomicznych.Migawkowe tworzenie mapy jest możliwe za pomocą dużej ilości systemów czujników oraz pomiarów, takich jak: ultradźwiękowe czujniki odległości, radary, lidary, systemy wizyjne etc. Wyniki jednegowyestymowanej serii (rys. 1b) pomiarów mogą być bardzo dokładne, ale ich otrzymanie jestwtedy, gdy podmiot (robot) znajduje się w stanie sttycznym.

1a

1b

Rys. 1. Wizualizacja skanów laserowych: a) jeden pomiarb) seria pomiarów

Podczas ruchu aktualne pomiary oraz lokalizacja zminiają się, więc aby możliwe było rozszerzenie mapywymagana jest fuzja z pomiarami z poprzedniego stanu. Nie jest to jednak łatwe zadanie (rys. 2a, b). metodyką, która pomaga w rozwiązaniu danego problmu za pomocą dodania informacji o aktualnej lokalizacji oraz mapie. Wykorzystanie filtrów estymującychla zbliżyć się do otrzymania precyzyjnego obrazu środwiska.

2a

2b

Rys. 2. Metody tworzenia mapy: a) porzucenie stanu, b) scalanie z błędami

Do zdefiniowania problemu SLAM wykorzystywane są wartości nadane (1, 2) oraz oczekiwane (

1) sterowanie robotem 1 ��:� � ���, ��, �… , ���

2) obserwacje 2 ��:� � ���, ��, �… , ���

3) mapa środowiska 3

4) trajektoria ruchu robota 4 ��:� � ���, ��, ��… , ���

OBOT Z LASEROWYM CZUJNIKIEM ODLEGŁOŚCI DO BUDOWY MAP 2D

28

METODY NAWIGACJI

jest metodą symultanicznej lokalizacji oraz mapowania, która rozwiązuje problem tworzenia mapy wtedy, kiedy podmiot jest ruchomy. Jest często wyko-rzystywana w robotyce oraz systemach autonomicznych. Migawkowe tworzenie mapy jest możliwe za pomocą

ilości systemów czujników oraz pomiarów, takich jak: ultradźwiękowe czujniki odległości, radary, lidary, systemy wizyjne etc. Wyniki jednego (rys. 1a) lub

pomiarów mogą być ich otrzymanie jest możliwe tylko

gdy podmiot (robot) znajduje się w stanie sta-

jeden pomiar,

Podczas ruchu aktualne pomiary oraz lokalizacja zmie-niają się, więc aby możliwe było rozszerzenie mapy, wymagana jest fuzja z pomiarami z poprzedniego stanu.

a, b). SLAM jest metodyką, która pomaga w rozwiązaniu danego proble-mu za pomocą dodania informacji o aktualnej lokalizacji

estymujących, pozwa-do otrzymania precyzyjnego obrazu środo-

porzucenie poprzedniego

Do zdefiniowania problemu SLAM wykorzystywane są (3, 4):

(1)

(2)

(3)

(4)

Prawdopodobna estymacja trajektorii ruchu robota oraz mapy są podane jak [6, 12]:

5 ����:� , |��:� ,Estymacja całej trajektorii oraz mapy "pełnym SLAM" (ang. Full SLAM), co może być pokzane za pomocą modelu graficznego na rys

Rys. 3. Model graficzny pełnego SLAM (Full SLAM)

W praktyce najczęściej są używane ostatnie estymaty położenia oraz mapy. Dla danego przypadku wybierana jest metoda "Online SLAM" (6) dowa graficzna reprezentacja pokazana

6 ���� , |��:�, ��:��� � …

��� ����:� , |��:� ,����

Rozwiązanie równania (6) przeprowadzasposób rekursywnego całkowania, jedno na raz

7 ������, |��:���, ��:����� � …

��� ����:���, |��:�������

Rys. 4. Model graficzny Online SLAM

Bardzo ważne dla problemu SLAM jest zdefiniowanie modeli ruchu (8) oraz obserwacji na rys. 5.

Rys. 5. Modele ruchu oraz obserwacji na graficznym modelu SLAM [13]

Model ruchu jest wykorzystywany druchu robota. Model ruchu pojazdów można opisać zapomocą rozkładu prawdopodobieństwa w przejściach stanu za pomocą wzoru:

OBOT Z LASEROWYM CZUJNIKIEM ODLEGŁOŚCI DO BUDOWY MAP 2D

Prawdopodobna estymacja trajektorii ruchu robota oraz

��:�� (5) Estymacja całej trajektorii oraz mapy (5 nazywa się

Full SLAM), co może być poka-zane za pomocą modelu graficznego na rys. 3.

ełnego SLAM (Full SLAM) [13]

W praktyce najczęściej są używane ostatnie estymaty położenia oraz mapy. Dla danego przypadku wybierana

[12,13], której przykła-graficzna reprezentacja pokazana jest na rys. 4.

, ��:�������…��� (6)

przeprowadza się zazwyczaj w sposób rekursywnego całkowania, jedno na raz [13]:

�, ��:������� …��� (7)

Model graficzny Online SLAM [13]

dla problemu SLAM jest zdefiniowanie bserwacji (9). Są one pokazane

bserwacji na graficznym modelu

Model ruchu jest wykorzystywany do opisu względnego ruchu robota. Model ruchu pojazdów można opisać za pomocą rozkładu prawdopodobieństwa w przejściach

Page 3: Robot z laserowym czujnikiem odległości do …Extended Kalman Filter SLAM - SLAM z wykorzystaniem rozszerzonego 29 (8) , n-e-y-i- ˚ (,˜˚, ˚ , infor-(9) ˜˚ ) ˚ (10) , , nieidealna

Łukasz Mitka, Michał Ciszewski, Andrii Kudriashov, Tomasz Buratowski, Mariusz Giergiel

8 ���� |����, ��� gdzie: �� – nowa pozycja robota, ���� – poprzednia pozycja robota �� – sterowanie robotem. Często używanym przykładem modelu ruchu jest stadardowy model odometrii, który jest oparty na sprzężniu zwrotnym z systemem ruchu robota oraz wykorzstuje kinematykę robota, wspólnie z geometrią środowska.

Rys. 6. Ruch robota w standardowym modelu odometrii

Kiedy robot porusza się od ��� , �� , �� do macja odometryczna może być opisana za pomocą wzoru:

9 � � �!"#��, !�"$%&�, !"#���

10 !�"$%& �'��� ( ) ���� * ��� ( )!"#�� � +,+-2��� ( ) �� , �� ( ) ���

!"#�� � ′� ) � ) !"#��Jednakże z powodu dużej ilości źródeł błędów ruchutakich jak: różnica średnic kół, odkształceniapowierzchnia (dywan etc) model odomertyczny działa poprawnie tylko w idealnych warunkach i wymaga dodatkowych estymatorów do kompensacji błędów

Do opisania związku między pomiarami a pozycją robota jest wykorzystywany model obserwacji, często nazywany modelem czujnikowym. Model obserwacji opisuje pradopodobieństwo stworzenia obserwacji lokalizacja pojazdu jest znana i jest ogólnie opisany zpomocą wzoru:

11 ���� |��� gdzie: �� – obserwacje / pomiary; �� – położenie robota. Reprezentacja modeli obserwacji zależy od systemu czujników i może bardzo się różnić.

W rozwiązywaniu problemu SLAM niemal zawsze wykorzystuje się filtry estymacji, które wspomagają otrzymanie trajektorii bliskiej do rzeczywistej. Najczściej są one oparte na filtrach cząstKalmana.

Bazą metodyki EKF SLAM (ang. Extended Kalman Filter SLAM - SLAM z wykorzystaniem rozszerzonego

Łukasz Mitka, Michał Ciszewski, Andrii Kudriashov, Tomasz Buratowski, Mariusz Giergiel

29

(8)

pozycja robota,

Często używanym przykładem modelu ruchu jest stan-oparty na sprzęże-

niu zwrotnym z systemem ruchu robota oraz wykorzy-wspólnie z geometrią środowi-

Ruch robota w standardowym modelu odometrii

��� (, �� (, � (�, infor-macja odometryczna może być opisana za pomocą

� (9)

� �� ��� � ) � (10)

dużej ilości źródeł błędów ruchu, odkształcenia, nieidealna

powierzchnia (dywan etc) model odomertyczny działa poprawnie tylko w idealnych warunkach i wymaga dodatkowych estymatorów do kompensacji błędów.

związku między pomiarami a pozycją robota jest wykorzystywany model obserwacji, często nazywany

. Model obserwacji opisuje praw-dopodobieństwo stworzenia obserwacji �� wtedy, kiedy lokalizacja pojazdu jest znana i jest ogólnie opisany za

(11)

obserwacji zależy od systemu

W rozwiązywaniu problemu SLAM niemal zawsze wykorzystuje się filtry estymacji, które wspomagają otrzymanie trajektorii bliskiej do rzeczywistej. Najczę-

cząsteczkowych lub

(ang. Extended Kalman SLAM z wykorzystaniem rozszerzonego

filtru Kalmana) jest opis ruchu pojazdu za pomocą wzoru [6, 12]:

12 0��� , |����, ��� 1�2 �� �gdzie: 3 )model kinematyczny robota

45 – addytywne, o zerowej wartości oczekiwnej nieskorelowane Gaussowskie zakłócenia ruchu z kowariancją 65 [6]. Wtedy model obserwacji jest opisany jak

13 0��� |�� , � 1�2 ��,� � 7gdzie: 7 – obserwacja geometryczna 85 – addytywne, o zerowej wartości oczekiwnej nieskorelowane Gaussowskie błędy obserwacji z kowariancją 95 [6].

Rys. 7. Schemat działania EKF SLAM

Rys. 8. Obraz środowiska przygotowany z wykorzystaniem EKF SLAM

Jedna z wielu implementacji procesu EKF SLAM jest pokazana na rys. 7, gdzie EKFrazem ze skanowaniem laserowym. Po otrzymaniu laserowych pomiarów środowiska tworzy się początkowa mapa, następnie metoda sprawdza za pomocą odometrii czy lokalizacja została zmieniona. W tym czasie nowe laserowe skany są dodawane do filtru Kaporównywane ze sobą. Gdy przychodzi nowa odomtryczna informacja, algorytm jednocześnie dokonuje fuzji obecnej i poprzedniej lokalizacji wraz z pomiarami laserowymi oraz aktualizuje globalny obraz środowiska(rys. 8).

Łukasz Mitka, Michał Ciszewski, Andrii Kudriashov, Tomasz Buratowski, Mariusz Giergiel

ruchu pojazdu za pomocą

� 3�����, ��� * 4� (12)

model kinematyczny robota

addytywne, o zerowej wartości oczekiwa-nej nieskorelowane Gaussowskie zakłócenia ruchu z

Wtedy model obserwacji jest opisany jak:

7��� , � * 8� (13)(13)

obserwacja geometryczna addytywne, o zerowej wartości oczekiwa-

nej nieskorelowane Gaussowskie błędy obserwacji z

Schemat działania EKF SLAM

Obraz środowiska przygotowany z wykorzystaniem

Jedna z wielu implementacji procesu EKF SLAM jest EKF jest wykorzystywany

razem ze skanowaniem laserowym. Po otrzymaniu laserowych pomiarów środowiska tworzy się początkowa mapa, następnie metoda sprawdza za pomocą odometrii

izacja została zmieniona. W tym czasie nowe laserowe skany są dodawane do filtru Kalmana oraz

Gdy przychodzi nowa odome-tryczna informacja, algorytm jednocześnie dokonuje fuzji obecnej i poprzedniej lokalizacji wraz z pomiarami

oraz aktualizuje globalny obraz środowiska

Page 4: Robot z laserowym czujnikiem odległości do …Extended Kalman Filter SLAM - SLAM z wykorzystaniem rozszerzonego 29 (8) , n-e-y-i- ˚ (,˜˚, ˚ , infor-(9) ˜˚ ) ˚ (10) , , nieidealna

ROBOT Z LASEROWYM CZUJNIKIEM ODLEGŁOŚCI DO BUDOWY MAP 2D

30

3. MOBILNY ROBOT KOŁOWY

Nawigacja robotów mobilnych w pomieszczeniach we-wnątrz budynków wymaga zastosowania dedykowanej platformy mobilnej. Podczas ruchu na powierzchniach płaskich, bez nierówności, najkorzystniejszym rozwiąza-niem jest użycie robota kołowego z dwoma kołami napędzanymi oraz jednym kołem podpierającym, nazy-wanego robotem 2-kołowym. W artykule oparto się na konstrukcji robota opisanego w [4]. Robot wyposażony jest w ramę aluminiową, do której zamontowano silniki szczotkowe prądu stałego wraz z przekładniami plane-tarnymi o przełożeniu 66:1, na których osadzone są kola napędowe. Ogólną strukturę mechanizmu jezdnego robota przedstawiono na rys. 9. Do pomiaru kąta obrotu silników zastosowano dwukanałowe enkodery optyczne o rozdzielczości 500 impulsów na obrót.

W podstawowej wersji robota do nawigacji w przestrzeni stosowane są czujniki podczerwieni i ultradźwiękowe oraz pomiary odometryczne otrzymywane przy użyciu modelu kinematyki robota, analogicznego do modeli robotów 2-kołowych, przedstawionych w [8] oraz rozsze-rzonego filtra Kalmana. Dokładny opis pomiarów odo-metrycznych zaprezentowano w pracy [4].

Rys. 9. Struktura mechanizmu jezdnego robota kołowego oraz punkty charakterystyczne [4]

Rys. 10. Prototyp robota z czujnikiem laserowym LIDAR Zastosowanie sensora laserowego LIDAR (ang. LIght Detection And Ranging) pozwala na zbieranie zdecydo-wanie większej informacji o otoczeniu i pozwala przy użyciu techniki SLAM na dokładne mapowanie terenu. Do testów zastosowano platformę robota z zamontowa-nym czujnikiem LIDAR. Prototyp robota przystosowany do mapowania 2D przedstawiono na rys. 10. Robot wyposażony został w czujnik Hokuyo UTM-30LX-EW o zasięgu 0.1÷30 m, zakresie kątowym 270° oraz rozdziel-czości kątowej 0.25°.

W celu zbadania algorytmów mapowania 2D stworzono środowisko testowe (rys. 11), w którym znajdowały się przeszkody o różnym kształcie.

Rys. 11. Środowisko testowe do badania operacji mapowania 2D przy użyciu czujnika laserowego

Analogiczne środowisko testowe zostało sporządzone w symulatorze V-REP (rys. 12).

Rys. 12. Srodowisko testowe w symulatorze V-REP

4. STRUKTURA STEROWANIA

ROBOTA

Do kontroli robota wykorzystano system operacyjny ROS ze względu na liczbę zintegrowanych narzędzi, dostępność gotowych modułów i łatwość implementacji nowych. Zgodnie z przyjętą konwencją, zarówno sterow-nik każdego urządzenia, jak i algorytm sterujący wyko-nywane są jako osobny wątek, komunikacja odbywa się za pomocą tematów, do których każdy z wątków może publikować lub subskrybować publikowane w nich wiadomości. Takie rozwiązanie pozwala na skonfiguro-wanie robota z wykorzystaniem dowolnych podzespołów. Graf przepływu danych w omawianym robocie przed-stawiono na rys. 104. Dzięki możliwości symulatora V-REP do połączenia z odpowiednimi tematami systemu ROS możliwe było przeprowadzenie badań symulacyj-nych systemu sterowania bez konieczności jego modyfi-kacji. Jedyną różnicą jest uruchomienie symulatora zamiast wątków obsługujących sterowniki skanera laserowego, czujnika IMU i kontrolera ruchu. Przepływ danych w konfiguracji z symulatorem zaprezentowano na rys. 13. Porównując rysunki 14 i 13, można zauwa-żyć, że zastosowanie symulatora nie miało wpływu na konfigurację algorytmów systemu nawigacji.

Page 5: Robot z laserowym czujnikiem odległości do …Extended Kalman Filter SLAM - SLAM z wykorzystaniem rozszerzonego 29 (8) , n-e-y-i- ˚ (,˜˚, ˚ , infor-(9) ˜˚ ) ˚ (10) , , nieidealna

Łukasz Mitka, Michał Ciszewski, Andrii Kudriashov, Tomasz Buratowski, Mariusz Giergiel

Rys.

Rys.

Jako algorytm budujący mapę wykorzystantację filtra cząsteczkowego gMapping źródło obserwacji wykorzystuje dane ze wego, natomiast jako źródło odometrii wykorzystuje algorytm CSM (ang. Canonical Scan Matcherrytm ten na podstawie następujących po sobie skanów laserowych, odczytów czujnika IMU i informacji z ukłdu odometrii określa estymatę pozycji robota.

5. PRZEBIEG EKSPERYMENTU

W celu weryfikacji poprawności opracowanego systemu przeprowadzono testy symulacyjne oraz test na rzeczwistym robocie. Głównym celem testów symulacyjnych było sprawdzenie działania algorytmu budowania mapy. Mapa wzbogacana jest o informację z każnego skanu otoczenia, dlatego zakres przez nią obejmwany rozrasta się wraz z trajektorią wykonaną przez robota. Stan mapy na różnych etapach jej tworzenia zobrazowano na rysunkach 15a-15d. Testy na rzeczywstym robocie potwierdziły wyniki symulacji, dodatkowo pozwoliły na określenie wpływu szumu czujnika i niedskonałości powierzchni na jakość utworzonej mapy.Dokładność mapy można ocenić na podstawie grubości ścian rozpoznanych przeszkód lub dystrybucji punktów zajętych wokół przeszkód skupionych. Wysokie skupienie punktów wokół przeszkody oznacza małe odchylenie standardowe lokalizacji przeszkody, a co za tym idziedobrą dokładność mapy.

Łukasz Mitka, Michał Ciszewski, Andrii Kudriashov, Tomasz Buratowski, Mariusz Giergiel

31

Rys. 13. Struktura przepływu danych w symulatorze

Rys. 14. Struktura przepływu danych w robocie

Jako algorytm budujący mapę wykorzystano implemen- [9], która jako

źródło obserwacji wykorzystuje dane ze skanera lasero-źródło odometrii wykorzystuje

Canonical Scan Matcher). Algo-rytm ten na podstawie następujących po sobie skanów laserowych, odczytów czujnika IMU i informacji z ukła-

robota.

PRZEBIEG EKSPERYMENTU

pracowanego systemu ono testy symulacyjne oraz test na rzeczy-

Głównym celem testów symulacyjnych było sprawdzenie działania algorytmu budowania mapy.

est o informację z każdego wykona-nego skanu otoczenia, dlatego zakres przez nią obejmo-wany rozrasta się wraz z trajektorią wykonaną przez robota. Stan mapy na różnych etapach jej tworzenia

Testy na rzeczywi-stym robocie potwierdziły wyniki symulacji, dodatkowo pozwoliły na określenie wpływu szumu czujnika i niedo-skonałości powierzchni na jakość utworzonej mapy.

można ocenić na podstawie grubości ścian rozpoznanych przeszkód lub dystrybucji punktów

Wysokie skupienie punktów wokół przeszkody oznacza małe odchylenie standardowe lokalizacji przeszkody, a co za tym idzie,

15a

15b

15c

15d

Rys. 15. Etapy procesu tworzenia mapymieniu systemu nawigacji w symulatorze, b, cdziałania systemu, d) po zakończeniu eksploracji

Porównanie map utworzonych w dwóch eksperymentach pozwala zauważyć, że mapa uzznacznie dokładniej odzwierciedla otoczenie16. Porównanie map z różnych eksperymentówa) test symulacyjny, b) test z rzeczywistym robotem

Łukasz Mitka, Michał Ciszewski, Andrii Kudriashov, Tomasz Buratowski, Mariusz Giergiel

. Etapy procesu tworzenia mapy: a) zaraz po urucho-

mieniu systemu nawigacji w symulatorze, b, c) w trakcie po zakończeniu eksploracji

Porównanie map utworzonych w dwóch eksperymentach , że mapa uzyskana z symulatora

znacznie dokładniej odzwierciedla otoczenie (rys. Rys. Porównanie map z różnych eksperymentów:

z rzeczywistym robotem).

Page 6: Robot z laserowym czujnikiem odległości do …Extended Kalman Filter SLAM - SLAM z wykorzystaniem rozszerzonego 29 (8) , n-e-y-i- ˚ (,˜˚, ˚ , infor-(9) ˜˚ ) ˚ (10) , , nieidealna

ROBOT Z LASEROWYM CZUJNIKIEM ODLEGŁOŚCI DO BUDOWY MAP 2D

32

16a

16b

Rys. 16. Porównanie map z różnych eksperymentów: a) test symulacyjny, b) test z rzeczywistym robotem

Lepsze odzwierciedlenie w przypadku mapy z testu symulacyjnego wynika przede wszystkim z braku szumu pomiarowego czujników, a także z budowy modelu, w którym założono całkowitą refleksyjność i idealną gład-kość powierzchni. Drugą z testowanych właściwości algorytmu jest zdolność do określenia lokalizacji robota względem utworzonej mapy. W algorytmie budującym mapę jako estyma tę pozycji wykorzystano dane z algorytmu CSM.

17a 17b

Rys. 17. Trajektorie robota, a - w teście symulacyjnym, b) rzeczywistego. Biała linia – trajektoria względem mapy,

czarna linia – estymata trajektorii

Trajektoria robota względem mapy została porównana z estymatą trajektorii dla obu testów (rys. Rys. 17. Tra-jektorie robota, a - w teście symulacyjnym, b) rzeczywistego. Biała linia – trajektoria względem mapy, czarna linia – estymata trajektorii).

6. WNIOSKI I PLANOWANE

PRACE

W artykule przedstawiono konstrukcję i testy mobilnego robota kołowego przeznaczonego do budowy dwuwymia-rowej mapy środowiska, w którym pracuje. Przeprowa-dzone testy symulacyjne w środowisku odzwierciedlają-cym rzeczywisty tor testowy wykazały wysoką dokład-ność algorytmu budującego mapę. Porównanie z ekspe-rymentem rzeczywistym wykazało, iż pomimo występo-wania szumów czujnika i zakłóceń pochodzących od niedoskonałości powierzchni system jest zdolny do utworzenia mapy wystarczająco dokładnej do odzwier-ciedlenia środowiska pracy robota.

Przyszłe prace będą obejmowały rozszerzenie systemu o moduł planowania trajektorii tak, aby robot przeszu-kiwał pomieszczenie aż do momentu zbadania wszyst-kich osiągalnych lokalizacji. Dodatkowym rozszerzeniem układu będzie montaż czujnika laserowego na sterowa-nym przegubie, co pozwoliłoby na budowę trójwymiaro-wej mapy.

Literatura

1. Afanasyev I., Sagitov A., Magid E.: ROS-based SLAM for a Gazebo-simulated mobile robot in image-based 3D model of indoor environment. "Advanced Concepts for Intelligent Vision Systems" 2015, p. 273–283.

2. Barber R., Rodriguez-conejo M. A., Melendez J., Garrido S.: Design of an infrared imaging system for robotic inspection of gas leaks in industrial environments. "International Journal of Advanced Robotic Systems" 2015, No. 12, p. 12–23.

3. Będkowski J., Pełka M., Majek K., Fitri T., Naruniec J.: Open source robotic 3D mapping framework with ROS - Robot Operating System , PCL - Point Cloud Library and Cloud Compare. In: International Conferen-ce on Electrical Engineering and Informatics 2015, p. 644–649.

4. Buratowski T., Dąbrowski B., Uhl T., Banaszkiewicz M.: The precise odometry navigation for the group of robots. "Schedae Informaticae" 2010, nr 19, p. 99–111.

5. Carlone L., Du J., Kaouk M., Bona B., Indri M.: Active SLAM and exploration with particle filters using Kullback-Leibler divergence. "Journal of Intelligent Robotic Systems" 2014, No. 2, p. 291–311.

6. Durrant-Whyte H., Bailey T.: Simultaneous localisation and mapping (SLAM): Part I : The essential algo-rithms. ”IEEE Robotics & Automation Magazine" 2006, No. 13, p. 99-108.

7. Durrant-Whyte H., Rye D., Nebot E.: Localization of autonomous guided vehicles. In: The Seventh Internatio-nal Symposium of Robotics Research 1996, p. 613–625.

8. Giergiel M., Hendzel Z., Żylski W.: Modelowanie i sterowanie mobilnych robotów kołowych. Warszawa: Wyd. Nauk. PWN, 2013.

9. Grisetti G., Stachniss C., Burgard W.: Improved techniques for grid mapping with Rao-Blackwellized particle filters. ”IEEE Transactions on Robotics" 2007, No. 23, p. 34–46.

10. Kohlbrecher S., Von Stryk O., Meyer J., Klingauf U.: A flexible and scalable SLAM system with full 3D mo-tion estimation. In: International Symposium on Safety, Security, and Rescue Robotics" 2011, p. 155–160.

Page 7: Robot z laserowym czujnikiem odległości do …Extended Kalman Filter SLAM - SLAM z wykorzystaniem rozszerzonego 29 (8) , n-e-y-i- ˚ (,˜˚, ˚ , infor-(9) ˜˚ ) ˚ (10) , , nieidealna

Łukasz Mitka, Michał Ciszewski, Andrii Kudriashov, Tomasz Buratowski, Mariusz Giergiel

11. NeumannK., Berg J., Möllemann G., Nienhaus K.: Collision dustry. In: 4th IFAC Workshop on Mining, Mineral

12. Riisgaard S., Blas M. R.: SLAM for Cambridge, 2004.

13. Stachniss C.: Introduction to robot freiburg.de/teaching/ws12/mapping/pdf/slam01

Artykuł dostępny na podstawie licencji Creative Commons Uznanie autorstwa 3.0 Polska. http://creativecommons.org/licenses/by/3.0/pl

Łukasz Mitka, Michał Ciszewski, Andrii Kudriashov, Tomasz Buratowski, Mariusz Giergiel

33

llemann G., Nienhaus K.: Collision avoidance system for the un4th IFAC Workshop on Mining, Mineral and Metal Processing MMM 2015,

Riisgaard S., Blas M. R.: SLAM for dummies: a tutorial approach to simultaneous localization and

obot mapping. Freiburg, 2014, http://ais.informatik.uni-freiburg.de/teaching/ws12/mapping/pdf/slam01-intro.pdf [dostęp 20.06.2016]

Artykuł dostępny na podstawie licencji Creative Commons Uznanie autorstwa 3.0 Polska. http://creativecommons.org/licenses/by/3.0/pl

Łukasz Mitka, Michał Ciszewski, Andrii Kudriashov, Tomasz Buratowski, Mariusz Giergiel

underground mining in-2015, No. 48, p. 60–65.

ocalization and mapping.

Artykuł dostępny na podstawie licencji Creative Commons Uznanie autorstwa 3.0 Polska.