Вычислительные технологии
Том 21, № 1, 2016
Координированное управление группой роботов в задачах перемещения груза
Ю.Н. Золотухин, К.Ю. Котов, А. С. Мальцев*, А. А. Нестеров, М. А. Соболев, А. Е. Цупа
Институт автоматики и электрометрии СО РАН, Новосибирск, Россия *Контактный e-mail: [email protected]
Рассмотрена разработка многоконтурной системы подчиненного управления группой мобильных роботов с дифференциальным приводом для решения задачи перемещения груза по заданной траектории. Предложен метод сохранения конфигурации группы роботов при выполнении координированного движения по сложной траектории. Представлены результаты численного моделирования и данные реального эксперимента с двухколесными роботами e-puck.
Ключевые слова: управление группой мобильных роботов, подчиненное управление, синтез систем автоматического регулирования.
Введение
Широкое внедрение роботизированных систем во все сферы человеческой жизни ставит задачи построения эффективных систем управления как отдельно взятым роботом, так и группой роботов, действующих совместно. В ряде случаев, таких как наблюдение, исследование окружающей среды на большой площади, транспортирование груза, совместное использование относительно простых роботов в составе единой группы более эффективно, чем применение одиночного робота сложной конструкции [1]. В то же время при построении системы в виде набора устройств, совместно работающих в группе, возникает необходимость в разработке специализированных методов и алгоритмов управления, отличающихся от методов управления одиночным роботом. Для создания таких систем целесообразно применять подходы, основанные на принципах централизации и децентрализации [2-4]. Для задач перемещения груза распространен подход, известный как caging, что можно перевести как "заключение в клетку" или "окружение". При этом группа роботов окружает объект и двигает его вместе, контролируя, чтобы каждый робот оставался внутри заданной конфигурации [5, 6]. Сохранение конфигурации обеспечивается за счет потенциальных или векторных полей.
В настоящей статье приведен способ построения системы координированного управления группой мобильных роботов с дифференциальным приводом применительно к задаче транспортирования груза по заданной траектории (рис. 1). Предложена структура системы управления, относящаяся к классу систем подчиненного регулирования и представляющая собой совокупность контуров управления, направленных на решение отдельных подзадач, таких как управление перемещением робота в заданное положение,
© ИВТ СО РАН, 2016
Рис. 1. Перемещение груза группой роботов в симуляторе gazebo
коррекция этого положения, формирование требуемого положения для каждого робота в зависимости от заданной траектории движения груза и необходимого распределения роботов относительно него.
1. Постановка задачи
Движение груза при отсутствии возмущений можно описать следующей многомерной нелинейной системой стационарных уравнений, где суммируются компоненты векторов движения каждого робота:
/ -Л
1 п
X = — У2 Vi cos фг, П i=l
1 п
у = - Е Vi Sin ф^
ni=l (Д)
1 п
■ф = kVí sin(^ - -фг - ■фы),
n i=l
Ktpi = Шi.
Здесь х,у,ф — координаты и угол ориентации груза; — координаты и угол
ориентации г-го робота; Ví,Uí — сигналы управления линейной и угловой скоростями соответственно; U — расстояние от центра груза до робота; — угол между роботом и осью груза; п — общее число роботов.
Требуется определить структуру и параметры системы управления для перемещения груза группой роботов по заданной траектории с погрешностью, не превышающей требуемую величину. При этом задачу управления перемещением груза предлагается свести к задаче слежения каждым роботом за желаемым положением относительно его центра, которое зависит от требуемой траектории и распределения роботов, с необходимостью поддержания заданного расстояния между всеми роботами группы. В этом случае требуемая траектория перемещения груза формируется в виде программного движения целевой точки по кусочно-линейным участкам между заданными точками пути либо проведенному через них сплайну.
Далее приведен способ построения следящей системы, которая обеспечивает управление перемещением отдельно взятого робота в заданную точку пространства координат, а также коррекцию положения этой точки с целью сохранения конфигурации группы роботов и их координированного движения при перемещении груза.
2. Описание системы управления
Для решения поставленной задачи предлагается синтезировать многоконтурную систему подчиненного регулирования, в состав которой входят три контура. Контур управления положением отдельно взятого робота обеспечивает его перемещение из произвольного начального состояния в малую окрестность желаемого положения в пространстве координат. Контур управления конфигурацией группы выполняет коррекцию желаемого положения для каждого робота с целью сохранения конфигурации группы и обеспечения координированного движения. Контур управления перемещением груза формирует сигналы заданного положения для каждого робота в зависимости от требуемой траектории движения груза и необходимого расположения роботов относительно него. Рассмотрим принципы построения каждого из этих контуров в отдельности.
Так, движение робота при управлении линейной и угловой скоростями описывается системой нелинейных дифференциальных уравнений первого порядка [2]:
хi = vi cos фг,
Уг = Vi sin фг, (2)
X\)í = шг.
Основываясь на методе решения обратной задачи динамики [7], потребуем от системы экспоненциального движения к заданному положению в соответствии со следующими уравнениями:
X г Q/\(Xir Xí) ,
Уг = aiiVir - Уi), (3)
^г = а2(фгг - фг),
где a1,a2 — положительные коэффициенты, задающие скорость сходимости к желаемым координатам (хг,уг,фг), которые определяются требуемым положением робота в соответствии с текущим расположением груза, заданной траекторией его перемещения и необходимым распределением роботов относительно него.
Далее необходимо найти такие значения управляющих сигналов уг и шг, которые обеспечат выполнение требований к динамике (3) для исходной системы (2). Для этого приравниваем значения производных из модели (2) и уравнений (3). Просуммировав первые два из полученных уравнений, домноженные на cos фг и sinфг соответственно, получим закон управления, обеспечивающий перемещение робота из произвольной позиции в требуемое положение в соответствии с уравнениями желаемой динамики (3) при наличии достаточного ресурса управления:
Vi = ai (xir - Xi) cos фг + ai(yir - уг) sin фг,
причем фгг = arctg
= а2(фгг - фг),
Угг - Уг Хгг Xi
Уравнения (4) описывают внутренний контур управления перемещением робота в заданную точку (рис. 2). Очевидно, что этого закона управления недостаточно для координированного движения группы из-за отсутствия ограничения на расположение роботов друг относительно друга. Для сохранения конфигурации группы, а именно поддержания требуемого расстояния между всеми роботами, уравнения (4) необходимо дополнить потенциальными функциями [8] fix и fiy, которые описывают изменение силы отталкивания и притягивания между роботами по двум координатам в зависимости от текущего и требуемого расстояний, и выполняют задачу коррекции желаемого положения каждого робота так, что
Xir Xir + fix j Uir Угг + fi
гу,
(5)
где
fix = f (Axij, Ayij, drij ) cos Jij, j=i
n
fiy = 5^ f (Axii ' ' drii) sin ^ ' 3 = 1
'Уц = arctg
Ay
13
Ax.
(6)
13
Здесь ХгГ, угГ — скорректированное желаемое положение робота, использующееся в законе управления (4) вместо ХгГ, угГ; Дх^, Ду^ — рассогласование координат между г-м и з-м роботами; f (Дх^, Ду^ ) — потенциальная функция отталкивания и притягивания, зависящая от отклонения между текущим и требуемым расстояниями между роботами.
r cargo
Вычисление требуемой конфигурации
L cargo
Контур управления положением
Регулятор положения u i Робот
X i
Фильтр Калмана
X i +h i (t)
Система определения координат
h i (t)
Потенциальные функции
Л J
* X obstacle
Контур управления конфигурацией Контур управления перемещением груза
X
F
Рис. 2. Функциональная схема системы управления
В качестве потенциальных функций могут быть использованы выражения вида
где dij — расстояние между г-м и j-м роботами; к — положительный коэффициент усиления.
Общая схема функционирования системы представлена на рис. 2. На схеме Xj = [xi,yu,^i] — вектор состояния г-го робота; u = [vi— вектор управляющих воздействий; XXi — оценка вектора состояния, получаемая в фильтре Калмана; Fj = [fix, fiy, 0] — вектор значений потенциальных функций; hj(i) — вектор шумов измерения.
Здесь фильтр Калмана [9] выполняет задачу комплексирования данных, получаемых от модели движения (2) и внешних систем определения координат, в качестве которых выступают системы технического зрения и системы, основанные на применении специальных маяков. Данные от этих навигационных систем характеризуются наличием шумов измерений и непостоянным темпом поступления. В этом случае объединение разнородных разнотемповых сигналов в единый навигационный комплекс на основе фильтра Калмана дает уменьшение ошибки оценивания вектора состояния, увеличение помехоустойчивости, непрерывности и надежности навигационных данных [10].
Контур управления конфигурацией обеспечивает не только координированное движение группы роботов за счет коррекции их требуемого положения, но и позволяет организовать обход препятствий при добавлении потенциальных функций, зависящих от оцененных значений их координат XXobstacle.
Внешний контур управления перемещением груза формирует сигналы требуемого положения для всех роботов в каждый момент времени в виде подвижных точек, траектория перемещения которых определяется заданной траекторией движения груза Xr cargo и необходимым распределением роботов относительно него.
С целью изучения свойств предложенной системы и ее точностных характеристик проведена серия численных экспериментов при различных значениях входных параметров, а также поставлен реальный эксперимент с группой двухколесных роботов.
3. Эксперимент
Для анализа процессов в динамической системе выполнено численное моделирование и проведен реальный эксперимент с группой роботов, перемещающих груз. В ходе численного исследования изучено поведение системы при наличии и отсутствии коррекции требуемого положения робота на основе потенциальных функций, определена зависимость погрешности поддержания заданной конфигурации от коэффициентов усиления этих функций и требуемого расстояния между роботами в группе. Реальный эксперимент с двухколесными роботами e-puck позволил подтвердить работоспособность предложенной структуры координированного управления в условиях наличия существенных шумов измерений векторов состояния каждого робота. В экспериментах в качестве параметров закона управления (4) использовались следующие величины: а\ = 0.5, а2 = 15.
(7)
либо
Рис. 3. Траектория движения трех роботов (а) и график изменения расстояний между ними (б) в численном эксперименте по перемещению груза в системе управления без потенциальных функций
На рис. 3 показана траектория движения группы из трех роботов, перемещающих груз по кусочно-линейной траектории из точки (0, 0) в точки (1, 0), (1,1) и затем в точку (0,1), и график изменения расстояния между роботами при отсутствии коррекции требуемого положения робота. Видно, что в данном случае не обеспечивается координированное движение с сохранением заданного расстояния между всеми роботами группы, которое изменяется на величину до 35 % от заданного значения.
Исследование поведения системы при наличии коррекции требуемого положения робота выполнялось для случаев задания конфигурации в виде равносторонних треугольников со сторонами 0.2, 0.3 и 0.808 м, окружающих груз, и значений коэффициентов усиления потенциальных функций, равных 10 и 50. В таблице приведены данные численных экспериментов при наличии контура коррекции требуемого положения на основе потенциальных функций вида (7): прослеживается зависимость погрешности поддержания заданного расстояния между роботами от коэффициента усиления потенциальной функции и требуемого расстояния между роботами.
Пример траектории движения груза и группы роботов в системе с потенциальными функциями для случая желаемого расстояния между всеми роботами, равного 0.808 м, и значения коэффициента при потенциальных функциях к = 50 приведен на рис. 4. Там же показан график изменения расстояний между роботами, величина отклонения которых от заданной величины не превышает 2.5% от требуемого значения.
Данные численных экспериментов
Эксперимент Расстояние, м Коэффициент Погрешность, %
1 0.200 10 10.0
2 0.200 50 5.0
3 0.300 50 2.5
4 0.808 50 2.5
Реальный эксперимент проведен с группой из двух роботов е-риск, перемещающих условный груз в виде бруска пенопласта по кусочно-линейной траектории с требуемым расстоянием между роботами 0.3 м при наличии шумов измерений векторов состояния этих роботов, как случайных, так и систематических, в виде скачкообразного изменения координат в момент времени 12 с. Для измерения векторов состояния использовалась внешняя система технического зрения. Траектория движения роботов, груза и значения управляющих сигналов представлены на рис. 5. На интервалах движения и вращения груза расстояние между роботами изменялось на величину, не превышающую 1 см (5% от требуемого значения), что согласуется с данными второго численного эксперимента (см. таблицу).
-2
- cargo - - robot 1 - - robot 2
robot 3
1 / /
ч.
Л .
j
О 1
у, м
Рис. 4. Траектория движения трех роботов (а) и график изменения расстояний между ними (б) в численном эксперименте по перемещению груза в системе управления с потенциальными функциями
б
2.5
2.0
1.5
1.0
0.5
0.
- cargo - - robot 1 - - robot 2
г 1 f 1
1 1 1
1; 1 1, Ij i;
to
0.20 0.15 0.10 0.05 0.00
— robot 1 - - robot 2 -
1МЙМ i г \ i I f
с i \ \
0 10 20 30 40 50 60 70 80
— robot 1 - - robot 2
1 1 7
r
1.5
2.0 2.5
у, М
3.0
3.5
10 20 30 40 50 60 70 80
t, С
Рис. 5. Траектория движения роботов и груза (а) и сигналы управления в эксперименте с роботами е-риск (б)
а
а
Анализ работы системы с наличием контура коррекции желаемого положения каждого робота показал возможность обеспечения координированного движения группы роботов, перемещающих груз по заданной траектории, с поддержанием необходимой конфигурации группы с погрешностью не более 5 % при требуемом расстоянии между роботами 0.2 м. Очевидно, что погрешность поддержания заданной конфигурации зависит от вида потенциальных функций и значения их коэффициентов. Однако чрезмерное увеличение этих коэффициентов может не обеспечить дополнительное уменьшение ошибки в силу увеличения влияния шумов измерений и появления высокочастотных составляющих в сигналах управления (см. рис. 4, 5). Также увеличение заданного расстояния между роботами не во всех случаях приводит к уменьшению относительной ошибки поддержания конфигурации (см. таблицу), что связано с наличием характерных для нелинейных систем автоколебаний.
Заключение
Предложены многоконтурная структура управляющей системы и метод организации движения мобильного робота для решения задачи перемещения груза группой роботов. Метод основан на слежении за желаемым положением относительно центра груза, он отличается введением потенциальных функций отталкивания и притягивания между роботами для коррекции желаемого положения, позволяет обеспечить сохранение конфигурации группы роботов и их координированное движение при совместном перемещении по сложной траектории и вращении груза. Анализ результатов экспериментов показал возможность поддержания заданной конфигурации группы с погрешностью, не превышающей 5 % относительно требуемого расстояния между роботами для рассмотренных случаев перемещения по кусочно-линейным траекториям и при вращении груза в точках разрыва этих траекторий.
Благодарности. Работа выполнена при финансовой поддержке РФФИ (грант № 1508-03233).
Список литературы / References
[1] Ogren, P., Fiorelli, E., Ehrich, L.N. Cooperative control of mobile sensor networks: Adaptive gradient climbing in a distributed environment // IEEE Trans. on Automatic Control. 2004. Vol. 49, No. 8. P. 1292-1302.
[2] Lawton, J.R., Beard, R.W., Young, B.J. A decentralized approach to formation maneuvers // IEEE Trans. on Robotics and Automation. 2003. Vol. 19, No. 6. P. 933-941.
[3] Nathan M., Jonathan F., Vijay K. Cooperative manipulation and transportation with aerial robots // Autonomous Robots. 2011. Vol. 30, No. 1. P. 73-86.
[4] Yamashita, A., Arai, T., Ota, J., Asama, H. Motion planning of multiple mobile robots for cooperative manipulation and transportation // Robotics and Automation. 2003. Vol. 19, No. 2. P. 223-237.
[5] Rubenstein, M., Cabrera, A., Werfel, J. Collective transport of complex objects by simple robots: theory and experiments // Proc. of the 12th Intern. Conf. on Autonomous Agents and Multiagent Systems (AAMAS 2013), 6-10 May 2013. Saint Paul, MN, USA, 2013. P. 47-54.
[6] Sugar, T., Kumar, V. Multiple cooperating mobile manipulators // Proc. of the IEEE Intern. Conf. on Robotics and Automation (ICRA 99), 10-15 May 1999. Detroit, MI, USA, 1999. P. 1538-1543.
[7] Крутько П.Д. Обратные задачи динамики в теории автоматического управления. М.: Машиностроение, 2004. 576 с.
Krutko, P.D. Inverse problems in control system theory. Moscow: Mashinostroenie, 2004. 576 p. (In Russ.)
[8] Song, P., Kumar, R. A potential field based approach to multi-robot manipulation // Proc. of the IEEE Intern. Conf. on Robotics and Automation (ICRA 2002), 11-15 May 2002. Washington, DC, USA: 2002. Vol. 2. P. 1217-1222.
[9] Welch, G., Bishop, G. An introduction to the Kalman filter. Technical Report. Chapel Hill: University of North Carolina at Chapel Hill, 1995. 16 p.
[10] Белоконь С.А., Золотухин Ю.Н., Котов К.Ю., Мальцев А.С., Нестеров А.А., Пивкин В.Я., Соболев М.А, Филиппов М.Н., Ян А.П. Использование фильтра Калмана в системе управления траекторным движением квадрокоптера // Автометрия. 2013. Т. 49, № 6. С. 14-24.
Belokon', S.A., Zolotukhin, Yu.N., Kotov, K.Yu., Mal'tsev, A.S., Nesterov, A.A., Pivkin, V.Ya., Sobolev, M.A., Filippov, M.N., Yan, A.P. Using the Kalman filter in the quadrotor vehicle trajectory tracking system // Optoelectronics, Instrumentation and Data Processing. 2013. Vol. 49, No. 6. P. 536-545.
Поступила в 'редакцию 6 ноября 2015 г., с доработки — 8 декабря 2015 г.
Coordinated control of the mobile robots group for cargo transportation
ZOLOTUKHIN, YuRIY N., KOTOV, KONSTANTIN Yu., MALTSEV, AlEXANDR S.*,
Nesterov, Artur A., Sobolev, Maksim A., Tsupa, Alena E.
Institute of Automation and Electrometry SB RAS, Novosibirsk, 630090, Russia * Corresponding author: Maltsev, Alexandr S., e-mail: [email protected]
Purpose. There is an increasing interest in the formation control and coordination of multiple mobile robots during the last years. Cooperative operation of mobile robots in a group is more efficient than the operation of a single robot in various situations including search, observation and transportation. The paper addresses how to control a group of mobile robots with differential drive in the problems of cargo transportation. We propose a multiple loop structure of the control system and a method for the collective transport in which each robot operate independently within the coordinated structure. Also we present a number of numerical and real experiments aimed at demonstrating the effectiveness of the proposed control scheme.
Methodology. The structure of the control system belongs to a class of systems with a subordinate regulation that contains a set of paths aimed at solving specific problems, such as motion control of individual robot in a desired position, the correction of this position and its calculation, depending on the intended track movements of the cargo and the desired distribution of robots with respect to it. Control method is based on the result of the inverse problem of dynamics with additional feedback from the use
© ICT SB RAS, 2016
of potentially available areas for correcting the desired position of each robot in order to maintain the configuration of the group.
Findings. Analysis of experiments have shown the ability to maintain the desired group configuration with an error not exceeding 5 % compared to the required distance between the robots while moving along a piecewise linear path and rotating a cargo at points of discontinuity of these trajectories.
Keywords: control of mobile robot groups, subordinate control, control system design.
Acknowledgements. This research was partly supported by RFBR (grant No. 15-0803233).
Received 6 November 2015 Received in revised form 8 December 2015