Система бортовой самодиагностики (OBD) - общая информация

| На моделях, оборудованных системой OBD II, на установленной под капотом шильде должна присутствовать запись «OBD II compliant», а диагностический разъем DLC должен быть 16-контактным. Как правило, системой OBD II обязательно оснащаются модели, предназначенные для североамериканского рынка, начиная с 1996 г. вып., а также европейские модели, начиная с 2000 г. вып.

Общее описание системы OBD
Задачей любой бортовой системы самодиагностики (OBD) является выявление отказов и нарушений функционирования подконтрольных систем с занесением в память процессора соответствующих диагностических кодов (DTC) и оповещением водителя о факте нарушения (обычно посредством вмонтированной в комбинацию приборов контрольной лампы отказов MIL/«Проверьте двигатель»).
Помимо кода DTC в памяти ECM фиксируется также текущие рабочие параметры двигателя на момент выявления нарушения.
При нарушении исправности функционирования информационных датчиков, принимающих участие в процессе управления двигателем, ECM может произвести переключение систем в аварийный режим. При этом активируются базовые рабочие параметры, обеспечивающие адекватную работу двигателя (некоторый абсолютный псевдосигнал неисправного датчика симулируется непосредственно модулем управления), однако с неизбежным снижением эффективности его отдачи и увеличением расхода топилва, - автомобиль следует отогнать на станцию техобслуживания с целью выявления и устранения причин отказа.
В состав системы OBD входят несколько диагностических устройств, производящих мониторинг отдельных параметров систем снижения токсичности и фиксирующих выявленные отказы в памяти бортового процессора в виде индивидуальных кодов неисправностей. Система производит также проверку датчиков и исполнительных устройств, контролирует эксплуатационные циклы транспортного средства, обеспечивает возможность замораживания параметров и очистки блока памяти.
Рассматриваемые в настоящем Руководстве модели могут быть укомплектованы как системой бортовой диагностики второго поколения стандарта SAE (OBD II), так и фирменной системой OBD стандарта Subaru (некоторые из моделей 2.0 и 2.5 л). Основным элементом любой системы OBD является бортовой процессор, чаще называемый электронным модулем управления (ECM). ECM является мозгом системы управления двигателем. Исходные данные поступают на модуль от различных информационных датчиков и других электронных компонентов (выключателей, реле и т.д.), а также сигналы зарегистрированных OBD отказов и нарушений. Коды зарегистрированных неисправностей фиксируются в памяти процессора.

Считывание данных памяти процессора OBD производится при помощи специального сканера (стандарта SAE - GST или Subaru - SSM), подключаемого к 16-контактному диагностическому разъему считывания базы данных (DLC), расположенному под панелью приборов с водительской стороны автомобиля.
| Считывание кодов DTC на моделях с OBD II возможно при помощи как GST, так и SSM, на моделях с OBD Subaru - только с помощью монитора SSM.

На обслуживание компонентов систем управления двигателем/снижения токсичности отработавших газов распространяются особые гарантийные обязательства с продленным сроком действия. Не следует предпринимать попыток самостоятельного выполнения диагностики отказов ECM или замены компонентов системы, до выхода сроков данных обязательств, - обращайтесь к специалистам фирменных станций техобслуживания компании Subaru.
Сведения о диагностических приборах

| Проверка исправности функционирования компонентов систем управления двигателем и снижения токсичности отработавших газов может производиться при помощи универсального цифрового измерителя (мультиметра). Использование цифрового измерителя предпочтительно по нескольким причинам. Во-первых, по аналоговым приборам достаточно сложно (порой, невозможно), определить результат показания с точностью до сотых и тысячных долях, в то время как при обследовании контуров, включающих в свой состав электронные компоненты, такая точность приобретает особое значение. Второй, не менее важной, причиной является тот факт, что внутренний контур цифрового мультиметра, имеет достаточно высокий импеданс (внутреннее сопротивление прибора составляет 10 миллионов Ом). Так как вольтметр подсоединяется к проверяемой цепи параллельно, точность измерения тем выше, чем меньший паразитный ток будет проходить через собственно прибор. Данный фактор не является существенным при измерении относительно высоких значений напряжения (9 ÷ 12 В), однако становится определяющим при диагностике выдающих низковольтные сигналы элементов, таких, как, например, лямбда-зонд, где речь идет об измерении долей вольта.

