Вы находитесь на странице: 1из 17

Московский Государственный Технический Университет

им. Н.Э. Баумана

Статья
«Разработка математической модели трехопорной
колесно-шагающей мобильной платформы»

Студент: Антонов А.В.


группы СМ7-113
Руководитель: Воротников С.А.

Москва, 2016 г.
Аннотация
Описано построение математической модели ходьбы трехопорной колесно-
шагающей мобильной платформы. Рассмотрены алгоритм движения, решения
прямой и обратной задач кинематики о положении, обратной задачи динамики.
Составлена математическая модель робота в среде MATLAB. Проведено
моделирование выбранного алгоритма движения, и получены результаты,
характеризующие изменение скоростей, ускорений и моментов приводов робота.

Ключевые слова: шагающий трехногий робот, алгоритм движения, прямая задача


кинематики, обратная задача кинематики, обратная задача динамики,
моделирование.

Annotation
This article describes the development of three-point wheel-legged mobile platform
movement. Movement algorithm, forward kinematics problem, inverse kinematics
problem and dynamics problem are shown. Mathematical model was created in
MATLAB. Chosen movement algorithm modeling was conducted, results of velocities,
accelerations and moments changes were obtained.

Keywords: legged three-point robot, movement algorithm, forward kinematics problem,


inverse kinematics problem, inverse dynamic problem, modeling.

2
Содержание
Введение ............................................................................................................................... 4
1. Постановка задачи и исходные данные .................................................................... 5
2. Алгоритм движения .................................................................................................... 5
2.1. Кинематическая схема робота ............................................................................ 5
2.2. Фазы движения .................................................................................................... 6
3. Моделирование ............................................................................................................ 8
3.1. Решение прямой задачи кинематики о положении.......................................... 8
3.1.1. Определение систем координат платформы .............................................. 8
3.1.2. Определение систем координат, связанных со звеньями ног робота ...... 9
3.2. Решение обратной задачи кинематики о положении..................................... 10
3.3. Решение обратной задачи динамики ............................................................... 11
3.3.1. Динамика ноги робота и платформы ........................................................ 11
3.3.2. Модель контакта с опорной поверхностью .............................................. 13
3.4. Составление математической модели ............................................................. 14
3.5. Результаты моделирования............................................................................... 14
4. Заключение................................................................................................................. 17
5. Список источников.................................................................................................... 17

3
Введение
В современном мире мобильные роботы с колесным типом шасси находят широкое
применение. Использование колес для движения позволяет обеспечить высокую
маневренность, простоту конструкции и способа управления. Но на ряду с
достоинствами у такого способа передвижения есть и ряд недостатков. Для
возможности перемещения по неровным поверхностям приходится усложнять
конструкцию, увеличивать количество колес. А такие препятствия, как широкая
канава или высокая ступенька, и вовсе невозможно преодолеть при помощи колес.

В свою очередь шагающие роботы имеют более высокую проходимость, но при


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

Совместное использование колес и ног позволяет использовать преимущества и


частично компенсировать недостатки обоих способов движения. При помощи колес
робот может довольно быстро перемещаться, а при встрече с каким-либо
препятствием использовать режим ходьбы для его преодоления. Примерами
колесно-шагающих машин являются: колесно-шагающий аппарат разработки
ВНИИТМ [12], робот ATHLETE [14], колесно-шагающий экскаватор Kaiser [13],
колесно-шагающий аппарат ALDURO [6] и ряд других разработок [1, 2].

Хотя для устойчивого перемещения на колесах достаточно трех точек контакта с


поверхностью, большинство колесно-шагающих роботов обладают минимум
четырьмя колесами. Это можно объяснить сложностью осуществления устойчивой
походки на трех ногах. Примером трехногого шагающего робота может служить
робот STriDER [5, 7], но его конструкция не позволяет дополнительно использовать
колеса для движения в режиме езды.

