Разница между OBDII и CAN

30

Что такое CAN (сеть контроллеров)?

Каковы различия между протоколом OBD-II и настройкой CAN?

Как использовать сканер OBD-II на автомобиле с CAN?

Шобин П
источник
1
У меня было преимущество работы с OBDI для производителя, а также преимущество работы с CAN на электромобилях; Достаточно сказать, что я старый парень, но я, безусловно, ценю ясность и информацию.
Трент

Ответы:

39

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

Автобусные Системы

В электронных системах сигналы передаются от одного чипа к другому с помощью проводов (давайте на секунду забудем о беспроводных вещах). Самый простой способ сделать это - использовать один провод на бит информации, которую вы хотите передать. Один бит информации - это просто ответ на вопрос « да / нет» типа «Включены ли фары?» Если фары включены, то на этом проводе есть напряжение, скажем, 5 вольт. Если они выключены, на проводе есть 0 вольт.

Теперь это хорошо для одного бита информации. Но больше данных требует больше проводов. К сожалению: больше проводов означает больше сложности. Современный автомобиль - это просто компьютер с шинами на нем , поэтому в нем много проводов ( несколько километров или миль ). Чем больше проводов, тем больше вес и больше затрат, а производителям автомобилей это не нравится. Поэтому нам нужен способ уменьшить количество проводов.

Обычный способ сделать это - использовать систему шин .

Что такое система шин?

Думайте о шине как о способе передавать больше информации, используя меньше проводов . Существуют и другие преимущества шинных систем, но я остановлюсь на этом аспекте.

Пример:

Мы хотим включить или выключить четыре лампы.

Без системы шин:

  • Лампа 1: +5 В на проводе 1 = лампа включена; 0 В на проводе 1 = лампа выключена
  • Лампа 2: +5 В на проводе 2 = лампа включена; 0 В на проводе 2 = лампа выключена
  • Лампа 3: ...
  • Лампа 4: ...

Это легко увидеть; нам нужен один провод на лампу.

С системой шин:

  • Лампа 1: +1 В на проводе 1 (селектор), 0 или +5 В на проводе 2 для включения и выключения (переключатель)
  • Лампа 2: +2 В на проводе 1 (селектор), 0 или +5 В на проводе 2 для включения и выключения (переключатель)
  • Лампа 3: +3 В на проводе 1 (селектор), 0 или +5 В на проводе 2 для включения и выключения (переключатель)
  • Лампа 4: +4 В на проводе 1 (селектор), 0 или +5 В на проводе 2 для включения и выключения (переключатель)

С этой примитивной системой шин мы сократили количество проводов до двух . Независимо от количества ламп, которыми мы хотели бы управлять, нам нужен только один провод, чтобы сообщить другой микросхеме, какую лампу мы хотим переключить, и второй провод, чтобы сообщить, хотим ли мы включить или выключить лампу. Мой пример будет иметь ограничения в реальном мире, так как нельзя просто поднять напряжение до 1000 В на проводе 1, чтобы включить тысячу разных ламп.

Этот пример показывает, почему в электронике вообще и в автомобилях в частности используются системы шин. Автомобили используют ряд систем автобусов, которые были сделаны специально для них:

Что такое CAN (сеть контроллеров)?

CAN - самая важная система шин в автомобиле. Я не буду вдаваться в подробности по этому вопросу, просто подумайте об этом как о способе передачи больших объемов данных, используя только два провода. Вы можете прочитать больше о CAN в Википедии .

OBD-II

В чем разница между протоколом OBD-II и настройкой CAN?

OBD-II - это протокол более высокого уровня, используемый для диагностических целей. OBD-II может использовать одну из (многих) различных шинных систем для передачи диагностических данных с вашего автомобиля и обратно. Представьте, что OBD-II - это язык (английский), на котором вы говорите, а CAN - это устройство связи (телефон), с которым вы разговариваете (о вашем автомобиле и состоянии его здоровья;).

Многие люди называют OBD (сокращение от бортовой диагностики) или OBD-II как «стандарты». OBD-II - это стандарт, но он опять-таки состоит из множества различных стандартов, протоколов и систем шин, используемых для связи, поэтому сложно перечислить их все. Однажды я сделал обзорную диаграмму, и я посмотрю, смогу ли я добавить это к своему ответу позже.

Как использовать OBD-II сканер на автомобиле с CAN?

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

user5626466
источник
2
Это отличный, исчерпывающий ответ! +1 точно! : D
Pᴀᴜʟsᴛᴇʀ2
Право на !!!!!!!
Шобин П,
6
Мне нравится идея компьютера, который поставляется с шинами бесплатно. ;-)
Боб Кросс
2
В дополнение к точке «транспортное средство с CAN» транспортное средство может использовать или не использовать CAN для передачи данных между различными черными ящиками на автомобиле (доступны другие протоколы, и производитель может использовать то, что ему нравится); и он может поддерживать или не поддерживать CAN на порту OBD-II (стандарт OBD-II предоставляет выбор из трех протоколов, из которых CAN - только один, поэтому используется 20-контактный разъем, поэтому можно использовать другие контакты для других протоколов). Но он всегда будет иметь порт OBD-II, и ваш сканер всегда будет подключен к нему.
Грэм
добавьте обзорную графику, пожалуйста!
tdrury
9

OBD II - это диагностический интерфейс, утвержденный правительством США. Этот интерфейс гарантированно предоставляет определенный набор информации, включая, помимо прочего, данные компьютера двигателя и коды неисправностей компьютера двигателя.

Когда OBD II был запущен, правительство США не заставляло производителей также стандартизировать интерфейс связи с компьютером двигателя. Ранний OBD II имел по крайней мере полдюжины протоколов связи. Позже правительство США осознало свою ошибку, согласно которой компьютер двигателя должен поддерживать протокол связи CAN.

Протокол обмена данными CAN является протоколом, поддерживаемым OBD II.

Если ваш сканер OBD II поддерживает CAN, некоторые старые, появившиеся между OBD II и мандатом CAN, не поддерживают его, то нет никакой разницы в использовании. Сканер будет автоматически выбирать, какой протокол использовать, либо путем автоматического определения доступного протокола, либо при вводе модели и года выпуска сканер будет использовать то, что, как он знает, доступен.

vini_i
источник
2
Какое правительство? Есть много правительств.
Питер Мортенсен
@PeterMortensen Я отредактировал свой ответ
vini_i
См. Документ SAE J1979 для текущих определений протоколов OBD11. Детали были изменены много раз с момента первоначальной реализации 1996 года.
Фред Уилсон