Структуры настройки параметров при помощи 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

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

  1. Открытая модель slrt_ex_osc, и сохраните копию модели к рабочей папке.

  2. Откройте Базовое рабочее пространство в Model Explorer. На вкладке Modeling нажмите Base Workspace.

  3. Нажмите Add Simulink Parameter .

  4. В столбце Name введите имя spkp.

  5. В поле Storage class выберите ExportedGlobal.

  6. В поле Value введите как одна линия:

    struct('sg_freq',20, 'g2_gain',1000^2, ...
         'g1_gain',2*0.2*1000, 'g_gain',1000^2)
  7. Значения полей копируют литеральные значения в диалоговых окнах. Изменить значения полей, в строке spkp, кликните по ячейке Value и нажмите Edit .

  8. Нажмите Apply.

  9. Сохраните модель как 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 'callback'. Чтобы удалить структуру параметра из рабочей области, когда вы закроете модель, добавьте a clear команда к CloseFcn 'callback'. Для получения дополнительной информации смотрите Коллбэки Модели.

Настройки параметров в структуре параметра

Если вы не завершились, шаги в Создают Структуру Параметра, Параметры блоков Замены с Полями Структуры Параметра, и Сохраняют и Структура Параметра Загрузки, можно запустить при помощи завершенной модели. Чтобы открыть модель, в командном окне MATLAB, введите:

open_system(fullfile(matlabroot, 'toolbox', 'slrealtime', ...
'examples', 'slrt_ex_osc_struct'));
load(fullfile(matlabroot, 'toolbox', 'slrealtime', ...
'examples', 'slrt_ex_osc_struct.mat'));
  1. Создайте и загрузите модель на свой целевой компьютер.

  2. Открытый Simulink Real-Time Explorer. Во вкладке Real-Time нажмите Prepare> SLRT Explorer.

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

  4. Кликните по вкладке Parameters.

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

  6. Откройте Инспектора Данных моделирования и просмотрите сигналы из приложения реального времени.

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

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

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

Похожие темы