В этой статье представлен трехногий робот, способный перемещаться как в режиме


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

Исходными данными является модель робота, построенная ранее в среде


трехмерного моделирования SolidWorks (рис. 1.1), а также выбранный
предварительно алгоритм движения.

Рис. 1.1. Модель робота в среде SolidWorks

2. Алгоритм движения
Конструкция робота позволяет ему осуществлять движения различных типов: езда,
ходьба, прыжки. Из всевозможных способов движения была выбрана ходьба по
ровной поверхности в прямолинейном направлении, и далее в проекте
моделирование посвящено ей.

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


На рис. 2.1 представлена кинематическая схема робота. Ноги присоединены к
платформе при помощи вращательных шарниров. Каждая из ног при помощи еще
двух шарниров образует плоский двухзвенный механизм. К концам ног также
присоединены колеса, левое и правое из которых являются управляемыми, но в
рассматриваемом алгоритме движения будет считаться, что колеса образуют единое
5
целое со звеном ноги. Таким образом, получим механизм с 9-ю вращательными
шарнирами.

Левая нога
Задняя нога

Правая нога

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


2.2. Фазы движения
Выбранный способ движения заключается в последовательном выполнении циклов
движения, каждый из которых включает в себя нескольких фаз (табл. 1).

Табл. 1. Фазы движения внутри одного цикла

№ п/п Название фазы Рисунок

Подготовка к
1 переносу левой
ноги

6
Перенос левой
2
ноги

Подготовка к
3 переносу правой
ноги

Перенос правой
4
ноги

Подготовка к
5 переносу задней
ноги

Перенос задней
6
ноги

Примечание: – координата постоянна;


– координата изменяется по заданному закону;
– координата вычисляется из решения обратной задачи кинематики о положении.
Несколько кружков обозначают несколько возможных состояний в течение данной фазы.
7
3. Моделирование
3.1. Решение прямой задачи кинематики о положении
3.1.1. Определение систем координат платформы
Положение и ориентацию платформы в пространстве можно определить, связав с
ней систему координат, начало отсчета которой Оpl расположено в центре
треугольной платформы (рис. 3.1), ось zpl перпендикулярна плоскости платформы, а
ось хpl перпендикулярна передней кромке платформы.

Рис. 3.1. Системы координат, связанные с платформой


Положение и ориентацию этой системы координат относительно некой глобальной
неподвижной системы координат можно задать при помощи матрицы перехода

= ( , , ) , где (3.1)
0 1
( )Т – вектор, определяющий положение начала отсчета Оpl относительно

, , – углы Эйлера;
глобальной системы координат;

( , , ) – матрица поворота, определяющая ориентацию системы координат,


связанной с платформой:

( , , )= ( ) ( ) ( ), где
cos ( ) −sin ( ) 0
(3.2)

( ) = sin ( ) cos ( ) 0 ,
0 0 1
(3.3)

8
cos ( ) 0
sin ( )
!( ) = 0 1 0
−sin ( ) 0
cos ( )
, (3.4)

1 0 0
( ) = 0 cos ( ) −sin ( ) .
0 sin ( ) cos ( )
(3.5)

Также с платформой связано еще 3 системы координат (рис. 3.1), имеющие


аналогичную ориентацию. Положение начала отсчета Оi0 относительно системы

