Алгоритмы управления движением шагающего робота

АЛГОРИТМ УПРАВЛЕНИЯ ДВИЖЕНИЕМ ШАГАЮЩЕГО РОБОТА

Р.А. Алексеев, И.В. Мирошник

Рассматривается задача синтеза алгоритма управления движением шагающего робота с использованием методов траекторного планирования и согласованного управления. Формулируются локальные задачи управления, которые сводятся к простым задачам стабилизации задачно-ориентированных координат. Приведены результаты моделирования

1. Введение

Антропоморфные шагающие механизмы являются в настоящее время одним из ведущих направлений научно-технических разработок. Сейчас известно не менее 160 реализаций шагающих аппаратов[7-10, 12-13]. Любое устройство такого типа состоит из цельной или составной верхней части - корпуса, платформы с оборудованием, торса с руками (манипуляторами), кабины с оператором и некоторого количества механических ног (педипуляторов). Существуют механизмы на шести, четырех, двух и даже на трех ногах, а также конструкции смешанного типа, например, имеющие две ноги и два колеса. Двуногие роботы статически наименее устойчивы, однако в определенных направлениях деятельности именно их использование может быть оптимальным.

Двуногая ходьба предпочтительна там, где обстановка не позволяет маневрировать громоздкой четырех- или шестиногой платформе, а сложный характер поверхности (щербины, неровности, ступени, трещины и проч.) не дает возможности применять колесный способ передвижения. Двуногая ходьба приоритетна у роботов сферы обслуживания, домашнего хозяйства, при работе в различных человеческих пространствах, производственных помещениях, шахтах, тоннелях. Также это могут быть опасные и вредные для людей зоны.

2. Плоскость основного движения

Движения робота можно разделить на движения в продольной (сагиттальной) плоскости и движения в поперечной (латеральной) плоскости. Движения в поперечной плоскости служат лишь для поддержания устойчивости. Основные же движения производятся в продольной плоскости, поэтому многие разработчики на первых порах рассматривают лишь продольное движение, на макете блокируя боковое движение неким устройством поддержки, которое жестко удерживает робота от падений в стороны, но при этом совершенно не мешает ему падать по курсу (вперед или назад) [8]. В связи с этим мы ограничиваемся рассмотрением плоского продольного движения.

3. Методика траекторного планирования и согласованного управления

Применение метода траекторного планирования предполагает вначале выбор стратегии движения и задание эталонных точек циклов (точек сопряжения). Далее следует построение кривых требуемых траекторий, соединяющих эти точки, а затем получение условий согласования, определяющих некие соотношения в движениях отдельных звеньев [2-4, 6, 7].

Пусть x - вектор переменных состояния объекта. Каналы управления независимы и нормированы:

x = u

Для постановки задачи управления вводим вектор условий (задачно-ориентированные координаты), который может содержать отклонения е и скорости ж, определяемые через х:

е

&

= Ф

Замечание: Условия вида ф(х) = 0 называются условиями согласования.

Дифференцируя (2), имеем эквивалентную (заданно-ориентированную) модель дФ .

(2).

дх

Обозначим Якобиан отображения

О( х) =

дФ

дх

дф/дх ду/дх

тогда

= О(х)и.

Из (5), учитывая (1), можно получить выражение для вектора управления:

1 е

и = О-

Модель (5) приобретает форму

е = ие

& = и„

(3).

где ие - вектор поперечного управления, иж - вектор продольного управления. Наконец, выбирая закон управления

ие = -Ке,

и& = V *,

получаем требуемые свойства замкнутой системы - минимизацию вектора отклонений е (задача (а)) и стабилизацию вектора проходимого за единицу времени пути ж, т.е. удержания вектора требуемых скоростей V (задача (б)).

На рис. 1 показана структура системы с траекторным управлением.

и.

и х

н О-1 Г Ф

—✓ -✓

&

и.

е

-К

Рис. 1. Общая структура системы траекторного управления

4. Модель шагающего механизма

Кинематическую модель двуногого робота представляем семизвенной цепью (см. рис.2). В качестве начальной точки берем носок опорной, т.е. передней в данной фазе, ноги. При этом носок другой (задней) ноги считается свободным (это конец последнего звена всей цепи). Тогда система координат такой модели жестко связана с поверхно-

