Обратная задача кинематики
В этом разделе рассматривается обратная задача кинематики шестизвенного манипулятора. Необходимо по заданной матрице 0T6 положения и ориентации схвата шестизвенного манипулятора и известным параметрам его звеньев и сочленений определить присоединенные параметры манипулятора, обеспечивающие заданное положение схвата.
Для того, чтобы решение обратной задачи кинематики было получено в явном виде, необходимо, чтобы конструкция робота удовлетворяла одному из двух условий:
1. Оси трех смежных сочленений пересекаются в одной точке.
2. Оси трех смежных сочленений параллельны между собой.
Из равенства (4-2) следует вид матрицы манипулятора T:
T6==0A1 1A2 2A3 3A4 4A5 5A6. (6-7)
Из равенства (4-7) видно, что матрица T является функцией синусов и косинусов углов Приравнивая элементы матриц в левой и правой частях матричного уравнения (4-7), получаем, например, для манипулятора Пума двенадцать уравнений (4-3) – (4-6) относительно шести неизвестных (присоединенных углов). Поскольку число уравнений превышает число переменных, можно сразу сделать вывод о том, что решение обратной задачи кинематики для манипулятора Пума не единственно. Мы рассмотрим два метода решения обратной задачи кинематики: метод обратных преобразований в эйлеровых координатах и геометрический подход, выгодно отличающийся наглядностью.
Метод обратных преобразований
Задача состоит в том, чтобы, зная трехмерную матрицу поворота и учитывая равенство (2-2), представляющее собой выражение этой матрицы через углы Эйлера:
=
, (6-8)
где и ,
определить соответствующие значения углов Записывая это матричное уравнение в форме уравнений для отдельных элементов, получим:
; (6-9а)
; (6-9б)
; (6-9в)
; (6-9г)
; (6-9д)
; (6-9е)
; (6-9ж)
; (6-9з)
.
(6-9и)Из уравнений (6-9и), (6-9е) и (6-9з) получаем, что решение всей системы уравнений (6-9а) – (6-9и) имеет следующий вид:
, (6-10)
, (6-11)
. (6-12)
Полученное решение неустойчиво и плохо обусловлено по следующим причинам:
1. Функция arccos неудобна тем, что точность вычисления ее значения зависит от этого значения.
2. В точках, где sin () принимает близкие к нулю значения, т.е. при »0° или при »180°, равенства (6-11) и (6-12) либо не определены, либо дают низкую точность вычислений.
Более устойчивый способ определения углов Эйлера для вычисления угла , значения которого лежат в пределах -p££p, использует функции арктангенса ATAN2(y,x), вычисляющий значение arctg(y/x) с учетом принадлежности аргумента соответствующему квадранту:
(6-13)
Применяя такую обратную тригонометрическую функцию двух аргументов, рассмотрим общее решение.
Элементы матрицы в левой части матричного уравнения (6-8) заданы, а элементы матриц, стоящих в правой части этого уравнения, неизвестны и зависят от Умножая слева матричное уравнение (6-8) на , переносим неизвестную в левую часть, оставляя в правой неизвестные и , и тем самым получаем:
,
или
.
(6-14)
Из равенства элементов (1, 3) (элементов, находящихся на пересечении 1-й строки и 3-го столбца матрицы) в правой и левой частях уравнения (6-14) имеем:
, (6-15)
что в свою очередь дает
. (6-16)
Из равенства элементов (1, 1), (1, 2) в правой и левой частях следует:
, (6-17а)
, (6-17б)
что позволяет найти :
(6-18)
Приравнивая элементы (2, 3), (3, 3) матриц в левой и правой частях уравнения, получаем:
,
, (6-19)
что позволяет найти :
. (6-20)
Таким образом, рассмотренный способ состоит в умножении исходного уравнения слева и справа на неизвестную матрицу обратного преобразования. Этот способ дает общий подход к решению обратной задачи кинематики. Но не дает точного ответа, каким образом выбрать из нескольких существующих решений одно, соответствующее требуемой конфигурации манипулятора. В этом вопросе приходится полагаться на интуицию исследователя. Для нахождения решения обратной задачи кинематики по заданной матрице манипулятора более пригодным является геометрический подход, дающий также и способ выбора единственного решения для конкретной конфигурации манипулятора.