Кинематические задачи в математическом моделировании роботов

СПИСОК ЛИТЕРАТУРЫ

1. Дистанционно управляемые роботы и манипуляторы / Под ред. В.С. Кулешова и Н.А. Лакоты. М.: Машиностроение, 1986.

2. Зенкевич С.Л., Ющенко А.С. Управление роботами. Основы управления манипуляционны-ми роботами: Учеб. для вузов. М.: Изд-во МГТУ, 2000.

3. Игнатова Е.И., Кочкарев Д.А. Особенности математического моделирования робототехнических систем// Экстремальная робототехника, нано-, микро- и макророботы. Матер. XX Междунар. науч.-техн. конф. Дивноморское, Россия, 2009.

4. Игнатова Е.И., Ростов Н.В. Методика компьютерного исследования динамики существенно гибких многомерных электромеханических систем // Робототехника для экстремальных условий. Матер. VI науч.-техн. конф. СПб.: СПбГТУ, 1996.

5. Игнатова Е.И., Ростов Н.В. Компьютерное моделирование исполнительных систем роботов: Учеб. пособие. СПб.: Изд-во Политехн. ун-та, 2009.

6. Игнатова Е.И., Ростов Н.В. Компьютерное моделирование систем управления роботами: Учеб. пособие. СПб.: Изд-во Политехн. ун-та, 2009.

7. Кондратьев А.С., Лопота В.А., Юревич Е.И Робототехника и техническая кибернетика. Тенденции и перспективы развития // Научно-технические ведомости СПбГПУ 2003. № 2.

8. Лесков А.Г., Ющенко А.С. Моделирование и анализ робототехнических систем. М.: Машиностроение, 1992.

9. Лопота В.А., Юревич Е.И. Экстремальная робототехника и проблемы безопасности, актуальные проблемы защиты и безопасности. // Экстремальная робототехника. Матер. VII Всерос. науч.-практ. конф. СПб.: Изд-во НПО спецматериалов, 2004.

10. Моделирование робототехнических систем и гибких автоматизированных производств / Под ред. И.М. Макарова // Робототехника и гибкие автоматизированные производства. Кн. 5. М.: Высш. шк., 1986.

11. Морозов Б.И., Семенов ИМ., Юревич Е.И. Электромеханические исполнительные системы робототехники: Учеб. пособие / Под ред. Е.И. Юревича. СПб: СПбГТУ, 1994.

12. Морозов Б.И., Станкевич Л.А., Юревич Е.И. Системы управления роботами: Учеб. пособие. Л.: ЛПИ, 1987.

13. Советов Б.Я., Яковлев С.А. Моделирование систем: Учеб. пособие. М.: Высш. шк., 2001.

14. Фу К., Гонсалес Р., Ли К. Робототехника: Пер. с англ. / Под ред. В.Г. Градецкого. М.: Мир, 1989.

15. Шахинпур М. Курс робототехники: Пер. с англ. / Под ред. С.Л. Зенкевича. М.: Мир, 1990.

16. Юревич Е.И. Основы робототехники: Учеб. для вузов. СПб.: БХВ-Петербург, 2005.

УДК 681.3

Е.И. Игнатова, Н.В. Ростов

КИНЕМАТИЧЕСКИЕ ЗАДАЧИ В МАТЕМАТИЧЕСКОМ МОДЕЛИРОВАНИИ РОБОТОВ

В робототехнике для анализа кинематики исполнительных механизмов (ИМ) широкое применение находят алгебраические векторно-матричные модели в представлении Денавита-Хартенберга, использующие однородные координаты. Методы аналитического решения прямых и обратных задач кинематики (ПЗК и ОЗК) с использованием таких моделей описаны в [2, 5-7]. Однако при компьютерном моделировании мани-пуляционных роботов более эффективными часто оказываются решения, получаемые итерационными методами.

