Перейти к содержимому
Черновик: материал сгенерирован и ещё не вычитан.

Настройка CAN: режимы и мастер

Настройки CAN живут в конфигурации прибора, в разделе Сканер CAN: ⚙ Открыть настройки CAN. Отдельная кнопка Настройка CAN 0 / CAN 1 / CAN 2 открывает мастер, который проводит по всей цепочке — от выбора режима до записи параметров в теги.

Прибор может иметь до трёх CAN-портов (CAN 0, CAN 1, CAN 2 — набор зависит от модели). У каждого свои параметры:

ПолеЧто задаёт
Режимкак прибор работает с шиной (таблица ниже)
Скорость шиныАвто, 50000, 83333, 100000, 125000, 250000, 500000 или 1000000 бит/с
Таймаутсколько миллисекунд ждать сообщения, прежде чем считать данные устаревшими; по умолчанию 2000
Не сбрасывать данныеоставить последние принятые значения в тегах после истечения таймаута, а не обнулять их
Активный режимприбор выставляет бит подтверждения (ACK) в шине. Включайте, если пассивно шина не читается — например, разъём OBD-II заведён на отдельный узел, а не на ствол шины

Скорость Авто означает, что прибор сам перебирает поддерживаемые скорости и фиксирует ту, на которой пошёл обмен. Автоопределение доступно не на всех моделях: на приборах с урезанной аппаратной конфигурацией скорость задаётся явно в диапазоне 10000…1000000 бит/с.

В мастере предлагаются четыре сценария: Из базы ТС (рекомендуется), J1979 (OBD II), J1939 (SPN) и Произвольный фильтр. Под ними лежат режимы прошивки:

РежимНомер для CANREGIMEНазначение
Отключён0CAN-порт не используется
FMS2стандартный фильтр J1939/FMS, разбор без настройки. Устаревший режим
Произвольный фильтр3приём всех сообщений шины, разбор байтов вручную или по базе ТС
J1979 (OBD II), стандартный фильтр, 29 бит5запрос-ответ по OBD-II, 29-битные идентификаторы
J1979 (OBD II), стандартный фильтр, 11 бит6то же, 11-битные идентификаторы
J1979, пользовательский фильтр, 29 бит8OBD-II с пользовательским набором PID
J1979, пользовательский фильтр, 11 бит9то же, 11 бит
EasyLogic11шина отдаётся алгоритму EasyLogic, разбор внутри алгоритма
J1939DA14автоматический разбор параметров по SPN из справочника J1939DA

Во вкладке Устройство текущее состояние видно как Режим CAN и Скорость для CAN 0 и CAN 1.

Стандартный фильтр протокола J1939. Если производитель ТС поддерживает FMS (чаще всего это большегрузная и сельхозтехника), прибор считывает и расшифровывает набор параметров без какой-либо ручной настройки:

  • общий расход топлива с момента выпуска ТС;
  • уровень топлива в баке, %;
  • температура охлаждающей жидкости;
  • обороты двигателя;
  • общий пробег;
  • моточасы;
  • нагрузка на оси.

Многие производители поддерживают FMS частично либо не поддерживают вовсе. Режим помечен как устаревший: для новой установки предпочтительнее база ТС или J1939DA.

Приём всего потока сообщений шины, чтобы найти нужные байты самостоятельно или подставить готовый разбор из базы ТС. Это рабочий режим и для поиска параметров, и для базы транспортных средств. Поддерживаются 11- и 29-битные идентификаторы.

Режим «запрос — ответ»: прибор отправляет запросы в CAN-шину и разбирает ответы. Подключение — только через диагностический разъём OBD-II или напрямую к шине; бесконтактные считыватели не подходят.

Прибор получает уровень топлива в баке, температуру охлаждающей жидкости, обороты двигателя, коды ошибок, показания датчика массового расхода воздуха, статус датчика неисправности двигателя и поддерживаемый ТС стандарт OBD. Часть этих данных видна во вкладке Диагностика, часть можно передать на сервер мониторинга.

