Следуйте за пространственной траекторией задачи в Simulink

В этом примере показано, как использовать Модель Движения Пробела Задачи, чтобы следовать за пространственной траекторией задачи.

Загрузите модель Simulink и робот

Этот пример использует робота манипулятора Киновой Gen3. Загрузите модель с помощью loadrobot.

[gen3,metadata] = loadrobot("kinovaGen3",'DataFormat','column');
initialConfig = homeConfiguration(gen3);
targetPosition = trvec2tform([0.6 -.1 0.5])
targetPosition = 4×4

    1.0000         0         0    0.6000
         0    1.0000         0   -0.1000
         0         0    1.0000    0.5000
         0         0         0    1.0000

Откройте модель Simulink.

open_system("followTaskSpaceTrajectoryModel.slx")

Генерация траектории

Блок Transform Trajectory создает траекторию между гомогенной начальной буквой, преобразовывают матрицу исполнительного элемента конца Gen3 и целевое положение по 3 интервал второго раза.

Следуйте за траекторией

Объединенная Модель Движения Пробела использует RigidBodyTree, gen3, вычислить объединенные положения, чтобы следовать за траекторией. Объединенные положения преобразованы в гомогенный, преобразовывают матрицы и затем конвертированное к вектору сдвига так, чтобы было легче визуализировать.

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

Объединенные целевые положения и расчетные объединенные значения от Модели connect Движения Пробела Задачи до блока Scope. Используя легенду, можно выбрать меньший набор сигналов соответствовать лучшей ясности. Заметьте что xY, и z положения исполнительного элемента конца соответствуют тесно с xY, и z положения траектории к целевой позиции.