jc_0644: Type setting

Рекомендации по идентификатору подраздела

  • NA-MAAB - Нет рекомендаций

  • JMAAB - a

Версии MATLAB

Все

Правило

Идентификатор подраздела a

Тип данных не должен быть установлен при помощи блока или Stateflow® словарь данных, когда тип данных задан объектом данных.

Исключения

  • Внутри переиспользуемой функции

  • Data Type Conversion блок

  • Типы данных, заданные при помощи fixdt

  • Boolean или double типы

Пользовательский параметр

Неприменимо

Пример - Исправление

Type задает объект данных.

Объяснение

Идентификатор подраздела a:

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

  • Когда тип установлен в блоке, поддерживаемость зависит от изменения типа сигнальной линии.

  • Исключения:

    • Когда структуры блоков идентичны, различия между типом входных/выходных данных могут привести к другому исходному коду C, который не может быть повторно использован. Для переиспользуемых функций типы данных входных/выходных блоков должны быть заданы на уровне подсистемы.

    • Блок Data Type Conversion используется, чтобы явным образом задать тип данных.

    • Когда тип данных fixdt (с фиксированной точкой), тип данных должен быть установлен индивидуально, потому что каждый блок может иметь различные точки данных. В этом сценарии невозможно использовать только объект данных для установки типа данных.

    • Для некоторых типов блоков необходимо задать значение Boolean.

      Double тип обычно используется в моделях объекта управления и для быстрого прототипирования управления (RCP), поэтому он не входит в возможности этого правила. Встроенное программное обеспечение использует двойной тип в конкретных ситуациях. Используйте осторожность при настройке параметров этих блоков, чтобы минимизировать использование double тип.

Верификация

Проверка Model Advisor: Проверяйте настройку типа по объектам данных (Simulink Check)

Последнее изменение

R2020a

Введенный в R2020a