Объявление данных переменного размера в диаграммах Stateflow

Данные переменного размера - это данные, размер которых может измениться во время исполнения. Напротив, данные фиксированного размера являются данными, размер которых известен и заблокирован во время компиляции и не меняется во время выполнения. Используйте данные переменного размера, если выход от Stateflow® график в Simulink® модель является массивом, размер которого зависит от состояния графика.

Включите поддержку данных переменного размера

Поддержка данных переменного размера включена по умолчанию. Чтобы включить или отключить эту опцию для отдельных графиков, измените Support variable-size arrays свойства графика, как описано в разделе «Задать свойства для диаграмм Stateflow».

Объявление входов и выходов переменного размера

После активации поддержки на уровне графика можно объявить данные переменного размера, выполнив следующие шаги:

  1. Добавьте объект данных к графику, как описано в Add Stateflow Data.

  2. Установите Scope свойство следующим Local, Input, или Output.

    Примечание

    Графики, которые используют C в качестве языка действий, не поддерживают локальные данные переменного размера.

  3. Установите флажок Variable size.

  4. Используйте свойство Size, чтобы явным образом задать максимальный размер данных. Например, чтобы задать матрицу 2-D, где максимальный размер 2 для первой размерности и 4 для второго измерения, в поле Size введите [2 4].

Инструкции по использованию данных переменного размера

Диаграммы Stateflow, которые используют MATLAB® как язык действий может получить доступ и изменить входные, выходные и локальные данные переменного размера в действиях состояния и перехода.

Напротив, графики, которые используют C в качестве языка действий, могут только обмениваться входными и выходными данными переменного размера с другими графиками и блоками Simulink при помощи:

  • Функции MATLAB

  • Функции Simulink

  • Таблицы истинности, которые используют MATLAB в качестве языка действий

При использовании данных переменного размера на графике С применяются следующие инструкции:

  • Объявите данные переменного размера только как входы и выходы графика, а не как локальные данные.

  • Чтобы задать входы графика переменного размера, которые наследуют их размер от модели Simulink, задайте значение свойства Size -1.

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

  • Можно передать данные переменного размера как входы и выходы этим функциям от действий состояния и перехода. В сложение функции MATLAB могут получить прямой доступ к данным уровня диаграммы, переменного размера.

Похожие темы