Распиновка кабеля obd. Распиновка obd2

Все современные авто, особенно после 1996 года выпуска, включают в себя систему диагностики по универсальному протоколу OBD - OBD-II. Данные устройства могут быть построены на базе компьютера с интерфейсом, который подключается к 16-ти контактному диагностическому разъему. Диагностика и самотестирование в системах OBD 2 осуществляется подпрограммой, которая называется Diagnostic Executive . Подпрограмма с помощью специальных мониторов контролирует несколько различных систем авто, неисправность в работе которых может привести к увеличению токсичности выбросов. Подпрограмма выполняется в фоновом режиме - в то время, когда бортовой компьютер не занят выполнением основных функций управления.

Коды ошибок включают в себя категории:

"P" - is for powertrain codes;
"B" - is for body codes;
"C" - is for chassis codes.

Категория указывается в первой позиции пятизначного кода ошибки. Вторая позиция в этом коде говорит о стандарте, где "0" - общий для OBD-II код или "1" - если код производителя. Третья позиция - тип неисправности:

"1" и "2" - неисправности в топливной системе или воздухоподачи;
"3" - проблемы в системе зажигания;
"4" - для вспомогательного контроля эмиссии;
"5" - проблемы холостого хода;
"6" - неисправности контроллера или его выходных цепей;
"7" и "8" - неисправности трансмиссии.

Список кодов ошибок OBD

