СПИСОК ЛИТЕРАТУРЫ
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 (075.8)
Е.И. Игнатова, Н.В. Ростов
КИНЕМАТИЧЕСКИЕ ЗАДАЧИ В МАТЕМАТИЧЕСКОМ МОДЕЛИРОВАНИИ РОБОТОВ
В робототехнике для анализа кинематики исполнительных механизмов (ИМ) широкое применение находят алгебраические векторно-матричные модели в представлении Денавита-Хартенберга, использующие однородные координаты. Методы аналитического решения прямых и обратных задач кинематики (ПЗК и ОЗК) с использованием таких моделей описаны в [2, 5-7]. Однако при компьютерном моделировании мани-пуляционных роботов более эффективными часто оказываются решения, получаемые итерационными методами.
Обсудим вначале общие формулировки прямых и обратных задач кинематики (ПЗК и ОЗК).
Прямые задачи кинематики
ПЗК о положении и ориентации схвата. По заданному вектору обобщенных координат звеньев:
Ч = (Чl, Чv..., Чм)1
и известной 6x1 вектор-функции Ф(-), соответствующей кинематической схеме ИМ робота, определяется 6x1 вектор состояния схвата:
= Ф(Ч), (!)
где ^ = (хс, ус, 2С, фс, 0С, )т - вектор линейных координат положения и угловых координат ориентации схвата.
ПЗК о скоростях схвата. По заданному вектору обобщенных скоростей д = (¿р ¿2, ..., ¿¡ЫУ определяется вектор проекций линейной и угловой скорости схвата:
~ Ля) ■
(2)
где У„ = (V, V , V )т; П_ = (ю , ю„, ю )Т.В зависи-
^ С х X у' ' С х ф' 9'
мости от числа звеньев N робота матрица Якоби в (2) может быть квадратной или иметь прямоугольный вид.
ПЗК о силе и моменте в схвате. По заданному N^1 вектору обобщенных сил в шарнирах звеньев 0 = (01, Q1, . ., От )т определяются составляющие силы и момента в схвате:
(3)
где ¥с = ^)т; МС = (М, М9, М )т.
С 4 х' у' г' ' С 4 ф 9' у7
Однако выражение (3) справедливо только для случая идеального ИМ, не имеющего потерь энергии в шарнирах звеньев.
Обратные задачи кинематики
ОЗК о положениях звеньев. По 6*1 вектору состояния схвата 3С вычисляется N^1 вектор значений обобщенных координат звеньев:
д = ф-1№. ),
(4)
где Ф-1(-) - N^1 вектор-функция, обратная Ф(-).
ОЗК о скоростях звеньев. По вектору линейных и угловых скоростей схвата вычисляется вектор обобщенных скоростей звеньев:
(5)
где J~1(•) - матрица, обратная матрице Якоби.
ОЗК о силах и моментах в шарнирах звеньев. По вектору проекций силы и момента в схвате определяется вектор обобщенных сил в шарнирах:
(6)
Выражение (6) предполагает отсутствие потери энергии в шарнирах звеньев.
Итерационные методы решения ОЗК
Задача (6) требует вычисления и транспонирования матрицы Якоби, а выражение (5) представляет собой решение системы линейных алгебраических уравнений вида:
т-4=
УacJ
Если число звеньев робота N Ф 6, то матрица Якоби такой системы:
т=
= [Э. дд [ д
,/ = 1,6,7 = 1,^
имеет прямоугольный вид.
Наиболее сложной с вычислительной точки зрения является задача (4), представляющая собой задачу решения системы нелинейных алгебраических уравнений вида:
Ф(д) - Sc = ^(¿) = 0
(7)
где 0 - нулевой 6*1 вектор. В случае, когда N = 6, для решения (7) можно воспользоваться итерационным методом Ньютона со следующим алгоритмом [1]:
¿к+1 = ¿к - Ьк • J -\дк) • ^(¿к), (8)
где J _1(-) - 6*6 матрица, обратная матрице Якоби; Ик - величина шага (скаляр). В классическом методе Ньютона Ик = 1, а при регулировке шага Ик = var, Ик < 1. Но при плохой обусловленности матрицы Якоби или её вырождаемости в особых конфигурациях ИМ (при некоторых положениях звеньев) итерационное решение ОЗК затрудняется.
При избыточном числе звеньев, когда N > 6, в алгоритме (8) вместо обратной матрицы следует использовать квадратную 6*6 псевдообратную матрицу:
J-1 = у Ч )-Ч т,
то есть:
¿к+1 = ¿к - Ьк • J +1(дк) • ^(¿к). (9)
Если значения вектора ограничены допустимой областью то точные решения системы (7) в принципе могут отсутствовать. В таком случае ОЗК формулируется как задача минимизации квадрата нормы вектора невязки:
(10)
и решается итерационными численными методами условной минимизации в ограниченном пространстве значений вектора ¿.
Решение ПЗК о положении схвата
Положение центра и ориентацию осей М-й системы координат схвата в базовой СК робота определяет матрица:
(?) = Д ) 4 («?2) • • • (<?„) =
л. „ „ _ \
ИЛГ,0 ON,0 аЛГ,0
ООО
Ры, о 1
х,0
'у,О
N ,0
°у,0 ау,0 Улг,0
Пг,0
О о
О
1
(11)
где Рм0 = (хм0, Ум0, 2ы0)т - вектор положения цен- =
и нормали, характеризующие пространственное положение осей.
По заданному в СК схвата положению точки С:
Гс,М (XC,N, Ус,М, ZC,N,1) , можно определить её положение в базовой СК следующим образом:
rс,0, = Тм(Ч)гс,м = (xс, УЬ ^с,1)т.
(12)
Если же точка С является центром системы координат схвата гсм = (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
\
(13)
Рс, о
0 0 0 I у
элементами 4-го столбца которой являются координаты рассматриваемой точки в базовой СК робота:
хс,0= Т1,4(ч);
Ус,0 = Т2,4(Ч); (14)
Хс,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) , заданным в
базовой системе координат матрицей:
_ _ \
,(15)
Пх,0 ах,0 ХС, 0
ПУ,0 °у,0 ау,0 Ус,о
°г,0 ZC, 0
0 0 0 1
(16)
тсАч) =
путём решения соответствующей нелинейной системы двенадцати алгебраических уравнений с N неизвестными:
Т1,М) = пх, о
Т2,М) = ^.ЛзО = УС,0
Тъ,М)=гс,о
При числе звеньев N < 12 система (16) является избыточной, и для её решения достаточно использовать только N уравнений, однако их выбор неоднозначен.
3. В случае, когда ориентация осей СК схва-та задаётся вектором направляющих косинусов (сх0, су0, сг0)т , ОЗК можно решать как задачу ми-
тра; а о п - векторы подхода, ориентации
нимизации квадрата нормы 6*1 вектора невязки: (Т14(д)-хС0) (Т2,М)~ У с,о) (Тз,Л<1)-2с,о)
(Сх(Ч)~Сх,о)
(су(д)-су0) (с2(д)-сг0)
Направляющие косинусы сх(д), су(д) и с(д) можно вычислять по следующим формулам [2]:
—> тш .
(17)
о, -а„
с, -
а-п,
2зт5' у 2зт8
пу~ох
(18)
2зт5
где угол 5 определяется по следу матрицы Тсо(д) или матрицы поворота:
'Пх а;
Кс,о - пу оу Л 0г ау а —
т1Л(я)
ЗД) Т2Л(я) т 2,3 (9)
Мч) тъ,м т 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 вектора невязки:
г,т
(Т1Л(д)~хс, о)
(■Т2,Л1)-Ус.о)
(Т3,4^)_гС,о)
—> тш
(19)
в неограниченном или ограниченном пространстве значений вектора д.
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)
где © - групповая операция в Е(Ер).
Выходными значениями датчика (1) могут быть либо точки Р , либо только их абсциссы х ,
пп
либо только их ординаты уп.
Следует отметить также статистическую безопасность генератора псевдослучайных чисел, построенного на базе арифметической прогрессии на эллиптической кривой. Она обладает хорошими статистическими свойствами, что показано в [5]: равномерностью распределения элементов арифметической прогрессии для большого также указан порядок величины отклонения от рав-
(4р1оё2 рл номерности О -
ч ^ ^
Для случая, при котором известна разность О,
старшие биты Рп и Р в работе [3] Гутиэррехом и Ибиасом предложен эффективный алгоритм нахождения Р0 для генераторов, построенных на базе арифметической прогрессии на эллиптической кривой. Он не обладает криптографической безопасностью. Секретным ключом в генераторе псевдослучайных чисел (1) должны являться Р0 и О . В этом случае неизвестны эффективные алгоритмы предсказания бит, и генератор (1) является криптографически безопасным.
В работе [1] в более общем виде рассмотрены генераторы псевдослучайных последовательностей типа арифметическая прогрессия на эллиптической кривой. Пусть порядок |Е(Ер)| группы Е(Ер) равен г.
Последовательность Р Р Р ... точек Е, удовлетворяющих рекуррентному соотношению:
т-1
Рп+к=1,сЛ+к®<2,к = 0Л,2,...,
(2)
¡=о