При создании диаграмм Stateflow ® в Simulink ® можно задать свойства данных в инспекторе свойств или в обозревателе моделей.
Для использования инспектора свойств:
На вкладке «Моделирование» в группе «Данные проекта» выберите «Панель обозначений» и «Инспектор свойств».
На панели «Символы» выберите объект данных.
На панели «Инспектор свойств» измените свойства данных.
Чтобы использовать Обозреватель моделей (Model Explorer):
На вкладке Моделирование (Modeling) в разделе Данные конструкции (Design Data) выберите Обозреватель моделей (Model Explorer).
На панели «Содержимое» выберите объект данных.
На панели «Сообщение» измените свойства данных.
Свойства данных также можно задать программным способом с помощью Stateflow.Data объекты. Дополнительные сведения о программном интерфейсе Stateflow см. в разделе Обзор API Stateflow.
Свойства зависят от области действия и типа объекта данных. Для многих свойств данных можно ввести выражения или значения параметров. Использование параметров для задания свойств для многих объектов данных упрощает обслуживание модели, поскольку можно обновить несколько свойств, изменив один параметр.
Эти свойства данных можно задать в:
Основные и дополнительные разделы инспектора свойств.
Вкладка Общие (General) Обозревателя моделей (Model Explorer).
Имя объекта данных. Дополнительные сведения см. в разделе Рекомендации по именованию объектов Stateflow.
Расположение, в котором данные находятся в памяти, относительно их родительского объекта.
| Настройка | Описание |
|---|---|
Local | Данные определены только в текущей диаграмме. |
Constant | Постоянное значение только для чтения, видимое родительскому объекту Stateflow и его потомкам. |
Parameter | Константа, значение которой определено в базовой рабочей области MATLAB ® или получено из параметра блока Simulink, который определяется и инициализируется в родительской маскированной подсистеме. Имя объекта данных Stateflow должно совпадать с именем переменной MATLAB или параметром Simulink. Дополнительные сведения см. в разделе Совместное использование параметров с Simulink и рабочей областью MATLAB. |
Input | Входной аргумент функции, если родительский элемент является графической функцией, таблицей истинности или функцией MATLAB. В противном случае модель Simulink передает данные на диаграмму через входной порт в блоке Stateflow. Дополнительные сведения см. в разделе Совместное использование входных и выходных данных с Simulink. |
Output | Возвращает значение функции, если родительской является графическая функция, таблица истинности или функция MATLAB. В противном случае диаграмма предоставляет данные модели Simulink через выходной порт в блоке Stateflow. Дополнительные сведения см. в разделе Совместное использование входных и выходных данных с Simulink. |
Data Store Memory | Объект данных, связывающийся с хранилищем данных Simulink, который является сигналом, функционирующим как глобальная переменная. Все блоки в модели имеют доступ к этому сигналу. Эта привязка позволяет диаграмме считывать и записывать данные в хранилище данных Simulink, обмениваясь глобальными данными с моделью. Имя объекта Stateflow должно совпадать с именем хранилища данных Simulink. Дополнительные сведения см. в разделе Доступ к памяти хранилища данных из диаграммы. |
Temporary | Данные, сохраняющиеся только во время выполнения функции. Для диаграмм C можно определить временные данные только для графической функции, таблицы истинности или функции MATLAB. |
Exported | Данные модели Simulink, доступные для внешнего кода, определенного в иерархии Stateflow. Экспортируемые данные можно определить только для машины Stateflow. |
Imported | Данные, родительские модели Simulink, которые определяются внешним кодом, встроенным в машину Stateflow. Импортированные данные можно определить только для машины Stateflow. |
Индекс порта, связанного с объектом данных. Это свойство применяется только к входным и выходным данным. См. раздел Совместное использование входных и выходных данных с Simulink.
Указывает, обновляется ли переменная за дискретное или непрерывное время. Это свойство применяется только в том случае, если диаграмма настроена на непрерывное моделирование. См. раздел Непрерывное моделирование во времени в Stateflow.
Указывает, что выходные или локальные данные явно наследуют свойства от Simulink.Signal объекты с таким же именем в базовой рабочей области MATLAB или в рабочей области модели Simulink. Данные могут наследовать следующие свойства:
Размер
Сложность
Напечатать
Единица
Минимальное значение
Максимальное значение
Начальное значение
Класс хранения
Режим выборки (для выходных данных блока таблицы истинности)
Эта опция доступна, только если для параметра конфигурации модели Разрешение сигнала (Signal resolution) задано значение, отличное от None. Дополнительные сведения см. в разделе Разрешение свойств данных из сигнальных объектов Simulink.
Размер объекта данных. Размер может быть скалярным значением или вектором значений MATLAB.
Чтобы задать скаляр, задайте свойству Size значение 1 или оставьте поле пустым.
Чтобы указать n-by-1 вектор столбца, задайте свойству Size значение n.
Задание 1-по-n вектор строки, задайте свойству Size значение [1 .n]
Чтобы указать nоколо-m матрица, задайте свойству Size значение [.n
m]
Чтобы указать n-мерный массив, задайте свойству Size значение [, где d1
d2 ⋯ dn]di - размер i-е измерение.
Чтобы настроить объект данных Stateflow для наследования его размера из соответствующего сигнала Simulink или из его определения в диаграмме, укажите размер –1.
Объем объекта данных определяет, какие размеры можно указать. Память хранилища данных Stateflow наследует все его свойства, включая размер, от хранилища данных Simulink, к которому оно привязано. Для всех других областей размер может быть скаляром, вектором или матрицей с n-измерениями. Дополнительные сведения см. в разделе Задание размера данных потока состояний.
Можно указать размер данных с помощью выражения MATLAB, которое вычисляет допустимую спецификацию размера. Дополнительные сведения см. в разделах Задание размера данных с помощью выражений и Задание свойств данных с помощью выражений MATLAB.
Указывает, что объект данных изменяет размеры во время моделирования. Этот параметр доступен для входных и выходных данных только при включении свойства диаграммы Поддержка массивов переменного размера. Дополнительные сведения см. в разделе Объявление данных переменного размера в диаграммах потока состояний.
Указывает, принимает ли объект данных комплексные значения.
| Настройка | Описание |
|---|---|
Off | Объект данных не принимает сложные значения. |
On | Объект данных принимает комплексные значения. |
Inherited | Объект данных наследует настройку сложности из блока Simulink. |
Значение по умолчанию: Off. Дополнительные сведения см. в разделе Сложные данные в диаграммах потока состояний.
Индекс первого элемента массива данных. Первый индекс может быть любым целым числом. Значение по умолчанию: 0. Это свойство доступно только для диаграмм C.
Тип объекта данных. Чтобы указать тип данных:
В раскрывающемся списке Тип выберите встроенный тип.
В поле Тип введите выражение, которое вычисляет тип данных. Используйте одно из следующих выражений:
Вызов fixdt (Simulink) для создания Simulink.NumericType Объект (Simulink), описывающий тип данных с фиксированной или плавающей точкой. См. раздел Указание данных с фиксированной точкой.
Вызов type для указания типа ранее определенных данных. См. раздел Деривация типов данных из других объектов данных.
A Simulink.AliasType Объект (Simulink), определяющий псевдоним типа данных в базовой рабочей области MATLAB. См. раздел Указание типов данных с помощью псевдонима Simulink.
Дополнительные сведения см. в разделе Задание свойств данных с помощью выражений MATLAB.
Кроме того, в обозревателе моделей можно открыть ассистент типов данных, нажав кнопку Показать ассистент типов данных.
Укажите режим данных, а затем укажите тип данных на основе этого режима. Дополнительные сведения см. в разделе Указание типа данных потока состояний.
Примечание
При вводе выражения для типа данных с фиксированной точкой необходимо явно указать масштаб. Например, нельзя ввести неполную спецификацию, такую как fixdt(1,16) в поле Тип. Если явно не указать масштаб, при попытке моделирования модели появляется ошибка.
Предотвращает замену текущего типа фиксированной точки на тип с автоматическим масштабированием, выбранный инструментом Fixed-Point Tool (Fixed-Point Designer). Дополнительные сведения см. в разделе Автоматическое масштабирование с помощью инструмента «Фиксированная точка» (Fixed-Point Designer).
Физические единицы для входных и выходных данных. Дополнительные сведения см. в разделе Указание единиц измерения для данных потока состояний.
Начальное значение объекта данных. Для постоянных данных это свойство называется Constant value. Параметры для указания этого свойства зависят от области объекта данных.
| Объем | Указать для начального значения |
|---|---|
Local | Выражение или параметр, определенные в иерархии Stateflow, базовой рабочей области MATLAB или подсистеме с маскированием Simulink. Чтобы указать начальное значение при отсутствии поля Начальное значение (Initial value), откройте Обозреватель моделей (Model Explorer) или диалоговое окно Свойства данных (Data properties) и установите в выпадающем списке Начальное значение (Initial value) значение
Значение по умолчанию: |
Constant | Постоянное значение или выражение. Выражение вычисляется при обновлении диаграммы. Результирующее значение используется в качестве константы для выполнения диаграммы. Если оставить поле Константа (Constant) пустым, числовые данные преобразуются в значение по умолчанию, равное 0. Для перечисляемых данных значением по умолчанию обычно является первое из перечисленных в |
Parameter | Нельзя ввести значение. Диаграмма наследует начальное значение от параметра. |
Input | Нельзя ввести значение. Диаграмма наследует начальное значение из входного сигнала Simulink на назначенном порте. |
Output | Выражение или параметр, определенные в иерархии Stateflow, базовой рабочей области MATLAB или подсистеме с маскированием Simulink. Чтобы указать начальное значение при отсутствии поля Начальное значение (Initial value), откройте Обозреватель моделей (Model Explorer) или диалоговое окно Свойства данных (Data properties) и установите в выпадающем списке Начальное значение (Initial value) значение
Значение по умолчанию: |
Data Store Memory | Нельзя ввести значение. Диаграмма наследует начальное значение из хранилища данных Simulink, в которое она получает разрешение. |
Дополнительные сведения об использовании выражения для задания начального значения см. в разделе Задание свойств данных с помощью выражений MATLAB.
Диапазон допустимых значений для этого объекта данных. Диаграммы потока состояний используют этот диапазон для проверки объекта данных во время моделирования.
Минимум - наименьшее значение, допустимое для элемента данных во время моделирования. Можно ввести выражение или параметр, вычисляющий числовое скалярное значение.
Максимум - наибольшее значение, допустимое для элемента данных во время моделирования. Можно ввести выражение или параметр, вычисляющий числовое скалярное значение.
Наименьшее значение, которое можно задать для параметра «Минимум», - -inf. Наибольшее значение, которое можно задать для параметра «Максимум», - inf.
Минимальное и максимальное значения можно задать с помощью выражения MATLAB. Дополнительные сведения см. в разделе Задание свойств данных с помощью выражений MATLAB.
Примечание
Модель Simulink использует свойства предельного диапазона для вычисления масштабирования с наилучшей точностью для типов данных с фиксированной точкой. Перед выбором параметра «Рассчитать наиболее точное масштабирование» укажите минимальное или максимальное значение. Дополнительные сведения см. в разделе Расчет наиболее точного масштабирования.
Позволяет просматривать значения данных в окне «Точки останова и контроль состояния». Дополнительные сведения см. в разделе Просмотр данных в окне точек останова и наблюдения.
В обозревателе моделей при установке в режиме помощника по типам данных значения Fixed pointПомощник по типам данных отображает поля для указания дополнительной информации о данных с фиксированной точкой.

