Entradas analógicas más precisas midiendo Vcc en Arduino


En esta entrada vamos a ver una pequeña curiosidad que nos va a permitir obtener mediciones de nuestras entradas analógicas más precisas.

Es algo poco conocido que algunos modelos de Arduino pueden medir su propio voltaje al que están alimentados. Esto es válido para los modelos de Arduino basados en procesadores AVR 168 y 328.

Para ello se emplea la referencia de 1.1V, que viene incorporada en la mayoría de modelos de Arduino. Podemos emplear el ADC de Arduino para medir esta referencia y, por interpolación, medir la tensión a la que realmente está alimentado Arduino.

PUBLICIDAD: Encarga tus propias PCBs a media en PCBWAY

Donde el valor 1126400L corresponde a 1.1 x 1024 x 1000. Para tener una precisión adecuada debemos medir la referencia 1.1V de nuestro Arduino con un polímetro para calibrar este valor. Este valor es independiente de Vcc, por lo que sólo hay que calibrar una vez.

¿Para qué sirve esto? Principalmente para rectificar las mediciones de ADC y, así, conseguir unas entradas analógicas más precisas que las que obtendremos sin esta rectificación.

El ADC toma como referencia el Vcc de Arduino. Por tanto, cualquier variación en la tensión de alimentación se traduce en un error proporcional en la medición analógica.

Midiendo la tensión de alimentación real, podemos corregir las posibles desviaciones debidas a variaciones en Vcc.

Un pequeño truquito que nos puede ser de utilidad cuando necesitemos realizar lecturas analógicas más precisas en Arduino, cuando la necesidad de precisión justifique el incremento de código.

Si te ha gustado esta entrada y quieres leer más sobre Arduino puedes consultar la sección
tutoriales de Arduino

Previous Librería Arduino ColorConverter
Next Vue.JS 2.0, un gran alternativa a AngularJS

¡Deja un comentario!...

1000
newest oldest

Hola a todos.

Será que no me quedé con la copla. ¿Qué hace el primer sketch y que hace el segundo? O sea, con el primero vemos la tensión de referencia, pero ¿…con el segundo?

Gracias y saludos.

Hola Luis,

Nota para Arduino nano.

El modelo nano tiene un diodo entre la entrada USB y Vcc por lo que si lo alimentamos por USB debemos tener en cuanta la caida de tension en el diodo.
Algunas copias del nano usan un diodo normal y he llegado a medir caidas de 0.8V, por lo que Vcc pasa a ser 4.2V en vez de 5V y esto produce por si solo un error de un 16% en las medidas si no lo corregimos con el procedimiento descrito en el articulo.

Un saludo

donde se mide esta referencia?. muchas gracias por el artículo.