Моделирование стиля

hisl_0032: имена Объекта модели

ID: Заголовокhisl_0032: имена Объекта модели
Описание

Для следующих имен объекта модели:

  • Сигналы

  • Параметры

  • Блоки

  • Названные объекты Stateflow® (состояния, Поля, Simulink® Functions, Графические функции, Таблицы истинности)

Использование:

  • Эти символы: a-z, A-Z, 0-9 и подчеркивание (_).

  • Строки, которые являются меньше чем 32 символами.

Не делайте:

  • Запустите имя с номера.

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

  • Используйте больше чем одно последовательное подчеркивание.

  • Используйте зарезервированные идентификаторы.

Примечания

Зарезервированные имена:

  • Ключевые слова MATLAB®

  • Зарезервированные слова для C, C++ и генерации кода. Для полного списка смотрите Зарезервированные слова (Simulink Coder).

  • int8, uint8

  • int16, uint16

  • int32, uint32

  • inf, Inf

  • NaN, nan

  • eps

  • intmin, intmax

  • realmin, realmax

  • \Pi

  • бесконечность

  • Nil

Объяснение
  • Удобочитаемость

  • Ограничения компилятора

  • Трассируемость модели к сгенерированному коду

Образцовые проверки советника
  • Задачей> Моделирование Стандартов для DO-178C/DO-331> Системы Высокой Целостности> Называющий> имена объекта модели Проверки

  • Задачей> Моделирование Стандартов для IEC 61508> Системы Высокой Целостности> Называющий> имена объекта модели Проверки

  • Задачей> Моделирование Стандартов для IEC 62304> Системы Высокой Целостности> Называющий> имена объекта модели Проверки

  • Задачей> Моделирование Стандартов для EN 50128> Системы Высокой Целостности> Называющий> имена объекта модели Проверки

  • Задачей> Моделирование Стандартов для ISO 26262> Системы Высокой Целостности> Называющий> имена объекта модели Проверки

Для получения дополнительной информации проверки смотрите имена объекта модели Проверки.

Смотрите также
Ссылки

MISRA C:2012, правило 21.2

В последний раз измененныйR2018b
Пример

Рекомендуемый

  • Имя блока: My_Controller

  • Имя сигнала: a, B

Не рекомендуемый

  • Имя блока: My Controller

  • Имя сигнала: 12a__b

hisl_0061: Уникальные идентификаторы для ясности

ID: Заголовокhisl_0061: Уникальные идентификаторы для ясности
ОписаниеПри разработке модели:
AИспользуйте уникальные идентификаторы для Сигналов Simulink.
BЗадайте уникальные идентификаторы через несколько осциллографов в рамках графика.
ПримечанияГенератор кода разрешает конфликты между идентификаторами так, чтобы символы в сгенерированном коде были уникальны. Процесс называется искажением имени.
ОбъяснениеA, B Улучшите удобочитаемость графической модели и сопоставляющий между идентификаторами в образцовом и сгенерированном коде.
Образцовая проверка советника
  • Задачей> Моделирование Стандартов для DO-178C/DO-331> Системы Высокой Целостности> Stateflow> диаграммы Stateflow Проверки для исключительно заданных объектов данных

  • Задачей> Моделирование Стандартов для IEC 61508> Системы Высокой Целостности> Stateflow> диаграммы Stateflow Проверки для исключительно заданных объектов данных

  • Задачей> Моделирование Стандартов для IEC 62304> Системы Высокой Целостности> Stateflow> диаграммы Stateflow Проверки для исключительно заданных объектов данных

  • Задачей> Моделирование Стандартов для EN 50128> Системы Высокой Целостности> Stateflow> диаграммы Stateflow Проверки для исключительно заданных объектов данных

  • Задачей> Моделирование Стандартов для ISO 26262> Системы Высокой Целостности> Stateflow> диаграммы Stateflow Проверки для исключительно заданных объектов данных

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

Ссылки
  • DO 331, Раздел MB.6.3.2.b 'Низкоуровневые требования точен и сопоставим'

  • IEC 61508-3, Таблица A.3 (2) ‘Язык программирования со строгим контролем типов’
    IEC 61508-3, Таблица A.3 (3) - Языковое подмножество
    IEC 61508-3, Таблица A.4 (5) - Дизайн и стандарты кодирования

  • IEC 62304, 5.5.3 - критерии допустимости Программного блока

  • ISO 26262-6, Таблица 1 (1b) - Использование языковых подмножеств
    ISO 26262-6, Таблица 1 (1c) 'Осуществление строгого контроля типов'
    ISO 26262-6, Таблица 1 (1d) - Использование защитных методов реализации
    ISO 26262-6, Таблица 1 (1e) - Использование установленных принципов разработки
    ISO 26262-6, Таблица 1 (1f) - Использование однозначного графического представления
    ISO 26262-6, Таблица 1 (1g) - Использование руководств по стилю
    ISO 26262-6, Таблица 1 (1 ч) - Использование соглашений о присвоении имен

  • EN 50128, таблица A.3 (1) - безопасное программирование
    EN 50128, таблица A.4 (8) 'язык программирования со строгим контролем типов'
    EN 50128, таблица A.4 (11) - языковое подмножество
    EN 50128, таблица A.12 (1) 'кодирование стандарта'
    EN 50128, таблица A.12 (2) 'руководство стиля кодирования'

Смотрите также Внешний вид кода (Simulink Coder)
В последний раз измененныйR2017b
Примеры

Не рекомендуемый

В следующем примере два состояния Scope_1 и Scope_2 используют локальный идентификатор IntCounter.

Идентификатор IntCounter задан для двух состояний, Scope_1 и Scope_2.

Рекомендуемый

