Симулируйте траектории пространства соединений для модели древовидного твердого тела и визуализируйте результаты с помощью Simulink 3D Animation™.
Загрузите модель с помощью следующей команды:
open_system("SL3DJointSpaceManipulatorTrajectory")
Этот пример использует манипулятор Gen3 Kinova, который хранится в рабочем пространстве модели. Однако загрузите и визуализируйте робота следующими командами:
gen3 = loadrobot("kinovaGen3","DataFormat","column"); show(gen3);
Модель разделена на два раздела:
Отслеживание траектории манипулятора
Визуализация в Simulink 3D Animation™
Блок Полиномиальной Траектории генерирует непрерывные траектории пространства соединений из случайных наборов точек пути в области значений [-0.375*pi 0.375*pi]
, останавливаясь на каждом из путевых точек. Блок Joint-Space Motion Model моделирует отслеживание этих траекторий с обратной связью для манипулятора Gen3 Kinova с управлением вычисленным крутящим моментом.
Блок VR RigidBodyTree вставляет манипулятор в сцену, заданную связанным файлом привязки, robot_scene.wrl
. Блок VR Sink обеспечивает визуализацию для мира. В параметрах блоков блок VR Sink был изменен, чтобы рассматривать уставку, обозначенную красными осями в выходе, как вход. Блок Get Transform используется, чтобы получить положение конечного эффектора, который затем преобразуется из гомогенной матрицы преобразования в вектор преобразования, а затем из MATLAB в координаты VR.
sim("SL3DJointSpaceManipulatorTrajectory.slx");
В модели активен темп, на что указывает символ часов под кнопкой Run:
Это гарантирует, что модель замедлится почти до скорости в реальном времени, так что визуализация может быть обновлена в реалистичном темпе.
По умолчанию модель открывает и VR-визуализацию, и возможности, которые отображают информацию о скорости и положении. Однако, если они закрыты, вид VR может быть снова открыт, нажав на блок VR Sink, и возможности могут быть открыты, дважды щелкнув связанные значки Viewer:
Возможности результаты отслеживания блока Joint Space Motion Model. Как видно слева на рисунках ниже, начальное строение робота отличается от эталонных траекторий, но управляемое движение гарантирует, что траектория достигнута и отслеживается на время симуляции. Конечные возможности отображают положение X, Y и Z конечного эффектора в мировой системе координат.