P0 1XX FUEL AND AIR METERING Измерители топлива и воздуха
PO 100 MAF or VAF CIRCUIT MALFUNCTION Неисправность цепи датчика расхода воздуха
PO 101 MAF or VAF CIRCUIT RANGE/PERF PROBLEM Выход сигнала из допустимого диапазона
PO 102 MAF or VAF CIRCUIT LOW INPUT Низкий уровень выходного сигнала
PO 103 MAF or VAF CIRCUIT HIGH INPUT Высокий уровень выходного сигнала
PO 105 MAP/BARO CIRCUIT MALFUNCTION Неисправность датчика давления воздуха
PO 106 MAP/BARO CIRCUIT RANGE/PERF PROBLEM Выход сигнала из допустимого диапазона
PO 107 MAP/BARO CIRCUIT LOW INPUT Низкий уровень выходного сигнала
PO 108 MAP/BARO CIRCUIT HIGH INPUT Высокий уровень выходного сигнала
PO 110 IAT CIRCUIT MALFUNCTION Неисправность датчика температуры всасываемого воздуха
PO 111 IAT RANGE/PERF PROBLEM Выход сигнала из допустимого диапазона
PO 112 IAT CIRCUIT LOW INPUT Низкий уровень выходного сигнала
PO 113 IAT CIRCUIT HIGH INPUT Высокий уровень выходного сигнала
PO 115 ECT CIRCUIT MALFUNCTION Неисправность датчика температуры охлаждающей жидкости
PO 116 ECT RANGE/PERF PROBLEM Выход сигнала из допустимого диапазона
PO 117 ECT CIRCUIT LOW INPUT Низкий уровень выходного сигнала
PO 118 ECT CIRCUIT HIGH INPUT Высокий уровень выходного сигнала
PO 120 TPS SENSOR A CIRCUIT MALFUNCTION Неисправность датчика положения дроссельной заслонки
PO 121 TPS SENSOR A RANGE/PERF PROBLEM Выход сигнала из допустимого диапазона
PO 122 TPS SENS A CIRCUIT LOW INPUT Низкий уровень выходного сигнала
PO 123 TPS SENS A CIRCUIT HIGH INPUT Высокий уровень выходного сигнала
PO 125 LOW ECT FOR CLOSED LOOP FUEL CONTROL Низкая температуры охлаждающей жид. для упр.по замкн.контуру
PO 130 02 SENSOR B1 S1 MALFUNCTION Датчик О2 В1 S1 несправен(Банк1)
PO 131 02 SENSOR B1 S1 LOW VOLTAGE Датчик О2 В1 S1 имеет низкий уровень сигнала
PO 132 02 SENSOR B1 S1 HIGH VOLTAGE Датчик О2 В1 S1 имеет высокий уровень сигнала
PO 133 02 SENSOR B1 S1 SLOW RESPONSE Датчик О2 В1 S1 имеет медленный отклик на обогащение/обеднение
PO 134 02 SENSOR B1 S1 CIRCUIT INACTIVE Цепь датчика О2 В1 S1 пассивна
PO 135 02 SENSOR B1 S1 HEATER MALFUNCTION Нагреватель датчика О2 В1 S1 несправен
PO 136 02 SENSOR B1 S2 MALFUNCTION Датчик О2 В1 S2 несправен
PO 137 02 SENSOR B1 S2 LOW VOLTAGE Датчик О2 В1 S2 имеет низкий уровень сигнала
PO 138 02 SENSOR B1 S2 HIGH VOLTAGE Датчик О2 В1 S2 имеет высокий уровень сигнала
PO 139 02 SENSOR B1 S2 SLOW RESPONSE Датчик О2 В1 S2 имеет медленный отклик на обогащение/обеднение
PO 140 02 SENSOR B1 S2 CIRCUIT INACTIVE Цепь датчика О2 В1 S2 пассивна
PO 141 02 SENSOR B1 S2 HEATER MALFUNCTION Нагреватель датчика О2 В1 S2 несправен
PO 142 02 SENSOR B1 S3 MALFUNCTION Датчик О2 В1 S3 несправен
PO 143 02 SENSOR B1 S3 LOW VOLTAGE Датчик О2 В1 S3 имеет низкий уровень сигнала
PO 144 02 SENSOR B1 S3 HIGH VOLTAGE Датчик О2 В1 S3 имеет высокий уровень сигнала
PO 145 02 SENSOR B1 S3 SLOW RESPONSE Датчик О2 В1 S3 имеет медленный отклик на обогащение/обеднение
PO 146 02 SENSOR B1 S3 CIRCUIT INACTIVE Цепь датчика О2 В1 S3 пассивна
PO 147 02 SENSOR B1 S3 HEATER MALFUNCTION Нагреватель датчика О2 В1 S3 несправен
PO 150 02 SENSOR B2 S1 CIRCUIT MALFUNCTION Датчик О2 В2 S1 несправен (Банк2)
PO 151 02 SENSOR B2 S1 CKT LOW VOLTAGE Датчик О2 В2 S1 имеет низкий уровень сигнала
PO 152 02 SENSOR B2 S1 CKT HIGH VOLTAGE Датчик О2 В2 S1 имеет высокий уровень сигнала
PO 153 02 SENSOR B2 S1 CKT SLOW RESPONSE Датчик О2 В2 S1 имеет медленный отклик на обогащение/обеднение
PO 154 02 SENSOR B2 S1 CIRCUIT INACTIVE Цепь датчика О2 В2 S1 пассивна
PO 155 02 SENSOR B2 S1 HTR CKT MALFUNCTION Нагреватель датчика О2 В2 S1 несправен
PO 156 02 SENSOR B2 S2 CIRCUIT MALFUNCTION Датчик О2 В2 S2 несправен
PO 157 02 SENSOR B2 S2 CKT LOW VOLTAGE Датчик О2 В2 S2 имеет низкий уровень сигнала
PO 158 02 SENSOR B2 S2 CKT HIGH VOLTAGE Датчик О2 В2 S2 имеет высокий уровень сигнала
PO 159 02 SENSOR B2 S2 CKT SLOW RESPONSE Датчик О2 В2 S2 имеет медленный отклик на обогащение/обеднение
PO 160 02 SENSOR B2 S2 CIRCUIT INACTIVE Цепь датчика О2 В2 S2 пассивна
PO 161 02 SENSOR B2 S2 HTR CKT MALFUNCTION Нагреватель датчика О2 В2 S2 несправен
PO 162 02 SENSOR B2 S3 CIRCUIT MALFUNCTION Датчик О2 В2 S3 несправен
PO 163 02 SENSOR B2 S3 CKT LOW VOLTAGE Датчик О2 В2 S3 имеет низкий уровень сигнала
PO 164 02 SENSOR B2 S3 CKT HIGH VOLTAGE Датчик О2 В2 S3 имеет высокий уровень сигнала
PO 165 02 SENSOR B2 S3 CKT SLOW RESPONSE Датчик О2 В2 S3 имеет медленный отклик на обогащение/обеднение
PO 166 02 SENSOR B2 S3 CIRCUIT INACTIVE Цепь датчика О2 В2 S3 пассивна
PO 167 02 SENSOR B2 S3 HTR CKT MALFUNCTION Нагреватель датчика О2 В2 S3 несправен
PO 170 BANK 1 FUEL TRIM MALFUNCTION Утечка топлива из топливной системы блока №1
PO 171 BANK 1 SYSTEM TOO LEAN Блок цилиндров №1 беднит (возможно подсос воздуха)
PO 172 BANK 1 SYSTEM TOO RICH Блок цилиндров №1 богатит (возможно неполное закрытие форсунки)
PO 173 BANK 2 FUEL TRIM MALFUNCTION Утечка топлива из топливной системы блока №2
PO 174 BANK 2 SYSTEM TOO LEAN Блок цилиндров №2 беднит (возможно подсос воздуха)
PO 175 BANK 2 SYSTEM TOO RICH Блок цилиндров №2 богатит (возможно неполное закрытие форсунки)
PO 176 FUEL COMPOSITION SENSOR MALFUNCTION Датчик выброса СНх неисправен
PO 177 FUEL COMPOSITION SENS CKT RANGE/PERF Сигнал датчика выходит из допустимого диапазона
PO 178 FUEL COMPOSITION LOW INPUT Низкий уровень сигнала датчика СНх
PO 179 FUEL COMPOSITION HIGH INPUT Высокий уровень сигнала датчика СНх
PO 180 FUEL TEMP SENSOR A CIRCUIT MALFUNCTION Цепь датчика температуры топлива «А» неисправна
PO 181 FUEL TEMP SENSOR A CIRCUIT RANGE/PERF Сигнал датчика «А» выходит из допустимого диапазона
PO 182 FUEL TEMP SENSOR A LOW INPUT Низкий сигнал датчика температуры топлива «А»
PO 183 FUEL TEMP SENSOR A HIGH INPUT Высокий сигнал датчика температуры топлива «А»
PO 185 FUEL TEMP SENSOR B CIRCUIT MALFUNCTION Цепь датчика температуры топлива «В» неисправна
PO 186 FUEL TEMP SENSOR RANGE/PERF Сигнал датчика «В» выходит из допустимого диапазона
PO 187 FUEL TEMP SENSOR B LOW INPUT Низкий сигнал датчика температуры топлива «В»
PO 188 FUEL TEMP SENSOR B HIGH INPUT Высокий сигнал датчика температуры топлива «В»
PO 190 FUEL RAIL PRESSURE CIRCUIT MALFUNCTION Цепь датчика давления топлива в топливной рампе неисправна
PO 191 FUEL RAIL CIRCUIT RANGE/PERF Сигнал датчика выходит из допустимого диапазона
PO 192 FUEL RAIL PRESSURE LOW INPUT Низкий сигнал датчика давления топлива
PO 193 FUEL RAIL PRESSURE HIGH INPUT Высокий сигнал датчика давления топлива
PO 194 FUEL RAIL PRESSURE CKT INTERMITTENT Сигнал датчика давления топлива перемежающийся
PO 195 ENGINE OIL TEMP SENSOR MALFUNCTION Цепь датчика температуры масла в двигателе неисправна
PO 196 ENGINE OIL TEMP SENSOR RANGE/PERF Сигнал датчика выходит из допустимого диапазона
PO 197 ENGINE OIL TEMP SENSOR LOW Низкий сигнал датчика температуры масла
PO 198 ENGINE OIL TEMP SENSOR HIGH Высокий сигнал датчика температуры масла
PO 199 ENGINE OIL TEMP SENSOR INTERMITTENT Сигнал датчика температуры масла перемежающийся
PO 2XX FUEL AND AIR METERING
PO 200 INJECTOR CIRCUIT MALFUNCTION Цепь управления форсункой неисправна

