| Описание | Поддерживать робастность сгенерированного кода, при использовании блока Math Function с остатком после деления (rem) или обратная величина (reciprocal) операции: |
| A | Защитите вход reciprocal функция от попытки обнулить. |
| B | Защитите второй вход rem функция от попытки обнулить. |
| Примечание | Можно получить операцию деления на нуль, приводящую к большому количеству (Inf) выходное значение для reciprocal функция или Не число (NaN) выходное значение для rem функция. Чтобы избежать переполнения или неопределенных значений, защитите соответствующий вход от попытки обнулить. |
| Объяснение | Защитите от переполнения и неопределенных числовых результатов. |
| Проверки Model Advisor | Проверяйте использование остатка и взаимные операции (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 INT33-C. Убедитесь, что деление и операции остатка не приводят к ошибкам деления на нуль
|
| В последний раз измененный | R2021b |
| Примеры | В следующем примере, когда входной сигнал колеблется вокруг нуля, выход показывает большое изменение в значении. Вам нужна дальнейшая защита от большого изменения в значении.
|