Параллельное наблюдение параметров сигналов, сопротивлений и напряжений во всех цепях управления возможно при помощи разветвителя, включаемого последовательно в разъем модуля управления (ECM). Измерение параметров сигналов на клеммах разветвителя в различных режимах функционирования двигателя позволяет определять текущее состояние последнего и выявлять имеющие место нарушения.

| При диагностике электронных систем управления двигателем, трансмиссией, ABS и SRS применяются специальные сканеры стандарта SAE (GST), - OBD II, - или фирменный сканер Subaru Select Monitor (SSM), - OBD стандарта Subaru. Многие сканеры SAE второго поколения (OBD II) являются многофункциональными, за счет возможности смены картриджа в зависимости от модели диагностируемого автомобиля (Ford, GM, Chrysler и т.п.), другие привязаны к требованиям региональных властей и предназначены для использования в определенных районах мира (Европа, Азия, США и т.д.). Подключение сканера производится к бортовому диагностическому разъему DLC, назначение выводов которого разъяснено на иллюстрации.
| Попытки подключения к разъему DLC сканеров, отличных от GST OBD II или SSM чревато выходом из строя контура подключения монитора SSM!

Модели 2.0 и 2.5 л

1 | Питание от батареи
2 | Не используется
3 | Не используется
4 | Сигнал от ECM к сканеру SSM
5 | Сигнал от сканера SSM к ECM
6 | Тактовый сигнал SSM
7 | Не используется
8 | Не используется
9 | Не используется
10 | Линия К-Line ISO 9141 CARB
11 | Не используется
12 | Заземление
13 | Заземление
14 | Не используется
15 | Не используется
16 | Не используется

Модели 3.0 л

1 | Питание от батареи
2 | Не используется
3 | Не используется
4 | Не используется
5 | Не используется
6 | Тактовый сигнал SSM 1
7 | Не используется
8 | Тактовый сигнал SSM 2
9 | Не используется
10 | Линия К-Line ISO 9141 CARB
11 | Не используется
12 | Заземление
13 | Заземление
14 | Не используется
15 | Не используется
16 | Не используется

Еще одним способом считывания данных OBD является подключение к системе персонального компьютера, оборудованного специальным кабелем и оснащенного программным обеспечением OBD.

| Более подробную информацию считыванию данных при помощи сканеров можно узнать на сайтах www.obdii.com, www.obd-2.com и www.obd-2.de. Бесплатную версию броузера OBD-II можно скачать с сайта составителей настоящего Руководства arus.spb.ru.

| Универсальный адаптер К-L-Line (www.autoelectric.ru) служит для согласования сигналов порта RS-232 и интерфейсов ISO-9141 (K-Line) и ALDL. К разъемам адаптера могут подключаться различные кабели, позволяющие производить считывание данных OBD с автомобилей различных марок. Предусмотренные на адаптере переключатели и элементы индикации позволяют выбирать необходимые режимы работы и приблизительно оценивать качество функционирования выходных линий. Так, свечение зеленого светодиода с маркировкой L-Line свидетельствует о соединении линии L с массой автомобиля. Активация красного светодиода с маркировкой К-Line подтверждает о присутствии на линии К в текущий момент времени высокого потенциала. При установленной связи с системой OBD автомобиля мигание индикаторов может быть незаметно для глаза ввиду высокой скорости обмена данными. Подключение к компьютеру производится непосредственно в 25-контактный СОМ-порт или в 9-контактный СОМ-порт с помощью переходного кабеля RS232 25-9.

Некоторые считыватели помимо обычных диагностических операций позволяют при подсоединении к персональному компьютеру производить распечатывание хранящихся в памяти модуля управления принципиальные схемы различного оборудования (если таковые заложены в ECM), программировать противоугонную систему и блоки управления различных устройств автомобиля, а также в реальном времени наблюдать сигналы в электрических цепях автомобиля.
На некоторых моделях считывание занесенных в память системы OBD кодов DTC может быть произведено также при помощи вмонтированный в приборный щиток автомобиля контрольной лампы отказов MIL/«Проверьте двигатель», - см. ниже.
Считывание кодов DTC

| Более подробная информация по считыванию кодов неисправностей приведена в руководстве пользователя к сканеру. Список кодов неисправностей приведен в Спецификации к настоящей Главе.

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

1 — ECM 2 — Контрольная лампа отказов MIL/«Проверьте двигатель» 3 — Разъем режима тестирования | 4 — Диагностический разъем DLC (под SSM или GST)

