УДК 681.5.01
DOI 10.21685/2072-3059-2019-4-6
С. В. Боряк
СИСТЕМА УПРАВЛЕНИЯ ПЕРЕМЕЩЕНИЕМ МОБИЛЬНОГО РОБОТА В ЗАКРЫТЫХ ПОМЕЩЕНИЯХ НА ОСНОВЕ ДАННЫХ УЛЬТРАЗВУКОВОЙ СИСТЕМЫ
Аннотация.
Актуальность и цели. Объектом исследования является система управления перемещением мобильных роботов. Предмет исследования - методы поиска оптимального пути и алгоритм следования мобильного робота по построенному пути с применением абсолютной системы навигации. Целью работы является разработка алгоритма управления, позволяющего данной системе повысить точность по сравнению с системой, использующей относительную систему позиционирования.
Материалы и методы. Исследование проводилось с использованием среды Matlab, физической модели мобильного робота, ультразвуковой навигационной системы, а также методов поиска оптимального пути.
Результаты. Предложен алгоритм управления мобильной платформой, позволяющий минимизировать погрешность позиционирования в заданной точке.
Выводы. Предложенные состав системы и алгоритм управления позволяют повысить точность позиционирования мобильного робота по сравнению с относительными системами позиционирования.
Ключевые слова: алгоритмы, навигация, оптимальный путь, мобильный робот.
S. V. Boryak
A MOBILE ROBOT MOVEMENT CONTROL SYSTEM IN ENCLOSED SPACE BASED ON THE ULTRASONIC SYSTEM DATA
Abstract.
Background. The research object is a system for controlling the movement of mobile robots. The research subject is the methods for finding the optimal path and an algorithm for following a mobile robot along a constructed path using an absolute navigation system. The aim of the work is to develop a control algorithm that allows this system to increase accuracy compared to a system using a relative positioning system
Materials and methods. The study was conducted using the Matlab environment, a physical model of a mobile robot, an ultrasonic navigation system, and optimal path searching methods.
Results. A mobile platform control algorithm has been proposed to minimize positioning error at a given point.
© Боряк С. В., 2019. Данная статья доступна по условиям всемирной лицензии Creative Commons Attribution 4.0 International License (http://creativecommons.org/licenses/by/4.0/), которая дает разрешение на неограниченное использование, копирование на любые носители при условии указания авторства, источника и ссылки на лицензию Creative Commons, а также изменений, если таковые имеют место.
Conclusions. The proposed system composition and control algorithm can improve the accuracy of mobile robot positioning compared to relative positioning systems.
Keywords: algorithms, navigation, optimal path, mobile robot.
Введение
Сейчас повсеместно внедряется автоматизация [1], многие компании разрабатывают системы автопилотов для машин, ориентированные на закрытые или открытые помещения. Для открытых пространств базовой системой является GPS, для закрытых используются различные системы, но наибольшим потенциалом обладает ультразвуковая навигационная система (УЗС), работающая по принципу GPS, но в закрытых помещениях и с погрешностью в пределах 3 см. В данной статье описывается опыт в построении системы управления мобильным роботом на основе ультразвуковой системы отслеживания координат.
1. Аппаратные и программные средства
Для того чтобы робот переместился из текущей точки позиционирования в заданную, ему необходим ряд математических и технических средств. Исполнительным механизмом данного робота является пара шаговых двигателей 17HS4401. Данные шаговые двигатели имеют шаг углового поворота 1,8 гр, номинальный ток 1,7 А, крутящий момент при удержании 40 Н/см. У них две управляющих обмотки, что позволяет управлять этими двигателями простыми драйверами, также при помощи программных методов можно изменить шаг двигателей, подавая не стандартные импульсы, а сигнал синусоидальной формы, именно такой сигнал применялся для управления двигателями в данном проекте.
В качестве сенсоров используется ультразвуковая навигационная система с точностью определения координат ±2 см и частотой обновления 2 раза в секунду. Навигационная система предоставляет координаты в двумерном пространстве. Данная система описана в статье [2].
Для определения угла поворота мобильной платформы (МП) относительно стартового состояния используется датчик BNO080 [3]. Данный датчик является представителем интеллектуальных датчиков фирмы Bosch. В датчик интегрирован контроллер Cortex M0, который служит высокопроизводительным вычислительным ядром, в качестве сенсоров выступают магнитометр, акселерометр и гироскоп. Датчик имеет следующие основные характеристики: ошибка земного магнитного вектора 4,5 гр, ошибка гравитационного вектора 1,5 гр, точность измерения ускорения 0,3 м/с2, максимальная частота выходных данных 1 кГц. Данная линейка датчиков ориентирована на применение в роботах. Также благодаря использованию контроллера с энергонезависимой памятью данный датчик не только производит автокалибровку, что до недавнего времени приходилось делать пользователю, но и хранит у себя в памяти все калибровочные значения, в серии BNO055 эта функция отсутствовала. Несмотря на все его преимущества, в ходе испытаний было обнаружено, что установленный в датчике магнитометр обладает высокой чувствительностью ко всем типам металлов, поэтому использование магнитометра в жилых или рабочих помещениях нецелесообразно [4].
Помимо аппаратных средств потребуются алгоритмы для поиска пути в заданном помещении и для следования по этому пути. В качестве метода поиска пути используется вероятностный метод поиска пути Probabilistic Roadmaps Method (PRM), подробно описанный в [5-7]. Отличительной особенностью данного метода по сравнению с детерминированными является то, что он не рассчитывает путь через все точки поля, а случайно расставляет узлы графа на свободные участки рабочей области, а затем через них прокладывает кратчайший путь, учитывая все ограничения. Преимуществом данного метода является скорость работы, которую можно регулировать при помощи изменения количества расставляемых точек графа и максимального расстояния между ними. Чем меньше эти значения, тем быстрее строится карта и прокладывается маршрут, но тем меньше вероятность оптимальности этого маршрута. Данное значение предлагается искать автоматически, путем запуска алгоритма с минимальным количеством вершин графа и последующим их увеличением до тех пор, пока маршрут не удастся построить. Но эксперименты показали, что маршрут, построенный таким образом, чаще всего не является оптимальным, поэтому количество вершин графа в данном исследовании устанавливается вручную для конкретной карты в зависимости от ее сложности, ведь один раз назначив данное количество для конкретной карты, его не следует больше менять.
Также были рассмотрены другие методы поиска пути, протестирован метод Rapidly Exploring Random Trees, а также детерминированные методы из курса «Robotics: Computational Motion Planning» [8]. Данные методы показали не такие хорошие результаты. Поскольку рабочая область составляет 500 на 400 ячеек, то недопустимо медленно заполнять ей все ячейки, что сразу убирает детерминированные методы, а так как надо будет иногда править путь мобильного робота, не достигнув конечной точки, либо после достижения данной точки продолжать работу, то необходимо, чтобы построение нового маршрута на старой карте не сопровождалось перестройкой всего графа так как это является самой ресурсной операцией. Метод Rapidly Exploring Random Trees не удовлетворяет данному требованию. Всем требованиям лучше всего удовлетворяет метод (PRM).
Структурная схема системы управления МП представлена на рис. 1. В структуре данной системы присутствуют две обратных связи, одна внутренняя в мобильной платформе основанная на датчике BN0080, вторая внешняя, основанная на УЗС.
2. Планирование траектории движения
Для нахождения оптимального пути необходимо выполнить следующую последовательность действий:
1. Составить карту рабочей области вместе с препятствиями, изображение должно быть черно-белым, где черное обозначает закрытые места, а белое - открытые, на рис. 2 черным представлены закрытые места.
2. Отмасштабировать изображение, на этом шаге важно учесть минимальный размер препятствия или мобильного робота, в зависимости от того, что меньше. В данном случае принимаем масштаб: 1 ячейка матрицы к 10 мм; чем больше масштаб, тем более ресурсоемким будет построение пути, но в то же время более гибким.
Рис. 1. Структурная схема системы управления мобильной платформой: КЗ - координаты заданные; АУ - алгоритм управления; ЛП - линейное
перемещение; УП - угловое перемещение; МК - микроконтроллер; Д - двигатели; КТ - координаты текущие; УЗС - ультразвуковая система
Рис. 2. РЯМ рабочей зоны с траекторией движения
3. Преобразовать получившееся изображение в двумерный логический массив.
4. «Раздуть» все объекты карты (в том числе и стены) на значение, равное сумме радиуса платформы и погрешности позиционирования.
5. Установить количество вершин графа (синие точки на рис. 2) и максимальное расстояние между ними (голубые линии на рис. 2). Далее в статье будет рассматриваться, как влияют на точность позиционирования робота большие расстояния между вершинами графа.
6. Применить алгоритм поиска оптимального пути (РЯМ),
7. Если путь не был найден или результат не удовлетворителен, то необходимо вернуться к пункту 5 и увеличить число вершин графа или расстояние между ними.
При первом построении маршрута рекомендуется повторить пункт 6 несколько раз, чтобы убедиться, что алгоритм с подобранными настройками стабильно выдает удовлетворительные результаты. Так как метод вероятностный, то при повторном выполнении он может выдавать различные варианты пути, и необходимо убедится, что программа стабильно выдает удовлетворяющую условиям траекторию.
В результате проделанной работы был получен путь, представленный на рис. 2 сплошной оранжевой линией, для заданной рабочей области и мобильного робота с радиусом в 15 см.
Получившийся путь визуально оптимален, а так как число вершин графа равно 500, то и ресурсоемкость расчетов невелика по сравнению с 500^400, как необходимо считать в детерминированном подходе.
3. Следование по спланированному пути
Теперь составим алгоритм, который проведет мобильную платформу по полученному пути.
Главный алгоритм управления запускается в среде МаЙаЬ, он управляет мобильной платформой, которая принимает и выполняет три команды: перемещение, поворот и коррекция угла.
Главный алгоритм представлен на рис. 3.
4. Тестирование разработанных алгоритмов на физической модели
Протестируем данный алгоритм без коррекции по УЗС. Мобильная платформа будет перемещаться без обратной связи, только считая импульсы на шаговых двигателях и получая угол поворота с BNO080. Мобильная платформа будет перемещаться по прямоугольнику с размерами 1500 мм вдоль оси Х и 2000 мм вдоль оси У. Для отслеживания мобильной платформы в ходе движения используется УЗС. Мобильная платформа проедет 5 раз полный прямоугольник. В результате данного эксперимента была получена траектория движения, представленная на рис. 4 голубой линией.
На рис. 4 видно, что прямоугольная траектория каждого проезда поворачивается на определенный угол, что создает существенные ошибки в позиционировании, в то время как линейная ошибка перемещения не имеет существенной погрешности. Угловая ошибка накапливается в датчике BNO080, в мобильной платформе она лишь проявляется, что лишний раз доказывает необходимость использовать абсолютные системы позиционирования для коррекции ошибок, накапливающихся в относительных.
Теперь введем коррекцию ошибки угла и координат. В результате была получена траектория движения, представленная на рис. 5.
Угловая и линейная ошибки представлены на рис. 6 и 7 соответственно; в случае системы без коррекции - пунктирная линия, с коррекцией - сплошная линия.
Из экспериментальных данных следует, что система с коррекцией тоже имеет ошибку, но, в отличие от системы без коррекции, здесь ошибка не возрастает со временем, она всегда находится в одних и тех же пределах.
Рис. 3. Главный алгоритм управления МП
Теперь соединим систему построения маршрута с системой перемещения мобильного робота. Траектория движения показана на рис. 8. Сплошной линией изображена рассчитанная траектория, точками показан маршрут МП.
2.5 2
X 1.5
со
I— СО
сс о.
о о
1
0.5
о
Координата У(м) Рис. 4. Траектория движения без коррекции
I
1
0 12 3 4
Координата У(м) Рис. 5. Траектория движения с коррекцией
Рис. 6. Угловая ошибка
Рис. 7. Линейная ошибка
3.5
2.5
1.5
V /
0 1 2 3 4 5
Координата У(м)
Рис. 8. Траектория движения в заданную позицию
Ошибка позиционирования в конечной точке составляет 19 мм, что достаточно мало по сравнению с другими видами систем позиционирования. Данная точность получилась вследствие того, что конечный отрезок пути был достаточно мал. Как было показано ранее, самую большую ошибку позиционирования создает ошибка угла, и чем больше отрезок пути, тем больше влияние ошибки угла на ошибку позиционирования. В том случае, если последний отрезок пути велик, необходимо задать двойной проезд в конечную точку, таким образом, он повторным проездом скомпенсирует появившуюся ошибку до пределов 20 мм.
Заключение
В результате проведенных экспериментов было опытным путем доказано, что абсолютная система позиционирования лучше подходит для навигации мобильных роботов, чем относительная, так как в относительной системе позиционирования максимальная линейная ошибка достигла 280 мм, а угловая 7 гр, и они продолжали линейно возрастать. В то время как в системе с использованием абсолютной навигационной системы УЗС максимальная линейная ошибка достигла 90 мм а угловая 5 гр, и эти ошибки не имеют тенденции к росту с течением времени.
Библиографический список
1. Аналитический обзор мирового рынка робототехники 2019, Sberbank Robotics Laboratory // sberbank.ru. - URL: http://www.sberbank.ru/common/img/uploaded/pdf/ sberbank_robotics_review_2019_17.07.2019_m.pdf (дата обращения: 07.10.2019).
2. Ультразвуковой GPS // habr.com. - URL: https://habr.com/ru/post/451408/ (дата обращения: 07.10.2019).
3. BN0080/BN0085 Datasheet // hillcrestlabs.com. - URL: https://www.hillcrestlabs. com/downloads/bno080-datasheet (дата обращения: 07.10.2019).
4. BN0055 Handing, soldering & mounting instruction // bosch.com. - URL: https://ae-bst. resource.bosch.com/media/_tech/media/application_notes/B ST-BN0055-HS000.pdf (дата обращения: 07.10.2019).
5. Probabilistic Roadmaps (PRM) // mathworks.com. - URL: https://www.mathworks. com/help/robotics/ug/probabilistic-roadmaps-prm.html (дата обращения: 07.10.2019).
6. Path Planning in Environments of Different Complexity // mathworks.com. - URL: https://www.mathworks.com/help/robotics/examples/path-planning-in-environments-of-difference-complexity.html (дата обращения: 07.10.2019).
7. Kavraki, L. E. Probabilistic roadmaps for path planning in high-dimensional configuration spaces / L. E. Kavraki // IEEE Transactions on Robotics and Automation. -1996. - Vol. 12, № 4. - P. 566-580.
8. Robotics: Computational Motion Planning // coursera.org. - URL: https://ru.coursera. org/lecture/robotics-motion-planning/1-1-introduction-to-computational-motion-planning-hE9C7 (дата обращения: 07.10.2019).
References
1. Analiticheskiy obzor mirovogo rynka robototekhniki 2019, Sberbank Robotics Laboratory [An analytical review of the world robotics market in 2019, Sberbank Robotics Laboratory]. sberbank.ru. Available at: http://www.sberbank.ru/common/img/uploaded/ pdfsberbank_robotics_review_2019_17.07.2019_m.pdf (accessed Oct. 07, 2019). [In Russian]
2. Ul'trazvukovoy GPS [Ultrasound GPS]. habr.com. Available at: https://habr.com/ru/ post/451408/ (accessed Oct. 07, 2019). [In Russian]
3. BNO080/BNO085 Datasheet. hillcrestlabs.com. Available at: https://www.hillcrestlabs. com/downloads/bno080-datasheet (accessed Oct. 07, 2019).
4. BNO055 Handing, soldering & mounting instruction. bosch.com. Available at: https://ae-bst.resource.bosch.com/media/_tech/media/application_notes/BST-BN0055-HS000.pdf (accessed Oct. 07, 2019).
5. Probabilistic Roadmaps (PRM). mathworks.com. Available at: https://www.mathworks. com/help/robotics/ug/probabilistic-roadmaps-prm.html (accessed Oct. 07, 2019).
6. Path Planning in Environments of Different Complexity. mathworks.com. Available at: https://www.mathworks.com/help/robotics/examples/path-planning-in-environments-of-difference-complexity.html (accessed Oct. 07, 2019).
7. Kavraki L. E. IEEE Transactions on Robotics and Automation. 1996, vol. 12, no. 4, pp. 566-580.
8. Robotics: Computational Motion Planning. coursera.org. Available at: https://ru. coursera.org/lecture/robotics-motion-planning/1-1-introduction-to-computational-motion-planning-hE9C7 (accessed Oct. 07, 2019).
Боряк Сергей Васильевич аспирант, Пензенский государственный университет (Россия, г. Пенза, ул. Красная, 40)
Boryak Sergey Vasil'evich Postgraduate student, Penza State University (40 Krasnaya street, Penza, Russia)
E-mail: [email protected]
Образец цитирования:
Боряк, С. В. Система управления перемещением мобильного робота в закрытых помещениях на основе данных ультразвуковой системы / С. В. Боряк // Известия высших учебных заведений. Поволжский регион.
Технические науки. - 2019. - № 4 (52). - С. 77-86. - DOI 10.21685/2072-3059-
2019-4-6.