Встраиваемые системы

Разработка на основе отладочных плат и встраиваемых операционных систем Linux, Windows, QNX

Микропроцессорные устройства систем управления

Разработка электронных устройств управления на микроконтроллерах, изготовление микропроцессорных устройств на заказ, прошивка микроконтроллеров

Прикладное программное обеспечение

Разработка программного обеспечения персонального компьютера и электронных устройств на заказ, диагностика через CAN, USB и другие интерфейсы, визуализация показаний датчиков

Принципиальные схемы и печатные платы

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

Диагностика автомобиля elm327

    Как провести диагностику авто самостоятельно и без дорогостоящих диагностических адаптеров? Какой адаптер выбрать? Какие проблемы могут встретиться при выборе диагностического адаптера? В данной статье попытаемся рассмотреть основные преимущества и недостатки недорогого китайского адаптера-клона elm327

    Большинство современных (и уже даже достаточно старых) автомобилей укомплектованы инжектором и, соответственно, компьютерной диагностикой авто. Как правило, в основе диагностики лежит OBDII (on board diagnostic) протокол. Диагностика производится через диагностический разъем (рис. 1)

Диагностический разъем OBD2
Рисунок 1. Диагностический разъем

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

Диагностический адаптер elm327
Рисунок 2. Диагностический адаптер elm327

 

    Наиболее популярный из-за своей дешевизны – адаптер, на основе чипа ELM327 (рис. 2). Микросхема elm327 вместе с обвязкой преобразует OBD сигналы в UART. Далее либо ставится микросхема UART->USB(FT232) и получается обычный USB-адаптер, но все чаще можно встретить ELM с UART->Bluetooth, т.к. такой адаптер уже можно подключать к мобильным устройствам, никуда не нужно тянуть провода. Такой адаптер легко найти и он позволяет провести как минимум базовую диагностику. Правда торгуют обычно, нелицензионными копиями, впрочем, умеющими практически то же, что и оригинальный адаптер.

На самом деле чип ELM327 – это микроконтроллер PIC18 прошитый специальной прошивкой, соответственно и цена берется за нее. Китайцы как всегда начали копировать адаптеры и каким-то чудом сделали свою прошивку, либо скопировали у ELM. Так или иначе, последняя оригинальная прошивка ELM327 называется v1.4, а у китайцев часто встречаются адаптеры с версиями  v1.5, v1.4b, v.1.5b и т.д., что позволяет отличить оригинал от подделки. По функционалу они почти одинаковы, поддерживают один и тот же набор команд, одни и те же функции, но далеко не все программы диагностики готовы работать с подделками. Простейшую диагностику можно сделать и при помощи любой программы-терминала(Terminal v1.9b, Putty и др.). Все адаптеры, как правило, позволяют совершить стандартный и необходимый набор операций, таких как: считать ошибки, стереть ошибки, прочитать текущие данные.

Пример:

Подключаем диагностический адаптер elm327 к ПК. В диспетчере устройств смотрим порт на котором висит адаптер(рис. 3).

Диспетчер устройств Windows XP
Рисунок 3. Диспетчер устройств

 

Открываем терминал и устанавливаем параметры – текущий порт, скорость 9600 (иногда 38400), 8 бит, 1 стоп бит, без паритета(рис. 4).

Окно настройки в терминале Putty
Рисунок 4. Окно настройки в терминале Putty

 

Далее используем AT-команды для управления самим адаптером и его настройкой перед соединением с авто:

Проверка версии адаптера и соединения:

> at z

ответ

> ELM327 v1.5

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

    Далее идет настройка интерфейса связи с автомобилем. Необходимо повернуть ключ в замке зажигания, чтобы загорелись все лампочки, но не заводить авто. Затем набираем команду:

> at sp 0

ответ

> (рис. 5)

Изображение ответа на команду at sp 0
Рисунок 5. Ответ на команду at sp 0

 

At sp 0 – задает автоматический выбор протокола, но можно выбрать и самому, что используется редко. В ответе будет содержаться информация о выбранном протоколе.

Теперь можно считать и ошибки. Определяем количество ошибок(нужно для адаптера):

> 01 01

ответ

> 41 01 81 07 65 04

 

Считываем ошибки:

> 03

ответ

> 43 01 33 00 00 00 00

43 – означает, что это ответ на запрос ошибок. Далее сами ошибки, которые упакованы в пары 0133, 0000, 0000. Две последние нулевые, а вот из-за первой вполне может гореть лампочка “check engine” или вообще не работать авто. Для интерпретации ошибок используем таблицу(рис. 6).

Таблица интерпретации ошибок ODB2
Рисунок 6. Таблица интерпретации ошибок

 

Наша ошибка – 0133, первая цифра 0, смотрим в таблицу и ищем соответствующую нулю букву – это P0. Соответственно ошибка P0133. Далее в интернете находим стандартные OBD ошибки и получаем «Ошибку датчика кислорода».

Стираем ошибки:

> 04

ответ

> ………

Ошибки можно стереть только при неработающем двигателе, но повернутом ключе зажигания.

   Опрос текущих параметров - обороты двигателя, скорость и т.д. Пример для получения текущего значения температуры охлаждающей жидкости:

> 01 05 1

      ответ

> Температура двигателя

01 – запрашиваем текущие параметры авто, 05 и 1 – температура ОХ.

 

  Таким образом, используя программы терминалы, можно провести общую диагностику автомобиля.