Структура Stateflow ® - это тип данных, определяемый из Simulink.Bus (Simulink) объект. С помощью структур Stateflow можно объединять данные различного размера и типа для создания:
Входы и выходы, которые получают доступ к сигналам шины Simulink ® из диаграмм Stateflow, блоков таблицы истинности и функциональных блоков MATLAB.
Локальные данные в диаграммах Stateflow, таблицах истинности, графических функциях, функциях MATLAB ® и полях.
Временные данные в графических функциях Stateflow, таблицах истинности и функциях MATLAB.
Например, в модели sf_bus_demo, диаграмма Stateflow принимает входной сигнал шины с использованием структуры inbus и выводит сигнал шины из структуры outbus. Входной сигнал поступает из блока Simulink Bus Creator COUNTERBUSCreator, который объединяет сигналы от двух других блоков Bus Creator. Структура вывода outbus подключается к блоку выбора шины Simulink. Оба inbus и outbus вывести их тип из Simulink.Bus объект COUNTERBUS.

Элементы типа данных структуры Stateflow называются полями. Поля могут быть любой комбинацией отдельных сигналов, мультиплексированных сигналов, векторов и других структур (также называемых подструктурами). Каждое поле имеет собственный тип данных. Тип данных не обязательно должен соответствовать типу любого другого поля в структуре. Например, в модели sf_bus_demo, каждая из конструкций inbus и outbus имеет два поля:
inputsignal - подструктура с одним полем, input.
limits - подструктура с двумя полями, upper_saturation_limit и lower_saturation_limit.
Чтобы определить тип данных структуры, создайте объект шины Simulink в базовом рабочем пространстве, как описано в разделе Создание и указание объектов Simulink.Bus (Simulink).
Добавьте объект данных в диаграмму, как описано в разделе Добавление данных потока состояний.
Для определения временных структур в таблицах истинности, графических функциях и функциях MATLAB добавьте объект данных к функции. Дополнительные сведения см. в разделе Добавление данных через обозреватель моделей.
Задайте свойство Scope для структуры. Ваш выбор:
Input
Output
Local
Parameter
Temporary
Задайте свойство Тип для структуры. В зависимости от области действия структура Stateflow может иметь один из этих типов данных.
| Напечатать | Описание |
|---|---|
Inherit: Same as Simulink | Эта опция доступна только для структур ввода. Входная структура наследует тип данных от сигнала шины Simulink в модели, которая подключается к ней. Сигнал шины Simulink должен быть невиртуальной шиной. Дополнительные сведения см. в разделе Виртуальные и невиртуальные шины. В базовом рабочем пространстве укажите
Если входной сигнал поступает из блока Bus Creator, в диалоговом окне Bus Creator укажите соответствующий объект шины для поля Output data type. При указании объекта шины Simulink проверяет свойства |
Bus: <object name> | В поле Тип замените Для входных или выходных структур не требуется указывать сигнал шины в модели Simulink, которая соединяется со структурой Stateflow. Если вы указываете сигнал шины, его свойства должны соответствовать |
<date type expression> | В поле Тип замените
|
Например, в sf_bus_demo модель, структура ввода inbus и структура вывода outbus получить их тип через спецификацию типа формы, Bus: COUNTERBUS.

type ОператорЧтобы указать типы структуры, можно использовать выражения, которые вызывают Stateflow type оператор. Этот оператор задает тип одной структуры для типа другой структуры в диаграмме Stateflow. Например, в sf_bus_demo модель, a type выражение оператора указывает тип локальной структуры counterbus_struct в терминах структуры ввода inbus. Обе структуры определяются из Simulink.Bus объект COUNTERBUS. Дополнительные сведения см. в разделе Деривация типов данных из других объектов данных.

Модели Simulink поддерживают виртуальные и невиртуальные шины. Невиртуальные шины считывают свои входные данные из структур данных, хранящихся в непрерывной памяти. Виртуальные шины считывают свои входные данные из несмежной памяти. Дополнительные сведения см. в разделе Типы составных сигналов (Simulink).
Диаграммы Stateflow поддерживают только невиртуальные шины. Входные структуры потока состояний могут принимать сигналы виртуальной шины и преобразовывать их в сигналы невиртуальной шины. Входные структуры потока состояний не могут наследовать свойства из сигналов виртуальной шины. Если вход в диаграмму является виртуальной шиной, задайте свойство Type структуры ввода с помощью спецификации типа формы. Bus: .<object name>
Чтобы отладить структуру Stateflow, откройте окно Точки останова Stateflow и Просмотр и изучите значения полей структуры во время моделирования. Для просмотра значений полей структуры в командной строке используйте точечную нотацию для индексирования в структуру. Дополнительные сведения см. в разделе Проверка и изменение данных и сообщений при отладке.
Определение каждой структуры из Simulink.Bus в базовой рабочей области.
Структуры не могут иметь постоянную область действия.
Структуры объема параметров должны быть настраиваемыми.
Объекты массива данных не могут содержать структуры.
Нельзя определить структуры для машин Stateflow. Дополнительные сведения см. в разделе Обзор объектов потока состояний.
Simulink.Bus (Симулинк)