УДК629.7.06 (082)
СИНТЕЗ УПРАВЛЕНИЯ РОБОТАМИ С ИСПОЛЬЗОВАНИЕМ ВЕКТОРА СКОРОСТИ
И.К. Хапкина
Предлагается алгоритм позиционного управления манипулятором, легко реализуемый в реальном масштабе времени, с использованием зависимостей скоростного алгоритма управления, вычислением элементов обращенной матрицы Якоби и вычислением обобщенных координат манипулятора для текущей точки траектории.
Ключевые слова: управление, алгоритм, робот, траектория, вектор скорости, обобщенные координаты, Якобиан.
Основным направлением совершенствования современных роботов является модернизация управляющих устройств и разработка алгоритмов движения манипулятора, совершающего перемещения объекта манипулирования в трехмерном пространстве. Воспроизводя синтезированный алгоритм, система управления роботом получает целеполагающие задания от устройства управления, а от информационной системы информацию о текущем состоянии робота и внешней среды и гарантирует движение по заданной траектории. В устройствах управлении современными роботами сигналы управления вырабатываются в процессе работы в реальном масштабе времени, дискретно, через промежутки времени необходимые для обработки информации с датчиков и вычислений в соответствии с алгоритмом управления. Дискретное управление подразумевает разбиение цикла управления на ряд этапов, в каждой из которых манипулятор занимает фиксирование положение и движется только для перехода от одного этапа к другому. Время цикла выработки новой команды определятся объемом вычислений, и складывается из суммы интервалов времён, необходимых для работы программ планирования операций и распределения управляющих сигналов по степеням подвижности. Чем больше объем вычислений, тем больше инерционность управляющего устройства и тем хуже динамика робототехнической системы. Для выработки управляющих сигналов в реальном масштабе времени необходимы эффективные и экономичные алгоритмы. Это требует разработки способов вычисления управляющих воздействий, не связанных со значительными затратами времени, гарантирующих быстродействие робота. В настоящей работе с целью экономии времени работы вычислителя предлагается для позиционного управления роботами использовать скоростной алгоритм управления, основанный на том, что скорость, умноженная на приращение времени, представляет собой дифференциальное перемещение.
Для решения задачи скоростного управления роботом необходимо составить математическое описание манипулятора. Чаще всего, в сочлене-
186
ниях между звеньями манипуляторов используются кинематические пары пятого класса. В принципе любой манипулятор, даже со сложными шарнирными сочленениями, можно представить в форме соединения кинематических пар пятого класса. Для формализации описания манипулятора и решения задачи управления это необходимо. Поэтому, в дальнейшем, говоря о числе степеней свободы манипулятора, будем полагать его равным числу сочленений, подразумевая, что все кинематические пары являются кинематическими парами пятого класса. В общем случае, для обеспечения произвольного положения схвата в пространстве, число обобщенных координат должно быть не менее шести. При описании кинематической схемы манипулятора с каждым из звеньев связывают некоторую систему координат и ось поворота или перемещения в сочленении направляют вдоль одной из осей этой системы координат, нумеруя сочленения, начиная с 1 от основания манипулятора к рабочему инструменту. Угловые или линейные перемещения д;,I = 1,...,п, характеризующие взаимное расположение звеньев в сочленении, принято называть обобщенными координатами. Набор обобщенных координат характеризует пространственную конфигурацию манипулятора. Процесс управления является процессом целенаправленного изменения обобщенных координат. Число обобщенных координат, связанных с манипулятором, равно числу сочленений, звеньев или числу степеней свободы манипулятора. Схват манипулятора, можно рассматривать как твердое тело, перемещение которого в пространстве описывается шестью функциями времени. Обычно это три декартовых координаты (х(), у(?), г (?)), характеризующих положение центра рабочего инструмента в пространстве и три угловые величины, например углы Эйлера-Крылова (у(?), ф(?), $(?)), характеризующие его ориентацию. Установление взаимного соответствия обобщенных координат и пространственного положения рабочего инструмента манипулятора составляет две основные задачи кинематики манипулятора: прямую (ПЗК) и обратную (ОЗК). Эти задачи и лежат в основе кинематического управления роботами. Решение ПЗК алгоритмических и расчетных трудностей не представляет. Оно единственно и сводится к линейным операциям перемножения матриц и векторов. Нахождение решения ОЗК для многозвенных манипуляторов является сложной проблемой. Обратная задача состоит в определении по заданному положения объекта манипулирования г(хо, Уо, ^о) в абсолютной системе координат обобщенных координат манипулятора qi, определяющих взаимное расположение п звеньев при позиционировании рабочего органа с объектом в заданной точке АО(хо,Уо,^о) с радиус-вектором г . Обратная задача является нелинейной, имеющей от 0 до множества решений. При ее решении зачастую не удается получить аналитические зависимости для обобщенных координат д1 (г), д2 (г),..., дп (г), связывающих конфигурацию
звеньев манипулятора с положением объекта манипулирования в абсолют-
187
ной системе координат. Для роботов с жесткой программой алгоритм управления может быть тщательно подготовлен заранее, на основе численного решения обратной задачи кинематики. Поисковые процедуры, реализуемые при численном решении обратной задачи кинематики методами нелинейного программирования, требуют большого, многократно повторяющегося объема вычислений и не пригодны для оперативного синтеза управляющих воздействий [1]. Скоростной же алгоритм управления позволяет свести задачу синтеза управляющих воздействий к структурноалгоритмической процедуре анализа целевого положения робота г и расчета потребных скоростей д и перемещений д1 (г),д2(г),...,дп(г), звеньев. На основе полученной информации она формирует и подает на входы
* * *
приводов сигналы д1, д2 . дп , определяющие желаемое положение п звеньев манипулятора для заданного положения объекта.
Пусть траектория движения захватного устройства задана точками (1. р). Суть скоростного алгоритма управления, предлагаемого в работе,
состоит - в следующем:
Запишем решение прямой задачи кинематики в форме:
_ г = /(д()), гаЬс = в * гСх, В = В(д) (1)
Здесь г - вектор абсолютных координат центра схвата, гсх - вектор координат конечного звена робота в системе координат объекта манипулирования, В - матрица перехода от системы координат объекта манипулирования к абсолютной, /(д(?)) - вектор-функция. Эта функция определяет
положение объекта манипулирования г по вектору обобщенных координат д. Для получения вектора скорости продифференцируем первое уравнение:
г = /д1 * д , (2)
Эд
где г - вектор абсолютной скорости.
г = J (д )* д (3)
Э/(г)
В выражении (3) = J (д) - матрица Якоби (Якобиан), размер-
Эд
ностью [3 х п] и зависящая от текущей конфигурации манипулятора. Матрица Якоби J (д) представляет собой матрицу содержащую частные производные уравнений кинематики по обобщенным координатам и устанавливает связь проекций скорости инструмента робота г с обобщенными скоростями д и может быть получена дифференцированием уравнений пря-
мой задачи о положении по времени.
Разрешим полученное уравнение относительно скоростей обобщенных координат д = J_1 (д )* г, и, используя рассчитанное с помощью об-
R(ClC2 кСп }
ращенного Якобиана дифференциальное перемещение, запишем зависимость для расчета управляющих воздействий (команд) на некотором к шаге управления:
qk = qk-1 + J-1 (qk-1) * (rk - Rk-1) (4)
Как правило, на взаимное расположение звеньев в кинематических парах манипуляторов накладываются конструктивные ограничения q min < 4i < 4i max, значительно усложняющие решение задачи. Это усложнение становится особенно заметным, если конфигурация манипулятора допускает неоднозначное решение обратной задачи кинематики и невозможно аналитическое решение задачи. В таких случаях производится модификация системы уравнений (1) на основе добавления в алгоритм так называемых штрафных функций R(qiq2...qn). Система уравнений (1) приобретает вид:
T
F(qq ...qn)-|^2,---,^| + R(qq--.qn) = 0 (5)
где R(q1q2...qn) - штрафная функция, назначение которой - “наложить штраф” на решение, если искомые переменные выходят за допустимые границы.
® 0, qi,min — qi — qi,max
п ^ (6)
>> 0,qi < qi,min,qi,max — qi
Функция вида, определяющая решение ПЗК приобретает вид:
f (q1q2 ...qn )= ТЖ - ТД + R(q1q2-"qn ) (7)
Затруднительно построить штрафную функцию, которая является не дифференцируемой на всем множестве изменения (qq ...qn) следовательно, система (6) и функция (7) также становятся не дифференцируемыми, что затрудняет поиск эффективных значений обобщенных координат q1(r), q2 (r),..., qn (r). Время, затрачиваемое на вычисления, нелинейно увеличивается с ростом размерности задачи. Целевая функция (6) и, тем более, (7) имеют значительное количество локальных минимумов и оврагов, поэтому точность решения существенно зависит от начального приближения. Скоростной алгоритм позволяет выявить рациональное начальное приближение.
Для решения обратной задачи кинематики с помощью скоростного алгоритма необходимо выполнить следующую последовательность действий:
1. Составить кинематическую схему манипулятора.
2. Задать абсолютную и связанные системы координат.
3. Закодировать кинематическую схему манипулятора.
4. Составить уравнения связи абсолютных координат и координат инструмента робота в системе координат, связанной с конечным звеном
манипулятора.
5. Получить уравнения прямой задачи о позиционировании.
6. Составить уравнения для определения скорости движения конечного звена манипулятора.
7. Задать точки позиционирования манипулятора в абсолютном пространстве.
8. Получить непрерывную траекторию движения манипулятора, интерполируя точки дискретной траектории манипулятора.
9. Вычислить численные значения частных производных по обобщенным координатам, для конфигурации соответствующей (к -1) точке траектории.
10. Составить матрицу Якоби и вычислить ее обращение.
11. Используя уравнения скоростного алгоритма вычислить значения обобщенных координат к-ой точки позиционирования (к = 1. р).
Если траектория движения рабочего органа состоит из р точек, то действия с девятого по одиннадцатое необходимо повторить для каждой точки позиционирования.
В итоге будет получен массив размерностью [п • р] решений обратной задачи кинематики для каждой точки траектории, где п - число обобщенных координат манипулятора, р - число точек, принадлежащих траектории движения захватного устройства. При решении задачи учитываются ограничениях на обобщенные координаты типа системы неравенств
д/,шт < д1 < д/,шах .
Для реализации предлагаемой последовательности вычислений разработано программное обеспечение, которое включает в себя следующие основные блоки:
1. Блок вывода конфигурации манипулятора в графическом виде. Данный блок включает в себя процедуры нахождения точек конца звеньев манипулятора на основе решений уравнений ПЗК.
2. Процедура расчета точек интерполяции заданной траектории, в котором происходит разбиение заданной траектории на отрезки и вызов функции расчета обобщенных координат манипулятора.
3. Функция, осуществляющая решение ОЗК по скоростному алгоритму.
В первом блоке также используются вспомогательные процедуры и функции, осуществляющие вывод на экран декартовой системы координат.
Функция решения обратной задачи кинематики использует процедуры и функции для расчета значений скоростей звеньев манипулятора, нахождения матрицы Якоби, а также транспонированной и обращенной матриц Якоби. Решение обратной задачи кинематики включает следующую последовательность действий:
1. Находятся значения производных по обобщенным координатам
для конфигурации соответствующей прошлой точке траектории движения.
2. Присваиваются значения элементам матрицы Якоби.
3. Находиться транспонированная матрица.
4. Вычисляются элементы обращенной матрицы Якоби.
5. На основе скоростного алгоритма производиться вычисление обобщенных координат манипулятора для текущей точки траектории.
Программное обеспечение отработано на примере позиционноскоростного управления манипуляторами типа «PUMA», кинематическая схема которого имеет вид:
Наибольшее время при вычислениях занимает процедура определения обращенной элементов матрицы Якоби. Входными параметрами, для данной процедуры являются обобщенные координаты манипулятора. Выходные параметры - двумерный массив, содержащий числовые значения частных производных по абсолютным координатам. Для индикации и оценки эффективности работы алгоритма в программе присутствуют процедуры представляющие решение в виде таблицы содержащей: значения обобщенных координат и соответствующую им точку позиционирования.
Предлагаемая последовательность вычислений не содержит сложных процедур. Следовательно, предлагаемый алгоритм может быть реализован на любом современном языке программирования. Отсутствуют рекуррентные функции, а также функции минимизации. Это позволяет существенно сократить объем вычислений, время выработки команд управления и использовать для роботов простые и дешевые управляющие вычислительные устройства.
1. Хапкина И.К. Разработка алгоритмов управления роботами на основе численного решения обратной задачи кинематики // Известия Тул-
191
I,
Список литературы
ГУ. Проблемы специального машиностроения. Вып. 6. Т. 1. Тула: ТулГУ, 2003. С. 356 - 360.
2. Зенкевич С. Л., Ющенко А.С. Основы управления манипуляционными роботами: Учебник для вузов. - 2-е изд., исправ. и доп. М.: Изд-во МГТУ им. Н.Э.Баумана, 2004. 480с.
3. Пшихопов В.Х. Оптимальное по быстродействию траекторное управление электромеханическими манипуляционными роботами / В.Х. Пшихопов // Известие вузов. Электромеханика. 2007. №1. С. 51-57.
Хапкина Ирина Константиновна, канд. техн. наук, доцент, irinconstx@mail. ru, Россия, Тула, Тульский государственный университет.
SYNTHESIS OF A ROBOT C USING VECTOR SPEED I.K. Khapkina
An algorithm is proposed position control arm, which is easily realized in real time, using a high-speed dependency of the control algorithm, the calculation of the elements reversed Jacobi matrices and the calculation of the generalized coordinates of the manipulator to the current point of the trajectory.
Key words: management, algorithm, the robot trajectory, the velocity vector of the generalized coordinates, the Jacobian.
Khapkina Irina Konstantinovna, candidate of technical science, docent, irin-constx@mail. ru, Russia, Tula, Tula State University