Схема расположения интерактивных компонентов системы бортовой диагностики на моделях 2.0 и 2.5 л, оборудованных OBD Subaru

1 — ECM 2 — Контрольная лампа отказов MIL/«Проверьте двигатель» 3 — Разъем считывания данных из памяти процессора | 4 — Разъем режима тестирования 5 — Диагностический разъем DLC

Модели, оборудованные OBD II
С применением сканера SSM, включенного в нормальный режим (Subaru)
В главном меню (MAIN MENU) на экране дисплея выберите пункт {Each System Check} и нажмите клавишу «YES».
В поле {System Select Menu} выберите закладку {Engine Control System}и вновь нажмите «YES».
После вывода на экран данных о типе двигателя, нажмите «YES» еще раз.
В поле {Engine Diagnosis} выберите пункт {Diagnostic Code(s) Display} и нажмите «YES».
Далее выберите подпункт {Current Diagnostic Code(s)}, либо {History Diagnostic Code(s)}. Подтвердите выбор нажатием клавиши «YES» и произведите считывание выводимых на экран кодов DTC.
С применением сканера SSM, включенного в режим OBD (SAE)
В главном меню (MAIN MENU) на экране дисплея выберите пункт {2. Each System Check} и нажмите клавишу «YES».
В поле {System Select Menu} выберите закладку {Engine Control System}. И вновь нажмите «YES».
После вывода на экран данных о типе двигателя, нажмите «YES» еще раз.
В поле {Engine Diagnosis} выберите пункт {OBD System} и нажмите «YES».
В меню {OBD Menu} выберите пункт {Diagnostic Code(s) Display}, нажмите «YES» и удостоверьтесь в выводе кодов DTC на экран монитора.
С применением сканера GST (SAE)
Действуйте в соответствии с прикладываемыми к сканеру инструкциями.
Модели, оборудованные OBD Subaru
С применением сканера SSM
Действуйте в соответствии с инструкциями.
Без применения сканера SSM (по контрольной лампе отказов MIL/«Проверьте двигатель»)
Выключите зажигание и соедините разъем считывания данных из памяти процессора.
Включите зажигание. Если при включении зажигания контрольная лампа MIL активируется, переходите к следующему этапу проверки, в противном случае проверьте на наличие обрывов и коротких замыканий электропроводку подачи питания и заземления ECM, а также электропроводку лампы MIL. Произведите необходимые исправления.
Удостоверьтесь в исправности высвечивания контрольной лампой отказов кода неисправности (DTC). Перепишите идентифицированные коды, затем выключите зажигание и рассоедините разъем считывания данных.

| Контрольная лампа отказов (MIL) высвечивает занесенные в память ECM коды DTC в виде последовательности проблесков различной длины. При этом длинными проблесками (продолжительностью порядка 1.3 секунды) обозначаются десятичные разряды кода, короткими (длительностью около 0.2 с) - единичные разряды, последовательность проблесков продолжительностью 0.5 секунды соответствует коду отсутствия DTC в памяти процессора.

Информационное содержание разрядов 5-разрядного кода вида P0380
Разряды кода вида Р 0 3 8 0 имеют следующее значение (слева направо):
Разряд 1
P — Силовой агрегат
B — Кузов
С — Шасси
Разряд 2 Источник кода
0 — Стандарт SAE
1 — Расширенный - задаваемый производителем
Разряд 3 Система
0 — Система в целом
1 — Система подмешивания воздуха (Air/Fuel Induction)
2 — Система впрыска топлива
3 — Система зажигания/Пропуски зажигания
4 — Система дополнительного контроль выпуска
5 — Скорость автомобиля и управление оборотами х/х
6 — Входные и выходные сигналы модуля управления
7 — Трансмиссия
Разряды 4 и 5
Порядковый номер неисправности компонента или цепи 00-99
Процедура общей диагностики автомобиля

| Более подробная информация по считыванию кодов неисправностей приведена в руководстве пользователя к сканеру. Список кодов неисправностей приведен в Спецификациях к настоящей Главе.

Модели, оборудованные OBD II
Подготовка
Поднимите автомобиль над землей, либо загоните его на роликовый стенд.

| Помните, что во время проверки вращаться будут все четыре колеса автомобиля, - проследите, чтобы вблизи колес не находились никакие инструменты и посторонние предметы!

Проверка с применением сканера SSM

| После завершения проверки и очистки памяти процессора удостоверьтесь в отсутствии оставшихся не идентифицированными данных.

