Геометрические характеристики окружающей среды — очертания объектов манипулирования, технологическое оборудование, всевозможные препятствия — представляются обычно в трехмерном декартовом пространстве. Технологическое задание для робота, т. е. программа его движений, определяющая положение и скорости захвата как функции времени, также описываются в трехмерном декартовом пространстве. В то же время, как было показано выше, представление механической руки робота как разомкнутой кинематической цепи с п степенями подвижности делают удобным и лаконичным описание ее состояния n-мерной системой обобщенных координат q. Именно то обстоятельство, что конфигурация руки робота определяется углами qi(i = ,n) поворота его звеньев, а исходная программа движений робота представляется последовательными положениями его захвата в декартовом пространстве, ставит одну из важных задач робототехники: по известным обобщенным координатам определять декартовы координаты звеньев и, обратно: по известным декартовым координатам находить обобщенные координаты. Эти задачи известны под названием соответственно прямой и обратной задачи о положениях.
Решение прямой задачи для структуры в виде разомкнутой последовательной цепи звеньев не вызывает затруднений. Оно дается формулой (3.1), где матрицы Мм>1 определены параметрами звеньев и приведены для всевозможных структур пар соседних звеньев в табл. 3-Ій 3.2. Отметим, что решение прямой задачи для традиционных схем роботов однозначно. Любой набор обобщенных координат qt при произвольном п дает одну конфигурацию скелета и единственное положение захвата в декартовом пространстве.
Обратная задача таким свойством не обладает, так как при вращательных кинематических парах искомые обобщенные координаты в матрицах таблиц 3.1 и 3.2 являются аргументами тригонометрических функций. Поэтому одному и тому же положению и ориентации захвата может соответствовать несколько наборов решений. Отметим, что при "полном" программном задании, когда определены положение и ориентация захвата, и п > 6, возникает континуум решения. Если число условий в задании меньше числа степеней подвижности, то возникает так называемая "избыточность" системы. Ниже мы рассмотрим наиболее часто встречающийся в практике случай, когда избыточность отсутствует, т. е. будем искать корни <7, системы
м0,„ = М01М12 …мв_, „ = Мпр, (3.14)
когда п = 6 и определены все компоненты матрицы Мпр программного задания, например в виде (3.13).
Выражение (3.14) дает право приравнять одноименные элементы < = т}„* (j = 1, 2, 3; к = 1,…, 4) матриц М0|Л и Мпр и получить 12 уравнений
относительно шести неизвестных qt. Среди полученных уравнений только шесть независимых: три определяются элементами правых столбцов обеих матриц, а оставшиеся три независимых уравнения можно получить из девяти равенств направляющих косинусов с учетом следующих шести уравнений связи:
(m0,n)2 +(m0,n)2 +(/По! п)2 = 1’
(m^)2+(mo“)2+(<n)2 = l,
(<)2+(<)2+K3,)2=i
т0,пт0,п + + Kn"42n = 0.
«,+« + «=o,
„,12 13 , 22 23 , „,32 13 _n 0,л 0,n m0,nm0,n m0,nm0,n ~
Таким образом, в общем случае для решения обратной задачи необходимо искать корни системы из двенадцати трансцендентных уравнений с шестью уравнениями связи. Такая задача может решаться на современной вычислительной технике итерационными способами, но даже и при высоком быстродействии требуются значительные затраты машинного времени. Элементы Мпр изменяются во времени, а следовательно, необходимо получать решения с высокой частотой, поэтому такой подход не может быть использован для быстродействующих промышленных роботов.
Обычно решению обратной задачи предшествует некоторый анализ получаемых уравнений. На первом его этапе из 12 полученных уравнений выделяют 6 независимых. Как правило, этот этап выполняется путем
исследования особенностей структуры скелета руки, успех в значительной степени зависит от опыта и изобретательности разработчика [10, 21, 22, 25]. Регулярный подход к выделению независимых уравнений предложен в работе [16] и развит в [14]. Он основан на условном разбиении структуры механизма и выделении уравнений связи, обеспечивающих "связку" его отдельных частей.
На втором этапе обычно подыскивают методы и средства, ускоряющие решение шести полученных уравнений. Иногда при удачном разбиении механизма удается разделить исходную систему уравнений на несколько подсистем, каждая из которых в определенной последовательности решается численными итерационными методами или с использованием аналоговых вычислительных устройств [25].
Для устранения итерационных процедур и наилучшего решения проблемы реального времени идеальным было бы использование математических соотношений в явном виде для вычисления искомых обобщенных координат. В связи с этим особое значение приобретает выделение класса структур механических рук с п = 6, для которых выражение для каждой обобщенной координаты может быть получено как функция от параметров а„ а„ г, звеньев и программных значений л:пр, упр, znp, апр, (Зпр, упр координат
захвата. Для некоторых частных структур с п = 6 такие решения найдены [10, 19, 22]. В работе [26] показано, что для структур с шестью вращательными парами обратная задача сводится к решению алгебраических уравнений не выше четвертого порядка, если в структуре присутствуют три пары, оси которых пересекаются в одной точке. Ниже доказано [7], что существует достаточно широкий класс структур с п = 6, для которых обратная задача решается в явном виде, т. е. сводится к решению уравнений не выше второго порядка. Кроме признака, указанного в работе [26], этому требованию удовлетворяют структуры, содержащие три пары с параллельными осями, снижение порядка уравнений до второго достигается при наличии среди оставшихся еще двух пар с пересекающимися или параллельными осями. Именно таким структурам следует отдавать предпочтение при синтезе кинематических схем рук различного технологического назначения, поскольку они обеспечивают управление в реальном масштабе времени.