Всепротокольный obd 2 aiipro адаптер своими руками

Опубликовано: 01.05.2024

Всепротокольный OBD-2 AIIpro адаптер своими руками

Это, возможно, случалось с каждым из нас: вы едете в собственном автомобиле и внезапно желтая лампочка «Check Engine» загорается на приборной панели как тревожное предупреждение о том, что появились какие-то неприятности с двигателем. К сожалению, это оно само по себе не дает каких-либо намеков на то, что именно есть обстоятельством неполадки и вероятно значит все что угодно, начиная от неплотно закрытой крышки топливного бака до неприятностей с каталитическим конвертером. Я не забываю, как Honda Integra 94-го года имела ЭБУ под креслом водителя и красный светодиод начинал мигать, в случае если появлялись какие-то неприятности с двигателем. Подсчитав количество «блинков», возможно было выяснить код неточности.

По мере того, как ЭБУ машин становятся все более и более сложными, количество кодов неточностей возрастает экспоненциально. Применение бортовой диагностики автомобиля On-Board Diagnostic (OBD-II) разрешает решить эту проблему. Этот адаптер разрешает применять ПК для OBD диагностики. Адаптер AllPro функционально совместим с ELM327 и поддерживает все существующие OBD-II протоколы обмена данными:
• ISO 9141-2
• ISO 14230-4 (KWP2000)
• SAE PWM J1850 (Pulse Width Modulation)
• SAE VPW J1850 (Variable Pulse Width)
• ISO 15765-4 Controlled Area Network (CAN)
VPW, PWM и CAN
Первых два протокола ISO обрисованы в вышеуказанной прошлой публикации. Детальное описание OBD протоколов выходит за рамки данной статьи, я только их коротко перечислю.
J1850 VPW (Variable Pulse Width) — протокол машин Дженерал моторс и некоторых моделей Chrysler со скоростью передачи 10.4 кбит/с по одному проводу. Напряжение на шине VPW изменяется от 0 до 8 В, эти по шине передаются чередованием маленьких (64 мкс) и долгих (128 мкс) импульсов. Настоящая же скорость передачи данных по шине изменяется в зависимости от битовой маски данных и находится в пределах от 976 до 1953 байт/с.

Это самый медленный из OBD протоколов.

J1850 PWM (Pulse With Modulation) употребляется в машинах корпорации Ford. Скорость передачи тут 41.6 кбит/ с с применением дифференциального сигнала по двум проводам. Напряжение на шине изменяется от 0 до 5 В, a продолжительность импульса образовывает 24 мкс.

Работа с этим протоколом требует аккуратности в программировании процессора, поскольку скорость исполнения руководств языка «C» на PIC процессоре кроме того с улучшенной PIC18 архитектурой делается сопоставимой с длиной маленькой посылки PWM протокола (7 мкс).

CAN (Controlled Area Network) протокол создан Robert Bosch в первой половине 80-ых годов XX века и совсем стандартизирован в ISO 11898. Применение CAN шины данных в автомобиле разрешает разным устройствам общаться между собой, минуя центральный процессор, так называемый multi-master режим. Плюсами есть кроме этого повышенная скорость передачи, до 1 Мбит/с и лучшая помехоустойчивость. Изначально протокол предназначался для применения в машинах, но сейчас используется и в других областях. Дабы повысить надежность передачи данных, в шинах CAN используется метод дифференциальной передачи сигналов по двум проводам. Образующие эту несколько провода именуются CAN_High и CAN_Low.

В исходном состоянии шины на обоих проводах поддерживается постоянное напряжение на определенном базисном уровне, примерно 2.5 В, именуемым рецессивным состоянием. При переходе в активное (доминантное) состояние напряжение на проводе CAN_High увеличивается, а на проводе CAN_Low понижается, рис.1.

Существует кроме этого два формата сообщений либо фреймов — обычный с 11 битным адресным полем (CAN 2.0A) и расширенный с 29 битным полем (CAN 2.0B). Стандартом ISO 15765-4 определяется применение для целей аккумуляторная как CAN 2.0A, так и CAN 2.0B. Совместно со скоростями передачи по шине 250 и 500 кбит/с это формирует 4 разных CAN протокола.

Поддерживает ли ваш автомобиль OBD-II?
OBD есть необходимым лишь на западе. В случае если в Америке это правило действует с 1996 года, то Европейский союз принял EOBD вариант автодиагностики, основанный на OBD-II, недавно. В Европе OBD стал необходимым, начиная с 2001 года, а для дизельных двигателей кроме того с 2004.

