Другие журналы
|
научное издание МГТУ им. Н.Э. БауманаНАУКА и ОБРАЗОВАНИЕИздатель ФГБОУ ВПО "МГТУ им. Н.Э. Баумана". Эл № ФС 77 - 48211. ISSN 1994-0408![]()
Планирование конфигурации робота-манипулятора типа ╚хобот╩
# 03, март 2010 DOI: 10.7463/0310.0138076
Файл статьи:
![]() УДК 519.6
МГТУ им. Н.Э. Баумана
Введение В настоящее время в машиностроении актуальной является задача разработки технологических машин для выполнения механической обработки внутренних поверхностей полостей сложной формы, например, внутренних каналов охлаждаемых лопаток турбин для авиационной и космической техники. В технологии катастроф необходимы машины для организации доступа к внутренним объемам разрушенных зданий и сооружений. Аналогичные задачи возникают также при проведении ремонтных и восстановительных работ в трубопроводах, при проведении ряда хирургических операций и т.д. Обычно для решения перечисленных задач используются многозвенные рычажные манипуляторы либо гибкие манипуляторы. Серьезным недостатком указанных манипуляторов является их недостаточная жесткость, усложняющая управление ими, затрудняющая использование высокоэнергетического обрабатывающего инструмента и достижение высокой точности обработки. В значительной мере преодолеть указанные недостатки могут манипуляторы типа "хобот", построенные на основе многосекционных механизмов с параллельной структурой [1]. Управление многосекционным роботом-манипулятором типа «хобот» является сложной задачей, в которой естественным образом выделяются стратегический, тактический и исполнительный уровни [2]. На стратегическом уровне выполняется планирования целевой конфигурации манипулятора, на тактическом уровне – синтез траектории перехода из текущего состояния манипулятора в целевое состояние, на исполнительном уровне – управление приводами секций манипулятора. Задача планирования целевой конфигурации манипулятора представляет собой обратную позиционную задачу кинематики, которая в общем случае формулируется следующим образом: найти значения независимых параметров (обобщенных координат манипулятора), определяющих относительное положение секций манипулятора, которые обеспечивают заданное положение и ориентацию схвата манипулятора. В случае отсутствия препятствий, обратная позиционная задача ставится как задача поиска корней уравнения Даже при отсутствии препятствий общего метода аналитического решения обратной позиционной задачи не существует. Для решения задачи могут быть использованы различные численные методы решения систем нелинейных уравнений. Классическими методами этого класса являются итерационные методы первого порядка (метод секущих и метод Ньютона), а также итерационные методы высших порядков, например, метод Эйткена. В работе используется метод, относящийся к другому известному классу методов решения систем нелинейных уравнений – классу методов, основанных на сведении задачи к задаче минимизации некоторой вспомогательной функции При решении задачи планирования целевой конфигурации манипуляционного робота часто требуется обеспечить не только совмещение схвата с целевой точкой, но и такое положение схвата относительно объекта-цели, которое обеспечивает надежность схвата. Кроме того, как правило, требуется найти конфигурацию, которая является в некотором смысле оптимальной, например, имеет минимальную суммарную кривизну. В общем случае, требуется обеспечить оптимальность целевой конфигурации по нескольким критериям оптимальности Поэтому в работе задача планирования целевой конфигурации ставится как многокритериальная задача. Из широкого набора известных методов решения многокритериальных задач оптимизации в работе используется метод аддитивной свертки частных критериев оптимальности, так что вместо задачи Отметим, что принципиальную возможность оптимизации целевой конфигурации манипулятора обеспечивает кинематическая избыточность многосекционного манипулятора, имеющего большое количество «лишних» степеней свободы. С математической точки зрения кинематическая избыточность манипулятора означает некорректность обратной позиционной задачи. Так что введение критериев оптимальности целевой конфигурации манипулятора можно интерпретировать, как способ регуляризации задачи [6]. Задача глобальной условной оптимизации Как отмечалось выше, одним из важных применений робота-манипулятора типа «хобот» может быть его применение в технологиях катастроф. В этом случае принципиальным является наличие в области достижимости манипулятора различного рода препятствий. Поэтому в работе задача планирования целевой конфигурации ставится как задача, в которой, наряду с конструктивными ограничениями на вектор обобщенных координат Для решения задачи планирования целевой конфигурации манипулятора в условиях наличия в его области достижимости препятствий могут быть использованы некоторые методы, развитые для решения задачи планирования пути мобильного робота, и, прежде всего, методы виртуальных информационных полей [7]. К классу этих методов относится метод потенциалов, метод репеллеров и некоторые другие методы. Метод потенциалов (Potential Field Approach) предложен в работах [8, 9]. Конфигурация манипулятора строится в этом случае с использованием таких понятий, как "сила притяжения к цели", "силы отталкивания от препятствий " и, возможно, некоторые другие "силы". Метод получил развитие в работе [10] и ряда других работ, выполненных в ИПМ им. М.В. Келдыша. Основными недостатками метода потенциалов является его громоздкость, а также многоэкстремальность потенциальной функции. В методе репеллеров стационарные и нестационарные препятствия трансформируются в отталкивающие многообразия (репеллеры), а целевая точка схвата – в притягивающее многообразие (аттрактор) [11]. В данной работе окружение манипулятора описывается стационарной детерминированной геометрической моделью, задающей точную форму и положение всех препятствий. Препятствия, как и конструктивные ограничения на вектор обобщенных координат Одной из особенностей многосекционного манипулятора типа «хобот» является возможность самопересечения его секций. Для исключения такой ситуации в число препятствий следует включать секции самого манипулятора. При планировании целевой конфигурации манипулятора в среде со многими препятствиями самостоятельной задачей является задача поиска допустимой начальной конфигурации. Эта задача может быть решена, например, с помощью алгоритма декомпозиции ячеек (CellDecomposition) или метода динамического программирования [12]. В работе данная проблема не рассматривается. В первом разделе рассмотрены варианты структурной организации многосекционного робота-манипулятора типа «хобот». Второй раздел содержит постановку задачи. В третьем и четвертом разделах приводится метод решения задачи. В пятом разделе дается краткое описание соответствующего программного обеспечения. Шестой раздел представляет результаты решения двух тестовых задач. В заключении формулируются основные результаты работы и обсуждаются перспективы ее развития.
1. Структура манипулятора Хобот слона способен выполнять следующие движения: растяжение/сжатие; изгиб в любой из плоскостей; поворот вокруг свой оси. В зависимости от целевого назначения манипулятора может быть необходимым воспроизведение не всех этих движений. Поэтому рассмотрим следующую иерархию возможностей манипулятора: - изгиб манипулятора в любой из плоскостей; - изгиб манипулятора в любой из плоскостей; растяжение/сжатие; - изгиб манипулятора в любой из плоскостей; растяжения/сжатия; поворот вокруг своей продольной оси; - изгиб манипулятора в любой из плоскостей; растяжения/сжатия; поворот вокруг своей продольной оси, плоско-параллельное перемещение. Для построения манипуляторов первого типа достаточно, чтобы последующее звено манипулятора обладало двумя вращательными степенями подвижности относительно двух осей, перпендикулярных продольной оси предыдущего звена манипулятора. В манипуляторе второго типа к указанным двум степеням свободы добавляется одна поступательная степень свободы – растяжение и сжатие звена манипулятора относительно его продольной оси симметрии. В манипуляторе третьего типа по сравнению с манипулятором второго типа добавляется еще одна вращательная степень свободы – вращение звена манипулятора вокруг его продольной оси симметрии. Манипулятор четвертого типа обладает всеми шестью степенями подвижности – к возможным перемещениям манипулятора третьего типа добавляется два поступательных перемещения. Манипуляторы первого типа построим на основе механизма параллельной кинематики типа «трипода 2» Для построения манипуляторов второго типа также используем механизм параллельной кинематики на основе «трипода 3» В качестве звеньев манипуляторов третьего типа будем рассматривать механизм параллельной кинематики на основе «гексапода 4» Манипуляторы четвертого типа построим на основе механизма параллельной кинематики типа «гексапод 6»
2. Постановка задачи Свяжем с 1, 2, …, n – номера секций; Рис. 1. Системы координат многосекционного манипулятора
Введем следующие обозначения [3]: Во введенных обозначениях обратная позиционная задача для рассматриваемого манипулятора записывается в виде
где Ставятся две следующих задачи. Задача 1. Сформировать целевую конфигурацию манипулятора, определяемую вектором
при условии, что каждая из секций манипулятора отстоит от каждого из препятствий Задача 2. На решениях задачи 1 найти такую конфигурацию манипулятора, которая обеспечивается минимум kфункционалов качества конфигурации Наряду с обеспечением заданного положения схвата может ставиться задача обеспечения требуемой ориентации n-й секции манипулятора в системе координат
Решение системы уравнений (2) и системы уравнений (2), (3) может быть выполнено по одной и той же схеме. Поэтому для простоты записи ограничимся далее рассмотрением системы уравнений (2).
3. Метод решения задачи 1 Обратная позиционная задача (2) представляет собой систему трех нелинейных тригонометрических уравнений. Эта система может не иметь ни одного решения (требуемое положение схвата недостижимо), иметь одно решение, иметь бесконечно много решений (требуемое положение схвата может обеспечить бесконечное количество конфигураций манипулятора). Для многосекционного манипулятора случай наличия бесконечного множества решений задачи (2) является типичным. Именно это обстоятельство позволяет ставить задачу (2), как оптимизационную задачу. В работе [1] в качестве основного метода решения системы уравнений вида (2) рассматривается метод Ньютона. Однако этот метод требует определения на каждой итерации (аналитически или численно) значений компонентов соответствующей матрицы Якоби, а также обращения этой матрицы. Т.е. метод, во-первых, требует больших вычислительных затрат, а, во-вторых, работоспособен только в том случае, когда количество обобщенных координат не превышает количества уравнений в системе. Для рассматриваемого многосекционного манипулятора последнее требование, очевидно, не выполнимо. Используем сведение задачи 1 к задаче нелинейного программирования. Для этого представим систему (1) в скалярном виде где
Тогда система уравнений (2) сводится к многомерной задаче глобальной условной оптимизации
Задача (5) может быть решена многими методами решения многомерных задач глобальной условной оптимизации. Из соображений простоты реализации мы ориентируемся на следующую комбинацию последовательно применяемых методов: · сведение задачи (5) к задаче глобальной безусловной оптимизации методом штрафных функций; · сведение указанной задачи глобальной безусловной оптимизации к совокупности задач локальной оптимизации методом мультистарта; · решение каждой из этих задач локальной безусловной оптимизации каким-либо прямым методом (методом нулевого порядка), например, хорошо себя зарекомендовавшим методом Нелдера-Мида [4]. 3.1. Случай отсутствия препятствий. В этом случае множество допустимых значений вектора обобщенных координат
а функция штрафа задается выражением
где Если в процессе решения задачи 1 на 3.2. Общий случай. Пусть кроме ограничений на компоненты вектора обобщенных координат Если известна граница Используем иной способ формирования штрафной функции - построим эту функцию на основе функции штрафа (6) в виде Здесь 1) В качестве начального приближения к решению задачи используем допустимую конфигурацию 2) Выполняем одну итерацию решения задачи глобальной условной оптимизации (5) с использованием в качестве штрафной функции 3) Если конфигурация 4) Результаты Здесь недопустимость конфигурации 1) Строим параллелепипед 2) Покрываем параллелепипед равномерной сеткой 3) Перебором всех узлов 4) Строим дискретную аппроксимацию 5) Положение секции манипулятора считается недопустимым, если хотя бы один узлов Для сокращения вычислительных затрат в программной реализации рассмотренной схемы предварительно целесообразно построить границу каждого из множеств Заметим, что более строго допустимость положения секции манипулятора можно определить с привлечением понятия расстояния точки
4. Метод решения задачи 2 Задача 2 поставлена, как многокритериальная задача. Используем решение этой задачи методом скалярной свертки, когда вместо векторного критерия оптимальности
где Вместо критерия оптимальности (4) в этом случае используется критерий
В результате задача сводится к решению с этим критерием многомерной задачи глобальной условной оптимизации
В формуле (7) Задача (8) решается по схеме решения задачи (5), рассмотренной в п. 2.
5. Программная реализация. Выполнено две программных реализации рассмотренного метода решения задач (5), (8) - реализация на основе языка программирования C++, а также реализация в среде пакета математических вычислений MatLab. 5.1. C Язык программирования C++ использован в силу его кроссплатформенности и высокой эффективности. Оконный графический интерфейс реализован средствами кросс-платформенного инструментария Qt, а визуализация результатов – средствами Qt и библиотеки OpenGL. Для решения задачи многомерной глобальной безусловной оптимизации, к которой сводится решение задач (5), (8), используется комбинация методов Нелдера-Мида и мультистарта. Реализованы два критерия оптимальности конфигурации манипулятора - критерий формализующий его потенциальную энергию, и критерий формализующий суммарную кривизну манипулятора. Здесь Отметим следующее обстоятельство. В случае, когда в качестве критерия оптимальности конфигурации манипулятора используется его кривизна, т.е. когда 5.2. MatLab-реализация выполнена на языке MatLabв среде Matlab 7.9.0 (R2009b) с использованием Matlab-расширения Optimization Toolbox и расширения Genetic Algorithm and Direct Search Toolbox, которые предназначены для решения оптимизационных задач. Для решения задачи многомерной глобальной безусловной оптимизации, к которой сводится решение задач (5), (8), используется комбинация метода на основе генетического алгоритма, реализованного в программе ga(fitnessfcn,nvars), и метода мультистарта [15]. Основные вычисления выполняются в модулях createFmin, gastat.m. Модуль createFmin реализует графический интерфейс пользователя и служит для задания параметров манипулятора: координаты целевой точки; размеры секций манипулятора и их количество. Модуль gastat.mсодержит набор инструкций для сбора информации о работе генетического алгоритма и сохранения её на жесткий диск компьютера.
6. Примеры. Рассматривается манипулятор из 7 цилиндрических секций, длины которых убывают в геометрической прогрессии. Эксперименты выполнены с 2-х и 3-х мерными моделями манипулятора. 6.1. C Рисунки 2, 3 иллюстрируют результаты исследования 2-х мерной модели манипулятора при отсутствии препятствий. Рисунок 2 демонстрирует эффект учета кривизны манипулятора. Здесь и далее символ
Рис. 2. Оптимальная конфигурация манипулятора: двумерный случай; препятствия отсутствуют
На рисунках 2а), 2б) положения точек Процесс последовательного приближения схвата к целевой точке в процессе итераций показывает рис. 3.
Рис. 3. Приближение схвата манипулятора к целевой точке в процессе итераций: двумерный случай; препятствия отсутствуют
Рисунок 4 иллюстрирует неоднозначность задачи планирования целевой конфигурации манипулятора – на каждом из рисунков 4а) – 4е) положения точек Результаты экспериментов с 3-х мерной моделью при наличии двух шаровых препятствий иллюстрирует рис. 5.
Рис. 4. Различные конфигурации манипулятора, соответствующие одной и той же целевой точке: двумерный случай; препятствия отсутствуют
Рисунок 4 иллюстрирует неоднозначность задачи планирования целевой конфигурации манипулятора – на каждом из рисунков 4а) – 4е) положения точек Результаты экспериментов с 3-х мерной моделью при наличии двух шаровых препятствий иллюстрирует рис. 5. 6.2. Matlab- реализация. Целью экспериментов с MatLab реализацией было сравнение эффективности планирования целевой конфигурации манипулятора с использованием алгоритма многомерной безусловной оптимизации на основе метода Нелдера-Мида и генетического алгоритма. Итоговые результаты этого сравнения, выполненные для двухмерной задачи, приведены на рис. 6. Рисунок 6 показывает, что с точки зрения среднего количества вычислений критерия оптимальности (количества испытаний), генетический алгоритм существенно проигрывает методу Нелдера-Мида при высокой требуемой точности оптимизации. Наоборот, при невысокой точности – генетический алгоритм дает заметный выигрыш. Этот вывод позволяет рекомендовать использование комбинации генетического алгоритма с методом Нелдера-Мида, так чтобы на начальных итерациях для поиска грубого приближения к решению применялся генетический алгоритм, а для уточнения решения – метод Нелдера-Мида.
Рис. 5. Оптимальная конфигурация манипулятора: трехмерный случай; два шаровых препятствия Рис. 6. Сравнение эффективности метода Нелдера –Мида и генетического алгоритма: двухмерный случай; препятствия отсутствуют
Заключение В работе поставлены две задачи планирования целевой конфигурации многосекционного манипулятора типа “хобот”. В первой из задач критерий оптимальности формализует только близость схвата манипулятора к целевой точке. Во второй задаче дополнительно введены критерии оптимальности, формализующие, например, потенциальную энергию манипулятора, его суммарную кривизну и т.п. В обоих случаях решение задачи сведено к задаче многомерной глобальной условной оптимизации. Эта задача с помощью метода штрафных функций сведена к задаче многомерной глобальной безусловной оптимизации, для решения которой используется метод Нелдера-Мида в комбинации с методом мультистарта, а также генетический алгоритм. Программная реализация комбинации методов Нелдера-Мида и мультистарта выполнена на языке программирования C++, оконный графический интерфейс реализован средствами инструментария Qt, а визуализация результатов – средствами Qt и библиотеки OpenGL. Программная реализация оптимизации целевой конфигурации манипулятора с помощью генетического алгоритма выполнена в среде Matlab 7.9.0 с использованием пакетов расширения Optimization Toolbox и Genetic Algorithm and Direct Search Toolbox. Апробация разработанного программного обеспечения произведена для двумерной задачи без препятствий и для трехмерной задачи с двумя шаровыми препятствиями. результаты решения указанных задач показали работоспособность и высокую эффективность предложенных методов, алгоритмов и программного обеспечения. Авторы выражают благодарность Ю.Т. Каганову за плодотворные обсуждения постановки задачи и методов ее решения, а также Богомолову А.В. и Жук Е.А. за помощь в проведении экспериментов с генетическим алгоритмом.
ЛИТЕРАТУРА 1. Глазунов В.А., Колискор А.Ш., Крайнев А.Ф. Пространственные механизмы параллельной структуры.- М.: Наука, 1991.- 94 с. 2. Интеллектуальные системы автоматического управления / Под ред. И.М. Макарова, В.М. Лохина.- М.: Физматлит, 2001.- 576 с. 3. Зенкевич С.Л., Ющенко А.С. Основы управления манипуляционными роботами.- М.: Изд-во МГТУ им. Н.Э. Баумана, 2004.- 480 с. 4. Грешилов А.А. Математические методы принятия решений.- .- М.: Изд-во МГТУ им. Н.Э. Баумана, 2006.- 584 с. 5. Штойер Р. Многокритериальная оптимизация. Теория, вычисления и приложения.– М.: Радио и связь, 1992.- 504 с. 6. Тихонов А.Н., Арсенин В.Я. Методы решения некорректных задач.– М.: Наука, 1979.– 285 с. 7. Кирильченко А.А., Зуева Е.Ю., Платонов А.К., Соколов С.М. Формальные подходы к проектированию алгоритмов информационного обеспечения мобильных систем (выбор пути, навигация, надежность).- М.: Препринт Ин-та прикл. матем. им. М.В.Келдыша РАН, 2008, 32 с. 8. Khatib O. Real-time obstacle avoidance for manipulators and mobile robots. // “IEEE Int. Conf. Robotics and Automation”, 1985, pp. 500-505. 9. Brooks R.A. Self calibration of motion and stereo vision for mobile robots // “IEEE Int. Robotics and Automation”, 1986, 2:14. 10. Платонов А.К., Кирильченко А.А., Колганов М.А. Метод потенциалов в задаче выбора пути: история и перспективы. // М.: Препринт Ин-та прикл. матем. им. М.В.Келдыша РАН, 2001, ╧ 40, 32 с. 11. Пшихопов В.Х. Организация репеллеров при движении мобильных роботов в среде с препятствиями // Мехатроника, автоматизация, управление, 2008, ╧2, С.34-41. 12. Steven M. LaValle. Planning Algorithms.- Cambridge University Press, 2006.- 842 p. (http://msl.cs.uiuc.edu/planning). 13. Каганов Ю.Т., Карпенко А.П. Математическое моделирование кинематики и динамики робота-манипулятора типа «хобот». 1. Математические модели секции манипулятора, как механизма параллельной кинематики типа «трипод» // Наука и образование: электронное научно- техническое издание, 2009, 10, (http://technomag.edu.ru/doc/133262.html). 14. Каганов Ю.Т., Карпенко А.П. Математическое моделирование кинематики и динамики робота-манипулятора типа «хобот». 2. Математические модели секции манипулятора, как механизма параллельной кинематики типа «гексапод» // Наука и образование: электронное научно- техническое издание, 2009, 11, (http://technomag.edu.ru/doc/133731.html). 15. Genetic Algorithm and Direct Search Toolbox // (http://matlab.exponenta.ru/genalg/index.php). Публикации с ключевыми словами: робот-манипулятор Публикации со словами: робот-манипулятор Смотри также: Тематические рубрики: Поделиться:
|
|
||||||||||||||||||||||||||||||||
|