УДК 62.50
РАЗРАБОТКА СИСТЕМЫ ТРАЕКТОРНОГО УПРАВЛЕНИЯ МО БИЛЬНЫМ РОБОТОМ С РОЛИКОНЕСУЩИМИ КОЛЕСАМИ1 Ю.А. Капитанюк3, А.А. Капитонов3, С.А. Чепинский3
а Санкт-Петербургский национальный исследовательский университет информационных технологий, механики и оптики (Университет ИТМО), Санкт-Петербург, Россия, [email protected]
Представлена разработка системы траекторного управления мобильным роботом с роликонесущими колесами. Данный тип роботов позволяет осуществлять раздельное управление каждой степенью свободы за счет специальной конструкции колес, что существенно облегчает решение задачи управления пространственным положением и позволяет сосредоточиться непосредственно на разработке алгоритмов. Синтез закона управления осуществляется на базе кинематической модели. Желаемая траектория, вдоль которой необходимо реализовать движение, задается как гладкая неявная функция в неподвижной системе координат. Синтез управления осуществляется с помощью дифференциально-геометрического метода посредством нелинейного преобразования исходной кинематической модели к за-дачно-ориентированной форме, описывающей продольное движение вдоль траектории и ортогональное отклонение. Для преобразованной модели синтезируются пропорциональные регуляторы с прямой компенсацией нелинейных составляющих. Основные результаты представлены нелинейными алгоритмами управления и экспериментальными данными. Для иллюстрации работоспособности подхода выполнена апробация в виде реализации данной системы для робота RobotiM от фирмы Festo Didactics. В качестве желаемых траекторий движений рассматриваются прямолинейный отрезок и окружность, комбинацией которых можно реализовать большинство практических задач управления мобильными роботами.
Ключевые слова: траекторное управление, мобильный робот, нелинейное преобразование моделей.
DEVELOPMENT OF TRAJECTORY CONTROL SYSTEM FOR THE OMNIDIRECTIONAL MOBILE ROBOT1 Y.A. Kapitanyuk% A.A. Kapitonov", S.A. Chepmskiy1'
а Saint Petersburg National Research University of Information Technologies, Mechanics and Optics (ITMO University), Saint Petersburg, Russia, [email protected]
The article deals with a trajectory control system development for the omnidirectional mobile robot. This kind of robots gives the possibility to control separately each degree of freedom due to special design of the wheels, which greatly facilitates the solution of the spatial control tasks and makes it possible to focus directly on the development of algorithms. Control law synthesis is based on kinematic model of a solid body on a plane. Desired trajectory is defined as a smooth implicit function in a fixed coordinate system. Procedure of control design is represented by using a differential-geometric method of nonlinear transformation of the original model to the task-oriented form, which describes the longitudinal motion along a trajectory and orthogonal deviation. Proportional controllers with direct compensation of nonlinear terms are synthesized for the transformed model. Main results are represented by nonlinear control algorithms and experimental data. Practical implementation of considered control laws for the Robotino mobile robot by Festo Didactics Company is done for illustration of this approach workability. The cases of straight line motion and movement along a circle are represented as desirable trajectories, and the majority of practical tasks for mobile robots control can be implemented by their combination. Keywords: trajectory control, mobile robot, nonlinear transformation of models.
Введение
В работе рассматривается построение системы управления траекторным движением мобильного робота с роликонесущими колесами, обеспечивающей перемещение робота по заданной траектории. Существуют два подхода к построению такого рода систем [1, 2]. Для первого подхода характерна разработка следящей системы, управляемой некоторой эталонной моделью [3, 4]. Как правило, в такой системе траектория задается некоторой функцией, зависящей от времени, что на практике приводит к проблемам, связанным с отставанием или опережением движения объекта от заданной программы, вызванными параметрическими неопределенностями или внешними возмущениями. Для решения этой проблемы можно параметризовать траекторию движения не временем, а длиной пути и ввести в модель системы динамику движения этого параметра [3]. Данный метод легко реализует движение вдоль полиномиальных кривых, что позволяет лучше спланировать траекторию движения и обеспечить большую точность следования вдоль нее, но результирующий регулятор имеет достаточно громоздкий вид.
В качестве альтернативы существует подход, базирующийся на стабилизации инвариантных многообразий в пространстве состояний [2]. Проще говоря, для исходной системы выбирается преобразование, образующее в пространстве состояния некоторый аттрактор. Если рассматривать траекторные задачи, то в качестве аттрактора выбирается желаемая траектория, заданная в терминах выходных координат. Соответственно, задачей проектанта становится уже стабилизация данного решения, что гораздо менее трудоемко, чем построение следящей системы в рамках первого подхода.
1 Работа выполнена при государственной финансовой поддержке ведущих университетов Российской Федерации
(субсидия 074-U01).
This work was financially supported by the Government of the Russian Federation, Grant 074-U01.
Как объект управления автономный робот является многоканальной нелинейной динамической системой. Задача, решаемая системой управления подвижного робота, заключается в создании управляющих воздействий, обеспечивающих наперед заданное перемещение центра масс в рабочем пространстве.
Используемый метод синтеза алгоритмов управления изначально был предложен И.В. Мирошником [5-16]. Он основан на втором подходе и предусматривает нелинейное преобразование модели робота к системе задачно-ориентированных координат, что дает возможность свести сложную многоканальную задачу управления к ряду простых задач компенсации линейных и угловых отклонений, а затем с помощью приемов нелинейной стабилизации найти адекватные законы управления [5, 16-19].
Общей тенденцией всех рассмотренных работ является то, что авторы исследования ограничиваются лишь теоретическими выкладками и компьютерным моделированием. Исходя из этого, большой интерес представляет именно задача экспериментальной проверки полученных результатов.
В качестве робота с роликонесущими колесами, на базе которого была выполнена эта работа, выбран мобильный робот Robotino от фирмы Festo Didactics (рис. 1). Данный тип роботов позволяет осуществлять раздельное управление каждой степенью свободы за счет специальной конструкции колес, что существенно облегчает решение задачи управления пространственным положением и позволяет сосредоточиться непосредственно на разработке алгоритмов.
Рис. 1. Мобильный робот Robotino Модель движения подвижного робота и постановка задачи управления
Положение корпуса робота (рис. 2) как твердого тела на плоскости характеризуется вектором, задающим положение (х, у) его центра масс С в базовой системе координат ХОУ, и углом поворота а системы координат, связанной с центром масс С , относительно базовой системы координат [11]. Кинематическая модель движения робота как твердого тела может быть представлена в виде
= TT (а).
Vx
Vy
(i)
x
_ У _ а = ю,
где Vx - продольная скорость движения робота в связанной с центром масс C системе координат; Vy -
cos а sin а
поперечная скорость движения робота; ю - угловая скорость робота; Т(а) =
поворота, соответствующая базису с началом координат в точке С .
Г ■
V V
'у * х
- sin а cos а
матрица
(х , у )
O
X
Рис. 2. Автономный робот, траектория Б и задачно-ориентированные координаты (б, е)
Желаемая траектория робота представляет собой гладкий отрезок кривой 5 (рис. 2), неявное описание которого имеет вид
ее
x
Y( х, y) =
(4)
Y(х,y) = T (a* (s)) =
: SO(2),
Ф( x, У) = 0, (2)
а соответствующая локальная координата s (длина траектории) определяется выражением
s = у( x, у). (3)
Необходимо отметить, что описание кривой как гладкого геометрического объекта - не единственное, так что и выбор функций (2) и (3) неоднозначен. Основное ограничение на выбор функций Ф( x, y) и у( x, y) представлено условием регулярности [7], которое предусматривает, что матрица Якоби
ду / dx ду / ду дф / dx дф / dx
не вырождена для любых (x, у), принадлежащих кривой S , т. е. det Y(x, у) * 0.
Для регулярных геометрических объектов существует так называемое нормализованное описание [7], для которого матрица Якоби (4) при (x, у) е S является ортогональной, и можно записать
cos а* (s ) sin а* (s ) - sin а* (s ) cos а* (s )
где T(а*(s)) - матрица поворота, соответствующая подвижному базису (реперу) Френе [7]; а*(s) -
угол наклона касательной к траектории, определяющий текущую ориентацию базиса Френе и зависящий от длины траектории s.
Как показано в [7], матрица Френе удовлетворяет дифференциальному уравнению
T(а* (s)) = s£(s)ET(а* (s)), (5)
Г о 1 ]
где E = i о и |(s) - кривизна траектории. Из уравнения (5) также следует, что
а *= s£,(s). (6)
Угловую ориентацию робота по отношению к кривой S определим как
а = а* + Да, (7)
где Да = const - желаемая ориентация робота относительно траектории движения. В матричной записи выражение (7) принимает вид
T (а) = T (Да)Т (а*). (8)
Задача управления траекторным движением автономного робота ставится как задача поддержания голономного соотношения между выходами системы (x, у), заданного в форме (2). Оно дополняется описанием желаемого режима продольного движения основной точки вдоль желаемой траектории S , обычно устанавливаемого с помощью эталонной переменной s* (t) или эталонной скорости продольного движения V* (t) = s* (t).
Введем в рассмотрение ошибки траекторного движения [8-10]. Нарушение условия (2) характеризуется ортогональным отклонением
e = ф( x, у), (9)
принимающим на множестве S нулевые значения. Текущее нарушение углового соотношения (7) определяется угловой ошибкой
8 = а - а* + Да. (10)
Таким образом, задача траекторного управления автономным роботом заключается в определении (в замкнутой форме) входов Vx, Vy и ю , которые обеспечивают:
- стабилизацию движения робота относительно кривой S , что подразумевает асимптотическое обнуление вектора пространственного отклонения e ;
- стабилизацию заданной угловой ориентации робота относительно кривой S , или асимптотическое обнуление относительной угловой ошибки 8 ;
- поддержание требуемого режима продольного движения мобильного робота, задаваемого с помощью простейшей эталонной модели
V* (t) = 5* (t) = const, или асимптотическое обнуление скоростной ошибки
Д^ (t) = V* (t) - ¿(t).
е7
Синтез алгоритмов управления движением
Для синтеза регуляторов, решающих траекторную задачу, преобразуем модель системы (1), принимая во внимание выражения (4) и (6), к задачно-ориентированной (траекторной) форме [7], в которой выходными переменными являются переменные 5, е и 5 . Для этого продифференцируем по времени уравнения (3), (9) и (10):
s x
= Y( x, y)
e _y _
= T (a*)T
a
(11)
8 = —,(s)s + (12)
Введем в рассмотрение виртуальные (задачно-ориентированные) управления с учетом выражения (8):
= TT(Да)
и5 = 5) 5 + ю.
Перепишем уравнения (11)-(14) в покомпонентной форме:
5 = и, е = и, 5 = и5.
5' е' 5
Теперь выберем регуляторы:
и = К*, и =-Ке, ио=-Ко5,
5 ^'е е'о о'
где Ке, К5 - положительные коэффициенты обратных связей.
Определим управляющие воздействия Ух, V и ю , следующим образом:
(13)
(14)
=T(Да)
v;
-Kee_
ю = -К о5+^(5)к;.
Для практической реализации данных алгоритмов необходимо выполнить еще одно действие, а именно - распределение управлений на электроприводы.
Для робота (рис. 3), колеса которого расположены равномерно на окружности с углом в 120°, матрица распределения управлений выглядит так:
- sin ( ?] cos (? ) L
0 1 L Vy
S,n [f ) cos (! ) L Ю
где Ь = 125 мм - дистанция от центра масс С до центра колеса; п = 16 - передаточное отношение редуктора электропривода; Я = 40 мм - радиус колеса.
П
Уу
y
Vx
O
X
Рис. 3. Мобильный робот с роликонесущими колесами
Результаты экспериментов
Для начала детальнее рассмотрим конструкцию робота. Аппаратная часть робота КоЪоИпо состоит из следующих подсистем:
a
x
1. система питания - аккумуляторные батареи, зарядное устройство, позволяющая роботу работать в автономном режиме несколько часов;
2. двигательная система (три двигателя постоянного тока, редуктор, роликонесущие колеса), позволяющая роботу двигаться в различных направлениях, ременная передача. При этом следует отметить, что для стабилизации скоростей вращения вала каждого из трех двигателей робота используются встроенные пропорционально-интегрально-дифференциальные регуляторы с предустановленными коэффициентами;
3. измерительная система (тахометры) для измерения скоростей вращения двигателей;
4. беспроводная система связи с внешним управляющим компьютером (^-Ркгочка доступа);
5. встроенный управляющий компьютер, осуществляющий взаимодействие всех систем робота, который состоит из двух компонентов - процессора РС 104 300 МГц и компактной АаБИ-карты (1024 МВ);
6. монтажная плата ввода/вывода, которая устанавливает коммуникационную связь между компьютером и датчиками, двигателем и интерфейсом ввода/вывода с КоЪойпо.
Г
1200 1000 800 600 400 200 0
-200 -400 -600
-800 -400 0 400 800 1200 X а
Y 800 600 400 200 0
-200 -400 -600 -800 200
400
600 800 б
1000 1200 X
t, c
Рис. 4. Изменения координат робота при движении вдоль прямой (а) и вдоль окружности (б); изменения ортогональной ошибки при движении вдоль прямой (в) и вдоль окружности (г))
Программное обеспечение робота можно разделить на два типа - внутреннее и внешнее. К внутреннему программному обеспечению относится операционная система Linux, осуществляющая взаимодействие аппаратного и программного обеспечения, обработку внутренних команд и обмен данными с внешним управляющим компьютером. К внешнему программному обеспечению относятся программы, использующие классы C++ с набором методов для связи и обмена данными с Robotino. В данной работе для связи с роботом был использован пакет OpenRobotino API.
В ходе эксперимента были реализованы задачи движения вдоль прямой линии и задача движения вдоль окружности. На графиках (рис. 4, а, б) представлены координаты центра масс робота, а также гра-
г
фики изменения ортогональной ошибки во времени (рис. 4, в, г). На графиках заметен сильный шум в измерениях датчика положения, но, несмотря на это, предложенные алгоритмы показывают неплохую сходимость к заданной траектории, что говорит о том, что поставленная задача решена.
Заключение
В работе рассматривалась разработка математического обеспечения системы траекторного управления мобильным роботом с роликонесущими колесами. Для иллюстрации работоспособности данного подхода была выполнена апробация на базе робота Robotino от фирмы Festo Didactics. В качестве целей для дальнейших исследований можно отметить реализацию данной задачи на базе динамической модели.
Литература
1. Aguiar A.P., Hespanha J.P., Kokotovic P.V. Path-following for nonminimum phase systems removes performance limitations // IEEE Transactions on Automatic Control. 2005. V. 50. N 2. P. 234-239.
2. Nielsen C., Fulford C., Maggiore M. Path following using transverse feedback linearization: Application to a maglev positioning system // Proceedings of the American Control Conference, ACC '09. St. Louis, USA, 2009. P. 3045-3050.
3. Breivik M., Fossen T.I. Principles of guidance-based path following in 2D and 3D // Proc. of the 44th IEEE Conference on Decision and Control, and the European Control Conference, CDC-ECC '05. Seville, Spain, 2005. V. 2005. P. 627-634.
4. Lee T., Leok M., McClamroch N.H. Geometric tracking control of a quadrotor UAV on SE(3) // Proceedings of the IEEE Conference on Decision and Control. Atlanta, USA, 2010. P. 5420-5425.
5. Бурдаков С.Ф., Мирошник И.В., Стельмаков Р.Э. Системы управления движением колесных роботов. СПб: Наука, 2001. 232 с.
6. Мирошник И.В. Согласованное управление многоканальными системами. Л.: Энергоатомиздат, 1990. 128 с.
7. Мирошник И.В., Никифоров В.О., Фрадков А.Л. Нелинейное и адаптивное управление сложными динамическими системами. СПб: Наука, 2000. 549 с.
8. Мирошник И.В., Чепинский С.А. Управление многозвенными кинематическими механизмами // Научно-технический вестник СПбГУ ИТМО. 2001. № 3 (3). С. 144-149.
9. Чепинский С.А., Мирошник И.В. Траекторное управление кинематическими механизмами нетривиальной конструкции // Научно-технический вестник СПбГУ ИТМО. 2004. № 3 (14). C. 4-10.
10. Капитанюк Ю.А., Чепинский С.А. Управление мобильным роботом по заданной кусочно-гладкой траектории // Гироскопия и навигация. 2013. № 2. С. 42-52.
11. Капитанюк Ю.А., Чепинский С.А. Задача управления многоканальной динамической системой по кусочно-гладкой траектории // Изв. вузов. Приборостроение. 2013. Т. 56. № 4. С. 65-70.
12. Miroshnik I.V., Chepinsky S.A. Trajectory control of underactuated mechanisms // Proc. 2nd IFAC Conference on Mechatronic Systems. Berkeley, 2002. P. 959-1004.
13. Miroshnik I.V., Chepinsky S.A. Trajectory motion control of underactuated manipulators // Prepr. 7th IFAC Symposium on Robot Control. Wroclaw, Poland, 2003. P. 105-110.
14. Miroshnik I.V., Nikiforov V.O. Trajectory motion control and coordination of multilink robots // Prepr. 13th IFAC World Congress. San-Francisco, 1996. V. A. P. 361-366.
15. Canudas de Wit C., Siciliano B., Bastin G. Theory of robot control. Springer-Verlag, London, 1996. 550 p.
16. Isidori A. Nonlinear control systems. 2nd ed. Springer-Verlag, Berlin, 1995. 549 p.
17. Капитанюк Ю.А., Чепинский С.А. Траекторное управление мобильным роботом в изменяющейся среде // Материалы докладов ХГУ Конференции молодых ученых «Навигация и управление движением» / Под общ. ред. В.Г. Пешехонова и О. А. Степанова. Санкт-Петербург, 2012. С. 506-512.
18. Бушуев А.Б., Исаева Е.Г. Морозов С.Н., Чепинский С.А. Управление траекторным движением многоканальных динамических систем // Изв. вузов. Приборостроение. 2009. Т. 52. № 11. С. 50-56.
19. Бобцов А.А., Капитанюк Ю.А., Капитонов А.А., Колюбин С.А., Пыркин А. А., Чепинский С. А., Ша-ветов С.В. Tехнология Lego Mindstorms NXT в обучении студентов основам адаптивного управления // Научно-технический вестник СПбГУ ИТМО. 2011. № 1 (71). С. 103-108.
Капитанюк Юрий Андреевич - аспирант, Санкт-Петербургский национальный исследовательский
университет информационных технологий, механики и оптики (Университет ИТМО), Санкт-Петербург, Россия, [email protected]
Капитонов Александр Александрович - аспирант, Санкт-Петербургский национальный исследовательский
университет информационных технологий, механики и оптики (Университет ИТМО), Санкт-Петербург, Россия, [email protected] Чепинский Сергей Алексеевич - кандидат технических наук, доцент, Санкт-Петербургский нацио-
нальный исследовательский университет информационных технологий, механики и оптики (Университет ИТМО), Санкт-Петербург, Россия, [email protected]
Yuri A Kapitanyuk Alexander A. Kapitonov Sergei A Chepinskiy
postgraduate, Saint Petersburg National Research University of Information Technologies, Mechanics and Optics (ITMO University), Saint Petersburg, Russia, [email protected]
student, Saint Petersburg National Research University of Information Technologies, Mechanics and Optics (ITMO University), Saint Petersburg, Russia, [email protected]
PhD, Associate professor, Saint Petersburg National Research University of Information Technologies, Mechanics and Optics (ITMO University), Saint Petersburg, Russia, [email protected]
Принято к печати 22.01.14 Accepted 22.01.14