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

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

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

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

Signal Generator

Freq

spkp.sg_freq

20

Gain

Gain

spkp.g_gain

1000^2

Gain1

Gain

spkp.g1_gain

2*0.2*1000

Gain2

Gain

spkp.g2_gain

1000^2

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

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

Откройте slrt_ex_osc модели, и сохраните копию модели в рабочую папку.

Откройте Базовое Рабочее пространство в Model Explorer. На вкладке Modeling нажмите 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.

Сохраните модель как 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. В Model Explorer щелкните правой кнопкой мыши по строке spkp.

  2. Нажмите Export selected и сохраните переменную как slrt_ex_osc_struct.mat.

Чтобы загрузить структуру параметра, когда вы откроете модель, добавьте a 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 Explorer. На вкладке Real-Time щелкните Prepare > SLRT Explorer.

Установите значение Stop Time приложения реального времени Inf.

Перейдите на вкладку Parameters.

Запустите приложение реального времени.

Откройте Данные Моделирования Inspector и просмотрите сигналы от приложения реального времени.

В Values текстовом поле для spkp(1).g1_gain, измените значение на 800 и нажмите Enter.

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

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

Похожие темы