Можно ли получить доступ к нескольким шинам CAN через порт OBD-II?

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

Насколько я понимаю, порт OBD-II на транспортных средствах либо подключен к выделенному контроллеру шлюза, либо напрямую подключен к основной шине CAN, которая имеет в качестве узла ЭБУ, который действует как шлюз. Диагностические устройства, подключенные к OBD-II, могут получить доступ к узлам на вторичной или третичной шине CAN только путем отправки запросов через шлюз. Таким образом, в любом случае, если вы хотите отслеживать сообщения более чем на одной шине CAN, вам НУЖНО иметь дело со шлюзом.

Это правильно? Можно ли контролировать несколько шин CAN через порт OBD-II?

Насколько я понимаю, в системе OBD-II есть только одна шина CANBus, которая обеспечивает сеть для связи всех электронных блоков управления друг с другом ... Хотя я могу ошибаться.

Ответы (2)

Каждый производитель немного отличается.

С CAN может быть до 3 разных шин.

  • Высокоскоростной CAN соединяет такие вещи, как компьютер двигателя, ABS, компьютер подушки безопасности, бортовой компьютер, панель приборов. Это то, что выставлено на диагностический разъем под торпедой, DLC. Бортовой компьютер или блок датчиков можно использовать в качестве шлюза между другими шинами и высокоскоростной шиной CAN.
  • CAN средней скорости обычно соединяется с органами управления кузовом и освещением.
  • Низкоскоростной CAN обычно соединяет развлекательные системы.

Вы гарантированно увидите высокоскоростной CAN в DLC. В зависимости от производителя другие шины также могут подвергаться воздействию, но это не гарантируется.

Вы можете запросить информацию из других автобусов через высокоскоростную шину. Насколько мне известно, информация с более медленных автобусов не передается по более быстрым.

Верно. Таким образом, проходя через диагностический порт, вы можете видеть сообщения только на высокоскоростной шине CAN, если вы специально не запрашиваете данные из низкоскоростных шин CAN. Этот запрос должен быть обработан шлюзом, верно?
@ Moeman69 Верно.

Я понял. Ответ зависит от производителя. Диагностический порт OBD-II имеет ряд контактов, которые указаны как «Опция поставщика». Производитель может выбрать подключение одного или нескольких из этих контактов непосредственно к среднескоростной шине CAN или к низкоскоростной шине CAN. Это обеспечит прямой доступ к трафику сообщений по этим линиям шины в режиме реального времени. Если задействован шлюз, есть два основных подхода.

А) Это более популярный вариант. Порт OBD-II напрямую подключается к высокоскоростной шине CAN. Порт может напрямую отслеживать трафик по высокоскоростной шине CAN. Один из узлов на шине HS CAN (обычно модуль управления кузовным оборудованием или что-то подобное) действует как шлюз к шине CAN средней скорости. Для доступа к данным на шине MS по шине HS передается диагностический удаленный кадр (IAW CAN Spec 2.0), предназначенный для узла шлюза. После приема узел шлюза затем генерирует дополнительный удаленный кадр на шине MS, предназначенный для любого целевого узла на этой шине. После приема целевой узел затем передает запрошенные данные по шине MS. Узел шлюза получает их, затем, когда шина HS простаивает, он передает эти данные по шине HS.

B) Порт OBD-II может быть подключен к выделенному шлюзу, который будет доставлять данные с определенной шины только в том случае, если через порт будет отправлен диагностический запрос. Если запрос не будет отправлен, не будет заметного трафика. Вы должны всегда отправлять диагностическое сообщение с запросом удаленного кадра, если хотите получить данные от определенного узла на определенной шине.

Вы можете наградить себя ответом и получить за него значок. :-)