Описание протокола OBD-II (ОБД 2)

Описание протокола OBD-II (ОБД 2)
В начале 1990-х годов в США был принят ряд стандартов, которые ввели обязательность оснащения электронных блоков управления автомобилями (ЭБУ, ECU) системой за контролем параметров работы двигателя, имеющих прямое или косвенное отношение к составу выхлопа. Стандарты также предусмотрели протоколы считывания информации об отклонениях в экологических параметрах работы двигателя и другой диагностической информации из ЭБУ. OBD-II как раз и является системой накопления и считывания такой информации. Изначальная «экологическая направленность» OBD-II, с одной стороны, ограничила возможности по его использованию в диагностике всего спектра неисправностей, с другой стороны, предопределила его крайне широкое распространение как в США, так и на автомобилях других рынков. В США применение системы OBD-II (и установка соответствующей колодки диагностики) обязательны с 1996 г. (требование распространяется как на автомобили, производимые в США, так и на автомобили неамериканских марок, продаваемые в США). На автомобилях Европы и Азии протоколы OBD-II применяются также с 1996 г. (на небольшом количестве марок/моделей), но особенно — с 2001 г. для автомобилей с бензиновыми двигателями (с принятием соответствующего европейского стандарта — EOBD) и с 2004 г. для автомобилей с дизельными двигателями. Тем не менее, стандарт OBD-II частично или полностью поддерживают и некоторые автомобили, выпущенные ранее 1996 (2001) годов (pre-OBD автомобили).
Протоколы OBD-II предоставляют ряд функциональных возможностей:
Считывание текущих параметров работы системы управления (Mode 1 PID Status & Live PID Information). Всего стандартом поддерживается около 20 параметров. Однако, каждый конкретный блок управления поддерживает ограниченное количество из них (например, в зависимости от установленных датчиков кислорода). С другой стороны, некоторые автопроизводители поддерживают расширенные наборы параметров — например, некоторые автомобили концерна GM поддерживают более 100 параметров. Через систему OBD-II диагностики можно считать (основные параметры):
– режим работы системы топливной коррекции (PID 03 Fuel system status). При значении «Closed Loop» система работает в режиме обратной связи (замкнутой петли), при этом данные с датчика кислорода используются для корректировки топливоподачи. При значении «Open Loop» данные с датчика кислорода не используются для корректировки топливоподачи;
– расчетная нагрузка на двигатель (PID 04 Calculated Load);
– температура охлаждающей жидкости (PID 05 Coolant temperature);
– краткосрочная коррекция подачи топлива по банку ½ (PID 06/08 Short Term Fuel Trim Bank ½);
– долгосрочная коррекция подачи топлива по банку ½ (PID 07/09 Long Term Fuel Trim Bank ½);
– давление топлива (PID 0A Fuel pressure);
– давление во впускном коллекторе (PID 0B Manifold pressure);
– обороты двигателя (PID 0C Engine speed — RPM);
– скорость автомобиля (PID 0D Vehicle speed);
– угол опережения зажигания (PID 0E Ignition Timing Advance);
– температура всасываемого воздуха (PID 0F Intake Ait Temperature);
– расход воздуха (PID 10 Air Flow);
– положение дроссельной заслонки (PID 11 Throttle position);
– режим работы системы подачи дополнительного воздуха (PID 12 Secondary Air Status);
– расположение датчиков кислорода (PID 12 Location of O2 sensors);
– данные с датчика кислорода №1/2/¾ по банку ½ (PID 13-1B O2 Sensor ½/¾ Bank ½ Volts).
Как правило, для анализа работы конкретной подсистемы системы управления двигателем, достаточно одновременно контролировать 2-3 параметра. Однако, иногда требуется одновременно просматривать и большее число. Число одновременно контролируемых параметров, а также формат их вывода (текстовый и/или графический) зависят как от возможностей конкретной программы-сканера, так и от скорости обмена информацией с блоком управления двигателем автомобиля (скорость зависит от поддерживаемого протокола). К сожалению, наиболее распространенный протокол ISO-9141 является и самым медленным из всех — при работе с ним невозможно просматривать с приемлемой частотой дискретизации более 2-4 параметров.
Используемые протоколы и применяемость OBD-II-диагностики на автомобилях разных марок
В рамках OBD-II используются пять протоколов обмена данными — ISO 9141, ISO 14230 (также именуется KWP2000), PWM, VPW и CAN (также каждый из протоколов имеет несколько разновидностей — например, разновидности отличаются по скорости обмена информацией). В Интернете встречаются «таблицы применимости», где указываются перечни марок и моделей автомобилей и поддерживаемые ими OBD-II-протоколы. Однако, надо учитывать, что одна и та же модель с одним и тем же двигателем, одного года выпуска может быть выпущена для разных рынков с поддержкой разных протоколов диагностики (точно также протоколы могут различаться и по моделям двигателей, годам выпуска). Таким образом, отсутствие автомобиля в списках не означает, что он не поддерживает OBD-II, так же как и присутствие не означает, что поддерживает и, тем более, полностью поддерживает (возможны неточности в списке, различные модификации автомобиля и пр. ). Еще сложнее судить о поддержке конкретной разновидности OBD-II-стандарта.
Общей предпосылкой для того, чтобы предположить, что автомобиль поддерживает OBD-II диагностику, является наличие 16-контактного диагностического разъема (DLC — Diagnostic Link Connector) трапециевидной формы (на подавляющем большинстве OBD-II автомобилей он находится под приборной панелью со стороны водителя; разъем может быть как открыт, так и закрыт легко снимаемой крышкой с надписью «OBD-II», «Diagnose» и т. п. ). Тем не менее, это условие необходимое, но недостаточное!
Также разъем OBD-II иногда устанавливается на автомобили, вообще не поддерживающие ни один из OBD-II-протоколов. В таких случаях необходимо пользоваться сканером, рассчитанным на работу с заводскими протоколами конкретной марки автомобиля — например, это касается автомобилей Opel Vectra B европейского рынка 1996-1997 гг. Для оценки применимости того или иного сканера для диагностики конкретного автомобиля необходимо определить, какой конкретно из OBD-II протоколов используется на конкретном автомобиле (если OBD-II вообще поддерживается).
Назначение выводов («распиновка») 16-ти контактного диагностического разъема OBD-II (стандарт J1962):
02 — J1850 Bus+
04 — Chassis Ground
05 — Signal Ground
06 — CAN High (J-2284)
07 — ISO 9141-2 K-Line
10 — J1850 Bus-
14 — CAN Low (J-2284)
15 — ISO 9141-2 L-Line
16 — Battery Power (напряжение АКБ)
Таким образом,
– протокол ISO-9141-2 идентифицируется наличием контакта 7 в диагностическом разъеме (K-line) и отсутствием 2 и/или 10 контактов в диагностическом разъеме. Используемые выводы — 4, 5, 7, 15 (может не быть), 16.
– SAE J1850 VPW (Variable Pulse Width Modulation). Используемые выводы — 2, 4, 5, 16 (без 10)
– SAE J1850 PWM (Pulse Width Modulation). Используемые выводы — 2, 4, 5, 10, 16.
Протоколы PWM, VPW идентифицируются отсутствием контакта 7 (K-Line) диагностического разъема.
5. Подавляющее большинство автомобилей используют протоколы ISO. Некоторые исключения:
– большая часть легковых автомобилей и легких грузовиков концерна GM используют протокол SAE J1850 VPW;
– большая часть автомобилей Ford использует протокол J1850 PWM.
Основная функция диагностического разъема (в OBD II он называется диагностическим разъемом связи — Diagnostic Link Connector, DLC) заключается в том, чтобы обеспечить связь диагностического сканера с блоками управления, совместимыми с OBD II. Разъем DLC должен соответствовать стандартам SAE J1962. Согласно этим стандартам, разъем DLC обязан занимать определенное центральное положение в автомобиле. Он должен находиться в пределах 16 дюймов от рулевого колеса. Производитель может разместить DLC в одном из восьми мест, определенных EPA. Каждый контакт разъема имеет свое назначение. Функции многих контактов отданы на усмотрение производителям, однако эти контакты не должны использоваться блоками управления, совместимыми с OBD II. Примерами систем, применяющих такие разъемы, являются SRS (дополнительная ограничительная система) и ABS (антиблокировочная система колес).
С точки зрения дилетанта, один стандартный разъем, находящийся в определенном месте, облегчает и удешевляет работу автосервиса. Автосервису не нужно иметь 20 различных соединительных разъемов или диагностических приборов для 20 различных автомобилей. Кроме того, стандарт экономит время, поскольку специалисту не приходится искать, где же находится разъем для подключения прибора.
Диагностический разъем изображен на рис. 1. Как видим, он имеет заземление и подсоединен к источнику питания (контакты 4 и 5 относятся к заземлению, а контакт 16 — к питанию). Это сделано для того, чтобы сканеру не требовался внешний источник питания. Если при подсоединении сканера питание на нем отсутствует, то необходимо в первую очередь проверить контакт 16 (питание), а также контакты 4 и 5 (заземление). Обратим внимание на буквенно-цифровые символы: J1850, CAN и ISO 9141-2. Это стандарты протоколов, разработанные SAE и ISO (Международная организация по стандартизации).
Производители могут делать выбор среди этих стандартов для обеспечения связи при диагностике. Каждому стандарту соответствует определенный контакт. Например, связь с автомобилями марки Ford реализуется через контакты 2 и 10, а с автомобями GM — через контакт 2. В большинстве азиатских и европейских марок используется контакт 7, а в некоторых — также контакт 15. Для понимания OBD II не имеет значения, какой протокол рассматривается. Сообщения, которыми обмениваются диагностический прибор и блок управления, всегда одинаковы. Различны лишь способы передачи сообщений.
Стандартные протоколы связи для диагностики
Итак, система OBD II распознает несколько различных протоколов. Здесь мы обсудим только три из них, которые используются в автомобилях, выпускаемых в США. Это протоколы J1850-VPW, J1850-PWM и ISO1941. Все блоки управления автомобиля связаны с кабелем, называемым диагностической шиной, в результате чего образуется сеть. К этой шине можно подключить диагностический сканер. Такой сканер отправляет сигналы конкретному блоку управления, с которым он должен обмениваться сообщениями, и получает ответные сигналы от этого блока управления. Обмен сообщениями продолжается до тех пор, пока сканер не прекратит сеанс связи или не будет отсоединен.
Так, сканер может спросить блок управления о том, какие он видит ошибки, а тот отвечает ему на этот вопрос. Такой простой обмен сообщениями должен происходить на основе некоторого протокола. С точки зрения дилетанта, протокол представляет собой набор правил, которые нужно выполнять для того, чтобы в сети можно было передать сообщение.
Классификация протоколов Ассоциация автомобильных инженеров (SAE) определила три различных класса протоколов: протокол класса A, протокол класса B и протокол класса C. Протокол класса A — самый медленный из трех; он может обеспечивать скорость 10 000 байт/с или 10 Кбайт/с. В стандарте ISO9141 используется протокол класса A. Протокол класса B в 10 раз быстрее; он поддерживает обмен сообщениями со скоростью 100 Кбайт/с. Стандарт SAE J1850 представляет собой протокол класса B. Протокол класса C обеспечивает скорость 1 Мбайт/c. Наиболее широко используемый стандарт класса C для автомобилей — это протокол CAN (Controller Area Network — сеть зоны контроллеров). В будущем должны появиться протоколы с большей производительностью — от 1 до 10 Мбайт/с. По мере возрастания потребностей в увеличении полосы пропускания и производительности может появиться класс D. При работе в сети с протоколами класса C (а в будущем — с протоколами класса D) мы можем использовать оптическое волокно. Протокол J1850 PWM Существует два вида протокола J1850. Первый из них является высокоскоростным и обеспечивает производительность в 41,6 Кбайт/с. Данный протокол носит название PWM (Pulse Width Modulation — модуляция ширины импульса). Он используется в марках Ford, Jaguar и Mazda. Впервые такой тип связи был применен в автомобилях Ford. В соответствии с протоколом PWM сигналы передаются по двум проводам, подсоединенным к контактам 2 и 10 диагностического разъема.
Протокол ISO9141
Третий из обсуждаемых нами протоколов диагностики — ISO9141. Он разработан ISO и применяется в большинстве европейских и азиатских автомобилей, а также в некоторых автомобилях Chrysler. Протокол ISO9141 не так сложен, как стандарты J1850. В то время как последние требуют применения специальных коммуникационных микропроцессоров, для работы ISO9141 нужны обычные последовательные коммуникационные микросхемы, которые лежат на полках магазинов.
Протокол J1850 VPW
Другой разновидностью протокола диагностики J1850 является VPW (Variable Pulse Width — переменная ширина импульса). Протокол VPW поддерживает передачу данных со скоростью 10,4 Кбайт/с и применяется в автомобилях марок General Motors (GM) и Chrysler. Он очень похож на протокол, используемый в автомобилях Ford, но является существенно более медленным. Протокол VPW предусматривает передачу данных по одному проводу, подсоединенному к контакту 2 диагностического разъема.
С точки зрения дилетанта, OBD II использует стандартный диагностический коммуникационный протокол, так как Агентство по защите окружающей среды (EPA) потребовало, чтобы автосервисы получили стандартный способ, позволяющий качественно диагностировать и ремонтировать автомобили без затрат на покупку дилерского оборудования. Перечисленные протоколы будут более подробно описаны в последующих публикациях.
Лампочка индикации неисправностей
Когда система управления двигателем обнаруживает проблему с составом выхлопных газов, на приборном щитке загорается надпись Check Engine («Проверьте двигатель»). Этот индикатор называется лампочкой индикации неисправностей (Malfunction Indication Light — MIL). Индикатор обычно выдает следующие надписи: Service Engine Soon («Отрегулируйте двигатель в ближайшее время»), Check Engine («Проверьте двигатель») и Check («Выполните проверку»).
Назначение индикатора состоит в информировании водителя о том, что в процессе работы системы управления двигателем возникла проблема. Если загорается индикатор, не стоит впадать в панику! Вашей жизни ничто не угрожает, и двигатель не взорвется. Паниковать надо тогда, когда загорается индикатор масла или предупреждение о перегреве двигателя. Индикатор OBD II лишь сообщает водителю о проблеме в системе управления двигателем, которая может привести к избыточному количеству вредных выбросов из выхлопной трубы или загрязнению абсорбера.
С точки зрения дилетанта, индикатор неисправностей MIL загорается при возникновении проблемы в системе управления двигателем, например при неисправности искрового промежутка или загрязнении абсорбера. В принципе, это может быть любая неисправность, приводящая к повышенному выбросу вредных примесей в атмосферу.
Для того чтобы проверить функционирование индикатора OBD II MIL, следует включить зажигание (когда на приборном щитке загораются все индикаторы). При этом загорается и индикатор MIL. Спецификация OBD II требует, чтобы этот индикатор горел некоторое время. Некоторые производители делают так, чтобы индикатор оставался включенным, а другие — чтобы он выключался по истечении определенного промежутка времени. При запуске двигателя и отсутствии в нем неисправностей лампочка «Check Engine» должна погаснуть.
Лампочка «Check Engine» не обязательно загорается при первом появлении неисправности. Срабатывание этого индикатора зависит от того, насколько серьезна неисправность. Если она считается серьезной и ее устранение не терпит отлагательств, лампочка загорается немедленно. Такая неисправность относится к разряду активных (Active). В случае если устранение неисправности может быть отложено, индикатор не горит и неисправности присваивается сохраняемый статус (Stored). Для того чтобы такая неисправность стала активной, она должна проявиться в течение нескольких драйв-циклов. Обычно драйв-циклом считается процесс, при котором холодный двигатель запускается и работает до достижения нормальной рабочей температуры (при этом температура охлаждающей жидкости должна быть 122 градуса по Фаренгейту).
В течение этого процесса должны быть выполнены все бортовые тестовые процедуры, относящиеся к выхлопным газам. Различные автомобили имеют двигатели разного размера, и поэтому драйв-циклы для них могут несколько различаться. Как правило, если проблема возникает в течение трех драйв-циклов, то лампочка Check Engine должна загораться. Если же три драйв-цикла не выявляют неисправности, лампочка гаснет. Если лампочка Check Engine загорается, а затем гаснет, — не следует беспокоиться. Информация об ошибке сохраняется в памяти и может быть извлечена оттуда с помощью сканера. Итак, имеются два статуса неисправностей: сохраняемый и активный. Сохраняемый статус соответствует ситуации, когда неисправность обнаружена, но индикатор Check Engine не загорается — или же загорается, а затем гаснет. Активный статус означает, что при наличии неисправности индикатор горит.
Альфа-указатель DTC
Как видим, каждый символ имеет свое назначение. Первый символ принято называть альфа-указателем DTC. Этот символ указывает, в какой части автомобиля обнаружена неисправность. Выбор символа (P, B, C или U) определяется диагностируемым блоком управления. Когда получен ответ от двух блоков, используется буква для блока с более высоким приоритетом. В первой позиции могут находиться лишь четыре буквы:
* P (двигатель и трансмиссия);
* B (кузов);
* С (шасси);
* U (сетевые коммуникации).
Стандартный набор диагностических кодов ошибок (DTC)
В OBD II неисправность описывается с помощью диагностических кодов неисправностей (Diagnostic Trouble Code — DTC). Коды DTC в соответствии со спецификацией J2012 представляют собой комбинацию одной буквы и четырех цифр. На рис. 3 показано, что означает каждый символ. Рис. 3. Код ошибки
Типы кодов
Второй символ — наиболее противоречивый. Он показывает, что определил код. 0 (известный как код P0). Базовый, открытый код неисправности, определенный Ассоциацией автомобильных инженеров (SAE). 1 (или код P1). Код неисправности, определяемый производителем автомобиля. Большинство сканеров не могут распознавать описание или текст кодов P1. Однако такой сканер, как, например, Hellion, способен распознать большинство из них. Ассоциация SAE определила исходный перечень диагностических кодов ошибок DTC. Однако производители стали говорить о том, что у них уже есть собственные системы, при этом ни одна система не похожа на другую. Система кодов для автомобилей Mercedes отличается от системы Honda, и они не могут использовать коды друг друга. Поэтому ассоциация SAE пообещала разделить стандартные коды (P0) и коды производителей (P1).
Система, в которой обнаружена неисправность
Третий символ обозначает систему, где обнаружена неисправность. Об этом символе знают меньше, но он относится к наиболее полезным. Глядя на него, мы сразу можем сказать, какая система неисправна, даже не глядя на текст ошибки. Третий символ помогает быстро идентифицировать область, где возникла проблема, не зная точного описания кода ошибки.
* Топливно-воздушная система.
* Топливная система (например, инжекторы).
* Система зажигания.
* Вспомогательная система ограничения выбросов, например: клапан рециркуляции выхлопных газов (Exhaust Gas Recirculation System — EGR), система впуска воздуха в выпускной коллектор двигателя (Air Injection Reaction System — AIR), каталитический конвертер или система вентиляции топливного бака (Evaporative Emission System — EVAP).
* Система управления скоростным режимом или холостым ходом, а также соответствующие вспомогательные системы.
* Бортовая компьютерная система: модуль управления двигателем (Power-train Control Module — PCM) или сеть зоны контроллеров (CAN).
* Трансмиссия или ведущий мост.
* Трансмиссия или ведущий мост.
Индивидуальный код ошибки
Четвертый и пятый символы нужно рассматривать совместно. Они обычно соответствуют старым кодам ошибок OBDI. Эти коды, как правило, состоят из двух цифр. В системе OBD II также берутся эти две цифры и вставляются в конец кода ошибки — так ошибки легче различать.
Теперь, когда мы ознакомились с тем, как формируется стандартный набор диагностических кодов ошибок (DTC), рассмотрим в качестве примера код DTC P0301. Даже не глядя на текст ошибки, можно понять, в чем она состоит.
Буква P говорит о том, что ошибка возникла в двигателе. Цифра 0 позволяет заключить, что это базовая ошибка. Далее следует цифра 3, относящаяся к системе зажигания. В конце мы имеем пару цифр 01. В данном случае эта пара цифр говорит нам о том, в каком цилиндре имеет место пропуск зажигания. Собирая все эти сведения воедино, мы можем сказать, что возникла неисправность двигателя с пропусками зажигания в первом цилиндре. Если бы выдавался код ошибки P0300, это означало бы, что имеются пропуски зажигания в нескольких цилиндрах и система управления не может определить, какие именно цилиндры неисправны.
Самодиагностика неисправностей, приводящих к повышенной токсичности выбросов
Программное обеспечение, управляющее процессом самодиагностики, называется по-разному. Производители автомобилей Ford и GM именуют его администратором диагностики (Diagnostic Executive), а Daimler Chrysler — диспетчером задач (Task Manager). Это набор программ, совместимых с OBD II, которые выполняются в блоке управления двигателем (PCM) и наблюдают за всем, что происходит вокруг. Блок управления двигателем — самая настоящая рабочая лошадка! В течение каждой микросекунды он выполняет огромное количество вычислений и должен определять, когда следует открывать и закрывать инжекторы, когда нужно подавать напряжение на катушку зажигания, каково должно быть опережение угла зажигания и т. д. Во время этого процесса программное обеспечение OBD II проверяет, все ли перечисленные характеристики соответствуют нормам. Это программное обеспечение:
* управляет состоянием лампочки Check Engine;
* сохраняет коды ошибок;
* проверяет драйв-циклы, определяющие генерацию кодов ошибок;
* запускает и выполняет мониторы компонентов;
* определяет приоритет мониторов;
* обновляет статус готовности мониторов;
* выводит тестовые результаты для мониторов;
* не допускает конфликтов между мониторами.
Как показывает этот перечень, для того чтобы программное обеспечение выполняло возложенные на него задачи, оно должно обеспечивать и завершать работу мониторов в системе управления двигателем. Что же такое монитор? Его можно рассматривать как тест, выполняемый системой OBD II в блоке управления двигателем (PCM) для оценки правильности функционирования компонентов, ответственных за состав выбросов. Согласно OBD II, имеется 2 типа мониторов:
1. непрерывный монитор (работает все время, пока выполняется соответствующее условие);
2. дискретный монитор (срабатывает один раз в течение поездки).
Мониторы — очень важное понятие для OBD II. Они созданы для тестирования конкретных компонентов и обнаружения неисправностей в этих компонентов. Если компонент не может пройти тест, соответствующий код ошибки заносится в блок управления двигателем.
Стандартизация названий компонентов
В любой области существуют различные названия и жаргонные словечки для обозначения одного и того же понятия. Возьмем, к примеру, код ошибки. Некоторые называют его кодом, другие — ошибкой, третьи — «штуковиной, которая сломалась». Обозначение DTC — это и есть ошибка, код или «штуковина, которая сломалась». До появления OBD II каждый производитель придумывал свои имена компонентам автомобиля. Очень трудно было понять терминологию Ассоциации автомобильных инженеров (SAE) тому, кто пользовался названиями, принятыми в Европе. Теперь же благодаря OBD II во всех автомобилях должны использоваться стандартные имена компонентов. Жизнь стала намного легче для тех, кто ремонтирует автомобили и заказывает запасные части. Как всегда, когда во что-то вмешивается правительственная организация, сокращения и жаргон стали обязательными. Ассоциация SAE выпустила стандартизованный список терминов для компонентов автомобиля, относящихся к OBD II. Этот стандарт называется J1930. Сегодня по дорогам ездят миллионы автомобилей, в которых применяется система OBD II. Нравится это кому-то или нет — OBD II влияет на жизнь каждого человека, делая более чистым воздух вокруг нас. Система OBD II позволяет разрабатывать универсальные методики ремонта автомобилей и по-настоящему интересные технологии. Поэтому можно смело сказать, что OBD II — мостик в будущее автомобилестроения.
#obd2 #Elm327 #inpa #VagCom

Комментарии