Остальные коды неисправностей .

Контакт Описание

1 OEM
2 J1850 Шина+ (Bus + Line, SAE)
3 OEM
4 Заземление кузова
5 Сигнальное заземление
6 Верхний контакт CAN (J-2284)
7 K Line ISO 9141-2
8 OEM
9 OEM
10 Bus - Line, Sae J1850 Шина
11 OEM
12 OEM
13 OEM
14 Нижний контакт CAN (J-2284)
15 L Line ISO 9141-2
16 Напряжение АКБ

Обращаем внимание на то, что наличие разъема не является 100% признаком совместимости с OBD 2. Автомобили, оборудованные этой системой обязательно должны иметь отметку в сопроводительной документации. Чаще всего используемый протокол можно определить по наличию определенных контактов на разъеме. Распиновку OBD и других разъёмов для различных типов автомобилей можно скачать в сборнике или смотрите здесь.


Распиновка ОBD-2 (On-Board Diagnostic) – термин, который обозначает стандарт при диагностике и контроле за деятельностью двигателя автомобиля, некоторых частей шасси и иных вспомогательных устройств.

История OBD-II началась еще в середине XX века, когда правительство Соединенных Штатов Америки неожиданно обнаружило, что автомобилестроение, которое они так яро поддерживают, в конечном счете приносит большой ущерб экологии, в целом, и человеку, в частности. Появлялись законодательные акты, но никто им не следовал. Однако когда пришел энергетический кризис, нерадивым производителям пришлось предпринимать хоть какие-то меры по спасению самих себя и своих потребителей. Именно на этом фоне стала бурно развиваться концепция, предполагающая стандартизацию такого устройства, как диагностический разъем OBD-II.

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