( " " " )Т , где i – номер ноги: 1 – для задней ноги, 2 – для левой ноги, 3 – для правой
координат, находящейся в центре платформы, будет определяться вектором

ноги. Переход от систем координат Оi0 к системе координат Оpl можно осуществить
за счет преобразования:
1 0 0 "
0 1 0
= "
"
0 0 1 "
. (3.6)
0 0 0 1
3.1.2. Определение систем координат, связанных со звеньями ног
робота

Рис. 3.2. Системы координат, связанные с ногой робота, на примере задней ноги
Ноги робота имеют одинаковую кинематическую схему, поэтому дальше
рассмотрим построение систем координат на пример задней ноги. Положения и
ориентации систем координат, связанных со звеньями ног робота (рис. 3.2),
определяются, согласно правилам Денавита-Хартенберга. Номера звеньев j
9
отсчитываются от платформы: 1 – верхнее звено, 2 – среднее звено, 3 – нижнее
звено. Зная параметры Денавита-Хартенберга, можно составить матрицы перехода
между звеньями. Матрица перехода от системы координат j-го звена к системе
координат (j – 1)-го звена для i-ой ноги имеет вид:

cos ( "# ) − sin' "# ( cos ()"# ) sin' "# ( sin ()"# ) *"# cos' "# (
& .
"# = % sin ( "# ) cos' "# ( cos ()"# ) − cos' "# ( sin ()"# ) *"# sin ( "# )
-, (3.7)
0 sin ()"# ) cos ()"# ) +"#
$ 0 0 0 1 ,
где i = 1…3, j = 1…3.

Составив все необходимые матрицы, можно получить положение и ориентацию


конца каждой из ног, перемножив соответствующие матрицы. Матрица перехода от
системы координат конца i-ой ноги к глобальной системе координат

/0" = " ∏2#34 "# . (3.8)

3.2. Решение обратной задачи кинематики о положении


Входными величинами для решения обратной задачи кинематики о положении
(далее ОЗП) являются расстояния между центрами систем координат О13 задней
ноги и О23 левой ноги s12 и между центрами систем координат О13 задней ноги и О33
правой ноги s13. При этом системы координат выбираются иным способом (рис. 3.3):
рассчитываются координаты концов левой и правой ноги относительно конца
задней ноги.

Рис. 3.3. Расположение систем координат при решении ОЗП на примере задней и
правой ног

10
Рассмотрим решение ОЗП на примере задней и правой ног. Дополнительно вводятся
«мнимый» вращательный шарнир с осью z0, параллельной оси z1, и обобщенная
координата q1 (рис. 3.3). Для определения обобщенной координаты q1 решается
уравнение

56 (74 , … , 76 ) = 0. (3.9)

Фактически это означает, что координата конца правой ноги будет лежать в
плоскости О0х0z0. Получим решение (3.9) в виде

74 = 9(7: , … , 76 ). (3.10)

С учетом (3.10) расстояние между концами ног можно получить в виде

;42 = ;42 (7: , … , 76 ). (3.11)

В уравнении (3.11) 6 неизвестных параметров: q2 – q7. Дальнейшая решение ОЗП


состоит в следующем: на каждом этапе движения решается уравнение (3.11), при
этом 5 координат задаются постоянными либо изменяемыми по известным законам,
а последняя определяется из решения уравнения (3.11). Какие координаты задаются
известными, а какие рассчитываются, см. в табл. 1.

3.3. Решение обратной задачи динамики


3.3.1. Динамика ноги робота и платформы
Динамику ноги робота удобно описать при помощи уравнений Ньютона-Эйлера.
Сначала запишем кинематические соотношения в связанных со звеньями системах
координат [3, c. 109-110]:

<" = "=4," (<"=4


>
+ @ 7A " );
B" = "=4," (B"=4 + @ 7C " + <"=4 × @ 7A " );
(3.12)
>

E" = "=4," E"=4 + <" × F"=4," ;


(3.13)
>

*" = "=4," *"=4 + <" × '<" × F"=4," ( + B" × F"=4," ;


(3.14)
>

*G" = *" + <" × (<" × FG" ) + B" × FG" .


(3.15)
(3.16)

В этих выражениях

7A " – угловая скорость вращения i-го звена относительно системы координат,


i = 1…3 – номер звена ноги, считая от платформы;

7C " – угловое ускорение вращения i-го звена относительно системы координат,


связанной с (i – 1)-ым звеном (обобщенная скорость);

связанной с (i – 1)-ым звеном (обобщенное ускорение);

11
"=4," – матрица поворота системы координат, связанной с i-ым звеном,

<" – угловая скорость вращения системы координат, связанной с i-ым звеном;


относительно системы координат, связанной с (i – 1)-ым звеном;

B" – угловое ускорение вращения системы координат, связанной с i-ым звеном;


E" – линейная скорость движения системы координат, связанной с i-ым звеном;
*" – линейное ускорение движения системы координат, связанной с i-ым звеном;
*G" – линейное ускорение центра масс i-го звена;
F"=4," – вектор положения системы координат, связанной с i-ым звеном,

FG" – вектор положения центра масс i-го звена относительно системы координат,
относительно системы координат, связанной с (i – 1)-ым звеном;

@ = (0 0 1) .
>
связанной с этим звеном;

поверхности <=4 = B=4 = E=4 = 0, *=4 = H, где H – вектор ускорения свободного


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

падения. Такой выбор *=4 позволяет не учитывать вес звеньев ног робота и
платформы при составлении уравнений динамики, что значительно упрощает
вычисления.

Уравнения Ньютона-Эйлера для i-го звена ноги робота в связанной с этим звеном
системой координат [4, с. 174]:

IG" = J" *G" ;


KG" = LG" B" + <" × LG" <" .
(3.17)
(3.18)

В этих выражениях

IG" – сумма всех внешних сил, действующих на i-ое звено;


KG" – сумма всех внешних моментов, действующих на i-ое звено, относительно

J" – масса i-го звена;


центра масс этого звена;

LG" – тензор инерции i-го звена относительно центра масс этого звена и в осях
связанной со звеном системы координат.

Далее запишем уравнения для сил и моментов, действующих в шарнирах ноги.


Уравнения также будут записаны в связанных со звеньями ноги робота системах
координат [4, с. 175]:

I"=4," = IG" + ","M4 I","M4 ;


K"=4," = KG" + ","M4 K","M4 + F"=4," × ","M4 I","M4 + 'F"=4," + FG" ( × IG" ; (3.20)
(3.19)

N" = K"=4,"
>
"=4 . (3.21)

12
Здесь

I"=4," – сила, действующая на i-ое звено со стороны (i – 1)-го звена;


K"=4," – момент, действующий на i-ое звено со стороны (i – 1)-го звена;
N" – момент, развиваемый приводом и приводящий в движение i-ое звено;
"=4 – единичный вектор, направленный вдоль оси z системы координат, связанной с
(i – 1)-ым звеном.

Для платформы существуют выражения, аналогичные (3.19) и (3.20), в которых


левые части равенств будут равны нулям. Тогда с учетом выражений (3.12) – (3.16)
и аналогичных им для платформы можно рассчитать положение и ориентацию
платформы в пространстве.

Для решения уравнений (3.19) и (3.20) необходимо знать силы, действующие на


ноги робота со стороны опорной поверхности. Модель контакта робота с опорной
поверхностью будет показана далее в пункте 3.3.2.

Уравнение (3.21) позволяет определить моменты, создаваемые приводами


сочленений робота и обеспечивающие заданное движение робота. Таким образом,
уравнение (3.21) представляет собой решение обратной задачи динамики.

3.3.2. Модель контакта с опорной поверхностью


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

if z > 0
R = (0 0 0)T;
else
Rx = –c2 vx;
Ry = –c2 vy;
Rz = –c1 vz – k z;
R = (Rx Ry Rz)T;
end

Здесь

R = (Rx Ry Rz)T – вектор силы, действующей со стороны опорной поверхности на ногу


робота;
z – высота опорной точки ноги робота относительно опорной поверхности;
v = (vx vy vz)T – линейная скорость движения опорной точки ноги робота;
13
с1, с2 – коэффициенты вязкого трения;
k – коэффициент упругости.

Методика определения коэффициентов вязкого трения и упругости подробно


описана в [9, с. 54].

3.4. Составление математической модели


В качестве инструмента моделирования используется среда MATLAB и ее
специальный пакет моделирования механизмов SimMechanics. Данный пакет
является простым и эффективным методом решения задачи моделирования,
позволяющим промоделировать уравнения, приведенные в пунктах 3.1 – 3.3, не
вводя их вручную в явном виде. Особенности построения модели приведены в [8,
10, 11]. Общий вид модели представлен на рис. 3.4.

Рис. 3.4. Модель робота в среде MATLAB


3.5. Результаты моделирования
Пакет SimMechanics позволяет наблюдать графическое отображение
модели (рис. 3.5).

Рис. 3.5. Графическое отображение модели робота


14
Графики изменений обобщенных координат для каждой ноги изображены на
рис. 3.6. Графики перемещения точек ног, связанных с осями шарниров колес, (для
задней ноги – точки контакта) в вертикальном направлении и в направлении
движения робота приведены на рис. 3.8.

Рис. 3.6. Изменение обобщенных координат, °, со временем для ног 1-3 сверху вниз
соответственно (q1 – красным, q2 – синим, q3 – зеленым)

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

15
Рис. 3.8. Изменение угловых скоростей, об/мин, угловых ускорений, рад/с2, моментов, Н·м, и мощностей приводов, Вт,
по шарнирам q1, q2 и q3 соответственно для задней ноги
4. Заключение
В данном проекте была составлена математическая модель трехопорной колесно-
шагающей мобильной платформы в среде MATLAB с использованием пакета
SimMechanics. Был промоделирован выбранный алгоритм движения, получены
результаты моделирования. Дальнейшее продолжение работы заключается в
моделировании движения робота с учетом моделей приводов.

5. Список источников
1. Малолетов А.В. Динамика и оптимизация структуры, параметров и алгоритмов
управления движением шагающих машин со сдвоенными шагающими
движителями: дис. … д-ра физ.-мат. наук. – Волгоград, 2015. – 316 c.
2. Павловский В.Е. О разработках шагающих машин // Препринты ИПМ.
им. М.В. Келдыша. – Москва, 2013. – 32 с.
3. Зенкевич С.Л., Ющенко А.С. Управление роботами. Основы управления
манипуляционными роботами. – М.: Изд-во МГТУ им. Н.Э. Баумана, 2000. –
400 с.
4. Craig J.J. Introduction to robotics. Mechanics and control. – 3rd edition. –
NJ.: Pearson Prentice Hall, 2004. – 408 p.
5. Heaston J. Design of a novel tripedal locomotion robot and simulation of a dynamic
gait for a single step. Master’s thesis. – Virginia Polytechnic Institute and State
University, Blacksburg, 2006. – 75 p.
6. Muller G., Schneider M., Hiller M. Modeling, simulation, and model-based control of
the walking machine ALDURO // IEEE/ASME Transactions on Mechatronics. –
2000. – P. 142–152.
7. Ring P. Kinematics analysis of two parallel locomotion mechanisms.
PhD dissertation – Virginia Polytechnic Institute and State University, Blacksburg,
2010. – 161 p.
8. Silva M. Multi-legged walking robot modelling in MATLAB/SimMechanics and its
simulation // 2013 8th EUROSIM Congress on Modelling and Simulation. – 2013. –
P. 226–231.
9. Villumsen S. Modelling and control of a six-legged mobile robot. Master’s thesis. –
Aalborg University, Aalborg, 2010. – 216 p.
10. SimMechanics 2. User’s Guide. – 2007. – 840 p.
11. http:// www.embeddedprogrammer.blogspot.ru/2012/08/simulation-of-humanoid-
robot.html
12. http://www.enlight.ru/post/6055/vniitm.pdf
13. http://www.kaiser.li/en/home/
14. http://www.nasa.gov/pdf/390539main_Athlete%20Fact%20Sheet.pdf
17