стью опоры и называется неподвижной. Каждое последующее звено развернуто относительно предыдущего на угол и имеет протяженность I. [5].

Рис. 2. Кинематическая схема робота

Замечание. На рис. 2 свободная ступня умышленно оторвана от поверхности, чтобы показать возможность движения. Точка у7 в модели не привязана к опоре.

5. Объект управления

Для кинематической цепочки из п звеньев механику любого / - го звена (/ = 1, п ) опишем рекуррентной системой уравнений:

¿11 = В1и1

т т 1=1Т

уТ = уТ-1 + г/ • Т

где - угол поворота /-го привода (обобщенная координата), и/. - управляющее воздействие на привод /-го сочленения, ут = [ул у12 ] - вектор декартовых координат конечной точки /-го звена, а. - углы (абсолютной) ориентации звеньев,

соз( а.) 8т( а.) 1 т г 1

4 1' у 1' - матрица вращения, = [^ 2 ] - вектор координат ко- зт

нечной точки /-го звена (в системе координат звена). Поскольку в системе нет изломанных звеньев, то поперечная протяженность звеньев отсутствует, т. е. 2Т = [[. 0], где I - длина звена.

Т (а /) =

Уравнение (9) представляет собой кинематическую модель механизма, а уравнения (10) и (11) описывают прямую кинематику робота по угловым и линейным (декартовым) координатам звеньев.

При г = 1, п обозначим: q={qi} - вектор обобщенных координат, и={и} - вектор управлений, а={а} - вектор абсолютных углов поворота звеньев, у={у!} - вектор декартовых координат конечных точек звеньев размерности [п*2]. Теперь перейдем к компактной форме описания объекта управления (см. рис. 3):

1 = Ви,

а = Я

У = Кос).

Здесь B=diag{bi} — диагональная матрица коэффициентов передачи, Я - матрица перехода от относительных угловых координат к абсолютным угловым координатам, которая для случая одной кинематической цепочки является нижней диагональной матрицей и рассчитывается по формуле Я= {гТг},

г

где г^ = ^ , к - вектор-функция, рассчитываемая по формуле

1=1

И =

Т У 0 " *Тт (а)"

Т У1 + * Т°Т

Т _ У°-1 _ _ *Тт К)_

и 1 г 1 а

