Введение 3
Постановка задачи 5
Обзор литературы 6
Глава 1. Среда симуляции 7
1.1. PhysX 8
Глава 2. Модель двухколесного робота с дифференциальным приводом 9
2.1. Двухколесный робот с дифференциальным приводом 9
2.2. Кинематическая модель 10
2.3. Динамическая модель 12
Глава 3. Идентификация динамической модели 15
3.1. Задание модели в Unity 16
Глава 4. Позиционирование робота 19
Глава 5. Система управления роботом 21
5.1. Комплекс связи с внешней программой 21
5.2. Обратная связь по изображению 23
5.3. Отработка траектории движения робота 27
Глава 6. Эксперименты 29
Выводы 35
Заключение 36
Список литературы 37
В современном мире процесс автоматизации проникает во многие отрасли жизни: собираются транспортные средства на производствах, предоставляются различные услуги доставки мобильными роботами в кафе и отелях. Мобильные роботы обеспечивают высокую производительность работы различных предприятий как промышленных, так и сферы услуг. Нет необходимости переживать об организации труда и ошибках, связанных с человеческим фактором. Для развития процесса автоматизации необходимо всестороннее исследование возможности управления мобильным роботом, используя современные передовые способы разработки роботов. Одной из первоочередных задач является задача отработки движения робота по заданной траектории с помощью управления значениями на моторах колес. Такое движение часто используется в сельскохозяйственной промышленности роботами, использующими GPS-навигацию, а также роботами-экскурсоводами или уже многим знакомыми роботами-пылесосами.
Работа с физическим прототипом робота может осложняться большой стоимостью его составных частей и исследовательского оборудования. Кроме того, существует риск неудачных и травмирующих экспериментов, которые могут привести к поломке оборудования. Симуляция позволяет решать проблемы безопасности, позволяя предотвратить опасные для целостности и работоспособности робота ситуации, а также симуляция существенно экономит время исследования в случае необходимости многократного повторения экспериментов, используя возможности одновременного запуска различных ситуаций, необходимых, например, для обучения нейронных сетей.
Благодаря продвинутым технологиям средств симуляции можно воссоздать разнообразные поверхности, наделяя их необходимыми физическими свойствами, симулируя сопротивление и силу трения.
Некоторые исследователи считают, что работа в симуляции—это слишком сложно и трудоемко [6]. Однако в действительности современные платформы имеют большой спектр возможностей, что позволяет реализовать все необходимое для решения поставленных задач без особых ограничений и усилий.
Учитывая развитие, которое получили различные движки симуляции за последнее время, актуальной становится задача исследования возможности использования средств симуляции для разработки систем управления мобильными роботами. В настоящее время доступно не так много бесплатных сред симуляции для эффективного проведения экспериментов по управлению транспортными средствами. В данной работе рассматривается платформа Unity3D, являющаяся общедоступной средой разработки, имеет неплохую документацию и широко используется для решения различных задач. Несмотря на основное направление применения данной платформы в качестве среды для разработки компьютерных игр, что влечет за собой разносторонние упрощения и оптимизации процессов вычисления, Unity поддерживает PhysX SDK 4, благодаря чему его можно использовать в качестве физического движка, для чего создано множество дополнительных возможностей описания взаимодействия объектов окружающей среды и транспортных средств с физической точки зрения.
В ходе работы были получены следующие результаты:
• реализована симуляционная модель движения мобильного двухколесного робота с дифференциальным приводом в среде Unity;
• организована коммуникация модели в Unity с внешней программой для управления с использованием информации с изображений;
• синтезированы регуляторы для отработки движения по траектории в двух режимах управления, выбран наиболее оптимальный регулятор;
• работоспособность системы продемонстрирована на примере нескольких симуляционных экспериментов.
Отметим, что в работе применены достаточно простые регуляторы. В дальнейшем планируется использовать полную информацию о траектории (скорости и ускорения) в обратной связи, а так же попробовать более сложные законы управления, в том числе, с учетом запаздывания управляющего сигнала. Помимо этого, особого внимания требует вопрос оценки скоростей по информации с видеокамеры ввиду неточностей распознавания. Также перспективным направлением является вопрос управления с визуальной обратной связью (visual servoing), который заключается в минимизации текущего и желаемого набора точек на изображении.
[1] Automatic generation and detection of highly reliable fiducial markers under occlusion / S. Garrido-Jurado, R. Munoz-Salinas, F.J. Madrid-Cuevas, M.J. Marin-Jimenez // Pattern Recognition. — 2014. — Т. 47, № 6. — С. 2280-2292.—Режим доступа: https://www.sciencedirect.com/ science/article/pii/S0031320314000235.
[2] Budlov Egor O., Sevostyanov Ruslan A. Colour markers localization system / Ed. by Klyuev Vitaly, Pyshkin Evgeny, Natalia Bogach. — United States : Association for Computing Machinery, 2018. — Nov. — P. 143-145.
[3] Carona Ricardo, Aguiar A. Pedro, Gaspar Jose. CONTROL OF UNICYCLE TYPE ROBOTS Tracking, Path Following and Point Stabilization. — 2008. —11.
[4] Corke Peter. Robotics, vision and control: fundamental algorithms in MATLAB® second, completely revised. — Springer, 2017. — Т. 118.
[5] Herbrechtsmeier Stefan, Witkowski Ulf, Riickert Ulrich. Bebot: A modular mobile miniature robot platform supporting hardware reconfiguration and multi-standard communication // FIRA RoboWorld Congress / Springer. — 2009. —С. 346-356.
[6] Ha Sehoon, Xu Peng, Tan Zhenyu и др. Learning to Walk in the Real World with Minimal Human Effort. — 2020. — 2002.08550.
[7] Papcun Peter, Zolotova Iveta, Tafsi Karim. Control and teleoperation of robot khepera via android mobile device through bluetooth and wifi // IFAC- PapersOnLine. — 2016. — Т. 49, № 25. —С. 188-193.
[8] Siegwart Roland, Nourbakhsh Illah R., Scaramuzza Davide. Introduction to Autonomous Mobile Robots. — 2nd изд. — The MIT Press, 2011. — ISBN: 0262015358.
[9] Veremey Evgeny I. Dynamical Correction of Positioning Control Laws // IFAC Proceedings Volumes. — 2013. — Т. 46, № 33. — С. 31-36. — 9th IFAC Conference on Control Applications in Marine Systems. Режим доступа: https://www.sciencedirect.com/science/article/ pii/S147466701646129X.
[10] Документация Unity по Wheel Collider. — Режим доступа: https:// docs.unity3d.com/ru/current/Manual/class-WheelCollider.html (дата обращения: 2021-05-24).
[11] Обнаружение маркеров с помощью OpenCv. — Режим доступа: https://docs.opencv.org/master/d5/dae/ tutorial_aruco_detection.html (дата обращения: 2021-05-24).
[12] Описание связи систем координат изображения и камеры с геометрической точки зрения. — Режим доступа: https://learnopencv.com/ geometry-of-image-formation/ (дата обращения: 2021-05-24).
[13] Репозиторий с исходным кодом. — Режим доступа: https://github. com/AnJoie/MultipurposeRobots (дата обращения: 2021-05-24).