Адаптер к линии can usb своими руками. Универсальный USB адаптер К-Л линии BM9213 для тюнинга инжекторного двигателя автомобиля

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

Как же поступить автовладельцу на панели авто которого загорелась лампа «Check Engine», но у которого нет времени или денег платить каждый раз за диагностику своего автомобиля автосервису. Решение, конечно же есть, это изготовление k line адаптера своими руками .

Если Вы владелец бюджетной иномарки типо Daewoo или Chevrolet, а так же любого отечественного автомобиля кроме последних моделей 13-14 годов имеющихCAN шину, то для диагностики Вашего автомобиля Вам будет вполне достаточно обычного k line адаптера для диагностики, который Вы сможете собрать своими руками.

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

Давайте рассмотрим процесс сборки k line адаптера своими руками для ПК с USB портами .

Данная схема была собрана и доработана пользователем Самокат Ветерана.

Для сборки нам потребуется:

Конденсаторы:

1) 100нФ - это неэлектролиты SMD 1206 (их 3шт.)

2) 4.7мкф. х 10В - танталовый чип-конденсатор, по питанию со стороны USB (можно использовать на большее значение по напряжению, использование на меньшее значение недопустимо)

3) 10мкф. х 16В - танталовый чип-конденсатор, по питанию со стороны +12В (можно использовать на большее значение по напряжению, использование на меньшее значение недопустимо)

В качестве электролитов можно использовать любые от 4.7мкф до 100мкф. Их задача в данной схеме это для фильтрация помех. Обратите внимание, чтобы по напряжению они были не меньше 10В и 16В соответственно.

Резисторы типоразмера 0805:

1) 27 Ом (2 шт)

2) 270 Ом (2шт)

3) 510 Ом (2шт)

Микросхемы:

Схема адаптера

Оба адаптера собраны на заводском оборудовании и имеют годовую гарантию.

Это, вероятно, случалось с каждым из нас: вы едете в своем автомобиле и вдруг желтая лампочка «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) — протокол автомобилей 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 мкс. Работа с этим протоколом требует аккуратности в программировании микропроцессора, так как скорость выполнения инструкций языка «C» на PIC микропроцессоре даже с улучшенной PIC18 архитектурой становится сопоставимой с длиной короткой посылки PWM протокола (7 мкс).

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. Замечу, однако, что, как правильно отмечено в комментарии, «Если марка присутствует в таблице, то это не дает гарантии поддержки 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 одновременно, то тогда все работает правильно.

Рис 2

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 с той же самой прошивкой, см. варианты замены в таблице 2.



таблица 2

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



Программирование PIC18F2455

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

рис 5

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

рис 6

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

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

Другим условием является использование «полноценного» последовательно кабеля со всеми проводами, необходимыми для работы схемы. Программатор надежно работает с WinPic , единственная проблема заключается в том, что требуется отдельно загрузить файл-дескриптор PIC18F2455.dev (или PIC18F2550.dev) из дистрибуции Microchip IDE после того, как установлен собственно WinPic.

Другой программой, работающей с JDM программатором, является PICPgm , никаких дополнительных файлов здесь не требуется, хотя автору следует поработать над английской грамматикой, рис.7 . Прошивка адаптера доступна.

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» Владимира Гурского , рис.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.

Информация, изложенная выше (как сделать диагностику автомобиля самому) – это лишь приоткрытая дверь в мир компьютерной автодиагностики. Совершенствование электронных устройств автомобилей требует от водителя умения определять неисправности самостоятельно, потому что это не только экономия средств, но и профилактика от серьезных поломок. Да, можно обратиться в автосервис или СТО и устранить проблему. Иногда приходится это делать. Но вы хотя бы сможете узнать, где поломка, чтобы разговаривать с механиком на понятном языке.

Пусть вы сначала научитесь считывать коды ошибок с бортового компьютера. Следующим этапом развития, возможно, станет расширенное понимание процесса диагностирования, что может стать источником бизнеса. Ведь услуги автодиагностики стали востребованы.

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

