Разрешение свойств данных из объектов Simulink Signal

Локальные и выходные данные Stateflow ® в графиках могут явно наследовать свойства от Simulink.Signal объекты в рабочем пространстве модели или базовом рабочем пространстве. Этот процесс называется разрешением сигнала и требует, чтобы разрешенный сигнал имел то же имя, что выход графика или локальные данные.

Для получения информации о разрешении сигнала Simulink ® смотрите Symbol Resolution (Simulink) и Symbol Resolution Process (Simulink).

Унаследованные свойства

Когда Stateflow локальные или выходные данные разрешаются к объектам сигнала Simulink, они наследуют эти свойства:

  • Размер

  • Сложность

  • Напечатать

  • Минимальное значение

  • Максимальное значение

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

  • Класс памяти

Класс памяти контролирует внешний вид данных графика в сгенерированном коде. Смотрите Организуйте Данные Параметра в Структуру при Помощи Struct Класса памяти (Embedded Coder).

Включите разрешение сигнала

Чтобы включить явное разрешение сигнала, выполните следующие шаги:

  1. Установите параметры конфигурации > Диагностика > Валидность данных > Разрешение сигнала на значение, отличное от None. Для получения дополнительной информации о других опциях смотрите Разрешение сигнала (Simulink).

  2. В рабочем пространстве модели, базовом рабочем пространстве или словаре данных задайте Simulink.Signal объект со свойствами, которые необходимо наследовать данным Stateflow. Для получения дополнительной информации о создании сигналов Simulink смотрите Simulink.Signal (Simulink).

  3. Добавьте выходные или локальные данные к графику.

  4. Введите имя данных, совпадающее с именем Simulink.Signal объект.

  5. В свойствах данных установите флажок Data must resolve to signal object. После установки этого флажка диалоговое окно удаляет или ослабляет свойства, которые наследуются вашими данными от сигнала.

Простой пример

Эта модель показывает, как график разрешает локальные и выходные данные в Simulink.Signal объекты.

В базовом рабочем пространстве существует три Simulink.Signal каждый из объектов с различным набором свойств.

  • y1 имеет следующие свойства: Type = double, Размерности = 1, и класс памяти = Model default.

  • y2 имеет следующие свойства: Type = uint32, Размерности = [2 2], и класс памяти = Auto.

  • local имеет следующие свойства: Type = single, Размерности = 1, и класс памяти = ExportedGlobal.

График содержит три объекта данных - два выхода и локальную переменную - которые разрешатся к сигналу с таким же именем.

Когда вы создаете модель, каждый объект данных наследует свойства идентично названного сигнала.

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

/*
 * Exported States
 *
 * Note: Exported states are block states with an exported
 * global storage class designation.
 *
 */
extern real32_T local;                  /* '<Root>/Signal Object Chart' */

См. также

(Simulink)

Похожие темы