No Image

Самодельный бортовой компьютер для автомобиля с дисплеем

0 просмотров
21 января 2020

По некоторым причинам разработку БК я отложил в дальний ящик. Но вчера достал ее обратно)

Про питание и К-line написано в части 1.

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

На данный момент обмен данными БК и ЭБУ уже реализован. Реализация под Бош 1.5.4 но при желании можно переписать прошивку и под другие мозги.

Первым делом о дисплее.

Использовать решено графический дисплей 128×64 с контроллером ST7920 вместо дисплея от БК multitronics.

Разрешение: 128 × 64 точки
Контроллер: ST7920
Габариты: 93.0 (L) × 70.0(W) × 13.50(H) мм
Видимая область: 70.0 (L) × 38.8 (W) мм
Размер точки: 0.48 (L) × 0.48 (W) мм
Тип LCD: STN(BLUE), TRANSMISSIVE /NEGATIVE
Рабочая температура: от –20 до 70
Температура хранения: от – 30 до 80
Напряжение питания: от +4.5 до +5.5V

Теперь подробнее о возможностях.

1. Как и должен БК будет работать как маршрутный компьютер:
-расход
-пробег
-ошибки
-скорость
-параметры датчиков и т.д.

2. Далее к БК будет подключен модуль определяющий какая дверь/капот/багажник открыты

3. Еще одна возможность (пока в теории) встроенный парктроник (взять датчики от китайского парктроника и приделать их к БК)

4. Если разберусь с тем как сделать (по дешевле) электронное управление печкой и оно будет подключено к БК.

5. Сломался гидрокоректор фар. Решено купить электрокоректор. Посмотрев на конструкцию автокорректора был удивлен простотой. Эл.коректор+ДПДЗ от ваз. Его мы тоже подключим к БК.

Идей как всегда вагон, но вот времени маленькая тележка. Если кого интересует Более подробное описание как это все будет работать, то я напишу теорию.

Чесались руки сделать что-то для свежекупленного автомобиля, остановился на полезной вещи – бортовой компьютер. Автомобиль Nissan Almera N15 1.6SR, двигатель GA16DE. Лепил из того что было, и хотелось поскорее, так что за конструкторскую проработку не пинайте.

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

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

После перелопачивания определенного количества материала на тему БК, пришел к выводу, что самый правильный подход реализован вот тут http://multi-set.ru/. Только дисплей все же у них слишком аскетичный. Поэтому и решил делать БК в том же русле, весь теоретический материал есть на их сайте. Брать поток данных с БУ двигателя не хотелось, т.к. в нем не все есть, что надо, и это привязывает БК к конкретной марке автомобиля. Перегружать БК огромным количеством функций тоже считаю не нужным, только то, что нужно мне, но одновременно. С другой стороны исходники открыты и хорошо комментированы, ног свободных в контроллере много – дописывайте сами все что хотите. (Извините за работу со знакогенератором индикатора через ж, вверх ногами ставил дисплей, для лучших углов видимости сверху).

Читайте также:  Почему нельзя мыться в понедельник

Кнопка, индикатор и его подсветка размещены на передней панели. Печатная плата под устройство не разрабатывалась, все спаяно на обычной макетке. Дополнительное гнездо прикуривателя с огромным конденсатором – не силовое, а для питания, чтобы при старте двигателя не перезагружался FM-MP3-трансмиттер, или навигатор.

Уличный термодатчик лучше всего выносить внутрь бокового зеркала, но тащить провода в дверь очень неудобно. У меня он расположен в самой левой передней части бампера, достаточно низко, подальше от противотуманки и радиаторов. Непосредственно на ножках датчика припаяны конденсаторы по 0.1 мкф. Необходимо обеспечить герметичность датчика термоусадкой, эпоксидкой или другим способом. Внутренний термодатчик расположен прямо на передней панели. Можно попытаться найти для него лучшее место, но меня устраивает и так.

