Чтобы сократить количество переменных рабочей области, необходимо поддержать и избежать конфликтов по совпадению имен, можно сгруппировать тесно связанные параметры в структуры (см., Организуют Связанные Определения Параметров блоков в Структурах (Simulink)).
В этом примере первоначальная модель xpcosc
имеет четыре параметра, которые среди них определяют форму выходной формы волны.
Блок | Параметр | Полевое выражение структуры | Начальное значение |
---|---|---|---|
| Freq |
| 20 |
| Gain |
| 1000^2 |
| Gain |
| 2*0.2*1000 |
| Gain |
| 1000^2 |
Откройте xpcosc
в рабочей папке.
Откройте Tools> Model Explorer.
Выберите узел Base Workspace.
Нажмите кнопку Add Simulink Parameter.
В столбце Name введите имя spkp
.
В поле Storage class выберите ExportedGlobal
.
В поле Value введите как одна строка:
struct('sg_freq',20, 'g2_gain',1000^2, ... 'g1_gain',2*0.2*1000, 'g_gain',1000^2)
Значения полей копируют литеральные значения в диалоговых окнах. Чтобы изменить значения полей, в строке spkp
, кликают по ячейке Value и нажимают кнопку Edit.
Нажмите Apply.
Сохраните модель как ex_slrt_osc_struct
.
В блоке Signal Generator
замените значение параметра Frequency с spkp.sg_freq
.
В блоке Gain
замените значение параметра Gain с spkp.g_gain
.
В блоке Gain1
замените значение параметра Gain с spkp.g1_gain
.
В блоке Gain2
замените значение параметра Gain с spkp.g2_gain
.
Создайте и загрузите модель на свой целевой компьютер.
Откройте Tools> Simulink Real-Time.
В свойствах приложения реального времени, установленных параметр Stop Time на Inf
.
Создайте и сконфигурируйте осциллограф хоста:
В узле Иерархии модели щелкните правой кнопкой по модели и откройте View Signals.
Добавьте осциллограф хоста ().
Перетащите сигналы Integrator1
и Signal Generator
к осциллографу.
Запустите осциллограф ().
Просмотрите осциллограф ().
В узле Иерархии модели щелкните правой кнопкой по модели и откройте View Block Parameters.
Откройте текстовое поле Values для spkp(1).g1_gain
.
Запустите приложение реального времени ().
В текстовом поле Values для spkp(1).g1_gain
измените значение на 800
, щелкните вне поля и нажмите кнопку Apply parameter value(s) changes.
Остановите приложение реального времени ().
В Model Explorer щелкните правой кнопкой по строке spkp
.
Нажмите Export selected и сохраните переменную как ex_slrt_osc_struct.mat
.
Чтобы загрузить структуру параметра, когда вы откроете модель, добавьте команду load
в коллбэк PreLoadFcn
. Чтобы удалить структуру параметра из рабочей области, когда вы закроете модель, добавьте команду clear
в коллбэк CloseFcn
. Для получения дополнительной информации смотрите Образцовые Коллбэки (Simulink).