| Извлеките из чемоданчика сканер SSM и подсоедините к нему диагностический кабель. Заправьте в сканер рабочий картридж.

Соедините половинки расположенного слева под панелью приборов разъема режима тестирования.
Подключите SSM к расположенному также слева под панелью приборов диагностическому разъему DLC.

| Разъем DLC предназначен для подключения только сканеров типа SSM или GST OBD-II!

| Включите зажигание (двигатель не запускайте), затем включите питание сканера.

В главном меню (MAIN MENU) на экране дисплея выберите пункт {Each System Check} и нажмите клавишу «YES».
В поле {System Select Menu} выберите закладку {Engine Control System}. И вновь нажмите «YES».
После вывода на экран данных о типе двигателя, нажмите «YES» еще раз.
В поле {Engine Diagnosis} выберите пункт {Dealer Check Mode Procedure} и нажмите «YES».
После вывода на экран монитора вопроса «Perform Inspection (Dealer Check) Mode?» введите подтверждение, также путем нажатия на клавишу «YES».
Далее действуйте согласно выводимым на экран инструкциям. Если после завершения процедуры в памяти процессора сохранятся какие-либо DTC, соответствующая информация будет выведена на экран монитора.
Отпустите стояночный тормоз, - разница в частоте вращения передних и задних колес может явиться причиной срабатывания контрольной лампы ABS, однако не следует рассматривать как признак нарушения, - после завершения процедуры диагностики системы управления двигателем не забудьте удалить из памяти процессора код неисправности ABS.
Проверка с применением сканера GST

| После завершения проверки и очистки памяти процессора удостоверьтесь в отсутствии оставшихся не идентифицированными данных.

Соедините половинки расположенного слева под панелью приборов разъема режима тестирования.
Подключите GST к расположенному также слева под панелью приборов диагностическому разъему DLC.

| Разъем DLC предназначен для подключения только сканеров типа SSM или GST-OBD II!

Запустите двигатель, - предварительно удостоверьтесь, что рычаг селектора АТ находится в положении «Р».
При помощи рычага селектора/переключения передач активируйте датчики-выключатели положений «Р» и «N» трансмиссии.
Для активации датчика-выключателя стоп-сигналов выжмите педаль ножного тормоза.
В течение около 40 секунд удерживайте частоту вращения двигателя в диапазоне 2500 ÷ 3000 об/мин.

| На моделях без встроенного тахометра воспользуйтесь тахометром с индуктивным подключением.

Переведите рычаг селектора в положение «D» и установите скорость движения 5 ÷ 10 км/ч (3 ÷ 6 миль/ч).

| На моделях AWD не забудьте отпустить стояночный тормоз, - разница в частоте вращения передних и задних колес может явиться причиной срабатывания контрольной лампы ABS, однако не следует рассматривать как признак нарушения, - после завершения процедуры диагностики системы управления двигателем не забудьте удалить из памяти процессора код неисправности ABS.

При помощи сканера GST считайте и перепишите занесенные в память процессора коды неисправностей (DTC).
Модели, оборудованные OBD Subaru
Проверка с применением сканера SSM
Действуйте в соответствии с указаниями, приведенными в подразделе Проверка с применением сканера SSM выше.
Проверка без применения сканера SSM

| На моделях AWD не забудьте отпустить стояночный тормоз, - разница в частоте вращения передних и задних колес может явиться причиной срабатывания контрольной лампы ABS, однако не следует рассматривать как признак нарушения, - после завершения процедуры диагностики системы управления двигателем не забудьте удалить из памяти процессора код неисправности ABS.

Запустите двигатель и прогрейте его до нормальной рабочей температуры.
Выключите зажигание и включите нейтральную передачу (модели с РКПП)/переведите рычаг селектора в положение «Р» (модели с АТ).
Соедините половинки разъема режима тестирования (окрашен в зеленый цвет), затем включите зажигание, - если произошла активация контрольной лампы отказов (MIL), переходите к следующему этапу проверки, в противном случае проверьте на наличие обрывов и коротких замыканий электропроводку подачи питания и заземления ECM, а также электропроводку лампы MIL. Произведите необходимые исправления.
На моделях с АТ переведите рычаг селектора в положение «N», затем в «Р».
Запустите двигатель и перепишите высвечиваемые контрольной лампой MIL коды. Если лампа никакие коды не высвечивает, переходите к следующему этапу проверки.
Минимум на одну минуту разгоните автомобиль до скорости 11 км/ч (7 миль/ч).
Поднимите частоту вращения двигателя до значения свыше 2000 об/мин. Перепишите высвечиваемые лампой MIL коды, - если никакие коды лампой не выводятся, следовательно, отказ имеет иную причину.
Очистка памяти системы самодиагностики