МК PIC18F258 или PIC18F252 в DIP корпусе, установлен в панельке. Термодатчик TMP36 – заменим на микрочиповский MCP9700. MCP1525 – источник опорного напряжения +2.5 В, заменим на TL431 + резистор 680 Ом к +3.3 В. Индикатор TIC-120 и LED подсветку к нему TB1084 можно купить в Тритоне или Гамме, там же можно купить МК, опорник и термодатчик. Можно использовать и другие индикаторы 64х32 точки на контроллере PCF8531. LP2950-3.3 – стабилизатор питания на 3.3 В, можно применить LM1117-3.3, или какой-нибудь регулируемый. Хотя, по большому счету, тут надо использовать специализированый стабилизатор для автомобильного применения. На все детальки даташиты без труда можно найти гуглем. Дополнительный прикуриватель – от какой-то нашемарки.
Подключение. Все подписано на схеме, добавлю только, по цепи "+12v"ON"3" – провод, на котором появляется +12 В только при 3 положении ключа зажигания. Все цепи не силовые, и по автомобильным меркам ничего не потребляют, кроме цепи "Масса" и "+12V Accu", их нужно подключить толстым проводом. К форсунке в автомобиле подходят два провода: +12 В и сигнальный, к БК нужно подключить сигнальный.

Внешний вид экрана (в дежурном режиме и при включенном зажигании):

На первой строке отображается температура в салоне автомобиля (символ "мордочка") и на улице ("солнышко").

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

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

В дежурном режиме, и первые 10 секунд после старта на месте мгновенного расхода отображается напряжение бортсети автомобиля. Остальное время оно в общем не нужно, если не будет заряда при работе двигателя – загорится сигнальная лампа на приборной панели.

Читайте также:  Проверка айфона на вирусы

Длительным нажатием на кнопку, текущее значение параметра "F" принимается за 0% и запоминается. Параметр "F" – это усредненное значение времени на которое открывается форсунка за один цикл работы двигателя.

На четвертой строке отображается количество израсходованного топлива и параметр "dF".

Блок управления двигателем во время работы на основе сигнала с датчика кислорода (лямда-зонда) непрерывно корректирует время, в течении которого открыта форсунка. Параметр "dF" – это разница(разброс) между максимальным и минимальным значением времени на которое блок управления открывает форсунку в течении 10 циклов работы двигателя. Параметр "dF" отображается в микросекундах. Его увеличение говорит о разбалансировке системы например в следствии плохой свечи, или не качественной работе одного из клапанов.

При отображении всех величин, если это необходимо, автоматически передвигаются десятичные запятые, гасятся незначащие нули и отбрасываются не несущие информации младшие значащие цифры.
Кнопка активна только при включенном зажигании. Простое нажатие – сброс счетчика накопленного расхода топлива, сопровождается кратковременной надписью "Reset" в нижней строке индикатора. Длительное нажатие – запоминание значений оборотов и времени открытого состояния форсунки. Сопровождается надписью "Save" в третьей строке.

На основе показаний параметров "F" и "dF" можно судить о качестве работы различных систем (впускная, зажигания, питания) и датчиков (воздуха, положения дроссельной заслонки). Величины ухода параметров можно получить, если заранее сымитировать каждую из этих неисправностей.

Использование параметра "F":

  1. На холостых оборотах прогретого двигателя блок управления подает через форсунки определенную порцию топлива в цилиндры (параметр "F"), длительным нажатием на кнопку принимаем величину этой порции за начальную точку отсчета – 0%.
  2. Теперь при последующей эксплуатации автомобиля, выведя двигатель на холостые обороты всегда можно будет увидеть на сколько изменилось это значение, по отношению к запомненному. Его увеличение означает, что для того же режима работы, двигателю требуется больше топлива, а значит времени для впрыска, например из-за засорения инжектора, или было заправлено не качественное топливо. Уменьшение будет наблюдаться наоборот, при заправке более качественным топливом, после чистки инжектора, или после правильных регулировок различных систем двигателя. А чтобы увидеть, что на эту величину повлияли изменившиеся холостые обороты – их отклонение в процентах так же отображается.
  3. Резко, до пола, нажать на одну секунду педаль газа и тут же отпустить. Число до которого увеличится параметр "F" – это "приемистость" двигателя. По сравнению с холостыми оборотами, объем топлива должен возрасти примерно в 3 раза, т.е. до 300%. Через короткое время после этого параметр "F" должен уменьшиться примерно до 100% – это работа экономайзера, который уменьшает подачу топлива. Для правильной работы экономайзера необходимо правильно выставленное начальное положение датчика дроссельной заслонки.
  4. Плавно нажать на педаль газа и придержать 3000 об/мин. Параметр "F" должен показать некоторое уменьшение объема топлива на один цикл, т.к. на таких оборотах возрастает КПД двигателя. В идеальном случае – 20%, т.е. на пятую часть меньше, по сравнению к объему топлива холостых оборотов.
