hisl_0002: Использование блоков Математической функции (rem и обратная величина)

ID: Заголовокhisl_0002: Использование блоков Математической функции (rem и обратная величина)
Описание

Поддерживать робастность сгенерированного кода, при использовании блока Math Function с остатком после деления (rem) или обратная величина (reciprocalФункции:

A

Защитите вход reciprocal функция от попытки обнулить.

B

Защитите второй вход rem функция от попытки обнулить.

Примечание

Можно получить операцию деления на нуль, приводящую к большому количеству (Inf) выходное значение для reciprocal функция или Не число (NaN) выходное значение для rem функция. Чтобы избежать переполнения или неопределенных значений, защитите соответствующий вход от попытки обнулить.

ОбъяснениеЗащитите от переполнения и неопределенных числовых результатов.
Проверки Model AdvisorПроверяйте использование блоков Математической функции (rem и взаимные функции) (Simulink Check)
Ссылки
  • IEC 61508-3, Таблица A.3 (3) 'Языковое подмножество'
    IEC 61508-3, Таблица A.4 (3) 'Безопасное программирование'

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

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

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

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

  • MISRA C:2012, Dir 4.1

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

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