Главная » Электроника для авто
Призовой фонд
на май 2017 г.
1. Тестер компонентов MG328
Паяльник
2. Осциллограф DSO138
Паяльник
3. Регулируемый паяльник 60 Вт
Паяльник
4. 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

Мультиметр Mastech MS8239C
Мультиметр Mastech MS8239C
Бокс для хранения компонентов Катушка Тесла
вверх