Имелось авто Nissan Almera №16 . Всё было нормально, но однажды, возвращаясь с работы домой заметил, что пропала плавность хода, появились скачки оборотов в пределах 1000, поездки по диагностам не дали никаких результатов (все без исключения не смогли залезть в ecu) сколько было перелопачено форумов и литературы по диагностике альмер, как оказалось не все программы и адаптеры способны увидеть мозг альмы, у нее obdII разъем но протокол по которым она передает принимает информацию не как у большинства авто, как российского так и зарубежного автопрома. И вот путем долгих исканий был найден проект адаптера k-line для диагностики. Можно было купить и готовый вариант от мастер кита который стоит 1200р, но опыт пайки smd компонентов у меня имелся да и мне самому нравится что либо собирать воплощать в жизнь.

Что вообще такое К-Лайн адаптер? Многие современные авто имеют специальную линию для диагностики, и называется она K-Линия. С помощью специального адаптера можно подключить ЭБУ (бортовой компьютер) к ПК, что позволит сделать диагностику автомобиля, обновить ПО бортового компьютера или сменить прошивку ЭБУ своими руками. Предлагаемый а даптер собран на микросхеме преобразователе интефейсов com в usb FT232RL для подключения к обычному usb разъему ноутбука. Ниже предоставлена принципиальная схема адаптера.

Принципиальная электрическая схема адаптера K-Line

Список деталей для устройства

Микросхемы:

FT232RL – 1шт. L9637D – 1шт. Резисторы SMD (типоразмер 0805) Номиналы на корпусе: 270 – 2шт 511 – 1шт 271 – 2шт Конденсаторы танталовые SMD (типоразмер 0805) 475С 106С 100nf 10мкф 10вольт Диод обычный 1N4148 Светодиоды 2 штуки smd, по цвету какие больше нравятся). Разъем 3выводной для пайки на плату. Mini usb разъем ну и шнурок mini usb – usb

Из схемы были удалены защита SN65220DBV , и дроссель, его тоже долой в виду ненадобности. Плата была распечатана в программе Sprint-Layout v5.0. При распечатке платы не забываем отзеркалить ее.



Распечатав схему, приобрел необходимые детальки (потратил на все 250р), благо они есть у меня в городе. Приступил к изготовлению платы для будущего адаптера. Технологию изготовления в домашних условиях уже применял не раз, называет ЛУТ (Лазерно Утюжная Технология), в кратце, плата распечатывается на глянцевой бумаге через обычный лазерный ч/б принтер, затем при помощи утюга переносится на фальгированный текстолит (стоит в пределах 100-110р, лист 30 см на 30см). затем заготовка с перенесенной разводкой дорожек, травится в растворе хлорного железа, защищенные области под слоем тонера остаются, а незащищенная остальная медь на плате вытравливается, в итоге получается как "заводская" плата. Опыт пайки smd элементов тоже имелся, это элементы которые паяются через лупу, с пинцетом и с обсолютно спокойными недрожащими руками))). Проведя пару часов вечерком после работы, адаптер был собран.


Для подключения к диагностической колодке авто, была куплена вилка OBDII , ее видно на фото. Настал момент первого теста адаптера k-line , а именно коннект с ноутбуком, подключаем, диоды на адаптере замигали, ноут нашел новое устройство, спрашивает драйвера, нажимаю, поиск автоматом, ищет секунд 30 и находит (в XP видимо имелась цифровая подпись для микросхемы которая использовалась в адаптере). Тест прошел на ура, ноутбук увидел! Проба на коннект с мозгами авто, при помощи подобранных программ методом исключения, нашлись несколько программ, при помощи которых сумел подключиться с ЭБУ. При проверке, нашел две ошибки и с успехом их исправил.


