Отобразите значения порта для отладки

Отобразите значения порта для легкой отладки

Для многих блоков, сигналы которых несут данные, Simulink® может отобразить значения сигналов (блок выход), когда значение порта помечает (похожий на подсказки) на блок-схеме в течение и после симуляции. Отображение меток значения порта блокирует выходные значения, когда Simulink запускает блок выходные методы. Эта модель показывает метку значения порта для портов на Constant и блоках Math, выходных значениях 1 и 4.04.

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

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

Если вы переключаетесь или наводите на блоке, который Simulink оптимизирует из симуляции (такой как виртуальный блок подсистемы), в то время как вы симулируете, модель отображает текст optimized.

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

Эти результаты предлагают проблему с моделью потому что:

  • Обогревающей стоимостью является 0 при всех температурах.

  • Температура в доме совпадает с температурой окружающей среды почти точно.

В таких случаях, отлаживая блоки в модели в интерактивном режиме может помочь изолировать ошибку. Метки значения порта предоставляют информацию при выходе каждого блока в модели. Таким образом в этом примере, если вы продвигаетесь вперед с помощью Степпера Симуляции, вы видите, что выходом подсистемы Heater является 0 на каждом временном шаге.

Чтобы узнать больше, можно включить метки значения порта для блоков в подсистеме Heater. Используя Степпер Симуляции, если вы выходите вперед снова, чтобы отобразить значения, вы видите, что существует проблема с блоком HeatGain. Выход является постоянным в 0.

Этот метод помогает вам изолировать проблему.

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

Для нечислового отображения данных Simulink использует эти значения:

СообщениеОбъяснение
actionСигнал выполняет подсистемы действия.
fcn-callСигнал является сигналом вызова функции, e.g., Function Call Generator выход.
groundСигнал прибывает из блока Ground.
not a data signalСигнал не содержит допустимые данные, e.g., сигнал от блока, который комментируется.

В некоторых случаях:

  • Отображение значения порта не может смочь получить сигнал значения или

  • Значение сигнала не может быть легко отображено

В таких случаях Simulink использует эти значения.

СообщениеОбъяснение
...Размерность сигнала превышает максимальное количество элементов, которые может отобразить Simulink. Для получения дополнительной информации смотрите Значения Порта Отображения для Модели.
(никакое сообщение)Доступные данные моделирования недостаточны. Выйдите вперед или нажмите игру, чтобы получить больше данных.
click to add signalsВы включили метку значения порта на шине. Однако вы не выбрали сигнал отобразиться. Кликните по метке, чтобы выбрать сигналы шины.
inaccessibleSimulink не может получить значение порта. Для примера смотрите Повторное использование памяти.
[m*n]Это - невекторный сигнал. Simulink не может отобразить фактические значения матрицы. Это отображает матричную размерность вместо этого.
no data yet

Это сообщение появляется когда:

  • Данные моделирования не доступны. Запустите симуляцию, чтобы видеть значения.

  • Если модель содержит подсистемы (например, активированную подсистему) и модели - ссылки, и они не выполняются во время симуляции.

not usedSimulink не может получить значение сигналов из-за оптимизации.
removedSimulink не может получить значение сигналов, должное блокировать сокращение.
optimizedSimulink не может получить значение сигналов из-за оптимизации. В Режиме normal mode это сообщение появляется для блоков с включенным Conditional input branch execution. Для получения дополнительной информации см. Условно Выполняемый Обзор Подсистем.
unavailableДоступные данные моделирования недостаточны. Например, смотрите Степпер Симуляции.

Примечание

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

Отобразите значение для определенного порта

Чтобы отобразить значение определенного порта или значения порта для блока перед симуляцией, выберите один или несколько сигналов, щелкните правой кнопкой по выбору и выберите Show Value Label of Selected Port.

По умолчанию Simulink отображает значение сигнала, когда вы кликаете по нему в процессе моделирования. Можно управлять этим поведением. На вкладке Debug выберите> Options, затем в диалоговом окне Value Label Display Options, выберите Enable by default during simulation.

Примечание

Удалить все всплывающие подсказки, на вкладке Debug, выбор> Remove Value Displays.

Для сигналов шины опция Show Value Label of Selected Port открывает диалоговое окно, где можно выбрать из всех сигналов в шине. Например, в этой модели, вы видите диалоговое окно для всех сигналов, которые содержатся в ModelBus.

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

