exponenta event banner

Настройка структур параметров с помощью Simulink Real-Time Explorer

Чтобы уменьшить количество переменных рабочей области, которые необходимо поддерживать, и избежать конфликтов имен, можно сгруппировать тесно связанные параметры в структуры. См. раздел Организация определений связанных параметров блоков в структурах.

В этом примере начальная модель slrt_ex_osc имеет четыре параметра, которые определяют форму выходного сигнала.

БлокПараметрВыражение структурного поляНачальное значение

Signal Generator

Частота

spkp.sg_freq

20

Gain

Выгода

spkp.g_gain

1000^2

Gain1

Выгода

spkp.g1_gain

2*0.2*1000

Gain2

Выгода

spkp.g2_gain

1000^2

Создать структуру параметров

Эта процедура группирует некоторые тесно связанные параметры в структуры.

Открытая модель 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).

Заменить параметры блока полями структуры параметров

  1. В Signal Generator блок, замените значение параметра Frequency на spkp.sg_freq.

  2. В Gain блок, замените значение параметра Gain на spkp.g_gain.

  3. В Gain1 блок, замените значение параметра Gain на spkp.g1_gain.

  4. В Gain2 блок, замените значение параметра Gain на spkp.g2_gain.

Сохранить и загрузить структуру параметров

  1. В обозревателе моделей щелкните правой кнопкой мыши строку spkp.

  2. Щелкните Экспорт выбран (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.

Наблюдайте за изменением сигналов в инспекторе данных моделирования.

Остановите приложение в реальном времени.

Связанные темы