Главная » Электроника для авто
Призовой фонд
на март 2017 г.
1. UNI-T UT-39C
Паяльник
2. Тестер компонентов LCR-T4
Паяльник
3. 100 руб.
От пользователей

Похожие статьи:


Простой бортовой компьютер для Итальянских авто и ВАЗ

Современный автомобили в большей степени оснащены бортовым компьютером учёта мгновенного и среднего расхода. Являясь обладателем авто Фиат Мареа 1.9JTD данной функции в нем не было предусмотрено. Заводские девайсы отказывались работать или выводили скудную и маловажную информацию.

Я являюсь приверженцем простоты и надёжности своих разработок. Что вполне и показала эксплуатация собранного устройства.

Самодельный бортовой компьютер (БК) через интерфейс K-Line для Итальянских авто. Испытан на JTD евро 2 и 3 (CF2, CF3). Схема согласования уровней микроконтроллера с К-линией взята с диагностического адаптера ELM327, команды (PIDs) опроса ЭБУ авто сканированы по К-линии при работе диагностического софта Multiecuscan. Также изучалась документация [АО “АвтоВАЗ” Генеральный Департамент Развития Управление Проектирования Электроники и электрооборудования], [ISO/WD 14230-1 - Road Vehicles - Diagnostic Systems - Keyword Protocol 2000 - Physical layer].
Протокол ISO14230.  Для приёма/передачи по К-линии был задействован аппаратный USART интерфейс PIC16F628. Но поскольку вывод передатчика (ТХ) не имеет функции инверсного режима работы, требуемого по условию схемы,  был задействован соседний вывод. Который программно работает в режиме ТХ передатчика, инвертируя его состояние.
В основу схемы взят индикатор 16х2 HD44780 (распиновка питания может отличаться), контроллер PIC16F628A и немного пассивных элементов smd (габарит 1206 и 805), номинал не критичен. Транзисторы можно MMBT2222 SOT-23 (2N2222). Кренка на 5В в layoute вверх радиатором для схемы с dip PICом. В зависимости от подсветки ЛСД (>20mA) может потребоваться небольшой радиатор для кренки. Цепочка R10 и D16 выполняют защитную функцию схемы. Сама плата вписывается в габариты и клеится с обратной стороны дисплея.

При подключении схемы к авто К-линию подключать в последнюю очередь, не допускать замыкание К-линии БК на плюс!. 

Программная часть работы схемы начинается с инициализации LCD и подключению к ЭБУ авто. Для ЭБУ тип евро 2 и 3 отличается адресация подключения к блоку, выбор выполняется удержанием кнопки UP до появления надписи нужного типа CF2 или CF3. При успешном подключении к ЭБУ включится подсветка LCD. Далее чтение HW и SW номера ЭБУ для JTD.  И переход в первое меню, 4 параметра (мгновенный и средний расход, скорость и температура двигателя), другие меню могут быть по 2, 3 параметра. Переход по  
меню клавишей UP или Down (индикация нажатия - закрашенный первый сегмент). Можно сохранить текущее меню (с 0 по 12) как стартовое при включении бортового компьютера - длительно удержав UP (более 2 сек.).

В 13 меню - чтение ошибок, выводиться количество ошибок и до 4 кодов (слитно Р***), удаление ошибок - длительно удержав UP.
В 14 меню (мгновенный расход и общее количество газойля) - можно менять число цилиндров в авто (4 или 5) для правильного расчёта расхода топлива - длительно удержав UP.
В 15 меню сброс показаний средней скорости и среднего расхода, и также регулирование подсветки LCD  - длительно удержав UP.
Регулирование подсветки LCD представляет собой цепочку: pin13 через Т2 - стандартная яркость; и pin3 через R12 - пониженная яркость подсветки.

