В этом примере вы создаете простой скрипт MATLAB®, чтобы моделировать модель с четырьмя панелями в различных длинах разветвителя. Скрипт использует координаты движения разветвителя, полученное использование блока Transform Sensor, чтобы построить получившуюся кривую разветвителя в каждом значении длины разветвителя. Для получения информации о том, как создать модель с четырьмя панелями, используемую в этом примере, см. Модель Кинематическая Цепочка С обратной связью.
В подсказке команды MATLAB введите smdoc_four_bar
. Модель с четырьмя панелями открывается. Для получения инструкций по тому, как создать эту модель, см. Модель Кинематическая Цепочка С обратной связью.
Под маской блока Binary Link B соедините третий блок Outport как показано в фигуре. Можно добавить блок Outport путем копирования и вставки Conn1 или Conn2. Новый блок идентифицирует кадр, траекторию которого вы строите в этом примере.
Добавьте следующие блоки в модель. Во время симуляции блок Transform Sensor вычисляет и выводит траекторию разветвителя относительно мирового кадра.
Библиотека | Блок | Количество |
---|---|---|
Кадры и преобразования | Мировой кадр | 1 |
Кадры и преобразования | Преобразуйте датчик | 1 |
Утилиты Simscape™ | Конвертер Simulink PS | 2 |
Simulink® Sinks | Выходной порт | 2 |
В диалоговом окне блока Transform Sensor выберите эти переменные:
Translation> Y
Translation> Z
Блок представляет порты кадра y и z, через который он выводит координаты траектории разветвителя.
Соедините блоки как показано в фигуре. Обязательно инвертируйте блок Transform Sensor так, чтобы его порт опорной рамы, маркировал B, подключения к блоку World Frame.
В Блоке Configuration Механизма измените Uniform Gravity на None
.
В блоке Base-Crank Revolute Joint задайте следующие скоростные цели состояния. Цели обеспечивают соответствующий источник движения в целях этого примера.
Выберите State Targets> Specify Velocity.
В State Targets> Specify Velocity> Value, введите 2
rev/s.
Отмените выбор State Target> Specify Position.
Задайте длины следующей ссылки. Длина ссылки разветвителя параметризована с точки зрения переменной MATLAB, LCoupler
, разрешение вас изменяет свое значение итеративно с помощью простого скрипта MATLAB.
Блок | Параметр | Значение |
---|---|---|
Бинарная ссылка B | Длина | LCoupler |
Бинарная ссылка A1 | Длина | 25 |
Сохраните модель в удобной папке, назвав его smdoc_four_bar_msensing.
Создайте скрипт MATLAB, чтобы итеративно запустить симуляцию в различных длинах ссылки разветвителя:
На панели инструментов MATLAB нажмите New Script.
В скрипте введите следующий код:
% Run simulation nine times, each time % increasing coupler length by 1 cm. % The original coupler length is 20 cm. for i = (0:8); LCoupler = 20+i; % Simulate model at the current coupler link length (LCoupler), % saving the Outport block data into variables y and z. [~, ~, y, z] = sim('smdoc_four_bar_msensing'); % Plot the [y, z] coordinates of each coupler curve % on the x = i plane. i corresponds to the simulation run number. x = zeros(size(y)) + i; plot3(x, y, z, 'Color', [1 0.8-0.1*i 0.8-0.1*i]); view(30, 60); hold on; end
Сохраните скрипт как sim_four_bar в папке, содержащей модель с четырьмя панелями.
Запустите sim_four_bar скрипт. В панели инструментов редактора MATLAB нажмите кнопку Run или, с активным редактором, нажмите F5. Mechanics Explorer открывается динамическим 3-D представлением модели с четырьмя панелями.
Simscape Multibody™ итеративно запускает каждую симуляцию, добавляя получившуюся кривую ссылки разветвителя в активный график. Данные показывают итоговый график.
Можно использовать простой подход, который, как показывают в этом примере, анализировал образцовую динамику в различных значениях параметров. Например, можно создать скрипт MATLAB, чтобы моделировать модель ползунка заводной рукоятки в различных длинах ссылки разветвителя, строящий для каждой симуляции запускают ограничительную силу, действующую на поршень.