Основные составляющие данной системы, которые и обеспечивают стандартизацию или, другими словами, «распиновку» 16-ти контактных разъемов OBD-2 для проведения диагностических операций это:
Контакт 1 (определяется производителем);
Контакт 2 - шина J 1850;
Контакт 3 (определяется производителем);
Контакт 4 - заземление шасси;
Контакт 5 - сигнальное заземление.
Контакт 6 - CAN (прямой) J2284;
Контакт 7 - ISO 9141 - 2 (К - линия);
Контакт 8 и 9 (определяется производителем);
Контакт 10 - шина J1850;
Контакт 11, 12, 13 (определяются производителем).
Контакт 14 - CAN (инвестированный) J2284;
Контакт 15 - ISO 9141 - 2 (L - линия);
Контакт 16 - напряжение аккумулятора.

Основная функция диагностического разъема OBD-II состоит в обеспечении связи сканера с управленческими блоками. Такой разъем OBD-II, как DLC, относящийся к стандарту SAE J1962, должен размещаться примерно в центре автомобиля в 3 - 18 сантиметрах от руля. При этом производители имеют право подбирать многие контакты сами. Очень важно то, что в состав разъема OBD-2 (распиновка это предполагает) включено заземление и питание, позволяющие автосканеру успешно работать, не подключая никаких дополнительных источников питания.

CAN, J1850 и ISO 9141-2 - это разработанные Международными организациями стандарты, и каждый контакт разъема OBD-II в обязательном порядке должен соответствовать одному из этих документов. Например, распиновка разъема OBD-2 определяет, что автомобили марки Ford связываются контактом 2 и 10, а автомобили марки GM - только через контакт 2. Вы, в свою очередь, сможете определить совместимость своей машины по диагностической колодке разъема OBD-2 .
Если система обнаружит неисправность в составе выхлопных газов, появится надпись Check Engine (призыв к проверке двигателя) и загорится лампочка. Причем паниковать не стоит, ваша жизнь в безопасности, и ничего не взорвется. Индикатор разъема OBD-2 только предупреждает о том, что количество вредных выбросов превышает норму. Проверить же, как функционирует индикатор системы OBD-II можно, включив зажигание: когда на щитке загорятся все индикаторы, загорится и индикатор MIL.
На сегодняшний день по дорогам движутся миллионы автомобилей, хозяева которых применяют диагностический разъем OBD-II, и отношение к нему только положительное. Ведь OBD-2 распиновка позволяет нам дышать более чистым воздухом, а также без дорогостоящей помощи высококвалифицированных при наличии OBD-II разъема специалистов с максимальной точностью определять неисправности машины.

Диагностический разъем OBD-II, обязателен для всех легковых автомобилей так и для легких грузовиков. Впервые начал использоваться в Соединенных Штатах с 1996г. Порт, также известный как SAE, диагностический разъем j1962.

OBD обозначает бортовую диагностику и определяет современную систему электронного интерфейса транспортных средств, управляемых топливом, мониторинга и отчетности о работе двигателя в современных автомобилях, это своего рода компьютер, который контролирует выбросы, пробег, скорость, коды неисправности и многие другие полезные данные. Спецификации кабель OBD-II предусматривает аппаратный интерфейс стандартизированные — 16-контактный (2х8) разъем.

Как Это Работает?

Диагностические коды неисправности (DTC) хранятся в системе. Коды не обязательно одинаковы для всех автомобилей иностранных производителей они могут отличаться. Кроме того, механик (или кто-нибудь со сканером OBD-II) может подключиться к порту, и считать код неисправности, и определить проблему (или проблемы) с транспортного средства.

Где находится разъём OBD II?

Поиск по OBD-II разъем может быть трудной задачей, так как производители автомобилей, как правило, прячутся гнезда подальше от глаз пассажиров и водителей. Обычно ОБД-2 разъём находится на стороне водителя в салоне в районе центральной консоли. Иногда он находится в ногах у водителя, под рулем, в передняя панель, центральная площадь между сиденьем водителя и пассажирским сиденьем. Некоторые разъемы были расположены сзади пепельницы, под пассажирским сиденьем и под капотом автомобиля.

Виды разъемов OBD II