| Более подробная информация по считыванию кодов неисправностей приведена в руководстве пользователя к сканеру.

Модели, оборудованные OBD II
С применением сканера SSM, включенного в нормальный режим (Subaru)
В главном меню (MAIN MENU) на экране дисплея выберите пункт {2. Each System Check} и нажмите клавишу «YES».
В поле {System Select Menu} выберите закладку {Engine Control System}. И вновь нажмите «YES».
После вывода на экран данных о типе двигателя, нажмите «YES» еще раз.
В поле {Engine Diagnosis} выберите пункт {Clear Memory} и нажмите «YES».
После того как на экран монитора будут выведены сообщения «Done» и «Turn Ignition Switch OFF», выключите сканер, затем поверните ключ в замке зажигания в положение OFF.

| На моделях 2.0 и 2.5 л после завершения очистки памяти процессора необходимо произвести инициализацию электромагнитного клапана стабилизации оборотов холостого хода (IAC), - поверните ключ в положение ON и, прежде чем осуществлять запуск двигателя, обождите не менее 3 секунд.

С применением сканера SSM, включенного в режим OBD (SAE)
В главном меню (MAIN MENU) на экране дисплея выберите пункт {2. Each System Check} и нажмите клавишу «YES».
В поле {System Select Menu} выберите закладку {Engine Control System}. И вновь нажмите «YES».
После вывода на экран данных о типе двигателя, нажмите «YES» еще раз.
В поле {Engine Diagnosis} выберите пункт {OBD System} и нажмите «YES».
В меню {OBD Menu} выберите пункт {4. Diagnosis Code(s) Cleared}, нажмите «YES».
После вывода на экран запроса «Clear Diagnosis Code?» введите подтверждение нажатием клавиши «YES», затем выключите питание сканера и зажигание.

| На моделях 2.0 и 2.5 л после завершения очистки памяти процессора необходимо произвести инициализацию электромагнитного клапана IAC.

С применением сканера GST (SAE)
Действуйте в соответствии с прикладываемыми к сканеру инструкциями. На моделях 2.0 и 2.5 л не забудьте произвести инициализацию клапана IAC.
Модели, оборудованные OBD Subaru
С применением сканера SSM
Действуйте в соответствии с инструкциями, приведенными выше.
Без применения сканера SSM (по контрольной лампе отказов MIL/»Проверьте двигатель»)
Выключите зажигание и включите нейтральную передачу (модели с РКПП)/переведите рычаг селектора в положение «Р» (модели с АТ).
Соедините половинки разъема режима тестирования (окрашен в зеленый цвет), затем включите зажигание, - если произошла активация контрольной лампы отказов (MIL), переходите к следующему этапу проверки, в противном случае проверьте на наличие обрывов и коротких замыканий электропроводку подачи питания и заземления ECM, а также электропроводку лампы MIL. Произведите необходимые исправления.
На моделях с АТ переведите рычаг селектора в положение «N», затем в «Р».
Запустите двигатель и минимум на одну минуту разгоните автомобиль до скорости 11 км/ч (7 миль/ч).
Поднимите частоту вращения двигателя до значения свыше 2000 об/мин. Перепишите высвечиваемые лампой MIL коды и произведите необходимый восстановительный ремонт (список кодов DTC приведен в Спецификациях).
Выключите зажигание и рассоедините разъем режима тестирования.
Подключение персонального компьютера к бортовой системе самодиагностики OBD II посредством интерфейсного контроллера BR16F84-1.0 по протоколам стандартов SAE (PWM и VPW) и ISO 9141-2

| Контроллер не предназначен подключения к бортовым системам самодиагностики первого поколения (OBD I)! Стандарту VPW отвечают модели производства компании GM, PWM - Ford, ISO 9141-2 - азиатские и европейские модели.

Общие данные
Схема организации подключения представлена на иллюстрации.

