exponenta event banner

Задать свойства данных

При создании диаграмм Stateflow ® в Simulink ® можно задать свойства данных в инспекторе свойств или в обозревателе моделей.

  • Для использования инспектора свойств:

    1. На вкладке «Моделирование» в группе «Данные проекта» выберите «Панель обозначений» и «Инспектор свойств».

    2. На панели «Символы» выберите объект данных.

    3. На панели «Инспектор свойств» измените свойства данных.

  • Чтобы использовать Обозреватель моделей (Model Explorer):

    1. На вкладке Моделирование (Modeling) в разделе Данные конструкции (Design Data) выберите Обозреватель моделей (Model Explorer).

    2. На панели «Содержимое» выберите объект данных.

    3. На панели «Сообщение» измените свойства данных.

Свойства данных также можно задать программным способом с помощью 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 d2dn], где di - размер i измерение.

  • Чтобы настроить объект данных Stateflow для наследования его размера из соответствующего сигнала Simulink или из его определения в диаграмме, укажите размер –1.

Объем объекта данных определяет, какие размеры можно указать. Память хранилища данных Stateflow наследует все его свойства, включая размер, от хранилища данных Simulink, к которому оно привязано. Для всех других областей размер может быть скаляром, вектором или матрицей с n-измерениями. Дополнительные сведения см. в разделе Задание размера данных потока состояний.

Можно указать размер данных с помощью выражения MATLAB, которое вычисляет допустимую спецификацию размера. Дополнительные сведения см. в разделах Задание размера данных с помощью выражений и Задание свойств данных с помощью выражений MATLAB.

Размер переменной

Указывает, что объект данных изменяет размеры во время моделирования. Этот параметр доступен для входных и выходных данных только при включении свойства диаграммы Поддержка массивов переменного размера. Дополнительные сведения см. в разделе Объявление данных переменного размера в диаграммах потока состояний.

Сложность

Указывает, принимает ли объект данных комплексные значения.

НастройкаОписание
OffОбъект данных не принимает сложные значения.
OnОбъект данных принимает комплексные значения.
InheritedОбъект данных наследует настройку сложности из блока Simulink.

Значение по умолчанию: Off. Дополнительные сведения см. в разделе Сложные данные в диаграммах потока состояний.

Первый индекс

Индекс первого элемента массива данных. Первый индекс может быть любым целым числом. Значение по умолчанию: 0. Это свойство доступно только для диаграмм C.

Напечатать

Тип объекта данных. Чтобы указать тип данных:

Кроме того, в обозревателе моделей можно открыть ассистент типов данных, нажав кнопку Показать ассистент типов данных. Укажите режим данных, а затем укажите тип данных на основе этого режима. Дополнительные сведения см. в разделе Указание типа данных потока состояний.

Примечание

При вводе выражения для типа данных с фиксированной точкой необходимо явно указать масштаб. Например, нельзя ввести неполную спецификацию, такую как fixdt(1,16) в поле Тип. Если явно не указать масштаб, при попытке моделирования модели появляется ошибка.

Блокировать тип данных по инструментам с фиксированной точкой

Предотвращает замену текущего типа фиксированной точки на тип с автоматическим масштабированием, выбранный инструментом Fixed-Point Tool (Fixed-Point Designer). Дополнительные сведения см. в разделе Автоматическое масштабирование с помощью инструмента «Фиксированная точка» (Fixed-Point Designer).

Единица измерения (например, м, м/с ^ 2, N

* м)

Физические единицы для входных и выходных данных. Дополнительные сведения см. в разделе Указание единиц измерения для данных потока состояний.

Начальное значение

Начальное значение объекта данных. Для постоянных данных это свойство называется Constant value. Параметры для указания этого свойства зависят от области объекта данных.

ОбъемУказать для начального значения
Local

Выражение или параметр, определенные в иерархии Stateflow, базовой рабочей области MATLAB или подсистеме с маскированием Simulink. Чтобы указать начальное значение при отсутствии поля Начальное значение (Initial value), откройте Обозреватель моделей (Model Explorer) или диалоговое окно Свойства данных (Data properties) и установите в выпадающем списке Начальное значение (Initial value) значение Expression или Parameter.

  • Expression - Числовые данные преобразуются в значение по умолчанию, равное 0. Для перечисляемых данных значением по умолчанию обычно является первое из перечисленных в enumeration раздел определения. Можно указать другое перечисляемое значение по умолчанию в methods раздел определения. Дополнительные сведения см. в разделе Определение перечисляемых типов данных.

  • Parameter - Объект данных разрешается в переменную в базовой рабочей области с тем же именем.

Значение по умолчанию: Expression.

Constant

Постоянное значение или выражение. Выражение вычисляется при обновлении диаграммы. Результирующее значение используется в качестве константы для выполнения диаграммы.

