Задайте целевую область в своей рабочей области и запланируйте путь в тех границах. workspaceGoalRegion
объект задает границы на XYZ-позиционной и Эйлеровой ориентации ZYX исполнительного элемента конца робота. manipulatorRRT
возразите планирует путь на основе той целевой области и выборок случайные положения в границах.
Загрузите существующую модель робота как rigidBodyTree
объект.
Создайте планировщика пути
Создайте планировщика пути к быстро исследующему случайному дереву (RRT) для робота. Этот пример использует пустую среду, но этот рабочий процесс также работает хорошо с нарушенными средами. Можно добавить, что столкновение возражает против среды как collisionBox
или collisionMesh
объект.
Задайте целевую область
Создайте область цели рабочей области с помощью имени корпуса исполнительного элемента конца робота.
Задайте целевые параметры области для своей рабочей области. Целевая область включает ссылочное положение, XYZ-позиционные границы и пределы ориентации на Углах Эйлера ZYX. Этот пример задает границы на XY-плоскости в метрах и позволяет вращение вокруг оси Z в радианах.
Можно также применить фиксированное смещение ко всем положениям, произведенным в области. Это смещение может составлять схватывание инструментов или изменений размерностей в вашей рабочей области. В данном примере примените фиксированное преобразование, которое помещает исполнительный элемент конца на 5 см выше рабочей области.
Запланируйте путь к целевой области
Запланируйте путь к целевой области от домашней настройки робота. Из-за случайности в алгоритме RRT, этот пример устанавливает rng
отберите, чтобы гарантировать повторяемые результаты.
Покажите робота, выполняющего путь. Чтобы визуализировать более реалистический путь, интерполируйте точки между настройками пути.
Настройте положение исполнительного элемента конца
Заметьте, что манипулятор приближается к рабочей области от нижней части. Чтобы инвертировать ориентацию конечного положения, добавьте pi
вращение к Оси Y для ссылочного положения.
Повторно запланируйте путь и визуализируйте движение робота снова. Робот теперь приближается от верхней части.