Рассматриваемое устройство представляет собой микроконтроллер, выполненный по технологии КМОП (CMOS). Устройство исполняет роль простейшего сканера и предназначено для считывания диагностических кодов и данных системы OBD II (обороты двигателя, температура охлаждающей жидкости и всасываемого воздуха, нагрузочные характеристики, расход поступающего в двигатель воздуха и т.п.) в рамках стандарта SAE J1979 через шину любого исполнения (PWM, VPW и ISO 9141-2).
Основное предназначение
Для подключения к компьютеру достаточно 3-жильного провода, подключение к диагностическому разъему осуществляется 6-жильным проводом. Напряжение питания подается на контроллер через 16-контактный диагностический разъем OBD.
Рекомендации по применению
Для подключения устройства к автомобилю может быть использован неэкранированный кабель, длиной не более 1.2 м, что имеет особое значение при использовании протокола PWM. При использовании кабеля большей длины следует уменьшить сопротивление резисторов на входе устройства (R8 и R9 или R15). При использовании экранированного кабеля, экран следует отключить с целью снижения емкости.
Кабель для подключения к последовательному порту компьютера также может быть неэкранированным. Устройство стабильно работает с кабелем длиной до 9 м. При значительно большей длине кабеля следует использовать более мощный коммуникатор RS 232.
Топология электрических соединений произвольна. При повышенной влажности применяйте дополнительные шунтирующие конденсаторы.
Бесплатное программное обеспечение (броузер) для считывания кодов и данных может быть скачано с сайтов производителей либо сайта нашего издательства arus.spb.ru и предназначено для использования под DOS. Незначительный размер программного приложения в варианте «под DOS» позволяет вместить его на загрузочную дискету DOS и использовать даже на компьютерах, оснащенных несовместимым с DOS программным обеспечением. Необязательным условием является даже наличие в компьютере жесткого диска.
Общие принципы обмена данными

| Если противное не оговорено особо, все числа приведены в 16-ричном формате (hex). Десятичный формат обозначается меткой dec.

Обмен данными идет по трехпроводному последовательному соединению без применения инициализационного обмена служебными сообщениями (handshaking). Устройство прослушивает канал на наличие сообщений, выполняет принимаемые команды и передает результаты на персональный компьютер (PC), после чего немедленно возвращается в режим прослушивания. Входящие в контроллер и исходящие из него данные организованы в виде цепочки последовательно идущих друг за другом байтов, первый из которых является контрольным. Обычноконтрольный байт представляет собой число от 0 до 15 dec (в десятичном исчислении) (или 0-F hex), описывающее количество следующих далее информационных байтов. Так, например, 3-байтная команда будет выглядеть следующим образом: 03 (контрольный байт), 1-й байт, 2-й байт, 3-й байт. Подобный формат используется как для входящих команд на опрос бортовой системы самодиагностики, так и для исходящих сообщений, содержащих запрошенную информацию. Следует заметить, что в контрольном байте используются лишь четыре младших бита, - старшие биты зарезервированы под некоторые специальные команды и могут быть использованы PC при инициализации соединения с контроллером и согласовании протокола передачи данных, а также контроллером для контроля ошибок передачи. В частности, в случае ошибки при передаче, контроллер производит установку старшего значащего бита (MSB) контрольного байта в единицу. При успешной передаче все четыре старших бита устанавливаются в ноль.

| Существуют отдельные исключения из правил использования контрольного байта.

Инициализация контроллера и бортовой системы самодиагностики
Для начала обмена данными PC должен произвести установку соединения с контроллером, затем инициализировать контроллер и канал данных OBD II.
Установка соединения
После подсоединения контроллера к PC и диагностическому разъему OBD должна быть произведена его инициализация с целью предотвращения «зависаний», связанных с шумами в последовательных линиях в случае если их подсоединение было произведено до включения питания контроллера. Одновременно производится простейшая проверка активности интерфейса. В первую очередь посылается однобайтовый сигнал 20 hex, воспринимаемый контроллером как команда на установку соединения. В ответ контроллер вместо контрольного высылает единственный байт FF hex (255 dec) и переходит в режим ожидания приема данных. Теперь PC может переходить к инициализации канала данных.

| Данный случай является одним из немногих, когда контроллер не использует контрольный байт.

Инициализация
На данном этапе производится инициализация протокола, по которому будет производиться обмен данными, а в случае протокола ISO – инициализация бортовой системы. Обмен данными производится по одному из трех протоколов: VPW (General Motors), PWM (Ford) и ISO 9141-02 (азиатские/европейские производители).