Обсудим вначале общие формулировки прямых и обратных задач кинематики (ПЗК и ОЗК).

Прямые задачи кинематики

ПЗК о положении и ориентации схвата. По заданному вектору обобщенных координат звеньев:

Ч = (Чl, Чv..., Чм)1

и известной 6x1 вектор-функции Ф(-), соответствующей кинематической схеме ИМ робота, определяется 6x1 вектор состояния схвата:

= Ф

где ^ = (хс, ус, 2С, фс, 0С, )т - вектор линейных координат положения и угловых координат ориентации схвата.

ПЗК о скоростях схвата. По заданному вектору обобщенных скоростей д = (¿р ¿2, ..., ¿¡ЫУ определяется вектор проекций линейной и угловой скорости схвата:

~ Ля)

где У„ = (V, V , V )т; П_ = (ю , ю„, ю )Т.В зависи-

^ С х X у' ' С х ф' 9'

мости от числа звеньев N робота матрица Якоби в (2) может быть квадратной или иметь прямоугольный вид.

ПЗК о силе и моменте в схвате. По заданному N^1 вектору обобщенных сил в шарнирах звеньев 0 = (01, Q1, . ., От )т определяются составляющие силы и момента в схвате:

где ¥с = ^)т; МС = (М, М9, М )т.

С 4 х' у' г' ' С 4 ф 9' у7

Однако выражение (3) справедливо только для случая идеального ИМ, не имеющего потерь энергии в шарнирах звеньев.

Обратные задачи кинематики

ОЗК о положениях звеньев. По 6*1 вектору состояния схвата 3С вычисляется N^1 вектор значений обобщенных координат звеньев:

д = ф-1№. ),

где Ф-1(-) - N^1 вектор-функция, обратная Ф(-).

ОЗК о скоростях звеньев. По вектору линейных и угловых скоростей схвата вычисляется вектор обобщенных скоростей звеньев:

где J~1(•) - матрица, обратная матрице Якоби.

ОЗК о силах и моментах в шарнирах звеньев. По вектору проекций силы и момента в схвате определяется вектор обобщенных сил в шарнирах:

Выражение (6) предполагает отсутствие потери энергии в шарнирах звеньев.

Итерационные методы решения ОЗК

Задача (6) требует вычисления и транспонирования матрицы Якоби, а выражение (5) представляет собой решение системы линейных алгебраических уравнений вида:

т-4=

УacJ

Если число звеньев робота N Ф 6, то матрица Якоби такой системы:

т=

= [Э. дд [ д

,/ = 1,6,7 = 1,^

имеет прямоугольный вид.

Наиболее сложной с вычислительной точки зрения является задача (4), представляющая собой задачу решения системы нелинейных алгебраических уравнений вида:

Ф(д) - Sc = ^(¿) = 0

где 0 - нулевой 6*1 вектор. В случае, когда N = 6, для решения (7) можно воспользоваться итерационным методом Ньютона со следующим алгоритмом [1]:

¿к+1 = ¿к - Ьк • J -\дк) • ^

где J _1(-) - 6*6 матрица, обратная матрице Якоби; Ик - величина шага (скаляр). В классическом методе Ньютона Ик = 1, а при регулировке шага Ик = var, Ик < 1. Но при плохой обусловленности матрицы Якоби или её вырождаемости в особых конфигурациях ИМ (при некоторых положениях звеньев) итерационное решение ОЗК затрудняется.

При избыточном числе звеньев, когда N > 6, в алгоритме (8) вместо обратной матрицы следует использовать квадратную 6*6 псевдообратную матрицу:

J-1 = у Ч )-Ч т,

то есть:

¿к+1 = ¿к - Ьк • J +1

Если значения вектора ограничены допустимой областью то точные решения системы (7) в принципе могут отсутствовать. В таком случае ОЗК формулируется как задача минимизации квадрата нормы вектора невязки:

