Improving fuel gauge on the VAZ-ah
Не знаю кому как, а мне лично не нравится точность, вернее ее полное отсутствие у автомобильного индикатора топлива. Поэтому, как только появилась у меня машина, решил эту недоработку исправить.
В итоге появился этот индикатор, который умеет следующее:
2. Отображать напряжение бортовой сети
3. Компенсировать качание поплавка в баке многократными (количество выбирается в меню) замерами и выводом среднеарифметического значения.
4. Менять яркость подсветки в зависимости от освещенности, 2 режима, день/ночь, определяется по включению подсветки приборной панели.
5. Менять режим отображения индикатора обычный/инверсный.
Но данный индикатор появился не сразу, поэтому
немного истории…
My first thought was to put БК (Бортовой Компьютер) , но покупать готовый это не наш выбор, полазив по Интернету нашел схему БК, автор Ветров Ю.А., вобщем понравилось, сделал. Но захотелось немного переделать его под себя, попросил у автора исходники, и занялся изучением программирования МК (Микроконтроллеров). В итоге получилось вот это
Стоит вместо пепельницы)
Improving fuel gauge on the VAZ-ah
Хотя речь дальше пойдет и не об этом БК, но одну вещь стоит упомянуть уже тут, ее я переделал еще тогда под первый БК, это датчик топлива в баке.
И так идем дальше, после установки БК остался не удел родной индикатор топлива, и мне пришла мысль сделать в его корпусе нечто типа мини БК, с отображением только топлива и напряжения. Так родилась первая версия индикатора,
но это еще было не мое творение, а совместное с Ветровым Ю.А. поскольку я лишь адаптировал исходную схему и программу под дисплей Nokia 3310, именно на нем и был сделан первый вариант. Но в итоге он мне не понравился, в основном из за дисплея. Только фирменные дисплеи 3310 имеют нормальные контакты, а их найти сейчас довольно сложно, а у левых контакты на стекле напылением, в общем не лучший вариант, да и программу хотелось написать свою.
This is completed with a history
Пока эксплуатировался первый вариант, разрабатывалась новая программа и подбирался другой дисплей…
И так новая программа готова, дисплей выбран, я остановился на дисплее от Nokia 1110/1200/1110i/1112,
по размеру практически влезает в корпус родного индикатора, нужно лишь чуть подпилить уголки подсветки.
Driving
Details
Практически все детали использовал SMD, кроме резисторов R1 – используется как опорная часть делителя напряжения, у меня на нем был откалиброван бак еще в первом БК, чтоб не перекалибровывать, так и использую его, R20 – токоограничительный для подсветки, поскольку с подсветкой много экспериментировал, то решил там оставить обычный резистор.
R1 – 1 кОм
R2 – 75 кOм
R3 – 10 кОм подстроечный
R4 – 4,7 кОм
R5, R6, R8-R11 – 10 кОм
R23, R12-R15 – 3,3 кОм
R24, R16-R19 – 1,8 кОм
R20 – 2 кОм * подбирается в зависимости от подсветки
R21 – 240 Ом
R22 – 1 кОм * подбирается и ставится постоянный
C1, C2,C15 – 0,01 мк
C3, C4, C6-C11,C13-C15 – 0,1 мк
C5 – 47 мк
C12 – 4,7 мк
L1 – 100 мГн
DD1- LM7805
DD2 – ATMega8
DD3 – LM317T
VT1 – IRFZ44
LCD1 – Nokia 1110/1200/1110i/1112
Разъем РС10 – на схеме не обозначен, через него подключаются кнопки и выводы для программирования МК
Наверное стоит пояснить зачем стоит такой мощный транзистор на подсветку, ну во первых они у меня есть, а во вторых по такой схеме можно подключать любую подсветку и на любое напряжения +5 или +12, хотя на +12 предпочтительнее, не надо греть стабилизатор 7805 лишней нагрузкой. Сделал такое подключение еще и по той причине, что пока экспериментировал с дисплеем спалил подсветку, но немного извратившись сумел приспособить туда 2 сверхярких 3мм светодиода.
Резистор R22, по схеме он подстроечный, но потом решил что по месту настрою и поставлю постоянный.
Подключается индикатор через родной разъем, используются 4 провода, земля, плюс бортовой сети, подсветка приборной панели (+12в), датчик топлива.
Design
Платы решил сделать две, одна для установки дисплея, вторая основная, платы круглые, по диаметру корпуса 50 мм.
Под разъем индикатора ответной части не нашел поэтому сделал разводку под шлейф, отпаял от него разъем и припаял шлейф прямо на плату с обратной стороны, сам дисплей посадил на двухсторонний скотч.
Основная плата формально двух сторонняя, но обратная сторона вся используется под “землю” с обратной стороны установлены только стабилизаторы и транзистор, остальные детали практически все SMD установлены со стороны дорожек. Отверстия с квадратными площадками “земляные” пропаиваются перемычками, остальные отверстия со стороны “земли” рассверлены.
Две платы между собой соединяются при помощи контактов от какого то давно разобранного разъема. В корпусе платы фиксируются на одном винте, под него на основной плате припаяна втулка с резьбой.
Кнопок как таковых нет, они и нужны то не часто, только при первоначальной настройке и калибровке, поэтому они просто выведены на разъем РС10, который стоит сзади корпуса, его фоток к сожалению нет. Так же на этот разъем выведены сигналы для программирования МК.
Program
Режимы работы, их два:
1. Рабочий режим
в него он входит после включения питания и отображает остаток топлива и напряжение бортовой сети.
2. Режим установок
в этом режиме производятся первоначальные установки и калибровка бака. Вход в этот режим осуществляется кнопкой Menu
In the settings navigate the menus up / down buttons made Up/Down
Entrance to the submenu button OK
Push button Menu в режиме установок служит для возврата в предыдущее меню.
Capacity
This sets the capacity of the tank
Calibration
There calibrated tank
Уровень, это ячейки каждого литра, выбирается кнопками Up/Down
Датчик, это то что выдается с датчика в баке в данный момент
В памяти, это то что записано в памяти в ячейке текущего литра
Smooth
Устанавливаемая цифра это количество замеров уровня топлива, затем выводится среднеарифметическое значение.
The brightness of the day / night brightness
Здесь устанавливаем яркость подсветки соответственно днем и ночью, фактом дня и ночи является включение подсветки приборной панели.
Inversion
Переключение режима работы дисплея, обычный/инверсный
All menu items are used to change the settings button Up/Down,
для применения измененных значений необходимо нажать кнопку Ок, на несколько секунд на дисплее появится надпись “Сохранено”, чтобы выйти из текущего пункта меню без сохранения нужно нажать кнопку Menu
Configuring
1. Programming MK, производится внутрисхемно, любым программатором, фьюзы выставляются следующим образом
2. Setting the voltage readings. Для настройки подключаем подключаем индикатор к напряжению 12-14 в., подключаем к этому же источнику вольтметр и подстроечным резистором R3 выставляем то же значение что показывает вольтметр.
3. Software setup.
Выставляем емкость бака и калибруем его. Калибруем бак следующим образом, начинаем с пустого бака, ставим в меню калибровка значение литров 0 и нажимаем ОК, затем заливаем в бак 1 литр, ставим значение литров на 1 и снова нажимаем ОК и так с каждым литром до полного бака. Процесс конечно небыстрый, но сделать его нужно всего один раз. Если при калибровке еще и записать показания датчика, то при необходимости повторения устройства или при сбое, можно будет занести значения сразу в прошивку и не маяться с калибровкой.
Остальные настройки устанавливаем на свой вкус.
На этом настройка закончена, можно ставить индикатор на место.
Files
архив – download
Source: