This Focused Technical Project deals with the autonomous navigation of aerial robots or drones working in GPS-degraded industrial environments. Localization is the most fundamental problem to providing a mobile robot with autonomous capabilities, since accurate and reliable pose estimation is required for even the most basic tasks. Therefore this project proposes the development of ROS library that will provide a reliable algorithm for robust localization solution suitable to aerial robots without GPS focused on safety, and computational efficiency. This ROS library will help to foster the development of drone-based solutions for industrial inspections.
Our work in Milestone 1 has focused on the development of a software package adapting the previously available algorithms while focusing on reusability, robustness and computational efficiency as key features. We have designed a high-level software architecture for robot localization in which we could incorporate the algorithms. These algorithms worked well but were limited to controlled laboratory environments. Hence, we have dedicated efforts in order to improve their quality and reliability for their use in industrial scenarios.
The ROS package implements a Monte-Carlo Localization algorithm, which uses several inputs: robot odometry, a previously built 3D map, 3D point-clouds from an onboard sensor and distance measurements between radio-range sensors. A detailed explanation of the algorithm is included in our publication “Multi-sensor 3D Monte Carlo Localization (MCL) for long-term aerial robot navigation”: https://journals.sagepub.com/doi/pdf/10.1177/1729881417732757
One of the main differences between our work in the paper and this project is the sensors that we have used, in such a way that this also helped to improve the performance and robustness of the localization solution. The point-clouds are now given by the 3D LIDAR OS-1 from Ouster, which shows higher accuracy and fewer artifacts than the point-clouds provided by previous RGB-D sensors. On the other hand, the distance measurements are provided by new Ultra-Wide Band (UWB) sensors manufactured by Nanotron, which offer better performance than the previously used UWB sensors. Nevertheless, our package is able to accept all kinds of sensors as long as they comply with the standard ROS message types for odometry and point-clouds, and the custom ROS message type for radio-range distance measurements that we include in the package.
Another improvement is that the localization solution can be used either in real-time or replaying a bag file. For the last option, we provide a sample bag file with data acquired from our sensors through a preliminary test that we performed in CATEC’s indoor testbed.
We have created a ROS wiki page with the software package documentation and all the relevant related information: http://wiki.ros.org/amcl3d
The open-source code of the software package can be found in CATEC’s GitHub account: https://github.com/fada-catec/amcl3d