Medias muy precisas de tensión, intensidad y potencia en CC (DC) con INA219

      Comentarios desactivados en Medias muy precisas de tensión, intensidad y potencia en CC (DC) con INA219

Características principales

El medidor INA219 permite realizar medidas en corriente continua de tensión (voltaje), intensidad (corriente) y potencia. El dispositivo, con la configuración de serie, permite medir:

  • Tensiones de hasta 26 V en corriente continua.
  • Intensidades de hasta 3,5 A en CC.

Comjunica con Arduino a través del protocolo por bus de datos I2C, lo que le permite utilizar un un convertidor ADC propio, con mayor precisión que las entradas analógicas de Arduino. Es por esto que su precisión en medidas de intensidad es de 0,8 mA, y del mismo orden en las lecturas de tensión… ¡IMPRESIONANTE!

Se puede sustituir la resistencia Shunt sobre la que se realizan las medidas de intensidad, para hacer que este medidor realice medidas de hasta 35 A. Para ello, hay que sustituir la resistencia que incorpora la placa de 0,1 Ohm, por una resistencia de 0,01 Ohm. Sin embargo, esta operación no resulta sencilla ya que se trata de resistencias de precisión de muy pequeño tamaño. Incluiremos futuros tutoriales en este sentido.

Esquema de conexión

La comunicación por protocolo I2C usa dos cables para datos. En Arduino, los pines de conexión para I2C son los pines analógicos A4 y A5. En A4 se conecta el cable con función SDA, y en A5 el SCL. Ademas, la placa hay que alimentarla con 5V o 3,3V y GND.

El circuito en el que queremos medir la intensidad, tenemos que intercalar en serie el medidor, como se muestra en la siguiente imagen.

De esta forma, la intensidad que leeremos será la que circula por el circuito, y la tensión será la que está dando la batería o fuente de alimentación. Es importante destacar que de esta forma no estamos midiendo la tensión en los extremos de la carga, si no la tensión total del circuito.

IMPORTANTE: Hay que conectar el negativo de la fuente de alimentación con GND de Arduino y GND de la placa INA219. Si no se hace esto o se conecta a otro punto, la lectura será errónea. Mediante esta conexión se establece una referencia de 0V común a todo el sistema.

Si solo se quiere medir tensión, es aún mas sencillo. No es necesario interrumpir el circuito a través del medidor. Basta con conectar el positivo de uno de los puntos en los que queremos medir tensión, con la entrada Vin+ del medidor, y poner en común el negativo de la fuente con GND de la alimentación desde Arduino. Este esquema se muestra en la siguiente imagen:

Bloques en ArduinoBlocks

En el apartado Inicializar de ArduinoBloks tenemos que incluir el bloque de iniciación y configuración del medidor.  En él se indica la dirección individual que tiene la placa INA219. Las direcciones individuales identifican a cada dispositivo conectado al bus de 2 hilos I2C, es como su nombre. La que se incluye por defecto en el bloque (0x40), es la que trae de fábrica la placa INA219.

Si se quiere cambiar la dirección individual de la placa para conectar varios INA219 a un mismo Arduino, hay que realizar una pequeña soldadura sobre la misma.

Una soldadura en A0 (como en la imagen superior), establece la dirección 0x41. Una soldadura en A1 establece la dirección 0x44, y soldaduras en ambas, establece la dirección 0x45. Por tanto, se pueden conectar como máximo 4 placas a la vez en un mismo Arduino. Se detalla el proceso en el siguiente enlace: https://cdn-learn.adafruit.com/downloads/pdf/adafruit-ina219-current-sensor-breakout.pdf

Tras esto, en el bucle del programa ya podemos incluir el bloque de lecturas.

Con un solo bloque, gracias a su desplegable, podemos elegir que medida realizar:

Programa ejemplo

En el siguiente programa se guardan en tres variables los valores de tensión, intensidad (corriente) y potencia, y cada segundo, se envían a la pantalla del ordenador a través del puerto serie.

 

Preguntas, sugerencias, propuestas…

Realiza cualquier cuestión, sugerencia o propuesta sobre el artículo o vídeo, en el foro del curso. Muchas gracias.