Выберите и поместите робота Используя прямую и инверсную кинематику

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

Модель

Подсистема робота Delta

Подсистема Робота Delta моделирует робота дельты 3-DOF. Движение исполнительного элемента конца чисто поступательно из-за кинематической структуры робота. Приводы робота соответствуют трем приводимым в движение крутящим моментом шарнирным соединениям, смонтированным к верхней опорной плите. Чтобы подражать данным об энкодере, подсистема выводит положения (углы) приводов. Система координат камеры смонтирована под опорной плитой и смотрит вниз на исполнительный элемент конца. Геометрия, сопоставленная с исполнительным элементом конца, экспортируется через Шину Simscape, чтобы упростить моделирование контакта. Смотрите маску блока для получения дополнительной информации.

Откройте подсистему робота Delta

Планирование и подсистема управления: вперед и инверсная кинематика

Поскольку траектория, планирующая исполнительный элемент конца, сделана относительно xyz координат системы координат камеры робота, прямая карта кинематики необходима, чтобы преобразовать положения и скорости приводов к позиции и скорость исполнительного элемента конца. Точно так же карта инверсной кинематики необходима, чтобы преобразовать желаемое положение и скорость исполнительного элемента конца, вычисленного планировщиком к соответствующим позициям и скоростям этих трех приводов. Эти расчеты прямой и инверсной кинематики сделаны с помощью KinematicsSolver объекты. Объекты заданы как персистентные переменные в функциях sm_pick_and_place_robot_fk и sm_pick_and_place_robot_ik. Эти функции вызваны Кинематикой Планирования и Управления/Форварда блоками MATLAB function и Планированием и Управлением/Инверсной кинематикой, подсвеченным ниже. Чтобы ускорить расчет и справку гарантируют, что объекты KinematicsSolver находят требуемые решения, предыдущее решение используется в качестве исходного предположения для текущей проблемы. Каждый раз, когда параметры изменения подсистемы Робота Delta, sm_pick_and_place_robot_fk и функций sm_pick_and_place_robot_ik очищены из памяти так, чтобы объекты KinematicsSolver были регенерированы в начале следующей симуляции. Это гарантирует, что KinematicsSolver возражает и пребывание модели в синхронизации.

Открытая подсистема планирования и управления

Планирование и подсистема управления: планировщик пути

Планирование происходит в Планировщике Планирования и Управления/Пути блоком MATLAB function, подсвеченном ниже. Планировщик переходит робота между тремя различными режимами:

  • перейдите к местоположению непосредственно выше части

  • схватите часть и переместитесь в целевое местоположение

  • пойти домой

Каждый раз, когда режим начинается, траектория вычисляется, который берет исполнительный элемент конца от его текущего положения до целевого положения режима в фиксированном количестве времени. Траектория сгенерирована на двух этапах: во-первых, третий полином порядка вычисляется, соответствуя пути исполнительного элемента конца в xyz координатах камеры от ее текущего положения до целевого положения; во-вторых, пятый полином порядка вычисляется, который используется, чтобы масштабировать время вдоль пути, таким образом, что начальные и итоговые скорости и ускорения являются всем нулем. Переход режима происходит, когда положение и скорость исполнительного элемента конца достаточно близко к целевым значениям. Учитывая текущее время, планировщик возвращает желаемое положение и скорость исполнительного элемента конца вдоль траектории, а также требуемого состояния вакуума.

Открытая подсистема планирования и управления

Планирование и подсистема управления: контроллер

Планирование и Управление/Подсистема контроллера, подсвеченное ниже, содержат простой ПИД-регулятор, который управляет фактическими положениями и скоростями приводов к их требуемым значениям.

Открытая подсистема планирования и управления

Пропылесосьте подсистему

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

Открытая вакуумная подсистема

Свяжитесь с подсистемами

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

Открытая подсистема сил контакта части исполнительного элемента

Открытая подсистема сил контакта таблицы части

Отобразите процессор

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

Открытая подсистема процессора изображений

Для просмотра документации необходимо авторизоваться на сайте