В [ ^ я ИО

Рис. 3. Структурная схема механизма как объекта управления 6. Концепция ходьбы

Изучив различные алгоритмы ходьбы [1, 7-12], можно сделать ряд выводов.

1. Перемещение приставным шаганием (шаг одной ногой, затем приставление другой ноги) снижает скорость общего перемещения механизма.

2. Использование безопорной фазы («фазы полета») в цикле шага связано со сложностью определения координат всего робота в этой фазе.

3. Двухфазный алгоритм проще трехфазного по реализации, и в нем меньше сопряжений (переключений режимов).

4. Фазы с отсутствием горизонтального движения торса относительно земли существенно снижают общую скорость робота.

5. Остановки движения торса в какой-либо фазе ходьбы приводят к рывкам при движении массивной верхней части, что существенно снижает устойчивость походки.

6. Полное распрямление маховой ноги перед отрывом и при касании поверхности существенно усложняет процесс управления ходьбой из-за возможного заклинивания приводов в распрямленном положении;

7. Циклическое вертикальное перемещение торса в цикле ходьбы тоже ослабляет устойчивость походки и расходует лишнюю энергию.

Проанализировав известные варианты походки, изложим основные положения желаемого алгоритма ходьбы.

1. Для сохранения роботом статического равновесия горизонтальная проекция его центра масс должна проходить через поверхность опоры.

2. Цикл одиночного шага должен состоять из двух фаз - переноса тяжести с задней ноги на переднюю (двухопорная стадия) и перемещения маховой ноги вперед на шаг (одноопорная стадия).

3. Для избежания рывков в обеих фазах массивный торс должен сохранять свою горизонтальную скорость постоянной.

4. Не допускаются распрямления маховой ноги перед отрывом и при касании поверхности, во избежание неоднозначности отработки траекторий.

5. Торс не должен иметь вертикального движения, так как оно ослабляет устойчивость походки и расходует лишнюю энергию.

Синергия движений в двух фазах разработанной походки приведена на рис. 4.

К

£

Рис. 4. Две фазы движения

7. Планирование траекторий

Процедура синтеза предусматривает получение модели движения в декартовых координатах, преобразование к задачно-ориентированным координатам, а затем синтез управлений, обеспечивающих решение поставленных задач (а) и (б). Алгоритм движения робота содержит три группы условий. Опорная нога и корпус в обеих фазах движения:

1. Стопа опорной ноги горизонтальна у11 = с1,

с1 =-15 (горизонтальная координата голеностопного шарнира);

2. Высота таза над поверхностью постоянна у32 = с2,

с2 = 30(2 + л/3) (вертикальная координата тазобедренных шарниров);

3. Корпус движется горизонтально у41 =-Ук,

Ук = 1 (скорость продольного перемещения корпуса);

4. Корпус держится вертикально а4 = Q1,

Q1 =п/2 (угол корпуса относительно горизонтали). Маховая нога в фазе переноса: 1. Носок не перемещается по горизонтали у71 = с3,

с3 =-30 (горизонтальная координата носка);

2. Носок опирается на поверхность у72 = с4,

с4 = 0 (вертикальная координата носка);

3. Ноги движутся в противоходе а3 +а4 = Q2,

Q2 = п/6 (суммарный угол положений обоих бедер). Маховая нога в фазе шага:

1. Пятка движется по наклонной у62 = -ку61 + Ь,

к = 0,25 и Ь = 3,75 (угол наклона и высота нисходящей траектории);

2. Носок перемещается на шаг у71 = 4УК;

3. Носок описывает дугу косинуса у72 = -А • ооз(су71),

2жУ 2п

где А = 6 (высота подъема носка), с =-- = — (частота одиночного шага), Ьш=60

Ь.„ 60

(длина шага).

8. Постановка задачи

Введем задачно-ориентированные координаты - отклонения е={е}, где г = 1, к и пути s={si}, где г = 1,1. Общее число условий для каждой фазы движения должно быть равно числу звеньев механизма к +1 = п, в данном случае п=7.

Фаза переноса:

1 е1 = у 11 — с1

2. е2 = у32 - С2

3. = .&31 = Кк

4. е3 = а4 - Q1

5. е3 = у 71 — С3

6. е4 = У72 - С4

7. е5 =а3 +а4 - Q2

Значения параметров:

К = 1; Ql =п/2;

сх =-15; к = 0,25;

Фаза шага:

1 е1 = уИ - С1

2. е2 = у32 - С2

3. ¿1 = 31 = Кк

4. е3 = а4 - Ql

5. е6 = ку61 + у62 - ь

6. = у 71 = 4Кк

7. е7 = у72 - А ео8(су71) = 30(2 ^л/3);

С3 = -30;

с 4 = 0;

Ь = 3,75 ;

А = 6;

с = ж/30 .

= Ф( у, а, q),

Совокупность этих уравнений может быть записана в компактной форме

е s

где е={е}, 1=1...к, ]=1...1, к+1=п, где п - число звеньев механизма (степеней сво-

боды). Задача управления состоит в минимизации вектора отклонений е (задача (а)) и стабилизации вектора проходимого пути s за единицу времени, т. е. удержании вектора требуемых скоростей V = £ (задача (б)).

9. Синтез управления

Дифференцируя уравнения прямой кинематики (10)—(11) и подставляя (9), полу-

чаем:

уТ = уТ-1 +а*0Т(а1 )Е = у- + гТ1 • *0Т(а1 )Е = у^ + г^Ви • *ТТ(а1 )Е

т. е.

С

2