Существует два типа диагностических разъемов определено по SAE диагностический разъем j1962 — Тип A и Тип B, как показано ниже. Основное различие между двумя разъемами в форме на вкладке.

Распиновка OBD-2 разъема

ОБД-2 разъем должен иметь контакты 4, 5 для заземления и штырь 16 для 12 вольт питания от аккумулятора автомобиля.

Идея не новая, но вопросов много. С одной стороны, можно снять практически любые данные, а с другой стороны, OBDII похож на лоскутное одеяло, т.к. общее количество физических интерфейсов и протоколов напугает любого. А объясняется всё тем, что к моменту появления первых версий спецификаций OBD большинство автопроизводителей уже успели разработать что-то своё. Появление стандарта хоть и навело некоторый порядок, но потребовало включения в спецификацию всех интерфейсов и протоколов, которые на тот момент существовали, ну, или почти всех.

В OBDII разъёме по стандарту J1962M присутствуют три стандартных интерфейса: MS_CAN, K/L-Line, 1850, там же плюс аккумулятора и две земли (сигнальная и просто масса). Это по стандарту, остальные 7 из 16 выводов – ОЕМ, то есть каждый производитель эти выводы использует как ему заблагорассудится. Но и стандартизованные выводы зачастую имеют расширенные, продвинутые функции. Например, MS_CAN может быть HS_CAN, HS_CAN может быть на других пинах (неоговоренных стандартом) наряду со стандартным MS_CAN., Пин №1 может быть: у форда – SW_CAN, у WAGов – IGN_ON, у КИА – check_engene. И т.д. Все интерфейсы также не были стационарны в своём развитии: тот же интерфейс K –Line изначально был однонаправленным, сейчас он двунаправленный., Бодрейт CAN интерфейса также растёт. Вообще, подавляющее большинство европейских автомобилей 90-х и начала нулевых вполне себе можно было продиагностировать имея только K –Line, а большинство американских – только SAE1850. В настоящее время общий вектор развития – это всё более широкое применение CAN, повышение скорости обмена., всё чаще видим и однопроводный SW_CAN.

Существует мнение, что англоязычный программист сидя на профильных(англоязычных же) форумах, закопавшись в тексты стандартов, может за “максимум 4-5 месяцев” построить универсальный движок, который со всем этим разнообразием справится. На практике это не так. Всё равно возникает потребность сниферить каждую новую машину., иногда даже одну и ту же машину, но в разных комплектациях. И получается, что заявляют о 800-900 типах поддерживаемых автомобилей, а на практике 10-20 реально оттестированных. И это система, –в РФ автору известны, по-крайней мере, 3 команды разработчиков, пошедших по этому тернистому пути и все с одинаково плачевным результатом: нужно сниферить/кастомизировать каждую модель автомобиля, а ресурсов/средств на это нет. И причина этого вот в чем: стандарт-стандартом, а каждый производитель когда вынужденно, а когда и преднамеренно вносит в свою реализацию что-то своё, стандартом не описанное. Кроме того, не все данные по-умолчанию присутствуют на разъёме. Есть данные, появление которых нужно инициировать (дать тому или иному блоку автомобиля команду передать нужные данные).