| Существует множество исключений: так, например, при опросе некоторых моделей автомобилей Mazda может использоваться «фордовский» протокол PWM. Таким образом, при возникновении проблем передачи следует в первую очередь попытаться воспользоваться каким-либо другим протоколом. Выбор протокола производится передачей комбинации, состоящей из контрольного байта 41 hex и следующего непосредственно за ним байта, определяющего тип протокола: 0 = VPW, 1 = PWM, 2 = ISO 9141. Так, например, по команде 41 02 hex производится инициализация протокола ISO 9141.

В ответ контроллер высылает контрольный байт и байт состояния. Установка MSB контрольного байта говорит о наличии проблем, при этом следующий за ним байт состояния будет содержать соответствующую информацию. При успешной инициализации высылается контрольный байт 01 hex, указывающий на то, что далее следует верификационный байт состояния. В случае протоколов VPW и PWM верификационный байт представляет собой простое эхо определяющего протокол байта (0 или 1, соответственно), при инициализации протокола ISO 9141 это будет цифровой ключ, возвращаемый бортовым процессором OBD и определяющий, какая именно из двух незначительно отличающихся друг от друга версий протокола будет использоваться.

| Цифровой ключ имеет чисто информационное назначение. Следует заметить, что инициализация протоколов VPW и PWM происходит значительно быстрее, так как требует лишь передачи соответствующей информации контроллеру. На моделях, отвечающих стандарту ISO, инициализация занимает порядка 5 секунд, затрачиваемых на информационный обмен контроллера с бортовым процессором, производимый со скоростью 5 бод. Следует обратить внимание читателя, что на некоторых моделях автомобилей семейства ISO 9141 инициализация протокола приостанавливается, если запрос на выдачу данных не будет передан в течение 5-секундного интервала, - сказанное означает, что PC должен производить автоматическую выдачу запросов каждые несколько секунд, даже в холостом режиме.

После установки соединения и инициализации протокола начинается штатный обмен данными, состоящими из поступающих от PC запросов и выдаваемых контроллером ответов.
Порядок обмена данными
Функционирование контроллера при использовании протоколов семейства ISO 9141-2 и SAE (VPW и PWM) происходит по несколько различным сценариям.
Обмен по протоколам SAE (VPW и PWM)
При обмене данными по данным протоколам происходит буферизация лишь одного кадра данных, что означает необходимость конкретизации подлежащего захвату или возврату кадра. В некоторых (редких) случаях бортовой процессор может передавать пакеты, состоящие более чем из одного кадра. В такой ситуации запрос должен повторяться до тех пор, пока все кадры пакета не будут приняты.
Запрос всегда формируется следующим образом: [Контрольный байт], [Запрос по стандарту SAE], [Номер кадра]. Как уже упоминалось выше, контрольный байт обычно представляет собой число, равное полному количеству следующих за ним байтов. Запрос оформляется в соответствии со Спецификациями SAE J1950 и J1979 и состоит из заголовка (3 байта), последовательности информационных байтов и байта контроля ошибки (CRC) . Заметим, что в то время как информация по запросу формируется в строгом соответствии со Спецификациями SAE, потребителем контрольного байта и номера кадра является интерфейсный контроллер.
При успешном завершении процедуры ответное сообщение всегда имеет следующий формат: [Контрольный байт], [Ответ по стандарту SAE]. Контрольный байт, как и ранее, определяет количество следующих за ним информационных байтов. Ответ в соответствии с требованиями стандарта SAE состоит из заголовка (3 байта), цепочки информационных байтов и байта CRC.
При сбое высылается 2-байтное ответное сообщение: [Контрольный байт], [Байт состояния]. При этом в контрольном байте производится установка MSB. Четыре младших бита формируют число 001, свидетельствующее о том, что за контрольным следует единственный байт, - байт состояния. Данная ситуация может возникать достаточно часто, так как Спецификации допускают возможность невыдачи бортовым процессором данных, а также передачу неверных данных в случае, когда запрос не соответствует поддерживаемому производителями автомобиля стандарту. Возможна также ситуация, когда запрашиваемые данные отсутствуют в оперативной памяти процессора в текущий момент времени. Когда контроллер не получает ожидаемого ответа, или получает поврежденные данные, производится установка MSB контрольного байта, а следом за контрольным выдается байт состояния.
При коллизиях в шине интерфейс вырабатывает единственный байт 40 hex, являющийся контрольным байтом с обнуленным младшим битом. Подобная ситуация может возникать достаточно часто при загрузке автомобильной шины сообщениями более высокого чем у диагностических данных приоритета, - вычислительное устройство должно повторить исходный запрос.
Обмен по протоколам ISO 9141-2
Стандарт ISO 9141-2 используется большинством азиатских и европейских производителей автомобильной техники. Структура формируемого PC запроса мало чем отличается от используемой в стандартах SAE, с той лишь разницей, что контроллер не нуждается в информации о номере кадра и соответствующие данные присутствовать в пакете не должны. Таким образом, запрос всегда состоит из контрольного байта и следующей за ним цепочки информационных байтов, включающих в себя контрольную сумму. В качестве ответного сообщения контроллер просто ретранслирует сформированные бортовым процессором сигналы. Контрольный байт в ответном сообщении отсутствует, поэтому PC воспринимает поступающую информацию непрерывным потоком до тех пор, пока цепочка не прерывается паузой в 55 миллисекунд, сообщающей о завершении информационного пакета. Таким образом, ответное сообщение может состоять из одного или более кадров в соответствии с требованиями спецификаций SAE J1979. Контроллер не производит анализ кадров, не отбрасывает недиагностические кадры и т.д. PC должен собственными силами производить обработку поступающих данных с целью вычленения отдельных кадров путем анализа заголовочных байтов.

