Настраиваемые параметры блоков и настраиваемые глобальные параметры

Чтобы изменить поведение модели, можно настроить Simulink® Параметры блоков Desktop Real-Time™, если параметры являются настраиваемыми. Можно изменить параметры блоков через диалоговое окно параметров блоков, блоки Инструментальной панели и MATLAB® язык. Можно создать настраиваемые глобальные параметры при помощи переменных MATLAB как выражения.

В режиме Connected IO или режиме Accelerator, Simulink передает новые значения модели, которая симулируется. В режиме Run in Kernel Simulink передает новые значения приложению реального времени, которое запускается в процессе привилегированного режима.

Процедуры, чтобы рассмотреть при работе с настраиваемыми параметрами включают:

Настраиваемые параметры

Simulink Desktop Real-Time задает два вида настраиваемых параметров: параметры блоков и глобальные параметры.

Настраиваемые параметры блоков

Параметры блоков являются константным выражением, на которое вы ссылаетесь в диалоговом окне блока Simulink или при помощи MATLAB API. Параметры блоков являются настраиваемыми, когда вы устанавливаете опцию Default parameter behavior на Tunable на панели Optimization. При использовании MATLAB API вы идентифицируете параметры блоков названием параметра и блоком path в иерархии модели.

Предположим, что вы устанавливаете параметр Amplitude блока Signal Generator к значению 5/2. Можно изменить амплитуду генератора сигнала в процессе моделирования путем настройки параметра Amplitude в блоке Signal Generator.

Настраиваемый глобальный параметр

Настраиваемым глобальным параметром является переменная MATLAB, на которую вы ссылаетесь в диалоговом окне блока Simulink. Можно настроить глобальный параметр или объект при помощи диалогового окна блока, блоков Инструментальной панели, Property Inspector, Model Explorer, Model Data Editor или языка MATLAB. При использовании MATLAB API вы идентифицируете настраиваемый глобальный параметр именем переменной только.

Предположим, что вы присваиваете параметру Amplitude переменную A со значением 4.57. Можно изменить амплитуду генератора сигнала в процессе моделирования путем настройки значения A в рабочем пространстве MATLAB и обновлении симуляции.

Встроенные параметры

Чтобы повысить эффективность выполнения, откройте диалоговое окно Configuration Parameters и установите опцию Default parameter behavior на Inlined на Code Generation> панель Optimization.

По умолчанию вы не можете настроить встроенные параметры блоков. Однако можно создать настраиваемую глобальную переменную путем ссылки на переменную MATLAB или Simulink.Parameter объект в диалоговом окне блока. Чтобы сделать переменную или объект настраиваемыми, примените класс памяти кроме Auto к нему.

Для получения дополнительной информации о встроенных параметрах, смотрите поведение параметра По умолчанию (Simulink Coder).

Настройки параметров при помощи запущенного в привилегированном режиме

В режиме Run in Kernel Simulink Desktop Real-Time соединяет вашу модель Simulink с вашим приложением реального времени. Блок-схема становится пользовательским интерфейсом для приложения реального времени. Можно изменить значение параметров в диалоговом окне блока или заменить значение на переменную MATLAB и настроить переменную в Командном окне.

Когда вы изменяете значение параметров в модели Simulink и нажимаете OK, Simulink Desktop Real-Time передает данные приложению реального времени и изменяет параметры блоков. Можно изменить только параметры, которые не изменяют структуру модели. Если вы изменяете структуру, необходимо перекомпилировать модель.

Если вы изменяете значение настраиваемого глобального параметра, даете Simulink команду передавать данные от переменной MATLAB до приложения реального времени также:

  • Нажатие Ctrl+D.

  • В Редакторе Simulink, на вкладке Debug, нажатие по Update Model.

Настройки параметров при помощи обновлений хранения и обновления все параметры

При помощи Hold Updates можно настроить несколько параметров и применить все настроенные параметры целиком, вместо того, чтобы настроить один параметр за один раз. Этот пример использует модель sldrtex_model. Чтобы открыть эту модель, в командном окне MATLAB, введите:

open_system(docpath(fullfile(docroot,'toolbox',...
    'sldrt','examples','sldrtex_model')))
  1. Открытая модель sldrtex_model.

  2. В Редакторе Simulink, на вкладке Desktop Real-Time, нажимают Run in Real Time.

  3. На вкладке Desktop Real-Time нажмите Prepare> Hold Updates. Редактор остается в режиме Hold Updates, пока вы не нажимаете Hold Updates снова.

    Чтобы установить значения параметров, можно установить значения или путем нажатия на каждый блок или при помощи Model Data Editor в базовом рабочем пространстве.

  4. На вкладке Desktop Real-Time, Prepare> Signal Table.

  5. В Model Data Editor кликните по вкладке Parameters. Измените значения параметров в Model Data Editor в базовом рабочем пространстве.

  6. На вкладке Desktop Real-Time нажмите Prepare> Update All Parameters.

  7. Чтобы остановить симуляцию, прежде чем это закончится на вкладке Desktop Real-Time, нажимают Stop.

Настройки параметров при помощи языка MATLAB

В Simulink Desktop Real-Time можно использовать команду языка MATLAB set_param изменить значения параметров блоков и настраиваемых глобальных параметров. Этот пример использует модель sldrtex_model. Чтобы открыть эту модель, в командном окне MATLAB, введите:

open_system(docpath(fullfile(docroot,'toolbox',...
    'sldrt','examples','sldrtex_model')))

Если вы используете литеральное значение параметров блоков, вы получаете доступ к параметру непустым блоком path и названием параметра. Например, чтобы изменить амплитуду генератора сигнала:

model = 'sldrtex_model';
sgname = [model '/Signal Generator'];
set_param(sgname, 'Amplitude', '4.57')

Если вы заменяете параметры блоков на настраиваемый глобальный параметр, вы получаете доступ к параметру именем переменной. Предположим, что вы устанавливаете Amplitude на переменную A. Изменить амплитуду генератора сигнала:

A = 4.57
set_param('sldrtex_model','SimulationCommand','update')

Похожие темы

Для просмотра документации необходимо авторизоваться на сайте