И вот тут на сцену выходят интерпретаторы шины OBDII. Это микроконтроллер, с набором интерфейсов, соответствующих стандарту J1962M, переводящий всё многообразие данных на разных интерфейсах диагностических разъёмов в язык, более удобный для приложений, например для приложений диагностики. Иными словами, всё многообразие протоколов расшифровывается теперь приложением, не важно, на чём работающим – на компьютере с Windows или на планшете/смартфоне. Первым массовым интерпретатором OBDII с открытым протоколом стал ELM327. Это 8-ми битный микроконтроллер MicroChip PIC18F2580. Пусть читателя не удивляет тот факт, что этот микроконтроллер является массовым прибором общего применения. Прошивка как раз проприентарная и реальная стоимость “PIC18F2580+FirmWare” составляет внушительные 19-24$. То есть сканер, выполненный на “честном” чипе ELM327 не может стоить меньше, чем 50 вечнозелёных президентов. Откуда же на рынке такое разнообразие сканеров/адаптеров с ценами “от 1000рублей”, спросите Вы? А это наши китайские друзья постарались! Уж как они клонировали этот чип, травили кристалл послойно или сниферили денно и ночно – оставим за кадром. Но факт остаётся: на рынке появились клоны (для справки: 8-ми битный контроллер MicroChip в оптовых закупках ныне стоит меньше доллара). Другое дело, насколько правильно эти клоны работают. Есть мнение, что “пока народ покупает дешёвые адаптеры, автоэлектрики без работы не останутся”. То есть покупает человек адаптер с мыслью “чего-нибудь там перезалить или настроить”., а результат получает иной, ну, то есть, не тот, на который рассчитывал. Ну например, вдруг начинает всеми своими огоньками мультимедиа-система моргать, или выскакивает ошибка, или вообще коробка в аварийный режим переходит. И хорошо, если без серьезных последствий – в большинстве случаев специалист с профессиональным оборудованием вылечит железного коня. Но случается и иначе. Здесь могут смешаться сразу несколько факторов: неправильный адаптер(клон), неправильный софт, неправильная связка адаптер+софт, ну и “кривые” руки тоже свою роль сыграть могут. Замечу, что адаптер на честном чипе от производителя с правильным софтом к плачевным результатам не приведёт, по крайней мере, автору о таких случаях не известно.
А что можно сделать с помощью такого адаптера? Ну наверное, самый частый случай, положить в бардачок “на всякий случай”. Посмотреть и сбросить ошибку, коль скоро та появится. Одометр сбросить перед продажей авто, или наоборот, “накрутить” если ты наёмный водитель. Включить какую-либо опцию в автомобиле, которая по-умолчанию выключена, а у официального дилера эта услуга платная. Обновление прошивок и переконфигурирование электронных блоков, всё-таки оставим специалистам, но большинство адаптеров позволяют и это. Кому-то понравится просто иметь больше информации о параметрах работы двигателя и других систем в виде красивой графики на планшете или смартфоне. Часто встречаются на дороге, почему-то таксисты, у которых андроид-планшет установлен перед приборной панелью и полностью её перекрывает, так вот: планшет этот скорее всего подключен к такому адаптеру по блютузу или по Wi-Fi. Есть и ещё целый ряд применений, это использование такого адаптера совместно с телематическим прибором (трекером) или сигнализацией. Подключение к диагностическому разъёму посредством такого адаптера позволяет малой кровью снимать данные, необходимые для мониторинга. В большинстве случаев такой метод обходится разработчику дешевле, да и сама установка проще, ведь исчезает необходимость в установке различных датчиков, всё (ну или почти всё) можно снять с OBDII.
Другое дело, что возможности чипа в настоящее время уже недостаточны и для использования в современных автомобилях. Где-то в середине нулевых годов пошли вверх скорости обмена по шине CAN, появился SW_CAN. Но самое главное: возросла длина (количество символов) в кодовых словах. И если аппаратно можно, через реле или банальный тумблер, приляпать к ELM327 костыли, которые позволят работать и с MS и с HS да и с SW релизами CAN, то на длинные кодовые слова вычислительной мощности PIC18F2580 с его 4 MIPS явно недостаточно. К слову, последняя версия ELM327 (V1.4) датируется 2009 годом. И использовать этот чип без “костылей” можно только для автомобилей выпуска до середины нулевых. Так что же делать. Выход, как ни странно есть, причём не один.
CAN-LOG, тоже интерпретатор, но не полного набора интерфейсов OBDII, а двух CAN шин. Оказывается, этого достаточно, чтобы в большинстве случаев снять всю необходимую информацию. Правда, далеко не у всех автомобилей обе CAN шины выведены на диагностический разъём. Значит, придётся подключаться под панелью приборов. А это не всегда приемлемо из соображений сохранения гарантии, правда есть вариант беспроводного съёма информации с шины, но это ещё дороже, да и достоверность снятых данных не 100%. Можно использовать как готовый прибор, подключив его посредством УАРТа или RS232, так и просто чип, интегрировав его на плату устройства с небольшим количеством дискретных компонентов. Стоимость прибора – конечно выше, чем стоимость аутентичного ELM327, но это компенсируется огромным списком поддерживаемых автомобилей и функций. Причём в список поддерживаемых автомобилей включены не только легковые автомобили, но и также грузовики, строительная, дорожная и сельскохозяйственная техника. CAN-LOG работает несколько иначе, чем ELM327 и его клоны. При подключении к шинам автомобиля необходимо выбрать и установить номер программы, соответствующей автомобилю. И это удобно, т.к. разработчику не нужно вникать во всё многообразие протоколов. (В ELM327 выбор автомобиля и тонкая настройка чипа отданы на откуп приложению).
Существуют и иные решения, позволяющие легко и изящно снимать данные с диагностического разъёма. Ну а вопрос о том, можно ли приручить штатный диагностический разъём, и как, каждый разработчик решит сам. Для парка автомобилей одной марки, можно попытаться написать свой софт, если конечно производитель не закрывает протоколы. А если телематическое устройство будет устанавливаться на разные модели, то разумнее использовать какой-либо из OBDII интерпретаторов.

