2004
Доклады БГУИР
январь- март
№ 1
УДК 621.865
АНАЛИЗ И СИНТЕЗ КИНЕМАТИЧЕСКИХ МОДЕЛЕЙ МАНИПУЛЯЦИОННЫХ СИСТЕМ РОБОТОВ
А.П. ПАШКЕВИЧ
Белорусский государственный университет информатики и радиоэлектроники П. Бровки, 6, Минск, 220013, Беларусь
Поступила в редакцию 8 декабря 2003
Приводятся результаты исследований по анализу и синтезу кинематических моделей мани-пуляционных систем роботов, обладающих свойствами полноты, непрерывности и неизбыточности. Подробно рассмотрены вопросы идентификации параметров моделей при неполной информации о положении и ориентации рабочего органа робота. Получены выражения, позволяющие оценить точность калибровки. Проведен сравнительный анализ полученных результатов.
Ключевые слова: промышленные роботы, кинематические модели, калибровка, планирование эксперимента.
Введение
Эффективность применения роботов и робототехнологических комплексов (РТК) существенно зависит от точности, с которой осуществляется реализация программных движений. На точность робота оказывает влияние ряд факторов, к важнейшим из которых относятся [1, 2] погрешность изготовления и сборки манипулятора, деформации и тепловые расширения звеньев, люфты и эксцентриситет механических передач, а также погрешности планирования траектории. Суммарное влияние этих факторов приводит к тому, что даже однотипные роботы одной и той же серии по-разному реализуют одну и ту же управляющую программу. Значимость перечисленных факторов и их вклад в результирующую погрешность существенно зависит от типа используемого робота, конструкции РТК и способа программирования. Однако, как отмечается в ряде работ [3-6], существенного улучшения точности можно достичь путем повышения адекватности (калибровки) кинематических моделей, используемых в системе управления и системе off-line программирования.
Для описания кинематики механизмов разработан ряд методов, оперирующих с однородными преобразованиями, кватернионами, винтами и дуальными матрицами [7, 8]. Однако построенные на их основе математические модели оказываются непригодными для калибровки, так как могут содержать неидентифицируемые параметры либо вырождаться даже при небольших отклонениях параметров от номинальных значений. Эта проблема была частично исследована в работах [9-12], где предложены критерии "пригодности" моделей (полнота, неизбыточность и непрерывность), но задача синтеза моделей, удовлетворяющих этим критериям, решена лишь для частных случаев. Поэтому в данной работе предлагается алгоритмический метод, позволяющий провести анализ полноты и избыточности кинематических моделей манипуляторов в общем случае, а также синтезировать модели, пригодные для калибровки.
Постановка задачи
С математической точки зрения рассматриваемая задача сводится к исследованию пространства решений системы алгебраических уравнений
*(Т-)= П)); г = 1: т, (1)
где qj — вектор обобщенных координат, соответствующий выходному фрейму Т,; П — вектор параметров; /(.) — функция, описывающая прямое преобразование координат; g(.) — функция, учитывающая ограничение измерительной системы; т — число измерений. Известно [7], что свойства соответствующего пространства решений можно оценить по линеаризованной модели, построенной в окрестности номинальных значений параметров П :
IааП = gа> дП = П-П° , (2)
где
За = со/[1(я1,П0)4ь,П0), ... з(цт,П°)]; 1(я,П) = д%П)/Ш ;
ае а = [в(т)-(яРП0 ^)-(я 2,п 0 ))..*(Тт)-(я „.П"
Поэтому задача заключается в оценке ранга агрегатированного якобиана 1а и поиску его линейно-зависимых столбцов.
Анализ идентифицируемости параметров
Используя аппарат сингулярного разложения, линейную систему (2) можно привести к
виду
о, аП = аТа, г = 1 •• Г, (3)
где г=гапк(1 0) , а векторы У, и скаляры о, находятся из выражений:
I а = и Е Ут; ит и = I; Ут У = I; V = [У1 У2...Уп ]; Е = ё1ав[а;а2 ...Оп ].
Общее решение этой системы является суммой некоторого частного решения AПpt и произвольного вектора из подпространства с базисом У\, У2, ..., Уп :
аП = аПР + У,, ^ е *. (4)
,>г
Поэтому в зависимости от вида указанных векторов все параметры геометрической модели могут быть разделены на три типа: идентифицируемые, которые однозначно определяются системой; неидентифицируемые, влияние которых на функцию g(T) не обнаруживается в процессе измерений; полуидентифицируемые, которые влияют на функцию g(T), но не могут быть определены из (3) однозначно.
Простейшими примерами неидентифицируемых параметров являются углы ориентации инструмента, которые не обнаруживаются при измерении положения рабочей точки, а также параметры, описывающие расположение основания робота в абсолютной системе координат при относительных измерениях. К полуидентифицируемым относятся линейно-зависимые параметры (например, d2 и йз в модели Денавита-Хартенберга манипулятора РиМА-560, которые входят в модель в виде разности й2-йз). В общем случае полуидентифицируемые параметры разделяются на группы, в каждой из которых один из элементов может считаться независимым, а остальные — избыточными.
Можно доказать, что идентифицируемость геометрических параметров определяется следующими утверждениями, вытекающими из (3), (4).
Утверждение 1. Геометрический параметр ДЩ является идентифицируемым тогда и только тогда, когда >я строка матрицы [Уг+1 ...Уп] равна нулю.
Утверждение 2. Геометрический параметр ДП является неидентифицируемым тогда и только тогда, когда >й столбец матрицы [У1 ...Уг] равен нулю.
Утверждение 3. Полуидентифицируемые параметры связаны линейными соотноше-
Т
ниями Ь/ ДТ = 0 ; / = 1: г , где Ьу = 0 для идентифицируемых либо неидентифицируемых параметров и Ьу = 0 в противном случае.
Следует заметить, что неидентифицируемым параметрам также соответствуют нулевые столбцы агрегатированного якобиана Кроме того, число линейных уравнений Ь дТ = 0 в действительности меньше г, так как некоторые из векторов Ь/ равны нулю. Чтобы упростить уравнения связи между параметрами, необходимо осуществить сингулярное разложение матрицы [Ь1 ...Ьг], сформировать систему, аналогичную (3), и привести ее к квазидиагональной
форме.
Практическое применение утверждений 1-3 требует построения агрегатированного якобиана При этом можно использовать как классический аналитический способ, так и численное моделирование. Проведенные исследования показали, что для промышленных роботов аналитическое решение задачи столь громоздко, что не может быть выполнено даже современными мощными программными средствами. В то же время численное моделирование может быть осуществлено за пренебрежимо малое время. При этом, чтобы обеспечить корректность результата и исключить понижение ранга ^ за счет неудачного выбора , обобщенные координаты целесообразно формировать случайно, а число измерений т должно существенно превышать число параметров. Соответствующий алгоритм анализа идентифицируемости геометрических параметров состоит из следующих шагов.
Шаг 1. Генерация агрегатированного якобиана ^ для случайных значений обобщенных
координат , /=1:т.
Шаг 2. Исключение неидентифицируемых параметров путем выделения нулевых (либо близких к ним) столбцов
Шаг 3. Сингулярное разложение матрицы, составленной из ненулевых столбцов якобиана ^ .
Шаг 4. Формирование множества идентифицируемых параметров путем выделения нулевых строк матрицы [Уг+1 ...Уп].
Шаг 5. Построение матрицы связи полуидентифицируемых параметров и ее квазидиа-гонализация при помощи сингулярного разложения
Предложенный алгоритм реализован в виде т-функции в среде пакета МаАаЬ и позволяет провести анализ модели манипулятора, заданной в виде произведения матриц однородных преобразований. Однако для практики большее значение имеет задача синтеза геометрических моделей, пригодных для калибровки, которые, как указано выше, должны одновременно удовлетворять требованиям полноты и неизбыточности.
Для построения полных неизбыточных моделей манипуляционных систем можно использовать следующую процедуру. Сначала для заданного манипулятора строится полная избыточная модель, включающая по 6 параметров для описания каждого звена и один параметр для каждого сустава. Затем параметры этой модели анализируются на идентифицируемость и производится ее редукция (исключение избыточных параметров). Например, для классического плоского двухзвенного манипулятора с номинальной моделью Т = Иг (дг )Тх1Кг (2 )Тх2 синтез начинается с построения полной, но избыточной модели
Т = [ТхТуТгЯхЦуКг ] Иг (д1 )[ТхТуТгКхЦуКг ] Иг (д2 )[ТхТуТгКхЦуКг ]2, (5)
содержащей 20 параметров. Применение разработанного алгоритма в случае, когда измеряются все компоненты фрейма T, показывает, что число независимых параметров (ранг Ja) равно 14, неидентифицируемые параметры в модели (5) отсутствуют, а полуидентифицируемые параметры разбиваются на следующие группы: {Rzo,Rzq1 ,Ty1} {Ty1 ,Rz1 ,Rzq 2 ,Rz2}
(TZ0>TZ1 ,TZ2 } {{2^2 }
После выбора термов Rzqi , Rzq2 , Tz0 , Ty2 в качестве независимых получаем искомую модель
T = [TxTyTzRxRy ]o Rz(q )[TxRxRy ] Rz(q2 )[TxTyRxRy ]2, (6)
содержащую 14 параметров и напоминающую по структуре модификацию модели Денавита-Хартенберга, которую исследовали Wu, Mooring, Hollerbach и другие авторы [4, 7, 11, 13]. Таким образом, разработанный алгоритм позволяет автоматизировать процесс анализа геометрической модели манипулятора, а также провести ее редукцию. Получаемая при этом модель является обобщением классической модели Денавита-Хартенберга, а в некоторых частных случаях совпадает с ней.
Синтез полных нередуцируемых моделей
Предложенный выше алгоритм анализа идентифицируемости геометрических параметров и основанная на нем процедура синтеза могут быть применены к манипуляторам произвольной структуры. В то же время в робототехнике наибольшее распространение получили манипуляторы, у которых оси соседних суставов перпендикулярны или параллельны. Исследуем подробнее этот важный для практики случай.
Предположим, что преобразование между (>1)-м и i-м суставами описывается выражением
Rz (т.- )[TxTyTzRxRyRz Tx(q ), (7)
причем длина звена учитывается сомножителем Ty^, а остальные термы учитывают погрешности звеньев. Тогда, используя свойства коммутативности дифференциальных преобразований, исходное выражение (7) можно привести к виду
TZi-1 [Rz(q.-1 )RZi_1 ][ -1 Rx-1 Ry_ ][. JT^ ], (8)
откуда следует, что 3 параметра из 7 являются избыточными, причем сомножители Rz._1 и Tx._1 можно учесть в моделях суставов, а сомножитель Tx._1 — в модели предыдущего звена. Исследование других вариантов выражений (7) приводит к аналогичному результату: вращательное звено может быть описано одной из моделей вида Rz(qi_1 )[TxTy Rx]_1;
Rz)TxTyRy]_1; Rz(qi_1 )[TyRxRy]_1; Rz(qi_1 )[TxRxRy]._1, а поступательное — моделью Tz (qi_1 )R xi_1 или Tz(qi_1 )Ryi_1 , при этом конкретный вид модели зависит от типа последующего сустава. В результате проведенного анализа был сформулирован и обоснован алгоритм построения полных неизбыточных моделей манипуляторов с перпендикулярными либо параллельными осями соседних суставов, который состоит из следующих шагов.
Шаг 1. Создать полную избыточную модель манипулятора, используя выражения:
• для основания манипулятора - TxoTyoTzo RxoRyoRzo;
• для вращательного звена - Re. (q. )[Tm. Tv. Rm. Rv. ];
• для поступательного звена - Te. (q. )[Rm. Rv. ], где e. — ось сустава; uv. — оси, перпендикулярные e..
Шаг 2. Редуцировать модель, используя последовательно следующие правила исключения термов:
• для вращательного звена Ке/:
п если е/ ± е/—1 , то исключается вращательный терм или Ку^1 , соответст-
вующий Яе^;
п если е^ || е^-1 то исключается поступательный терм или Ту^_| , описы-
вающий перемещение, перпендикулярное оси звена, для которого j минимально (¡>1);
• для поступательного звена Те^:
п если е^ ^ е^_1 , то исключается поступательный терм Ти^_1 или Ту^1 ,
соответствующий Те^;
п если е^ || е^-1 то исключается поступательный терм Ти^_| или Ту^_| , описы-
вающий перемещение в направлении е^, для которого j минимально (¡>1).
Например, для рассмотренного в предыдущем разделе манипулятора на первом шаге используется модель Т = [ТхТуТгКхЦуЯг]о Яг(^ ^ТхТуКхКу] Яг(#2 )[ТхТуКхКу]2, редукция которой приводит к исключению и Ту1, что полностью соответствует выражению (6). Следует отметить, что термы Яе^^) и Те^^), описывающие суставы, а также термы с ненулевыми значениями номинальных параметров не могут быть исключены из модели. Поэтому для последних исключаются лишь геометрические погрешности, а параметры полагаются равными
номинальным. В дальнейшем такие термы будем помечать верхним индексом 0, например Ту10. При помощи предложенного алгоритма были построены геометрические модели для типовых манипуляторов с 4, 5, 6 и 7-ю степенями свободы.
Для манипуляторов общего вида, у которых угол между осями суставов отличен
от 0 или 90°, искомую модель можно найти и путем простого выбора линейно-независимых столбцов якобиана При этом осуществляется исключение зависимых параметров, а не поиск уравнений связи, как в предыдущем разделе. Такой метод применялся в работах [4, 7], где исследовались аналитические выражения для якобиана и независимые столбцы выделялись без использования какого-либо машинно-ориентированного алгоритма. Поскольку для реальных манипуляторов число независимых параметров достигает 30, то такой процесс является чрезвычайно трудоемким. В связи с этим был разработан еще один алгоритм, упрощающий выделение независимых столбцов якобиана. В отличие от известных он основан на численном анализе матрицы ^ ( а не Л), а искомая модель формируется автоматически.
Как и в предыдущем случае, исходной информацией для алгоритма является агрегати-рованный якобиан, построенный для избыточной модели и случайной совокупности обобщенных координат, а также "стратегия выбора столбцов", позволяющая получить единственное решение из множества возможных. В алгоритме предусмотрены следующие "стратегии выбора: J — первыми выбираются столбцы, соответствующие координатам В — первыми выбираются столбцы, описывающие основание робота; Т — первыми выбираются столбцы, описывающие инструмент робота; Ь — оставшиеся столбцы анализируются слева направо; Я — оставшиеся столбцы анализируются справа налево. Эти стратегии могут комбинироваться и применяться поочередно. Например, для двухзвенного манипулятора, рассмотренного выше, было получено 6 моделей, приведенных в таблице.
Оценка параметров моделей
Декомпозиция процесса идентификации. Задача оценки параметров математической модели по результатам эксперимента подробно исследована для линейных динамических систем, а также для статических объектов, описываемых уравнениями линейной регрессии. Кинематические модели роботов, рассматриваемые в данной работе, обладают рядом существенных особенностей, таких, как большая размерность и существенная нелинейность. В то же время типы этих нелинейностей ограничены произведением тригонометрических функций, а число
искомых параметров определяется соотношением [4] N = 6 + 4р + 2г, где р, г — соответственно количество вращательных и поступательных суставов. Учитывая, что на практике размерность геометрической модели манипулятора достаточно велика (обычно N«30), предлагается разделить процесс идентификации на следующие этапы: 1) идентификация параметров звеньев и суставов; 2) построение модели, описывающей преобразование между первой и последней осями; 3) идентификация параметров преобразования между последней осью и рабочей точкой инструмента; 4) идентификация параметров преобразования между базовой системой координат и первой осью. Две первые из перечисленных задач относятся непосредственно к манипулятору и рассматриваются ниже; две последние задачи связаны с калибровкой РТК и рассмотрены в других работах автора [14, 15].
Полные нередуцируемые модели двухзвенного манипулятора
Стратегия Уравнения модели
JL T = [TxTyTzRxRy ] Rz(q )[TxRxRy J Rz(q2 )[TxTyRxRy ]2
BJL T = [TxTyTzRxRyRz ]o Rz (q1 )o [TxRxRy]1Rz(q2 )[TxTyRxRy]2
TJL T = [TxTyRxRy] Rz(q1 )[TxRxRy]1 Rz(q2 )o [TxTyTzRxRyRz ]2
JR T = [TxTyRxRy ]o Rz (q1 )[TxRxRyjRz(q2 )[TxTzRxRyRz ]2
BJR T = [TxTyTzRxRyRz ]Rz(q1 )o [TxRxRy ^Rz (q2 )[TxRxRyRz ]2
TJR T = [TxTyRxRy ]o Rz(q1 )[TxRxRyl Rz(q2 )o [TxTyTzRxRyRz ]2
Идентификация параметров звеньев и суставов. Математическая модель оси сустава представляет собой прямую в трехмерном пространстве, которая, как известно, задается четырьмя независимыми параметрами. Для отыскания этих параметров проводится эксперимент, при котором звенья робота перемещаются раздельно и поочередно, а рабочая точка инструмента движется по окружности (для вращательных суставов) либо прямой (для поступательных). При этом для каждого сустава определяется уравнение нормали к указанной окружности или прямой и задается локальная система координат, ось Z которой направлена вдоль оси сустава, а оси X, Y лежат в указанной плоскости. В результате модель звена находится как преобразование между фреймами соседних осей. Следует отметить, что при этом не требуется знания номинальных параметров робота, базирования измерительной системы и точной фиксации рабочей точки относительно фланца робота. Наиболее подробно задачу идентификации осей суставов исследовали Stone и Anderson [4]. Ими предложен метод калибровки роботов, состоящий из четырех шагов: идентификации осей суставов; построения систем координат звеньев; вычисления параметров ^-модели; преобразования ^-модели в модель Денавита-Хартенберга.
Предлагаемый в данной работе алгоритм охватывает два первых шага этого метода и позволяет определить матрицы ^-модели без таких промежуточных этапов, как построение плоскости вращения, центра вращения или линии перемещения, а также явного построения систем координат звеньев. Основная идея предлагаемого алгоритма заключается в расширении множества входных данных, в которые наряду с измеренными координатами рабочей точки {gj} включаются их образы {p.}, вычисленные по показаниям датчиков суставов {q}, где
рг. = [rcosq. rsinq. О] для вращательных сочленений и рг. = [0 0 qi J для поступательных,
а r — некоторая скалярная величина, приблизительно равная радиусу вращения. Тогда задачу идентификации осей сустава можно свести к определению параметров преобразования
g. = |Rp. +1; i = 1: m , (9)
неизвестными в котором являются ортогональная матрица вращения R, вектор перемещения t и скалярный коэффициент учитывающий погрешности при задании радиуса r. Для решения задачи применяется метод наименьших квадратов:
m
F = I (g, - I RP- -1) ( - | RPi -1) min (10)
i=1
T
при ограничении Л R=/. После дифференцирования F по t и приравнивания частной производной нулю, получаем:
mm
i=-I g, - -^rZ р,, (ii)
m i=i m ,=1
откуда после соответствующей подстановки приходим к выражению
m
F = I(g, Rp,)(g, Rp,), (12)
i =1
1 m 1 m
где g= g, —I g >'p = Pi —I Pi
m i=1 m i=1
Дифференцируя далее F по находим
mm
| = I gT RpJ IPT Pi- (13)
i=1 / i=1
Поэтому F = I gTgi - (I pTpi ) (l gT Rpi ) и для определения R получаем выражение:
F ' = I gT Rp i = trace(RI p igT )^max. (14)
^ ^ T T
После сингулярного разложения матрицы S = J р- g¡ =U EV соотношение (13) приводится к виду
F' = trace(RUEVT) = trace(vT RUE) = Ja, at, (15)
T
где aii ,c¿ — соответственно диагональные элементы матриц V RUи E (с/>0). Учитывая далее, T
что матрица V RU ортогональная и, следовательно, aii ^1, получаем условие экстремума в ви-
T T
де V RU = I, откуда R = VU . В результате приходим к следующему алгоритму определения матрицы R и вектора t:
Шаг 0. Путем эксперимента получить исходные данные — множество декартовых координат {gi} и множество обобщенных координат {q}.
Шаг 1. Сформировать дополнительное множество точек {р}. Шаг 2. Произвести центрирование точек {g;}, {р}.
Шаг 3. Осуществить сингулярное разложение матрицы S и вычислить матрицу R и вектор t.
Применяя описанный алгоритм последовательно ко всем суставам, можно получить матрицы Ri и векторы ti , характеризующие положение и ориентацию каждой оси в системе координат измерительной системы. Далее находятся параметры звеньев, соединяющие соседние оси:
i-i t
RT-Ri RT-i(ti - ti-i)" o i
(i6)
где — матрица однородного преобразования, описывающая звено, расположенное между (?-1)-й и i-й осями. Результирующая модель манипулятора имеет вид
T = BaseVi(q) 1T2 V2(q2) 2T^... • "-1T„ V„(qn)Tool, (17)
где переменные сомножители КД^-) равны Rz(qj) или Tz(qi) в зависимости от типа сустава, qi — обобщенная координата, а преобразования Base и Tool считаются известными.
Уточнение параметров модели. Выражение (17), построенное по результатам идентификации отдельных осей и звеньев, можно рассматривать как первое приближение к искомой модели. Для уточнения ее параметров целесообразно провести еще один эксперимент, при котором звенья совершают совместное движение и при идентификации одновременно учитывается влияние всех геометрических погрешностей. В этом случае искомые параметры определяются путем решения задачи оптимизации
m
F = Efe(T)-g((я.пЖ (g(T)-g(f(П)))тт , (18)
i=i
где, как и ранее, функция /(.) описывает геометрическую структуру манипулятора, функция g(.) учитывает особенности измерительной системы, qi — вектор обобщенных координат,
П — вектор параметров. Для ее решения можно использовать как известные численные методы нелинейного программирования, так и линеаризацию кинематической модели. В последнем случае отклонения параметров от номинальных значений находятся из известного выражения:
аП = ( IJ а )-1 JT g а, (19)
где Ja — агрегатированный якобиан, Aga — вектор отклонений выхода номинальной модели
от результатов эксперимента.
Поскольку общие вопросы решения оптимизационной задачи (21) исследованы достаточно полно, рассмотрим подробнее несколько частных случаев, имеющих большое значение для практики. Предположим сначала, что измерительная система позволяет определить только положение рабочего органа. Тогда по крайней мере три параметра полной модели становятся избыточными и должны быть исключены из нее или зафиксированы. В процессе исследований было доказано, что точное выражение для числа независимых параметров в этом случае имеет вид:
Np = 3 + 4r + 2p - 2s, (20)
где, как и ранее, r, p — число вращательных и поступательных суставов; s — число сингулярных вращательных пар в конце кинематической цепи, оси которых параллельны и проходят через рабочую точку инструмента. Например, для манипулятора PUMA-560 с симметричным инструментом при измерении только позиции число независимых параметров равно 25 (r=6, p=0, s=1), а при использовании несимметричного инструмента Np=27, так как s=0. Это полностью совпадает с результатами численного моделирования, приведенными в работе [10]. Следует заметить, что полученное выражение является также более точным, чем известное соотношение для кинематической цепи с одним сингулярным суставом
Np < 6 + 4n - 2p - On - min(n-1 ,tn_,), (21)
где on-1, tn-1 — число ориентационных и позиционных параметров в модели предпоследнего звена; On — число ориентационных параметров для последнего звена.
Если полная модель манипулятора содержит три вращательных терма в правой части, то исключение ориентационных составляющих инструмента не вызывает затруднений. В противном случае избыточными являются и некоторые "средние" термы, для обнаружения которых можно использовать численный алгоритм, приведенный выше. Например, для простейшего
манипулятора с одним поступательным суставом этот алгоритм позволяет переити от полной модели с 10 параметрами T = [ Tz0 Rxa Ry0Rz0 ]Tx(^i jRyR ] к ее сокращенной форме
с 7 параметрами p = [Tyo Tz0Ry0 Rz0 }Гх(^1 )p 0, где p — однородный вектор положения рабочей T
точки, po=[0 0 0 1]T.
Для манипуляторов с параллельными либо перпендикулярными осями соседних звеньев исключение ориентационных составляющих инструмента можно включить в алгоритм синтеза геометрической модели, который модифицируется следующим образом.
Шаг 0. Создать полную неизбыточную модель манипулятора с двумя вращательными термами справа от сомножителя, описывающего последний сустав. Шаг 1. Исключить эти два терма из модели.
Шаг 2. Редуцировать модель, дополнив ее справа третьим вращательным термом, который рассматривается как виртуальное звено.
Например, для однозвенного манипулятора получаем следующую последовательность преобразований:
1) [T^R^] )[RyiRzi ] ^ [TyT^R^ ]Tx(q),
2) [ T^R^ ] )[Rx(v)] ^ [Tyo Tzo Ry^ ]Tx(q),
которая приводит к выражению, полученному выше путем численного анализа.
Рассмотрим далее второй важный для практики случай, когда взаимное расположение измерительной системы и основания робота точно неизвестно, но в процессе эксперимента не изменяется (случай относительных измерений). При этом из полной модели необходимо исключить шесть параметров, описывающих преобразование Base, а число параметров, относящихся к самому манипулятору, уменьшается на 6:
Nr = 4r + 2 p. (22)
Чтобы определить параметры, которые нельзя идентифицировать при относительных измерениях, полную модель манипулятора следует преобразовать к форме, имеющей шесть термов слева от сомножителя, относящегося к первому суставу. Например, для рассмотренного выше простейшего манипулятора следует использовать модель
T = [TxoTyoTZoRxoRyoRzo ]• Tx(q )o • [Ry^] , (23)
где верхний индекс "o" указывает на фиксацию соответствующего параметра. Такую модель также можно получить, используя алгоритмы, предложенные выше. При этом для манипуляторов с перпендикулярными или параллельными осями соседних суставов достаточно ввести виртуальные составляющие в левую часть модели и исключить либо зафиксировать соответствующие сомножители, а в общем случае использовать стратегию выбора линейно-независимых столбцов якобиана с ключевым словом Base.
Если при относительных измерениях проводится оценка только положения рабочего органа (без ориентации), то число неидентифицируемых параметров уменьшается до
Npr = 4r + 2p- 3 - 2s, (24)
а структура соответствующей модели находится путем последовательного применения описанных выше алгоритмов. Для робота PUMA-560 с симметричным инструментом таким способом удается идентифицировать только 19 параметров, а при использовании несимметричного инструмента — 21 параметр из 30. Следует заметить, что последний из рассмотренных случаев имеет наибольшее значение для практики, так как позволяет существенно упростить конструкцию измерительной системы.
Точность оценки параметров. Экспериментальные данные, используемые при калибровке роботов, включают в себя погрешности измерений. Поэтому необходимо оценить точность, с которой проводится идентификация, а также исследовать ее зависимость от числа измерений и расположения тестовых точек в пространстве. Эта информация необходима при раз-58
работке конструкции измерительного стенда и создании оптимальной методики проведения эксперимента.
Оценим сначала точность алгоритма идентификации осей суставов, который требует измерения только положения инструмента. Предположим, что погрешности измерений вектора g можно описать трехмерным распределением Гаусса с нулевым средним и среднеквадратичным отклонением Og для каждой координаты, а погрешности датчика обобщенной координаты q описываются аналогичным одномерным распределением с параметром од. Тогда после линеаризации уравнения (9) и соответствующих вычислений получим
о 1 cov(5w) = --, cov(5t) = — а21зхз, (25)
S skew(p, 7skew (р ,) m
где 5ш, 5* — соответственно погрешности ориентации и положения, а суммарное воздействие
двух случайных величин аппроксимировано белым шумом с параметром о = -^о^ + г2о2д ;
г — радиус вращения. Как следует из выражения (19), статистические свойства погрешности 5* зависят только от параметра шума о и числа измерений т, в то время как на матрицу соу(5ю) существенно влияет расположение точек рг в пространстве. Найдем расположение этих точек,
при котором обеспечивается минимум ||соу(5ш)||.
Применим критерий А-оптимальности, максимизирующий след информационной матрицы. После соответствующих преобразований условие оптимальности приводится к виду:
(л V ( 1 У
r2 S
i ^
c°s^ —S coq
m
V j У
+r2 S
. 1 ^.
sinq, —S sin^;
m
V j У
^max. (26)
Дифференцирование этого выражения по q, и анализ полученных производных показывает, что оптимальное решение определяется условиями Ecos(q,)=0, Esin(q,)=0, что соответствует системе единичных векторов, сумма которых равна нулю. Простейшая система такого типа задается соотношением q,=2ra/m+a, где ,=0:m-1; a - произвольное число, а общее решение определяется более сложными выражениями. Например, при m=2 и m=3 общее решение можно представить в виде |q,-qj|=n и |q,-qj|=2n/3, а при m=5 одно из решений имеет вид {-120,
-90, 0, 90, 120o}. Для таких значений скалярная оценка матрицы ковариации
8 = о = о 1 (27)
trace(S skew(p,) skew(p,)) r ^2m
принимает наименьшее значение. Эффективность полученного решения подтверждается также результатами моделирования, приведенными на рис. 1, где верхняя кривая соответствует равномерному распределению q, в пределах допустимой области, которое использовал Stone, а нижняя — предложенному методу выбора q,. Можно также доказать, что для поступательного
I 2 2"
сустава наименьшее значение 8Ю также определяется из выражения (27), где о = Jog + oq ,
2
r=(qmax-qmin)/2, а величина m для нечетного числа экспериментов заменяется на (m -1)/m. Такое значение погрешности достигается при проведении эксперимента в граничных точках рабочего пространства, причем для половины из них q, максимально, а для половины — минимально. Это дает увеличение точности в 1,4-1,6 раза по сравнению с известным методом. Найденному распределению точек q, , обеспечивающему минимум cov(5ra), можно дать и простую физическую интерпретацию. Как для вращательного, так для поступательного звена центр масс
1=1
системы точек системы лежит на оси сустава, а момент инерции относительно цент масс принимает максимально возможное значение.
«V10
3
1
)
1
®
10 9 8 7 6 5 4 3
Тг(ц)
®
©
10
15
20
10
15
20
П
П
Рис. 1. Зависимость погрешности ею от числа измерений при планировании эксперимента известным (1) и предложенным (2) способами
Исследуем далее точность алгоритма идентификации геометрических параметров, основанного на выражении (19). При этом, как и ранее, будем предполагать, что измеряется только положение инструмента, а погрешности измерений хорошо описываются белым шумом с параметром с по каждой из координат. Тогда выражение для матрицы ковариации примет вид
соу(дП) = а2 (Т I я),
(28)
а задача оптимального планирования эксперимента сведется к такому выбору тестовых точек,
т
при котором норма матрицы Ja За максимальна. При решении этой задачи применительно к
калибровке роботов используются два подхода. Первый из них [4] основан на анализе показа-
т
теля обусловленности соМ^), второй [9] — на использовании критерия det(Ja Ja), являющегося произведением квадратов сингулярных значений. Поскольку в известных работах решения получены путем численной оптимизации, то целесообразно получить аналитическое решение
для типовых кинематических цепей, применяемых в промышленной робототехнике. При этом
т
будем использовать критерий det(Ja Ja), более удобный для аналитических исследований.
Рассмотрим сначала двухзвенную цепь с взаимно-перпендикулярными поступательными суставами, описываемую моделью:
р =[ ВхоКуо ] Хщ Шъ к (29)
с семью параметрами, номинальные значения которых равны нулю. Вычисление для этой модели якобиана и соответствующего критерия дает:
det(Ia) = 2х2 2% (2X2 2%
ХгУ,
(30)
где х^у,,!, — компоненты вектора р{, определенного выше. Поэтому для каждой из осей манипулятора справедлив описанный выше метод выбора значений обобщенных координат, а результирующее множество {^1, определяется как произведение {Ъ1}х{Ъ2}. При этом тензор инерции соответствующей системы точек является диагональным, а его ненулевые элементы принимают наибольшие значения.
Для двухстепенного манипулятора с параллельными вращательными осями после нормирования вектора параметров и приведения линейных величин к угловым получаем, что
^ 1 a Х= б! С°^2,- )2 +(2 )2 - ^ ]
(31)
поэтому условия оптимальности можно привести к виду (30) и также использовать при планировании эксперимента предложенный выше алгоритм, применяя его сначала к каждой координате по отдельности, а затем сформировать произведение множеств {^1}х{^2}.
Анализ других вариантов двухзвенных манипуляторов привел к аналогичному результату, что позволило предложить следующий способ оптимального выбора значений д^: 1) для
каждой оси в отдельности задать значения д,, удовлетворяющие условию минимума вю;
2) используя эти значения, сформировать всевозможные комбинации обобщенных координат.
Дополнительные исследования, проведенные для других кинематических структур, позволили обосновать применение этого алгоритма и в общем случае. Было установлено, что наибольшая точность достигается при условии, что при каждом фиксированном положении любой из осей центр масс соответствующей системы точек } лежит на этой оси, а момент
инерции принимает наибольшее значение. Поскольку одновременно для всех осей это условие выполнить невозможно, то применение такого алгоритма позволяет получить некоторое компромиссное решение, которое обеспечивает снижение погрешности идентификации всех параметров.
Таким образом, получены аналитические выражения для погрешности оценки параметров и предложен метод планирования эксперимента, обеспечивающий снижение этой погрешности. Полученные результаты хорошо согласуются с выводами работ других авторов [4, 9] и позволяют существенно упростить процедуру планирования эксперимента при калибровке роботов.
Моделирование процесса калибровки. Разработанные алгоритмы идентификации геометрических параметров роботов были реализованы в среде пакета МаАаЬ и исследованы путем имитационного моделирования. Рассматриваемый манипулятор имеет кинематическую схему типа и был аппроксимирован плоской двухстепенной моделью ЯгЯг с пара-
метрами al=250 мм, a2=160 мм. Чтобы учесть смещение основания робота, в кинематическую модель были введены два дополнительных параметра х0 и у0. В результате геометрические погрешности манипулятора описываются шестью параметрами-отклонениями длин звеньев от номинальных значений Дal, Дa2; смещениями нуля датчиков суставов Дд1, Дд2; смещением основания Дх0 и Ду°.
Были рассмотрены два плана проведения эксперимента. Первый из них основан на известной методике и состоит из 16 комбинаций значений #1, #2 из множества {0, 30, 60, 90 }. Второй план удовлетворяет предложенным условиям оптимальности и был составлен из значений #1, #2, равных ±90°. Каждое из этих значений включалось в план по 8 раз, что также дало 16 комбинаций. При моделировании предполагалось, что погрешности измерительной системы одинаковы для координат х, у и удовлетворяют распределению Гаусса с нулевым средним и среднеквадратичным отклонением с=0,2 мм. Кроме того, вводилась постоянная составляющая ошибки, учитывающая неточное базирование измерительной системы.
Для каждого плана было проведено по 100 экспериментов. Сравнение полученных графиков (рис. 2) показывает, что предложенный метод планирования эксперимента позволил снизить погрешность оценки параметров в 1,8-2,4 раза, а соответствующий алгоритм является нечувствительным к постоянным составляющим ошибки измерения. Аналогичные исследования, проведенные для других роботов, также подтвердили эффективность разработанных алгоритмов.
а а
ч
0.04 0.02 0
-0.02 -0.04 -0.06
а)
а а
0.04 0.02 0
-0.02 -0.04 -0.06
б!
I I ! ! а(ад>0.0П°
1
11 А №
К у
0 10 20 30 40 50 60 70 80 90 п 0 10 20 30 40 50 60 70 80 90 п
а а
'2
0.1 0.05 0
-0.05 -0.1
а а
2
0.1 0.05 0
-0.05 -0.1
Аа
1
0.2
0.1 0 -0.1 -0.2
0 10 20 30 40 50 60 70 80 90 п 0 10 20 30 40 50 60 70 80 90 п
а а
1
0.2 0.1 0 -0.1 -0.2
Аа1)=0.05шш
А
!
!
0 10 20 30 40 50 60 70 80 90 п 0 10 20 30 40 50 60 70 80 90 п
а а 2
0.2 0.1 0 -0.1 -0.2
0(Аа2) 0.09Ш
II к
и
11 4
N
Г
а а 2
0.2 0.1 0 -0.1 -0.2
о(Аа2)=0.05шш ■
0 10 20 30 40 50 60 70 80 90 п
10 20 30 40 50 60 70 80 90 п
б
Рис. 2. Погрешности оценки параметров при известном (а) и предложенном (б) методах планирования эксперимента
а
Заключение
Разработанные алгоритмы анализа и синтеза кинематических моделей манипуляцион-ных систем роботов позволяют автоматизировать процесс выделения неидентифицируемых и полуидентифицируемых параметров и приведение модели к форме, гарантирующей сходимость идентификационной процедуры. В отличие от известных они основаны на новой математической интерпретации проблемы и использовании аппарата сингулярного разложения. Это позволило уменьшить вычислительную сложность алгоритмов, повысить точность идентификации, упростить конструкцию калибровочных стендов, а также довести погрешность позиционирования робота до уровня, требуемого при автоматизации процессов сборки-сварки.
ANALYSIS AND SYNTHESIS OF KINEMATIC MODELS FOR ROBOTIC
MANIPULATING SYSTEMS
A.P. PASHKEVICH Abstract
There are presented research results on analysis and synthesis of robotic manipulating systems, which satisfy requirements of completeness, continuity and non-reducibility. The questions of the model parameter identification in the case of non-complete measurement of the robotic tool position and orientation are investigated in details. The are derived expressions for estimation of the calibration accuracy. It is presented comparison of the proposed and known techniques.
Литература
1. Rehg. J.A. Introduction to robotics in CIM systems // Prentice Hall, Upper Saddle River, NY, 2000. 440 p.
2. Nof. S.Y. Handbook of industrial robotics. New York: John Wiley, 1999. 1348 p.
3. Stone H.W. Kinematic Modelling, Identification, and Control of Robotic Manipulators. Boston: Kluwer Academic Publishers, 1987. 225 p.
4. Mooring B.W., Roth Z.S., DrielsM.R. Fundamentals of manipulator calibration. New York: John Wiley & Sons, 1991. 329 p.
5. MasonM.T. Mechanics of robotic manipulation. Cambridge: MIT Press, 2001. 253 р.
6. BernhardtR., AlbrightS.L. Robot calibration. London: Chapman and Hall, 1993. 311 p.
7. EverettL.J., DrielsM., MooringB.W. Kinematic modelling for robot calibration // Proc. of IEEE Int. Conference on Robotics and Automation. 1987. P.183-189.
8. Everett L., Hsu T. The theory of kinematic parameter identification for industrial robots // ASME Journal of Dynamic Systems, Measurement, and Control. 1988. Vol. 110, No 3. P. 96-100
9. Borm J., Menq C. Experimental study of observability of parameter errors in robot calibration // Proc. of the IEEE Conf. on Robotics and Automation. Scottsdale, Arizona, May 1989.
10. Halil W., Gautier M., Kleinfinger J. Automatic generation of identification models of robots // Int. J. of Robotics and Automation. 1986. Vol. 1, No 1.
11. Hollerbach J. A survey of kinematic calibration // The robotic Review. 1988. MIT Press, Cambridge, MA.
12. JuddR., Knasinski A. A technique to calibrate industrial robots with experimental verification // Proc. of the IEEE Conf. on Robotics and Automation. April, 1987. P. 351-357.
13. Whitney D., Lozinski C., Rourke J. Industrial robot forward calibration method and result // ASME Journal of Dynamic Systems, Measurement, and Control. 1986. Vol. 108, No 1. P. 1-8
14. Pashkevich A. Computer-aided generation of complete irreducible models for robotic manipulators // The 3rd Int. Conference of Modellimg and Simulation. University of Technology of Troyes, France, 2001. P. 293-298.
15. Pashkevich A. Robot Cell Geometry Calibration in Industrial Applications // Proсeedings of the Bergisches Seminar fur Robotik. University at Wuppertal, December 4-5, 1997.