Установка точек останова, чтобы отладить графики

Вы позволяете отладить для графика Stateflow®, когда вы устанавливаете breakpoint. Точка останова является точкой на диаграмме Stateflow, которая приостанавливает симуляцию, таким образом, можно исследовать состояние графика. В то время как симуляция приостановлена, можно просмотреть данные Stateflow, взаимодействовать с рабочей областью MATLAB® и продвинуться посредством симуляции. Для получения дополнительной информации смотрите Отладку диаграмм Stateflow.

Точки останова появляются как круговые красные значки. Например, этот график содержит точки останова на upshifting состояние и переход от steady_state к upshifting.

Установите точку останова для объекта Stateflow

Можно установить точки останова на графиках, состояниях, переходах, графических или функции таблицы истинности и события.

Точки останова на графиках

Чтобы установить точку останова на графике, щелкните правой кнопкой в графике и выберите Set Breakpoint on Chart Entry. Этот тип точки останова приостанавливает симуляцию прежде, чем ввести график.

Чтобы удалить точку останова, щелкните правой кнопкой в графике и очистите опцию Set Breakpoint on Chart Entry.

Точки останова на состояниях и переходах

Можно установить различные типы точек останова на состояниях и переходах.

ОбъектУстановите точки останова тип
Состояние

On State Entry — Приостановите симуляцию прежде, чем выполнить entry состояния действия.

During State — Приостановите симуляцию прежде, чем выполнить during состояния действия.

On State Exit — Приостановите симуляцию после выполнения exit состояния действия.

Переход

When Transition is Tested — Приостановите симуляцию прежде, чем протестировать это, переход является допустимым путем. Если никакое условие не существует на переходе, этот тип точки останова не доступен.

When Transition is Valid — Приостановите симуляцию после того, как переход будет допустим, но прежде, чем взять переход.

Чтобы установить точку останова на состоянии или переходе, щелкните правой кнопкой по состоянию или переходу и выберите Set Breakpoint. Для состояний точками останова по умолчанию является On State Entry и During State. Для переходов точкой останова по умолчанию является When Transition is Valid. Чтобы изменить тип точки останова, кликните по значку точки останова и выберите различную настройку точек останова. Для получения дополнительной информации смотрите Типы Точки останова Изменения.

Чтобы удалить точку останова, щелкните правой кнопкой по состоянию или переходу и выберите Clear Breakpoint.

Точки останова на функциях Stateflow

Чтобы установить точку останова на графической функции или функции таблицы истинности, щелкните правой кнопкой по функции и выберите Set Breakpoint During Function Call. Этот тип точки останова приостанавливает симуляцию прежде, чем вызвать функцию.

Чтобы удалить точку останова, щелкните правой кнопкой по функции и очистите опцию Set Breakpoint During Function Call.

Точки останова на Событиях

Можно выбрать два типа точек останова на событиях:

  • Start of Broadcast — Приостановите симуляцию прежде, чем широковещательно передать событие.

  • End of Broadcast — Приостановите симуляцию после того, как объект Stateflow считает событие.

Доступные точки останова зависят от осциллографа события.

Осциллограф событияЗапустите широковещательной передачиКонец широковещательной передачи
LocalДоступныйДоступный
InputДоступныйНе доступный
OutputНе доступныйНе доступный

Чтобы установить или ясные точки останова на событии, используйте Property Inspector или Model Explorer, чтобы изменить свойства Debugger Breakpoints. Для получения дополнительной информации смотрите Точки останова Отладчика.

Измените типы точки останова

Значок точки останова может представлять больше чем один тип точки останова. Чтобы видеть подсказку, которая перечисляет типы точки останова, которые установлены на объекте Stateflow, укажите на его значок. В этом примере, значке на upshifting состояния представляет два типа точки останова: On State Entry и During State.

Чтобы изменить тип точки останова на объекте, кликните по значку точки останова. В диалоговом окне Breakpoints можно выбрать различную настройку точек останова, в зависимости от типа объекта.

Очистка всех флажков в диалоговом окне Breakpoints удаляет точку останова.

Добавьте условия точки останова

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

Добавить условие в точку останова:

  1. На вкладке Debug нажмите Breakpoints List, чтобы открыть окно Stateflow Breakpoints и Watch. В качестве альтернативы можно открыть окно Breakpoints и Watch путем щелчка по ссылке Breakpoints List в диалоговом окне Breakpoints.

  2. Выберите вкладку Breakpoints. Вкладка Breakpoints перечисляет все точки останова в графике. Для получения дополнительной информации смотрите, Управляют Точками останова Через Точки останова и Смотрят Window.

  3. В соответствии со столбцом Condition, введите условие для точки останова. Можно использовать любое допустимое выражение MATLAB, которое комбинирует численные значения и объекты данных Stateflow, которые находятся в осциллографе в точке останова.

Примечание

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

Например, этот график имеет точку останова на переходе от steady_state к upshifting. Эта точка останова останавливает симуляцию каждый раз, когда переход тестируется, даже если значение speed далеко ниже up_th.

Чтобы смотреть график перед, переход взят, вы хотите, чтобы точка останова приостановила симуляцию только когда значение speed приближается к значению up_th. Когда вы устанавливаете условие speed > up_th-2 на точке останова симуляция делает паузу только когда значение speed в 2 из значения up_th.

Когда симуляция делает паузу, можно смотреть значения переменных speed и up_th и продвиньтесь посредством симуляции. Для получения дополнительной информации смотрите, Смотрят и Изменяют Данные и сообщения В то время как Отладка и Выполнение Диаграммы управления После Точки останова.

Управляйте точками останова через точки останова и см. окно

Можно управлять всеми точками останова в графике в окне Stateflow Breakpoints и Watch. Чтобы открыть окно Breakpoints и Watch, на вкладке Debug, нажимают Breakpoints List. В качестве альтернативы откройте диалоговое окно Breakpoints и щелкните по ссылке Breakpoints List.

Отключите и повторно включите точки останова

Чтобы отключить точку останова, не удаляя ее связанное условие, снимите флажок рядом с именем точки останова. Например, в этом графике, точке останова на During State установите точки останова для upshifting состояние отключено.

Если вы отключаете все точки останова для графического объекта, его цвета изменений значка точки останова от красного до серого. Если существует по крайней мере одна точка останова, включенная для объекта, значок точки останова остается красным.

Чтобы повторно включить точку останова, выберите поле рядом с именем точки останова. Чтобы отключить или повторно включить все точки останова, очистите или установите флажок наверху окна.

Удалите точки останова

Чтобы удалить точку останова из графика, укажите на имя точки останова и кликните по значку Remove this breakpoint, который появляется справа от имени. Когда вы удаляете точку останова, вы также удаляете ее связанное условие.

Просмотрите хиты точки останова

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

Сохраните и восстановите точки останова

Точки останова сохраняются во время сеанса работы с MATLAB. Когда вы закрываете модель, ее точки останова остаются в окне Breakpoints и Watch. Если вы вновь открыли модель во время того же сеанса работы с MATLAB, все точки останова и их связанные условия восстанавливаются.

Можно сохранить точку останова и смотреть списки данных и перезагрузить их в более позднем сеансе работы с MATLAB. Чтобы сохранить снимок состояния точки останова и смотреть списки данных, во главе Точек останова и Смотреть Window, кликают по значку Save current breakpoints and watches. Чтобы восстановить снимок состояния, кликните по значку Load breakpoints and watches.

Похожие темы