Идея не новая, но вопросов много. С одной стороны, можно снять практически любые данные, а с другой стороны, OBDII похож на лоскутное одеяло, т.к. общее количество физических интерфейсов и протоколов напугает любого. А объясняется всё тем, что к моменту появления первых версий спецификаций OBD большинство автопроизводителей уже успели разработать что-то своё. Появление стандарта хоть и навело некоторый порядок, но потребовало включения в спецификацию всех интерфейсов и протоколов, которые на тот момент существовали, ну, или почти всех.

В OBDII разъёме по стандарту J1962M присутствуют три стандартных интерфейса: MS_CAN, K/L-Line, 1850, там же плюс аккумулятора и две земли (сигнальная и просто масса). Это по стандарту, остальные 7 из 16 выводов – ОЕМ, то есть каждый производитель эти выводы использует как ему заблагорассудится. Но и стандартизованные выводы зачастую имеют расширенные, продвинутые функции. Например, MS_CAN может быть HS_CAN, HS_CAN может быть на других пинах (неоговоренных стандартом) наряду со стандартным MS_CAN., Пин №1 может быть: у форда – SW_CAN, у WAGов – IGN_ON, у КИА – check_engene. И т.д. Все интерфейсы также не были стационарны в своём развитии: тот же интерфейс K –Line изначально был однонаправленным, сейчас он двунаправленный., Бодрейт CAN интерфейса также растёт. Вообще, подавляющее большинство европейских автомобилей 90-х и начала нулевых вполне себе можно было продиагностировать имея только K –Line, а большинство американских – только SAE1850. В настоящее время общий вектор развития – это всё более широкое применение CAN, повышение скорости обмена., всё чаще видим и однопроводный SW_CAN.

Существует мнение, что англоязычный программист сидя на профильных(англоязычных же) форумах, закопавшись в тексты стандартов, может за “максимум 4-5 месяцев” построить универсальный движок, который со всем этим разнообразием справится. На практике это не так. Всё равно возникает потребность сниферить каждую новую машину., иногда даже одну и ту же машину, но в разных комплектациях. И получается, что заявляют о 800-900 типах поддерживаемых автомобилей, а на практике 10-20 реально оттестированных. И это система, –в РФ автору известны, по-крайней мере, 3 команды разработчиков, пошедших по этому тернистому пути и все с одинаково плачевным результатом: нужно сниферить/кастомизировать каждую модель автомобиля, а ресурсов/средств на это нет. И причина этого вот в чем: стандарт-стандартом, а каждый производитель когда вынужденно, а когда и преднамеренно вносит в свою реализацию что-то своё, стандартом не описанное. Кроме того, не все данные по-умолчанию присутствуют на разъёме. Есть данные, появление которых нужно инициировать (дать тому или иному блоку автомобиля команду передать нужные данные).

