Материал: Специализированные исполнительные устройства (Динамический расчет робототехнических систем). Литвиненко А.М., Машаров А.В

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам

 

 

 

0

 

Rot( X , i )

RX ,

i

0

(1.7).

 

 

 

0

 

0

0

0

1

 

Тогда имеем:

Ai Rot(Z , qi )Trans(Z , di )Trans( X , ai )Rot( X , i ) .

Перемножая матрицы, стоящие справа, окончательно получаем:

 

 

 

cq

c sq

s sq

i

ai cq

i

 

 

 

 

i

i

i

i

 

 

A(di , ai , qi ,

i

)

sq

c cq

 

s cq

ai sq

 

(1.8)

i

i

i

i

i

 

i

 

 

 

 

 

 

 

 

0

s

 

c

 

di

 

 

 

 

 

 

i

 

i

 

 

 

 

 

 

 

0

0

 

0

 

1

 

 

Обратная позиционная задача Обратную позиционную задачу формулируют следующим

образом. При заданном положении и ориентации схвата

s

s*

или T

T * найти обобщенные координаты q* = (q1,

q2

,.....

N

N

 

 

 

 

 

qN)т. Если обозначить

 

 

 

 

 

 

s

 

f s (q)

(2.1)

или

 

 

 

 

 

 

 

TN

 

fT (q)

(2.2)

то искомые углы q * будут задаваться соотношением

 

 

 

q*

 

f s

1 (s)

(2.3)

или

 

 

 

 

 

 

 

q*

f

1

(T )

(2.4)

 

 

 

T

N

 

 

Таким образом, решение обратной позиционной задачи сводится в общем случае к решению нелинейной тригонометрической системы шести уравнений с N неизвестными. Известно, что такого рода системы могут:

94

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

тигнуты никаким выбором углов (перемещений) в сочлене-

ниях;

иметь единственное решение;

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

Умение решать обратную позиционную задачу является чрезвычайно важным для управления манипулятором. Действительно, если программное движение манипулятора задано в виде траектории его схвата s(t) (или TN (t) - что эквивалентно), то для управления сочленениями необходимо обеспечить такие q(t) , чтобы в каждый момент времени выполнялось соотношение (2.1). Однако, к сожалению, не существует общего метода решения этой системы в явном виде, а именно это и является желательным, поскольку управление манипулятором осуществляется в режиме on-line. (Впрочем, и применение численных методов также сопряжено с рядом трудностей, связанных с возможной расходимостью соответствующих итерационных схем.)

Рассмотрим два метода решения обратной позиционной задачи: метод обратных преобразований и итерационный метод. Выбор метода для решения конкретной задачи определяется спецификой кинематической схемы манипулятора, а также опытом исследователя.

3.2.1 Метод обратных преобразований

Как было показано выше, матрица TN, определяющая положение и ориентацию схвата, имеет вид

ТN = А1, А2 ... AN-1 AN, (2.5)95

где Ai = Ai(qi) — матрицы перехода от i-й к (i -l)-й системе координат манипулятора.

Тогда, умножая соотношение (2.5) на A1 1 (напомним, что матрица Аi, невырожденная), имеем

A

1 (q )T

A ...A

A (2.6)

1

1 N

2 N 1

N

В силу того, что матрица ТN известна, нам удалось разрешить соотношение (2.6) относительно q1. Если структура (2.6) такова, что удается найти q1, то этот процесс повторяем для q2,

q3 , ..., qN. Ясно, что, умножая (2.5) справа на AN1 , аналогично

можно найти qN.

Пример 1. Пусть механизм представляет собой трехстепенной карданный подвес, ориентация которого задана тремя углами Эйлера:

 

 

 

 

 

 

 

 

c

s

0

c

0

s

c

s

0

 

 

 

T3

 

RZ ,

RY ,

RZ ,

s

c

0

0

1

0

s

c

0

(2.7)

 

 

 

 

 

 

 

 

0

0

1

s

0

c

0

0

1

 

Требуется решить обратную задачу для этого механизма,

т.е. найти углы

 

,

, по заданной матрице T3

(x, y, z) .

 

Решение. Умножая слева выражение (2.7) на матрицу

 

 

 

 

 

 

 

 

 

 

 

c

s

 

0

 

 

 

 

 

 

 

 

 

 

 

 

R

1

s

c

 

0

,

 

 

 

 

 

 

 

 

 

 

 

Z ,

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0

0

 

1

 

 

 

 

получаем

 

 

 

 

 

 

 

 

 

 

 

 

 

R

1

T

 

R

Z ,

R

 

 

 

 

 

 

 

 

 

 

 

Z ,

3

 

 

Y ,

 

 

 

 

 

 

 

 

 

 

или, после перемножения матриц,

 

 

 

 

 

 

 

 

 

xx c

xy s

 

 

yx c

yy s

zx c

zy s

 

 

c c

c c

s

 

 

 

 

 

xx s

xy c

 

yx s

yy c

zx s

zy c

 

 

s

c

0

(2.8)

 

 

 

 

xz

 

 

 

yz

 

 

zz

 

 

s c

c s

c

 

 

 

 

 

 

 

 

 

 

 

96

 

 

 

 

 

 

Приравнивая в (2.8) элементы второй строки и третьего столбца обеих матриц, находим

zx s z y c

0 ,

откуда

ataп2(z y , zx )

 

 

(2.9)

Напомним, что функцию ataп2(a,b) определяют следую-

щим образом:

 

 

 

 

 

arctg

a

, b

0,

 

 

 

 

 

 

 

 

 

 

