Введение 4
Обзор литературы по теме возврата робота на стартовую позицию 7
Построение карты и локализация робота 9
Аппаратная составляющая 9
Анализ существующих решений по одновременной локализации и картографированию
SLAM 12
ICP SLAM 13
RBPF SLAM 14
Интеграция алгоритмов SLAM с роботом «Сервосила Инженер» и проведение экспериментов 20
Построение маршрута и следование по этому маршруту 27
Интеграция выбранного алгоритма с роботом «Сервосила Инженер». Реализация модулей
движения Base controller и модуля движения MoveBase 28
Проведение экспериментальной работы построения маршрута 31
Определение разрыва связи с телеоператором и последующий возврат на стартовую
позицию 33
Обзор существующих решений по определению разрыва связи с телеоператором 34
Имплементация собственного алгоритма определения разрыва связи с телеоператором ..36
Алгоритм возвращения наземного робота при разрыве связи с телеоператором 39
Заключение 41
Список литературы 43
Приложения
В ходе эксплуатации мобильного робота разрыв связи между роботом и телеоператором может произойти в следующих случаях:
- в случае наличия между роботом и оператором толстых стен или других препятствий для распространения радиоволн;
- в случае наличия сильных магнитных и/или радио помех;
- в случае выхода мобильного робота за радиус действия радиопередатчика.
Разрыв связи между роботом и оператором представляет большую проблему. В случае если робот использовался в недоступном для человека месте (завалы, химически зараженные области, высокорадиоактивные области, узкие подземные шахты), после разрыва связи доступ к этому роботу теряется, и робот остается в этом месте без возможности его последующего извлечения. Роботы также активно используются в военной сфере. Потеря робота при его использовании на поле боя недопустима ввиду того, что противник может завладеть техникой. В свою очередь, алгоритмы самостоятельного возврата робота при потере связи позволят решить эти проблемы, поэтому изучение и разработка таких алгоритмов является актуальной задачей современной мобильной робототехники.
Целью данного исследования является разработка и имплементация алгоритмов для возвращения наземного робота «Сервосила Инженер» в статических условиях внутри помещения в случае разрыва связи с телеоператором.
В ходе работы были исследованы алгоритмы одновременной локализации и картографирования (англ. Simultaneous Localization and Mapping - SLAM). Были проведены эксперименты для определения наиболее подходящего алгоритма локализации и построения карты. Были исследованы и применены алгоритмы построения маршрута (англ. path planning), которые позволяют прокладывать путь до заданной точки на карте. Помимо этого, было реализовано программное обеспечение для перевода построенного маршрута в набор команд для сервоприводов робота. Для обеспечения функциональности возврата робота при потере связи с телеоператором были изучены существующие решения по обнаружению потери связи. После изучения существующих исследований по теме, был разработан собственный алгоритм определения потери связи, который основан на анализе поступающих на робота UDP пакетов.
Алгоритмы одновременной локализации и построения карты были интегрированы с Российским мобильным роботом «Сервосила Инженер», и с помощью этих алгоритмов была построена подробная карта 14-го этажа второго высотного здания Казанского Федерального Университета.
С роботом «Сервосила Инженер» был интегрирован алгоритм планирования маршрута A* [3]. Также была проведена работа по конфигурации этого алгоритма для достижения наибольшей точности прихода в заданную точку пространства.
Все реализованное программное обеспечение было перенесено на робота «Сервосила Инженер». Разработанное программное обеспечение начинает работу при запуске робота и контролирует связь с телеоператором на предмет обрыва. При обычной работе робот картографирует пространство вокруг себя и сохраняет полученную карту окружающей местности. В случае возникновения обрыва связи с телеоператором, робот локализует себя на построенной карте, прокладывает маршрут до стартовой точки и возвращается в эту точку.
Большим преимуществом данного алгоритма является то, что для автономной навигации на стартовую точку не используется система глобального позиционирования (англ. Global Positioning System - GPS [7]). Робот ориентируется исключительно по построенной карте с помощью лазерного дальномера. Этот факт является преимуществом потому, что сигнал GPS существенно ухудшается внутри помещений вплоть до его полного отсутствия. Работая в труднодоступном месте, зачастую в местах крушения зданий или в глубоких шахтах, робот скорее всего не сможет установить устойчивую связь со спутниками и использовать GPS для автономной навигации к стартовой точке. По этой причине, с самого начала было решено не использовать GPS для работы алгоритма возврата на стартовую точку, а вместо этого модернизировать алгоритм SLAM для картографирования и локализации.
После реализации всех необходимых составляющих, они были объединены в одно целое для решения проблемы возврата робота на стартовую позицию в случае потери связи с телеоператором. После этого, были проведены завершающие эксперименты для верификации работоспособности полученной системы.
Возврат робота на стартовую точку в случае потери связи с телеоператором - это важная задача в мобильной робототехнике. Решение этой задачи позволяет обеспечить больший уровень сохранности робота и повышает удобство эксплуатации. Для реализации алгоритма возврата робота на стартовую точку в случае потери связи с телеоператором необходимо реализовать алгоритмы картографирования, построения маршрута,
автономной навигации и определения разрыва связи с телеоператором.
В ходе дипломной работы проблема возврата на стартовую точку в случае потери связи с телеоператором была декомпозирована на две составляющие:
- путь «от стартовой точки»
- путь «к стартовой точке»
На пути «от стартовой точки» робот картографирует окружающую местность, локализует себя на этой местности и сохраняет полученную карту. На пути «к стартовой точке», робот ищет кратчайший путь на стартовую точку на построенной карте и автономно следует по этому пути.
В ходе дипломной работы, для решения задачи картографирования и локализации с роботом «Сервосила Инженер» был интегрирован алгоритм Hector SLAM. В качестве сенсора использовался лазерный дальномер. Было продемонстрировано, что SLAM с помощью лазерного дальномера дает достаточно точные результаты как картографирования, так и локализации робота. Была построена карта 14-го этажа ИТИС, которая в дальнейшем будет служить картой для проведения экспериментов в симуляции. Для достижения наилучшего результата была проведена точная настройка алгоритмов. Было показано, что связка лазерная одометрия и лазерное картографирование дает хорошие результаты локализации и картографирования.
Для решения задачи построения маршрута были проведены многочисленные эксперименты и был выбран алгоритм A*. Этот алгоритм был интегрирован с роботом «Сервосила Инженер». Также, были проведены дополнительные эксперименты для улучшения качества построения маршрута. Для перевода построенного маршрута в отдельные команды для сервоприводов был реализован алгоритм base_controller.
Для решения задачи определения потери связи с оператором были изучены существующие решения этой проблемы. На основании существующих решений был разработан собственный алгоритм, анализирующий входящие UDP - пакеты на роботе. Этот алгоритм основывается на особенностях ПО робота «Сервосила Инженер» и не требует большого количества дополнительных вычислительных ресурсов.
После реализации отдельных алгоритмов, они были объединены в одну систему, которая решает проблему возврата робота на стартовую точку при потере связи с телеоператором. Алгоритмы были интегрированы с российским мобильным роботом «Сервосила Инженер». Алгоритм возврата на стартовую точку не требует дополнительной настройки и запускается при запуске робота. По результатам дипломной работы опубликована научная статья на конференцию ICAROB «Russian mobile robot Servosila Engineer: designing an optimal integration of an extra laser range finder for SLAM purposes.» [14]. Помимо этого, принята к публикации научная статья на конференцию DeSE «Mobile robot network failure detection and autonomous return algorithms».
[1] Bailey, T., & Durrant-Whyte, H. (2006). Simultaneous localization and mapping (SLAM): Part II. IEEE Robotics & Automation Magazine, 13(3), 108-117.
[2] Quigley, M., Conley, K., Gerkey, B., Faust, J., Foote, T., Leibs, J., ... & Ng, A. Y. (2009, May). ROS: an open- source Robot Operating System. In ICRA workshop on open source software (Vol. 3, No. 3.2, p. 5).
[3] Yao, J., Lin, C., Xie, X., Wang, A. J., & Hung, C. C. (2010, April). Path planning for virtual human motion using improved A* star algorithm. In Information Technology: New Generations (ITNG), 2010 Seventh International Conference on (pp. 1154-1158). IEEE.
[4] Thrun, S. (2003). Learning occupancy grid maps with forward sensor models. Autonomous robots, 15(2), 111127.
[5] Chenavier, F., & Crowley, J. L. (1992, May). Position estimation for a mobile robot using vision and odometry. In Robotics and Automation, 1992. Proceedings., 1992 IEEE International Conference on (pp. 2588-2593). IEEE.
[6] https://kpfu.ru/itis/science/kafedra-intellektualnoi-robototehniki/lirs
[7] Misra, P., & Enge, P. (2006). Global positioning system: Signals, measurements and performance second edition. Massachusetts: Ganga-Jamuna Press.
[8] Shimizu, T., Awai, M., Yamashita, A., & Kaneko, T. (2012). Mobile robot system realizing human following and autonomous returning using laser range finder and camera. Proceedings of the 18th FCV, 97-102.
[9] Tsuda, N., Harimoto, S., Saitoh, T., & Konishi, R. (2009, September). Mobile robot with following and returning mode. In Robot and Human Interactive Communication, 2009. RO-MAN 2009. The 18th IEEE International Symposium on (pp. 933-938). IEEE.
[10] Awai, M., Shimizu, T., Kaneko, T., Yamashita, A., & Asama, H. (2013). Hog-based person following and autonomous returning using generated map by mobile robot equipped with camera and laser range finder. In Intelligent Autonomous Systems 12 (pp. 51-60). Springer, Berlin, Heidelberg.
[11] Nguyen, V., Martinelli, A., Tomatis, N., & Siegwart, R. (2005, August). A comparison of line extraction algorithms using 2D laser rangefinder for indoor mobile robotics. In Intelligent Robots and Systems, 2005.(IROS 2005). 2005 IEEE/RSJ International Conference on (pp. 1929-1934). IEEE.
[12] M. Sokolov, R. Lavrenov, A. Gabdullin, I. Afanasyev & E. Magid. 3D modelling and simulation of a crawler robot in ROS/Gazebo. 4th Int. Conf. on Control, Mechatronics and Automation (2016), pp. 61-65.
[13] Mavrin, I., Lavrenov, R., Svinin, M., Sorokin, S., & Magid, E. (2018). Remote control library and GUI development for Russian crawler robot Servosila Engineer. In MATEC Web of Conferences (Vol. 161, p. 03016). EDP Sciences.
[14] Alishev, N., Lavrenov, R., & Gerasimov, Y. (2018). Russian mobile robot Servosila Engineer: designing an optimal integration of an extra laser range finder for SLAM purposes. In Int. Conf. on Artificial Life and Robotics (pp. 204-207).
[15] E. Magid & T. Tsubouchi. Static balance for rescue robot navigation: Discretizing rotational motion within random step environment. In Int. Conf. on Simulation, Modeling, and Programming for Autonomous Robots (Springer, Berlin, Heidelberg, 2010, November), pp. 423-435
[16] urg_node, ROS package: http://wiki.ros.org/urg node
[17] Holz, D., & Behnke, S. (2010, May). Sancta simplicitas-on the efficiency and achievable results of SLAM using ICP-based incremental registration. In Robotics and Automation (ICRA), 2010 IEEE International Conference on (pp. 1380-1387). IEEE.
[18] Carlone, L., Ng, M. K., Du, J., Bona, B., & Indri, M. (2010, May). Rao-Blackwellized particle filters multi robot SLAM with unknown initial correspondences and limited communication. In Robotics and Automation (ICRA), 2010 IEEE International Conference on (pp. 243-249). IEEE.
[19] Doucet, A., De Freitas, N., Murphy, K., & Russell, S. (2000, June). Rao-Blackwellised particle filtering for dynamic Bayesian networks. In Proceedings of the Sixteenth conference on Uncertainty in artificial intelligence (pp. 176-183). Morgan Kaufmann Publishers Inc..
[20] Grisetti, G., Stachniss, C., & Burgard, W. (2007). Improved techniques for grid mapping with rao-blackwellized particle filters. IEEE transactions on Robotics, 23(1), 34-46.
[21] Chang, W., Li, H., Mitra, N., Pauly, M., & Wand, M. (2012). Dynamic geometry processing.
[22] He, M., Takeuchi, E., Ninomiya, Y., & Kato, S. (2016, October). Precise and efficient model-based vehicle tracking method using Rao-Blackwellized and scaling series particle filters. In Intelligent Robots and Systems (IROS), 2016 IEEE/RSJ International Conference on (pp. 117-124). IEEE.
[23] Quigley, M., Stavens, D., Coates, A., & Thrun, S. (2010, October). Sub-meter indoor localization in unmodified environments with inexpensive sensors. In Intelligent Robots and Systems (IROS), 2010 IEEE/RSJ International Conference on (pp. 2039-2046). IEEE.
[24] Barnard, K. D. (2002). U.S. Patent No. 6,456,938. Washington, DC: U.S. Patent and Trademark Office.
[25] Kohlbrecher, S., Meyer, J., Petresen, K., & Graber, T. (2012). Hector SLAM for robust mapping in USAR environments. ROS RoboCup Rescue Summer School Graz.
[26] laser scan matcher, ROS package: http://wiki.ros.org/laser scan matcher
[27] Sariff, N., & Buniyamin, N. (2006, June). An overview of autonomous mobile robot path planning algorithms. In Research and Development, 2006. SCOReD 2006. 4th Student Conference on (pp. 183-188). IEEE.
[28] Jianya, Y. Y. G. (1999). An Efficient Implementation of Shortest Path Algorithm Based on Dijkstra Algorithm [J]. Journal of Wuhan Technical University of Surveying and Mapping (Wtusm), 3(004).
[29] move_base, ROS package: http://wiki.ros.org/move_base
[30] Tardioli, D., Mosteo, A. R., Riazuelo, L., Villarroel, J. L., & Montano, L. (2010). Enforcing network connectivity in robot team missions. The International Journal of Robotics Research, 29(4), 460-480.
[31] Mong-ying, A. H., Cowley, A., Kumar, V., & Taylor, C. J. (2006, May). Towards the deployment of a mobile robot network with end-to-end performance guarantees. In Robotics and Automation, 2006. ICRA 2006. Proceedings 2006 IEEE International Conference on (pp. 2085-2090). IEEE.
[32] Derbakova, A., Correll, N., & Rus, D. (2011, May). Decentralized self-repair to maintain connectivity and coverage in networked multi-robot systems. In Robotics and Automation (ICRA), 2011 IEEE International Conference on (pp. 3863-3868). IEEE.
[33] Hsieh, M. A., Cowley, A., Kumar, V., & Taylor, C. J. (2008). Maintaining network connectivity and performance in robot teams. Journal of field robotics, 25(1 - 2), 111-131.
[34] ros_upstart, ROS package: http://wiki.ros.org/ros_upstart