Настоящее изобретение относится к области систем программирования роботов. Более конкретно, оно применимо к управлению перемещениями роботов, которые перемещаются на сочлененных конечностях или используют их, в частности, роботов в виде человека или животного. Робот может быть квалифицирован как человекоподобный робот тогда, когда он имеет некоторые атрибуты человеческой внешности: голову, туловище, две руки, две кисти, и т.д. Человекоподобный робот может быть, однако, более или менее сложным. Его конечности могут иметь большее или меньшее количество сочленений. Он может контролировать свое собственное равновесие статически или динамически и перекатываться на основании. Он может принимать сигналы из среды («слышать», «видеть», «касаться», «воспринимать», и т.д.) и реагировать согласно более или менее сложным вариантам поведения, а также взаимодействовать с другими роботами или людьми, либо с помощью речи, либо с помощью жестов. Для текущего поколения человекоподобных роботов, программисты могут создавать сценарии, которые могут быть более или менее сложными, в виде последовательностей событий/ действий, на которые реагирует/ которые выполняет робот. Эти действия могут быть обусловлены некоторыми вариантами поведения людей, которые взаимодействуют с роботом. Однако, в этих человекоподобных роботах первого поколения, программирование приложений выполняют в наборе инструментальных средств разработки, и каждое приложение должно быть запущено запускающим событием, появление которого было включено в приложение.
Таким образом, существует потребность в человекоподобном роботе, способном функционировать при «автономном функционировании», подобно человеку, который может вести себя в определенной манере, в зависимости от среды, в которой он находится. Задачей настоящего изобретения является преодоление ограничений роботов предшествующего уровня техники посредством обеспечения робота, который способен к автономному определению последовательностей его функционирования, приспособленных к контексту, в котором он находится, без какого-либо вмешательства программиста.
Мы рассматриваем робота с мобильным основанием, соединенным с телом, также называемым верхним телом.
Силы, направленные по нормали, действующие со стороны колес мобильного основания на землю, сильно зависят от положения и ускорения его тела. Поэтому мобильное основание подвержено сильному проскальзыванию. Также, вследствие несоблюдения важного соотношения высоты робота и размера его опорного основания, робот может легко упасть.
В литературе, могут быть найдены некоторые работы об управлении мобильным роботом с ограничениями динамической устойчивости, а также об управлении двуногими человекоподобными роботами.
Некоторые недавние работы рассматривают управление роботом с динамическими ограничениями, обусловленными конечностями, такими как манипулятор. K. Mingeuk и другие работали над устойчивостью колесной платформы с использованием динамических ограничений: «Устойчивость быстрой четырехколесной мобильной платформы с использованием способа обеспечения устойчивости zmp» (ʺStabilization of a rapid four-wheeled mobile platform using the zmp stabilization methodʺ). Они используют прямой способ с линейно-квадратичным регулятором (linear quadratic regulator - LQR) для управления этой платформой. Неудобство этого способа состоит в том, что представленные динамические ограничения требуют наличия CoP (центра давления) в середине платформы. CoP является барицентром контактных сил между роботом и землей. Этот способ включает в себя потерю некоторой степени подвижности (Degree of Freedom - DoF): действительно, для предотвращения падения робота, CoP должен находиться только в выпуклом многоугольнике, определяемом точками контакта между колесами и землей.
В другой работе, Y. Li и другие представляют простой контроллер мобильного робота с динамическими ограничениями: «Критерий динамической устойчивости для колесного человекоподобного робота на основе моделирования zmp» (ʺThe dynamic stability criterion on the wheel-based humanoid robot based on zmp modelingʺ). Отличие от публикации K. Mingeuk и других состоит в том, что эта работа учитывает полное ограничение CoP, которое является суммой ограничений неравенств. Этот контроллер является pid-регулятором, итерируемым на основании полной модели робота для нахождения команды управления вращающим моментом, при которой CoP находится в опорном многоугольнике.
В отношении человекоподобных роботов, P. B. Wieber, H. Diedam и A. Herdt описали способ для управления человекоподобным двуногим роботом с сильно ограниченной динамикой: «Ходьба без ее обдумывания» (ʺWalking without thinking about itʺ). Этот наиболее современный подход относится к управлению с линейным прогнозированием на основе трехмерной линейной модели перевернутого маятника. С использованием простой модели робота, этот закон управления прогнозирует динамику его состояния в будущем, для обеспечения того, чтобы текущая команда, отправленная к роботу, не вызвала неизбежное падение через несколько секунд. В отношении двуногого человекоподобного робота NAO, реализация этого закона управления может быть найдена в работе, написанной D. Gouaillier, C. Collette и K. Kilner: «Всенаправленная ходьба с замкнутым контуром для NAO» (ʺOmni-directional closed-loop walk for NAOʺ). Но робот NAO является маленьким, и этот способ не обеспечит хороших результатов, в частности, для более высокого человекоподобного робота, показанного на фиг. 1, например, со следующими характеристиками:
- 20 степеней подвижности (DoF) (2 DoF на голове 160), 2*6 DoF на руках 170, 3 DoF на ноге 180 и 3 DoF в мобильным основании 140); действительно, человекоподобный робот имеет по меньшей мере 5 DoF (1 DoF для головы, 1 DoF для каждой ноги, 1 DoF для каждой руки),
- высота 110 1.37 м,
- ширина 130 0.65 м,
- глубина 120 0.40 м,
- общая масса 30 кг,
- одна нога 180 связана с всенаправленным основанием 140 с тремя колесами 141. Мобильное основание имеет треугольную форму с длиной 0.422 м и способно перемещать робота с максимальной скоростью 1:4 м/с и ускорением 1:7 м/с2 в течение короткого времени. Номинальные скорость и ускорение составляют 0:5 м/с и 1:0 м/с2.
Решение состоит в проектировании робота с большим всенаправленным основанием по сравнению с высотой робота; но тогда мы имеем следующие недостатки: чрезмерное требуемое пространство и слабость тела робота.
Таким образом, существует потребность в управлении как мобильным основанием человекоподобного робота, так и его телом, с учетом их динамических ограничений.
Для этой цели, настоящее изобретение обеспечивает человекоподобного робота с телом, соединенным с всенаправленным мобильным наземным основанием, и снабженного:
- датчиком положения тела и датчиком положения основания для обеспечения замеров,
- исполнительными механизмами, содержащими двигатели сочленений, и по меньшей мере 3 колесами, расположенными во всенаправленном мобильном основании, с по меньшей мере 1 всенаправленным колесом,
- средством для преобразования замеров в полезные данные,
- контроллером для вычисления команд положения, скорости и ускорения из полезных данных с использованием модели робота и предупорядоченных ориентиров положения и скорости,
- средством для преобразования команд в инструкции для исполнительных механизмов.
Оно отличается, в основном, тем, что модель робота является моделью с двумя сосредоточенными массами, и тем, что команды основаны на законе линейного моделируемого прогнозируемого управления с временем, дискретизируемым согласно периоду времени дискретизации и количеству прогнозируемых отсчетов, выраженного в виде квадратичного оптимизирующего выражения с:
- взвешенной суммой:
- целевой функции положения основания,
- целевой функции скорости основания,
- целевой функции, связанной с расстоянием между CoP и центром основания, причем CoP является барицентром контактных сил между роботом и землей,
с предварительно заданными весами и,
- множеством предварительно заданных линейных ограничений, которыми являются:
- максимальная скорость и ускорение мобильного основания,
- кинематические пределы тела,
- CoP-предел.
Такой робот способен управлять как мобильным основанием робота, так и его телом, с учетом динамических ограничений. Это делает возможным перемещение с высокой скоростью и ускорением посредством прогнозирования динамически моделируемого варианта поведения робота в будущем.
Преимуществами контроллера являются:
- концепция временного прогнозирования, которая позволяет управлять сильно ограниченной динамической системой при высокой скорости и ускорении, с прогнозированием будущих вариантов поведения;
- высокая модульность, которая позволяет осуществлять много вариантов выбора среди назначения приоритета отслеживания траекторий, оптимизации робастности, если робот сильно разрушается, или минимизации резких движений для защиты механических частей робота;
- возможность управления любым множеством линейных ограничений в виде кинематических пределов, ограничений устойчивости или робастности и ограничений мобильного основания.
Предпочтительно, взвешенную численную целевую функцию устойчивости прибавляют к взвешенной сумме целевых функций.
Кинематические пределы тела могут быть нулевыми.
Согласно одному варианту осуществления настоящего изобретения, по меньшей мере одно колесо является всенаправленным.
Предпочтительно, земля является плоской и горизонтальной.
Настоящее изобретение также обеспечивает способ управления антропоморфным роботом с телом, соединенным с всенаправленным мобильным наземным основанием, и исполнительными механизмами, содержащими по меньшей мере 3 колеса, расположенные во всенаправленном мобильном основании, и по меньшей мере 1 всенаправленное колесо, содержащий следующие этапы, реализуемые согласно схеме с замкнутым контуром:
- извлечение замера положения тела и замера положения основания,
- преобразование этих замеров положений в наблюдаемые (или полезные) замеры положений,
- вычисление команд скорости тела и скорости основания с использованием закона управления, основанного на законе линейного моделируемого прогнозируемого управления с временем, дискретизируемым согласно периоду времени дискретизации и количеству прогнозируемых отсчетов, выраженного в виде квадратичного оптимизирующего выражения с взвешенной суммой:
- целевой функции положения основания,
- целевой функции скорости основания,
- целевой функции, связанной с расстоянием между CoP и центром основания, причем CoP является барицентром контактных сил между роботом и землей,
с предварительно заданными весами и множеством линейных ограничений, которыми являются:
- максимальная скорость и ускорение мобильного основания,
- кинематические пределы тела,
- CoP-предел,
- преобразование этих команд в инструкции для исполнительных механизмов робота.
Настоящее изобретение также обеспечивает компьютерную программу, содержащую компьютерный код, подходящий для исполнения способа предшествующего пункта при выполнении на компьютере.
Настоящее изобретение будет более понятным, и его различные признаки и преимущества проявятся из нижеследующего описания некоторого количества иллюстративных вариантов осуществления и приложенных к нему фигур, в которых:
- фиг. 1 показывает физическую архитектуру человекоподобного робота в нескольких вариантах осуществления настоящего изобретения;
- фиг. 2 показывает функциональную архитектуру программных модулей человекоподобного робота в нескольких вариантах осуществления настоящего изобретения;
- фиг. 3 показывает моделирование перераспределения масс робота, сконструированного согласно настоящему изобретению,
- фиг. 4 показывает геометрическое представление ограничений;
- фиг. 5 показывает траектории x,y центра масс (Center of Mass - CoM) мобильного основания, CoM верхнего тела, CoP, с пределами границ CoP-положения, и опорного положения CoM мобильного основания для четырех разных экспериментов (фиг. 5a, фиг. 5b, фиг. 5c и фиг. 5d).
От одного чертежа к другому, одни и те же элементы помечены одними и теми же ссылочными позициями.
Фиг. 1 показывает физическую архитектуру человекоподобного робота в нескольких вариантах осуществления настоящего изобретения.
Конкретный робот 100 на этой фигуре используется только в качестве примера человекоподобного робота, в котором настоящее изобретение может быть реализовано. Нижняя конечность 180 робота на этой фигуре не функциональна для ходьбы, но может перемещаться в любом направлении на своем основании 140, которое может катиться по поверхности, на которой оно находится. В качестве примера, этот робот имеет высоту 110, которая может быть около 120 см, глубину 120 около 65 см и ширину 130 около 40 см. В конкретном варианте осуществления, робот настоящего изобретения имеет планшет 150, с помощью которого он может передавать сообщения (звуковые сообщения, видео, веб-страницы) в его среду, или принимать вводы данных от пользователей через тактильный интерфейс планшета. Дополнительно к процессору планшета, робот настоящего изобретения также использует процессор своей собственной системной платы, который может быть, например, процессором ATOM ™ Z530, производимым Intel™. Робот настоящего изобретения также предпочтительно включает в себя процессор, который предназначен для обработки потоков данных между системной платой и исполнительными механизмами, которые управляют двигателями сочленений в конечности и шарами, которые робот использует в качестве колес, в конкретном варианте осуществления настоящего изобретения. Двигатели могут быть разных типов, в зависимости от величины максимального крутящего момента, который необходим для определенного сочленения. Например, могут быть использованы щеточные двигатели постоянного тока без сердечника, производимые e-minebea™ (SE24P2CTCA, например), или бесщеточные двигатели постоянного тока, производимые Maxon™ (EC45_70W, например). MRE предпочтительно относятся к типу, использующему эффект Холла, с точностью 12 или 14 битов.
В вариантах осуществления настоящего изобретения, робот, показанный на фиг. 1, также содержит различные виды датчиков. Некоторые из них используются для контроля положения и перемещений робота. Это имеет место в случае, например, инерциального блока, расположенного в туловище робота, содержащего трехосный гирометр и трехосный акселерометр. Робот может также включать в себя две двумерные цветные RGB-камеры на лбу робота (верхнюю и нижнюю), относящиеся к типу система-на-кристалле (System On Chip - SOC), такие как камеры, производимые Shenzen V-Vision Technology Ltd™ (OV5640), с разрешением 5 мегапикселов при 5 кадрах в секунду и полем зрения (field of view - FOV), составляющим около 57° по горизонтали и 44° по вертикали. Один трехмерный датчик может также находиться позади глаз робота, например, датчик ASUS XTION™ SOC с разрешением 0.3 мегапиксела при 20 кадрах в секунду, приблизительно, с таким же FOV, что и у двумерных камер. Робот настоящего изобретения может быть также снабжен генераторами лазерных линий, например, тремя в голове и тремя в основании, для обеспечения возможности восприятия его относительного положения по отношению к объектам /существам в его среде. Робот настоящего изобретения может также включать в себя микрофоны для обеспечения возможности восприятия звуков в его среде. В одном варианте осуществления, четыре микрофона с чувствительностью 300мВ/Па +/-3дБ при 1кГц и полосой частот от 300Гц to 12кГц (по уровню -10дБ относительно 1кГц) могут быть имплантированы на голове робота. Робот настоящего изобретения может также включать в себя два ультразвуковых датчика, возможно, расположенных на передней части и на задней части его основания, для измерения расстояния до объектов/ людей в его среде. Робот может также включать в себя тактильные датчики, на его голове и на его кистях, для обеспечения возможности взаимодействия с людьми.
Для передачи его эмоций и установления связи с людьми в его среде, робот настоящего изобретения может также включать в себя:
- светодиоды, например, в его глазах, ушах и на его плечах;
- громкоговорители, например, два, расположенные в его ушах.
Робот настоящего изобретения может устанавливать связь с базовой станцией или другими роботами через соединение Ethernet RJ45 или WiFi 802.11.
Робот настоящего изобретения может иметь электропитание от литий-железо-фосфатной аккумуляторной батареи с энергий около 400 Вт-час. Робот может осуществлять доступ к зарядной станции, соответствующей типу аккумуляторной батареи, которую он включает в себя.
Положением/ перемещениями робота можно управлять посредством его двигателей, с использованием алгоритмов, которые активируют цепи, находящиеся в каждой конечности, и рабочие органы, находящие на конце каждой конечности, с учетом измерений датчиков.
Фиг. 2 показывает функциональную архитектуру программных модулей человекоподобного робота в нескольких вариантах осуществления настоящего изобретения.
Целью настоящего изобретения является обеспечение способа для обеспечения человекоподобному роботу возможности выполнения видов деятельности автономно, без какого-либо вмешательства программиста, для предвидения условий, которые ожидают робота. В предшествующем уровне техники, робот способен исполнять сценарии, которые были запрограммированы и загружены в его системную плату. Эти сценарии могут включать в себя реакции на условия, которые изменяются в его среде, но робот не будет способен реагировать на условия, которые не были предсказаны и включены в код, загруженный в его системную плату или доступный дистанционно. Напротив, целью настоящего изобретения является обеспечение роботу возможности осуществления автономного поведения, даже ввиду событий/ условий, которые не были предсказаны программистом. Эта цель достигнута посредством функциональной архитектуры, которая показана на фиг. 2.
Эта функциональная архитектура содержит, по существу, четыре основных программных модуля.
Модуль 210 Услуг включает в себя услуги по меньшей мере трех типов:
- Услуги 211 Средств Извлечения, которые принимаются в качестве входных показаний от датчиков робота того типа, который описан в связи с фиг. 1; эти показания датчиков предварительно обрабатывают для извлечения уместных данных (также упомянутых как полезные данные) в отношении положения робота, идентификации объектов/ людей в его среде, расстояния до упомянутых объектов/ людей, слов, произнесенных людьми, или их эмоций; примером Услуг Средств Извлечения являются: Восприятие Людей, для восприятия присутствия людей вблизи робота, Детектирование Перемещения, для детектирования перемещений этих людей, Локализация Звука, для локализации звука, Детектирование Касаний, для интерпретирования касания на тактильном датчике робота, Распознавание Речи, Распознавание Эмоций, для идентификации эмоции, выражаемой человеком вблизи робота посредством его слов или жестов;
- Услуги 212 Исполнительных Механизмов, которые управляют физическими действиями робота, такие как Перемещение, для активизации двигателей сочленений или основания, Средство Отслеживания, для следования за перемещением человека в среде робота, включение светодиодов робота, для передачи эмоций, Динамическая Речь (комбинации речи и жестов), Варианты Поведения; варианты поведения являются комбинацией перемещений, слов, включений освещения, которая может выражать эмоции робота и обеспечивать ему возможность выполнения сложных действий;
- Системные Услуги 213, которые, в частности, включают в себя Информационные Услуги; Информационные Услуги обеспечивают запоминание данных, либо временное, либо долгосрочное; примерами Информационных Услуг являются:
○ Услуга Пользовательского Сеанса, которая запоминает пользовательские данные, и их историю в отношении того, что они делали с роботом;
○ Услуга Менеджера Пакетов, которая обеспечивает масштабируемое хранилище процедур, исполняемых роботом, с их высокоуровневым определением, условиями запуска и тегами.
Модуль 220 Видов Деятельности включает в себя варианты 221 поведения робота, которые были предварительно запрограммированы. Программирование Вариантов Поведения может быть осуществлено с использованием графической интегрированной среды разработки (Choregaphe™), которая является объектом европейской заявки на патент, опубликованной под номером EP2435216, которая закреплена за заявителем настоящей заявки на патент. Варианты Поведения, программируемые с использованием Choregaphe™, объединяют логику на основе времени и логику на основе событий. Каждый Вариант Поведения тегируют с использованием Декларации 222, которая является текстовым файлом, который включает в себя, в частности, условия запуска Варианта Поведения. Эти условия запуска основаны на том, что средства 211 извлечения могут воспринять.
Модуль 230 Интеллекта отвечает за выбор одного или нескольких Видов Деятельности для запуска. Для выполнения этого, Интеллект подписывается на Средства Извлечения и оценивает условия запуска всех установленных Видов Деятельности. Переменные этих условий основаны на событиях. Таким образом, для эффективности, должны повторно оцениваться только утверждения условий, которые содержат измененные переменные. На основе результатов алгоритма сортировки, его приоритетов, и жизненного цикла (см. ниже), Виды Деятельности могут быть запущены, и некоторые Виды Деятельности могут быть прекращены.
Исполняемый Вид Деятельности будет основан на API (сокращение от французского выражения «Application Pour Interface» («Интерфейс потока приложений»)) вызовах Услуг для выполнения задачи, которую он запрограммирован выполнить. Всегда, когда Вид Деятельности запущен на сцене или прекращен, Интеллект собирает данные о том, когда это случилось, о текущем состоянии условий, и о том, каким является, как представляется, отклик пользователя, для облегчения обучения.
Если существующее событие Средства Извлечения не является достаточным для условий, то разработчики могут создать дополнительное Средство Извлечения для генерации нового события, и распространить его в пакете с их приложением.
Для выполнения этого, модуль 230 Интеллекта связывает вместе модули Услуг и Видов Деятельности посредством управления выбором Видов Деятельности, и запуска Исполнительных Механизмов на основе показаний Средств Извлечения и на основе алгоритмов, выполняемых в Средствах Выбора, вызванных Интеллектом. Примерами Средств Выбора являются:
- Автономное Функционирование 231, которое исполняет Виды Деятельности; на основе контекста ситуации, Интеллект может указать Автономному Функционированию, на каком виде деятельности следует сфокусироваться (см. примеры ниже); любой Вид Деятельности имеет полный доступ ко всем процедурам вызова модуля API; Виды Деятельности могут включать в себя ограничение, которое будет направлять Автономное Функционирование на фокусировку на определенном Виде Деятельности;
- Базовая Информированность 232, которая подписывается на Услуги Средств Извлечения, такие как Восприятие Людей, Детектирование Перемещения, и Локализация Звука, чтобы указать Услуге Перемещения на то, что следует выполнить перемещение; Интеллект конфигурирует вариант поведения Базовой Информированности на основе ситуации; в другие моменты времени, Базовая Информированность либо действует сама по себе, либо конфигурируется выполняемым Видом Деятельности;
- Диалог 233, который подписывается на Средство Извлечения Распознавания Речи и использует Услугу Исполнительного Механизма Динамической Речи для говорения; на основе контекста ситуации, Интеллект может указать Диалогу, на каких темах следует сфокусироваться; метаданные в декларациях связывают эту информацию в интеллекте; Диалог также имеет свои алгоритмы для управления разговором и обычно действует сам по себе.
Механизм 240 Исполнения запускает API-вызовы для инициирования Услуг.
Цель настоящего изобретения является, более конкретно, ориентирована на управление положением, скоростью и равновесием человекоподобного робота, с учетом его динамических ограничений.
Согласно настоящему изобретению, для одновременного обеспечения высоких скоростей и ускорений основания 140 и верхнего тела 190, и без потери равновесия робота, необходимо прогнозировать устойчивость траектории в будущем. Кроме того, возможность заранее знать планирование траектории непосредственно в законе управления, делает отслеживание траектории гораздо более эффективным.
Настоящее изобретение основано на законе управления, основанном на теории моделируемого прогнозируемого управления. Основным преимуществом этого типа контроллера является учет будущего для выбора следующей команды, отправляемой к роботу. Это является полезным, так как в сильно ограниченной системе, такой как динамика этого робота, нельзя быть уверенным в том, что робот будет способен сохранять свою устойчивость (или равновесие) только при помощи оценки текущего состояния.
Робот моделируется в виде модели с двумя сосредоточенными массами, показанной на фиг. 3. Первая сосредоточенная масса b представляет центр масс (Center of Mass - CoM) мобильного основания, а вторая сосредоточенная масса с представляет CoM верхнего тела; сочленение между мобильным основанием 140 и телом (или верхним телом) 190, как предполагается, не имеет никакой массы. Эту модель запоминают в виде системной информационной услуги 213.
Для обеспечения управления в реальном времени, модель робота должна быть настолько простой, насколько это возможно. Необходимо вычислить хорошую аппроксимацию сил, действующих со стороны основания на землю. Перераспределение масс в роботе не может быть выполнено с использованием модели с единственной сосредоточенной массой, поскольку около половины массы сосредоточено в основании, а остальное в верхнем теле.
Мы можем теперь записать уравнения Ньютона и Эйлера для этой системы, причем ось z является вертикальной осью, а x и y являются двумя горизонтальными осями:
где mс и mb являются массами, связанными, соответственно, с c и b, и являются угловыми моментами для каждой сосредоточенной массы. соответствует силам, действующим со стороны мобильного основания на верхнее тело, а соответствует силам, действующим со стороны земли на три колеса мобильного основания.
Также, p является CoP сил , который является их барицентром. Вследствие его определения, p определен только в выпуклом многоугольнике, представленном контактными точками трех колес.
В этой модели, (1) и (2) непосредственно означают, что расстояние между b и c не является постоянным.
В этой модели, мы прямо рассматриваем моменты между c и b (3)(4). Это предполагает, что мы пренебрегаем моментом, индуцированным руками. Мы можем это делать, поскольку в наших случаях функционирования они не перемещаются быстро. Объединяя уравнения (1)(2)(3)(4), мы можем записать уравнение динамики системы:
(5)
Мы можем отметить в отношении уравнения (5), что уравнение динамики модели с двумя массами является просто суммой двух уравнений моделей с единственной массой.
Теперь, для линеаризации уравнения (5), мы сформулируем некоторые гипотезы. Во-первых, мы можем пренебречь общим угловым моментом , поскольку мы выбрали рассмотрение только момента между c и b. Во-вторых, поскольку мы имеем робота с избыточностью, мы можем перемещать CoM с по осям x и y без модификации его положения на оси z. Таким образом, мы рассматриваем , ограниченное постоянным значением h; эта гипотеза является важной для получения линейной модели, но робот может, все же, перекатываться на своем основании без этой гипотезы. Кроме того, для упрощения описания, мы предпочтительно рассматриваем плоскую и горизонтальную землю, так что pz=0, но робот может перемещаться без этой гипотезы. Не существует DoF для управления положением , так что мы можем установить ее равной константе l. Наконец, мы можем отметить правило для силы тяжести, состоящее в том, что gx=gy=0 и gz=g.
С использованием этих гипотез и замечаний, мы можем переписать уравнение (5) в следующем виде:
(6)
Мы можем теперь использовать уравнение (6) для обеспечения линейного соотношения между CoP и положениями и ускорениями основания и тела:
(7)
Интересно видеть, что CoP модели с двумя массами не является взвешенным барицентром двух CoP одной массы, из-за членов h и l. Единственным способом рассмотрения такой аппроксимации является определение h=l, и поэтому момент между c и b не возможен. Мы можем сделать вывод, что эта разница между CoP модели с двумя массами и барицентром двух CoP модели с одной массой соответствует эффекту момента между c и b.
Критерий робастности также используется для определения модели робота. Мы предполагаем, что является выпуклым многоугольником, представленным точкой контакта каждого колеса с землей; пример этого многоугольника показан на фиг. 5. По определению, мы всегда имеем . Для обеспечения инвариантности ограничения CoP к повороту, в рамке робота с центром в b, мы разработали консервативное ограничение: , где является окружностью радиуса r с центром b, со свойством .
Количественная оценка робастности этой системы является открытым вопросом. В отсутствие какого-либо моделирования сил возмущения, мы не можем выдвинуть никакой гипотезы об их направлении, амплитуде и динамике. Способность робота компенсировать возмущение может быть связана с положениями CoP и CoM с. Поскольку они могут перемещаться, робот может реагировать на сильное возмущение. Мы можем отметить, что в отсутствие каких-либо гипотез о возмущении, положения CoP и CoM с имеют наибольший диапазон для перемещения в любом направлении, если они являются близкими к b. Таким образом, мы предлагаем критерий робастности, который равен 0 при максимальной робастности:
(8)
где является коэффициентом в диапазоне [0; 1], который определяет, какой тип робастности мы считаем наиболее важным, центрирование CoP, или центрирование CoM c.
Определив модель робота, мы можем обратиться к закону управления. Этот закон управления запоминают, например, в виде системной информационной услуги 213, которая вызывает API-Перемещения.
Для определения динамического варианта поведения управляемого тела и основания (c и b), мы должны выбрать, сначала, длительность прогнозирования (горизонт) и период времени между моментами дискретизации. Выбор горизонта как можно меньшим, а периода времени как можно большим, уменьшит время вычислений, но, также, уменьшит устойчивость и робастность управления, в зависимости от класса динамики.
Для сохранения линейности системы, мы выбрали класс многочленов 3-го порядка для траекторий тела и основания, чтобы иметь непрерывную траекторию CoP, для предотвращения максимума сил в роботе. Также, в этом контроллере, время дискретизируют, с периодом Т времени дискретизации. Количество прогнозируемых отсчетов равно N.
Другое преимущество этого типа управления состоит в том, что легко управлять многими ограничениями неравенств, такими как кинематические пределы робота, пределы максимальной скорости и ускорения мобильного основания и CoP.
Мы можем записать соотношение между каждым состоянием, используя явный метод Эйлера:
Существует важная последовательность в выборе периода Т времени дискретизации. Траектория может выйти за пределы ограничений между двумя отсчетами, поскольку мы ограничиваем траекторию только в каждый момент времени дискретизации. Из-за режима реального времени, мы не можем выбирать значение Т слишком малым. Таким образом, необходимо учитывать этот выход за пределы в каждом ограничении в виде границы безопасности.
Предположим, что и подобным образом представим производные c и b и p. Также, предположим, что начальное состояние и подобным образом представим .
С использованием уравнений (9)(10)(11), мы можем записать соотношение между каждой производной траектории тела и командой :
где:
Такой же способ используется для определения динамики b. Мы можем отметить, что , и являются обратимыми, поскольку они являются квадратными нижними треугольными матрицами с ненулевыми элементами на диагонали.
В отношении p, с использованием уравнения (6), мы можем записать это соотношение в виде:
(16)
где:
(17).
Среди разных способов, которые могут быть использованы для решения задачи определения такого закона управления, обеспечивающего эти условия положений, робастности и динамического поведения, мы выбрали способ в виде задачи оптимизации. Для решения этой задачи оптимизации мы выбрали ее формулировку в виде по меньшей мере квадратичной минимизации с линейными ограничениями или в виде квадратичной оптимизации с целевыми функциями и линейными ограничениями. Главная причина этого состоит в том, что для этого вида задачи можно быстро вычислить средства для ее решения. Добавление нелинейных ограничений или не-квадратичных целевых функций минимизации существенно увеличивает время вычисления.
Переменные оптимизации соответствуют управляемому телу и основанию . Таким образом, каждая целевая функция и ограничение должны быть выражены в виде функции от X.
1) Целевые функции управления:
Целевые функции Oi будут выражены в виде по меньшей мере квадратичной минимизации и выражения QP (квадратичной задачи): .
Xt является X при транспонировании.
Первой целевой функцией является управление отслеживанием. В этом управлении, мы выбрали выполнение отслеживания положения/ скорости. Пусть и являются целевыми функциями положения и скорости в пределах горизонта. С использованием (13), мы можем записать целевую функцию О1 управления скоростью:
(18)
С использованием (12), мы можем записать целевую функцию О2 управления положением:
(20)
(21)
Следующей целевой функцией является максимизация робастности. Посредством минимизации ζ мы максимизируем робастность. Пусть Upbb=Upb - Ub. С использованием (8), (12), (16) мы можем записать целевую функцию О3 управления робастностью:
(22)
(23)
(24)
(25)
Предпочтительно, мы определяем другую целевую функцию для предотвращения максимума резкого движения робота; таким образом, мы добавляем целевую функцию О4 минимизации резкого движения в управление:
В отношении этой предложенной целевой функции, мы можем отметить, что когда робот падает, траектории c и b растут экспоненциально. Таким образом, посредством минимизации резкого движения этих траекторий, мы прямо содействуем предотвращению экспоненциального расхождения c и b, что способствует устойчивости робота.
2) Ограничения управления:
Ниже ограничения Ri будут выражены в виде выражения ограничений в виде линейных неравенств QP: .
Первое ограничение R1 предназначено для обеспечения устойчивости, для обеспечения того, чтобы робот не наклонялся сам по себе: ζ должна быть меньшей или равной 1. Это ограничение является нелинейным, поэтому мы вводим консервативное множество линейных ограничений для аппроксимации этого. Мы выбираем использование восьмиугольной формы ограничений , вписанной в окружность , как показано на фиг. 4: это определяет ограничение предела CoP. Пусть . Это ограничение R1 можно записать следующим образом:
Второе ограничение R2 относится к пределам мобильного основания. Пусть и являются максимальной скоростью и ускорением мобильного основания. Мы можем записать ограничение R2 следующим образом:
Третье и последнее ограничение R3 относится к кинематическим пределам тела. Благодаря своим сочленениям, робот может перемещать CoM своего верхнего тела в прямоугольной зоне вокруг CoM мобильного основания. Пусть kxy являются пределами прямоугольной формы , тогда ограничение R3 можно записать следующим образом:
Кинематические пределы тела могут быть нулевыми. Тогда мы имеем:
cxy=bxy.
Для решения этой задачи оптимизации с этими целевыми функциями и ограничениями, мы используем линейное средство решения квадратичной задачи. Некоторые работы о решении QP могут быть найдены в книге «Численная оптимизация, вторая редакция» (ʺNumerical optimization, second editionʺ), J. Nocedal и S.J. Wright, 2000. Этот вид средства решения находит оптимальное решение задачи следующим образом:
(34)
где Q является симметричным и положительно определенным. С использованием уравнений (19), (21), (25), (27), (29), (31), (33), мы можем получить значения Q, p, V, v- и v+:
Q= α1Q1+ α2Q2+ α3Q3+α4Q4+α5Q5 (35)
p= α1p1+ α2p2+ α3p3+α4p4+α5p5 (36)
(37)
где αi являются весами, связанными с каждой целевой функцией. Они могут быть выбраны экспериментально.
Выбор значений αi является первичным для определения поведения закона управления. Относительные разницы между каждыми αi определяют, какая целевая функция будет назначена в качестве приоритета, а какой можно пренебречь. Если α1 и α2 являются большими, чем другие веса, то отслеживание траектории будет очень эффективным, но робастность будет менее эффективной, и резкие движения тела и основания могут быть значительными. Если α3 является большим, чем другие веса, то робот будет очень робастным к сильным возмущениям. Мы можем отметить, что в этом режиме поведения, если мы определяем положительную скорость как целевую функцию отслеживания, то робот начнет перемещаться назад перед перемещением вперед, для центрирования CoP. Вес α4 оказывает сглаживающее действие на траектории c и b, если этот вес является большим, чем другие, то оптимальным решением будет не перемещаться. Таким образом, этот вес должен быть малым.
Некоторые другие варианты поведения могут быть получены посредством выбора адекватных весов. Если относительная разница между двумя целевыми функциями является большой (несколько порядков величины), то меньшая целевая функция будет вычислена почти в нулевом пространстве большей целевой функции. Использование этого свойства является полезным, когда мы хотим иметь псевдо-ограничение, которое может быть уменьшено, если оно не может быть выполнено. Например, мы можем добавить целевую функцию с большим весом, CoM верхнего тела, для центрирования его относительно положения мобильного основания, для обеспечения прекрасного визуального поведения. Это будет иметь результатом фиксацию CoM в положении мобильного основания всегда, когда это возможно, но, в случае, когда это невозможно, это псевдо-ограничение будет уменьшено.
Множество весов может быть фиксированным, что означает, что мы выбрали заранее, хотим мы иметь лучшее отслеживание траектории или робастность.
Со ссылкой на фиг. 2, модель робота и закон управления запоминают в виде варианта 221 поведения; их реализуют посредством механизма 240 исполнения и посредством модуля 210 услуг согласно схеме с замкнутым контуром, содержащей следующие этапы:
- извлечение замера положения тела и замера положения основания, из датчиков,
- преобразование этих замеров положений в наблюдаемые замеры положений, с использованием средств 211 извлечения,
- вычисление в системной услуге 213 команд скорости тела и скорости основания, с использованием описанного выше закона управления,
- интегрирование этих скоростей тела и основания, для обеспечения их для средств 211 извлечения,
- преобразование этих команд (положения и скорости для тела и для основания) в инструкции для исполнительных механизмов 212 робота: колес основания и сочленений робота.
Для подтверждения достоверности этого закона управления, были проведены некоторые эксперименты; они описаны в отношении фиг. 5. Контроллер, представленный здесь, был реализован в замкнутом контуре на человекоподобном роботе; обратная связь задается посредством установки, каждый раз, значения начальных состояний и . Эти значения измеряют, для датчиком положения угла каждого колеса, а для датчиком положения на каждом сочленении робота. Вследствие наличия трех датчиков на мобильном основании, реальное положение робота в мире может быть известно только при предположении, что колеса не скользят на земле. Мы выбрали материал для земли и колеса, обеспечивающие это предположение. В отношении контроллера, мы эмпирически выбрали спрогнозированную длительность времени 2 с и период Т дискретизации 100 мс. Количество N отсчетов тогда равно 20.
В четырех экспериментах, ориентир положения/скорости был отправлен к контроллеру с формой: идти вперед с постоянной скоростью, и на полпути траектории, изменить направление траектории. Ориентир положения и ориентир скорости включены в ориентир траектории. Эта траектория не может быть осуществлена роботом, так как ему необходимо иметь бесконечное ускорение для мгновенного изменения направления скорости. Поэтому контроллер должен выполнить это посредством вычисления оптимальной и возможной траектории согласно определенному множеству весов.
Эксперимент 1 с результатами, показанными на фиг. 5а, соответствует назначению приоритета отслеживания траектории перед робастностью: α1, α2 > α3. В этом примере α1=α2=100, α3= 10, α4=0.0001. Во-первых, мы можем видеть эффект прогнозирования в контроллере на полпути траектории. Мобильное основание начинает поворачиваться перед изменением опорной траектории. Задача состоит в лучшей минимизации ошибки отслеживания на протяжении всего прогнозируемого времени. Мы можем также видеть, что CoM верхнего тела находится, главным образом, на кривой траектории мобильного основания. Контроллер осуществил это для оптимизации робастности на протяжении всего прогнозируемого времени посредством минимизации расстояния между CoP и CoM мобильного основания. Наконец, мы можем видеть в конце траектории, что отсутствует конечная сходимость отслеживания в положении. Это обусловлено отсутствием целевой функции интеграла положения.
Эксперимент 2 с результатами, показанными на фиг. 5b, соответствует назначению приоритета устойчивости перед отслеживанием траектории: α3 > α1, α2. В этом примере α1=α2=100, α3= 500000, α4=0.0001. Мы можем видеть, что расстояние между CoP и CoM мобильного основания является значительно меньшим по сравнению с экспериментом 1. Поскольку мы не можем иметь как хорошее отслеживание, так и хорошую робастность, мы можем отметить, что отслеживание траектории является худшим вокруг проблемной точки в середине траектории. Важно помнить, что, с постоянным множеством весов, мы должны достичь компромисса между робастностью и отслеживанием траектории, когда робот не может осуществить и то, и другое в одно и то же время.
Эксперимент 3 с результатами, показанными на фиг. 5с, соответствует множеству весов первого эксперимента, но с моделью с 1 массой, вместо модели с 2 массами. Мы можем отметить, что отслеживание траектории мобильного основания остается тем же самым, но, вследствие худшей модели, все тело и CoM основания имеют меньше DoF для попытки оптимизации робастности. Это приводит к худшему поведению верхнего тела, а именно, более быстрому перемещению и большему перемещению, в неверное время. Мы можем отметить, что при высокой скорости для этого робота, модель с 1 массой не является устойчивой, и робот падает, тогда как модель с 2 массами остается устойчивой. В этом примере α1=α2=100, α3= 10, α4=0.0001.
Эксперимент 4 с результатами, показанными на фиг. 5d, соответствует множеству весов первого эксперимента, с моделью с 2 массами, но в открытом контуре (он соответствует прямой установке b и с соответствующими им командами). Мы можем явно видеть, что робот имеет много отклонений и не может следовать опорной траектории. Мы можем также отметить, что измеряемое поведение робота является более резким, чем в замкнутом контуре. Это также имеет эффект сглаживания траекторий робота. В этом примере α1=α2=100, α3= 10, α4=0.0001.
Мы описали нового управляемого робота с всенаправленным мобильным основанием. Преимуществами контроллера робота являются:
- концепция временного прогнозирования, которая обеспечивает возможность управления сильно ограниченной динамической системой при высокой скорости и ускорении, с прогнозированием будущих вариантов ее поведения;
- высокая модульность, которая обеспечивает возможность осуществления многих вариантов выбора между назначением приоритета отслеживания траекторий, оптимизации устойчивости, если робот сильно разрушается, или минимизации резких движений для защиты механических частей робота;
- возможность управления любым множеством линейных ограничений в виде кинематических пределов, ограничений устойчивости или робастности и ограничений мобильного основания.
Изобретение относится к области систем программирования роботов. Человекоподобный робот содержит тело, соединенное с всенаправленным мобильным наземным основанием и снабженное датчиком положения тела и датчиком положения основания для обеспечения замеров, исполнительными механизмами, содержащими двигатели сочленений и по меньшей мере три колеса, расположенные во всенаправленном мобильном основании, с по меньшей мере одним всенаправленным колесом, средствами извлечения для преобразования замеров в наблюдаемые данные, контроллером для вычисления команд положения, скорости и ускорения из наблюдаемых данных с использованием модели робота и предупорядоченных ориентиров положения и скорости, средством для преобразования команд в инструкции для исполнительных механизмов. При этом модель робота является моделью с двумя сосредоточенными массами, при этом первая сосредоточенная масса (b) представляет собой центр масс (CoM) мобильного основания, а вторая сосредоточенная масса (c) представляет собой CoM верхнего тела, причем первая сосредоточенная масса (b) и вторая сосредоточенная масса (c) обладают фиксированной высотой. 2 н. и 4 з.п. ф-лы, 8 ил.
1. Человекоподобный робот (100), содержащий
тело (190), соединенное с всенаправленным мобильным наземным основанием (140) и снабженное:
- датчиком положения тела и датчиком положения основания для обеспечения замеров,
- исполнительными механизмами (212), содержащими двигатели сочленений и по меньшей мере три колеса (141), расположенные во всенаправленном мобильном основании, с по меньшей мере одним всенаправленным колесом,
- средствами (211) извлечения для преобразования замеров в наблюдаемые данные,
- контроллером для вычисления команд положения, скорости и ускорения из наблюдаемых данных с использованием модели робота и предупорядоченных ориентиров положения и скорости,
- средством для преобразования команд в инструкции для исполнительных механизмов,
отличающийся тем, что модель робота выполнена в виде модели с двумя сосредоточенными массами, при этом первая сосредоточенная масса (b) представляет собой центр масс (CoM) мобильного основания, а вторая сосредоточенная масса (c) представляет собой CoM верхнего тела, причем первая сосредоточенная масса (b) и вторая сосредоточенная масса (c) обладают фиксированной высотой, при этом команды основаны на законе линейного моделируемого прогнозируемого управления с временем, дискретизируемым согласно периоду времени дискретизации и количеству прогнозируемых отсчетов, выраженного в виде квадратичного оптимизирующего выражения с взвешенной суммой:
- целевой функции (О2) положения основания,
- целевой функции (О1) скорости основания,
- целевой функции (О3) минимизации расстояния между центром давления (CoP) и первой сосредоточенной массой (b), причем CoP является барицентром контактных сил между роботом и землей,
с предварительно заданными весами и множеством предварительно заданных линейных ограничений, которыми являются:
- максимальная скорость и ускорение мобильного основания,
- CoP-предел.
2. Человекоподобный робот по п. 1, отличающийся тем, что к взвешенной сумме целевых функций добавляют целевую функцию (О4) минимизации резкого движения.
3. Человекоподобный робот по п.1 или 2, отличающийся тем, что множество предварительно заданных линейных ограничений содержит кинематические пределы тела.
4. Способ управления перемещением человекоподобного робота, имеющего тело (190), соединенное с всенаправленным мобильным наземным основанием (140), и исполнительные механизмы (212), содержащие по меньшей мере три колеса (141), расположенные во всенаправленном мобильном основании, с по меньшей мере одним всенаправленным колесом, причем способ включает следующие этапы, реализуемые согласно схеме с замкнутым контуром:
- извлечение замера положения тела и замера положения основания,
- преобразование этих замеров положений в наблюдаемые замеры положений,
- вычисление команд скорости тела и скорости основания с использованием модели робота, выполненной в виде модели с двумя сосредоточенными массами, при этом первая сосредоточенная масса (b) представляет собой центр масс (CoM) мобильного основания, а вторая сосредоточенная масса (c) представляет собой CoM верхнего тела, причем первая сосредоточенная масса (b) и вторая сосредоточенная масса (c) обладают фиксированной высотой, и с использованием закона управления, основанного на законе линейного моделируемого прогнозируемого управления с временем, дискретизируемым согласно периоду времени дискретизации и количеству прогнозируемых отсчетов, и выраженного в виде квадратичного оптимизирующего выражения с взвешенной суммой:
- целевой функции (О2) положения основания,
- целевой функции (О1) скорости основания,
- целевой функции (О3) минимизации расстояния между центром давления (CoP) и первой сосредоточенной массой (b), причем CoP является барицентром контактных сил между роботом и землей,
с предварительно заданными весами и множеством линейных ограничений, которыми являются:
- максимальная скорость и ускорение мобильного основания,
- CoP-предел,
- преобразование этих команд в инструкции для исполнительных механизмов робота.
5. Способ по п.4, отличающийся тем, что множество предварительно заданных линейных ограничений содержит кинематические пределы тела.
6. Способ по п.4 или 5, отличающийся тем, что целевую функцию (О4) минимизации резкого движения добавляют к взвешенной сумме целевых функций.
MINGEUK KIM ET AL, "Stabilization of a rapid four-wheeled mobile platform using the ZMP stabilization method", ADVANCED INTELLIGENT MECHATRONICS, IEEE/ASME INTERNATIONAL CONFERENCE ON, 06.07.2010 | |||
FR 2946160 A1, 03.12.2010 | |||
WO 2009033898 A1, 19.03.2009. |
Авторы
Даты
2019-02-25—Публикация
2015-04-17—Подача