Tracer: история обмена
Tracer показывает сообщения в порядке наблюдения. Используйте его, чтобы найти запрос, изучить ответ, сравнить байты и восстановить последовательность событий.
Источник данных
Tracer работает с подключённым источником и загруженными файлами трасс. Для подключённого источника сбор трассы автоматический. Save сохраняет накопленную трассу; это не кнопка начала захвата. После отключения соединения текущая трасса остаётся доступной для просмотра и сохранения до закрытия или замены документа.
Пассивное наблюдение
Для анализа через адаптер подготовьте линию, на которой уже идёт обмен, и настройте подключение. Tracer показывает последовательность сообщений, а Monitor показывает сводку последних значений и состояния обмена. Открытие этих инструментов само по себе не запускает опрос устройств: запросы может отправлять внешний ведущий или диагностический прибор.
При этом включённое активное определение адаптеров при запуске и нажатии Rescan отправляет данные в устройства и может создавать паразитный трафик на шине. Для наблюдения без такого трафика заранее отключите эту настройку.
Для анализа без устройства загрузите файл трассы в Tracer. Статический просмотр файла не запускает воспроизведение для Monitor и не отправляет сообщения на физическую шину. Отдельные активные операции через MCP описаны вместе с необходимыми локальными разрешениями.
Уровни CAN
| Уровень в интерфейсе | CANopen | Automotive VAG | Поля фильтра |
|---|---|---|---|
Physical | Исходные CAN-кадры | Исходные CAN-кадры | trace.*, can.* |
Transport | Отдельного уровня нет | ISO-TP и TP2.0 | protocol.type, isotp.*, tp20.* |
Protocol | Сообщения CANopen | UDS и KWP2000 | protocol.type и canopen.* или uds.*, kwp.* |
В Modbus RTU используется собственная таблица разобранных сообщений с полями modbus.*; переключение трёх уровней CAN к ней не относится.
Для появления сообщений на выбранном уровне трасса должна содержать соответствующий обмен и достаточный контекст. Например, для разбора динамического канала TP2.0 полезно захватить его установление.
Аппаратный ISO-TP
В VAG при активном аппаратном ускорении уровни Transport и Protocol показывают собранные сообщения ISO-TP и UDS, включая длинные ответы. Исходные CAN-кадры, управляющие кадры и интервалы между ними драйвер не предоставляет. Поэтому уровень Physical показывает Physical CAN frames unavailable; выберите Transport или Protocol и учитывайте отдельные фильтры этих уровней.
Временные метки относятся к сообщениям целиком; интервалы между отдельными CAN-кадрами недоступны. В текущем сеансе профиля доступна история до 16 384 сообщений, доступная после повторного открытия Tracer. Она не включается в экспорт трассы.
Если программа сообщает об ошибке записи трассы, часть обмена может отсутствовать в истории.
Что показывают столбцы
В CAN таблица содержит Time, Flow, Layer, Address / Id, Type, Length, Data, Description. На старших уровнях адрес и данные относятся к соответствующему сообщению протокола.
В Modbus RTU доступны Time, Response time, Flow, ID, Function, Data, Description. Время ответа показывается, когда обмен удалось сопоставить. Его отсутствие не является самостоятельным доказательством тайм-аута.
Flow — смысловая роль: запрос, ответ или широковещательное сообщение, если она определена. Входящее направление адаптера не означает «ответ»: при пассивном наблюдении запрос внешнего ведущего тоже принимается адаптером.
Фильтрация
- Для CAN выберите уровень.
- Введите выражение фильтра в
Filter expression. - Подождите применения или нажмите
Enter. Если открыты подсказки, первое нажатиеEnterпринимает выбранную подсказку. - Проверьте сообщение о состоянии фильтра.
Набор полей и подсказки зависят от уровня. Выражения фильтра для уровней CAN независимы: отбор на уровне Physical не ограничивает сообщения на уровне Protocol. Нельзя объединить поля разных уровней одним условием.
Для отбора по протоколу в VAG используйте protocol.type в каталоге выбранного уровня. Значения и примеры — в справочнике VAG, правила обновления подсказок — в справочнике языка.
При ошибке новый текст не применяется; если ранее уже был применён корректный фильтр, он остаётся активным. Для возврата всей таблицы очистите строку фильтра. В VAG дополнительно проверьте переключатель TesterPresent: он действует совместно с выражением на прикладном уровне.
См. синтаксис и отсутствие полей.
Метки и повторный разбор
Команды Add label и Delete label доступны в контекстном меню. Метка помогает назвать интересующий момент: например, «Начало проверки» или «Ответ после изменения настройки». Метки привязаны к исходным записям, а не к позиции строки после фильтрации.
Для быстрой метки по умолчанию используется Ctrl+L. Клавиша меняется в Settings → Tracer → Capture → Quick label shortcut.
Чтобы скопировать выбранную строку или ячейку, используйте контекстное меню. Если прокрутка вслед за новыми сообщениями остановлена, используйте Resume auto-scroll для возврата к концу таблицы.
Clear начинает новый видимый участок документа. Старые строки перестают входить в последующее сохранение текущего участка. Если они нужны, сначала используйте Save.
Подробности сообщения
Выберите строку, чтобы открыть область подробностей. Она показывает доступные для сообщения поля и байты. Copy all bytes копирует байты сообщения, Keep details visible закрепляет область даже без выделения.
Перетащите заголовок области вниз или вправо от таблицы. При фокусе на заголовке доступны Alt+Down и Alt+Right. Расположение, размер и закрепление сохраняются и используются в других профилях.
Анализ трафика
Откройте сводку через название транспорта в строке состояния и нажмите Expand traffic analysis. Панель показывает загрузку физической линии, историю и состав обмена; нажатие на график переводит связанную таблицу к соответствующему интервалу, сохраняя уровень и фильтр.
Значения Cur, Max, Avg, выделение интервала и режимы Messages, Bytes, Wire time описаны в разделе загрузки линии и статистики транспорта. Фильтрация Tracer не меняет общую нагрузку.
Подробнее: сохранение и загрузка, поля CAN, настройки Tracer.