Поиск параметров в CAN-шине
Если производитель ТС не поддерживает FMS и в базе транспортных средств нужной модели нет, параметры приходится искать вручную: включить приём всего потока шины, заставить параметр измениться и увидеть, какие байты при этом меняются.
Порядок работ: подключиться к шине → выбрать режим Произвольный фильтр и скорость → открыть Настройка CAN и запустить приём → найти байты → задать формулу → записать значение в тег протокола.
Монитор: посмотреть, что вообще идёт в шине
Заголовок раздела «Монитор: посмотреть, что вообще идёт в шине»Первый экран — монитор сырых сообщений. Кнопка Старт запускает захват, Стоп останавливает, Очистить сбрасывает накопленное.
| Столбец | Что показывает |
|---|---|
| ID | идентификатор сообщения |
| Шина | номер CAN-порта, с которого пришло сообщение |
| Данные | байты кадра |
| Кол-во | сколько раз сообщение пришло с момента запуска |
| Период | средний интервал между сообщениями |
Кнопка Закрепить у строки включает автопрокрутку к ней — удобно, когда интересующий идентификатор тонет в потоке. Экспорт CSV выгружает накопленную таблицу для разбора вне приложения.
Если после Старт ничего не появляется, а появляется сообщение «Ошибка запуска диагностики. Проверьте подключение», — вернитесь к проверкам подключения и к выбранной скорости шины.
Запуск монитора временно переводит CAN-порт в служебный режим сканера и включает диагностические каналы CAN и CAN детально. По кнопке Стоп прибор возвращается в исходный режим. Не выдёргивайте кабель посреди захвата: конфигурация восстанавливается именно при остановке. Мониторинг работает только при локальном подключении — при удалённом доступе диагностика недоступна.
Фильтры: разбор конкретного идентификатора
Заголовок раздела «Фильтры: разбор конкретного идентификатора»Экран произвольного фильтра показывает те же сообщения, но с разбором по байтам и битам: ⚙ Открыть настройки CAN → Настройка CAN → Произвольный фильтр. Строки появляются двумя способами:
- нажать Начать приём и дождаться, пока сообщения придут из шины сами (кнопка на время захвата показывает «Запуск…», остановка — Стоп);
- нажать + Добавить фильтр и ввести CAN ID (hex) вручную — так можно подготовить разбор заранее или сделать вторую строку для того же идентификатора, чтобы разбирать в нём разные поля.
Поле поиска над таблицей принимает PID или байты (hex) — это быстрый способ найти строку в длинном списке.
Как читать строку
Заголовок раздела «Как читать строку»Переключатель По битам показывает данные побитово, Компактно — сжимает таблицу. Столбцы:
| Столбец | Что в нём |
|---|---|
| Данные | байты кадра; двойной клик по байту задаёт его значение вручную |
| Значение | десятичное значение выделенных бит после применения формулы |
| Кол-во / Период | частота прихода сообщения |
| Тег | тег протокола, в который пишется значение |
| Формула | математическая обработка «на лету» |
| Прот. | передавать ли значение в основном пакете |
| Комментарий | пометка для себя (в прошивку прибора не сохраняется) |
Подсветка изменений
Заголовок раздела «Подсветка изменений»Флаг Подсветка изменений подсвечивает биты и байты, которые только что изменились; Длительность подсветки задаёт, сколько секунд держится подсветка.
Это главный инструмент поиска. Подберите длительность так, чтобы фоновый «шум» шины успевал погаснуть, а изменение, которое вы вызываете руками (открыли дверь, нажали педаль), было хорошо видно. Оптимальное значение подбирается экспериментально под каждый автомобиль.
Выделение бит и байт
Заголовок раздела «Выделение бит и байт»Кликом отмечаются биты или байты, которые составляют искомое значение. Ограничение — 4 байта (32 бита) на один параметр. Выделять можно не только соседние биты: допустимы разрозненные биты и биты из разных байт одного сообщения. Отмеченные позиции превращаются в маску, которая сохраняется в настройках тега.
Если в одном сообщении нужно разобрать несколько независимых полей — добавьте ещё одну строку с тем же CAN ID через + Добавить фильтр и выделите в ней другие биты.
Формула
Заголовок раздела «Формула»В столбце Формула задаётся выражение, которое применяется к выделенному
значению до записи в тег. Выделенные данные обозначаются как v. Подсказка
в поле — Инфикс: v * 0.1 + 5.
Доступные операции:
| Операция | Знак |
|---|---|
| сложение, вычитание | + - |
| умножение, деление | * / |
| остаток от деления | % |
| побитовое И, ИЛИ, исключающее ИЛИ | & ` |
| битовый сдвиг влево, вправо | < > |
| группировка | ( ) |
Длина выражения ограничена 40 символами. Некорректное выражение подсвечивается сообщением «Некорректная формула» и не применяется.
Результат виден в столбце Значение сразу — сверьте его с реальными показаниями на приборной панели ТС.
Запись значения в тег протокола
Заголовок раздела «Запись значения в тег протокола»В столбце Тег выберите тег, размер которого подходит под выделенные данные:
CAN8BITR0…CAN8BITR30— 1 байт;CAN16BITR0…CAN16BITR14— 2 байта;CAN32BITR0…CAN32BITR14— 4 байта.
Отметьте Прот., чтобы значение уходило на сервер в составе основного пакета, и примените настройки.
CAN8BITR31не существует как рабочий слот: в прошивке 48.28 проверка номера пропускает 31 при массиве фильтров на 31 элемент (0…30). ОграничьтесьCAN8BITR30.
То же командами
Заголовок раздела «То же командами»CAN8BITR<N> ID,Shift,BigEndian,Port,Formula,MaskH,MaskL,Attribute,CommentID— идентификатор сообщения в десятичном виде;Shift— смещение полезных данных в кадре, байт;BigEndian— порядок байт: 0 — от младшего к старшему, 1 — от старшего к младшему;Port— номер CAN-порта;Formula— формула «на лету»;MaskH/MaskL— старшая (байты 4–7) и младшая (байты 0–3) половины маски;Attribute— скрытые данные или нет;Comment— комментарий.
Команда без аргументов возвращает текущую настройку тега:
Команда: CAN8BITR2Ответ: Can 8bit R2:ID=1365,Shift=1,BigEndian=0,Port=0,Formula=,Mask_H=0,Mask_L=65280,Attribute=0,Comment=0Тот же формат у CAN16BITR<N> и CAN32BITR<N>. На приборах с урезанной
аппаратной конфигурацией команда принимает только первые четыре аргумента —
формула и маска в них недоступны.
Чего в приложении нет
Заголовок раздела «Чего в приложении нет»Часть возможностей старого Конфигуратора 5 в конфигуратор 6 не перенесена:
- отправка сообщений в CAN-шину из интерфейса. Команды
CANSEND,CAN0SEND,CAN1SEND,CAN2SENDдоступны из терминала команд; - «Копировать для отправки» и список исходящих сообщений;
- чекбокс «Следить» у строки — вместо снятия сообщения с мониторинга пользуйтесь поиском и закреплением строки;
- графики и онлайн-калькулятор систем счисления;
- цветные маркеры зон в записи лога.
Что дальше
Заголовок раздела «Что дальше»- Если параметр нельзя воспроизвести на месте — запишите лог CAN и разбирайте его позже.
- Если модель ТС популярная — сначала проверьте базу транспортных средств: возможно, разбор уже готов.
См. также: Настройка CAN: режимы и мастер · Запись лога CAN и воспроизведение · База транспортных средств и CAN bot