и решается итерационными численными методами условной минимизации в ограниченном пространстве значений вектора ¿.

Решение ПЗК о положении схвата

Положение центра и ориентацию осей М-й системы координат схвата в базовой СК робота определяет матрица:

(?) = Д ) 4 («?2) • • • (<?„) =

л. „ „ _ \

ИЛГ,0 ON,0 аЛГ,0

ООО

Ры, о 1

х,0

'у,О

N ,0

°у,0 ау,0 Улг,0

Пг,0

О о

О

1

где Рм0 = (хм0, Ум0, 2ы0)т - вектор положения цен- =

и нормали, характеризующие пространственное положение осей.

По заданному в СК схвата положению точки С:

Гс,М (XC,N, Ус,М, ZC,N,1) , можно определить её положение в базовой СК следующим образом:

rс,0, = Тм(Ч)гс,м = (xс, УЬ ^с,1)т.

Если же точка С является центром системы координат схвата гсм = (0, 0, 0, 1)т , то её координатами в базовой СК являются элементы 4-го столбца матрицы (11):

хс = ХМ,0 = Тм(1,4);

Ус=Ум,0 = тм(2,4);

Хс = ^N,0 = ТМ(3,4). Из (12) следует, что по вектору положения

точкИ С схвата Рсм = (х^ У^ 2СМ,1)T, заданному в его собственной СК, и матрице Тм(ч) можно определить 4x4 матрицу:

/

ТС, о

илг,о алг,о

^3x3 Рс,лг 0 0 0 1

\

Рс, о

0 0 0 I у

элементами 4-го столбца которой являются координаты рассматриваемой точки в базовой СК робота:

хс,0= Т1,4(ч);

Ус,0 = Т2,4

Хс,0 = Т3,4(Ч).

Решение ОЗК о положениях звеньев

Рассмотрим возможные постановки и решения ОЗК на основе использования выражений

(13) и (14).

1. Решение ОЗК по алгоритму (9) предполагает вычисление на каждом шаге итерационного процесса матрицы Якоби и её псевдообратной матрицы. В общем случае она представляет собой 6x6 матрицу следующего вида [5]:

Лч) =

'пх пу п2 (рхп)х (рхп)у (рхп

ох оу ог (рхо)х (рхо)у (рхо)2

ах ау аг (рха)х (рха)у (рха)2 0 0 0 и п„ п7

л у

0 0 0 о, ог

0 0 0 ат а а,

ч х У 2 у

требующую вычисления векторов нормали, ориентации и подхода - столбцов матрицы поворота Яс0(ч), и вектора положения рс0 схвата.

2. В общем случае М-вектор обобщенных координат Ч определяется по вектору положения схвата рс0 = (хс0, Ус 0, гс0 )т и проекциям векторов ориентации его осей пм оМ 0, ам 0) , заданным в

базовой системе координат матрицей:

_ _ \

,

Пх,0 ах,0 ХС, 0

ПУ,0 °у,0 ау,0 Ус,о

°г,0 ZC, 0

0 0 0 1

тсАч) =

путём решения соответствующей нелинейной системы двенадцати алгебраических уравнений с N неизвестными:

Т1,М) = пх, о

Т2,М) = ^.ЛзО = УС,0

Тъ,М)=гс,о

При числе звеньев N < 12 система (16) является избыточной, и для её решения достаточно использовать только N уравнений, однако их выбор неоднозначен.

3. В случае, когда ориентация осей СК схва-та задаётся вектором направляющих косинусов (сх0, су0, сг0)т , ОЗК можно решать как задачу ми-

тра; а о п - векторы подхода, ориентации

нимизации квадрата нормы 6*1 вектора невязки:

Направляющие косинусы сх(д), су(д) и с(д) можно вычислять по следующим формулам [2]:

—> тш .

о, -а„

с, -

а-п,

2зт5' у 2зт8

пу~ох

2зт5

