Алгоритмы управления движениями точки и робота-манипулятора. Учебное пособие
.pdf
начальное положение точки M: |
|
xM (0) 0, yM (0) 0, |
VM V VD ; |
вычисляем константы, не зависящие от времени:
arctg ( yD0 / xD0 ) , |
( r)0 |
xD2 0 yD2 0 . |
2.Формируем цикл по времени: пока r 0,01.
3.Для очередного шага по времени вычислить:новое положение точки D (цель)
xD , yD , Vdx , Vdy , VD ;
угол наклона вектора скорости цели
D arcsin (Vdy / VD ) ;
угол наклона вектора скорости точки М
arcsin ((VD / VM )sin ( D )) ;
проекции скорости точки М
|
VMx VM cos( ) , |
VMy VM sin( ) ; |
|
положение точки М |
|
|
xм xм VM cos( ) dt , |
yм yм VM sin( ) dt ; |
|
относительную дальность |
|
r (xD xМ )2 ( yD yм)2 .
4. Выдать и нарисовать текущие результаты: ( xD , yD ) ( xM , yM ) t r .
11
Пример 1. Жесткая встреча
Уравнения движения цели:
xD 3cos(t / 3) м, yD 3sin(t / 3) м.
Точка М выходит из начала координат xм 0 , yм 0 . На рис. 1.5 показаны траектории движения точки М и цели D до встречи.
Y,м 2.0
1.5
1 |
2 |
1.0
0.5
0.5 |
1.0 |
1.5 |
2.0 |
2.5 |
x, м |
Рис. 1.5
Пунктирная линия показывает траекторию цели. Траектории движения точки М: сплошная линия 1 соответствует скорости точки М 1,2 м/c, сплошная линия 2 соответствует скорости точки М 2 м/c. При уменьшении скорости точки М место встречи сдвигается влево и время
до встречи увеличивается. При VM 2 м/c время движения точки М до встречи равно 1,49 с, а при VM 1,2 м/c время равно 2,5 с.
Пример 2. Жесткая встреча
Цель движется с постоянной скоростью VD =1238 м/c на высоте
H = 1000 м. Начальная абсцисса обнаружения цели xН = 5000 м. Точка М выпускается с постоянной скоростью VM = 1500 м/c. На рис. 1.6 по-
казана траектория точки М. Точка М выходит из начала координат с упреждением, а прямая МD остается параллельной себе во все время движения.
12
1 103 |
|
|
|
VD |
D |
VD |
|
|
|
D |
|
|
|
y(t) |
|
|
|
|
|
|
8 103 |
|
|
|
|
|
|
6 103 |
|
VM |
ε |
|
|
|
4 103 |
|
|
|
|
||
|
M |
|
|
|
||
2 103 |
|
|
|
|
|
|
|
|
VM |
ε |
|
|
|
0 |
|
|
|
|
||
3 |
2 103 |
|
2 103 |
|
4 103 x( t) |
|
4 10 |
0 |
|
Рис. 1.6
1.1.3. Уравнения движения мягкого касания
Формулы, представляющие уравнения движения мягкого касания. остаются такими же, как и в случае жесткого касания (раздел 1.1), только необходимо ввести параметр управления k.
Определение параметра управления
В качестве стратегии управления движением точки М примем два положения:
– во-первых, вектор относительной скорости должен быть направлен по вектору рассогласования r на точку D;
– во-вторых, по модулю вектор относительной скорости должен уменьшаться по мере приближения к точке D, чтобы в момент встречи обеспечить мягкое касание с нулевой относительной скоростью.
Введем положительную константу k следующим образом:
|
|
|
|
|
|
V |
k r , |
V VМ VD , |
|||
Vx k x, |
(1.14) |
||||
Vy k y. |
|||||
Определим ее для координаты x:
VMx VDx k(xD xM ),
dxM dxD k(xD xM ), dt dt
13
dtd (xD xM ) k(xD xM ),
d( x) k x. dt
Аналогичное уравнение получится для координаты y:
d( y) k y . |
|
||||
dt |
|
|
|
||
Заменим обозначения: |
|
|
|
|
|
( x, y) z |
|
dz kz . |
|
||
|
|
|
|
dt |
|
Решим последнее уравнение: |
|
|
|
||
dz kdt, |
|
|
|||
|
z |
|
|
|
|
ln z kt C1, |
|
||||
z e kt C1 |
eC1e kt |
C2e kt . |
(1.15) |
||
Неизвестную константу С2 |
найдем из начального условия, когда |
||||
рассогласования x(0) и y(0) известны: |
|
|
|||
z(0) C2e k 0 |
C2 z z(0)e kt . |
(1.16) |
|||
По условию задачи к моменту времени t = τ |
рассогласование |
||||
z = ( x, y) должно удовлетворять соотношению |
|
||||
|
z( ) |
. |
|
(1.17) |
|
|
z(0) |
|
|||
|
|
|
|
||
Сравнивая зависимости (1.16) и (1.17) при t = τ z( ) z(0)e k ,
z( ) z(0) ,
14
находим
e k
k ln .
Окончательно
k |
1 |
( ln ) |
1 ln |
1 |
0. |
(1.17) |
|
|
|
|
|
|
|
Параметр управления k , определяющий скорость точки М по формулам (1.14), должен быть величиной положительной, так как величина δ много меньше единицы. Чем меньше относительная погрешность сближения δ (1.17), тем больше параметр k, определяющий скорость точки М. Например, для τ = 10 с получаем:
0,1 k 101 ln10 0,230,
0,01 k 101 ln100 0,460,
0,001 k 101 ln1000 0,691.
1.1.4.Алгоритм аналитического расчета мягкого касания
1.Задаем исходные данные.
Уравнения движения цели и проекции скорости цели на оси:
xD f1(t) , |
yD f2 (t) , |
|
|
VDx f1(t) |
VDy f2 (t) . |
Вычислим начальные положение и скорость цели:
|
xD0 f1(0) , |
|
yD0 f2 (0) , |
|
|
|
|
, VDy0 f |
|
, VD0 |
2 |
2 |
, |
VDx0 f1(0) |
2 (0) |
VDx0 |
VDy0 |
|||
15
D0 arcsin(VDy0 / VD0 ) .
Начальное положение точки М и скорость точки:
xм0 x0 , |
yм0 y0 , |
|
Vм0 VD0 . |
|
|
Вычислим угол наклона линии МD к оси x ( const ): |
|
|
arctg (( yD0 yM 0 ) / (xD0 xM 0 )) , |
|
|
задаем два параметра управления: время движения до встречи |
и па- |
|
раметр 1 ( 0,1; 0,01; 0,001). |
|
|
Вычисляем третий параметр управления k: |
|
|
k 1 ln |
1 > 0. |
|
|
|
|
Если количество шагов по времени для расчета принять в n, |
тогда |
|
шаг по времени t / n . |
|
|
2. Цикл по времени. Для очередного шага вычислить: |
|
|
новое положение и скорость цели D, угол наклона вектора скорости цели к оси x:
xD f1(t) , |
yD f2 (t) , |
|
|
||
|
f2 |
|
2 |
2 |
|
VDx f1(t) , VDy |
(t) , VD |
VDx VDy , |
|||
D arcsin (VDy / VD ) ; |
|
|
|||
новое положение точки |
М, |
скорость и угол наклона вектора |
|||
скорости точки М к оси x: |
|
|
|
|
|
arcsin ((VD / VM )sin ( D )) , |
|
||||
xM xM 0 |
VМ cos ( )dt , |
|
|||
yM yM 0 |
VМ sin ( )dt ; |
|
|||
16
рассогласование координат и скорость точки М:
dx xD xM , |
dy yD xM , |
dr dx2 dy2 , |
|
VMx VDx kdx , |
VMy VDy kdy , |
VM VMx2 VMy2 .
3. Выдать и нарисовать графики текущих результатов:
t, ( xD , yD ) , ( xM , yM ) , (VDx ,VDy ,VD ) , (VMx ,VMy ,VM ) .
Пример 3. Мягкое касание |
|
|
|
|
Пусть цель движется согласно уравнениям |
|
|||
xD 3cos(t / 3) м, |
yD 3sin (t / 3) м. |
|||
Начальное положение цели: |
|
|
|
|
xD0 3 м, |
yD0 0 . |
|
||
Начальная скорость цели: |
|
|
|
|
VDx0 0 , |
VDy0 1 , |
VD0 1 м/c. |
||
Точка М выходит из начала координат ( xМ0 0 , |
yM 0 0 ) со ско- |
|||
ростью VМ0 VD0 1 м/c. Задаем время до встречи |
1 с, параметр |
|||
управления 0,1, количество шагов n 200 . |
|
|||
На рис. 1.7 показаны расчетные траектории точки М (линия 1) и цели D (линия 2) до их встречи. Как видно из рис. 1.8, модуль скорости точки М в начальный момент времени получает скачок, а к моменту
приближения к цели ( 1 с ) становится близкой к скорости цели и по модулю, и по направлению.
17
Y, м |
|
V, м/c |
|
|
1. |
2 |
5 |
|
|
|
|
|
|
|
|
|
1 |
|
|
0.6 |
1 |
3 |
|
|
|
|
|
2 |
|
0.2 |
|
|
|
|
|
1 |
|
|
|
0.5 1. |
1.5 2. 2.5 x, м |
0.5 |
1.0 |
t, c |
|
Рис. 1.7 |
|
Рис. 1.8 |
|
Определив функцию скорости точки М, необходимую для встречи с целью D, можно, задав массу точки М, найти силу, которая обеспечит полученную зависимость скорости точки М. Эту силу Р найдем из уравнения движения точки для данного метода наведения без учета сил сопротивления:
m dVdtM P mg sin .
450 |
|
|
|
|
P, H 400 |
|
|
|
|
350 |
|
|
|
|
300 |
|
|
|
|
250 |
0 |
1 |
2 |
3 |
|
|
|
t, |
c |
|
|
Рис. 1.9 |
|
|
На рис. 1.9 представлена зависимость силы Р от времени при жесткой встрече точки М с целью D. Скорость точки М остается постоянной по модулю во все время и равной VМ = 1,2 м/с, масса точки М составляет m = 50 кг.
18
1.2. МЕТОД ПОГОНИ (МЕТОД ТРЕХ ТОЧЕК)
Уравнения движения
В отличие от предыдущего метода в методе погони вектор скорости точки М направлен всегда в цель. Этот метод используется в самонаводящихся снарядах. Заметим, что уравнение (1.5), полученное в разд. 1.1, справедливо для любого метода. В методе погони вектор
скорости точки М VM параллелен вектору |
( рис. 1.10). |
|
||||||
|
|
V |
|
y |
|
VD |
D |
D0 |
Y0 |
|
|
|
|
ц |
|
||
|
D |
D |
|
|
|
D |
|
|
|
|
|
|
|
|
|||
|
VM |
|
D |
n |
|
VM |
|
|
n |
|
|
|
|
|
|||
|
|
M |
|
|
||||
|
|
|
|
|
|
|
||
|
|
|
X 0 |
VM |
0 |
|
|
x |
M |
|
|
|
M0 |
|
|
|
|
|
Рис. 1.10 |
|
|
|
Рис. 1.11 |
|
|
|
Рассмотрим движение в плоскости. Поместим начало системы ко-
ординат в точку М. Проектируем уравнение (1.5) на оси |
и n |
и, |
||||||||||||||
учитывая, что проекция вектора |
|
d |
на ось |
n |
равна |
d |
|
, получим |
|
|||||||
|
|
|
dt |
|
||||||||||||
|
|
|
|
dt |
|
|
|
|
|
|
|
|
||||
|
dD V |
V |
, |
|
|
|
|
|
|
|
||||||
|
dt |
|
|
D |
|
M |
|
|
|
|
|
(1.18) |
||||
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
|
|
d |
|
|
|
|
|
|
|
|
|
|
||||
|
D |
V . |
|
|
|
|
|
|
|
|
||||||
|
|
|
|
|
|
|
|
|
|
|||||||
|
|
|
dt |
Dn |
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
Добавив к системе (1.18) уравнения для определения координат (x, |
y) |
|||||||||||||||
точки М, получим систему уравнений |
|
|
|
|
|
|
|
|
|
|||||||
d r V |
cos( |
D |
) |
V |
|
, |
|
|
|
|
||||||
dt |
D |
|
|
|
|
|
|
M |
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
19
r ddt VD sin( D ),
dxdt VM cos , (1.19) dydt VM sin .
Начальные условия к системе (1.19) следующие. При t 0 необходимо задать r0 , 0 , V0 , а координаты точки М в начальный момент
можно положить равными нулю ( x0 0, y0 0 ). При этом так же, как
и в предыдущем методе, необходимо задать начальную скорость точки М V0 по величине больше, чем скорость цели.
Уравнения |
движения |
цели |
задаем как |
функции времени |
||||
xD f1(t), yD f2 (t) . Тогда |
начальная относительная дальность и |
|||||||
начальное значение угла 0 |
определяется по формулам |
|||||||
r |
|
f 2 (0) f 2 |
(0) , |
|
0 |
arcsin( y |
(0) / r ) . |
|
0 |
|
1 |
2 |
|
|
ц |
0 |
|
Система уравнений (1.19) решается численно. Счет заканчивается
при r 0 . На печать выводятся t, xD , yD , VD , xM , yM , VM . Рассмотрим частный случай в методе погони: движение цели с по-
стоянной скоростью на неизменной высоте D , а скорость точки М VM остается постоянной по величине во все время наведения.
Считаем, что начало координат помещено в точку, с которой начинается переход на метод погони. Пусть в этот момент t t0 , r r0 ,
0 . Дифференциальные уравнения в этом случае
d r VD cos VM , dt
r ddt VD sin .
20