Указывает, являются ли данные с фиксированной точкой Signed или Unsigned. Подписанные данные могут представлять положительные и отрицательные значения. Неподписанные данные представляют только положительные значения. Значение по умолчанию: Signed.
Указывает битовый размер слова, содержащего квантованное целое число. Большие размеры слов представляют большие значения с большей точностью, чем малые размеры слов. Значение по умолчанию - 16.
Длина слова может быть любым целым числом от 0 до 128 для данных уровня диаграммы этих областей:
Input
Output
Parameter
Data Store Memory
Для других данных Stateflow длина слова может быть любым целым числом от 0 до 32.
Длину слова можно задать с помощью выражения MATLAB. Дополнительные сведения см. в разделе Задание свойств данных с помощью выражений MATLAB.
Определяет метод масштабирования данных с фиксированной точкой во избежание условий переполнения и минимизации ошибок квантования. Метод по умолчанию: Binary point масштабирование.
| Настройка | Описание |
|---|---|
Binary point | При выборе этого режима помощник по типам данных отображает поле Длина дроби, в котором указывается местоположение двоичной точки. Длина дроби может быть любым целым числом. Значение по умолчанию - 0. Положительное целое число перемещает двоичную точку влево от самого правого бита на эту величину. Отрицательное целое число перемещает двоичную точку дальше вправо от самого правого бита.
|
Slope and bias | При выборе этого режима в помощнике по типам данных отображаются поля для ввода параметров «Уклон» и «Смещение» для схемы кодирования с фиксированной точкой. Уклон может быть любым положительным действительным числом. Значение по умолчанию - 1,0. Смещение может быть любым реальным числом. Значение по умолчанию - 0,0. Можно ввести уклон и смещение в виде выражений, содержащих параметры, определенные в базовом рабочем пространстве MATLAB. |
По возможности используйте двоичное масштабирование для упрощения реализации данных с фиксированной точкой в сгенерированном коде. Операции с данными с фиксированной точкой, которые используют двоичное масштабирование, выполняются с простыми битовыми сдвигами и устраняют дорогостоящие реализации кода, необходимые для отдельных значений наклона и смещения. Дополнительные сведения о масштабировании с фиксированной точкой см. в разделе Масштабирование (Конструктор с фиксированной точкой).
С помощью выражения MATLAB можно задать длину дроби, наклон и смещение. Дополнительные сведения см. в разделе Задание свойств данных с помощью выражений MATLAB.
Указывает, следует ли наследовать параметр переопределения типа данных инструмента «Фиксированная точка», который применяется к этой модели. Если данные не наследуют параметр для всей модели, применяется указанный тип данных.
Указывает, следует ли вычислять значения наилучшей точности для Binary point и Slope and bias масштабирование на основе значений в полях Минимум (Minimum) и Максимум (Maximum) в разделе Предел диапазона (Limit range).
Для вычисления значений масштабирования с наилучшей точностью:
Укажите свойства предельного диапазона.
Щелкните Рассчитать наиболее точное масштабирование (Calculate Best-Precision Sc
Значения масштабирования с наилучшей точностью отображаются в поле «Длина фракции» или в полях «Уклон» и «Смещение». Дополнительные сведения см. в разделе Максимизация точности (конструктор фиксированных точек).
Примечание
Свойства предельного диапазона не применяются к Constant и Parameter области. Для Constant, программа Simulink вычисляет значения масштабирования на основе параметра «Начальное значение». Программа не может рассчитать масштабирование с лучшей точностью для данных Parameter сфера применения.
Отображает информацию о типе данных с фиксированной точкой, определенном в помощнике по типам данных:
Minimum и Maximum отображение тех же значений, которые отображаются в соответствующих полях Минимум (Minimum) и Максимум (Maximum) в разделе Диапазон пределов (Limit range).
Representable minimum, Representable maximum, и Precision показать минимальное значение, максимальное значение и точность, которые может представлять тип данных с фиксированной точкой.
Если значение поля не может быть определено без предварительной компиляции модели, в подпанели Сведения о фиксированной точке (Fixed-point details) значение отображается как Unknown.

Значения, отображаемые подпанелью Сведения о фиксированной точке (Fixed-point details), не обновляются автоматически при изменении значений, определяющих тип данных о фиксированной точке. Чтобы обновить значения, показанные в подпанели Сведения о фиксированной точке (Fixed-point details), щелкните Обновить сведения (Refresh Details).
Нажатие кнопки Обновить подробности (Refresh Details) не изменяет модель. Он изменяет только отображение. Чтобы применить отображаемые значения, нажмите кнопку «Применить» или «ОК».
Подпанель сведений о фиксированных точках указывает на любую ошибку, возникающую в результате определения типа данных с фиксированными точками. Например, на этом рисунке показаны две ошибки.

Строка с меткой Maximum указывает, что значение, указанное в поле Maximum раздела Limit range, не может быть представлено типом данных с фиксированной точкой. Чтобы исправить ошибку, внесите одно из следующих изменений, чтобы тип данных с фиксированной точкой мог представлять максимальное значение:
Уменьшите значение в поле Maximum раздела Limit range.
Увеличить длину Word.
Уменьшить длину дроби.
Строка с меткой Minimum показывает ошибку Cannot evaluate потому что оценка выражения MySymbol, указанное в поле Минимум раздела Предельный диапазон, не возвращает числовое значение. Если выражение не вычисляется успешно, в подпанели «Сведения о фиксированных точках» вместо недоступного значения отображается нерасчетное выражение (усечение до 10 символов при необходимости). Чтобы исправить эту ошибку, определите MySymbol в базовой рабочей области для предоставления числового значения. При нажатии кнопки Обновить подробные данные индикатор ошибки и описание удаляются, а значение MySymbol появляется вместо нерасчетного текста.
Свойства ведения журнала для данных можно задать в:
Раздел «Ведение журнала» инспектора свойств.
Вкладка Ведение журнала (Logging) Обозревателя моделей (Model Explorer).
Сохраняет значение данных в базовом рабочем пространстве MATLAB во время моделирования. Дополнительные сведения см. в разделе Выходные данные моделирования журнала для состояний и данных.
Определяет данные как контрольную точку. Контрольная точка - это сигнал, который можно наблюдать в блоке плавающей области в модели. Объекты данных могут быть контрольными точками, если:
Область действия: Local.
Родительский объект не является машиной Stateflow.
Тип данных не ml.
Дополнительные сведения см. в разделе Мониторинг контрольных точек в диаграммах потока состояний.
Указывает имя, связанное с записанными в журнал данными сигнала. Программное обеспечение Simulink по умолчанию использует имя сигнала в качестве имени регистрации. Чтобы указать имя пользовательского журнала, выберите Custom из списка и введите новое имя в соседнее поле редактирования.
Ограничивает объем данных, зарегистрированных для последних проб.
Ограничивает объем данных, регистрируемых путем пропуска проб. Например, коэффициент прореживания 2 сохраняет каждую другую выборку.
Дополнительные свойства данных можно задать в:
Вкладка «Информация» инспектора свойств.
Вкладка Описание (Description) Обозревателя моделей (Model Explorer).
Присваивает значение объекта данных переменной с тем же именем в базовой рабочей области MATLAB в конце моделирования. Эта опция доступна только в обозревателе моделей для диаграмм, использующих C в качестве языка действий. Дополнительные сведения см. в разделе Рабочие пространства модели (Simulink).
Единицы измерения, связанные с объектом данных. Единица измерения в этом поле находится с объектом данных в иерархии Stateflow. Это свойство доступно только в обозревателе моделей для диаграмм C.
Описание объекта данных. Можно ввести краткие описания данных в иерархии.
Ссылка на онлайн-документацию для объекта данных. Можно ввести URL-адрес веб-сайта или команду MATLAB, которая отображает документацию в соответствующем интерактивном формате, например HTML-файл или текст в окне команд MATLAB. Если щелкнуть гиперссылку Документ (Document), Stateflow выполнит оценку ссылки и отобразит документацию.
Если поле свойства оставлено незаполненным, Stateflow принимает значение по умолчанию.
| Собственность | Значение по умолчанию | |
|---|---|---|
| Размер |
| |
| Первый индекс | 0 | |
| Начальное значение | 0.0 | |
| Предельный диапазон | Минимум | -inf |
| Максимум | inf | |
| Свойства данных с фиксированной точкой | Длина слова | 16 |
| Длина фракции | 0 | |
| Наклон | 1.0 | |
| Уклон | 0.0 | |
В Инспекторе свойств и Обозревателе моделей можно ввести выражения MATLAB в качестве значений для следующих свойств:
Предельный диапазон: минимальный и максимальный
Свойства данных с фиксированной точкой: длина слова, длина дроби, наклон и смещение
Выражения могут содержать комбинацию числовых значений, констант, параметров, переменных, арифметических операций, параметров, констант, арифметических операторов и вызовов функций MATLAB. Например, эти функции можно использовать для задания свойств данных.
| Собственность | Функция | Описание |
|---|---|---|
| Размер | size | Возвращает размер объекта данных |
| Напечатать | type | Возвращает тип объекта данных |
fixdt (Симулинк) | Возвращает значение Simulink.NumericType объект, описывающий тип данных с фиксированной или плавающей точкой | |
fi (Конструктор фиксированных точек) | Возвращает числовой объект с фиксированной точкой | |
| Минимум | min | Возвращает наименьший элемент или элементы массива |
| Максимум | max | Возвращает наибольший элемент или элементы массива |
Дополнительные сведения см. в разделе Задание размера данных с помощью выражений и деривация типов данных из других объектов данных.
max | min | size | fi (Конструктор фиксированных точек) | fixdt (Simulink) | Simulink.AliasType (Simulink) | Simulink.NumericType (Симулинк)