22.- Tester de pilas con Arduino

Publicado el 11 diciembre 2013 por Practicandoarduino @PracticaArduino

En este tutorial vamos a hacer un tester de pilas, con el que veremos el estado de la pila, tenemos 3 estados; bueno, regular y malo, segun el voltaje que tenga la pila. Lo que haremos será dejar nuestro circuito abierto, de forma que tendremos un terminal conectado a tierra y otro al pin analógico 0 que hara de terminal positivo, conectaremos el terminal negativo de la pila a tierra y el positivo al pin 0, el cual recogerá el valor y encenderá un led según el valor recogido.
Veamos que nos hace falta:

1 Placa Arduino Uno
1 Protoboard
3 LEDs
3 Resistencias de 1kΩ
1 Resistencia de 4,7kΩ
Cables para realizar las conexiones

Lo primero que haremos será conectar el pin GND de nuestra placa a la protoboard, colocamos los 3 LEDs, sus ánodos a las resistencias de 1kΩ y sus cátodos a tierra, el otro extremo de las resistencias va a su respectivo pin digital (en nuestro caso 2,4,6).
La resistencia de 4,7kΩ va entre el pin analógico y el extremo positivo de la pila.
El circuito sería así:

Código fuente:

int valor = 0;
float voltaje = 0;
int ledDelay = 2000;
void setup(){
  Serial.begin(9600);
  pinMode(2, OUTPUT);
  pinMode(4, OUTPUT);
  pinMode(6, OUTPUT);
}
void loop(){
  valor = analogRead(0);
  voltaje = 0.0048*valor;
  Serial.println(voltaje);
  if ( voltaje >= 1.5 ){
    digitalWrite(2, HIGH);
    delay(ledDelay);
    digitalWrite(2, LOW);
  }else if ( voltaje < 1.5 & voltaje > 1.2 ){
    digitalWrite(4, HIGH);
    delay(ledDelay);
    digitalWrite(4, LOW);
  }else if ( voltaje <= 1.2 ){
    digitalWrite(6, HIGH);
    delay(ledDelay);
    digitalWrite(6, LOW);
  }
}

Bueno este código no tiene misterio, en el void setup() configuramos los pines de salida y abrimos la comunicación serie. En el void loop() leemos el valor recogido de la entrada analógica y lo convertimos, me explico, una entrada analógica como ya sabeis, recoge un valor entre 0 y 1023, es decir tiene 1024 posibles valores, si tenemos en cuenta que nuestra placa aporta como mucho 5V podemos suponer que 1023 corresponde a 5V, asi que dividimos 5/1024 y nos da 0,0048, así que multiplicamos el valor de la entrada analógica por esa cantidad y tenemos el voltaje que realmente tiene la pila.
Ahora dependiendo de dicho valor encendemos un led para la pilla llena, otro para medio llena y otro para una pila gastada.

Hay que tener en cuenta varias cosas, la entrada analógica, cuando no recibe un valor no nos envía 0, sino que envía un valor que depende del entorno, de los demás pines analógicos etc, por eso justo cuando en el video yo cojo la segunda pila (con la que se debe de encender el led rojo) y aún no está colocada se enciende el LED rojo porque recoge un valor “raro”. Con la primera se enciende el LED amarillo ya que tiene menos carga que la segunda.

IMPORTANTE, no hagais esto con pilas de más voltaje que el que soporta la placa podeis dañarla, yo lo he hecho con 2 pilas de 1,5V.



style="display:inline-block;width:728px;height:15px"
data-ad-client="ca-pub-3868159888315364"
data-ad-slot="7639712738">

PracticandoArduino