В этом примере показано, как к:
Сконфигурируйте модель Simscape™, чтобы сгенерировать код, который поддерживает визуализацию сигнала и изменения в параметрах периода выполнения Simscape.
Используйте Simulink® Real-Time™ и Simulink Coder™, чтобы развернуть выполняемую версию модели к машине реального времени.
Используйте Simulink Real-Time Explorer на своем компьютере разработчика, чтобы изменить значение параметра периода выполнения Simscape на целевой машине и видеть эффекты изменения параметра.
Этот пример требует активной связи между вашим компьютером разработчика и машиной реального времени. Для получения информации о конфигурировании и соединении вашего компьютера разработчика к целевому компьютеру, смотрите Начало работы с Simulink Real-Time (Simulink Real-Time).
Чтобы позволить вашему компьютеру разработчика изменить значения параметров на машине реального времени, сконфигурируйте время выполнения Simscape и параметры генерации кода для вашей модели Simscape.
Открыть образец модели, в командной строке MATLAB®, введите:
ssc_resistive_ac_circuit
Модель открывается, и PreLoadFcn загружает параметры для модели к рабочему пространству MATLAB. Пиковое напряжение, A_peak_voltage_src
, 3 В, сопротивление, R_resistor
, 10 Ом, и размер шага является 1e-5.
Чтобы выделить достаточно времени, чтобы видеть эффекты настройки параметра на целевой машине, сконфигурируйте приложение, чтобы запуститься, пока вы не остановите симуляцию путем установки времени остановки симуляции на inf
.
Настройте размер шага для симуляции в реальном времени. В командной строке MATLAB введите:
ts = 8e-5;
Сконфигурируйте модель для генерации кода, использующей Simulink Coder и Simulink Real-Time.
Откройте окно Configuration Parameters. В Редакторе Simulink откройте вкладку Modeling и нажмите Model Settings. Окно Configuration Parameters открывается.
В панели Code Generation, справа от System target file, нажимают Browse и выбирают slrealtime.tlc
.
В Системном Окне браузера Конечного файла нажмите OK.
Откройте Code Generation> панель Report.
Чтобы отобразить отчет генерации кода выбирают Create code generation report и Open report automatically.
Нажмите OK.
Включите сигнал, входящий в систему сигнал, что вы хотите просмотреть в Инспекторе Данных моделирования. Кликните по сигналу под названием Текущий и, в меню действия, выберите Enable Data Logging.
Создайте исполняемое приложение, которое будет развернуто на целевой машине.
Проверяйте, что вы соединяетесь с машиной реального времени:
tg = slrealtime
Чтобы создать код, который будет развернут в Редакторе Simulink, открывают вкладку Real-Time и нажимают Run on Target> Build Application.
Отчет кода открывается после загрузки кода.
Проверьте, что сгенерированный код представляет динамические переменные Simscape в структуре данных.
В Отчете Генерации кода, на левой панели, на узле Data files, открытом ssc_resistive_ac_circuit_data.cpp
.
Ищите раздел кода, который содержит переменные параметра. В поле Find введите Block parameters (default storage)
.
Проверьте что A_peak_voltage_src
и R_resistor
переменные представлены в P_ssc_resistive_ac_circuit_T ssc_resistive_ac_circuit_P
структура данных.
Используйте Simulink Real-Time Explorer, чтобы изменить параметры периода выполнения Simscape между запусками вашего приложения реального времени на целевом компьютере. Визуализируйте результаты симуляции на осциллографе в окне Explorer.
Открыть Simulink Real-Time Explorer, на вашем компьютере разработчика, в командной строке MATLAB, введите:
slrtExplorer
Выберите целевой компьютер в панели Targets Tree. Чтобы соединиться с целевым компьютером, нажмите Disconnected, чтобы переключить его к Connected.
Чтобы загрузить приложение реального времени, созданное ранее, нажмите Load Application. В панели Application on host computer нажмите File Selector и выберите ssc_resistive_ac_circuit.mldatx
файл. Нажмите Load.
Чтобы выбрать сигналы для потоковой передачи, на вкладке Signals, выбирают Current сигнала, нажимают, Add нажал кнопку сигналов, чтобы добавить сигнал в список на правой панели, и затем нажать кнопку Start Streaming.
Чтобы просмотреть параметры периода выполнения Simscape в Simulink Real-Time Explorer, откройте вкладку Signals и Parameters Parameters и нажмите содержимое Show существующей системы и ниже кнопки.
Чтобы запустить приложение с исходным пиковым амплитудным значением, нажмите Start.
Чтобы просмотреть сигналы потоковой передачи, нажмите Data Inspector.
Переданные потоком данные показывают, что ток составляет приблизительно 0,3 А. Уравнением определения для схемы в модели является I = V/R. Результаты правильны для данного напряжения (10 В) и сопротивления (3 Ома).
Измените A_peak_voltage_src
параметр, который представляет пиковую амплитуду для блока Voltage Source. Поскольку параметры периода выполнения Simscape являются конфигурируемым временем выполнения, вы не можете изменить значение параметров в процессе моделирования. Вместо этого вы останавливаете симуляцию, изменяете значение параметра и применяете изменение параметра. Затем вы перезапускаете симуляцию, чтобы видеть, как изменение параметра влияет на результаты.
Чтобы остановить выполнение, в окне Simulink Real-Time Explorer, нажимают Stop.
Кликните по полю Value для параметра A_peak_voltage_src и введите 50
.
Нажмите кнопку Start , чтобы симулировать с модифицированным пиковым амплитудным значением.
Переданные потоком данные показывают, что ток составляет приблизительно 5 А, когда пиковая амплитуда составляет 50 В. Результаты отражают изменение в значении для напряжения, учитывая, что сопротивление составляет 10 Ом.
slrealtime
(Simulink Real-Time) | slrtExplorer
(Simulink Real-Time)