В обновлении схемы, архив №2, меню смещены и 15 меню выделено под плавное регулирование яркости подсветки экрана (ШИМ). При длительном удержании кнопки - плавное нарастание яркости от 0 до 255 и так по кругу. При отпускании кнопки - сохранение значения яркости в энергонезависимой памяти. При этом возможна потеря связи с ЭБУ, т.к. опрос прерывается.
Расчёт расхода топлива выполняется по показаниям общего количества газойля, оборотов и скорости авто. И расчёт происходит при активном меню расхода. Мгновенный расход выводиться в литрах/час при скорости до 10км/ч, а выше - в литрах на 100км.  Обесточив БК средний расход сброшен и =0. Формула расчёта  расхода =...Литры*100/...км. При пройденном расстоянии равном нулю, средний расход стремится к бесконечности. По мере движения и увеличения пройденного пути средний будет приближаться к мгновенному значению расхода.
Меню включает в себя набор следующих параметров: обороты двигателя, текущую скорость, скорость круиз-контроля, температура двигателя, температура топлива и воздуха, подогрев свечей накала и топлива, общее количество газойля, расход воздуха, давление топлива и его регулятор, давление наддува и его регулятор; расчёт мгновенного и среднего  расхода, и средней скорости; чтение/удаление ошибок авто.

Сообщение "Error K-Lines" говорит о замыкании К-линии на минус, питание схемы ниже 9В или неисправности схемы, в частности сгоревший транзистор Т1 при замыкании К-линии на плюс.
В версии для ВАЗа все данные читаются напрямую с блока ЭБУ одним кадром, включая расход в л/100км и л/час, согласно документации. Для ВАЗ (Lada) БК работает с блоком Январь-... .

Обновление 30.05.2015: Добавил ШИМ управление яркостью подсветки LCD. Открыл для себя, что в 16F628 есть выход PWM. В архиве №2 новая схема и прошивки "r4", (не тестировал).

Список радиоэлементов

Обозначение Тип Номинал Количество ПримечаниеМагазинМой блокнот
МК PIC 8-бит
PIC16F628A
1 Поиск в FivelВ блокнот
7805 Линейный регулятор
LM7805
1 Поиск в FivelВ блокнот
T1, T2 Биполярный транзистор
2N3904
2 2N2222Поиск в FivelВ блокнот
D16 Стабилитрон
BZB784-C5V6
1 Поиск в FivelВ блокнот
D17 Выпрямительный диод
1N4007
1 Поиск в FivelВ блокнот
C1, C2 Конденсатор22 пФ2 Поиск в FivelВ блокнот
C5, C6 Конденсатор2.2 мкФ * 25В2 Поиск в FivelВ блокнот
R2 Резистор
33 кОм
1 Поиск в FivelВ блокнот
R4 Резистор4.7* кОм1 Поиск в FivelВ блокнот
R5 Резистор
47 кОм
1 Поиск в FivelВ блокнот
R6 Резистор
2.2 кОм
1 Поиск в FivelВ блокнот
R9 Резистор
4.7 кОм
1 Поиск в FivelВ блокнот
R10 Резистор
4.7 Ом
1 Поиск в FivelВ блокнот
R11 Резистор30* Ом1 Поиск в FivelВ блокнот
R12 Резистор260* Ом1 Поиск в FivelВ блокнот
Cr1 Кварцевый резонатор16 Мгц1 Поиск в FivelВ блокнот
1602 LCD-дисплейhd44780 16*21 Поиск в FivelВ блокнот
Добавить все

Скачать список элементов (PDF)

Прикрепленные файлы:

Теги:

Опубликована: Изменена: 28.05.2015 0 0
Я собрал 0 3
x

Оценить статью

  • Техническая грамотность
  • Актуальность материала
  • Изложение материала
  • Полезность устройства
  • Повторяемость устройства
  • Орфография
0

Средний балл статьи: 4.8 Проголосовало: 3 чел.

Комментарии (29) | Я собрал (0) | Подписаться

0
Andrnet #
Вот это ты потрудился! А к каким еще авто можно подконектится?
Ответить
0
mr_smit #
Хотелось бы видеть описание протокола с конкретным указанием какой байт за какой параметр отвечает. Ну и исходника нет, так не интересно.
Ответить
0