Читайте также:  Самоходки своими руками видео

Производительность форсунки двигателя GA16DE – 181-189cc, 185 см 3 /мин = 3.0833 мл/с = 11.1 л/час. Данные для других форсунок можно взять тут (47 kb).

Для использования БК с другими автомобилями нужно скорректировать исходник.

Файлы для MPLAB, прошивка, а так же исходники находятся в архиве – mplab.zip (26 kb).

Среду разработки MPLAB можно взять на сайте Microchip.

Программаторов для прошивки МК очень много, один из них, например, описан на моей страничке.

Давно была идея сделать бортовой/маршрутный компьютер в авто.
Есть готовые очень неплохие мультитрониксы — но с ними проблема, они не поддерживают наши старые тоетки по OBD (точнее авто не поддерживает OBD диагностику).

Решено сделать свое универсальное устройство, которое будет уметь все и все.
В качестве "мозга" — AVК контроллер Atmel AtMEGA640/1280/2560 серии.
Тем более, что плата готовая и подходящая по всем параметрам и возможному функционалу — давно валяется в загашнике, запасы от старого проекта 🙂

Функционально состоит из 2х частей — слева БП от 220В, справа собственно сам процессор.
Т.к. в авто уже есть 12В — то соответственно БП на 220 — нам не нужен. Сделано для универсальности.
На данной плате все сделано по максимуму именно для универсального применения — можно реализовать от примитивной елочной "мигалки", до системы "умный дом" — на сколько хватит фантазии.

Ну а касательно нашей задачи, функционал будет примерно следующий:
— вывод информации со всех датчиков, как штатных так и допольнительных, а это —
— температура ОЖ ДВС
— температура масла двигателя
— температура ОЖ доп датчик (верхний патрубок радиатора)
— температура масла в АКПП, в поддоне
— температура воздуха во впуске
— давление во впускном коллекторе (наддув)
— время открытия форсунок / % загрузки
— положение дросселя (% открытия)
— напряжение в сети
— ведение логов и возможность записи информации на компьютер (ноутбук) по RS232

Функции маршрутного компьютера:
— скорость/пробег — суммарный/за поездку
— расход средний/за поездку
— снятие ограничителя скорости (для сток мозга)
— текущая передача АКПП (если кому интересно)

Любые доп. функции — кому на сколько хватит фантазии.
Можно как снимать данные с любых датчиков — например, поставить акселерометр (ADXL*) — и измерять ускорение. Либо управлять любыми внешними исполнительными устройствами.

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

Вариант представления данных в виде "прогресс бара". На скрине буст и % открытия дросселя.

Все данные даны для примера. Пока на неподключенном к авто устройстве.

Может у кого еще какие мысли и предложения будут — каменты приветствуются.

Продолжение следует … (по мере сил и свободного времени).

Комментировать
0 просмотров
Комментариев нет, будьте первым кто его оставит

Это интересно
No Image Строительство
0 комментариев
No Image Строительство
0 комментариев
No Image Строительство
0 комментариев
No Image Строительство
0 комментариев
Adblock detector
}); var n = d.getElementsByTagName("script")[0], s = d.createElement("script"), f = function () { n.parentNode.insertBefore(s, n); }; s.type = "text/javascript"; s.async = true; s.src = (d.location.protocol == "https:" ? "https:" : "http:") + "//mc.yandex.ru/metrika/watch.js"; if (w.opera == "[object Opera]") { d.addEventListener("DOMContentLoaded", f, false); } else { f(); } })(document, window, "yandex_metrika_callbacks");