Arduino batterinivåindikatorkrets

Prova Vårt Instrument För Att Eliminera Problem





I det här inlägget ska vi bygga en Arduino-baserad batterinivåindikator, där en serie av 6 lysdioder visar batterinivån. Om du är intresserad av övervakning och underhåll av ditt 12V batteri kan den här kretsen bli praktisk.

Varför övervakning av batterinivå är avgörande

Alla batterier har en viss spänningsgräns för urladdning, om den överskrider den föreskrivna gränsen kommer batteriets livslängd att minska drastiskt.



Eftersom vi är elektronikentusiaster kan vi alla ha ett batteri för att testa våra prototypkretsar. Eftersom vi koncentrerar oss på prototypen under experimentet bryr vi oss mindre om batteriet.

Det föreslagna batteriladdare krets visar hur mycket energi som finns kvar i batteriet, den här kretsen kan vara ansluten till batteriet medan du prototyper dina kretsar. När den här kretsen visar att batteriet är lågt kan du ladda batteriet. Kretsen har 6 lysdioder, en lysdiod lyser åt gången för att indikera batteriets spänningsnivå.



Om ditt batteri är fullt lyser den vänstra LED-lampan och batteriet är urladdat eller håller på att ta slut, den högsta LED-lampan lyser.

Hur det fungerar

LED-batterinivåindikator med Arduino-kod

Kretsen består av Arduino som är hjärnan i systemet, en potentialdelare som hjälper Arduino att sampla ingångsspänningen. Ett förinställt motstånd används för att kalibrera ovanstående inställning. Serien med 6 lysdioder visar batterinivån.

Kalibrering av LED-indikatorer

Förhållandet mellan LED och batterinivå ges nedan:

LED1 - 100% till 80%

LED2 - 80% till 60%

LED3 - 60% till 40%

LED4 - 40% till 20%

LED5 - 20% till 5%

LED6 -<5% (charge your battery)

Arduino mäter ett smalt spänningsområde från 12,70V till 11,90V. Ett fulladdat batteri bör ha en spänning över 12,70 V efter att den kopplats från laddaren. En låg batterispänning får inte understiga 11,90 V för ett 12 V förseglat blybatteri.

Författarens prototyp:

Arduino Prototyp för batterinivåindikator

Programkod:

//--------Program developed by R.Girish---------//
int analogInput = 0
int f=2
int e=3
int d=4
int c=5
int b=6
int a=7
int s=13
float vout = 0.0
float vin = 0.0
float R1 = 100000
float R2 = 10000
int value = 0
void setup()
{
Serial.begin(9600)
pinMode(analogInput,INPUT)
pinMode(s,OUTPUT)
pinMode(a,OUTPUT)
pinMode(b,OUTPUT)
pinMode(c,OUTPUT)
pinMode(d,OUTPUT)
pinMode(e,OUTPUT)
pinMode(f,OUTPUT)
digitalWrite(s,LOW)
digitalWrite(a,HIGH)
delay(500)
digitalWrite(b,HIGH)
delay(500)
digitalWrite(c,HIGH)
delay(500)
digitalWrite(d,HIGH)
delay(500)
digitalWrite(e,HIGH)
delay(500)
digitalWrite(f,HIGH)
delay(500)
digitalWrite(a,LOW)
digitalWrite(b,LOW)
digitalWrite(c,LOW)
digitalWrite(d,LOW)
digitalWrite(e,LOW)
digitalWrite(f,LOW)
}
void loop()
{
value = analogRead(analogInput)
vout = (value * 5.0) / 1024
vin = vout / (R2/(R1+R2))
Serial.println('Input Voltage = ')
Serial.println(vin)
if(vin>12.46) {digitalWrite(a,HIGH)}
else { digitalWrite(a,LOW)}
if(vin12.28) {digitalWrite(b,HIGH)}
else { digitalWrite(b,LOW)}
if(vin12.12) {digitalWrite(c,HIGH)}
else { digitalWrite(c,LOW)}
if(vin11.98) {digitalWrite(d,HIGH)}
else { digitalWrite(d,LOW)}
if(vin11.90){digitalWrite(e,HIGH)}
else {digitalWrite(e,LOW)}
if(vin<=11.90) {digitalWrite(f,HIGH)}
else {digitalWrite(f,LOW)}
delay(2000)
}
//--------Program developed by R.Girish---------//

Så här ställer du in kretsen:

Kalibreringen för denna Arduino 6 LED-batterinivåindikatorkrets måste göras noggrant, om du inte kalibrerade korrekt kommer kretsen att visa felaktigt spänningsnivå för batteriet.

När du slår på kretsen börjar det med LED-test, där lysdioderna lyser upp i följd med viss fördröjning. Detta kan hjälpa dig att felsöka fel när du ordnar lysdioderna.

1) Ställ in spänningen på din variabla strömförsörjning till exakt 12,50V.

2) Öppna den seriella bildskärmen.

3) Vrid det förinställda motståndet medurs eller moturs och sätt avläsningarna till 12,50V.

4) Minska nu den variabla strömförsörjningen till 12,00V, avläsningarna på seriell bildskärm ska visa samma eller mycket nära 12.00V

5) Öka nu spänningen till 13,00 V, avläsningarna på seriell bildskärm bör också visa samma eller mycket nära.

6) Samtidigt när du ökar eller minskar spänningen ska varje lysdiod tändas / släckas med olika spänningsnivåer.

När ovanstående steg är framgångsrika kommer din batterinivåindikatorkrets att vara redo att tjäna det avsedda syftet.

Lägga till en automatisk avstängning

Ovanstående förklarade kretsar för Arduino-batterinivåindikatorer kan förbättras ytterligare genom att inkludera en automatisk batteriladdningsfunktion.

Följande bild visar hur detta kan implementeras i befintlig design:




Tidigare: 1,5 V strömförsörjningskrets för väggklocka Nästa: Material Storage Level Controller Circuit