Отправка запросов по J1979 на транспортном средстве, которое этот протокол не поддерживает, может привести к неполадкам в работе бортового оборудования. Включайте режим осознанно.

Инициализация шины передаётся алгоритму EasyLogic: приём и разбор сообщений происходят внутри алгоритма. Этот режим нужен, например, для приёма активных кодов диагностики J1939 и для воспроизведения записанного лога в шину.

Инициализировать приём с шины следует только в одном алгоритме. Параллельно работать с одной шиной может несколько алгоритмов: у каждого свои фильтры сообщений и свой буфер — но инициализация должна быть одна.

Автоматический разбор параметров по номерам SPN из справочника J1939DA. Режим доступен не на всех приборах: требуется поддержка файлового хранилища (microSD или eMMC) в прошивке. Если в конфигурации прибора нет раздела Протокол J1939DA, эта прошивка режим не содержит.

Те же параметры задаются одной командой — это основной способ при удалённом конфигурировании через SMS или ПО мониторинга.

CANREGIME Mode,BaudRate,TimeOut,DoNotCleanAfterTimeOut
  • Mode — номер режима из таблицы выше;
  • BaudRate — скорость в бит/с; 0 включает автоопределение (на приборах с урезанной аппаратной конфигурацией допустимый диапазон 10000…1000000 и автоопределения нет);
  • TimeOut — таймаут ожидания сообщения, мс (0…100000);
  • DoNotCleanAfterTimeOut — 0 или 1.

Для второго и третьего портов используются CAN1REGIME и CAN2REGIME.

Примеры:

CANREGIME 2,500000,3000,0 FMS, 500 кбит/с
CANREGIME 3,500000,3000,0 произвольный фильтр, 500 кбит/с
CANREGIME 5,500000,2000,0 J1979, 29 бит, 500 кбит/с
CANREGIME 5,0,2000,0 J1979, 29 бит, скорость авто
CANREGIME 6,0,2000,0 J1979, 11 бит, скорость авто

Активный режим включается отдельной командой:

ACTIVECAN 1

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

Имена тегов CAN и их количество:

Группа теговДиапазонРазмер значения
CAN_A0, CAN_A1, CAN_B0, CAN_B14 тегаслужебные группы FMS
CAN8BITR0CAN8BITR3031 тег1 байт
CAN16BITR0CAN16BITR1415 тегов2 байта
CAN32BITR0CAN32BITR1415 тегов4 байта

CAN8BITR31 использовать нельзя. В прошивке 48.28 проверка номера тега пропускает 31, тогда как массив фильтров рассчитан на номера 0…30, — запись уходит за границу массива. Последний допустимый тег — CAN8BITR30.

Отметить тег в основном пакете можно и командой: MainPackBit N,1, где N — номер бита тега в протоколе Galileosky. Соответствие такое: CAN_A0CAN_B1 — биты 33…36; CAN8BITR0CAN8BITR14 — биты 37…51, CAN8BITR15CAN8BITR30 — биты 129…144; CAN16BITR0CAN16BITR4 — биты 55…59, CAN16BITR5CAN16BITR14 — биты 145…154; CAN32BITR0CAN32BITR4 — биты 60…64, CAN32BITR5CAN32BITR14 — биты 161…170.

  • Во вкладке Диагностика включите канал CAN (детальный поток — CAN детально) и убедитесь, что сообщения идут.
  • Во вкладке Устройство проверьте, что Режим CAN и Скорость соответствуют заданным.
  • Если сообщений нет — пройдите по списку «Если шина молчит»: чаще всего дело в неверной скорости или в том, что разъём OBD-II заведён не на ствол шины.

См. также: Подключение прибора к CAN-шине · Поиск параметров в CAN-шине · База транспортных средств и CAN bot