уТ = у и + 2]т (а ЕТви

где Е =

•г-1 1 , 0 1

-1 0 у = О у (а)Ви

,. или в компактной форме

где О (а) = . Дифференцируя уравнение (16), получаем задачно-ориентиро-

у 4 да дд ванную модель робота

(

дФ

дФ

Л

— Оу (а) Я + —

ду дд

Ви

или

= О(д,а, у)и

и = Ви.

где введены обозначения

дФ дФ

О = — Оу (а) Я + — . ду дд

Следуя стандартной методике согласованного управления [2-5, 7], осуществим преобразование управления по формуле ие

О(д, а, у)и =

и перепишем модель (20) в виде

е ие

л и _

где ие - вектор управлений по отклонениям е, и, - вектор управлений по перемещениям ж. Выбирая

ие = - Ке,

ил =У*

где K=diag{ki}, к>0 - коэффициенты обратной связи, получаем

е = - Ке ,

Л = У,

что обеспечивает минимизацию отклонений е и поддержание требуемых скоростей продольного движения V, т.е. решение задач (а) и (б).

Для нахождения вектора управляющих воздействий системы и воспользуемся выражениями (21) и (22) и получим:

и„

и = О 1

и = В~1и .

Структурная схема системы управления (см. рис. 5) состоит из объекта управления (уравнения (12)-(14)), блока получения (расчета или измерения) отклонений е, (уравнение (16)), обратного преобразования управлений (выражения (25)-(26)), задат-чика продольной скорости (24б) и регулятора отклонений (24а), образующего основные обратные связи системы.

и

л

и

л

Задачная часть системы

Рис. 5. Структурная схема системы управления двуногим роботом

10. Результаты моделирования

Для проверки разработанного алгоритма проведено моделирование на программном продукте Ма1ЬаЬ 4.0 81шиИпк 1.2. Поведение звеньев механизма, полученное в результате моделирования сдвоенного шага (полный цикл ходьбы), представлено в виде

Рис. 6. Циклограмма движения робота

Полученная циклограмма полностью соответствует заданному алгоритму ходьбы. Шаги правой и левой ногами полностью идентичны. Соблюдается ширина шага. Постоянна высота корпуса над поверхностью ходьбы, т.е. отсутствует вертикальное движение корпуса. Скорость горизонтального перемещения торса относительно земли постоянна и не имеет рывков и замедлений.

Литература

1. Вукобратович М.. Шагающие роботы и антропоморфные механизмы. М.: Мир, 1976.

2. Мирошник И.В. Согласованное управление многоканальными системами. Л.: Энергоатом-издат, 1990.

3. Мирошник И.В., Никифоров В.О. Методы координации в задачах планирования и управления пространственным движением манипуляционных роботов. СПб: Наука, 1998.

4. Мирошник И.В., Никифоров В.О., Фрадков А.Л. Нелинейное и адаптивное управление сложными динамическими системами. СПб: Наука, 2000.

5. Мирошник И.В. Нелинейные системы. Анализ и управление. СПб: СПб ИТМО (ТУ), 2002.

6. Механика промышленных роботов. Кн. 1. Е. И. Воробьев, О. Д. Егоров, С. А. Попов. Расчет и проектирование механизмов. М.: Высшая школа, 1988.

7. A. Albert. Intelligente Bahnplanung und Regelung für einen autonomen, zweibeinigen Roboter. // VDI-Fortschrittberichte, Reihe 8, Nr. 927, VDI-Verlag, Düsseldorf, 2002

8. T. Asfour, K. Berns, J. Schelling and R. Dillmann. Programming of manipulation tasks of the humanoid robot ARMAR. IEEE Int. Conf. Advanced Robotics, Tokyo, Oct. 1999.

9. C. Chevallereau, G. Abba, Y. Aoustin, F. Plestan, E. R. Westervelt, C. Canudas-de-Wit and J. W. Grizzle. RABBIT: A Testbed for Advanced Control Theory. // IEEE Control Systems Mag., v. 23, №5, Oct. 2003, pp. 57-79

10. Y. Fujimoto, A. Kawamura. Simulation of an Autonomous Biped Walking Robot Including Environmental Force Interaction. // IEEE Robotics & Automation Mag., v. 5, №2, June 1998, pp 33-41.

11. A. Ijspeert, J. Nakanishi and S. Schaal. Movement imitation with nonlinear dynamical systems in humanoid robots. // IEEE ICRA, Washington, May 2002, pp. 1398-1403.

12. Kajita, S. and Tani, K., An analysis of experimentation of a biped robot Meltran II. Proc. of 3rd International Workshop on Advanced Motion Control (UC Berkeley), pp.417-420, 1993.

13. S. Talebi, M. Buehler and E. Papadopoulos. Towards Dynamic Step Climbing For A Quadruped Robot with Compliant Legs.