Щелкните где угодно вне диалогового окна, чтобы закрыть его. Метка значения порта появляется. Метка не имеет никаких данных; это отображает значения, когда вы симулируете модель.

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

Примечание

Simulink не сохраняет значения сигнала, когда вы удаляете метку значения порта.

Отобразите значения порта для модели

Задайте форматирование отображения значения порта и частоту обновлений. Диалоговое окно Value Label Display Options управляет этими настройками на целой модели.

  1. В модели, значения порта которой вы хотите отобразить, на вкладке Debug, выбор> Options.

  2. В диалоговом окне Value Label Display Options задайте свои настройки для:

    • Параметры отображения, включая размер шрифта, частоту обновления и число элементов, отображенное для векторных сигналов с ширинами сигнала, больше, чем 1

    • Режим отображения

    • Формат или фиксированной точки с плавающей точкой

Ограничения отображения значения порта

Производительность

Включение наводящей опции для модели или установка по крайней мере одного блока к Toggle Value Labels When Clicked замедляют симуляцию.

Ускоренные режимы

Значения порта работают в Нормальном и Режимах Accelerator только. Они не работают в Быстром Акселераторе и Режимах external mode. Таблица показывает, как режимы Accelerator влияют на отображение значений порта.

Ускоренный режимЗначения порта
Акселератор
  • Сигналы, не оптимизированные в Режиме Accelerator, отображают значения порта как в Режиме normal mode. Сигналы, оптимизированные в Режиме Accelerator, отображают значения порта как optimized. Для получения дополнительной информации смотрите Значения Порта Отображения для Легкой Отладки.

  • Блоки модели - ссылки, симулированные в Режиме Accelerator, не получают свои обновленные отображения значения порта.

Быстрый акселераторНесовместимый. Ограничение существует, задают ли модель или ее родительский элемент ускоренную симуляцию. Для получения дополнительной информации смотрите, Ускоряют, Совершенствовали, и Тестовая Гибридная Динамическая система на Хосте - компьютере при помощи Системного Конечного файла RSim (Simulink Coder).

Повторное использование памяти

Если буфер выходного порта блока совместно используется с другим блоком посредством оптимизации повторного использования памяти, отображения значения порта как inaccessible. Можно отключить повторное использование памяти с помощью флажка Signal storage reuse. Однако отключение повторного использования памяти увеличивает память, используемую в процессе моделирования.

Типы данных сигнала

  • Simulink отображает значение порта для портов, соединенных с большинством видов сигналов, включая сигналы со встроенными типами данных (такими как doubleint32, или Boolean), DYNAMICALLY_TYPED, и несколько других типов данных.

  • Simulink показывает плавающий формат только для некомплексных отображений значения сигналов.

  • Simulink отображает значение порта типов данных фиксированной точки на основе конвертированного двойного значения.

  • Simulink не отображает данные для сигналов с некоторыми составными типами данных, такими как сигналы шины.

Подсистемы

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

  • Когда вы отключаете условно выполняемую подсистему, отображение значения порта для сигнала, который входит в блок Outport, отображает значение блока Outport, в зависимости от установки Output when disabled.

  • Simulink не отображает данные для портов активированной подсистемы, которая не включена.

Степпер симуляции

Если вы не включите отображение значения порта, выходя вперед, отображение не будет доступно при отстранении. При отстранении, если значение порта недоступно, unavailable метка отображена.

Совершенствуйте фактор

Отображения значения порта не соблюдают, совершенствовали факторные значения (Configuration Parameters> Data Import/Export> Additional parameters> Refine factor), потому что значение порта обновлений Simulink отображается только во время главных временных шагов.

Блок блока и Inport спецификации сигнала

Когда вы отображаете значения порта на блоках Signal Specification и Inport в подсистеме, значение, которое управляет отображениями блоков вместо значений блока.

Симуляции командной строки

Для КПД Simulink не поддерживает отображения значения порта во время симуляции командной строки с помощью sim команда.

Объедините блок

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

Интерфейс командной строки

Вы не можете задать отображения значения порта через интерфейс командной строки.

Несигналы Simulink

Вы не можете поместить значения порта в несигналы Simulink, такие как сигналы SimEvents® или Simscape™. Это ограничение применяется к условным точкам останова также.

Похожие темы