Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Копия в рио.doc
Скачиваний:
14
Добавлен:
09.11.2019
Размер:
9.1 Mб
Скачать

Правая часть (1.45), если k  j, k  I;

правая часть (1.46), если k  j;

правая часть (1.47), если k = j;

0, Если k  j.

Окончательно получаем

w0A = riA +

+ ) riA. (1.49)

Формула (1.43) позволяет вычислить скорость, а формула (1.49) – ускорение любой точки манипулятора.

1.10. Прямая задача кинематики

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

С одной стороны, звено представляет собой твердое тело, определенным образом расположенное в пространстве. Связь системы координат звена (пусть это i-е звено) и базовой системы координат согласно (1.23) находят по уравнению

= Ti . (1.50)

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

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

= T1 T2 ... Ti = Si . (1.51)

Матрица Si есть матрица размером 44, все ее элементы известны.

Таким образом, если мы хотим знать положение звена, то из матрицы Si надо взять величины , , . Если мы хотим знать ориентацию звена, то из матрицы Si надо взять какие-то 3 косинуса (например, стоящие на месте элементов Si13, Si23, Si11).

Математически эти действия можно записать следующим образом:

x = F(q(t)), (1.52)

x = ( , , )T, (1.53)

F(q(t)) = (1TSi(q(t)) 4, 2TSi(q(t)) 4, 3TSi(q(t)) 4)T, (1.54)

где 1 = , 2 = , 3 = , 4 = ; (1.55)

X = (q(t)); (1.56)

X = ( , , , Si13, Si23, Si11)T; (1.57)

(q(t)) = (F(q(t))T, 1TSi(q(t)) 3, 2TSi(q(t)) 3, 1TSi(q(t)) 1)T. (1.58)

По уравнению (1.56) можно решить прямую задачу кинематики.

1.11. Обратная задача кинематики

Обратная задача кинематики заключается в определении вектора обобщенных координат q(t) манипулятора с учетом известных положения и ориентации схвата X.

Запишем формулу (1.56) в виде шести уравнений:

. (1.59)

Величины, стоящие в (1.59) слева, известны. Для нахождения обобщенных координат необходимо решить систему из 6 нелинейных уравнений (1.59) с n неизвестными. Аналитическое решение системы (1.59) возможно, но не всегда. Дело осложняется тем, что решение системы (1.59) может быть не единственным. Этот факт можно продемонстрировать на следующем примере (рис. 1.19).

Для заданного положения X схвата возможны две конфигурации:

qI = (q1I,q2I)T, qII = (q1II,q2II)T.

Для решения системы (1.59) могут быть применены численные методы. Для этого сначала приведем (1.59) к виду (1.60) путем переноса правых частей (1.59) в левые.

Система (1.60) будет решена, если мы найдем такой вектор q, который, будучи подставлен в (1.60), обращает все уравнения в тождества:

. (1.60)

Задача нахождения вектора q может быть сформулирована следующим образом. Составим функцию

f(q1,...,qn) = f12(q1,...,qn) + f22(q1,...,qn) + ... + fm2(q1,...,qn). (1.61)

Поставим себе задачу: найти такой вектор q, который, будучи подставлен в функции f1, f2, ..., fm, обращает каждую из них в нуль и тем самым обращает в нуль и функцию f. Поскольку функция f может принимать значения только большие или равные нулю, то вектор q, при котором f становится равной нулю, одновременно является и тем вектором, при котором f принимает минимальное значение. То есть, найдя такой вектор, мы тем самым найдем решение системы.

Одним из методов поиска минимума функции является метод градиентного спуска. При использовании этого метода поиск минимума функции f(q1,...,qn) осуществляется с помощью такой последовательности итераций:

qk+1 = qk - agradf(q1k,...,qnk), (1.62)

где a – весовой коэффициент (величина шага).

Схема поиска минимума функции состоит в следующем: задаем произвольное значение q0, подставляем его в (1.61) и вычисляем f(q0). Так как мы знаем, что минимальное значение функции равно 0, то проверяем, равно ли нулю f(q0). Если f(q0) = 0, то q0 является решением системы, если же f(q0) ≠ 0, то по формуле (1.62) вычисляем q1 и повторяем итерационный процесс.

Формула (1.63) представляет собой покоординатную запись уравнения (1.62):

. (1.63)

Итак, приведя систему (1.59) к виду (1.60) и используя методы поиска минимума функции, можно численно решать обратную задачу кинематики.

В этой главе мы нашли способ описания движения манипуляторов – с помощью вектора обобщенных координат q(t). Если мы имеем этот вектор, то, решив прямую задачу кинематики, можем получить формулы, описывающие движение любой точки манипулятора в базовой системе координат (а следовательно, и всех точек). Для этого, как мы видели, необходимо знать координаты этой точки в системе координат того звена, которому данная точка принадлежит. Кроме того был предложен способ решения обратной задачи кинематики – определение вектора q(t) исходя из положения и ориентации схвата.