где угол 5 определяется по следу матрицы Тсо(д) или матрицы поворота:

'Пх а;

Кс,о - пу оу Л 0г ау а —

т1Л

ЗД) Т2Л

Мч) тъ,м т 1ъ,ъ (í)J

8 = агссо(¿гГс 0 - 2) = - агссо8(^(?г/?с 0 -1) =

При плохой обусловленности матрицы Якоби или её вырождаемости в особых конфигурациях ИМ решение ОЗК в любых их постановках затрудняется. Кроме того, результаты, получаемые итерационными методами, могут быть неоднозначными и зависеть от начальных значений вектора д. Поскольку в реальных роботах значения координат звеньев всегда ограничены допустимой областью то точные решения ОКЗ на некоторых участках задаваемой траектории схвата могут в принципе отсутствовать.

Пример решения ОЗК

Рассмотрим шестизвенный робот, три первых вращательных звена которого работают в вертикально-ангулярной системе координат, а звенья 4, 5 и 6 (также вращательного типа) обеспечивают ориентацию схвата.

На рис. 1 точками изображена заданная программная траектория схвата, а его ориентация на траектории задана постоянным вектором направляющих косинусов:

(С,о, Су,о, с,о)т = (с08(я/4), (с08(я/4), 0)т.

На рис. 2 представлены траектории звеньев, вычисленные путём итерационного решения ОЗК методом Гаусса-Ньютона, а на рис. 3 - соответствующие им направляющие косинусы, практически равные заданным.

= агссовС— (пх +оу+аг-1)).

Направляющие косинусы (сх0, су 0, сг 0) являются проекциями единичных векторов-ортов СК схвата в неподвижной системе координат, задаваемых в соответствии с используемыми углами Эйлера.

4. В частном случае трёхзвенного робота вектор д вычисляется только по вектору положения схвата рс0 = (хс0, ус0, гс0)т, а ориентация осей СК схвата не задаётся. При этом ОЗК может решаться методом Гаусса-Ньютона как задача минимизации квадрата нормы 3*1 вектора невязки:

г,т

—> тш

в неограниченном или ограниченном пространстве значений вектора д.

0,45

0,35

Рис. 1. Траектория схвата робота (•) ^ (-) ^

Однако в других случаях (при задании иных начальных значений координат звеньев и ориентации схвата) итерационное решение ОЗК для данного робота оказывается неоднозначным или несходящимся.

а,гас1

1,4

1,2 1

0,8 0,6

1 д! 4» 1 ^^ 1-

" V1 V. -1 0 1_

1 Г 1 1 г

9., гас1 4 1 2 3 4 Г, С

0,4 г

0,2 Г \

0 • V

-0,2 • л

-0,4 4- Л I ^ ¿г

Рис. 2. Траектории звеньев

4 0 2 4 (

£ с £ с

Рис. 3. Направляющие косинусы ориентации схвата

Для роботов со сложной кинематикой целесообразно применять итерационные методы решения ОЗК.

Использование моделей в однородных координатах позволяет получать наиболее точное решение ОЗК с вычислением элементов

матрицы Якоби без численного дифференцирования.

Методики решения задач кинематики средствами пакета МА^АВ для роботов конкретных типов при моделировании их исполнительных систем и СУ изложены в [3, 4].

СПИСОК ЛИТЕРАТУРЫ

1. Деннис Д., Шнабель Р. Численные методы без- 2. Зенкевич С.Л., Ющенко А.С. Управление ро-

условной оптимизации и решения нелинейных уравне- ботами. Основы управления манипуляционными ро-ний. М.: Мир, 1988. ботами: Учеб. для вузов. М.: Изд-во МГТУ, 2000.

3. Игнатова Е.И., Ростов Н.В. Компьютерное моделирование исполнительных систем роботов: Учеб. пособие. СПб.: Изд-во Политехн. ун-та, 2009.

4. Игнатова Е.И., Ростов Н.В. Компьютерное моделирование систем управления роботами: Учеб. пособие. СПб.: Изд-во Политехн. ун-та, 2009.

5. Шахинпур М. Курс робототехники: Пер. с англ. / Под ред. С.Л. Зенкевича. М.: Мир, 1990.

6. Фу К., Гонсалес Р., Ли К. Робототехника: Пер. с англ. / Под ред. В.Г. Градецкого. М.: Мир, 1989.

7. Юревич Е.И. Основы робототехники: Учеб. для вузов. СПб.: БХВ-Петербург, 2005.

УДК 681.3.055

Н.И. Червяков, М.Г. Бабенко

ЛИНЕИНЫЕ РЕКУРРЕНТНЫЕ ПОСЛЕДОВАТЕЛЬНОСТИ НА ЭЛЛИПТИЧЕСКОЙ КРИВОЙ

Псевдослучайные последовательности используются для генерации секретных ключей шифрования, для вычисления цифровой подписи и для работы многих алгоритмов аутентификации. Для построения псевдослучайных последовательностей используются линейные рекуррентные последовательности на эллиптической кривой.

Поставим задачу проанализировать существующие генераторы на эллиптической кривой и построить генератор на эллиптической кривой, в котором арифметические операции будут выполняться в системе остаточных классов. Генератор псевдослучайных последовательностей должен удовлетворять следующим двум требованиям, предложенным в работе [9]:

1. Статистической безопасности: последовательность, созданная генератором псевдослучайных чисел, должна статистически ничем не отличаться от абсолютно случайной последовательности.

2. Криптографической безопасности: возможность, зная ¿-битов последовательности, предсказать следующий или к + 1 бит.

Эллиптическая кривая широко используется для построения криптосистем [4]. Одним из инструментов построения генераторов псевдослучайных последовательностей является эллиптическая кривая над конечным полем.

Эллиптическая кривая Е над простым полем Е , где ц > 3 , задаётся уравнением в форме Вейерш-трасса Е(Е):/ = х3 + Ах + Б, где 4А3 + 27В2 ф 0.

Халлгрен в 1994 г. в работе [2] рассмотрел датчик псевдослучайной последовательности, который называется арифметической прогрессией на Е с начальным членом Р0 е Е и разностью Ое Е и задаётся следующим рекуррентным соотношением:

Р = Р .©О = пО©Р, п = 1, 2, 3,

п п-1 0' ' ' '

где © - групповая операция в Е(Ер).

Выходными значениями датчика (1) могут быть либо точки Р , либо только их абсциссы х ,

пп

либо только их ординаты уп.

Следует отметить также статистическую безопасность генератора псевдослучайных чисел, построенного на базе арифметической прогрессии на эллиптической кривой. Она обладает хорошими статистическими свойствами, что показано в [5]: равномерностью распределения элементов арифметической прогрессии для большого также указан порядок величины отклонения от рав-

(4р1оё2 рл номерности О -

ч ^ ^

Для случая, при котором известна разность О,

старшие биты Рп и Р в работе [3] Гутиэррехом и Ибиасом предложен эффективный алгоритм нахождения Р0 для генераторов, построенных на базе арифметической прогрессии на эллиптической кривой. Он не обладает криптографической безопасностью. Секретным ключом в генераторе псевдослучайных чисел (1) должны являться Р0 и О . В этом случае неизвестны эффективные алгоритмы предсказания бит, и генератор (1) является криптографически безопасным.

В работе [1] в более общем виде рассмотрены генераторы псевдослучайных последовательностей типа арифметическая прогрессия на эллиптической кривой. Пусть порядок |Е(Ер)| группы Е(Ер) равен г.

Последовательность Р Р Р ... точек Е, удовлетворяющих рекуррентному соотношению:

т-1

Рп+к=1,сЛ+к<2,к = 0Л,2,...,

¡=о