Neste post, vamos construir um indicador de nível de bateria baseado em Arduino, onde uma série de 6 LEDs mostra o nível da bateria. Se você está interessado no monitoramento e manutenção de sua bateria de 12 V, este circuito pode ser útil.
Por que o monitoramento do nível da bateria é crucial
Todas as baterias têm certo limite de tensão para descarregar, se for além do limite prescrito, a vida útil da bateria será reduzida drasticamente.
Sendo entusiastas da eletrônica, todos nós podemos ter uma bateria para testar nossos circuitos de protótipo. Como nos concentramos no protótipo durante o experimento, nos importamos menos com a bateria.
O proposto carregador de bateria circuito irá mostrar quanta energia resta na bateria, este circuito pode ser conectado à bateria, enquanto você prototipar seus circuitos. Quando este circuito indica bateria fraca, você pode colocar a bateria para carregar. O circuito tem 6 LEDs, um LED aceso por vez para indicar o nível de tensão da bateria.
Se a bateria estiver cheia, o LED mais à esquerda acende e a bateria está descarregada ou prestes a morrer, o LED mais à direita acende.
Como funciona
O circuito consiste no Arduino, que é o cérebro do sistema, um divisor de potencial que ajuda o Arduino a amostrar a tensão de entrada. Um resistor predefinido é usado para calibrar a configuração acima. A série de 6 LEDs indicará o nível da bateria.
Calibrando indicadores LED
A relação entre o LED e o nível da bateria é fornecida abaixo:
LED1 - 100% a 80%
LED2 - 80% a 60%
LED3 - 60% a 40%
LED4 - 40% a 20%
LED5 - 20% a 5%
LED6 -<5% (charge your battery)
O Arduino mede uma faixa estreita de voltagem de 12,70 V a 11,90 V. Uma bateria totalmente carregada deve ter tensão acima de 12,70 V após ser desconectada do carregador. Uma bateria de baixa voltagem não deve ser inferior a 11,90 V para uma bateria de chumbo-ácido selada de 12 V.
Protótipo do autor:
Código do programa:
//--------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---------//
Como configurar o circuito:
A calibração para este circuito indicador de nível de bateria Arduino 6 LED deve ser feita com cuidado, se você não calibrou corretamente, o circuito mostrará nível de tensão incorreto da bateria.
Quando você liga o circuito, ele começa com o teste de LED, onde os LEDs acendem sequencialmente com algum atraso. Isso pode ajudá-lo a depurar erros ao organizar os LEDs.
1) Defina a tensão de sua fonte de alimentação variável para exatamente 12,50V.
2) Abra o monitor serial.
3) Gire o resistor predefinido no sentido horário ou anti-horário e traga as leituras para 12,50V.
4) Agora, reduza a fonte de alimentação variável para 12,00V, as leituras no monitor serial devem mostrar o mesmo ou muito próximo de 12,00V
5) Agora, aumente a tensão para 13,00V, as leituras no monitor serial também devem ser iguais ou muito próximas.
6) Ao mesmo tempo que você aumenta ou diminui a tensão, cada LED deve ligar / desligar com diferentes níveis de tensão.
Assim que as etapas acima forem concluídas com êxito, o circuito indicador do nível da bateria estará pronto para servir ao propósito pretendido.
Adicionando um Corte Automático
O circuito indicador de nível de bateria do Arduino explicado acima pode ser aprimorado ainda mais com a inclusão de um recurso automático de corte de carga total da bateria.
A figura a seguir mostra como isso pode ser implementado no design existente:
Anterior: Circuito de fonte de alimentação de 1,5 V para relógio de parede Próximo: Circuito Controlador de Nível de Armazenamento de Material