Если оставить поле Константа (Constant) пустым, числовые данные преобразуются в значение по умолчанию, равное 0. Для перечисляемых данных значением по умолчанию обычно является первое из перечисленных в enumeration раздел определения. Можно указать другое перечисляемое значение по умолчанию в methods раздел определения. Дополнительные сведения см. в разделе Определение перечисляемых типов данных.

ParameterНельзя ввести значение. Диаграмма наследует начальное значение от параметра.
InputНельзя ввести значение. Диаграмма наследует начальное значение из входного сигнала Simulink на назначенном порте.
Output

Выражение или параметр, определенные в иерархии Stateflow, базовой рабочей области MATLAB или подсистеме с маскированием Simulink. Чтобы указать начальное значение при отсутствии поля Начальное значение (Initial value), откройте Обозреватель моделей (Model Explorer) или диалоговое окно Свойства данных (Data properties) и установите в выпадающем списке Начальное значение (Initial value) значение Expression или Parameter.

  • Expression - Числовые данные преобразуются в значение по умолчанию, равное 0. Для перечисляемых данных значением по умолчанию обычно является первое из перечисленных в enumeration раздел определения. Можно указать другое перечисляемое значение по умолчанию в methods раздел определения. Дополнительные сведения см. в разделе Определение перечисляемых типов данных.

  • Parameter - Объект данных разрешается в переменную в базовой рабочей области с тем же именем.

Значение по умолчанию: Expression.

Data Store MemoryНельзя ввести значение. Диаграмма наследует начальное значение из хранилища данных Simulink, в которое она получает разрешение.

Дополнительные сведения об использовании выражения для задания начального значения см. в разделе Задание свойств данных с помощью выражений MATLAB.

Предельный диапазон

Диапазон допустимых значений для этого объекта данных. Диаграммы потока состояний используют этот диапазон для проверки объекта данных во время моделирования.

  • Минимум - наименьшее значение, допустимое для элемента данных во время моделирования. Можно ввести выражение или параметр, вычисляющий числовое скалярное значение.

  • Максимум - наибольшее значение, допустимое для элемента данных во время моделирования. Можно ввести выражение или параметр, вычисляющий числовое скалярное значение.

Наименьшее значение, которое можно задать для параметра «Минимум», - -inf. Наибольшее значение, которое можно задать для параметра «Максимум», - inf.

Минимальное и максимальное значения можно задать с помощью выражения MATLAB. Дополнительные сведения см. в разделе Задание свойств данных с помощью выражений MATLAB.

Примечание

Модель Simulink использует свойства предельного диапазона для вычисления масштабирования с наилучшей точностью для типов данных с фиксированной точкой. Перед выбором параметра «Рассчитать наиболее точное масштабирование» укажите минимальное или максимальное значение. Дополнительные сведения см. в разделе Расчет наиболее точного масштабирования.

Добавить в окно просмотра

Позволяет просматривать значения данных в окне «Точки останова и контроль состояния». Дополнительные сведения см. в разделе Просмотр данных в окне точек останова и наблюдения.

Свойства данных с фиксированной точкой

В обозревателе моделей при установке в режиме помощника по типам данных значения Fixed pointПомощник по типам данных отображает поля для указания дополнительной информации о данных с фиксированной точкой.

Signedness

Указывает, являются ли данные с фиксированной точкой 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).

Для вычисления значений масштабирования с наилучшей точностью:

  1. Укажите свойства предельного диапазона.

  2. Щелкните Рассчитать наиболее точное масштабирование (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 принимает значение по умолчанию.

СобственностьЗначение по умолчанию
Размер

−1 (наследуется), для входов, параметров и функциональных выходов

1 (скаляр), для других объектов данных

Первый индекс0
Начальное значение0.0
Предельный диапазонМинимум-inf
 Максимумinf
Свойства данных с фиксированной точкойДлина слова16
 Длина фракции0
 Наклон1.0
 Уклон0.0

Задание свойств данных с помощью выражений MATLAB

В Инспекторе свойств и Обозревателе моделей можно ввести выражения MATLAB в качестве значений для следующих свойств:

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

Собственность ФункцияОписание
РазмерsizeВозвращает размер объекта данных
НапечататьtypeВозвращает тип объекта данных
fixdt (Симулинк)Возвращает значение Simulink.NumericType объект, описывающий тип данных с фиксированной или плавающей точкой
fi (Конструктор фиксированных точек)Возвращает числовой объект с фиксированной точкой
МинимумminВозвращает наименьший элемент или элементы массива
МаксимумmaxВозвращает наибольший элемент или элементы массива

Дополнительные сведения см. в разделе Задание размера данных с помощью выражений и деривация типов данных из других объектов данных.

См. также

| | | (Конструктор фиксированных точек) | (Simulink) | (Simulink) | (Симулинк)

Связанные темы