Робототехника.Фу, Ли, Гонсалес (962794), страница 32
Текст из файла (страница 32)
Их нужно найти, чтобы полностью определить полиномы, описывающие три средних участка траектории. Для этого воспользуемся условиями в граничной точке 191 между четвертым н последним участками траектории; 33'4 Йз(1) = изз+ + о314+ 03 =04 й (1) За Зб„ а(13 — — + а344+ оз = о4= — — 2о(+ —, (4.3-91) 14 14 4 ' 4 14 2 Ь (1) Ьазз — 66„631 — = — "' + аз — — а4 — — —," + — — 2а). (4.3-92) 14 14 14 2 2 14 (4.3-95) багз а,=а, + — 1- (4.3-98) (4. 3-100) (4.
3-102) 2 хз ам — — 12 —, - (3 ' 2 х2 г хз а33=13т а43=14 0 (4.3-1044 Из этих уравнений можно найти значения неизвестных коэффи- циентов агг, а33 и изь В результате все полиномы будут поЛ- постыл определены, Ниже представлен окончательный вид этих полиномов: 1) [бз оа(~ ]13+ ~ ~12+(оз(з)(+ 03 (4 3-93) о = — — 2оа — — ' аз = — — — — 2аа Збз азб , ббз боз — 3 г (4.3-94) 2 Ь, (1) = иггР + ( — ~ 1'+ (о,(,) 1+ Оо азз, Ог=игз+ 2 + о~12+Оп (4.3-96) о,=о, +а(,+ — "; (4.3-97) 12 2 Ь,(1) = и331'+ ~+$ 12+ оА(+ О,, 03 — — 02+ ог(3+ — '+и„, 32 13 (4.3-99) За- базз о,=ог+аг(3+ —; аз=а,+ —, '3 3 2 1 (4.3-101) Й„(1) — 3) б„о(1„+ — ~1 + ( — Зб„+ Зо)7а — а)1а)1 + а)за ) + [ Зб„— 2о)1„+ 2 [1+ О,, Зб„ а(1„— бб„ба) о, = —" — 2о(+ —; а4 = — „+ — — 2а1, (4.3-103) (4.3-1 1 1) 4 ! (4.3-112) с = Зи' — Зи1, + 6, (4.3-113) 44 = 314 + 31314 + (З (4.3-1 14) Таким образом, показано, что, если заданы положения в начальной и конечной точках, точках ухода и подхода, а также время движения по каждому из участков траектории, тем самым полностью определен кубический сплайн, задающий закон изменения присоединенной координаты.
Здесь мы рассмотрели построение кубического сплайна для траектории с пятью узловыми точками. Более общий подход к построению кубических сплайнов для траекторий с п узловыми точками рассмотрен в разд. 4.4.3. 4.4. ПЛАНИРОВАНИЕ ТРАЕКТОРИЙ В ДЕКАРТОВЫХ КООРДИНАТАХ В предыдущем разделе рассмотрены способы построения траекторий в пространстве присоединенных переменных, основанные на использовании ннтерполяционных многочленов низкого порядка, Хотя присоединенные координаты полностью определяют положение и ориентацию схвата манипулятора в декартовом пространстве, они не годятся для описания задачи, выполняемой манипулятором. Это обусловлено тем, что большинство присоединенных координат манипулятора неортогопальны и не позволяют независимо изменять положение и ориентацию схвата.
В робототехническнх системах достаточно высокого уровня для управления манипулятором используются специальные языки программирования. В таких системах задание манипулятору обычно представляется в виде последовательности узловых точек в декартовом пространстве, через которые должен пройти схват или рабочий инструмент. В связи с этим необходим математический аппарат, позволяющий описывать причем х| = Й| (и — 12) + Йг (14 — 42) — Йз [(и — 44) 4(+ 14 (14 — гг)1 хг — Й!(и + 13) + Йг (с 14) + ЙЗ [(и 14) с + 14 (и 12)з хз = Й~ (и 14) + Й2 (з+ с) + Йз ((14 12) с 4" (и 12)) 19 = и (и — (2) (и — 14), и=(+1+14, а Й =0 — 0 — ои — а —, 2 34 — зч — аза — (а4 — аз) а/2 Й2 з (4.3-105) (4.3-106) (4.3-!07) (4.3-108) (4.3-109) (4.3-1 10) 192 К.аз зги 193 как узловые точки, через которые должен пройти охват, так н пространственную кривую (траекторию), соединяющую эти точки. Пол [228] предложил способ планирования траекторий схвата в декартовом пространстве, состоящих из последовательности прямолинейных участков.
Между прямолинейными участками траектории движение задается с помошью квадратической интерполяции полученных в результате решения обратной задачи кинематики точек в пространстве присоединенных переменных. Предложенный Полом метод был расширен и усовершенствован Тэйлором [282] за счег использования аппарата кватернионов для описания положения охвата манипулятора.
Свойства кватернионов позволили упростить в вычислительном плане описание вращательного движения схвага между узловыми точками. Описание м<е поступательного движения никаких преимуществ по сравнению со способом Пола не имеет. Все названные подходы к планированию прямолинейных траекторий в декартовом пространстве мы рассмотрим в следующих двух разделах. 4.4.1. Метод, использующий матрицу однородного преобразования В программируемых робототехнических системах движение манипулятора может задаваться в виде последовательности узловйх точек в декартовом пространстве. Каждая из этих точек описывается матрнцей однородного преобразования, устанавливаюшей связь между системой координат схвата и абсолютной системой координат.
Значения присоединенных координат, соответствующих заданным в декартовых координатах положениям схвата в узловых точках, вычисляются с помощью программы решения обратной задачи кинематики Далее, для того лтобы осуществлять управление манипулятором, траектория между двумя последовательными узловымн точками в пространстве присоединенных переменных интерполируется квадратным полнномом, В результате управление манипулятором осуществляется таким образом, чтобы схват двигался по прямой линни, соединяющей эти точки. Преил1ушеством такого способа управления является возможность манипулирования движулцимися объектамн.
Хотя положение схвата манипулятора в узловых точках полностью описывается матрицей однородного преобразования, способ движения схвата из одной точки в другую не определен. Пол [228] предложил использовать для осуществления перехода из одной узловой точки в другую прямолинейное перемешение и два поворота. Первый поворот осуществляется вокруг единичного вектора к с тем, чтобы обеспечить необходимый угол подхода, а второй — вокруг оси инстру. мента для обеспечения его необходимой ориентации. 194 В общем случае положение, которое должен занять манипулятор, определяется следующим основным уравнением: 16 1 инстр Сбаза (~) Робъскт (4.4-!) где 'Т,— матрица однородного преобразования, имеющая размерность 4н',4 и описывающая положение и ориентацию схвата в базовой системе координат; 'Тннстр матрица однородного преобразования, имеющая размерность 4 Р',4 и описывающая положение и ориентацюо инструмента относительно системы координат схвата.
Точнее говоря, эта матрица описывает положение рабочей части инструмента, движением которой нужно управлять; 'Сб„,(1) — матрица однородного преобразования, имеюшая размерность 4Р',4 и являющаяся функцией времени. Она описывает положение рабочей системы координат объекта манипулирования относительно базовой системы координат; базар,б ...— матрица однородного преобразования, имеющая размерность 4)с',4 и описывающая заданные положение и ориентацию объекта манипулирования в момент захвата относительно рабочей системы координат объекта.
Если матрица 'Таис р уже включена в матрицу 'Т,, в уравнении (4.4-1) матрица 'Тии„, является единичной и ее можно опустить. Если рабочая система координат объекта совпадает с базовой системой координат маНИПУЛЯтОРа, тО 'Сбита(1) ПРЕДСтаВЛЯЕт СОбОй ЕДИНИЧНУЮ МатРИЦУ в любой момент времени. Можно заметить, что левая часть уравнения (4.4-1) описызает положение и ориентацию схвата манипулятора в момент захвата, в то время как правая часть этого уравнения описывает положение и ориентацию подлежащей захвату части объекта манипулирования.
Таким образом, мы можем определить матрицу 'Т„определяющую конфигурацию манипулятора, необходимую для правильного осуществления захвата объекта в виде '16 = Сбаза (1) 1 объект! Тинстр1 ' (4 4"2) Если было бы можно достаточно быстро вычислять элементы матрицы 'Т, и затем определять присоединенные переменные, этого было бы достаточно для осушествления управления манипулятором, С использованием равенства (4.4-1) последовательность заданных положений, определяюшую выполняемую манипулятором задачу, можно представлпь в следующем виде: 16( 1ннст )1 =! Сааза (1)1~ ( Робъскт)! 'Т, ('Тии„,), = ['С„з, (1)1, (""Р.„„,)„ (4.4 8) 16 ( Тиистр)У = [ Сбита (Г)1Л ( Робъскт)л (4.4-4) Опуская для простоты несущественные индексы, имеем Тв"""~т~ = С, (Г) Ри Тв Тв = Св(Г) Рв, Движение из ого положения в (1+ 1)-е можно задать при помощи «ведущего» преобразования 0(Х), являющегося функцией нормированного времени; Тв(Х) = С,+, (Х) Р,,„,0 (!х) ("в"~тв ы), (4,4-10) т,"""'т„= с„(г) Р„.
По заданным положениям С,(Г) Р; можно определить расстояния между последовательными точками и, если даны линейные и угловые скорости, можно вычислить интервал времени Та необходимый для перехода из 1-го в (1+ 1)-е положение. Описание движения нз Ого положения в (1+ 1)-е удобно производить, задав положение в 1-й точке, относительно заданного положения в (1+ 1)-й точке. Обозначим как Ри матрицу, определяющую заданное положение схвата в 1-й точке относительно системы координат, задающей положение схвата в 1'-й точке.