Чтобы разъяснить модель, создайте уникальные идентификаторы. В следующем примере утвердите, что Scope_1 использует локальный идентификатор IntCounter_Scope_1. Scope_2 состояния использует локальный идентификатор IntCounter_Scope_2.

Идентификатор IntCounter_Scope_1 задан для Scope_1 состояния. Идентификатор IntCounter_Scope_2 задан для Scope_2.

hisl_0062: Глобальные переменные в графических функциях

ID: Заголовокhisl_0062: Глобальные переменные в графических функциях
Описание

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

ОбъяснениеУлучшите удобочитаемость модели путем удаления неоднозначности в значениях глобальных переменных.
Образцовые проверки советника
  • Задачей> Моделирование Стандартов для DO-178C/DO-331> Системы Высокой Целостности> Simulink> глобальные переменные Проверки в графических функциях

  • Задачей> Моделирование Стандартов для IEC 61508> Системы Высокой Целостности> Simulink> глобальные переменные Проверки в графических функциях

  • Задачей> Моделирование Стандартов для IEC 62304> Системы Высокой Целостности> Simulink> глобальные переменные Проверки в графических функциях

  • Задачей> Моделирование Стандартов для EN 50128> Системы Высокой Целостности> Simulink> глобальные переменные Проверки в графических функциях

  • Задачей> Моделирование Стандартов для ISO 26262> Системы Высокой Целостности> Simulink> глобальные переменные Проверки в графических функциях

Для получения дополнительной информации проверки смотрите глобальные переменные Проверки в графических функциях.

Ссылки
  • IEC 61508–3, Таблица A.3 (3) 'Языковое подмножество'
    IEC 61508–3, Таблица A.4 (4) 'Модульный подход'
    IEC 61508–3, 4 (5) 'Дизайн и стандарты кодирования'

  • IEC 62304, 5.5.3 - критерии допустимости Программного блока

  • ISO 26262-6, Таблица 1 (1b) 'Использование языковых подмножеств'
    ISO 26262-6, Таблица 1 (1f) 'Использование однозначного графического представления'
    ISO 26262-6, Таблица 1 (1 ч) 'Использование соглашений о присвоении имен'

  • EN 50128, таблица A.4 (11) 'языковое подмножество'
    EN 50128, таблица A.12 (1) 'кодирование стандарта'
    EN 50128, таблица A.12 (2) 'руководство стиля кодирования'

  • DO 331, Раздел MB.6.3.2.g 'Алгоритмы точен'

  • MISRA C:2012, правило 13.2
    MISRA C:2012, правило 13.5

В последний раз измененныйR2018b
Примеры

Считайте графическую функцию graphicalFunction, который изменяет глобальные данные G.

Рекомендуемый

Не рекомендуемый

hisl_0063: Длина пользовательских имен объектов, чтобы улучшить соответствие MISRA C:2012

ID: Заголовокhisl_0063: Длина пользовательских имен объектов, чтобы улучшить соответствие MISRA C:2012
Описание

Чтобы улучшить соответствие MISRA C:2012 сгенерированного кода, ограничьте длину определяемых пользователем имен к Максимальной длине идентификатора (MaxIdLength).

Примечание

Значением по умолчанию Максимальной длины идентификатора является 31.

AПри работе с блоками Подсистемы с блочным набором опций Имени функции параметра к User specified ограничьте длину имен функций к длине идентификатора Максимума параметра (MaxIdLength) символы или меньше.
B

Ограничьте длину имен объекта данных к Максимальной длине идентификатора (MaxIdLength) символы или меньше для:

  • Simulink.AliasType

  • Simulink.NumericType

  • Simulink.Variant

  • Simulink.Bus

  • Simulink.BusElement

  • Simulink.IntEnumType

C

Ограничьте длину и названий параметра сигнала к Максимальной длине идентификатора (MaxIdLength) символы или меньше при использовании следующих классов памяти:

  • Экспортируемая глобальная переменная

  • Импортированный экстерн

  • Импортированный указатель экстерна

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

Примечание

Если задано, это включает длину имени Псевдонима.

Объяснение

Определяемые пользователем имена и названий параметра сигнала к Максимальной длине идентификатора (MaxIdLength) символы или меньше при использовании следующих классов памяти:

  • Экспортируемая глобальная переменная

  • Импортированный экстерн

  • Импортированный указатель экстерна

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

Примечание

Если задано, это включает длину имени Псевдонима.

Образцовые проверки советника
  • Задачей> Моделирование Стандартов для DO-178C/DO-331> Системы Высокой Целостности> Simulink> Проверка на длину пользовательских имен объектов

  • Задачей> Моделирование Стандартов для IEC 61508> Системы Высокой Целостности> Simulink> Проверка на длину пользовательских имен объектов

  • Задачей> Моделирование Стандартов для IEC 62304> Системы Высокой Целостности> Simulink> Проверка на длину пользовательских имен объектов

  • Задачей> Моделирование Стандартов для EN 50128> Системы Высокой Целостности> Simulink> Проверка на длину пользовательских имен объектов

  • Задачей> Моделирование Стандартов для ISO 26262> Системы Высокой Целостности> Simulink> Проверка на длину пользовательских имен объектов

Для получения дополнительной информации проверки смотрите Проверку на длину пользовательских имен объектов.

Ссылки
  • MISRA C:2012, правило 5.1

  • MISRA C:2012, правило 5.2

  • MISRA C:2012, правило 5.3

  • MISRA C:2012, правило 5.4

  • MISRA C:2012, правило 5.5

Предпосылкиhisl_0060: Параметры конфигурации, которые улучшают соответствие MISRA C:2012
В последний раз измененныйR2018b
Была ли эта тема полезной?