Визуализируйте отслеживание траектории манипулятора с Simulink 3D Animation

Симулируйте объединенные пространственные траектории для модели робота дерева твердого тела и визуализируйте результаты с Simulink 3D Animation™.

Обзор модели

Загрузите модель со следующей командой:

open_system("SL3DJointSpaceManipulatorTrajectory")

Figure Simple Robot Scene contains objects of type hgjavacomponent, uimenu, uipanel, uitoolbar.

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

gen3 = loadrobot("kinovaGen3","DataFormat","column");
show(gen3);

Figure contains an axes. The axes contains 25 objects of type patch, line. These objects represent base_link, Shoulder_Link, HalfArm1_Link, HalfArm2_Link, ForeArm_Link, Wrist1_Link, Wrist2_Link, Bracelet_Link, EndEffector_Link, Shoulder_Link_mesh, HalfArm1_Link_mesh, HalfArm2_Link_mesh, ForeArm_Link_mesh, Wrist1_Link_mesh, Wrist2_Link_mesh, Bracelet_Link_mesh, base_link_mesh.

Модель разделена в два раздела:

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

  • Визуализация в Simulink 3D Animation™

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

Блок Polynomial Trajectory генерирует непрерывные объединенные пространственные траектории от случайных наборов waypoints в области значений [-0.375*pi 0.375*pi], остановка в каждом из waypoints. Блок Model Движения Объединенного Пробела симулирует отслеживание с обратной связью этих траекторий для манипулятора Киновой Gen3 с управлением вычисленного крутящего момента.

Визуализация в Simulink 3D Animation™

Блок VR RigidBodyTree вставляет манипулятор в сцену, заданную связанным файлом привязки, robot_scene.wrl. Блок VR Sink обеспечивает визуализацию для мира. В параметрах блоков блок VR Sink был изменен, чтобы обработать заданное значение, обозначенное красными осями в выходе, как вход. Блок Get Transform используется, чтобы получить положение исполнительного элемента конца, который затем преобразован от homogeoneous, преобразовывают матрицу к вектору сдвига, и затем от MATLAB до координат VR.

Симулируйте модель

sim("SL3DJointSpaceManipulatorTrajectory.slx");

Figure Simple Robot Scene contains objects of type hgjavacomponent, uimenu, uipanel, uitoolbar.

В модели следование активно, как обозначено символом часов ниже кнопки Run:

Это гарантирует, что модель замедлена к скорости псевдореального времени, так, чтобы визуализация могла быть обновлена в реалистическом темпе.

Визуализация траектории

По умолчанию модель открывает и визуализацию VR и осциллографы, которые отображают скорость и информацию о положении. Однако, если они закрываются, представление VR может быть вновь открыто путем нажатия на блок VR Sink, и осциллографы могут быть открыты путем двойного клика по связанным значкам средства просмотра:

Осциллографы показывают результаты отслеживания Объединенного блока Model Движения Пробела. Как видно слева на рисунках ниже, начальная настройка робота отличается от ссылочных траекторий, но управляемое движение гарантирует, что траектория достигнута и прослежена на время симуляции. Итоговый осциллограф отображает эти X, Y, и положение Z исполнительного элемента конца в мировой системе координат.

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