Rangkaian Indikator Level Baterai Arduino

Coba Instrumen Kami Untuk Menghilangkan Masalah





Dalam posting ini, kita akan membuat indikator level baterai berbasis Arduino, di mana rangkaian 6 LED menunjukkan level baterai. Jika Anda tertarik untuk memantau dan memelihara baterai 12V Anda, rangkaian ini mungkin berguna.

Mengapa Pemantauan Level Baterai Sangat Penting

Semua baterai memiliki batas tegangan tertentu untuk dibuang, jika melebihi batas yang ditentukan, masa pakai baterai akan berkurang secara drastis.



Menjadi penggemar elektronik, kita semua mungkin memiliki baterai untuk menguji sirkuit prototipe kita. Karena kami berkonsentrasi pada prototipe selama percobaan, kami kurang peduli pada baterai.

Usulan pengisi baterai sirkuit akan menunjukkan kepada Anda berapa banyak energi yang tersisa di baterai, sirkuit ini dapat dihubungkan ke baterai, saat Anda membuat prototipe sirkuit Anda. Jika sirkuit ini menunjukkan baterai lemah, Anda dapat mengisi baterai. Sirkuit ini memiliki 6 LED, satu LED menyala sekaligus untuk menunjukkan level tegangan baterai.



Jika baterai Anda penuh, LED paling kiri menyala dan baterai Anda mati atau hampir mati, LED paling kanan menyala.

Bagaimana itu bekerja

Indikator level baterai LED menggunakan kode Arduino

Rangkaian terdiri dari Arduino yang merupakan otak dari sistem, pembagi potensial yang membantu Arduino untuk mengambil sampel tegangan input. Resistor pra-setel digunakan untuk mengkalibrasi pengaturan di atas. Rangkaian 6 LED akan menunjukkan level baterai.

Mengkalibrasi Indikator LED

Hubungan antara LED dan level baterai diberikan di bawah ini:

LED1 - 100% hingga 80%

LED2 - 80% hingga 60%

LED3 - 60% hingga 40%

LED4 - 40% hingga 20%

LED5 - 20% hingga 5%

LED6 -<5% (charge your battery)

Arduino mengukur rentang tegangan yang sempit dari 12.70V hingga 11.90V. Baterai yang terisi penuh harus memiliki tegangan di atas 12.70V setelah melepaskan dari pengisi daya. Tegangan baterai yang rendah tidak boleh di bawah 11.90V untuk baterai timbal-asam yang disegel 12V.

Prototipe penulis:

Prototipe indikator level baterai Arduino

Kode Program:

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

Cara mengatur sirkuit:

Kalibrasi untuk rangkaian indikator level baterai LED Arduino 6 ini harus dilakukan dengan hati-hati, jika Anda tidak melakukan kalibrasi dengan benar, rangkaian akan menunjukkan level tegangan baterai yang salah.

Saat Anda menyalakan sirkuit, itu dimulai dengan tes LED, di mana LED menyala secara berurutan dengan beberapa penundaan. Ini dapat membantu Anda untuk men-debug kesalahan saat mengatur LED.

1) Setel tegangan catu daya variabel Anda ke tepat ke 12.50V.

2) Buka monitor serial.

3) Putar jam resistor preset bijaksana atau berlawanan arah jam dan bawa pembacaan ke 12.50V.

4) Sekarang, kurangi catu daya variabel menjadi 12.00V, pembacaan pada monitor serial harus menunjukkan yang sama atau sangat dekat dengan 12.00V

5) Sekarang, naikkan voltase ke 13.00V, pembacaan pada monitor serial juga harus menunjukkan sama atau sangat dekat.

6) Pada saat yang sama ketika Anda menaikkan atau menurunkan tegangan, setiap LED harus menyala / mati dengan level tegangan yang berbeda.

Setelah langkah-langkah di atas berhasil dilakukan, rangkaian indikator level baterai Anda akan siap untuk melayani tujuan yang dimaksudkan.

Menambahkan Pemotongan Otomatis

Rangkaian indikator level baterai Arduino yang dijelaskan di atas dapat lebih ditingkatkan dengan memasukkan fasilitas pemutusan muatan penuh baterai otomatis.

Gambar berikut menunjukkan bagaimana ini dapat diimplementasikan dalam desain yang ada:




Sepasang: Sirkuit Catu Daya 1.5V untuk Jam Dinding Berikutnya: Sirkuit Pengontrol Tingkat Penyimpanan Material