Чтобы уменьшить количество переменных рабочей области, которые необходимо поддерживать, и избежать конфликтов имен, можно сгруппировать тесно связанные параметры в структуры. См. раздел Организация определений связанных параметров блоков в структурах.
В этом примере начальная модель slrt_ex_osc имеет четыре параметра, которые определяют форму выходного сигнала.
| Блок | Параметр | Выражение структурного поля | Начальное значение |
|---|---|---|---|
| Частота |
|
|
| Выгода |
|
|
| Выгода |
|
|
| Выгода |
|
|
Эта процедура группирует некоторые тесно связанные параметры в структуры.
Открытая модель slrt_ex_oscи сохраните копию модели в рабочей папке.
Откройте базовое рабочее пространство в обозревателе моделей. На вкладке Моделирование (Modeling) щелкните Базовое рабочее пространство (Base Workspace).
Щелкните Добавить параметр симулятора (Add Simulink Parameter).
![]()
В столбце «Имя» введите имя spkp.
В поле Класс хранилища выберите ExportedGlobal.
В поле Значение введите как одну строку:
struct('sg_freq',20, 'g2_gain',1000^2, 'g1_gain',2*0.2*1000, 'g_gain',1000^2)
Значения полей дублируют значения литералов в диалоговых окнах. Для изменения значений полей в строке spkpщелкните на ячейке «Значение» и выберите «Изменить».
![]()

Нажмите кнопку «Применить».
Сохранить модель как slrt_ex_osc_struct. На вкладке Моделирование (Simulation) в разделе Сохранить (Save) щелкните Сохранить как (Save As).
В Signal Generator блок, замените значение параметра Frequency на spkp.sg_freq.
В Gain блок, замените значение параметра Gain на spkp.g_gain.
В Gain1 блок, замените значение параметра Gain на spkp.g1_gain.
В Gain2 блок, замените значение параметра Gain на spkp.g2_gain.
В обозревателе моделей щелкните правой кнопкой мыши строку spkp.
Щелкните Экспорт выбран (Export selected) и сохраните переменную как slrt_ex_osc_struct.mat.
Чтобы загрузить структуру параметров при открытии модели, добавьте load для перехода к PreLoadFcn обратный вызов. Чтобы удалить структуру параметров из рабочего пространства при закрытии модели, добавьте clear для перехода к CloseFcn обратный вызов. Дополнительные сведения см. в разделе Обратные вызовы модели.
Если шаги в разделах Создать структуру параметров (Create Parameter Structure), Заменить параметры блока полями структуры параметров (Replace Block Parameters with Parameter Structure Fields) и Сохранить и загрузить структуру параметров (Save and Load Parameter Structure) не выполнены, можно начать работу с завершенной моделью.
Чтобы открыть модель, в окне команды MATLAB введите:
open_system(fullfile(matlabroot, 'toolbox', 'slrealtime', ... 'examples', 'slrt_ex_osc_struct')); load(fullfile(matlabroot, 'toolbox', 'slrealtime', ... 'examples', 'slrt_ex_osc_struct.mat'));
Создайте и загрузите модель на целевой компьютер.
Откройте обозреватель Simulink Real-Time. На вкладке «Реальное время» выберите «Подготовка» > «Обозреватель SLRT».
Установите для приложения в режиме реального времени значение Stop Time (Время остановки) Inf.
Перейдите на вкладку Параметры (Parameters).
Запустите приложение в реальном времени.
Откройте инспектор данных моделирования и просмотрите сигналы из приложения реального времени.
В текстовом поле «Значения» для spkp(1).g1_gain, измените значение на 800 и нажмите Enter.
Наблюдайте за изменением сигналов в инспекторе данных моделирования.
Остановите приложение в реальном времени.