Вопрос

Проверка CAN-шины на Audi A5

Я уже задавал похожий вопрос:



Подключение к автомобильной шине CANbus



К сожалению, я не добился особых успехов. Первым устройством, которое я попробовал, был CANLogger 2000, но с ним у меня ничего не вышло, поэтому я отправил его обратно.



Посмотрев несколько видео на YouTube об использовании USB2CAN, я решил приобрести такое устройство. Я заказал к нему кабель, чтобы подключить его к автомобилю через разъем ODBII.



Я выполнил настройку в Linux, устройство распозналось, и светодиодный индикатор загорелся зелёным, что означает готовность. Я установил скорость передачи данных на 500 000, но не вижу абсолютно ничего.



Может ли кто-нибудь помочь? Правильный ли это битрейт? Есть ли руководство или люди, которые могли бы мне помочь?



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



Настройка USB2CAN
Я прочитал здесь:



Технические данные Volkswagen и Audi
Скорость передачи данных может составлять 100 кбит/с. Действительно ли это 125 кбит/с?



Перевод вопроса с Mechanics Stack Exchange
Лицензия: CC BY-SA (2.5–4.0)
Оригинальный вопрос: https://mechanics.stackexchange.com/questions/50411/sniffing-the-canbus-on-an-audi-a5

7 Комментариев

  1. Я не понимаю, чем это отличается от вашего предыдущего вопроса.



    На поздних моделях VAG данные в порт OBD не отправляются, так как он подключен к шлюзу и реагирует только на идентификаторы PID, а также на данные и коды конкретного производителя. Поэтому вы не можете ничего «пронюхать» через него.



    Вам необходимо получить доступ к каналу шины CAN, подключенному непосредственно к блоку управления / модулю. Найдите витую пару, подключенную к чему-либо, например, к блоку управления двигателем, комбинации приборов, BCM и т.д., и посмотрите, сможете ли вы тогда прочитать какие-либо данные. Скорость передачи данных по шинам, подключенным к приборной панели и блоку управления двигателем, безусловно, составит 500 Кбит / с, а любые развлекательные шины, подключенные к радио и т.д., могут быть ниже.



    Ниже представлена очень упрощённая схема сети CAN-шины VAG. Как видите, здесь несколько шин. Шина удобства, шина силового агрегата и проводка OBD. На самом деле шин может быть до 5. Теперь становится ясно, что диагностический разъём не подключён к шине, поскольку есть только один узел (диагностический шлюз). Порт OBD не подключен ни к одному другому узлу, поэтому ЭБУ двигателя не может взаимодействовать с радиоприемником. Поскольку шины полностью независимы друг от друга, все коммуникации между портом OBD и различными шинами должны проходить через шлюз.



    На порту OBD нет данных, поэтому перехватывать нечего. Когда вы подключаете диагностический прибор, он отправляет запрос PID на шлюз, который затем отправляет необходимые данные. Это похоже на систему «вызов-ответ». Как вы, вероятно, знаете, идентификаторы PID легкодоступны и их можно найти где угодно, например в Википедии, но они относятся только к двигателю и некоторым системам безопасности. Поэтому, если вы хотите перехватить необработанные данные, вам нужно подключиться напрямую к шине с нужным узлом.



    Схема шины CAN


  1. Сегодня я снова попытался подключиться к своему автомобилю с правильно настроенным модулем и горящим зелёным светодиодом, но по-прежнему не вижу никакой активности. Я пробовал использовать и «cansniffer», и «candump», но ничего не вышло. На YouTube есть множество видео, в которых USB2CAN подключается к порту ODBII и регистрирует данные, но я ничего не вижу. Кто-нибудь может помочь?
  1. Спасибо, я сейчас не дома. Я разберусь с этим, когда вернусь.
  1. Пожалуйста, потерпите, я пишу более подробный ответ и составляю схему. Мне кажется, вы не понимаете, что я пытаюсь сказать
  1. Да, верно, но порт OBD — это не узел, а разъём, он не обладает интеллектом. Он подключён к диагностическому шлюзу через выделенную шину. Ни один из других узлов не подключён напрямую к порту OBD. Какого года ваш A5? Я не понимаю, почему вы поставили мне минус, ведь я прав: ни один ЭБУ не подключён напрямую к порту OBD на поздних моделях VAG, и у них несколько шин CAN.
  1. Я знаю, что вы неправы. CAN-шина — это просто шина, сообщения отправляются от узла в сети, а адрес указан в пакете. Он отправляется всем узлам в сети, и каждый узел получает его и проверяет адрес пакета, чтобы убедиться, что он предназначен для него. Именно поэтому вы можете перехватывать данные.
  1. Ему не нужен интеллект, это просто порт, который можно использовать для мониторинга сети CANbus. A5 2012 года выпуска, 2TDi fastback. Я написал адаптеры для нескольких разных networks, inc. Modbus, протокол отличается, но способ адресации пакетов очень похож. Modbus может работать в многоточечной сети RS485. Любой может перехватить данные, просто подключив пассивное устройство для получения любых данных через порт. Именно это я и пытаюсь сделать с помощью ODBII. На прошлой неделе я разговаривал с техническим специалистом Audi, и он сказал мне, что я смогу видеть данные, подключённые к порту ODBII.
Вы уже ответили на этот вопрос