Investigação de métodos SLAM para navegação de robôs móveis internos. Experiência em pesquisa de robótica R2

Introdução

Atualmente, existem muitos tipos de veículos aéreos não tripulados autônomos e de navegação de robôs.  Em geral, eles podem ser divididos em navegação interna - interna e externa - externa .





Por sua vez, a navegação interna também aborda vários desafios. Via de regra, são robôs móveis projetados para movimentar mercadorias em um depósito, aspiradores de pó robóticos, robôs para merchandising, comunicação interativa com clientes, garçons, etc. Quando passamos para a navegação interna, imediatamente perdemos todos os benefícios da navegação por satélite, porque o sinal do satélite geralmente não chega aos dispositivos através de estruturas de concreto e metal. Por outro lado, devido ao fato de que o espaço dentro dos edifícios é muitas vezes limitado a áreas relativamente pequenas, é possível usar ajudas de navegação como triangulação, navegação de acordo com várias marcas (códigos QR indicando comandos subsequentes para o robô, linhas de sinal na direção do deslocamento, marcas nas paredes para localização de correção), Navegação SLAM , bem como combinações dos métodos acima.





Os métodos de navegação apresentados são radicalmente diferentes nas tecnologias utilizadas e têm suas próprias vantagens e desvantagens. Neste artigo, será considerado apenas o método de navegação SLAM, que é o mais promissor dos listados para trabalhar em espaço inexplorado. Este método é interessante porque pode ser usado em uma sala não preparada e desconhecida pelo robô para criar um mapa e então usá-lo. Deve-se ter em mente que o SLAM requer uma variedade de fontes de dados, incluindo odometria.





1. SLAM

SLAM . (Simultaneous Localization and Mapping). , , .





, SLAM . , , , , , . , . , (, , IMU ). , , . , , , . , , , .





, SLAM , . , , . SLAM [1]:





u t,





z , t,





m , xt. , , ( 1):





Figura 1 - Modelo gráfico da abordagem SLAM [1]
1 – SLAM [1]

SLAM 2D, 3D. 3D , , . , , . , SLAM SLAM . , SLAM, (grid-based), (feature-based) (graph-based) , (topological) (semantic) [1].





1.1 Feature-based SLAM





Feature-based SLAM . SLAM (EKF – Extended Kalman Filter).





1.2 Graph-based SLAM





SLAM , , , . . , , . SLAM (VSLAM Rtabmap), [1].





1.3 Grid-based SLAM





. . , . , 1 , 0 [1]. 0 1 .





1.4 Topological SLAM





SLAM - , . , . , , . , [1].





1.5 SemanticSLAM





. , , . , , . , Carlos Miguel [1] SLAM [7, 9].





1.6 SLAM





SLAM Robotic Operating System (ROS) , , : GMapping [2], Cartographer [3], Rtabmap [4, 9]. ROS. , SLAM, .





Gmapping . , 2D , 360 . , , .





Figura 2 - Mapeamento do mapa
2 – Gmapping

- (Adaptive Monte Carlo Localization – AMCL). , [5]. , , , . , « » . , , , .





Google Cartographer GMapping , 2D . , Gmapping, . , Cartographer , – cells. , Cartographer «» «» «» «» [3]. , Cartographer - . - , . ( ) , , .





Figura 3 - Cartógrafo de mapas [3]
3 – Cartographer [3]

, SLAM SLAM. SLAM . , SLAM , , SLAM . , SLAM [3, 6].





Figura 4 - Esquema do algoritmo do Google Cartographer [3]
4 – Google Cartographer [3]

, Cartographer 3D [3, 6]. , . , .





, GMapping, Cartographer ( , 3D ), RGBD -, .





, Cartographer – SLAM. , GMapping, .





Rtabmap SLAM, , [4, 7, 8, 9].





. Rtabmap 2D , , . . , . , .





Figura 5 - Banco de dados de imagens Rtabmap e correspondência
5 – Rtabmap

, , , , . , , , . , Rtabmap , , , – . Rtabmap , . , , , – , . . Rtabmap .





, 2D , . Rtabmap : , RGBD , -, , IMU. , RGBD -. . 2D , RGBD - 2D Rtabmap. , , «» , .





, . , Rtabmap . , , . , , 2D . Rtabmap , , . , , . , , . , «» .





, , SLAM – . – Rtabmap , ( , , IMU, ). , , , , , , SLAM .





SLAM

SLAM . , . 5 , 100 2.





Figura 6 - Simulação de uma sala (600 m2) em Gazebo
6 – (600 2) Gazebo

GMapping. . , , ( 3020 ), «» 2D , , . 





Figura 7 - Mapa de simulação construído em lidar a) Gmapping b) Rtabmap
7 – ) Gmapping b) Rtabmap

, . SLAM.





Google Cartographer . , . , Cartographer .





GMapping Cartographer, Rtabmap SLAM 2D , . , Rtabmap , .





SLAM

Rtabmap. , RGBD . , SLAM.





, Cartographer – RGBD . Cartographer , Rtabmap .





, , , , , . , , , , , . , , – 2D , - ( 2D , . . , 3D , , 2D , RGBD -).





. , ( ), , , . , – , , , . - , , , . , ( ) , .





, , , . . -, . , , . -, , , , (Rtabmap , ). ROS. , , , , .





, , , . Rtabmap , ICP (Iterative Closest Point). , . , , ICP , ICP , .





, , , . Rtabmap , , , . , , , . , – , , .





. , . , , . , ; , , , , , .





Rtabmap . , . Cartographer.





, SLAM Gmapping, Rtabmap Google Cartographer. , . Gmapping – SLAM, . , 2D . , Cartographer Rtabmap , ( Rtabmap). , – Gmapping. 





SLAM .





  1. Pedrosa, E., L. Reis, C. M. D. Silva and H. S. Ferreira. Autonomous Navigation with Simultaneous Localization and Mapping in/outdoor. 2020.





  2. Gmapping [ ] URL: http://wiki.ros.org/gmapping, – . . . : 14.08.2020 .





  3. Google Cartographer ROS [ ] URL: https://google-cartographer-ros.readthedocs.io/en/latest/#, – . . . : 04.11.2020 .





  4. RTAB-Map, Real-Time Appearance-Based Mapping [ ] URL: http://introlab.github.io/rtabmap/, – . . . : 22.06.2020 .





  5. Adaptive Monte Carlo localization [ ] URL: http://wiki.ros.org/amcl, – . . . : 03.08.2020 .





  6. Building Maps Using Google Cartographer and the OS1 Lidar Sensor [ ] URL: https://ouster.com/blog/building-maps-using-google-cartographer-and-the-os1-lidar-sensor/, – . . . : 25.02.2021 .





  7. Labbé, M, Michaud, F. RTAB-Map como um lidar de código aberto e localização simultânea visual e biblioteca de mapeamento para operação online de larga escala e longo prazo. J Field Robotics. 2019; 35: 416-446.





  8. Silva, BMFD; Xavier, RS; Gonçalves, LMG Mapping and Navigation for Indoor Robots under ROS: An Experimental Analysis. Pré-impressões 2019.





  9. Mathieu Labbé e François Michaud. Detecção on-line de fechamento de loop global para SLAM baseado em gráfico multi-sessão LargeScale. 2014 IEEE / RSJ International Conference on Intelligent Robots and Systems, páginas 2661-2666, 2014.








All Articles