[Автор]
Deman25 #
Подключения к многим авто схоже, а вот команды параметров отличаются.
Протокол, команды по Вазу выполнены согласно документа http://scantool.narod.ru/info/14230-3r.htm (имя его указывал в описании). А точнее по параметрам табл.6.3.3.3. Исходник целиком пока не дам, ассемблер.
Ответить
0
Igr44 #
Вот хорошо. Автор появился.
Хочу повторить вашу конструкцию. На днях переразведу плату и отпишусь, работает или нет в моей машине.
Ответить
0
игорь #
С ГБО 4-го поколения будет работать?
Ответить
0

[Автор]
Deman25 #
Да, упустил, для ВАЗа БК работает с блоком Январь-.... Есть таковой на вашем авто, то да. ГБО это отдельный блок управления (если не по заводу), но авто всё равно отчасти будет под управлением заводского блока и предполагая что едет на бензине.
Ответить
0
Igr44 #
Я так понял что он и с микасом 7.6 должен работать если он с январем работает.
Плату разрисовал, уже может через неделю соберу ваш вариант
Ответить
0
игорь #
А с ЭБУ Bosch797+ работает? Стоит на шевроле нива.
Ответить
0

[Автор]
Deman25 #
Нет. Так как команды параметров будут отличаться.
Ответить
0
Andrei #
Конденсаторы smd? Можно их заменить на обычные?
Ответить
0

[Автор]
Deman25 #
Схема не критична к номиналам и элементам, выдерживать логику и соблюдать электротехнику.
Ответить
0
andrei #
Собрал плату пока что без lcd т.к. он в пути с Китая. После тестирования понял, что тут что-то не так: подключил 12v после первого резистора 4.7 питание стало 1.7v так и должно быть? Во всей цепи 1.7 v питание, а от выпрямительного диода 0.7v. Прошу автора помощи. Всю схему выполнил с помощью обычных компонентов т.к. не нашел smd
Точнее я немного ошибся не после выпрямительного диода после кренки 7805 . in=1.7v out=0.7v так должно быть?
Ответить
0
Igr 44 #
Да там плата по размерам смешная получается, на четверть жк сзади на гребенки пристегивается.
К автору: не могли бы вы подправить коды ошибок под микас 7.6 если можно конечно, файл исходника не прошу т.к. понимаю что это ваш труд.
В аттаче плата в формате пикада
Прикрепленный файл: KL_1602_628.pcb
Ответить
0

[Автор]
Deman25 #
Лучше номера деталей называйте, а не номиналы, непонятно. 4,7кОм это R9, но думаю имели в виду R10 который должен быть 4,7 Ом (или около того хотя бы).
Отредактирован 05.04.2015 21:33
Ответить
0
andrei #
Все исправил, вроде все норм! Спасибо! Еще один вопрос: охарактеризуйте R4 (3 вывод lcd) что к чему подключено резистор (подстрочный?) на массу и на +?
Ответить
0

[Автор]
Deman25 #
R4 - на 3 вывод лсд и минус. Подстроечным подбирать, а паял я прямо на лсд. Те что у нас брал лсд R4 был 4.7к, а с китая лсд 2.2кОма подошли.
Отредактирован 07.04.2015 17:53
Ответить
0
igorr2 #
Неплохо было бы реализовать универсальную прошивку, чтобы каждый мог собрать, так как идея хорошая, но не для каждой машины.
Ответить
0

[Автор]
Deman25 #
Согласен. Вот только pid, команды доступа к данным блока от производителя стоят несколько штук $ . Где бы достать? Универсальные pids скудно.
628 пика мало, на 690 переделываю, вот только переходы по страницам ставят в тупик.
Ответить
0
ershov #
Собрал по этой схеме, немного переделал печатку, чтобы дисплей подсоединялся на штырьки. Заработала сразу с первого подключения, дисплей взял китайский с подсветкой, транзисторы использовал BC547. Очень полезный приборчик для авто, установил в старенькую Калину, даже сам не ожидал такого успеха. Большое спасибо автору!
Ответить
0
vicsumy #
Повторил конструкцию. Второй вариант для ВАЗ.
Не было 2N3904, поставил 2N2222 в корпусе ТО-92.
При подключении к ЭБУ (Январь 5.1) в режиме CF3 соединяется через раз. Подключившись отваливается, даже не успеваю до последнего меню дойти. Иногда показывает К-Line Error. После помогает только выключение-включение зажигания. В режиме режиме CF2 не подключается. Подскажите пожалуйста в чем проблема ?
Ответить
0

