Сразу же после покупки автомобиля (Mitsubishi Lancer, 2003) озадачился установкой индикатора расхода топлива. Японцы сильно сэкономили на этом авто и не установили некоторые полезные функции пришлось исправлять ситуацию.
Первой мыслью было или покупка готового существуют множество промышленных устройств, в том числе заточенных под Lancer 9, или самостоятельная сборка какой-нибуть любительской конструкции и таких немало. Поизучав немного тему выяснил, что все предложенные девайсы обладают избыточностью функций а мне-то всего навсего нужен расходомер. Поэтому и было решено делать самому. Единственное место на панели куда-бы приборчик вписывался на место штатных часов, поэтому хочешь-не хочешь он должен и время показывать. Ну и так как при применении 2-х строчного ЖК в этом случае остается незаполненный угол значит и туда надо что-нибуть более-менее полезное вставить, например индикацию температуры. Кстати говоря, поначалу задумывалась индикация и некоторых других параметров зарядка аккумулятора, расход на 100 км, мгновенный расход в цифрах и т.д. уже и не припомню и почти все задумки были реализованы в первой версии индикатора.
Двигатель заглушен, поэтому прогрессбар отсутствует.
Плюсом первой версии считаю то, что при установке на автомобиль не пришлось абсолютно ничего сверлить, точить и т.д. Просто отщелкнуть штатные часы и на их место защелкнуть прибор. Кнопки управления (3 шт.) располагались справа от дисплея.
Но покатавшись некоторое время понял, что из всех функций мне нужны всего 3 (остальными за все это время я ни разу не воспользовался). И тут как раз попался новый дисплей, более симпатичный решил поставить его ну и заодно переписать все заново выкинуть ненужные функции. Просто переставить дисплей не получилось-бы во-первых из-за разных габаритов и во-вторых новый дисплей негативный, надо менять систему диммирования.
Из-за больших размеров дисплея кнопки сбоку не поместились, пришлось высверливать 2 отверстия в подиуме, но это никак не повлияло на внешний вид а пользоваться стало удобнее. Вот фото нового индикатора
И вид сзади
Устройство показывает (повторюсь)
- 1. Мгновенный расход в виде прогрессбара
- 2. Время
- 3. Температуру за бортом или в салоне по выбору (переключается кнопкой)
Схема
Ничего особенного микроконтроллер PIC16F876 считывает данные с датчиков температуры (DS18B20), с микросхемы часов (DS1307) и с ЭБУ, обрабатывает все это и выводит на дисплей (LCD 216). Сигнал с ЭБУ (Fuel) один из тех, что идут на инжектор, можно использовать любой. Для формирования (скорее даже согласования) сигнала применен узел на n-p-n транзисторе. Питание устройства через стабилизатор на 7805. Отдельного питания для микросхемы часов при заглушенном двигателе не предусмотрено т.к. backup батарейки согласно даташиту должно хватить лет на 10.
Управляется устройство 2-мя кнопками, одна из которых Mode переключает индикацию внутренней и внешней температуры, вторая Set в зависимости от того какая из температур выбрана устанавливает или часы или минуты.
Дисплей любой подходящий по размерам двухстрочник, главное чтоб он был с расширенным температурным диапазоном.
Датчики температуры установлены один в салоне, другой выведен под передний бампер.
Диммер котакты реле размыкаясь просто подключают добавочный резистор в цепь питания светодиодов подсветки тем самым приглушая их. Реле включается от габаритов. Диммер, как уже указывалось, для негативного дисплея, разница между негативным и позитивным в том, что в первом случае днем дисплей должен подсвечиваться ярче чем в темноте. Второй же наоборот днем подсветка вообще не нужна, включается только с габаритами.
МК кстати можно использовать и другой, послабее. Надо только перекомпиллировать программу под новый. Просто этот остался от предыдующего варианта
Чуток крупней
Конструкция
Все устройство собрано на одной печатной плате, посредсtвом которой оно и крепится в защелки штатных часов. На этой же плате расположены и резервная батарейка часов и разъем для подключения LCD и разъем ICP (внутрисхемного программирования). Разводка под SMD элементы.
Схема и разводка также выложены в архиве в форматах Splan и SprintLayout соответственно:
schem.rar
Управляющая программа
Прошивка написана на одном из самых простых для изучения и понимания компиляторов PicBasic Pro.
Состоит из главной программы mmc.pbp и 3-х подключаемых модулей
- LCD.inc описание подключения ЖК дисплея к выводам МК
- LCDchar.inc доп. символы ЖК дисплея
- LCDbar.inc функция прогрессбара, в этом же модуле содержится переменная, определяющая чувствительность прогрессбара BAR_range VAR WORD : BAR_range = 6000
Исходники достаточно подробно прокомментированы, так, что думаю не составит труда разобраться и при необходимости подправить ко-что под себя. Например, изменить или вообще отключить заставку-анимацию при включении сейчас пишет Mitsubishi LANCER IX.
Сама прошивка (hex) и исходники.
Firmware.rar
Доп. информация по компилятору
Программа написана на PicBasic Pro, v2.5b (обязательно пропатчить до 2.5b, версия 2.5 насколько я понял некорректно отрабатывает OneWare команды, я намучился с температурными датчиками пока не поставил соотв. патч)
Сайт PicBasic
Надо скачать также Microcode Studio, чтобы не заморачиваться с командной строкой
Сергей SSh
Оцените статью!