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

Обзор модели

В этом руководстве вы предписываете изменяющиеся во времени координаты траектории плоской системы координат концов манипулятора относительно мировой системы координат с помощью 6-DOF Блоков соединений. Этот блок обеспечивает необходимые степени свободы между двумя системами координат, но он не представляет реальное физическое соединение между ними. Соединение, которое оно представляет, называется виртуальным.

Изменяющиеся во времени координаты прослеживают квадратный шаблон, достигаемый путем автоматического вычисления и применения приводных крутящих моментов в различных соединениях манипулятора. Во время симуляции можно вывести автоматически вычисленные крутящие моменты и построить их график с помощью Simulink® блоки или MATLAB® команды, например, в целях анализа.

Добавление виртуального соединения

  1. В командной строке MATLAB введите smdoc_double_pendulum. Откроется модель двойного маятника, которую в этом руководстве вы адаптируете как простую планарную модель манипулятора. Для получения инструкций о том, как создать эту модель, смотрите Модель Разомкнутого контура Кинематическая Цепь

  2. От Simscape> Multibody> Joints библиотека, тянитесь 6-DOF Joint, блокируют и соединяют его как показано в рисунке. Этот блок представляет виртуальное соединение, которое вы используете, чтобы задать систему координат концов манипулятора относительно лабораторной системы координат.

    Примечание

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

Предписание входных параметров движения

  1. В диалоговом окне 6-DOF Блока соединений задайте эти параметры настройки.

    ПараметрВыбрать
    Y Prismatic Primitive (Py)> Actuation> MotionProvided by Input
    Z Prismatic Primitive (Pz)> Actuation> MotionProvided by Input

    Блок открывает два порта физического сигнала, через которые вы можете предоставить входы движения соединения.

  2. Перетащите эти блоки в модель.

    БиблиотекаБлокКоличество
    Simscape> UtilitiesSimulink-PS Converter2
    Simulink> SourcesSignal Builder2

    Блоки Signal Builder обеспечивают входы движения в качестве сигналов Simulink. Блоки Simulink-PS Converter преобразуют сигналы Simulink в Simscape™ физические сигналы, совместимые с блоками Simscape Multibody™.

  3. Соедините блоки как показано на рисунке.

  4. Откройте диалоговое окно блока Signal Builder, подключенного к порту py 6-DOF Блока соединений. Задайте этот сигнал, изменяющуюся во времени координату Y квадратной траектории, которой должен следовать система координат концов манипулятора.

  5. Откройте диалоговое окно блока Signal Builder, соединенного с портом pz 6-DOF Блока соединений. Задайте этот сигнал, изменяющуюся во времени координату Z квадратной траектории, которой должен следовать система координат концов манипулятора.

  6. В диалоговых окнах блоков Simulink-PS Converter укажите модули входного сигнала и настройки фильтрации. Simscape Multibody требует, чтобы вы либо задали фильтрацию второго порядка, либо предоставили первые две производные по времени от координат траектории.

    ПараметрЗначение
    Units> Input signal unitcm
    Input Handling> Filtering and derivativesFilter input
    Input Handling> Input filtering orderSecond-order filtering
    Input Handling> Input filtering time constant (in seconds)0.1

    Маленькие фильтрующие константы могут значительно замедлить симуляцию. Для большинства моделей Simscape Multibody значение 0,1 секунды является хорошим выбором. В этом руководстве этого значения достаточно.

Шарниры соединения

  1. В диалоговых окнах двух блоков Revolute Joint установите следующие параметры приведения в действие и измерения.

    ПараметрНастройка
    Actuation> TorqueAutomatically Computed
    Sensing> Actuation TorqueОтобранный

    Simscape Multibody требует, чтобы количество примитивных степеней свободы соединений с входами движения равнялось числу с автоматически вычисленными силами приводов соединений и крутящими моментами. Если модель не соответствует этому условию, симуляция прекращает работать с ошибкой.

  2. Перетащите эти блоки в модель.

    БиблиотекаБлокКоличество
    Simscape> UtilitiesPS-Simulink Converter2
    Simulink> SinksTo Workspace2

    Блоки PS-Simulink Converter преобразуют выходы физического сигнала в сигналы Simulink, совместимые с другими блоками Simulink.

  3. В двух To Workspace диалоговые окна блока введите имена переменных t1 и t2.

  4. Соедините блоки как показано на рисунке.

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

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

  1. Из библиотеки Simscape > Multibody > Joints блок Weld Joint и соедините его с одной из двухкомпонентных подсистем Link A.

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

Еще раз запустите симуляцию. В Mechanics Explorer откроется динамическое 3-D отображение двухзвенника редактирования.

Постройте график расчетных моментов приведения в действие, действующих на два шарнира вращения в редактировании. В командной строке MATLAB введите этот код:

figure; 
hold on;
plot(t1.time, t1.data, 'color', [60 100 175]/255); 
plot(t2.time, t2.data, 'color', [210 120 0]/255); 
xlabel('Time'); 
ylabel('Torque (N*m)'); 
grid on;
График показывает изменяющиеся во времени моменты приведения в действие, действующие на два шарнира вращения. Эти крутящие моменты позволяют системе координат концов манипулятора проследить предписанную квадратную траекторию.

Похожие примеры

Подробнее о