Capacímetro con Arduino

La plataforma de programación de Arduino es muy versátil. Al ser un sistema de código abierto, hay mucha gente que colabora y comparte sus programas. Con Arduino es muy sencillo diseñar y fabricar cualquier dispositivo electrónico a medida. Sólo hay que buscar las librerías del proyecto que tengamos en mente, y escribir unas pocas líneas de código para  hacer que todo funcione según lo hemos pensado. Hace unos días me preguntaron si conocía la librería Capacitor.h, y como la mejor forma de conocer una librería es trabajar con ella, hice este capacímetro con Arduino. Como en realidad son dos librerías, he utilizado las dos dentro del mismo código.

«Capacitor.h» permite medir capacidades comprendidas entre 1pF y 100μF.

https://wordpress.codewrite.co.uk/pic/2014/01/21/cap-meter-with-arduino-uno/

«CapacitorLite.h» utiliza menos almacenamiento de programa y funciona más rápido. Puede medir entre 0,2pF y 655pF, pero se aumenta su resolución porque entrega los valores en pFx100 (dos decimales).

https://wordpress.codewrite.co.uk/pic/2014/01/25/capacitance-meter-mk-ii/

Esquema del capacímetro

Este capacímetro está construido con un ATMEGA328P y sus componentes mínimos: el circuito oscilador y el del Reset.

Esquema del Capacímetro.

Para montar todo esto, utilicé un PCB de los que me sobraron cuando hice el Shield del programador ISP para Arduino.

Shield programador ATmega/ATtiny (ARDUINO)

El único problema es que tuve que hacer algunos puentes con cable por debajo.

Puentes a realizar en el PCB del Capacímetro-

Para alimentar el capacímetro utilicé una batería LiPo de 3,86V de tensión nominal, es un módulo recuperado de la batería de un PC. El largo y ancho del capacímetro lo hice en función del tamaño de la batería. La batería va alojada en la base de la caja, debajo de toda la electrónica. Para elevar la tensión de la batería a 5V, es necesario un circuito Step-Up Converter. El primer circuito Step-Up que utilicé interfería las lecturas del conversor ADC, y el capacímetro mostraba algunas medidas erróneas. Al final probé con un módulo MT-3608, previamente ajustado a 5V, y se acabaron los problemas. Para cargar la batería, utilicé el módulo de carga y protección TP-4056.

La  medida de la capacidad se muestra en un display LCD de 2×16 caracteres, utilizando la librería CapacitorLite si el condensador bajo prueba mide menos de 655 pF, o Capacitor.h para mostrar capacidades hasta 100μF. El rango de la medida de capacidad se podría aumentar un poco más, pero la precisión empeora rápidamente.

Código de programación

En los comentarios de inicio del programa están los detalles de funcionamiento, y los link de acceso a las dos publicaciones de Jonathan Nethercott, donde explica con más detalle el funcionamiento de las dos librerías y su calibración.

Código Arduino para el Capacímetro.

Al principio del código se definen los pines de conexión del display LCD y los dos pines donde las dos librerías medirán el condensador bajo prueba: el pin digital 12 y el analógico 2. Para realizar la medida, la librería genera un impulso de 5V de corta duración, alrededor de 100μSeg.

Impulso generado por el Capacímetro.

Posteriormente se realiza la media de tensión en el condensador entre los pines D12 y A2, en función de la capacidad interna y la resistencia PullUp del microprocesador que se utiliza. Estos valores los define de forma automática la librería, pero se pueden calibrar para aumentar la precisión.

En el void setup() se define la velocidad del puerto serie y se genera el mensaje de presentación en el LCD y el puerto serie. También se pueden modificar los valores de calibración de las dos librerías si fuera necesario.