[Автор]
Deman25 #
Сложно сказать, может отличие в командах. До какого меню доходит? Если Ерор Клине то описание выше, или когда прибор проводит самодиагностику К линии автос данные шлет, но маловероятно это, т.к. там всего 1 байт для эхо теста.
Ответить
0
vicsumy #
Спасибо за ответ. Пункт меню каждый раз по разному. Один раз получилось дойти до ошибок ЭБУ. А так в основном на первых шести пунктах отваливается. К-Line Error показывает раз на 6-8 переподключений зажигания.
Ответить
0

[Автор]
Deman25 #
Чтение всех параметров выполняется одним запросом (кадром) независимо от нахождения в меню, кроме чтения удал. ошибок. Может в схеме или К-лини косяк. Если параметры отображает адекватно, можно попробовать подправить увеличив паузу между запросами. Статично понаблюдайте в меню ошибок находясь и любом ином как ведет себя.
Ответить
0
Роман #
А можете навести код который надо послать по K-line для подключения к ЭБУ и какой должен быть ответ?
А также код запроса для получения текущих данных (напряжение сети, расход топлива...) и пример ответа.
Хочу сделать БК для своей 155 альфы...
Ответить
0

[Автор]
Deman25 #
StartCommunication Request Message. 81adrF181CS
где adr=10 или 0А адрес ЭБУ, CS=контр.сумма. ответ 7-байт (83 F1 adr C1 EF 8F CS). 81 при запросе переходит в С1 ответа положит (+4 к полубайту).
Чтение скорости запрс 82adrF12144CS, ответ 84F1106144skorCS, skor=2 байта скорость, 10=адрес мой, а 21 при запросе переходит в 61 ответа положит или 7F при отрицат.ответе. При запросе иных параметров меняется только 44 предпосл.байт. Или 21 для иных груп.
Отредактирован 01.09.2016 11:58
Ответить
0
Роман #
Понял.
По первых трех байтах пакета запроса или ответа и контрольной сумме понял.
1. Для инициализации начала обмена нужно на К линию подать в начале высокий уровень (>200мс) затем низкий на 25мс затем опять высокий на 25мс и затем уже команду StartCommunication?
2. Для каждого параметра надо послать свой отдельный запрос и соответственно получить отдельный ответ? Или можно запросить несколько параметров за один запрос?
3. Как часто можно опрашывать мозг?
4. Обязательно ли запрашывать окончание сесии (подключения) при завершении работы с мозгами двигателя?
Спасибо за подказки. Хочу иметь понимание логики обмена информацией для просчего изучения.
Ответить
0

[Автор]
Deman25 #
1. WuP - Быстрая инициализация ECU. Притягиваем К-лин к нулю на 25млсек.
; Отпустив К-лин через 25млсек. передаём StartCommunication Request. (+-1млсек.)
; Пауза >300млсек до повторн инициализации
2. Если знаете такие команды, можно. Для Ваз пакет параметров ответ.
3. ЧЕРЕЗ Р3=55...5000млсек. по окончании ответа можно выполнять след запрос.
4. нет
Ответить
0
Иван #
Хочу собрать данный девайс на калину2, там блок м74 пойдет он?
Ответить
0

[Автор]
Deman25 #
Не подскажу для м74.
Ответить
Добавить комментарий
Имя:
E-mail:
не публикуется
Текст:
Защита от спама:
В чем измеряется электрическая мощность?
Файлы:
 
Для выбора нескольких файлов использйте CTRL

Pickit 2 - USB-программатор PIC-микроконтроллеров
Pickit 2 - USB-программатор PIC-микроконтроллеров
Бокс для хранения компонентов Осциллограф DSO138
вверх