Инерция в операционном пространстве

ROBOT CONTROL

4. Управление в операционном пространстве

https://studywolf.wordpress.com/2013/09/17/robot-control-4-operation-space-control/

 

https://web.stanford.edu/~smenon/code/rppbot/MathTutorial_01_RPPBot.htm

Samir Menon’s operational space control tutorial

 

Обобщённые координаты и операционное пространство

Термин обобщённые координаты (generalized coordinates) относится к характеристике системы, которая однозначно определяет её конфигурацию. Например, если у нашего робота есть 7 степеней свободы, то есть 7 переменных состояния, т.ч., когда все эти переменные заданы, мы можем полностью учесть положение робота. В предыдущих статьях этой серии робо-руки описывались в пространстве сочленений, и для них пространство сочленений является примером обобщённых координат. Зная углы всех сочленений, можем точно определить, в каком положении находится рука. Примером системы координат, которая неоднозначно определяет конфигурацию манипулятора будет система, описывающая только положение захвата.

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

Идея управления в операционном пространстве заключается в том, чтобы абстрагироваться от обобщённых координат системы и планировать траекторию в системе координат, которая имеет непосредственное отношение к задаче, которую нужно выполнить. В ситуации управления положением захвата хотелось бы работать в трёхмерном декартовом пространстве ( x , y , z ). В этом пространстве очевидно по какой траектории следует перемещать захват между двумя положениями (большую часть времени это будет просто прямая линия в каждом измерении). Поэтому наша цель состоит в том, чтобы создать систему управления, которая позволит определить траекторию в пространстве целей (пространстве задач) и преобразует этот сигнал в обобщённые координаты, которые можно отправить роботу для выполнения.

Управление в операционном пространстве простой рукой робота

Рассмотрим пример:

Обобщённые координаты есть пространство сочленений, а операционное пространство будет декартовыми координатами захвата относительно системы отсчёта, прикреплённой к базе. Переработав робота из второй части в этой статье, укажем настройки, с которыми будем работать:

Снова нужно найти Якобиан захвата робота.

К счастью, это уже сделано здесь,

 

Отлично! У нас есть J, можно трансформировать силы из пространства захвата в пространство сочленений, как было обсуждено во второй части:

Перепишем , как его составные части:

где ускорение захвата, а матрица инерции в операционном пространстве. К сожалению, это не просто инерционная матрица, поэтому давайте посмотрим, как её получить.

Инерция в операционном пространстве

Возможность вычисления M ( q ) позволяет нейтрализовать инерцию в пространстве сочленений путём включения её в управляющий сигнал, но для устранения инерции системы в операционном пространстве всё ещё требуется дополнительная работа. Первым шагом будет расчёт ускорения в операционном пространстве. Это можно сделать, взяв производную по времени исходного уравнения Якоби:

Подстановка в динамику системы, определенная в предыдущей части, игнорирует эффекты гравитации на данный момент и даёт:

Определим управляющий сигнал:

где подставляя вместо желаемую силу захвата, получаем:

где желаемое ускорение захвата.

Подстановка уравнения выше в уравнение ускорения в операционном пространстве даёт:

Перегруппировкой членов получаем

последний член игнорируется в силу сложности его моделирования, в результате:

Чтобы получить динамику  равную желаемому ускорению , матрица инерции захвата должна быть аккуратно выбрана.

Устанавливаем:

Получаем:

Так определяется матрица инерции в операционном пространстве.

Весь управляющий сигнал

Возвращаясь к построенному нами сигналу управления, давайте добавим моном отмены эффектов гравитации в пространстве сочленений:

где g ( q ) определён также, как и в предыдущей части. Этот контроллер преобразует желаемое ускорение захвата в команды крутящего момента и компенсирует инерцию и гравитацию.

Определим базовый PD -контроллер в операционном пространстве

Полное уравнение для управляющего сигнала в операционном пространстве для пространства сочленений:

Самое замечательное в этом то, что здесь описан процесс одинаковый для любой руки робота! Можно прямо сейчас строить контроллеры: найдите матрицу масс и матрицу гравитации вашего робота в обобщённых координатах, Якобиан захвата, и вы у цели.

Выводы

Разочаровывает то, что здесь не представлено реальное моделирование/реализация управления в операционном пространстве. Некоторое время назад я работал над импортом очень реалистичной симуляции робо-руки MapleSim в python для использования с контроллерами в python. Симуляции – это хороший способ поиграться с включением в уравнение силовых членов управления и увидеть результаты, не беспокоясь сломать реального робота. Тем не менее, есть ещё немного теории, которую нужно проработать, прежде чем приступить к реализации симуляции.


Дата добавления: 2019-11-16; просмотров: 103; Мы поможем в написании вашей работы!

Поделиться с друзьями:




Мы поможем в написании ваших работ!