Инерция в операционном пространстве
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; Мы поможем в написании вашей работы! |
Мы поможем в написании ваших работ!