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