Робототехника.Фу, Ли, Гонсалес (962794), страница 44
Текст из файла (страница 44)
(5.7-8) В подвижной системе координат линейную и угловую скорости конечного звена можно получить из скоростей предыдуших сочленений: [ „1- ч (1) ! 11(1)~=[(Ч(а)]а(Г)=%(а), (Чз(а), ..., !Чз(а)]а(1), (579) где а(1) =(аь .., аз)г — вектор скорости сочленений манипу- лятора, а !а(а) — якобиан размерностью 6Х 6, 1-й столбец ко- торого в виде вектора Х;(а) может быть найден, согласно ра- боте [3!О], в виде [ я~-~ Х (Р Р~-!) , если 1-е сочленение х,, является вращательным, й)~(а) = [ '] если 1-е сочленение является поступательным.
Г ч(!) 1 ч (1) = (а ' (а) ~ „, ~ (5.7-!1) (5.7-10) Знак )~ означает результат пересечения векторов, р; 1 — положение начала координат (1 — !) системы координат по отношению к базовой системе координат, х; ~ — единичный вектор, направленный вдоль асн движения 1-го сочленения, а р — положение конечнага звена в базовой системе координат, Если инвертированный якобиан сушествует ат а(Г), то скорость сочленения а(!) манипулятора может быть вычислена нз скорости конечного звена при использовании уравнения (5.7-9): Если заданы желаемые линейная и угловая скорости конечного звена, это уравнение позволяет вычислить скорости в сочленениях и определить режимы работы двигателей в сочленениях для того, чтобы обеспечить установившееся движение конечного звена в заданном направлении в декартовой системе координат, Ускорение конечного звена может быть получено путем определения производной по времени от вектора скорости в уравнении (5.7-9): ~ = (ч (а, а) а (!) + !ч (ч) ч(1), (5.7-12) ч(г) 1 !) (!)" где д(1)=[а,(1),..., дз(1)]г — вектор ускорения сочленений манипулятора.
Подставляя а(1) из уравнения (5.7-!1) в уравнение (5.7-12), получим '(') 1= !Ч(а, а) (Ч-'(а) ~ ч(') 1+ (а(а) а'(1), (5.7-!З) ['"' ] — ' [" "'1 Ускорения в сочленениях а(1) могут быть вычислены из скоростей и ускорений конечного звена следуюшим образом: Гч(!) 1 ~, Гч(1) 1 ч(1)=й) (а)~ ~ — й) (а)й((а, а)й( (а) ~„)~ ~ а(!) 1 ' ~()(!) 1' (5.
7-14) Полученные кинематические связи между координатами, связанными с сочленениями, и декартовыми координатами будут использованы в разд. 5.7.1 для различных методов независимого программного управления движением и при выводе уравнений движения конечного звена манипулятора в декартовых координатах. 5.7.1. Независимое программное управление движением по скорости При независимом программном управлении движением по скорости работа различных двигателей в сочленениях производится независимо и одновременно с различными скоростями, изменяющимися во времени для того, чтобы обеспечить установившееся движение конечного звена манипулятора вдоль лю. бай осн неподвижной системы координат.
Математические выражения, связываюшие неподвижные координаты, такие, как подъем р, смешение р„, выдвижение р,, поворот а, наклон П и вращение у с угловыми координатамн шестизвеннаго манипулятора, являются заведомо нелинейными и могут быть запи. аш (5.7-15) (5.7-22) (5.7-! 8) г(тАг(+ "дт(х 1а((1!)а() 1 (5.7-19) гбз саны с помощью нелинейной вектор-функции в виде х(г) =а [о(1)1, где !(а)) — вектор-функция размерностью 6 Х!, а х(Г)(декартовы координаты) =(р„р„, р„а, р, у)г н е)(1)(обобщенные координаты) =(дм да, ..., д„)~. Взаимосвязь между линейной и угловой скоростями конечного звена и скоростями сочленений шестизвенного манипулятора определена уравнением (5.7-9). Для более общего рассмотрения предположим, что манипулятор имеет гп степеней свободы, а интересующая нас декартова система координат имеет размерность п.
Тогда углы в сочленениях и декартовы координаты будут связаны нелинейной функцией согласно уравнению (5.7-15). Дифференцируя уравнение (5.7-15) по времени, получим — = х (Г) = й! (и) с) (1), (5.7-16) где Я(й) — якобиан от 1!(1), т. е. Жп — — — ', 1 ~(1~ (п, 1 ~ (! т. (5.7-17) ! Из уравнения (5.7-16) видно, что при осуществлении управления по скорости связь является линейной.
Когда х(!) и 1!(!) имеют одинаковую размерность, манипулятор не имеет избыточных степеней свободы и якобиан может быть инвертнрован в соответствии с несингулярным положением г!(!)1 с! (Е) = й! (1!) х (1) . Если известна скорость движения вдоль декартовых координат, то из уравнения (5.7-18) легко находится комбинация скоростей двигателей в сочленениях, обеспечивающая желаемое движение конечного звена. Для этого могут быть использованы различные методы вычисления обратного якобиана.
Блок-схема программного управления движением по скорости приведена на рис. 5.!1. Если гп и, манипулятор имеет избыточные степени свободы и обратный якобнан не существует. Это сводит задачу к нахождению обобщенного обратного якобиана. В гаком случае если ранг й)(с!) равен п, то с1(1) определяется путем минимизации критерия ошибки, который формируется присоединением уравнения (5.7-16) с множителем Лагранжа к критерию качества, т. е. где Х вЂ” вектор множителя Лагранжа, а А — симметрическая положительно определенная матрица размерностью тпрр тп. Минимизируя критерий качества С относительно п(Г) и Х, имеем г!(1)=А Х (п)Х (5.7-20) и х (г) р( (Ч) Ч (1).
(5.7-21) Подставляя й(1) из уравнения (5.7-20) в уравнение (5.7-21) и решая его относительно Х, получим л = [й!(и) А 'й!" (а)Г'х(г). Подставляя Х в уравнение (5.7-20), имеем а((1) =А ~й! (и) [)а((й)А й! (1()] х(1). (5.7-23) Если матрица А — тождественная, уравнение (5.7-23) сводится к уравнению (5.7-18), Рис, 5.11, Блок-схема программного управлении движением по скорости. Достаточно часто возникает необходимость управлять движением конечного звена не в неподвижной системе координат, а в системе координат конечного звена (рис. 5.10).
В этом случае требуемая скорость движения конечного звена в системе координат конечного звена связана с движением в неподвижной декартовой системе координат следующим образом: х (Г) = о ах „(! (1), (5,7-24) где о)х» — матрица размерностью яр',6, которая связывает ориентацию системы координат конечного звена относительно неподвижной системы координат. Если задана скорость движения конечного звена Ь (Г) относительно системы координат конечного звена, то, используя уравнения (5.7-23), (5.7-24), скорость движения сочленения может быть вычислена по формуле й(1) =А й! (г!) [!а!(е!)А 'Я (е()[ ' йети(у).
(5.7-25) В уравнениях (5.7-23) и (5.7-25) угловое положение Ч(Е) зависит от времени Е, поэтому необходимо оценивать (Ч-'(Ч) на каждом отрезке дискретного времени при вычислении Ч(Е), Г1ри использовании этого метода управления требуется дополнительное вычисление обратного якобиана на каждом отрезке дискретного времени и решение сингулярной задачи, связанной с инвертированием матрицы. 5.7.2.
Независимое программное управление движением по ускорению и (Е) а (Е) а (Е) Р (Е) н(е)= о о о =[ и На (Е) ~, (5.7-26) и" (Е) а"(Е) а"(Е) р"(Е)1 а а « О ~ О « | О где и, з, а — единичные векторы, направленные соответственно вдоль главных осей х, у, х системы координат конечного звена, а р(Е) — вектор положения конечного звена относительно базовой системы координат. Ориентация подматрицы [и, а, а] определяется с помощью углов Эйлера, описывающих вращение (я, 6, 7) относительно базовой системы координат в соответствии с уравнением (5.7-2). Ошибка позиционирования конечного звена определяется как разность между желаемым и действительным положением конечного звена и может быть записана в виде »„'(Е) — р„(Е) р„'(Е) — р„(Е) р.'(Е) — », (Е) (5.7-27) ер (Е) Р (Е) Р (Е) = Аналогичным образом ошибка ориентации определяется как расхождение между желаемой и действительной ориентацией 284 Независимое программное управление движением по ускорению [186] расширяет возможности управления движением по скорости, включая управление ускорением.
Оно является альтернативной управлению по положению, при котором непосредственно учитывается положение нли ориентация конечного звена манипулятора. Всякое управление по обратной связи производится относительно конечного звена, следовательно, предполагается, что желаемые ускорения при заданном движении конечного звена заранее определяются пользователем.
Действительное и желаемое положения и ориентация конечного звена манипулятора могут быть представлены следующими однородными матрицами преобразования размерностью 4Х4: осей конечного звена и может быть представлена следующим образом: е,(Е) =172 [и(Е) Х и" + з(Е) Х з" + а(Е) Ха"]. (5.7-28) основывается на к нулю. совместить линей- конечного звена в Следовательно, управление манипулятором сведении указанных ошибок конечного звена Для шестизвенного манипулятора можно ные скорости ч(Е) ~ угловые скорости о(Е) шестимерном векторе х (Е): Гч(е)1 1 ~ ы(Е)! (5.7-29) где 1Ч(Ч) — матрица размерностью 6 Х6, определенная уравнением (5.7-10). Уравнение (5.7-29) является основным для независимого программного управления движением по скорости, где скорости в сочленениях находятся из скоростей конечного звена.
Аналогично могут быть определены ускорения в сочленениях из ускорения конечного звена х(Е). Производная по времени от х(Е) представляет собой ускорение конечного звена «(Е) = й) (Ч) Ч (Е) + [Ч (Ч, Ч) Ч (Е). (5.7-3О) Управление заданным движением по ускорению с использованием обратной связи основано на сведении ошибок позицно. пирования и ориентации конечного звена к нулю. Если траектория движения манипулятора задана в декартовых координатах, то известны желаемые положения р~(Е), скорость ч"(Е) и ускорение ч"(Е) относительно базовой системы координат. Для уменьшения ошибки позиционирования каждый двигатель в сочленениях манипулятора должен развить необходимые моменты и усилия.