En el void loop() se repite el ciclo de medida de capacidad cada segundo. Se empieza midiendo la capacidad con la librería CapacitorLite.h. El valor de esta medida es en pF x 100, por lo que habría que dividir el valor obtenido entre 100 para mostrar la medida en pF, pero primero se comprueba si el valor obtenido es menor de 65.500, ya que el contador es de 16 bits y se desborda al superar 65.535. A continuación se puede ver el impulso de 5V de corta duración, que genera el pin D12 para realizar la medida de capacidad.

Si el valor de la medida fuese mayor de 655pF, se repetiría la medida utilizando la librería Capacitor.h. A continuación se pueden ver los dos impulsos que genera el pin D12, uno a continuación del otro, para realizar otra medida de capacidad utilizando la segunda librería.

Doble impulso del capacímetro

Con Capacitor.h se obtienen directamente valores en pF. Mediante el código se ajustan los valores superiores a 1.000 para que se muestre en nF, y si la medida es superior a 1.000.000, se ajusta el valor a μF. Al principio de todo, se comprueba que el valor medido sea inferior a 101 μF, con el fin de no mostrar valores imprecisos en las medidas.

Al final del código se muestra la medida realizada en el LCD y a través del puerto serie, añadiendo una indicación de actividad en el display durante 300mSeg. Al final se realiza una pausa de 700mSeg. antes de repetir de nuevo el ciclo de medida.

Firmware

El código que necesitas para programar el ATMEGA-328P de Arduino, lo puedes descargar del repositorio GitHub:

https://github.com/J-RPM/Capacimeter/

Caja 3D del Capacímetro

La caja del Capacímetro la hice con 3 piezas, impresas en 3D con PLA de color negro. Para que destaque la serigrafía, se puede pintar con un pincel fino y pintura sintética, utilizando cualquier color que sea claro.

Caja 3D para el Capacímetro.

Caja del Capacímetro – Thingiverse: Capacimeter with Arduino

¿Necesitas fabricar un circuito impreso?

Actualmente hay muchas empresas que se dedican a fabricar circuitos impresos (PCB), pero no en todas podemos conseguir pequeñas tiradas a buen precio. Por suerte, ahora disponemos de Internet y es mucho más fácil que antes. Podemos buscar empresas en cualquier parte del mundo, y es más fácil encontrar un fabricante que haga nuestros prototipos (PCB) a buen precio. Una de las empresas más grandes del sector es PCBWay.

Logo: PCBWay

https://www.pcbway.es/

D3806-Fuente de alimentación regulable (6A)

Construcción de una fuente de alimentación, con ajuste de tensión y corriente, controlada por microprocesador. Se utiliza el módulo D3806 (Bost-Buck converter DC-DC), el cuál permite regular la tensión de salida entre 0 y 38 voltios, limitar la corriente de salida entre 0 y 6 amperios… y con un rendimiento aproximado del 80%.

D3806 (DC-DC Converter)

El módulo D3806 es un conversor de tensión DC-DC, puede ser muy útil para construir una fuente de alimentación o para controlar la carga de baterías utilizando un panel solar.

Módulo D3806

Características principales

  • Visualización en display de 7 segmentos
  • Control: Tensión constante/Corriente constante
  • 3 indicadores LED (CV,CC,OUT)
  • Salida de tensión en modo automático o manual
  • Medida configurable: Voltios, Amperios, Vatios, Amperios Hora
  • Memoria para almacenar los valores actuales
  • 9 memorias para almacenar valores prefijados por el usuario

D3806 - Memorias

Información técnica

  • Tensión  de entrada: 10 V ~ 40 V
  • Corriente de entrada: 0 ~ 8A
  • Tensión de salida: 0 ~ 38 V
  • Corriente de salida: 0 ~ 6A
  • Resolución de la medida en voltios: 0,01 V
  • Resolución de la medida en amperios: 0,001 A
  • Resolución de la medida en vatios: 0,001 W
  • Resolución de la medida de energía: 0,001AH
  • Eficiencia aproximada: 80%
  • Rizado en la salida: <50 mV
  • Temperatura de trabajo:-40C ~ + 85 C
  • Frecuencia de trabajo: 150 KHz

D3806 - Esquema por bloques

 

Fuente de alimentación

Para suministrar la tensión del entrada al módulo D3806, he utilizado una fuente de alimentación conmutada de 150W (12V / 12,5A).

Fuente de alimentación

La potencia de la fuente de alimentación de entrada podría limitar las prestaciones del módulo D3806. Como es lógico, la potencia de salida de un conversor DC-DC siempre es inferior a la potencia de entrada. Si la eficiencia de este módulo es del 80%, la potencia máxima que podemos obtener a la salida del módulo D3806 será:

150 x 0,8 = 120 W

Para la base de esta fuente de alimentación se utiliza una chapa, con el fin de dar rigidez al conjunto. El resto de la caja se construye con metacrilato de color rojo semi transparente. La serigrafía del frontal se graba en el propio metacrilato con una fresadora digital (CNC).

Frontal de la fuente de alimentación

En el video siguiente, primera parte, se puede ver con más detalle la construcción de la caja y las primeras pruebas de funcionamiento del módulo D3806.

En el video siguiente, segunda parte, se realiza el montaje de todo el conjunto. También se muestran los detalles de todo el cableado y sus componentes, y se comprueba el correcto funcionamiento de esta fuente de alimentación.

En el video siguiente, tercera parte, se realiza la calibración del módulo D3806. También se hacen pruebas de funcionamiento con una carga resistiva, y se cargan 2 baterías de Ni-MH con corriente constante.

Comprobador de diodos – Diode tester

Construcción de un comprobador de diodos, alimentado con una batería recargable. El comprobador incluye un voltímetro y un amperímetro digital, pudiendo mostrar la tensión y corriente de forma simultánea. Este medidor suministra una tensión de salida de 25V, muy útil para comprobar diodos de AT, diodos LED de potencia, diodos Zener. También se puede modificar la corriente máxima de salida, ajustable entre 1,5 y 23 mA aproximadamente, permitiendo conocer la tensión de funcionamiento exacta de un diodo, cuando trabaja con su corriente nominal.

Funcionamiento de un diodo

Para poder interpretar las medidas que muestra este comprobador de diodos, hay que conocer los principios básicos del funcionamiento del diodo que vayamos a comprobar. Algunos diodos están pensados para funcionar en modo directo, polarizados con tensión positiva en el ánodo con respecto al cátodo (diodos rectificadores, LED, detectores), y otros en modo inverso (zener).

Funcionamiento de los diodos

Todos los diodos permiten el paso de la corriente en un sentido y a partir de un umbral de tensión, pero ese umbral cambia en función del tipo de diodo. Si es un diodo rectificador de silicio convencional, el umbral es  de  0,6-0,7V; pero cuando el diodo es de alta tensión, ese umbral suele superar los 10V. Lo mismo sucede con los diodos LED, dependiendo de su potencia y características varía su tensión y corriente de funcionamiento. Para que un comprobador pueda medir cualquier tipo de diodo, es necesario que suministre una tensión alta, pero al mismo tiempo limitando la corriente máxima para evitar que el diodo supere su corriente máxima de funcionamiento y se destruya.

Detalles del comprobador de diodos

Este comprobador de diodos suministra una tensión de 25V, tensión suficiente para verificar la mayoría de los diodos. También limita su corriente de salida entre 2 y 20 mA, pudiendo seleccionar y medir la corriente mediante un potenciómetro. De esta manera se puede medir la tensión de funcionamiento de un diodo LED cuando está trabajando con su corriente nominal, y así poder calcular de forma precisa el valor de su resistencia de limitación.

Cambio de escala en el amperímetro

En este caso he utilizado un doble medidor (voltímetro/amperímetro) de tipo digital. Para poder utilizar este medidor, es necesario modificar la escala de medida de corriente. La modificación se realiza cambiando el SHUNT de medida por una resistencia de 10 ohmios. De esta manera la medida de corriente que mostrará en su display serán mili amperios (mA) en lugar de amperios (A).

Esquema

Este comprobador de diodos se alimenta con una batería recargable de 3,7V y dispone de un módulo de carga con protección TP4056. La tensión de salida de 25V se consigue mediante el módulo Step Up Converter  MT3608. La tensión de salida del comprobador está limitada por una resistencia de 1K en serie con un potenciómetro de 10K, el cuál permite modificar el valor de corriente que circulará por el diodo bajo prueba.

Esquema del comprobador de diodos

Este comprobador se comporta como una fuente de alimentación de 25 VDC con una resistencia interna alta y ajustable… funciona como una pila/batería de 25 V agotada.

Ajustes

El primer ajuste que hay que realizar en este comprobador, es subir la tensión de salida al máximo que permita el módulo MT3608. El ajuste se realiza con el potenciómetro que incluye el propio módulo, y  midiendo la tensión de salida con un polímetro.

Ajuste de tensión de salida

Después habría que calibrar el voltímetro del comprobador. Moviendo el ajuste central de la parte trasera del medidor, y ajustando el valor de tensión que muestra su display hasta conseguir el mismo valor en las puntas de salida del comprobador. Esta comprobación la haremos con un voltímetro/polímetro calibrado.

Ajuste del voltímetro

El ajuste de corriente lo haremos a un valor alto, poniendo el ajuste de corriente al máximo (20mA aproximadamente). Conectaremos un amperímetro  o polímetro (calibrado) en serie con un diodo de alta luminosidad en las puntas de salida. En este caso también se podría conectar directamente el amperímetro en las puntas de salida del comprobador… no es imprescindible conectar un diodo en serie. El ajuste de corriente de este medidor, es la resistencia ajustable que está situada cerca de los conectores.

Calibrado del amperímetro

Una vez realizados los ajustes, el comprobador ya está dispuesto para realizar medidas. En la imagen siguiente se puede ver la medida que muestra un diodo rectificador de alta tensión. Como se puede ver en la imagen, el umbral de este diodo es de 13,7V, de manera que no sería posible comprobarlo con un polímetro convencional.

Midiendo un diodo de AT

En el video siguiente se muestra todo el proceso de montaje y ajustes con más detalles.

Construye un Reloj LED – EC1204B

Montaje de un reloj LED con esfera rotante. Este reloj se puede comprar en kit, circuito impreso y componentes, y es muy interesante para realizar prácticas de programación con micro-controladores. Como el micro-controlador ya se compra programado, también es un kit muy interesante para principiantes en electrónica. En este video se muestra el modo de alimentar el reloj con una batería reciclada de un PC. Para cargar la batería se utiliza un módulo de carga con protección (MT4056) y un sencillo módulo DC-DC para elevar la tensión de la batería hasta los 5 voltios que necesita el reloj. Para albergar todo el conjunto, se fabrica una caja a medida.

MONTAJE - Reloj LED
MONTAJE – Reloj LED

Para obtener una tensión estabilizada de 5V a partir de una batería de 3,7V, utilizamos un pequeño circuito conversor DC-DC de alta eficiencia.

Convertidor DC-DC (5V)
Convertidor DC-DC (5V)

El  control de la PFM es similar al control de PWM, porque ambos crean un tren de impulsos rectangulares para determinar la tensión de salida del regulador. Sin embargo, en lugar de alterar el ciclo de trabajo del tren de impulsos a una frecuencia fija para establecer el voltaje de salida, el PFM altera la frecuencia del tren de impulsos con un ciclo de trabajo fijo. Durante el funcionamiento del PFM, la potencia de salida es proporcional a la frecuencia media del tren de impulsos. El convertidor sólo funciona cuando la tensión de salida cae por debajo de la tensión de salida ajustada, en base a la medida del circuito de realimentación. El controlador aumenta la frecuencia de conmutación del convertidor, hasta conseguir que el voltaje de salida alcance un valor entre la tensión de salida ajustada y entre un 0,8 a 1,5 por ciento por encima. La ventaja del control PFM es la eficiencia significativamente mejorada con cargas bajas, porque hay períodos en los que los MOSFET’s cambian lentamente o nada en absoluto, reduciendo las pérdidas de conmutación. En algunos dispositivos, cuando se omiten los impulsos, el regulador está apagado por completo, reduciendo aún más su eficiencia.

Esquema del reloj: EC1204B
Esquema del reloj: EC1204B

Como podemos apreciar en el esquema del reloj, el micro-procesador se puede programar utilizando un interface serie (ISP).

ISP (In-system programming)
ISP (In-system programming)

También podemos observar que en este módulo de reloj se incluye un sensor de temperatura, controlado por un sólo hilo (DS1820), muy interesante para realizar prácticas con micro-controladores.

Esquema interno: DS1302
Esquema interno: DS1302

El corazón de este módulo (EC1204B) es el chip DS1302, encargado de controlar la cuenta del tiempo (fecha y hora), además de almacenar los datos de sus alarmas (hora y temperaturas) dentro de su memoria RAM. Este pequeño chip (DS1302) necesita tener conectado una pequeña pila, si queremos mantener en marcha el reloj y salvar los datos de configuración cada vez que desconectamos la alimentación del módulo.

DS1302 - Transferencia de datos
DS1302 – Transferencia de datos

Aunque en el video comento que las comunicaciones entre el DS1302 y el micro-controlador se realiza con dos hilos, en realidad son necesarios 3. Además de los dos hilos I/O y SCLK, la entrada de habilitación (CE) del chip DS1302 tiene una doble función, y no puede conectarse directamente a nivel alto como en otros dispositivos. El pin CE, como podemos observar en la imagen anterior, controla el inicio y fin del paquete de datos, y es necesario su control para poder enviar cadenas de datos  con longitud variable (Burst mode).

Alimentador para emergencias, con baterías recicladas

Construcción de una fuente de alimentación autónoma, utilizando 2 baterías recicladas de un PC. Esta fuente de alimentación es ajustable en tensión, entre 4,8 y 17,4 voltios, aunque podría funcionar entre 2 y 28 voltios. Suministra una corriente máxima de 2 amperios a 5V. La corriente máxima va disminuyendo a medida que se aumenta la tensión de salida.

Esquema MT3608
Esquema MT3608

Esta fuente de alimentación podría utilizarse para alimentar cualquier equipo electrónico o cargar su batería, sin la necesidad de disponer de una toma de energía eléctrica. Para facilitar el ajuste de la tensión de salida, la fuente dispone de un voltímetro. La capacidad-autonomía de la fuente dependerá de la batería que se instale, en este caso se han instalado dos baterías en paralelo de 3,7V  /  10,95Wh.

(10,95 x 2) / 3,7 = 5,9 Ah
Esquema de montaje
Esquema de montaje

Esta fuente está basada en el chip MT3608: ‘Step Up Converter’ de alta eficiencia. Como se puede ver en la imagen del oscilograma, es una onda de ancho y amplitud variable (PWM de amplitud variable). La frecuencia nominal es 1,2 MHz, pero tiene un pequeño margen, y varía en función de la tensión de entrada. Se debería tener en cuenta que este tipo de control, trabajando con señales de alta frecuencia (RF), podría generar señales interferentes en sus proximidades (EMI – ElectroMagnetic Interference).

Oscilograma MT3608
Oscilograma MT3608
Eficiencia -Corriente máxima
Eficiencia -Corriente máxima

En estas gráficas se puede observar la alta eficiencia del ‘Step Up Converter’ (MT3608), y la corriente máxima que puede suministrar a diferentes tensiones de salida (medidas reales) .