CAN шина. Часть 2: CAN и OBD-II
Здравствуйте, уважаемые посетители канала!
Продолжаем тему CAN шины. В прошлый раз мы рассмотрели коротко историю CAN шины, рассмотрели некоторые базовые понятия, но не рассмотрели OBD-II, и при чём тут вообще этот стандарт.
OBD-II (On-Board Diagnostics II) - это стандарт системы диагностики транспортных средств, который был введён для контроля над состоянием автомобиля, проверки выбросов и обнаружения неисправностей. Основная идея OBD-II - предоставить унифицированный интерфейс для диагностики всех автомобилей независимо от их производителя.
OBD-II был стандартизирован в 1996 году в США для всех автомобилей, продаваемых на территории страны. Позднее он был принят в других странах, включая Европу (EOBD) и Китай (JOBD).
- Диагностика ошибок (DTC - Diagnostic Trouble Codes).
- Мониторинг систем выбросов.
- Получение данных о работе двигателя и других систем автомобиля в реальном времени.
- Стандартизация диагностического разъёма.
OBD-II использует унифицированный диагностический разъём DLC (Data Link Connector) с 16 контактами. Через этот разъём внешние устройства, такие как диагностические сканеры, могут подключаться к системам автомобиля.
Как связаны OBD-II и CAN?
Связь OBD-II и CAN заключается в том, что CAN является одним из протоколов, поддерживаемых стандартом OBD-II для передачи диагностических данных. В частности, с 2008 года для всех автомобилей, продаваемых в США, использование CAN в качестве основного протокола OBD-II стало обязательным. Почему именно CAN? CAN был выбран для реализации OBD-II благодаря:
- Надёжности: высокая устойчивость к помехам.
- Эффективности: быстрая передача данных при минимальных задержках.
- Гибкости: поддержка сложных систем с большим количеством узлов (до 2048 устройств).
- Ошибкоустойчивости: наличие механизмов проверки целостности данных (CRC).
В 16-контактном разъёме OBD-II линии CAN привязаны к определённым контактам:
- Контакт 6 (CAN High, CH) - линия с более высоким напряжением для передачи сигналов CAN.
- Контакт 14 (CAN Low, CL) - линия с более низким напряжением для передачи сигналов CAN.
Эти контакты образуют дифференциальную пару, которая используется для передачи данных в шине CAN. Дифференциальная передача обеспечивает помехоустойчивость и надёжность сигнала, что критически важно в автомобильных системах. Подробнее про это читайте в первой части.
Какие данные могут передаваться через OBD-II с использованием CAN-шины?
- Обороты двигателя (RPM).
- Загрузка двигателя (%).
- Положение дроссельной заслонки.
- Температура охлаждающей жидкости.
- Температура впускного воздуха.
- Давление во впускном коллекторе.
- Угол опережения зажигания.
- Состояние топливной системы.
- Скорость подачи топлива.
- Уровень топлива (%).
- Давление в топливной рампе.
- Расход топлива (моментальный и средний).
- Соотношение воздух/топливо (λ).
- Состояние форсунок.
- Данные датчиков кислорода (лямбда-зондов).
- Эффективность каталитического нейтрализатора.
- Состояние системы рециркуляции отработавших газов (EGR).
- Давление и температура в системе DPF (сажевого фильтра).
- Временная задержка подачи реагента (для систем SCR).
- Температура трансмиссионной жидкости.
- Текущая передача.
- Давление масла в коробке передач.
- Состояние переключения передач (активный/неактивный).
- Давление в тормозной системе.
- Состояние ABS.
- Положение педали тормоза.
- Данные о скорости вращения каждого колеса.
Электроника и системы безопасности:
- Напряжение аккумулятора.
- Текущий заряд батареи (для гибридных и электрических авто).
- Состояние подушек безопасности (активно/неактивно).
- Состояние стояночного тормоза.
- Текущая скорость автомобиля.
- Пройденное расстояние с момента сброса ошибки.
- Общий пробег автомобиля (если поддерживается).
- Коды ошибок (DTC).
- Количество сохранённых ошибок.
- Готовность систем OBD (индикаторы проверки).
- Последовательность возникновения ошибок.
- Температура в салоне.
- Уровень интенсивности вентиляции.
- Положение заслонок системы кондиционирования.
- Температура на выходе системы обогрева или охлаждения.
Этот список может варьироваться в зависимости от модели автомобиля, производителя и года выпуска.
А какие вообще протоколы используются в стандарте OBD-II?
Хоть CAN и является доминирующим протоколом, стандарт OBD-II поддерживает и другие протоколы передачи данных. Собрал наиболее часто встречающиеся на практике протоколы:
ISO 9141-2
- Тип: Асинхронный протокол.
- Применение: Применяется в основном в автомобилях до 2008 года, особенно в европейских и азиатских марках.
- Скорость: От 1,2 до 10,4 кбит/с.
- Особенности: Использует две линии: K-line (передача данных) и L-line (инициализация).
- Примеры: BMW, Volkswagen, Toyota.
ISO 14230 (KWP2000 - Keyword Protocol 2000)
- Тип: Асинхронный протокол.
- Применение: Замена ISO 9141-2, использовался до появления CAN.
- Скорость: До 10,4 кбит/с.
- Особенности: Может работать как по K-line, так и по CAN-шине.
- Примеры: Mazda, Honda, Hyundai.
SAE J1850
- Варианты:
- PWM (Pulse Width Modulation): Используется в автомобилях Ford.
- VPW (Variable Pulse Width): Используется в автомобилях General Motors.
- Скорость: 41,6 кбит/с для PWM, 10,4 кбит/с для VPW.
- Особенности: Устаревший протокол, уступил место CAN.
ISO 15765-4 (CAN - Controller Area Network)
- Тип: Основной протокол для OBD-II с 2008 года.
- Применение: Диагностика современных автомобилей.
- Скорость: До 1 Мбит/с.
- Особенности: Высокая помехоустойчивость, поддержка множества устройств (ECU).
ISO 27145 (WWH-OBD - Worldwide Harmonized OBD)
- Тип: Международный стандарт для OBD-II.
- Применение: Унификация диагностики для тяжёлых транспортных средств и гибридных автомобилей.
- Особенности: Основан на CAN, использует формат UDS (Unified Diagnostic Services).
SAE J1939
- Тип: Протокол для тяжёлых автомобилей (грузовики, автобусы, спецтехника).
- Применение: Управление двигателями, трансмиссиями и другими системами.
- Скорость: До 500 кбит/с.
- Особенности: Работает на основе CAN.
ISO 11992
- Тип: Протокол для связи между тягачом и прицепом.
- Применение: Грузовые автомобили.
- Особенности: Специализированный вариант CAN.
Более подробно на OBD-II останавливаться не будем. Впереди ещё много информации конкретно про CAN-шину и этот протокол ;-) В следующий раз поговорим про Hi speed CAN, Low speed CAN и трансивер