И вот тут на сцену выходят интерпретаторы шины OBDII. Это микроконтроллер, с набором интерфейсов, соответствующих стандарту J1962M, переводящий всё многообразие данных на разных интерфейсах диагностических разъёмов в язык, более удобный для приложений, например для приложений диагностики. Иными словами, всё многообразие протоколов расшифровывается теперь приложением, не важно, на чём работающим – на компьютере с Windows или на планшете/смартфоне. Первым массовым интерпретатором OBDII с открытым протоколом стал ELM327. Это 8-ми битный микроконтроллер MicroChip PIC18F2580. Пусть читателя не удивляет тот факт, что этот микроконтроллер является массовым прибором общего применения. Прошивка как раз проприентарная и реальная стоимость “PIC18F2580+FirmWare” составляет внушительные 19-24$. То есть сканер, выполненный на “честном” чипе ELM327 не может стоить меньше, чем 50 вечнозелёных президентов. Откуда же на рынке такое разнообразие сканеров/адаптеров с ценами “от 1000рублей”, спросите Вы? А это наши китайские друзья постарались! Уж как они клонировали этот чип, травили кристалл послойно или сниферили денно и ночно – оставим за кадром. Но факт остаётся: на рынке появились клоны (для справки: 8-ми битный контроллер MicroChip в оптовых закупках ныне стоит меньше доллара). Другое дело, насколько правильно эти клоны работают. Есть мнение, что “пока народ покупает дешёвые адаптеры, автоэлектрики без работы не останутся”. То есть покупает человек адаптер с мыслью “чего-нибудь там перезалить или настроить”., а результат получает иной, ну, то есть, не тот, на который рассчитывал. Ну например, вдруг начинает всеми своими огоньками мультимедиа-система моргать, или выскакивает ошибка, или вообще коробка в аварийный режим переходит. И хорошо, если без серьезных последствий – в большинстве случаев специалист с профессиональным оборудованием вылечит железного коня. Но случается и иначе. Здесь могут смешаться сразу несколько факторов: неправильный адаптер(клон), неправильный софт, неправильная связка адаптер+софт, ну и “кривые” руки тоже свою роль сыграть могут. Замечу, что адаптер на честном чипе от производителя с правильным софтом к плачевным результатам не приведёт, по крайней мере, автору о таких случаях не известно.
А что можно сделать с помощью такого адаптера? Ну наверное, самый частый случай, положить в бардачок “на всякий случай”. Посмотреть и сбросить ошибку, коль скоро та появится. Одометр сбросить перед продажей авто, или наоборот, “накрутить” если ты наёмный водитель. Включить какую-либо опцию в автомобиле, которая по-умолчанию выключена, а у официального дилера эта услуга платная. Обновление прошивок и переконфигурирование электронных блоков, всё-таки оставим специалистам, но большинство адаптеров позволяют и это. Кому-то понравится просто иметь больше информации о параметрах работы двигателя и других систем в виде красивой графики на планшете или смартфоне. Часто встречаются на дороге, почему-то таксисты, у которых андроид-планшет установлен перед приборной панелью и полностью её перекрывает, так вот: планшет этот скорее всего подключен к такому адаптеру по блютузу или по Wi-Fi. Есть и ещё целый ряд применений, это использование такого адаптера совместно с телематическим прибором (трекером) или сигнализацией. Подключение к диагностическому разъёму посредством такого адаптера позволяет малой кровью снимать данные, необходимые для мониторинга. В большинстве случаев такой метод обходится разработчику дешевле, да и сама установка проще, ведь исчезает необходимость в установке различных датчиков, всё (ну или почти всё) можно снять с OBDII.
Другое дело, что возможности чипа в настоящее время уже недостаточны и для использования в современных автомобилях. Где-то в середине нулевых годов пошли вверх скорости обмена по шине CAN, появился SW_CAN. Но самое главное: возросла длина (количество символов) в кодовых словах. И если аппаратно можно, через реле или банальный тумблер, приляпать к ELM327 костыли, которые позволят работать и с MS и с HS да и с SW релизами CAN, то на длинные кодовые слова вычислительной мощности PIC18F2580 с его 4 MIPS явно недостаточно. К слову, последняя версия ELM327 (V1.4) датируется 2009 годом. И использовать этот чип без “костылей” можно только для автомобилей выпуска до середины нулевых. Так что же делать. Выход, как ни странно есть, причём не один.
CAN-LOG, тоже интерпретатор, но не полного набора интерфейсов OBDII, а двух CAN шин. Оказывается, этого достаточно, чтобы в большинстве случаев снять всю необходимую информацию. Правда, далеко не у всех автомобилей обе CAN шины выведены на диагностический разъём. Значит, придётся подключаться под панелью приборов. А это не всегда приемлемо из соображений сохранения гарантии, правда есть вариант беспроводного съёма информации с шины, но это ещё дороже, да и достоверность снятых данных не 100%. Можно использовать как готовый прибор, подключив его посредством УАРТа или RS232, так и просто чип, интегрировав его на плату устройства с небольшим количеством дискретных компонентов. Стоимость прибора – конечно выше, чем стоимость аутентичного ELM327, но это компенсируется огромным списком поддерживаемых автомобилей и функций. Причём в список поддерживаемых автомобилей включены не только легковые автомобили, но и также грузовики, строительная, дорожная и сельскохозяйственная техника. CAN-LOG работает несколько иначе, чем ELM327 и его клоны. При подключении к шинам автомобиля необходимо выбрать и установить номер программы, соответствующей автомобилю. И это удобно, т.к. разработчику не нужно вникать во всё многообразие протоколов. (В ELM327 выбор автомобиля и тонкая настройка чипа отданы на откуп приложению).
Существуют и иные решения, позволяющие легко и изящно снимать данные с диагностического разъёма. Ну а вопрос о том, можно ли приручить штатный диагностический разъём, и как, каждый разработчик решит сам. Для парка автомобилей одной марки, можно попытаться написать свой софт, если конечно производитель не закрывает протоколы. А если телематическое устройство будет устанавливаться на разные модели, то разумнее использовать какой-либо из OBDII интерпретаторов.