| Ответы на большинство запросов состоят из единственного кадра.

Модификации, произведенные в интерфейсных контроллерах последних версий

| Все информационные байты передаются в 16-ричном формате (hex). Символом XX означается неопределенный, зарезервированный или неопознанный байт.

Ниже приведены основные отличия процесса передачи данных по протоколам SAE и ISO 9141, характерные для интерфейсных контроллеров последних версий, а также порядок передачи данных по протоколу ISO 14230:
1) Стандарт ISO 9141: Добавлен адресный байт;
2) Стандарт ISO 9141: Осуществляется возврат не одного, а обоих ключевых байтов (дополнительный байт возвращается также в режимах SAE, однако здесь он не используется);
3) Добавлена поддержка протокола ISO 14230.
Установка соединения
Порядок установки соединения не изменился:
Отправка: 20
Прием: FF
Выбор протокола
Протокол выбирается в следующим образом:
VPW:
Отправка: 41, 00
Прием: 02, 01, XX
PWM:
Отправка: 41, 01
Прием: 02, 01, XX
ISO 9141:
Отправка: 42, 02, adr, где: adr - адресный байт (обычно 33 hex)
Прием: 02, К1, К2, где К1, К2 - ключевые байты ISO
Или:
82, XX, XX (ошибка инициализации ISO 9141)
ISO 14230 (быстрая инициализация):
Отправка: 46, 03, R1, R2, R3, R4, R5, где: R1 ÷ R5 - сообщение о начале запроса ISO 14230 на установку соединения, обычно R1 ÷ R5 = С1, 33, F1, 81, 66
Прием: S1, S2, ………, где S1, S2, ……… - сообщение о начале ответа ISO 14230 на установку соединения

| Могут передаваться последовательно более одного ECU. В качестве ответа может использоваться отрицательный код ответа.

Типичный положительный ответ выглядит следующим образом: S1, S2, ……. = 83, F1, 10, С1, Е9, 8F, BD
ISO 14230 (медленная инициализация):
Аналогично ISO 9141
Замечание и комментарии
Если планируется использование контроллера для передачи данных лишь по какому-либо одному или двум из протоколов, лишние компоненты могут быть исключены. Например, при организации схемы под протокол VPW (GM) в проводе подключения контроллера к автомобилю потребуются лишь три жилы электропроводки (клеммы 16, 5 и 2).
Если не используется протокол PWM, могут быть исключены элементы R4, R6, R7, R8, R9, R10, Т1, Т2 и D1.
При отказе от обмена по протоколу ISO исключению подлежат элементы: R15, R16, R17, R18, R19, R21, Т4 и Т5.
Отказ от использования протокола VPW позволяет исключить следующие элементы: R13, R14, R23, R24, D2, D3 и Т3.
Применены угольно-пленочные резисторы с 5-процентным допуском сопротивления.
Обратите внимание на отсутствие кнопки аварийной перезагрузки (RESET), - в случае необходимости такая перезагрузка может быть произведена путем отсоединения контроллера от автомобильного разъема (перезагрузка интерфейсного процессора произойдет автоматически). Перезапуск программного обеспечения на PC приводит к повторной инициализации интерфейса.