Особенность решения обратной задачи кинематики
О положении манипулятора

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

Рис.1. Задание ориентации захватного устройства манипулятора с помощью трех углов

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

Рис. 2. Робот-манипулятор типа Пума с шестью вращательными степенями подвижности

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

Увеличение числа сочленений манипулятора повышает манипулятивные свойства робота, что очень важно, например, при обходе препятствий. Однако, манипулятор становится кинематически избыточным, что значительно усложняет процесс управления. Поэтому существующие манипуляторы имеют, чаще всего, шесть сочленений. Как правило, применяют вращательные сочленения, которые позволяют управлять и положением и ориентацией схвата.

Одной из основных проблем для кинематически избыточных манипуляторов является определение величин углов в сочленениях, называемых обобщенными координатами, в зависимости от заданного положения и ориентации захватного устройства, а, именно, решение так называемой обратной задачи кинематики (ОЗК).

С математической точки зрения, ОЗК манипулятора, как и многие другие обратные задачи, является некорректной, т.к. допускает множественность или отсутствие решения. Аналитическое решение ОЗК существует лишь для некоторых конструкций не избыточных манипуляторов, которые позволяют разделить степени подвижности на, так называемые, транспортные и ориентирующие. Для манипуляторов с кинематической избыточностью аналитического решения не существует. Поэтому для его нахождения приходится применять численные методы, дающие приближенное решение. При этом ошибка решения не должна выходить за допустимые границы.

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

Рис. 3. Пример кинематически избыточного манипулятора

В математической постановке численное решение ОЗК манипулятора сводится к поиску глобального минимума скалярной целевой функции от обобщенных координат с ограничениями типа неравенство. Множественность решений соответствует локальным минимумам целевой функции. В связи с этим возможно, что найденное численное решение будет не достаточно точным, т.к. алгоритм находит ближайший минимум, либо найденные значения переменных целевой функции выйдут за допустимые границы, т.к. на углы поворота наложены конструктивные ограничения. Результат решения случайным образом зависит от начального приближения, т. е. от начальной точки поиска в пространстве обобщенных координат. Гарантировать, что будет найденное решение будет удовлетворять критериям точности и заданным ограничениям в общем случае нельзя.

Для ргуляризации некорректной по Адамару ОЗК целесообразно применять алгоритм поиска минимума с учетом ограничений типа неравенство и решать задачу многократно, отобрав впоследствии лучшее решение.

Из существующих методов минимизации с ограничениями типа неравенство приемлемый по точности и сходимости результат достигается методами сопряженных направлений Флетчера-Ривса или Полака-Райбера с одномерным поиском минимума по выбранному направлению одним из методов: дихотомии, золотого сечения, Фибоначчи. Комбинация этих методов выбрана из-за того, что учитываются ограничения на углы поворота непосредственно в процессе минимизации, не используя штрафных или барьерных функций.

Многократный поиск решения ОЗК для получения наилучшего результата, существенно ускоряется при распараллеливании процесса решения между множеством компьютеров, при этом повышается вероятность нахождения требуемого решения.

Использование GRID-cистемы для рещения ОЗК

Алгоритм поиска решения ОЗК при помощи grid-системы включает следующие этапы:

  1. Определение диапазонов допустимых изменений обобщенных координат и формирование набора начальных приближений, используя генератор случайных чисел с равномерным распределением на каждом из компьютеров (GUM), входящих в систему.
  2. Многократное решение ОЗК с заданными начальными приближениями и выбор наилучшего решения из множества полученных на отдельных компьютерах. Количество значений в наборе определятся допустимым временем решения задачи на одном компьютере.

Начальные данные, включающие положение и ориентацию захватного устройства в промежуточных точках, вводятся пользователем с помощью соответствующего апплета, расположенного в HTML – документе (рис. 4). Апплет передает данные и программный код для выполнения MyGrid. Система MyGrid формирует запрос у Peer о количестве компьютеров с требуемыми ресурсами, выбирает свободные компьютеры (GUM), удовлетворяющие заданным требованиям и передает им необходимые данные для выполнения задачи. Результаты выполнения задачи возвращаются от GUM к MyGrid и далее в Java-апплет.

Рис. 4. Формы ввода положения и ориентации захватного устройства в узловых точках

Множество решений задачи должно иметь достаточный объем, с тем, чтобы увеличить вероятность получения результата, удовлетворяющего заданной точности. Число компьютеров (GUM), на которых будет запущенно численное решение ОЗК, необходимых для получения точного решения, заранее определено. В случае, если число свободных компьютеров меньше заданного, процесс, решения ОЗК запускается на имеющихся машинах требуемое количество раз.

В табл. 1 приведены результаты решения численным методом ОЗК для семизвенного манипулятора с различными значениями начального приближения.

Таблица 1. Решения ОЗК для семизвенного манипулятора с различными начальными приближениями

Варианты 1, 2, 5, 6, 7 удовлетворяют заданной точности, т.е. обеспечивают требуемую точность положения и ориентации захватного устройства. При этом значения углов в сочленения решения 2 наиболее близки к величинам углов, характеризующих предыдущую конфигурацию манипулятора, т.е. обеспечивают меньший более экономичное движение при переходе из одной узловой точки в другую. Таким образом, выбирается второй вариант решения ОЗК, удовлетворяющий критерию точности и обеспечивающий близкую к начальной конфигурацию манипулятора.

Пользовательский интерфейс апплета для решения ОЗК позволяет вводить положение и ориентацию захватного устройства в узловых точках, запускать решение ОЗК, просматривать получаемые конфигурации манипулятора, соответствующие найденным значениям обобщенных координат.

Рис.5. Апплет для решения ОЗК.