Благодаря этому устройству, у меня получилось найти две ошибки, и блаполучно их исправить. Все заработало как у нового авто, свечи снова стали буровато-коричневые по ободку и белый чистый изолятор электрода, вместо черного и того, и того. Появились плавные обороты от холостых 700 до 1000 при медленной подгазовке. Результатом очень доволен. Диагностика и ремонт мне обошлись в 140р. - (за микросхему) остальные компоненты были выпаянны с различных плат автомагнитол, блоков питания и т.п. Так что если у вас имеется Ниссан Альмера, данный мануал думаю пригодится. Зачем тратиться на поездки к диагностам, когда можно самому собрать и делать диагностику в любое время в любом месте. Как говорится, не так страшен черт, как его малюют !

Данный адаптер при правильной сборке начинает работать сразу, без каких либо дополнительных настроек. Самое главное его преимущество это то, что он универсален, подходит на все автомобили у которых имеется K-line линия в диагностической колодке, будь она 16 контактная либо 14 (старых типов) и других колодках имеющих k-линию). Собрав данную схему, я ненарадуюсь этому адаптеру! Он просто супер! Буквально недавно с помощью него, наладил авто родителей - это праворульный японец Nissan bluebird 2001г . Затратив всего 170 рублей получил столь полезный девайс.


Прилагаю в архиве схему, драйвера (если ось не увидит), печатную плату в формате lay . Повторяйте, паяйте, пользуйтесь, радуйтесь! Кто ищет, тот всегда найдет: распечатав вытравит – залудив спаяет – подключив проверит – результат достигнут, так быть и должно! Сборка и испытания прибора - Иван Федоров .

По просьбе некоторых читателей, решил выложить самый простой наверное что есть K-line адаптер через сом-порт (в этом случаи USB — вариант не берётся) . Это отличный и проверенный адаптер , его достоинства; дешёвый, простенький и может хорошо ковыряться в мозгах вашего авто В данном случаи берётся только K-линия, Л-линия нам не нужна.

Сам адаптер собран всего на двух транзисторах, вот схема- проще не найдёте…

Сперва я делал тестовый вариант K-line адаптера

Так сказать начинал с экспериментов на макетке собирал всё как попало, главное чтобы держалось и детали подходили, некотрых деталей не было, к примеру вместо конденсатора о.47 мкф поставил 220 нф, но параллельно…ну и так дальше.

Переменник взял на 500 Ом, вот какая чудо-плата сперва получилась


Ну что ж надо проверить работоспособность данного девайса…

Как проверить адаптер без подключения к авто?

Итак сперва качаем софтинку Check It 3.0

К компьютеру подключаем наш адаптер и подаём на него 12 вольт. Делаем именно в этой последовательности, иначе можно спалить Сом-порт. Саму К-line не подключаем, так как мы же не подключились к авто.

Интерфейс DOS-овский, давим любую кнопку нажимаем). Затем - «пропустить». Опять давим любую кнопку и о чудо)
Попадаем в меню, где методом тыка (проб и ошибок - интуитивно) находим test\serial ports\com1

Затем Нажимаем Enter

Пойдет тест порта, если конечно всё вы собрали правильно. Сначала тест пойдёт на скорости 300 бит в сек, потом 1200, 4800, 9600, короче перебераются все скорости.

вот пример теста на скорости 300 (бит\сек)

Если тест прошел на скоростях 300 и 1200 бит (бод), нам этого вполне хватит чтобы наш адаптер работал нормально.

Если тест не пройдёт то вылезит окно типа такого…

Это говорит о том что неправильно собран адаптер или нет питания на адаптере. Ну ладно с тестом покончено, (это было так, можно сказать познавательно) теперь перейдём к рабочей версии адаптера.

Рабочий вариант K-line адаптера

Всё что нам понадобится ….

Список деталей:

  • транзисторы: КТ315 или S9014 (2шт)
  • резисторы 3кОм (3шт) - это R2, R3, R6 и 10кОм (2шт) - это R1, R5
  • светодиод подойдёт любой (если нет можно не ставить вообще)
  • диод любой маломощный типа 1n4148
  • Кондёр на 470 мкф, ну и клемник и разъём DB9

Рисуем сначала печатку в Спринте…

2. Печатаем на принтере на глянце несколько рисунков, чтобы выбрать хороший. Все варианты были нормальными - делаем три печатки.

Если есть какие косяки подправляем маркером. перед травлением.