Хелпикс

Главная

Контакты

Случайная статья





Восемнадцатый слайд.. Девятнадцатый слайд. Двадцатый слайд. Управление ногами



Восемнадцатый слайд.

Построение карт высот местности

 

Для перемещения робот должен создать для себя в режиме реального времени карту высот местности вокруг себя. В роботе ANYmal используется подход с построением относительной, а не глобальной карты.

 

При глобальном подходе карта строится относительно некой мировой системы координат. Текущее положение робота на этой карте вычисляется на основе проприоцепции. Величина линейного перемещения от начального определяется на основе количества пройденных шагов. Недостатком такого подхода является накопление ошибки с каждым перемещением робота. После достаточно долгой работы реальное положение робота будет сильно отличатся от того, где робот считает он находится. Робот не сможет нормально функционировать, т.к. он будет совершать действия, не соответствующие реальным препятствиям перед ним.

 

При относительном подходе каждый раз строится локальная карта местности вокруг робота. Недостатком такого подхода является потеря точности глобального расположения начальной и конечной точек.

 

Девятнадцатый слайд

Последовательность работы алгоритма построения карты высот:

· получение данных с датчиков расстояния,

· расчет и обновление значений высот клеток местности перед роботом с учетом шумов при измерении расстояния и текущего положения робота,

· движение робота,

· обновление карты высот с учетом движения робота.

 

Двадцатый слайд

Управление ногами

 

Движение робота можно разбить на 3 уровня:

· высокий уровень – заданные роботу цели по перемещению или по поведению,

· средний уровень – управление позой всего робота,

· низкий уровень – непосредственно команды, посылаемые на двигатели на подвижных частях.

 

 

Средний уровень выступает посредником между высоким и низким уровнями. Для облегчения разработки роботов был разработан Free Gait API. (Это архитектура для универсального управления роботами на ногах)

 

Команды высокого уровня могут быть созданы с помощью скрипта, сигнала с пульта управления или с планировщика движения.

 

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

 

В Free Gait API поведение высокого уровня преобразуется в команды. Команда представляет собой набор последовательных шагов. В каждом шаге есть разделение на движение ноги и движение тела робота. В шаге задается конечная цель для положения одной из ног в декартовых координатах или в координатах углов поворота суставов, траектория движения ноги (последовательность промежуточных целей), а также цель и траектория движения тела робота (его центра масс) в декартовых координатах в пространстве.

 

При такой реализации робот всегда стоит на 3-х ногах и может автоматически поддерживать равновесие, сохраняя положение центра масс внутри опорного треугольника.

 

С помощью последовательности команд можно создавать шаблоны движений, например, шаблоны перешагивания через препятствие, подъема по ступеньке, нажатия на кнопку, прыжков и т.д. Шаблоны могут активироваться если местность перед роботом совпадает с каким-либо заданным типом препятствия или если в поле зрения попала метка AprilTagэто метка похожая на QR код.

 

Важным в движении робота является определения наличия контакта ноги с поверхностью, чтобы в дальнейшем на неё можно было надежно опереться. Из-за погрешностей работы датчиков позы робота и определения карты высот местности контакт ноги в реальности может не произойти как ему положено, в момент окончания шага. В API присутствуют шаблоны действий для сохранения равновесия робота, которые активируются в зависимости от типа ошибки – раннего или позднего контакта.



  

© helpiks.su При использовании или копировании материалов прямая ссылка на сайт обязательна.