Лучшие практики для использования перечисленных данных

Для повышения читаемости Stateflow® график, используйте перечисленные данные. С помощью перечисленных данных можно:

  • Создайте ограниченное множество значений и обратитесь к этим значениям по имени.

  • Сгруппировать связанные значения в отдельные типы данных.

  • Избегайте определения длинного списка констант.

Перечисленные данные поддерживаются в диаграммах Stateflow в Simulink® модели. Для получения дополнительной информации смотрите Ссылку значений по Имени при помощи перечисленных данных.

Инструкции по определению перечисленных типов данных

Используйте уникальное имя для каждого перечисляемого типа

Чтобы избежать конфликтов по совпадению имен, имя перечисляемого типа данных не может совпадать с именем:

  • Другой тип данных

  • Объект данных на диаграмме Stateflow

  • Переменная в MATLAB® базовое рабочее пространство

Используйте то же имя для перечисляемого типа и файла определения класса

Чтобы разрешить разрешение перечисленных типов данных для моделей Simulink, имя файла MATLAB, который содержит определение типа, должно совпадать с именем типа данных.

Применение изменений в определении перечисляемого типа

Когда вы обновляете перечисленное определение типов для открытой модели, изменения не берут эффекта сразу. Чтобы увидеть эффекты обновления определения типов:

  1. Сохраните и закройте модель.

  2. Удалите все образцы типа данных из базового рабочего пространства MATLAB. Чтобы найти эти образцы, введите whos в командной строке.

  3. Откройте модель и запустите симуляцию или сгенерируйте код с помощью Simulink Coder™.

Инструкции по ссылкам на перечисленные данные

Убедитесь, что уникальное разрешение имен для непроверенных идентификаторов

Если для обращения к перечисленным значениям на графике используются непроверенные идентификаторы, убедитесь, что каждое перечисленное имя принадлежит уникальному типу перечисленных данных.

Используйте уникальные идентификаторы для перечисленных значений

Если перечисленное значение использует тот же идентификатор, что и объект данных или поле шины, график не разрешает идентификатор правильно. Например, эта схема показывает этапы, на которых график пытается разрешить идентификатор Colors.Red.

Установите начальные значения перечисленных данных с помощью префиксных идентификаторов

Если вы принимаете решение задать начальное значение для перечисленных данных, необходимо использовать префиксный идентификатор в Initial value поле Property Inspector. Для примера, BasicColors.Red является допустимым идентификатором, но Red is not. Начальное значение должно быть рассчитано на допустимое выражение MATLAB.

Улучшите читаемость сгенерированного кода при помощи префиксных идентификаторов

Если вы добавляете префиксы к перечисленным именам в сгенерированном коде, вы улучшаете удобочитаемость и избегаете конфликтов по совпадению имен с глобальными символами. Для получения дополнительной информации смотрите Использование перечисленных данных в Сгенерированном коде (Simulink Coder).

Инструкции и ограничения для перечисленных данных

Не вводите минимальные или максимальные значения для перечисленных данных

Для перечисленных данных оставьте Minimum и Maximum поля Property Inspector пустыми. График игнорирует все значения, которые вы вводите в эти поля.

Отображение этих полей в Property Inspector зависит от того Type какая опция поля используется для определения перечисленных данных.

Type опции поляВнешний вид Minimum и Maximum полей
Enum: <class name>Недоступно
<data type expression> или Inherit from SimulinkДоступный

Не присваивайте перечисленные значения постоянным данным

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

Не используйте ml Оператор пространства имен для доступа к перечисленным данным

The ml оператор не поддерживает перечисленные данные.

Не задайте перечисленные данные на уровне иерархии машины

Родительские данные не поддерживаются для перечисленных типов.

Похожие темы