НАУЧНО-ТЕХНИЧЕСКИИ ВЕСТНИК ИНФОРМАЦИОННЫХ ТЕХНОЛОГИИ, МЕХАНИКИ И ОПТИКИ май-июнь 2017 Том 17 № 3 ISSN 2226-1494 http://ntv.ifmo.ru/
SCIENTIFIC AND TECHNICAL JOURNAL OF INFORMATION TECHNOLOGIES, MECHANICS AND OPTICS
May-June 2017
Vol. 17 No 3 ISSN 2226-1494
http://ntv.ifmo.ru/en
УДК 681.51
АЛГОРИТМ ОРГАНИЗАЦИИ ДВИЖЕНИЯ МОБИЛЬНОГО РОБОТА ПО ПЕРЕСЕЧЕННО Й МЕСТНОСТИ
М.И. Евстигнеев3, Ю.В. Литвинов3, В.В. Мазулина3, М.М. Чащина3
a Университет ИТМО, Санкт-Петербург, 197101, Российская Федерация Адрес для переписки: yurl13@yandex.ru Информация о статье
Поступила в редакцию 06.03.17, принята к печати 28.03.17 doi: 10.17586/2226-1494-2017-17-3-393-399 Язык статьи - русский
Ссылка для цитирования: Евстигнеев М.И., Литвинов Ю.В., Мазулина В.В., Чащина М.М. Алгоритм организации движения мобильного робота по пересеченной местности // Научно-технический вестник информационных технологий, механики и оптики. 2017. Т. 17. № 3. С. 393-399. doi: 10.17586/2226-1494-2017-17-3-393-399
Аннотация
Предложен алгоритм управления колесным роботом на пересеченной местности по заданному маршруту. Выполнена проверка работоспособности предложенных алгоритмов с помощью математического моделирования и экспериментальных исследований на колесной платформе фирмы «Odyssey» и блока управления на базе платы Arduino UNO. Робот функционирует в автономном режиме. Анализ окружающей среды осуществляется при помощи ультразвуковых датчиков, гироскопа, системы технического зрения и GPS-модуля. Полученные с сенсоров данные используются блоком управления робота для расчета траектории объезда препятствий и возврата на заданный маршрут, а также для корректировки локальной карты местности. Интеллектуальность робота заключается в возможности определять характер своих действий в зависимости от изменений в окружающей среде. Экспериментальное исследование на базе платформы «Odyssey» подтвердило правильность выбранного подхода. Ключевые слова
пересеченная местность, мобильный робот, система технического зрения, траектория объезда, обнаружение препятствий
ALGORITHM FOR MOBILE ROBOT CROSS COUNTRY MOTION M.I. Evstigneev3, Yu.V. Litvinov3, V.V. Masulina3, M.M. Chashchina3
3 ITMO University, Saint Petersburg, 197101, Russian Federation Corresponding author: yurl13@yandex.ru Article info
Received 06.03.17, accepted 28.03.17 doi: 10.17586/2226-1494-2017-17-3-393-399 Article in Russian
For cit3tion: Evstigneev M.I., Litvinov Yu.V., Masulina V.V., Chashchina M.M. Algorithm for mobile robot cross country motion. Scientific and Technical Journal of Information Technologies, Mechanics and Optics, 2017, vol. 17, no. 3, pp. 393-399 (in Russian). doi: 10.17586/2226-1494-2017-17-3-393-399
Abstract
We have proposed control algorithm for a wheeled robot cross country movement along a given route. We have carried out functionality test of the proposed algorithms with the use of mathematical modeling and experimental studies on a wheeled platform of "Odyssey" company and the control unit on the basis of Arduino UNO. The robot operates in autonomous mode. Environmental analysis is carried out by means of ultrasonic sensors, gyroscope, vision systems and GPS module. Data received from the sensors is used by robot control unit to calculate the trajectories for obstacle avoidance and return to the set route, as well as for correction of local maps. The robot intelligence lies in the ability to determine the nature of its actions depending on the environment changes. Experimental study based on "Odyssey" platform has confirmed the correctness of the chosen approach. Keywords
cross country, mobile robot, vision system, by-pass route, obstacle detection
Введение
Исследование поверхности, о которой нет полной информации не только в земных условиях, но и при исследовании небесных тел солнечной системы, таких как Луна, Марс, астероиды и кометы, требует разработки и создания автоматических аппаратов. Естественно, что для этой цели наиболее подходящим средством будет являться мобильный робот. В настоящее время чаще всего рассматриваются алгоритмы
движения робота по ровной поверхности с препятствиями [1, 2]. Проблемы возникают при переходе на пересеченную местность. В существующих на сегодня роботах, предназначенных для работы на пересеченной местности, упор делается на усовершенствование механической составляющей конструкции и увеличение степени подвижности мобильной платформы. Примерами являются четырехколесный робот «Sample-Return Rover» с активной шарнирной подвеской [3] или платформа «Shrimp», управление которой происходит за счет регулирования вращающего момента на колесах и оценки вероятности скольжения каждого колеса [4, 5]. Недостатком рассмотренных систем является отсутствие алгоритмов идентификации и объезда участков, не проходимых роботом, например, случаи, когда робот идентифицирует наклонные поверхности как препятствия.
Настоящая работа посвящена разработке автономного мобильного робота на базе платформы «Оdyssey», перед которым стоят следующие задачи: движение по заданной на пересеченной местности траектории, обнаружение препятствий и их объезд, возврат на первоначально заданный маршрут, построение или корректировка карты местности и определение собственных координат на ней в режиме реального времени. В работе предложен алгоритм, основанный на оценке наличия препятствий и характера поверхности движения видеокамерами, ультразвуковыми датчиками (УЗ-датчиками) и гироскопом (рис. 1). Две видеокамеры и один УЗ-датчик закреплены на штанге, поворачивающейся на + 180°.
Рис. 1. Измерение профиля поверхности. Як - радиус колеса, Н0 - расстояние от УЗ-датчика до поверхности, Н- глубина «ямы»
Еще два УЗ-датчика вынесены на штангах на некоторое расстояние вперед и находятся над условной колеей перед колесами (рис. 2, а). Эти датчики предназначены для определения профиля поверхности перед колесами.
Рис. 2. Схема расположения выносных УЗ-датчиков над колеей (а); возможный профиль поверхности перед колесом (б)
Результаты измерений поступают на микропроцессор, где пересчитываются в расстояние от горизонтальной поверхности до оси колеса Як. Если величина препятствия ±Н < 0,3 Як, то робот может преодолеть такой «бугор» или «яму» и продолжить движение (рис. 2, б). Проведенный эксперимент показал, что робот может преодолевать препятствия типа «яма» или «бугор» с наклоном р < ±30°. Для исключения попадания робота в «ловушку», из которой он не сможет выбраться, необходимо определять угол наклона впереди лежащей местности (рис. 3). Для этого используется гироскоп и УЗ-датчик на вертикальной штанге, закрепленной на сервоприводе (рис. 1).
Алгоритм работы следующий. Измеряется расстояние до встречного склона в начальный момент времени О1, данные заносятся в массив. Робот начинает движение, и снова измеряется расстояние до препятствия О2 в следующий момент времени. Угол а и АО известны благодаря информации, полученной с гироскопа и энкодера. Тогда угол наклона встречного склона можно определить как
Р = атС^ (А / АО*), где АН = \%а-АО ; АО* = О1 -(О2 +АО).
А
Рис. 3. «Фиктивное» препятствие - встречный склон. АН - перепад высот поверхности между измерениями дальности, АО - разность между 1-м и 2-м измерениями дальности с учетом угла наклона поверхности
Математическая модель мобильного робота
Рассмотрим движение робота в следующей системе координат (рис. 4).
Рыскание
<J
Тангаж
а б
Рис. 4. Принятая система координат: x, y, z - неподвижная система координат (а); x', y', z' - связанная с роботом система координат (б).
N - произвольная ось, вокруг которой возможен поворот объекта (робота)
Оператором при формировании маршрута следования задается исходная карта местности в неподвижной системе координат с известными на данный момент препятствиями. В процессе движения по подвергшейся изменениям территории необходимо нанести на исходную карту обнаруженные препятствия, т.е. определить их координаты через подвижную систему координат робота. Для этого необходим пересчет в неподвижную систему координат xt, y¡, z t, положение которых определяется относительно центра масс робота (рис. 4).
Пересчет координат происходит по формуле (1):
cos ф-cos y-sin ф-sin y-cos 8 cos ф-sin y + sin ф-cos y-cos 8 sin ф-sin 8 -sin ф-cos y-cos ф-sin y-cos 8 -sin ф-sin y + cos ф-cos y-cos 8 cos ф-sin 8 sin8-siny -sin8-cos y cos 8
Перемещение робота описывается системой линейных дифференциальных уравнений [3]
X = Ax + Bu,
где А и В - матрицы состояния и управления соответственно, x - вектор состояний, y - угол курса (рысканья), 8 - угол тангажа, ф - угол крена, v - модуль вектора скорости робота, u - вектор управления.
Уравнение (2) можно представить в следующем виде:
" У"
y' =
z'
X
y
z
(1)
(2)
ф 1 0 0 0" ф
y 0 1 0 0 y + Bu
=
8 0 0 1 0 8
V 0 0 0 1 V
где ф, у, (3, V - производные соответствующих переменных.
Скорость движения определяется энкодером, а углы у, 9 , ф и их угловые скорости снимаются с гироскопа. Получив эти данные, можно определить координаты робота в неподвижной системе координат и зафиксировать обнаруженные препятствия. При движении робота на открытом пространстве для
определения его положения в режиме реального времени используется модуль GPS. Если сигнал с устройства пропадет, то координаты робота будут вычисляться при помощи энкодера и гироскопа. Как только сигнал GPS будет вновь зафиксирован, показания энкодера могут быть откорректированы. Это позволит избежать накопления ошибки пройденного расстояния.
Общий алгоритм движения робота
Независимо от характера рабочей поверхности, робот придерживается следующего алгоритма движения (например, из точки А в точку Б). Датчики постоянно сканируют лежащую впереди местность. Обнаружив препятствие, робот останавливается. Ось с датчиками поворачивается на 90° влево и на 90° вправо от центрального положения, а затем возвращается в исходное положение. Во время поворотов в массив данных заносятся углы поворота сервопривода с датчиками и расстояния до препятствия. Затем из массива выбирается угол, при котором препятствие не было зафиксировано. Если такое значение обнаружено, то робот поворачивает на нужный угол и совершает маневр объезда с выходом на заданную траекторию движения (рис. 5). Эти процедуры выполняются в цикле до тех пор, пока не будет достигнута цель [6-8].
Идентификация статических препятствий, с которыми может столкнуться мобильная платформа, осуществляется при помощи стереозрения. Для этого на одной оси установлены две идентичные видеокамеры на вертикальной поворотной оси так, чтобы их главные оптические оси были параллельны друг другу и параллельны плоскости движения. Расстояние до точек препятствия Z вычисляется по следующей формуле:
z = fl, d
где f — фокальное расстояние фотоприемников; T — расстояние между центрами проекций камер (база); d — величина смещения проектируемой точки на изображениях левой и правой камер.
Рис. 5. Укрупненный алгоритм объезда препятствий
Алгоритм движения по пересеченной местности
В случае движения по пересеченной местности элементная база робота дополняется еще двумя УЗ-датчиками, вынесенными на некоторое расстояние вперед за габариты робота и направленными вниз, как это было показано на рис. 2, а. Для того чтобы не попасть на опасный участок, в дополнение к сигналам от УЗ-датчиков используются данные с гироскопа [9, 10]. С него снимаются данные о скорости
изменения угла наклона в мобильного робота (рис. 6). Если значение Н лежит в допустимых пределах, т.е. меньше Як/3, то учитывается скорость изменения угла наклона поверхности в и вычисляется значение самого угла наклона в [11].
Z0,
Рис. 6. Движение робота по наклонной поверхности
Если угол наклона поверхности не превышает + 30°, что соответствует максимально допустимому углу наклона поверхности, которую может преодолеть робот без проскальзывания, то движение продолжается в ту же сторону. Если угол наклона плоскости движения не попадает в указанный диапазон, то этот участок помечается как помеха, и подключается алгоритм объезда препятствия [5, 12]. Если угол в начинает приближаться к максимально допустимому значению, то контроллер отправляет на драйвер двигателей команду на снижение скорости движения на опасном участке вплоть до полной остановки.
Экспериментальное исследование
Для выполнения эксперимента была разработана функциональная схема робота и выбрана его элементная база из стандартных модулей для АМшпо ЦКО [13].
Роутер
Микроконтроллер Драйвер двигателя
Гироскоп
Оператор
-ервопривод
Да
ь,
Ь
Да
ШВ камера
УЗ-датчик
Рис. 7. Функциональная схема и состав оборудования для реализации алгоритма: Да - изменение угла поворота видеокамер и УЗ-датчика (рис. 1), 11АРТ - линия связи
На основе функциональной схемы (рис. 7) была собрана модель мобильного робота и проведен эксперимент по определению профиля поверхности на пути движения робота. Был смоделирован участок пересеченной местности с небольшими «ямами» и «буграми», по которой двигался робот. Данные с УЗ-датчиков поступали в блок управления, где, в соответствии с предложенным алгоритмом, производилась обработка результатов измерений. Если перед какой-нибудь из сторон колес оказывались «яма» или «бугор», превышающие 1/3 радиуса колеса, то робот переходил в режим объезда препятствия:
останавливался, отъезжал назад на некоторое расстояние, поворачивал в сторону отсутствия препятствия и продолжал движение, контролируя профиль поверхности перед колесами. Затем по данным гироскопа возвращался на заданную траекторию. Учитывая слабые вычислительные возможности бортового микроконтроллера, основная обработка информации пока проводилась внешним компьютером.
На рис. 8 приведены графики результатов измерений УЗ-датчиками профиля пересеченной местности по каждой колее при движении мобильного робота.
H, см 0
-20
-40 -60
\
* ь
H, см 0
2 4 6
8 10 а
12 14 16 t, с
2 4 6 8
10 12 14 16 б
18 t, с
Рис. 8. Профиль пересеченной местности, по которой двигался робот: под левыми колесами (а);
под правыми колесами (б)
В результате проведенных исследований было установлено, что желательно изменять частоту испускаемого дальномером сигнала прямо пропорционально скорости движения робота. Это позволит снизить вычислительную нагрузку на контроллере при малых скоростях и обезопасить робот при больших скоростях [14].
Заключение
В работе предложен алгоритм обнаружения и объезда мобильным колесным роботом препятствий на плоскости и на пересеченной местности, позволяющий роботу самостоятельно принимать решение о ходе дальнейших действий. Алгоритм также позволяет избегать ситуаций, когда робот не может преодолеть какой-либо участок заданной траектории на пересеченной местности, т.е. попасть в «ловушку», из которой невозможно выбраться. Экспериментальное исследование на базе платформы «Odyssey» подтвердило правильность выбранного подхода.
В дальнейшем планируется более полно использовать возможности технического зрения для идентификации препятствий на пути движения мобильного робота.
Литература
Tzafestas S.G. Introduction to Mobile Robot Control. Elsevier, 1. 2014. 692 p.
Мазулина В.В., Евстигнеев М.И., Гао Лу, Лазаревич А.А., 2. Литвинов Ю.В., Мищенко Г.М., Фролов С.Н. Организация движения мобильного робота в заданную точку с учетом препятствий // Materialy X mezinarodni vedecko-prakticka conference «Veda a technologie: krok do budoucnosti - 2014». Praha, 2014. С. 40-45.
Iagnemma K., Dubowsky S. Mobile Robot in Rough Terrain: 3. Estimation, Motion Planning, and Control with Application to Planetary Rovers. Springer, 2004. 111 p. doi: 10.1007/b94718 Cook G. Mobile Robots: Navigation, Control and Remote 4. Sensing. Wiley, 2011. 319 p.
Siegwart R., Nourbakhsh I.R., Scaramuzza D. Introduction to 5. Autonomous Mobile Robots. 2nd ed. Cambridge, MIT Press, 2011. 472 p.
Мищенко Г.М., Мазулина В.В. Идентификация и обход 6. препятствия на пути следования мобильного робота с использованием технического зрения // Альманах научных работ молодых ученых Университета ИТМО. 2015. Т. 2. С. 164-167.
Салмыгин И.П., Литвинов Ю.В., Мазулина В.В., Бушуев А.Б., 7. Фролов С.Н. Алгоритмы обхода препятствий при программном управлении мобильным роботом // Материали за 9-а международна научна практична конференция «Бъдещите изследвания». 2013. Т. 29. С. 96-98.
References
Tzafestas S.G. Introduction to Mobile Robot Control. Elsevier, 2014, 692 p.
Mazulina V.V., Evstigneev M.I., Gao Lu, Lazarevich A.A., Litvinov Yu.V., Mishchenko G.M., Frolov S.N. Planning of mobile robot movement to a set point taking into account obstacles. Materialy X Mezinarodni Vëdecko-Prakticka Conf. "Vëda a technologie: krok do budoucnosti". Praha, 2014, pp. 40-45.
Iagnemma K., Dubowsky S. Mobile Robot in Rough Terrain: Estimation, Motion Planning, and Control with Application to Planetary Rovers. Springer, 2004, 111 p. doi: 10.1007/b94718 Cook G. Mobile Robots: Navigation, Control and Remote Sensing. Wiley, 2011, 319 p.
Siegwart R., Nourbakhsh I.R., Scaramuzza D. Introduction to Autonomous Mobile Robots. 2nd ed. Cambridge, MIT Press, 2011, 472 p.
Mishchenko G.M., Mazulina V.V. Identification and circumvention of the obstacle on the mobile robot route using technical vision. Al'manakh Nauchnykh Rabot Molodykh Uchenykh Universiteta ITMO, 2015, vol. 2, pp. 164-167. (In Russian)
Salmygin I.P., Litvinov Yu.V., Mazulina V.V., Bushuev A.B., Frolov S.N. Algorithms for obstacle avoidance under software control of mobile robot. Materialy za 9 Mezhdunarodna Nauchna Praktichna Konferentsiya «B"deshchite Izsledvaniya», 2013, vol. 29, pp. 96-98.
8. Мазулина В.В., Литвинов Ю.В., Фролов С.Н. Использование веб-камеры для обнаружения препятствия на пути движения мобильного робота // Системи обробки шформацп. № 7 (114). С. 24-26.
9. Kelly A. Mobile Robotics: Mathematics, Models, and Methods. Cambrige University Press, 2013. 716 p.
10. Бушуев А.Б., Литвинов Ю.В., Мазулина В.В., Фролов С.Н. Организация программного движения мобильного робота при обходе препятствий // Современные тенденции в образовании и науке. 2013. С. 25-27.
11. Dudek G., Jenkin M. Computional Principles of Mobile Robotics. 2nd ed. Cambrige University Press, 2010. 406 p.
12. Евстигнеев Д. Системы управления интеллектуальных мобильных роботов в среде Dyn-Soft RobSim5. Часть III. Москва, 2014. 190 с.
13. Евстигнеев М.И., Литвинов Ю.В., Мазулина В.В., Мищенко Г.М. Алгоритмы управления четырехколесным роботом при движении по пересеченной местности // Известия высших учебных заведений. Приборостроение. 2015. Т. 58. № 9. С. 738-741. doi: 10.17586/0021-3454-2015-58-9-738-741
14. Ayache N. Artificial Vision for Mobile Robots: Stereo Vision and Multisensory Perception. MIT Press, 1991. 342 p.
Авторы
Евстигнеев Максим Игоревич- аспирант, Университет ИТМО, Санкт-Петербург, 197101, Российская Федерация, makcim269@mail.ru
Литвинов Юрий Володарович - кандидат технических наук, доцент, старший преподаватель, Университет ИТМО, Санкт-Петербург, 197101, Российская Федерация, yurl13@yandex.ru Мазулина Вероника Васильевна - аспирант, Университет ИТМО, Санкт-Петербург, 197101, Российская Федерация, nikasummit@rambler.ru
Чащина Мария Максимовна - студент, Университет ИТМО, Санкт-Петербург, 197101, Российская Федерация,
marichaschina@mail.ru
8. Mazulina V.V., Litvinov Yu.V., Frolov S.N. Using a web camera to detect obstacles in the mobile robot way. Sistemi Obrobki Informatsii, no. 7, pp. 24-26. (In Russian)
9. Kelly A. Mobile Robotics: Mathematics, Models, and Methods. Cambrige University Press, 2013, 716 p.
10. Bushuev A.B., Litvinov Yu.V., Mazulina V.V., Frolov S.N. Organization of software mobile robot motion in traversing obstacles. Sovremennye Tendentsii v Obrazovanii i Nauke, 2013, pp. 25-27.
11. Dudek G., Jenkin M. Computional Principles of Mobile Robotics. 2nd ed. Cambrige University Press, 2010, 406 p.
12. Evstigneev D. Intelligent Mobile Robot Control Systems in Dyn-Soft RobSim5. Part 3. Moscow, 2014, 190 p.
13. Evstigneev M.I., Litvinov Yu.V., Mazulina V.V., Mishchenko G.M. Algorithms of control over four-wheel robot moving over rough terrain. Journal of Instrument Engineering, 2015, vol. 58, no. 9, pp. 738-741. doi: 10.17586/0021-3454-2015-58-9-738741
14. Ayache N. Artificial Vision for Mobile Robots: Stereo Vision and Multisensory Perception. MIT Press, 1991, 342 p.
Authors
Maksim I. Evstigneev - postgraduate, ITMO University, Saint Petersburg, 197101, Russian Federation, makcim269@mail.ru
Yury V. Litvinov - PhD, Associate professor, Senior lecturer, ITMO University, Saint Petersburg, 197101, Russian Federation, yurl13@yandex.ru
Veronika V. Mazulina - postgraduate, ITMO University, Saint Petersburg, 197101, Russian Federation, nikasummit@rambler.ru
Maria M. Chashchina - student, ITMO University, Saint Petersburg, 197101, Russian Federation, marichaschina@mail.ru