b

 

 

 

ataп2(a, b) arctg

 

a

 

 

, b

0, a

0,

(2.10)

 

b

 

 

 

 

 

 

 

arctg

a

 

, b

0, a

0,

 

b

 

 

 

 

 

 

 

 

 

ataп2(a,b)

,

т.е

ataп2(a,b)

учитывает принадлежность аргументов

одному из четырех квадрантов.

Приравнивая элементы второй строки и первого и третьего

столбцов в выражении (2.8). получаем

s

xx s

xy c

;

c

yx s

y y c

,

откуда следует, что

ataп2( xx s

xy c , yx s

yy c ).

(2.11)

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

 

s

zx c

z y s ,

 

c

zz ,

 

следовательно,

 

97

 

 

 

 

 

ataп2(zx c

z y s , zz )

(2.12)

Таким образом, соотношения (2.9), (2.11). (2.12) решают обратную позиционную задачу.

3.2.2 Численные методы решения обратной задачи. Способы решения обратной задачи по положению в замк-

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

f (q)

s* (2.13)

где s*

— заданное положение схвата.

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

(x) 0 (2.14)

выбрать некоторое начальное приближение x0 и построить следующее приближение x1 как точку пересечения касательной к графику функции y (x) в точке x0 с осью X, то полученное значение x1 , «ближе» к корню x* ,чем x0 (рис. 2.1).

98

Рис. 2.1. Геометрическая интерпретация метода Ньютона для решения уравнения (x) 0

Продолжая этот процесс и получая таким образом x1 , x2 ,.., можно рассчитывать на то, что последовательность x1 сой-

дется к x* . Реализация этого подхода приводит к следующей итерационной схеме:

xi 1

xi

i

(x)

(2.15)

(xi )

 

 

 

Существует теорема о достаточных условиях сходимости итерационного процесса (2.15), ее формулируют следующим образом.

Пусть x* является решением уравнения (2.14). Обозначим

через

-окрестность точки x* :

 

 

 

 

 

 

 

 

 

 

.

 

 

 

 

 

 

 

 

 

 

 

x :

x x*

 

 

 

 

 

 

 

 

Пусть при некоторых a

0, ai

0 выполняются условия

 

(x)

 

a1 , x

a ,

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

(u1 )

 

(u2 )

(u2 )(u1

u2 )

 

a2

 

u2 u1

 

, u1 , u2

a .

 

 

 

 

 

 

 

 

 

 

99

 

 

 

 

 

 

 

 

Пусть c a1a2 , b min(a, c 1 ) . Тогда при этих условиях и x0 b процесс (2.15) сходится к x* с оценкой погрешности

x

n

x*

c 1 (c

x

0

x*

)2n .

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Заметим, что если (x) имеет ограниченную вторую про-

изводную, то последнее условие выполнено.

Применяя метод Ньютона для решения уравнения (2.13), получаем следующую схему:

qi 1

qi ( fq (qi )) 1 (s* f (qi )),i 0,1,2,... (2.16)

где q0

- заданное начальное значение вектора обобщенных

координат.

Входящую в выражение (2.16) матрицу J (q) f (q) назы-

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

Использование метода Ньютона приводит к весьма простым соотношениям (2.16), однако в процессе его применения может возникнуть ряд трудностей, графическая иллюстрация которых приведена на рис. 2.2, а-в..

100

Рис. 2.2. Иллюстрация расходимости итерационного процесса: а - не существует1/ (xi 1 ) ; б - xi расходится; в – за-

цикливание.

Безусловно, хорошим рецептом, гарантирующим сходимость, является выбор начального приближения, удовлетворяющего условиям сформулированной выше теоремы. Однако, как было сказано ранее, обратные задачи связаны с управлением манипулятором, и в условиях режима on-line воспользоваться этой рекомендацией крайне затруднительно. Вместе с тем, можно так организовать процедуру решения обратной за-

дачи, что начальное приближение q0 будет близко к q * . Этого можно добиться, например, выбрав конечную последова-

тельность

si

, i

1,2,..., L так, чтобы

s0 f (q

0

), s L

s* и рас-

 

 

 

 

 

 

 

 

 

стояние

 

si 1

si

 

между соседними элементами

последова-

 

 

тельности si 1

и si было небольшим101

. Тогда, решая для каждо-

го si обратную задачу и используя в качестве начального приближения полученное на предыдущем шаге приближение qi 1

(кроме первого шага, где q0 q

0

), можно обезопасить себя от

 

 

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

2.ПОРЯДОК ВЫПОЛНЕНИЯ РАБОТЫ.

-Используя построение Денавита-Хартенберга из лаб ра-

боты № 2 задать геометрические параметры матриц

A(di , ai , qi , i ) .

-Найти матрицу перехода Тk = Аk+1, Аk+2 ... Al,

-Используя матрицу Тk построить зоны сервиса манипуля-

тора в плоскостях xy, zy, zx, соответствующие шестимерному пространству координат qi

Отчет должен содержать: Цель работы

Построения и выводы о проделанной работе

3. КОНТРОЛЬНЫЕ ВОПРОСЫ.

7.1 Что такое прямая позиционная задача?

7.2 Что такое обратное позиционная задача?

7.3 Краткий обзор методов решения обратной позиционной задачи.

7.4 Решение обратной позиционной задачи с помощью метода обратных преобразований.

7.5 Решение обратной позиционной задачи с помощью итерационного метода.

7.6 Алгоритм решения прямой позиционной задачи.

103 69

102

Источник: https://studfile.net/preview/16568554/