В случае если ваш автомобиль выпущен до 2001 года, то он может по большому счету не поддерживать OBD кроме того при наличии соответствующего разъема. К примеру, Renault Kangoo 99 года не поддерживает EOBD (не смотря на то, что редакционная Kangoo dcI60 2004 года с CAN протоколом прошла успешную стыковку с обрисованным адаптером, а Renault Twingo поддерживает! Те же самые машины, сделанные для других рынков, к примеру Турции, смогут также не быть совместимыми с OBD протоколом.

Как выяснить, какой протокол поддерживается электронным блоком управления автомобиля?

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

Разъем в большинстве случаев находится под приборной панелью со стороны водителя. Протокол ISO 914-2 либо ISO 14230-4 определяется наличием контакта 7, как продемонстрировано в таблице 1.

Большая часть машин последних лет выпуска поддерживает лишь CAN протокол с контактами 6 и 14 соответственно. На западе все новые машины, начиная с 2007/ 2008 года, должны применять OBD лишь на базе CAN. Увижу, но, что, как верно отмечено в комментарии, «В случае если марка присутствует в таблице, то это не дает гарантии помощи OBD-аккумуляторная».

Применение L-line в ISO 9141/14230…Раздельно хочется сообщить по поводу L-линии в ISO 9141-2/ 14230-4 протоколах. на данный момент она фактически нигде не употребляется, поскольку для процедуры инициализации связи достаточно лишь K-линии. В стандарте же, но, сообщено, что сигнал инициализации обязан передаваться по двум линиям в один момент, K и L. Владимир Гурский из www.wgsoft.de, создатель программы «ScanMaster ELM», собрал громадную коллекцию разных ЭБУ. Как пример необходимости L-линии он приводит Renault Twingo 1.2л 2005 года выпуска.

Применение тут при иницилиазации лишь K-линии ведет к неверному адресу двигателя в ответах ЭБУ. В случае если же инициализация производится по K и L в один момент, то тогда все трудится верно.

AllPro адаптер на PIC18F2455
Схема моего всепротокольного OBD-II адаптера продемонстрирована на рис.2. Базой есть микроконтроллер Microchip PIC18F2455, имеющий модуль USB интерфейса. Устройство применяет напряжение питания 5 В от шины USB. Конденсатор C6 является фильтром внутреннего стабилизатора 3.3 В для обеспечения работы USB шины. Светодиоды D2 и D3 являются индикаторами приема/передачи, а светодиод D1 использован для контроля статуса USB шины. Выход ISO 9141/14230 интерфейса управляется половинкой драйвера IC2-2, а входной сигнал подается через делитель R12/R13 на вход RX (вывод 18), что есть триггером Шмидта, как и большая часть входов PIC18F2455, что снабжает достаточно надежное срабатывание.

Для контроля L-линии употребляется IC3-1 и R10. Шина J1850 VPW требует напряжения питания 8 В, приобретаемого от стабилизатора L78L08 IC4. Сигнал на выход VPW подается через инвертор IC3-2 и буферный полевой транзистор Q1. Делитель R7/R8 и внутренний триггер Шмидта на входе RA1 составляют входной интерфейс J1850 PWM протокола. Внутренний компаратор (входы RA0 и RA3) PIC18F2455 вместе с резисторами R4, R5 выделяет дифференциальный сигнал PWM.

Для контроля выхода PWM шины употребляются IC2-1 и полевой транзистор Q2.

Раздельно хочется сообщить по поводу помощи CAN. Microchip не производит контроллеры, которые содержат и CAN, и USB. Возможно применять контроллер с CAN модулем и внешний USB чип типа FT232R. Либо напротив, подключить внешний CAN контроллер, как сделано в этом адаптере. CAN интерфейс тут образуют контроллер MCP2515 (IC5) и трансивер MPC2551 (IC6).

MCP2515 подключен через SPI шину к PIC18F2455 и программируется любой раз при подаче питания адаптера. Согласующие (bus termination) RC цепочки R14/ C10 и R15/C11 предназначены для уменьшения отражений на CAN шине в соответствии с стандарту ISO 15765-4. Применение их не обязательно, при довольно маленьком кабеле отражениями возможно пренебречь. Вместо PIC18F2455 возможно применять PIC18F2550 с той же самой firmware, см. варианты замены в таблице 2.

Внешний вид устройства продемонстрирован на рис.3 и обложке, а печатная плата на рис.4.

Для программирования PIC18 возможно применять несложный JDM программатор [3], схема продемонстрирована на рис.5.

Он весьма несложен и может бы собран за час на макетной плате. Недочётом есть то, что программатор требует наличия последовательного (Com) интерфейса в компьютере и не работает с виртуальными USB/Com адаптерами. Применение ноутбуков кроме этого не рекомендуется, поскольку они не снабжают нужного напряжения на выходе Com порта.

Разводка программатора продемонстрирована на рис.6 и сделана с применением так называемой «stripboard» технологии, достаточно популярного подхода к макетированию. Обычная stripboard имеет матрицу отверстий с шагом 2.54 мм для монтажа электронных компонентов, соединенных полосами меди на обратной стороне, из этого и наименование — stripboard. Разрезав полосы на обратной стороне и установив сверху проволочные перемычки, возможно скоро собрать довольно несложные конструкции. Полосы легко перерезаются зенковкой отверстий простым сверлом.

Существует кроме того особая программа — «LochMaster» [4] для проектирования конструкций таким методом. При применении программатора направляться обратить внимание, что корпус ПК (контакт 5 DB9 разъема) не соответствует корпусу программатора.

Вторым условием есть применение «полноценного» последовательно кабеля со всеми проводами, нужными для работы схемы. Программатор надежно трудится с WinPic [5], единственная неприятность содержится в том, что требуется раздельно загрузить файл-дескриптор PIC18F2455.dev (либо PIC18F2550.dev) из дистрибуции Microchip IDE по окончании того, как установлен фактически WinPic. Второй программой, трудящейся с JDM программатором, есть PICPgm [6], никаких дополнительных файлов тут не нужно, не смотря на то, что автору направляться поработать над британской грамматикой, рис.7. Firmware адаптера дешева .

OBD-II кабель
Для подключения к бортовому компьютеру адаптер применяет «обычный» DB-9/OBD-II кабель. Разводка кабеля продемонстрирована в таблице 3.

тестирование и Подключение устройства. Верно собранный адаптер в налаживании не испытывает недостаток и распознается Windows как USB устройство. Процессор PIC18F2455 не имеет собственного драйвера и применяет Windows 2000/XP/Vista CDC (Communication Device Class ) драйвер usbser.sys виртуального Com порта.

По поводу применения драйвера хочется, но, добавить, что в соответствии с информации www.usb.org исправил баги в usbser.sys лишь начиная с Windows XP SP2 и применение адаптера с Windows 2000 возможно проблематично. По окончании того, как адаптер распознался как USB драйвер и устройство установлен, возможно приступать к тестированию. Для этого требуется подключить источник стабилизованного напряжения 12 вольт на выводы 1 и 9 разъема J2 и подключить адаптер к персональному компьютеру через USB кабель. Проверяется наличие напряжения 8 В на выходе стабилизатора IC4.

Следующим шагом есть запуск Windows приложения HyperTerm и подсоединения к Com порту адаптера. Устройство имеет процедуру самодиагностики с проверкой прохождения сигнала со выхода на вход по всем протоколам. Для этого употребляется команда «AT@3», рис.8.

Прохождение проверяется по следующим цепям:

• IC2-1, R4 для отрицательной шины PWM
• Q2, D6, R5 для хорошей шины PWM
• IC3-2, IC4, R11, Q1, D5, R7, R8 для VPW
• IC2-2, R9, R12, R13 для ISO 9141/14230
• Ответ контроллера MCP2515 по шине SPI

К примеру, отсутствие IC2 приведет сходу к двум неточностям, рис.9.

Процедура самодиагностики не включает диагностику CAN трансивера MCP2551, тут возможно напряжение на выводах 6 и 7. Оно должно быть в пределах 2.5 В.

Работа с Адаптером
Адаптер совместим по совокупности команд с ELM327 и может употребляться с приложениями, трудящимися с ELM327. Я предпочитаю применять «ScanMaster ELM» Владимира Гурского [8], рис.10.

Адаптер трудится кроме этого со следующими приложениями:
• ScanTool.net for Windows v1.13
• Digimoto
•PCMSCAN
• EasyObdII Pro
Как пример приведу обстановку, которая произошла с VW Passat моего привычного. В автомобиле загорелась лампочка «Check Engine», подключение ANPro адаптера выяснило неточность Р0118 -«engine coolant temperature circuit high input», т.е. большой уровень сигнала с датчика температуры охлаждающей жидкости, рис. 11. Предстоящее расследование распознало неисправный датчик.

По окончании замены датчика неточность была стерта посредством «Clear Trouble codes» кнопки, см. рис.12. Неточность провалилась сквозь землю и больше не оказалась, рис.13.

ВСЁ ДЛЯ СТАТЬИ В АРХИВЕ…СКАЧАТЬ… [105,79 Kb] (cкачиваний: 943)

В обязательном порядке к прочтению:

OBD2 GM переходник собственными руками


Статьи как раз той тематики,которой Вы интересуетесь:

Адаптеры K-LINE

Время прочтения

Сложность материала:

Для профи - 4 из 5

K-Line — одноканальная, но двунаправленная шина, которая применяется в оборудовании для автодиагностики, для связи с электронными блоками управления (ЭБУ). Используется в системах с инжекторным впрыском топлива двигателей внутреннего сгорания (ДВС). Работа K-Line обеспечена протоколами ISO 9141-2 и ISO 14230, которые входят в известный стандарт OBD II. До появления шины CAN, как раз K-линия соединяла электронные узлы автомобиля в единую цепь.

Адаптер K-Line

Адаптер VAG K-Line

Стандарты ISO 9141 и ISO 14230 схожи по аппаратной реализации линий передачи данных (14230 является развитием 9141). Различаются они требованиями к электрическим параметрам линии, а также протоколами верхних уровней.

Скорость обмена данными небольшая – до 10 КБ за секунду. В протоколе ISO 9141-2 пакеты передаются по 7 пину (K-линия) сервисной колодки. L-Line используется только для соединения ЭБУ со сканером.

Выводы адаптера k line и схема

Используя простой K-Line адаптер, можно настроить множество узлов в автомобилях группы VAG. Для этого необходимо знать основные каналы адаптации.

В этом материале максимально подробно рассказано о шине K-Line, а так же об адаптерах для соединения с ЭБУ автомобиля по этой линии.

1. Виды K-LINE адаптеров и их применение

В настоящее время K-Line адаптеры в основном распространяются с USB разъемом, а не COM. Это связано с тем, что диагностику обычно проводят ноутбуком, а в которых нет COM-портов . Однако суть работы адаптера не меняется. Внутри адаптера устанавливают микросхему-преобразователь из интерфейса USB в интерфейс COM или в Bluetooth. Под каждый тип таких микросхем необходим драйвер, чтобы в системе появился так называемый виртуальный COM-порт, через который адаптер будет сопрягаться с диагностическим ПО на компьютере.

USB K-Line – это простой блок, коммутирующийся через обычный ноутбук. При помощи сервисного ПО владельцу доступны базовые настройки, включая чтение кодов ошибок.

Это, вероятно, случалось с каждым из нас: вы едете в своем автомобиле и вдруг желтая лампочка «Check Engine» загорается на приборной панели как тревожное предупреждение о том, что возникли какие-то проблемы с двигателем. К сожалению, это оно само по себе не дает каких-либо намеков на то, что именно является причиной неполадки и может означать все что угодно, начиная от неплотно закрытой крышки топливного бака до проблем с каталитическим конвертером. Я помню, как Honda Integra 94-го года имела ЭБУ под креслом водителя и красный светодиод начинал мигать, если возникали какие-то проблемы с двигателем. Подсчитав количество «блинков», можно было определить код ошибки. По мере того, как ЭБУ автомобилей становятся все более и более сложными, количество кодов ошибок возрастает экспоненциально. Использование бортовой диагностики автомобиля On-Board Diagnostic (OBD-II) позволяет решить эту проблему. Данный адаптер позволяет использовать персональный компьютер для OBD диагностики и является дальнейшим развитием адаптера, описанного в РадиоХобби №2/2007, с.51-56. Адаптер AllPro функционально совместим с ELM327 и поддерживает все существующие OBD-II протоколы обмена данными:

- ISO 9141-2
- ISO 14230-4 (KWP2000)
- SAE PWM J1850 (Pulse Width Modulation)
- SAE VPW J1850 (Variable Pulse Width)
- ISO 15765-4 Controlled Area Network (CAN)
- VPW, PWM и CAN

Первых два протокола ISO описаны в указанной выше предыдущей публикации. Детальное описание OBD протоколов выходит за рамки данной статьи, я лишь их кратко перечислю.

J1850 VPW (Variable Pulse Width) - протокол автомобилей General Motors и некоторых моделей Chrysler со скоростью передачи 10.4 кбит/с по одному проводу. Напряжение на шине VPW изменяется от 0 до 8 В, данные по шине передаются чередованием коротких (64 мкс) и длинных (128 мкс) импульсов. Реальная же скорость передачи данных по шине изменяется в зависимости от битовой маски данных и находится в пределах от 976 до 1953 байт/с. Это самый медленный из OBD протоколов.

J1850 PWM (Pulse With Modulation) используется в автомобилях корпорации Ford. Скорость передачи здесь 41.6 кбит/ с с использованием дифференциального сигнала по двум проводам. Напряжение на шине изменяется от 0 до 5 В, a длительность импульса составляет 24 мкс. Работа с этим протоколом требует аккуратности в программировании микропроцессора, так как скорость выполнения инструкций языка «С» на PIC микропроцессоре даже с улучшенной PIC18 архитектурой становится сопоставимой с длиной короткой посылки PWM протокола (7 мкс).


Рисунок 1

CAN (Controlled Area Network) протокол разработан Robert Bosch в 1983 году и окончательно стандартизирован в ISO 11898. Использование CAN шины данных в автомобиле позволяет различным устройствам общаться друг с другом, минуя центральный процессор, так называемый multi-master режим. Плюсами является также повышенная скорость передачи, до 1 Мбит/с и лучшая помехоустойчивость. Изначально протокол предназначался для использования в автомобилях, но теперь применяется и в других областях. Чтобы повысить надежность передачи данных, в шинах CAN применяется способ дифференциальной передачи сигналов по двум проводам. Образующие эту пару провода называются CAN_High и CAN_Low. В исходном состоянии шины на обоих проводах поддерживается постоянное напряжение на определенном базовом уровне, приблизительно 2.5 В, называемым рецессивным состоянием. При переходе в активное (доминантное) состояние напряжение на проводе CAN_High повышается, а на проводе CAN_Low снижается, рис.1. Существует также два формата сообщений или фреймов - стандартный с 11 битным адресным полем (CAN 2.0A) и расширенный с 29 битным полем (CAN 2.0B). Стандартом ISO 15765-4 определяется использование для целей OBD как CAN 2.0A, так и CAN 2.0B. Вместе со скоростями передачи по шине 250 и 500 кбит/с это создает 4 различных CAN протокола.

Поддерживает ли ваш автомобиль OBD-II?

OBD является обязательным только в Северной Америке и Европе. Если в Америке это правило действует с 1996 года, то Евросоюз принял EOBD вариант автодиагностики, основанный на OBD-II, сравнительно недавно. В Европе OBD стал обязательным, начиная с 2001 года, а для дизельных двигателей даже с 2004. Если ваш автомобиль выпущен до 2001 года, то он может вообще не поддерживать OBD даже при наличии соответствующего разъема. Например, Renault Kangoo 99 года не поддерживает EOBD (хотя редакционная Kangoo dcI60 2004 года с CAN протоколом прошла успешную стыковку с описанным адаптером - примечание редакции «РХ»), а Renault Twingo поддерживает! Те же самые автомобили, сделанные для других рынков, например Турции, могут тоже не быть совместимыми с OBD протоколом. Как определить, какой протокол поддерживается электронным блоком управления автомобиля? Первое - можно поискать информацию в интернете, хотя там много неточной и непроверенной информации. К тому же, многие автомобили выпускаются для разных рынков с различными протоколами диагностики. Второй более надежный способ - найти разъем и посмотреть, какие контакты в нем присутствуют. Разъем обычно находится под приборной панелью со стороны водителя. Протокол ISO 914-2 или ISO 14230-4 определяется наличием контакта 7, как показано в таблице 1. Большинство автомобилей последних лет выпуска поддерживает только CAN протокол с контактами 6 и 14 соответственно. В Европе и Северной Америке все новые автомобили, начиная с 2007/ 2008 года, должны использовать OBD только на основе CAN.

Таблица 1



Таблицу поддержки OBD протокола различными моделями можно также найти в [2]. Замечу, однако, что, как правильно отмечено в комментарии, «Если марка присутствует в таблице, то это не дает гарантии поддержки OBD-II». Использование L-line в ISO 9141/14230 Отдельно хочется сказать по поводу L-линии в ISO 9141-2/ 14230-4 протоколах. Сейчас она практически нигде не используется, так как для процедуры инициализации связи вполне достаточно только K-линии. В стандарте же, однако, сказано, что сигнал инициализации должен передаваться по двум линиям одновременно, K и L. Владимир Гурский из www.wgsoft.de, автор программы «ScanMaster ELM», собрал большую коллекцию различных ЭБУ. В качестве примера необходимости L-линии он приводит Renault Twingo 1.2л 2005 года выпуска. Использование здесь при иницилиазации только K-линии приводит к неверному адресу двигателя в ответах ЭБУ. Если же инициализация производится по K и L одновременно, то тогда все работает правильно.

AllPro адаптер на PIC18F2455

Схема моего всепротокольного OBD-II адаптера показана на рис.2. Основой является микроконтроллер Microchip PIC18F2455, имеющий модуль USB интерфейса. Устройство использует напряжение питания 5 В от шины USB. Конденсатор C6 служит фильтром внутреннего стабилизатора 3.3 В для обеспечения работы USB шины. Светодиоды D2 и D3 являются индикаторами приема/передачи, а светодиод D1 использован для контроля статуса USB шины. Выход ISO 9141/14230 интерфейса управляется половинкой драйвера IC2-2, а входной сигнал подается через делитель R12/R13 на вход RX (вывод 18), который является триггером Шмидта, как и большинство входов PIC18F2455, что обеспечивает достаточно надежное срабатывание. Для контроля L-линии используется IC3-1 и R10. Шина J1850 VPW требует напряжения питания 8 В, получаемого от стабилизатора L78L08 IC4. Сигнал на выход VPW подается через инвертор IC3-2 и буферный полевой транзистор Q1. Делитель R7/R8 и внутренний триггер Шмидта на входе RA1 составляют входной интерфейс J1850 PWM протокола. Внутренний компаратор (входы RA0 и RA3) PIC18F2455 вместе с резисторами R4, R5 выделяет дифференциальный сигнал PWM. Для контроля выхода PWM шины используются IC2-1 и полевой транзистор Q2.


Рисунок 2

Отдельно хочется сказать по поводу поддержки CAN. Microchip не выпускает контроллеры, содержащие и CAN, и USB. Можно использовать контроллер с CAN модулем и внешний USB чип типа FT232R. Или наоборот, подключить внешний CAN контроллер, как сделано в этом адаптере. CAN интерфейс здесь образуют контроллер MCP2515 (IC5) и трансивер MPC2551 (IC6). MCP2515 подключен через SPI шину к PIC18F2455 и программируется каждый раз при подаче питания адаптера. Согласующие (bus termination) RC цепочки R14/ C10 и R15/C11 предназначены для уменьшения отражений на CAN шине согласно стандарту ISO 15765-4. Использование их не обязательно, при относительно коротком кабеле отражениями можно пренебречь. Вместо PIC18F2455 можно использовать PIC18F2550 с той же самой прошивкой, см. варианты замены в таблице 2. Внешний вид устройства показан на рис.3 и обложке, а печатная плата на рис.4.

Таблица 2



Рисунок 3



Рисунок 4

OBD-II кабель

Для подключения к бортовому компьютеру адаптер использует «стандартный» DB-9/OBD-II кабель. Разводка кабеля показана в таблице 3.

Таблица 3



Подключение и тестирование устройства

Правильно собранный адаптер в налаживании не нуждается и распознается Windows как USB устройство. Микропроцессор PIC18F2455 не имеет собственного драйвера и использует Windows 2000/XP/Vista CDC (Communication Device Class ) драйвер usbser.sys виртуального Com порта. Установка драйвера подробно описана в предыдущей статье и на моем сайтe[1]. По поводу использования драйвера хочется, однако, добавить, что согласно информации www.usb.org [7]. Microsoftисправил баги в usbser.sys только начиная с Windows XP SP2 и использование адаптера с Windows 2000 может быть проблематично. После того, как адаптер распознался как USB устройство и драйвер установлен, можно приступать к тестированию. Для этого требуется подключить источник стабилизованного напряжения 12 В на выводы 1 и 9 разъема J2 и подключить адаптер к персональному компьютеру через USB кабель. Проверяется наличие напряжения 8 В на выходе стабилизатора IC4. Следующим шагом является запуск Windows приложения HyperTerm и подсоединения к Com порту адаптера. Устройство имеет процедуру самодиагностики с проверкой прохождения сигнала со выхода на вход по всем протоколам. Для этого используется команда «АТ@3», рис.8.


Рисунок 8


Рисунок 9

Прохождение проверяется по следующим цепям:

- IC2-1, R4 для отрицательной шины PWM
- Q2, D6, R5 для положительной шины PWM
- IC3-2, IC4, R11, Q1, D5, R7, R8 для VPW
- IC2-2, R9, R12, R13 для ISO 9141/14230
- Ответ контроллера MCP2515 по шине SPI

Например, отсутствие IC2 приведет сразу к двум ошибкам, рис.9. Процедура самодиагностики не включает проверку CAN трансивера MCP2551, здесь можно просто замерить напряжение на выводах 6 и 7. Оно должно быть в пределах 2.5 В.

Работа с Адаптером

Адаптер совместим по системе команд с ELM327 и может использоваться с приложениями, работающими с ELM327. Я предпочитаю использовать «ScanMaster ELM» Владимира Гурского [8], рис.10. Адаптер работает также со следующими приложениями:

- ScanTool.net for Windows v1.13
- Digimoto
- PCMSCAN
- EasyObdII Pro


Рисунок 10

В качестве примера приведу ситуацию, которая случилась с VW Passat моего знакомого. В автомобиле загорелась лампочка «Check Engine», подключение AllPro адаптера определило ошибку Р0118 -«engine coolant temperature circuit high input», т.е. высокий уровень сигнала с датчика температуры охлаждающей жидкости, рис. 11. Дальнейшее расследование выявило неисправный датчик. После замены датчика ошибка была стерта с помощью «Clear Trouble codes» кнопки, см. рис.12. Ошибка исчезла и больше не появлялась, рис. 13.


Рисунок 11


Рисунок 12


Рисунок 13

Заключение

Другой вариант схемы AllPro адаптера находится на моем сайте и использует специализированные (но труднодоступные) микросхемы от Freescale Semiconductor MC33290 и MC33390. Там же приведен вариант разводки адаптера с использованием SMD компонентов. Если у вас есть собственный вариант разводки адаптера, присылайте мне, я помещу его на сайте. Информация о приобретении готовых печатных плат адаптера находится также на моем сайте.

Список программ для ELM327 адаптеров. На этой странице представлены бесплатные программы для диагностики автомобиля с помощью elm327 адаптера. Все elm327 программы распределены по группам в зависимости от того, на каком устройстве Вы будете проводить диагностику. Есть программы для компьютера или ноутбука (Windows), elm 327 программы для android устройств (смартфона или планшета), для iOS (iPhone, iPad), а так же для смартфонов на базе Windows Phone. Таким образом в этом разделе есть программы для любого устройства и для любого типа ELM327 адаптера, будь то USB, Wi Fi или bluetooth адаптер.

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

ELM327 программы для компьютера или ноутбука (Windows)

Эти elm327 программы предназначены для диагностики автомобиля с помощью компьютера, устанавливаются на компьютеры на базе Windows. В описании к программе написано для каких автомобилей она предназначена, а так же с какими типами адаптеров она работает - USB, Wi Fi или bluetooth.

ScanMaster ELM 2.1

ScanMaster ELM 2.1

Самая универсальная и функциональная elm327 программа. Отлично работает как с иномарками, так и с автомобилями Российского производства. Рекомендуем начинать диагностику именно с этой программы.

Работает с адаптерами: USB, Bluetooth, Wi-Fi

OpenDiag

OpenDiag

Программа для диагностики всех моделей русского автопрома (ВАЗ, ГАЗ, УАЗ и др.). Поддерживает несколько видов адаптеров, в том числе и elm327. Это самая удобная программа для диагностики русских авто. Если у Вас русский автомобиль, то рекомендуем использовать именно эту программу.

Работает с адаптерами: USB, Bluetooth

FORScan

FORScan

Эта elm 327 программа создана специально для автомобилей марок: FORD, Mazda, Lincoln и Mercury. Она имеет огромные возможности, сканирует все блоки авто, включая подушки безопасности, ABS и прочее. Есть возможность конфигурации и программирования параметров.

Работает с адаптерами: USB, Bluetooth, Wi-Fi

ELMConfig

ELMConfig

Эта программа так же для автомобилей FORD. Умеет работать со всеми модулями авто, а так же, помимо диагностики, даёт возможность калибровки и конфигурирования.

Работает с адаптерами: USB

ScanXL

ScanXL

Программа отлично работает со множеством марок автомобилей и имеет отличный набор функций.

Работает с адаптерами: USB

PROScan

PROScan

Это универсальная elm327 программа. Имеет все необходимые функции: замеряет параметры, строит графики, считывает и стирает ошибки и многое другое. К сожалению русского языка нет.

Работает с адаптерами: USB

TiggoDiag

TiggoDiag 1.2.0.3

Программа для диагностики автомобилей Cherry Tiggo, GreatWall и некоторых моделей Mitsubishi с помощью адаптера ELM327.

Работает с адаптерами: USB

ELM327 программы для Android устройств (смартфон или планшет)

С помощью этих программ Вы сможете провести полноценную диагностику Вашего автомобиля используя elm327 адаптер и Ваш смартфон или планшет на базе android. Эти elm327 программы для android поддерживают как bluetooth, так и wi-fi адаптеры. Вместе с описанием программы есть ссылка на скачивание программы с официального сайта Google Play, поэтому Вы можете быть уверены в безопасности Вашего устройства. Так же Вы можете установить её просто набрав название программы в поиске Google Play Вашего устройства.

Torque

Torque

Самая популярная elm327 программа для android. Универсальная и очень функциональная, отлично работает со всеми марками автомобилей. Есть бесплатная и платная версия программы, отличающиеся по функционалу.

Работает с адаптерами: Bluetooth, Wi-Fi

OpenDiag Mobile

OpenDiag Mobile

Очень удобная программа для диагностики автомобилей Российского производства с отличными возможностями. OpenDiag Mobile - бесплатная и имеет понятных русский интерфейс.

Работает с адаптерами: Bluetooth, Wi-Fi, USB

ScanMaster Lite

ScanMaster Lite

Отличная универсальная программа подходящая для огромного количества марок. Есть русский интерфейс и необходимый набор функций. Программа ScanMaster Lite - определённо из разряда рекомендованных.

Работает с адаптерами: Bluetooth, Wi-Fi

DashCommand

DashCommand

Так же достаточно неплохая и популярная программа с хорошим набором функций и поддержкой множества авто. Из минусов стоит отметить отсутствие русского интерфейса.

Работает с адаптерами: Bluetooth, Wi-Fi

OBD Car Doctor

OBD Авто Доктор

Универсальная elm327 программа с русским интерфейсом и неплохим набором для проведения диагностики. Есть две версии: бесплатная и платная, как обычно, в бесплатной слегка урезан функционал.

Работает с адаптерами: Bluetooth, Wi-Fi

ELMScan Toyota

ELMScan Toyota

Эта программа для владельцев автомобилей Toyota и Lexus всех рынков. Приложение достаточно мощное, на русском языке. В бесплатной версии набор продвинутых функций урезан достаточно сильно.

Работает с адаптерами: Bluetooth, Wi-Fi

EconTool for Nissan ELM327

EconTool for Nissan ELM327

Предназначена для автомобилей Nissan подключающихся по старому протоколу Nissan Consult, это примерно до 2008 года выпуска. Она представлена тут потому, что с этими автомобилями более популярные elm программы могут не работать.

Работает с адаптерами: Bluetooth, Wi-Fi

ELM327 программы для iPhone и iPad (iOS)

Ниже представлены elm327 программы для использования на iPhone и iPad, т.е. на смартфонах и планшетах с операционной системой iOS. Программ для этих устройств достаточно немного и, как правило, все они на английском языке. Но мы всё таки постарались подобрать для Вас хорошие программы с лёгким освоением и широким набором функций. Обратите внимание, что устройства от Apple поддерживают только Wi-Fi адаптеры, потому программы, соответственно тоже.

DashCommand для iOS

DashCommand

Достаточно хорошая, со всеми необходимыми возможностями, elm327 программа для iPhone и iPad. Она универсальна и подходит для диагностики огромного количества авто. Проста в освоении и интуитивно понятна несмотря на отсутствие русского языка.

Работает с адаптерами: Wi-Fi

OBD Car Doctor

OBD Car Doctor

Простая и удобная программа на русском языке. Позволяет считывать параметры работы двигателя, а так же есть возможность считывать и стирать ошибки engine check.

Работает с адаптерами: Wi-Fi

Engine Link

Engine Link

Один из лидеров по популярности среди программ для iPhone и iPad. Есть всё, что нужно для полноценной диагностики, а так же есть возможность анализа работы коробки передач и подушек безопасности, но эта функция возможна не на всех моделях.

Работает с адаптерами: Wi-Fi

ELM327 программы для Windows Phone

Ниже представлены elm327 программы для смартфонов на базе Windows Phone.

Car Scanner

Car Scanner

Отличная elm327 программа для смартфонов на базе Windows Phone 8, 8.1 или 10. Пожалуй это лучшее приложение для этой системы - очень удобное и интуитивно понятное. Есть платная и бесплатная версия. В бесплатной присутствует небольшая реклама, а так же незначительно урезан функционал.

Работает с адаптерами: Bluetooth, Wi-Fi

Если вам сложно определиться с выбором, напишите нам на электронную почту

Если вы не нашли то, что искали, воспользуйтесь поиском по магазину

Не знаете что выбрать? Посмотрите какие адаптеры подойдут для Вашего авто.

продаётся раскрученный сайт недорого обращаться в личку


Это, вероятно, случалось с каждым из нас: вы едете в своем автомобиле и вдруг желтая лампочка «Check Engine» загорается на приборной панели как тревожное предупреждение о том, что возникли какие-то проблемы с двигателем. К сожалению, это оно само по себе не дает каких-либо намеков на то, что именно является причиной неполадки и может означать все что угодно, начиная от неплотно закрытой крышки топливного бака до проблем с каталитическим конвертером. Я помню, как Honda Integra 94-го года имела ЭБУ под креслом водителя и красный светодиод начинал мигать, если возникали какие-то проблемы с двигателем. Подсчитав количество «блинков», можно было определить код ошибки. По мере того, как ЭБУ автомобилей становятся все более и более сложными, количество кодов ошибок возрастает экспоненциально. Использование бортовой диагностики автомобиля On-Board Diagnostic (OBD-II) позволяет решить эту проблему. Данный адаптер позволяет использовать персональный компьютер для OBD диагностики и является дальнейшим развитием адаптера, описанного в РадиоХобби №2/2007, с.51-56. Адаптер AllPro функционально совместим с ELM327 и поддерживает все существующие OBD-II протоколы обмена данными:

- ISO 9141-2
- ISO 14230-4 (KWP2000)
- SAE PWM J1850 (Pulse Width Modulation)
- SAE VPW J1850 (Variable Pulse Width)
- ISO 15765-4 Controlled Area Network (CAN)
- VPW, PWM и CAN

Первых два протокола ISO описаны в указанной выше предыдущей публикации. Детальное описание OBD протоколов выходит за рамки данной статьи, я лишь их кратко перечислю.

J1850 VPW (Variable Pulse Width) - протокол автомобилей General Motors и некоторых моделей Chrysler со скоростью передачи 10.4 кбит/с по одному проводу. Напряжение на шине VPW изменяется от 0 до 8 В, данные по шине передаются чередованием коротких (64 мкс) и длинных (128 мкс) импульсов. Реальная же скорость передачи данных по шине изменяется в зависимости от битовой маски данных и находится в пределах от 976 до 1953 байт/с. Это самый медленный из OBD протоколов.

J1850 PWM (Pulse With Modulation) используется в автомобилях корпорации Ford. Скорость передачи здесь 41.6 кбит/ с с использованием дифференциального сигнала по двум проводам. Напряжение на шине изменяется от 0 до 5 В, a длительность импульса составляет 24 мкс. Работа с этим протоколом требует аккуратности в программировании микропроцессора, так как скорость выполнения инструкций языка «С» на PIC микропроцессоре даже с улучшенной PIC18 архитектурой становится сопоставимой с длиной короткой посылки PWM протокола (7 мкс).


Рисунок 1

CAN (Controlled Area Network) протокол разработан Robert Bosch в 1983 году и окончательно стандартизирован в ISO 11898. Использование CAN шины данных в автомобиле позволяет различным устройствам общаться друг с другом, минуя центральный процессор, так называемый multi-master режим. Плюсами является также повышенная скорость передачи, до 1 Мбит/с и лучшая помехоустойчивость. Изначально протокол предназначался для использования в автомобилях, но теперь применяется и в других областях. Чтобы повысить надежность передачи данных, в шинах CAN применяется способ дифференциальной передачи сигналов по двум проводам. Образующие эту пару провода называются CAN_High и CAN_Low. В исходном состоянии шины на обоих проводах поддерживается постоянное напряжение на определенном базовом уровне, приблизительно 2.5 В, называемым рецессивным состоянием. При переходе в активное (доминантное) состояние напряжение на проводе CAN_High повышается, а на проводе CAN_Low снижается, рис.1. Существует также два формата сообщений или фреймов - стандартный с 11 битным адресным полем (CAN 2.0A) и расширенный с 29 битным полем (CAN 2.0B). Стандартом ISO 15765-4 определяется использование для целей OBD как CAN 2.0A, так и CAN 2.0B. Вместе со скоростями передачи по шине 250 и 500 кбит/с это создает 4 различных CAN протокола.

Поддерживает ли ваш автомобиль OBD-II?

OBD является обязательным только в Северной Америке и Европе. Если в Америке это правило действует с 1996 года, то Евросоюз принял EOBD вариант автодиагностики, основанный на OBD-II, сравнительно недавно. В Европе OBD стал обязательным, начиная с 2001 года, а для дизельных двигателей даже с 2004. Если ваш автомобиль выпущен до 2001 года, то он может вообще не поддерживать OBD даже при наличии соответствующего разъема. Например, Renault Kangoo 99 года не поддерживает EOBD (хотя редакционная Kangoo dcI60 2004 года с CAN протоколом прошла успешную стыковку с описанным адаптером - примечание редакции «РХ»), а Renault Twingo поддерживает! Те же самые автомобили, сделанные для других рынков, например Турции, могут тоже не быть совместимыми с OBD протоколом. Как определить, какой протокол поддерживается электронным блоком управления автомобиля? Первое - можно поискать информацию в интернете, хотя там много неточной и непроверенной информации. К тому же, многие автомобили выпускаются для разных рынков с различными протоколами диагностики. Второй более надежный способ - найти разъем и посмотреть, какие контакты в нем присутствуют. Разъем обычно находится под приборной панелью со стороны водителя. Протокол ISO 914-2 или ISO 14230-4 определяется наличием контакта 7, как показано в таблице 1. Большинство автомобилей последних лет выпуска поддерживает только CAN протокол с контактами 6 и 14 соответственно. В Европе и Северной Америке все новые автомобили, начиная с 2007/ 2008 года, должны использовать OBD только на основе CAN.

Таблица 1



Таблицу поддержки OBD протокола различными моделями можно также найти в [2]. Замечу, однако, что, как правильно отмечено в комментарии, «Если марка присутствует в таблице, то это не дает гарантии поддержки OBD-II». Использование L-line в ISO 9141/14230 Отдельно хочется сказать по поводу L-линии в ISO 9141-2/ 14230-4 протоколах. Сейчас она практически нигде не используется, так как для процедуры инициализации связи вполне достаточно только K-линии. В стандарте же, однако, сказано, что сигнал инициализации должен передаваться по двум линиям одновременно, K и L. Владимир Гурский из www.wgsoft.de, автор программы «ScanMaster ELM», собрал большую коллекцию различных ЭБУ. В качестве примера необходимости L-линии он приводит Renault Twingo 1.2л 2005 года выпуска. Использование здесь при иницилиазации только K-линии приводит к неверному адресу двигателя в ответах ЭБУ. Если же инициализация производится по K и L одновременно, то тогда все работает правильно.

AllPro адаптер на PIC18F2455

Схема моего всепротокольного OBD-II адаптера показана на рис.2. Основой является микроконтроллер Microchip PIC18F2455, имеющий модуль USB интерфейса. Устройство использует напряжение питания 5 В от шины USB. Конденсатор C6 служит фильтром внутреннего стабилизатора 3.3 В для обеспечения работы USB шины. Светодиоды D2 и D3 являются индикаторами приема/передачи, а светодиод D1 использован для контроля статуса USB шины. Выход ISO 9141/14230 интерфейса управляется половинкой драйвера IC2-2, а входной сигнал подается через делитель R12/R13 на вход RX (вывод 18), который является триггером Шмидта, как и большинство входов PIC18F2455, что обеспечивает достаточно надежное срабатывание. Для контроля L-линии используется IC3-1 и R10. Шина J1850 VPW требует напряжения питания 8 В, получаемого от стабилизатора L78L08 IC4. Сигнал на выход VPW подается через инвертор IC3-2 и буферный полевой транзистор Q1. Делитель R7/R8 и внутренний триггер Шмидта на входе RA1 составляют входной интерфейс J1850 PWM протокола. Внутренний компаратор (входы RA0 и RA3) PIC18F2455 вместе с резисторами R4, R5 выделяет дифференциальный сигнал PWM. Для контроля выхода PWM шины используются IC2-1 и полевой транзистор Q2.


Рисунок 2

Отдельно хочется сказать по поводу поддержки CAN. Microchip не выпускает контроллеры, содержащие и CAN, и USB. Можно использовать контроллер с CAN модулем и внешний USB чип типа FT232R. Или наоборот, подключить внешний CAN контроллер, как сделано в этом адаптере. CAN интерфейс здесь образуют контроллер MCP2515 (IC5) и трансивер MPC2551 (IC6). MCP2515 подключен через SPI шину к PIC18F2455 и программируется каждый раз при подаче питания адаптера. Согласующие (bus termination) RC цепочки R14/ C10 и R15/C11 предназначены для уменьшения отражений на CAN шине согласно стандарту ISO 15765-4. Использование их не обязательно, при относительно коротком кабеле отражениями можно пренебречь. Вместо PIC18F2455 можно использовать PIC18F2550 с той же самой прошивкой, см. варианты замены в таблице 2. Внешний вид устройства показан на рис.3 и обложке, а печатная плата на рис.4.

Таблица 2



Рисунок 3



Рисунок 4

OBD-II кабель

Для подключения к бортовому компьютеру адаптер использует «стандартный» DB-9/OBD-II кабель. Разводка кабеля показана в таблице 3.

Таблица 3



Подключение и тестирование устройства

Правильно собранный адаптер в налаживании не нуждается и распознается Windows как USB устройство. Микропроцессор PIC18F2455 не имеет собственного драйвера и использует Windows 2000/XP/Vista CDC (Communication Device Class ) драйвер usbser.sys виртуального Com порта. Установка драйвера подробно описана в предыдущей статье и на моем сайтe[1]. По поводу использования драйвера хочется, однако, добавить, что согласно информации www.usb.org [7]. Microsoftисправил баги в usbser.sys только начиная с Windows XP SP2 и использование адаптера с Windows 2000 может быть проблематично. После того, как адаптер распознался как USB устройство и драйвер установлен, можно приступать к тестированию. Для этого требуется подключить источник стабилизованного напряжения 12 В на выводы 1 и 9 разъема J2 и подключить адаптер к персональному компьютеру через USB кабель. Проверяется наличие напряжения 8 В на выходе стабилизатора IC4. Следующим шагом является запуск Windows приложения HyperTerm и подсоединения к Com порту адаптера. Устройство имеет процедуру самодиагностики с проверкой прохождения сигнала со выхода на вход по всем протоколам. Для этого используется команда «АТ@3», рис.8.


Рисунок 8


Рисунок 9

Прохождение проверяется по следующим цепям:

- IC2-1, R4 для отрицательной шины PWM
- Q2, D6, R5 для положительной шины PWM
- IC3-2, IC4, R11, Q1, D5, R7, R8 для VPW
- IC2-2, R9, R12, R13 для ISO 9141/14230
- Ответ контроллера MCP2515 по шине SPI

Например, отсутствие IC2 приведет сразу к двум ошибкам, рис.9. Процедура самодиагностики не включает проверку CAN трансивера MCP2551, здесь можно просто замерить напряжение на выводах 6 и 7. Оно должно быть в пределах 2.5 В.

Работа с Адаптером

Адаптер совместим по системе команд с ELM327 и может использоваться с приложениями, работающими с ELM327. Я предпочитаю использовать «ScanMaster ELM» Владимира Гурского [8], рис.10. Адаптер работает также со следующими приложениями:

- ScanTool.net for Windows v1.13
- Digimoto
- PCMSCAN
- EasyObdII Pro


Рисунок 10

В качестве примера приведу ситуацию, которая случилась с VW Passat моего знакомого. В автомобиле загорелась лампочка «Check Engine», подключение AllPro адаптера определило ошибку Р0118 -«engine coolant temperature circuit high input», т.е. высокий уровень сигнала с датчика температуры охлаждающей жидкости, рис. 11. Дальнейшее расследование выявило неисправный датчик. После замены датчика ошибка была стерта с помощью «Clear Trouble codes» кнопки, см. рис.12. Ошибка исчезла и больше не появлялась, рис. 13.


Рисунок 11


Рисунок 12


Рисунок 13

Заключение

Другой вариант схемы AllPro адаптера находится на моем сайте и использует специализированные (но труднодоступные) микросхемы от Freescale Semiconductor MC33290 и MC33390. Там же приведен вариант разводки адаптера с использованием SMD компонентов. Если у вас есть собственный вариант разводки адаптера, присылайте мне, я помещу его на сайте. Информация о приобретении готовых печатных плат адаптера находится также на моем сайте.

Читайте также: