Volver arriba
2011-11-28
Fabriqué un aparato para medir la tensión eléctrica en una pila
de tipo AA o AAA. Marca la tensión en voltios con dos cifras. El
aparato está preparado para dar una incertidumbre de 1 dV.
El principio de funcionamiento es muy sencillo:
- El aparato mide la tensión de un diodo Zener que sirve como
referencia estable y unidad de medida. La tensión del diodo Zener
se mantiene dentro de los límites que marca la incertidumbre de
diseño de 1 dV en unas condiciones
ambientales en las que un operador humano puede estar cómodo.
- Después, mide la tensión en los terminales de los portapilas
de prueba.
- Calcula la tensión calibrada de la pila sin más que escalarla
con la de referencia.
- Después, escribe el valor medido en dos dígitos luminosos.
El valor está indicado en voltios.
Medida de la tensión de una pila. El aparato marca 1,2 V.
La lógica y el sistema de medida residen en un microcontrolador
PIC12F675. Como este microcontrolador tiene muy pocas salidas (¡es
más divertido cuando es difícil!), la solución adoptada consiste en
pasar bit a bit los dos dígitos con codificación BCD a un registro
de desplazamiento dual 4015. Una vez están escritos los dígitos,
se deja que pasen a sendos codificadores 4511 de BCD a siete segmentos;
estos codificadores tienen una memoria que se mantiene bloqueada al
pasar los números al registro de desplazamiento con el fin de que
los dígitos estén fijos y no se conviertan en un borrón ilegible.
La construcción no es muy fiable. Usé cables demasiado gruesos.
Parece que se forma un circuito de inductores y condensadores con los
cables y los puntos de soldadura que es lo bastante significativo como
para falsear las medidas de tensiones bajas. Para garantizar medir
cero con la pila retirada, hubo que poner una resistencia muy baja,
de 100 Ω, entre los terminales
de prueba positivos y la tierra.
Reverso del aparato. Es una maraña de cables.
Materiales
El aparato está fabricado con los siguientes componentes:
- 1 placa perforada rectangular para prototipos
«de puntos» (sin uniones entre los agujeros) con
espaciado de 0,1 pulgadas
(2,54 mm) y un tamaño
de 77 mm por 90 mm.
- 1 condensador cerámico de 100 nF
(C1).
- 1 resistor de 10 kΩ (R1).
- 2 resistores de 100 Ω
y 1 ⁄ 4 W (R2 y R3).
- 2 conjuntos de 8 resistores DIP de 220 Ω (R4 a R18; un resistor
queda sin uso).
- 2 visualizadores de 7 segmentos de cátodo común y con punto
decimal (D1 y D2).
- 1 diodo Zener de 1,5 V y
1 ⁄ 2 W (Z1). Este
diodo da la tensión de referencia.
- 1 tira de 6 patillas acodadas (J1). Este conector sirve para
programar el microcontrolador con un programador ICSP.
- 2 tiras de 4 zócalos cada una. Sirven para alojar el
microcontrolador.
- 2 pilas de tipo AA para la alimentación del aparato.
- 1 portapilas para 2 pilas de tipo AA. Este portapilas
alojará las pilas de alimentación.
- 1 portapilas para 1 pila de tipo AAA (T1 y T2). Este portapilas es
uno de los dos de prueba.
- 1 portapilas para 1 pila de tipo AA (T3 y T4). Este portapilas es
uno de los dos de prueba.
- 1 conector de 2 terminales hembra y una sola posición
con sus espadines correspondientes.
- 1 conector de 2 terminales macho de una sola posición
como contrapartida al conector anterior. Estos conectores
sirven para dar o quitar la tensión de alimentación de las
pilas.
- 1 microcontrolador PIC12F675 (U1). Este microcontrolador se
encarga de la captura de datos y su posterior tratamiento.
- 1 circuito integrado 4015 (U2A y U2B). Este circuito consiste en
2 registros de desplazamiento de 4 bits cada uno. El microcontrolador
escribe en él su salida.
- 2 circuitos integrados 4511 (U3 y U4). Estos circuitos
son codificadores de BCD a 7 segmentos y cogen los dos dígitos
guardados en el circuito 4015 y los escriben en los visualizadores
de 7 segmentos.
- Cable.
- Soldador.
Esquema
Aquí está el esquema del circuito en diferentes formatos. Lo dejé
anotado en inglés.
El programa informático gschem es parte del proyecto gEDA, software libre para el diseño
de circuitos electrónicos.
Programa
El programa opera cíclicamente. Hace lo siguiente:
- Lee la tensión de referencia del diodo Zener.
- Lee la tensión de los portapilas de prueba.
- Obtiene la tensión calibrada: multiplica la medida de los
portapilas por la tensión de calibración del diodo Zener y la
divide por la medida del diodo Zener. El algoritmo de división
utilizado es muy lento, pero no hacía falta algo mejor.
- Convierte la medida calibrada a dos dígitos BCD, uno para
las unidades de voltio y otro para las décimas de voltio.
- Bloquea la memoria de los codificadores 4511 para que las
cifras no bailen.
- Escribe bit a bit los dos dígitos BCD en el registro 4015.
- Desbloquea la memoria de los codificadores para que éstos
lean el dato del registro 4015 y después deja la memoria bloqueada
de nuevo.
- Vuelve a empezar.
El programa, que no es muy elegante, es software libre publicado
bajo la licencia GPL versión 3 (o posterior). Está escrito en
lenguaje ensamblador para PIC. Está aquí:
battery-meter-1.asm.
Para compilarlo con GPASM, el ensamblador libre del proyecto
GPUTILS, hay que
escribir la siguiente orden:
gpasm battery-meter-1.asm
Una vez compilado el programa, hay que escribirlo en el
microcontrolador. Es posible hacerlo directamente en la
placa mediante las patillas acodadas ICSP. La patilla superior
es la VPP
; con un programador como el
PICkit 2, hay que hacer que coincida con la flecha que indica
esta posición. Si se usa el PICkit 2, es posible utilizar el
programa PK2CMD, que es software libre:
pk2cmd -PPIC12F675 -F$PWD/battery-meter-1.hex -M
O, quizá, si los datos de dispositivos están en
/usr/share/pk2,
pk2cmd -PPIC12F675 -B/usr/share/pk2 -F$PWD/battery-meter-1.hex -M
Categorías:
Electricidad,
Informática,
DIY
Artículos publicados el mismo mes
Permalink:
https://sgcg.es/articulos/2011/11/28/medidor-de-tension-para-pilas-aa-y-aaa/
Volver arriba