УДК 681.5.015
М. М. Кожевников, И. Э. Илюшин, А. В. Старовойтов, В. Н. Косырев
Могилевский государственный университет продовольствия,
г. Могилев, Республика Беларусь
СИНТЕЗ ТРАЕКТОРИЙ СБОРОЧНО-СВАРОЧНЫХ РОБОТОВ-МАНИПУАЯТОРОВ В РАБОЧЕЙ СРЕДЕ
с препятствиями
Предложен комбинированный метод синтеза траекторий сборочносварочных роботов-манипуляторов в рабочей среде с препятствиями, который в отличие от известных позволяет эффективно учесть сложную форму препятствий. Эффективность предложенного метода подтверждается результатами тестирования.
Ключевые слова: робот-манипулятор, синтез траекторий, конфигурационное пространство.
М. М. Kozhevnikov, I. Е. Iliusliin, A. V. Starovoitov, V. N. Kosirev
Мogilev State University of Food Technologies, Mogilev, Republic of Belarus
trajectory syntheses of assembly AND welding robotic-manipulators in workspace with obstacles
A combined method isproposedfor trajectory syntheses of assembly and welding robotic manipulators in workspace with obstacles, which in contrast to known effectively take in to account complex shape of the elements of the robotic technological cell. The effectiveness of the proposed method is confirmed
by the tests results.
Key words: robotic-manipulator, trajectory syntheses, configuration space.
РОБОТОТЕХНИКА И МЕХАТРОНИКА
Задача синтеза траектории промышленных роботов-манипуляторов с учетом сложной геометрии рабочего пространства и технологических ограничений возникает при создании современных роботизированных технологических комплексов (РТК) дуговой и точечной контактной сварки. Решение такой задачи позволит повысить эффективность эксплуатации действующих РТК, а также сократить сроки технического переоснащения и переналадки оборудования на предприятиях машиностроительной отрасли.
© Кожевников М. М., Илюшин И. Э., Старовойтов А. В., Косырев В. Н., 2015
В известных работах предложен ряд алгоритмов синтеза траекторий роботов в среде с препятствиями, которые основаны на дискретной модели свободного от столкновений конфигурационного пространства. Задача синтеза при этом сводится к поиску кратчайшего пути на графе, ребрам которого ставятся в соответствие линейные либо дуговые фрагменты траектории робота, при движении по которым отсутствуют столкновения и удовлетворяются конструктивные ограничения [1; 2]. В ряде последних исследований реализованы алгоритмы синтеза, выполняющие поиск нескольких решений, что увеличивает вероятность нахождения
М. М. Кожевников, И. Э. Илюшин, А. В. Старовойтов, В. Н. Косырев
Синтез траекторий сборочно-сварочных роботов-манипуляторов в рабочей среде с препятствиями
траектории за фиксированное время [3-4]. В частности, в работе [5] синтез реализован с использованием концепции мультиграфа задачи движения (TMM).
Необходимо отметить, что известные алгоритмы синтеза траекторий позволяют эффективно обойти проблему размерности конфигурационного пространства роботов [6-9], но не учитывают форму препятствий и форму звеньев манипулятора, что приводит к реализации траекторий низкого качества с большим объемом движений [6]. При использовании таких алгоритмов траектория робота может быть найдена за конечное время также лишь с определенной вероятностью, т.е. свойство «полноты» решения теряется [6; 10].
В данной работе предложен новый комбинированный метод синтеза траекторий роботов-манипуляторов в рабочей среде с препятствиями, основанный на использовании решетчатой дискретизации «насыщенных» препятствиями зон конфигурационного пространства. Такой подход в отличие от известных позволяет эффективно учесть сложную форму препятствий, характерную для сборочно-сварочных роботизированных комплексов. В соответствии с этим подходом синтез свободной от столкновений траектории осуществляется путем поиска кратчайшего пути на графе, ребрам которого ставятся в соответствие линейные движения робота между промежуточными конфигурациями, найденными как путем рандомизированной дискретизации (в зонах с малым количеством препятствий), так и путем решетчатой дискретизации (в зонах с большим количеством препятствий сложной формы.) Такой метод позволяет синтезировать участки траекторий робота в наиболее сложных зонах выполнения технологических операций сборки/ сварки без предварительной проверки его движений на столкновение, что обеспечивает приемлемое для практики количество тестов столкновения при сохранении свойства «полноты» при фиксированном шаге дискретизации.
Комбинированный метод синтеза траектории роботов-манипуляторов
Рассмотрим робот-манипулятор, имеющий п поворотных сочленений, в рабочей зоне которого расположено некоторое мно-
жество препятствий B = [Bh B2, ..., Bm}. Конфигурацию этого робота зададим в виде вектора q = [q]t, где qt - величины углов в сочленениях (/ = 1:п). Ограничения на изменения углов в сочленениях зададим в виде
qmin — q — qmax, где qmin, qmax — векторы, определяющие нижнее и верхнее конструктивные ограничения на изменение углов в сочленениях робота-манипулятора. Зададим геометрическую модель робота-манипулятора, установленного в конфигурацию q, в виде множества M(q). Тогда свободное от столкновений 37 конфигурационное пространство определяется как
Cf = {q е C | M(q) n B = 0}. (1)
Задача определения пересечения множеств M(q) и B решается путем проведения теста столкновения между роботом и препятствиями [2]. Прямолинейный участок траектории между двумя конфигурациями qa и qb (а Ф b, qa, qb е Cf,) задается в виде множества векторов
dab = {dk | M(dk) n B = 0}. (2)
где dk = qa + (h / Nh)(qb - qa), h = 0 : Nh, Nh > N - параметр дискретизации прямолинейного участка траектории.
Дискретная конфигурация робота qb е Cf является соседней с конфигурацией qa е Cf если между ними существует прямолинейный участок траектории dab и D(qa, qb) — d, где D(^) - симметричная функция, характеризующая расстояние между двумя локациями робота-манипулятора. Траектория, соединяющая стартовую qs1 и целевую qsg конфигурации робота, представляет собой последовательность, состоящую из соседних конфигураций qs1, qs2, ..., qsg е DCf и прямолинейных участков, соединяющих эти конфигурации, dsis2, dsis2, •••, d(sg-i)sg. В качестве критерия качества траектории движения робота манипулятора при сварке шва предлагается использовать суммарное время перемещения технологического инструмента:
т = NAt + p/v, (3)
где N - количество операций, выполняемых роботом в технологическом процессе сбор-ки/сварки; At - время выполнения одной операции; p - длина пути технологического инструмента при его движении в направлении от начальной к конечной локации;
№ 3 (13) июль-сентябрь 2015
■ ■ ИССЛЕДОВАНИЯ
Havko_____________________________________
Ж ГРАДА
v - скорость движения технологического инструмента.
Тогда задача синтеза траектории робо-та-манипулятора может быть сформулирована следующим образом: среди всех последовательностей дискретных конфигураций qsl, qs2, ..., qsg е C, координаты которых лежат внутри области, ограниченной предельно допустимыми значениями углов в сочленениях qmin < q < qmax, найти последовательность, на которой критерий качества (3) З8 достигает минимума.
Для описания конфигурационного пространства робота примененная статистическая модель представляется в виде неориентированного графа R = (V, Е). Вершины V этого графа являют собой множество свободных от столкновений конфигураций робота, координаты которых - случайные величины.
Формирование множества V осуществляется следующим образом: генерируется случайная конфигурация робота-манипуля-тора и выполняется тест столкновения робота с препятствиями. Если столкновения нет, то конфигурация добавляется в множество V, в противном случае она отбрасывается. Ребрам Е графа ставятся в соответствие прямолинейные участки траекторий между свободными от столкновений конфигурациями (рис. 1, а). Зона, насыщенная препятствиями, так называемый «узкий коридор» (рис. 1, б), дискретизируется регулярной решеткой, поскольку вероятность выявления такой зоны рандомизированным методом близка к нулю [1]. Соответствующие вершины и ребра решетки добавляются в граф R. Такой подход к формированию статистической модели позволяет эффективно решить проблему раз-
мерности, возникающую при планировании траекторий промышленных роботов-манипу-ляторов [1; 2; 6].
Предложенный комбинированный метод синтеза траектории предполагает реализацию следующих этапов:
1. Генерируется множество V, состоящее из Nmax свободных от столкновений конфигураций робота-манипулятора.
2. Выполняется поиск прямолинейных участков траекторий между соседними конфигурациями qh q, и найденные участки заносятся в множество Е.
3. Если между соседними конфигурациями qh q, нет прямолинейного участка траектории и эти конфигурации находятся в зоне, насыщенной препятствиями, то выполняется поиск криволинейного участка траектории между qt и q, дискретизированного регулярной решеткой G. Если такой участок траектории найден, то он добавляется в граф R.
4. Формирование множества E выполняется путем циклического повторения шагов
2, 3 Kmax раз.
5. Выполняется поиск кратчайшего пути на графе R, исходя из критерия качества (3).
Алгоритм синтеза траектории роботов-маинпуляторов
С учетом специфики и возможностей геометрического моделирования роботов-ма-нипуляторов в современных CAD-системах на основе предложенного метода разработан алгоритм планирования траектории, ориентированный на интеграцию в систему автономного программирования сборочно-сварочных РТК (табл. 1). Алгоритм использует следующие обозначения. Randq - функция генерации
б
Рис. 1. Комбинированный подход к дискретизации конфигурационного пространства
робота-манипулятора
М. М. Кожевников, И. Э. Илюшин, А. В. Старовойтов, В. Н. Косырев
Синтез траекторий сборочно-сварочных роботов-манипуляторов в рабочей среде с препятствиями
вектора конфигурации с координатами, имеющими случайные значения в допустимом диапазоне qmin < q < qmax. Rand - функция генерации случайных целых чисел i Ф J в диапазоне от 1 до Nmax. EPath - функция вычисления прямолинейного участка траектории между двумя конфигурациями q, и qj. TTest - функция, выполняющая оценку «насыщенности» окрестности конфигурации q препятствиями путем генерации случайных конфигураций в ее окрестности и тестирования их на столкновение. В случае если количество столкновений превышает допустимый предел, функция TTest возвращает 1, указывая на то, что окрестность конфигурации q «насыщена» препятствиями. Connect - функция, выполняющая поиск конфигураций (qj, qj) на решетке дискретизации G, являющихся соседними с конфигурациями (q,, qj). GraphSearch - функция поиска кратчайшего пути на графе R, исходя из критерия качества (3).
Таблица 1
Алгоритм синтеза траектории сборочно-сварочных роботов манипуляторов
Исходные данные: геометрическая модель РТК - M(q), B, начальная и целевая конфигурации робота - qs, qg.
1 ;W; qs, qg,
2 повторять
3 q f^Randq;
4 если q^Cf
5 то V-^ q ,;
6 i^ ,+1;
7 до тех пор пока i<Nmax;
8 k^ 1
9 повторять
10 (/J)^Rand(1,Nmax);
11 если (D(q, qj)<d и EPath(q, qg)^ 0
12 то Е^ EPath(q, qj)
13 иначе
14 если (D(q,, qj)<d и (TTest (q,)=1 или TTest (qj)=1))
15 то (qj,qj) ^ Connect(qt ,q} ,G),
16 R^ SearchGridPath (qj, qj ) ,
17 V^ (EPath (qt, qj) , EPpath (qj, qj ) );
18 k^k+1; j j
19 до тех пор пока k<Kmax;
20 path^ GraphSearch(R, qs, qg);
Особого внимания заслуживает рассмотрение процедуры SearchGridPath, разработанной! на основе методики, предложенной в предыдущих работах авторов данной статьи [11-14]. Процедура выполняет поиск криволинейной траектории между двумя конфигурациями робота-манипулято-
ра (qj,qj) путем дискретизации окрестности данных конфигураций дискретной решеткой. Соответственно, в результате выполнения процедуры в граф R добавляются вершины и ребра, принадлежавшие криволинейному участку траектории между (qj, qj) . Алгоритм процедуры SearchGridPath приведен в табл. 2.
Алгоритм использует следующие обозначения: N0 - начальное значение параметра дискретизации конфигурационного пространства робота решеткой; Nmax - максимально допустимое значение параметра дискретизации конфигурационного пространства робота решеткой; Ns - шаг изменения параметра дискретизации; P - криволинейная траектория робота.
Алгоритм использует следующие функции: maxf( ф6 ) - функция, возвращающая максимальное значение весовой ф из множества ф6 ; maxb( ф^ ) - функция, возвращающая индекс b максимального значения весовой функции из множества ф6 ; д(ф) - функция, возвращающая конфигурацию робота, соответствующую значению весовой функции ф; exp/ore(q(<j>a), д(фь)) - функция проверки существования прямолинейного участка траек-
Таблица 2
Алгоритм процедуры SearchGridPath
Исходные данные:
геометрическая модель РТК - M(q), B, начальная и целевая конфигурации робота -
q.'i = qi, Qsg = qj •__________________________
1: Установить начальное значение параметра
дискретизации N^N0;
2: повторять
3: Вычислить Va для параметра дискретизации N;
4: Установить весовые коэффициенты для ребер
решетки Tab ^ l/3n (k=1:d);
5: повторять
6: Вычислить весовую функцию фа (a=1:NN);
7: a^s1;
8: повторять
9: <^maxf( фн );
10: b^maxb( ф^ );
11: p* exp/°re(Q(^a), дСф*));
12: P* {0(фаХ 0(фь)};
13: если b=sg, то возвратить фрагмент траектории P;
14: a^b;
15: до тех пор пока p=0;
1б: Tabi ^ 0;
17: P^0;
18: до тех пор пока фл=0;
19: N^N+Ns;
20: до тех пор пока N<Nmax.
39
№ 3 (13) июль-сентябрь 2015
40
тории между двумя конфигурациями робота д(фа) и д(фь) в соответствии с формулой (2). Если такой участок траектории существует, функция возвращает «1», в противном случае она возвращает «0».
Данный алгоритм функционирует следующим образом. Первоначально конфигурационное пространство робота дискретизируется с низким разрешением N0, и предполагается, что между всеми соседними конфигурациями существуют прямолинейные участки траектории, т.е. всем весовым коэффициентам ребер решетки присваивается значение 1/3n. Далее вычисляется весовая функция для каждого узла решетки фа (а = 1 : Nn) и ищется траектория между стартовой qs1 и целевой qsg конфигурациями путем подъема в направлении градиента весовой функции узлов решетки. Для этого отрезки, соединяющие соседние конфигурации qa и qbi, дискретизируются с высоким разрешением Nh в соответствии с (2) и для каждой дискретной конфигурации робота dk выполняется тест столкновения. Если столкновения отсутствуют, то выбираются две новые конфигурации на решетке низкого разрешения в направлении градиента. Если обнаружено столкновение, то знечение весового коэффициента ребра решетки Tabk устанавливается в нуль.
Значения весовой функции f для каждого узла решетки вычисляются нз основе следующей итерационной формулы:
Ё Tab,, ♦!? + V„
V к=1
где l - номер итерации; Va - параметр, значение которого определяется следующим образом: Va = -1, если qa£ Cf, Va = 1, если qa = qsg= Va = 0во всех остальных случаях.
Нелинейная функция fa имеет следующий вид:
♦аМ) = fa
(4)
fa (x)
0, если щ о 0, tanh (x), если x > 0.
(5)
Величина весовых коэффициентов ребер решетки Tabk выбирается исходя из достаточных условий сходимости итерационной процедуры (4-), полученных в работах [а 1; 1Т]. В частности, Tabk = /3п, если существует прямолинейный участок траектории между конфигурациями qa и qb и Tabk = 0 в противном случае.
Исследование эффективности метода
Исследование эффективности предложенного метода выполнялось в среде САПР ROBOMAX. Предложенный алгоритм синтеза реализован на языке программирования С++ и интегрирован в данную САПР.
В качестве объекта исследования использовалась роботизированная ячейка для дуговой сварки металлической конструкции, состоящей из 9 труб.
Ячейка включает робот-манипулятор KR125, оснащенный сварочной горелкой (рис. 2, а). На трехмерную модель металлоконструкции нанесено 14 сварных швов, имеющих форму эллипса, изогнутого в пространстве. Предложенный алгоритм позволил выполнить синтез свободных от столкновений траекторий робота-манипулятора, обеспечивающих движение сварочной горелки вдоль каждого из 14 швов. На основе полученных траекторий сформированы технологические программы сварки на языке программирования робота SRCL (Siemens Robot Control Language). Тестирование этих программ в подсистеме off-line программирования САПР ROBOMAX показало, что она обеспечивает свободное от столкновений движение робота-манипулятора. Примеры позиционирования сварочной горелки на линии пространственного сварного шва при выполнении роботом технологической программы приведены на рис. 2 б, в. Анализ результатов данных экспериментов позволяет сделать вывод о том, что предлагаемый подход эффективен при синтезе траекторий ро-ботов-манипуляторов в рабочей среде с препятствиями.
В соответствии с этим подходом синтез свободной от столкновений траектории осуществляется путем поиска кратчайшего пути на графе, ребрам которого ставятся в соответствие линейные движения робота между промежуточными конфигурациями, найденными как путем рандомизированной дискретизации, так и путем решетчатой дискретизации в локальных зонах с большим количеством препятствий сложной формы. Эффективность предложенного метода планирования подтверждается результатами тестирования в среде САПР ROBOMAX.
М. М. Кожевников, И. Э. Илюшин, А. В. Старовойтов, В. Н. Косырев
Синтез траекторий сборочно-сварочных роботов-манипуляторов в рабочей среде с препятствиями
б
Рис. 2. Роботизированная ячейка для дуговой сварки и траектории движения сварочной горелки
41
Библиографические ссылки
1. Choset H., Lynch K. M., Hutchinson S., Kantor G., Burgard W., Kavraki L. E., Thrun S. Principles of Robot Motion: Theory, Algorithms, and Implementations -MIT Press. Boston, 2005. 680 p.
2. LaValle S. M. Planning Algorithms. Cambridge University Press, Cambridge, U. K., 2006. 1023 p.
3. Lahijanian M. A., Kavraki L. E., Vardi M. Y. Sampling-Based Strategy Planner for Nondeterministic Hybrid Systems // International Conference on Robotics and Automation, Hong Kong, China. 2014. P. 3005-3012.
4. Maly M. R., Lahijanian M. A., Kavraki L. E., Kress-Gazit H., Vardi M. Y. Iterative Temporal Motion Planning for Hybrid Systems in Partially Unknown Environments // ACM International Conference on Hybrid Systems: Computation and Control (HSCC), Philadelphia, PA, USA, ACM. 2013. P. 353-362.
5. Sucan I. A., Kavraki L. E. Accounting for Uncertainty in Simultaneous Task and Motion Planning Using Task Motion Multigraphs // IEEE International Conference on Robotics and Automation, St. Paul. 2012. P. 48224828.
6. Geraerts R. J., Overmars M. H. A comparative study of probabilistic roadmap planners // Algorithmic Foundations of Robotics V (Berlin: Springer-Verlag). 2003. P. 43-58.
7. Geraerts G. J., Overmars M. H. Reachability-based Analysis for Probabilistic Roadmap Planners // Journal of Robotics and Autonomous Systems. 2007. № 55. Р. 824-836.
8. Geraerts R. J., Overmars M. H. Sampling and Node Adding in Probabilistic Roadmap Planners // Journal of Robotics and Autonomous Systems. 2006. № 54. P. 165-173.
№ 3 (13) июль-сентябрь 2015
ИССЛЕДОВАНИЯ
КО—
IJ ИССЛЕ)
Hav
ж г
ГРАДА
9. LaValle S. M., Branicky M., Lindemann S. R. On the relationship between classical grid search and probabilistic roadmaps // International Journal of Robotic Research. 2004. № 23 (7/8). P. 673-692.
10. Pashkevich A. P., Kazheunikau M. M., Ruano A. E. Neural network approach to collision free path planning for robotic manipulators // International Journal of Systems Science. 2006. № 37 (8). P. 555-564.
11. Кожевников М. М., Пашкевич А. П., Чумаков О. А. Планирование траекторий промышленных роботов на основе нейронных сетей // Доклады БГУИР.
42 2010. № 4 (50). C. 55-62.
12. Кожевников М. М., Ульянов Н. И., Субоч С. Н. Планирование траекторий сборочно-сварочных ро-ботов-манипуляторов в рабочей среде с препятствиями // Вестник Белорусского республиканского фонда фундаментальных исследований. 2011. №2 1. C. 44-55.
13. Кожевников М. М., Господ А. В. Планирование траекторий промышленных роботов на основе нейронных сетей // Исследования наукограда. 2012. № 1 (1). C. 37-41.
Статья поступила в редакцию 06.10.2015 г.