Este projeto é um projeto para testar/descarregar baterias Li-ion encontradas em vários aparelhos eletrônicos, por exemplo, celulares, cameras, etc.
Para este projeto precisaremos:
No vídeo foi mostrado um teste com uma bateria de Li-ion da TrustFire de 3.7V e 3800mAh.
Faça a seguinte ligação:
Cuidado! Esta ligação é apenas uma demonstração para baterias de Li-Ion. E lembre-se, o resistor de 6.9 ohm deverá ser de 5Watts. Não utilize baterias normais, pois não irá funcionar.
A programação do projeto está mostrado abaixo:
// Very simple Arduino Lithium-ion battery capacity tester
// from electronicsblog.net
#define LED 13
#define resistor 6.9
float capacity=0, value,voltage,current, time=0;
void measure (void) {
value= analogRead(0);
voltage=value/1024*5.0;
current = voltage/resistor;
capacity=capacity+current/3600;
time++;
Serial.print("Voltage= ");
Serial.print(voltage);
Serial.print("V Current= ");
Serial.print(current);
Serial.print("A Capacity= ");
Serial.print(capacity);
Serial.print("Ah ");
Serial.print("Discharging time= ");
Serial.print(time);
Serial.print("s ");
Serial.print("\n");
}
boolean x=false;
ISR(TIMER1_OVF_vect) {
TCNT1=0x0BDC;
x=!x;
measure();
}
void setup() {
pinMode(LED, OUTPUT);
TIMSK1=0x01; // enabled global and timer overflow interrupt;
TCCR1A = 0x00; // normal operation page 148 (mode0);
TCNT1=0x0BDC; // set initial value to remove time error (16bit counter register)
TCCR1B = 0x04; // start timer/ set clock
Serial.begin(9600);
};
void loop () {
digitalWrite(LED, x);
};
A função ISR(TIMER_1_OVF_vect) faz os cálculos da amostragem da bateria e mostra no Serial Monitor como pode ser visto no vídeo. Esta função de interrupção é chamada a cada segundo de acordo com o contador de tempo interno do Arduino. Para saber mais sobre a interrupção, clique aqui. E a cada leitura, o arduino acende e apaga o Led do pino 13.
E é isso! Esperamos que tenha gostado! Em caso de dúvidas, poste aqui neste blog! Para sugestões de tutoriais, clique aqui! Para ver outros tutoriais e projetos desenvolvidos pela equipe LdG e por outros garagistas, clique aqui e aqui, respectivamente! Até a próxima!
Referências:
http://www.electronicsblog.net/very-simple-arduino-lithium-ion-batt...
http://www.uchobby.com/index.php/2007/11/24/arduino-interrupts/
Comentar
Boa tarde, Galera!
Posso utilizar esse mesmo esquema e codigo para realizar teste com baterias de 12v 1.3Ah?
Preciso fazer algo desse tipo para garantia a autonomia de um sistema.
Posso usar pra descarregar qualquer tipo de bateria? Penso em usar em aeromodelimo. Grato.
Bem-vindo a
Laboratorio de Garagem (arduino, eletrônica, robotica, hacking)
© 2024 Criado por Marcelo Rodrigues. Ativado por
Você precisa ser um membro de Laboratorio de Garagem (arduino, eletrônica, robotica, hacking) para adicionar comentários!
Entrar em Laboratorio de Garagem (arduino, eletrônica, robotica, hacking)