» » » Автомобильный вольтметр на Arduino

Автомобильный вольтметр на Arduino



Приветствую всех любителей самоделок, сегодня мы соберём автомобильный вольтметр на Arduino и семисегментном индикаторе для контроля бортового напряжения в авто. Данное устройство простое в сборке и требует настройки лишь один раз.

Инструменты и материалы
-Arduino Pro mini
-Резистор на 10 Ком 0,5 Вт
-Резистор на 2 Ком 0,5 Вт
-Индикатор на tm1637
-Провода ( в моём случае - МГТФ 0,12 )
-Программатор
-Клемы
-Термоклей
-Клеевой пистолет
-Паяльник
-Припой
-Канифоль


Шаг первый.Схема:
Схема проста в сборке. R1 = 10 Ком, R2 = 2 Ком.


Шаг второй.Сборка:
Собираем делитель напряжения

Подпаиваем провода к индикатору

Спаиваем всё по схеме


Места где может произойти КЗ, можно залить термоклеем


Arduino приклеиваем к обратной стороне индикатора ( для уменьшения размеров )


Шаг третий.Скетч:
В скетче есть 4 переменные которые нужно подстроить для себя

#include <GyverTM1637.h>

//---------Переменные для настройки------------
#define CLK 2   // Цифровой порт на Arduino куда подключается CLK дисплея 
#define DIO 3   // Цифровой порт на Arduino куда подключается DIO дисплея 
int analogInput = A0; // Аналоговый порт куда подключается выход с делителя напряжения
double inaccuracy = 0.5; // напряжение в вольтах которое надо отнять от показания вольтметра чтобы оно сошлось с показаниями на БП (или прибавить)
//----------------------------------------------

GyverTM1637 disp(CLK, DIO);
byte tire[] = {0x40, 0x40, 0x40, 0x40}; // вывод ----
float R1 = 10000.0; // Сопротивление R1 (10K) в ОМАХ
float R2 = 2000.0; //  Сопротивление R2 (2K)в ОМАХ 
float vout = 0.0;
float vin = 0.0;
int value = 0;
double ptr;
void setup(){
pinMode(analogInput, INPUT);
 disp.brightness(7);
 disp.point(0);   
  disp.displayByte(tire); 
  delay(500);
  disp.clear();  
}
void loop(){

value = analogRead(analogInput);
vout = (value * 5.0) / 1024.0; 
vin = vout / (R2/(R1+R2));

vin = vin - inaccuracy;
double V1 = floor(vin);
double V2 = modf(vin, &ptr);
V2 = V2*100;
disp.displayClock(V1,V2);
if (vin<0.95) {
vin=0.0;
disp.displayClock(00,00);
}
delay(1200);
}


Шаг четвёртый.Тест:
Подключаем АКБ и смотрим результат:


Готово! Теперь осталось установить данное устройство в автомобиль и можно пользоваться.
Становитесь автором сайта, публикуйте собственные статьи, описания самоделок с оплатой за текст. Подробнее здесь.

Смарт-стекло своими руками за 10$

Аппаратура радиоуправления на Arduino

4.6
Идея
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
5.4
Описание
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
7.4
Исполнение
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
Итоговая оценка: 5.8 из 10 (голосов: 5 / История оценок)

Добавить комментарий

    • smilesmilesxaxaokdontknowyahoonea
      bossscratchfoolyesyes-yesaggressivesecret
      sorrydancedance2dance3pardonhelpdrinks
      stopfriendsgoodgoodgoodwhistleswoontongue
      smokeclappingcraydeclarederisivedon-t_mentiondownload
      heatirefullaugh1mdameetingmoskingnegative
      not_ipopcornpunishreadscarescaressearch
      tauntthank_youthisto_clueumnikacuteagree
      badbeeeblack_eyeblum3blushboastboredom
      censoredpleasantrysecret2threatenvictoryyusun_bespectacled
      shokrespektlolprevedwelcomekrutoyya_za
      ya_dobryihelperne_huliganne_othodifludbanclose
8 комментариев
  1. Гость Alex
    Лажа полная. От акб будет работать, на машине - нет. Проц вылетит после нескольких запусков двигателя. В сети авто гуляют дикие помехи, для дуни нужно городить отдельный блок питания с фильтрами, а аналоговые входы хотя бы супрессорами прикрыть и то проблем не оберетесь.
    1. Artem_Proger Автор
      Спасибо за замечание я и забыл про помехи от генератора
  2. An9rey
    Автомобильный вольтметр на Алиэкспресс стоит столько же, сколько индикатор tm 1637. Ардуино ещё два раза по столько. В задачнике спрашивается, на хрена городить огород, если и то и другое покупается в одном месте?
  3. Иван_Похмельев
    Автор не учитывает точность резисторов, предполагая её абсолютной. Подстроить характеристику, корректируя только начальное смещение невозможно. Вместо использования R1 и R2 следует добавить пятую переменную для настройки - коэффициент деления делителя с исходным значением 1/6.
    А про помехи, защиту и нерациональность изделия я с предыдущими комментаторами согласен.
    1. Artem_Proger Автор
      Нет, я понимаю что резисторы имеют погрешность и в моём случае она составляет целые 5%
      Я просто забыл указать это в статье
      За совет большое спасибо
  4. Гость Alex
    Цитата: Artem_Proger
    Спасибо за замечание я и забыл про помехи от генератора

    Извиняюсь за резкий тон.
    Вот хорошая статья по подключению проца в сеть авто https://www.drive2.ru/l/2786422/?page=0#comments
  5. Алексей Евгеньевич
    афтор, где ты взял эту библиотеку, может поделишься?! все облазил а синтаксис со скачанных библиотек весь кривой в твоей проге
    1. Artem_Proger Автор
      Вот ссылка на страницу откуда я брал библиотеку https://alexgyver.ru/tm1637_display/

Привет, Гость!


Зарегистрируйтесь

Или войдите на сайт, если уже зарегистрированы...

Войти

Добавьте самоделку

Добавьте тему

Онлайн чат

Опрос
А Вы знаете, что на сайте оплачиваются отчеты о создании самоделок?

Последние комментарии

Все комментарии
Новые самоделки на почту

Введите электронную почту и получайте письма с новыми самоделками. Не более одного письма в день.