В этом примере вы создаете простой скрипт MATLAB®, чтобы симулировать модель четырёхзвенника в различных длинах разветвителя. Скрипт использует координаты движения разветвителя, полученное использование блока Transform Sensor, чтобы построить получившуюся кривую разветвителя в каждом значении длины разветвителя. Для получения информации о том, как создать модель четырёхзвенника, используемую в этом примере, см. Модель Кинематическая Цепь С обратной связью.
В командной строке MATLAB введите smdoc_four_bar
. Модель четырёхзвенника открывается. Для получения инструкций по тому, как создать эту модель, см. Модель Кинематическая Цепь С обратной связью.
Под маской блока Binary Link B соедините третий блок Outport как показано на рисунке. Можно добавить блок Outport путем копирования и вставки Conn1 или Conn2. Новый блок идентифицирует систему координат, траекторию которой вы строите в этом примере.
Добавьте следующие блоки в модель. В процессе моделирования блок Transform Sensor вычисляет и выводит траекторию разветвителя относительно мировой системы координат.
Библиотека | Блок | Количество |
---|---|---|
Системы координат и преобразования | World Frame | 1 |
Системы координат и преобразования | Transform Sensor | 1 |
Утилиты Simscape™ | PS-Simulink Converter | 2 |
Simulink® Sinks | Outport | 2 |
В диалоговом окне блока Датчика Преобразования выберите эти переменные:
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, чтобы симулировать модель ползунка заводной рукоятки в различных длинах ссылки разветвителя, строящий для каждой симуляции запускают ограничительную силу, действующую на поршень.