Arduino batterinivåindikatorkrets

Prøv Instrumentet Vårt For Å Eliminere Problemer





I dette innlegget skal vi konstruere en Arduino-basert batterinivåindikator, der en serie på 6 lysdioder viser nivået på batteriet. Hvis du er interessert i overvåking og vedlikehold av 12V batteriet, kan denne kretsen bli nyttig.

Hvorfor batterinivåovervåking er avgjørende

Alle batterier har en viss spenningsgrense for utladning. Hvis det går utover den foreskrevne grensen, vil batteriets levetid reduseres drastisk.



Siden vi er elektronikkentusiaster, kan vi alle ha et batteri for å teste prototype-kretsene våre. Siden vi konsentrerer oss om prototypen under eksperimentet, bryr vi oss mindre om batteriet.

Det foreslåtte batterilader krets vil vise deg hvor mye energi som er igjen i batteriet, denne kretsen kan være koblet til batteriet mens du prototyper kretsene dine. Når denne kretsen indikerer lavt batterinivå, kan du lade batteriet. Kretsen har 6 lysdioder, en lysdiode lyser av gangen for å indikere batteriets spenningsnivå.



Hvis batteriet er fullt, lyser LED-lampen til venstre, og batteriet er dødt eller er i ferd med å dø, den høyeste LED-lampen lyser.

Hvordan det fungerer

LED-batterinivåindikator ved hjelp av Arduino-kode

Kretsen består av Arduino som er hjernen til systemet, en potensiell skillelinje som hjelper Arduino til å prøve inngangsspenningen. En forhåndsinnstilt motstand brukes til å kalibrere oppsettet ovenfor. Serien med 6 lysdioder vil indikere batterinivået.

Kalibrering av LED-indikatorer

Forholdet mellom LED og batterinivå er gitt nedenfor:

LED1 - 100% til 80%

LED2 - 80% til 60%

LED3 - 60% til 40%

LED4 - 40% til 20%

LED5 - 20% til 5%

LED6 -<5% (charge your battery)

Arduino måler et smalt spenningsområde fra 12.70V til 11.90V. Et fulladet batteri skal ha spenning over 12,70 V etter frakobling fra laderen. En lav batterispenning må ikke gå under 11,90 V for et 12 V forseglet blybatteri.

Forfatterens prototype:

Arduino Batterinivåindikator prototype

Programkode:

//--------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---------//

Slik konfigurerer du kretsen:

Kalibreringen for denne Arduino 6 LED-batterinivåindikatorkretsen må gjøres nøye. Hvis du ikke kalibrerte riktig, vil kretsen vise feil spenningsnivå på batteriet.

Når du slår på kretsen, starter den med LED-test, hvor LED-lampene lyser opp sekvensielt med en viss forsinkelse. Dette kan hjelpe deg med å feilsøke feil mens du ordner lysdiodene.

1) Still spenningen til den variable strømforsyningen til nøyaktig 12,50V.

2) Åpne den serielle skjermen.

3) Drei den forhåndsinnstilte motstanden med klokken eller mot klokken og bring målingene til 12,50V.

4) Nå, reduser den variable strømforsyningen til 12.00V, målingene på seriell skjerm skal vise det samme eller veldig nær 12.00V

5) Nå, øk spenningen til 13.00V, målingene på seriell skjerm skal også vise det samme eller veldig nært.

6) På samme tid når du øker eller reduserer spenningen, skal hver LED lyse på / av med forskjellige spenningsnivåer.

Når trinnene ovenfor er fullført, vil indikatorkretsen for batterinivå være klar til å tjene det tiltenkte formålet.

Legge til en automatisk avskjæring

Ovennevnte forklarte Arduino-batterinivåindikatorkrets kan forbedres ytterligere ved å inkludere et automatisk fulladeavstengningsanlegg.

Følgende figur viser hvordan dette kan implementeres i eksisterende design:




Forrige: 1,5V strømforsyningskrets for veggklokke Neste: Material Storage Level Controller Circuit