В этом примере показано, как использовать модель Slicer для отладки ошибок конструкции целочисленного переполнения в модели Simulink.
В этом примере для демонстрации отладки нарушений при обнаружении ошибок конструкции используются следующие продукты:
Программа Simulink Design Verifier
Проверка симулятора (срезатель модели)
1. Открытая модель sldvdemo_design_error_detection.
open_system('sldvdemo_design_error_detection');

2. Откройте Simulink Design Verifier, щелкнув Приложения > Design Verifier.
3. На вкладке «Проверка проекта» выберите «Обнаружение ошибок проекта». Simulink Design Verifier анализирует модель и отображает результаты в окне Сводка результатов (Results Summary).
Модель выделяет подсистему, в которой находятся сбойные цели.

4. Открытый Controller и выберите любой из блоков, выделенных красным цветом.
5. В окне Результаты (Results) нажмите кнопку Отладка (Debug), чтобы отладить нарушение с помощью модели Slicer. Кроме того, на вкладке Design Verifier щелкните Просмотр результатов > Отладка с использованием среза, чтобы отладить нарушение с помощью среза модели.

При щелчке любой из точек входа для отладки в модели выполняется следующая настройка:
Выбранный блок с сбойной целью добавляется в качестве начальной точки для среза модели.
Модель подсвечивается срезом, ответственным за сбойную цель.
Конструкторская модель моделируется и приостанавливается в момент нарушения.
6. Отладка и анализ модели путем проверки меток портов.
Совет: Нажмите на линию выходного сигнала блока Sum, чтобы включить метку значения порта для блока.

Можно заметить, что сумма входных переменных должна приводить к ненулевому числу.
7. Исследуйте типы входных и выходных данных блока суммирования.

Выходные данные блока Sum имеют значение, превышающее максимальное значение, которое может сохранять тип выходных данных. Поэтому это условие приводит к целочисленному переполнению.
Чтобы убедиться в том, что ошибка переполнения целочисленных значений устранена, на вкладке «Проверка проекта» нажмите кнопку «Обнаружить ошибки проекта». После завершения анализа программное обеспечение сообщает, что все цели действительны.
Демонстрируемый в этом примере рабочий процесс можно использовать для отладки других нарушений при обнаружении ошибок конструкции с помощью инструмента «Срез модели». Поддерживаются следующие ошибки конструкции:
Деление на ноль
Переполнение целого числа
Значения Non-Finate и NaN (не число) с плавающей запятой
Указанные нарушения минимального и максимального значений
Нарушения доступа к хранилищу данных
Указанные нарушения диапазона ввода блоков