15. Lectura Analógica con Arduino
Lecturas Analógicas en Arduino - Resolución y Funcionamiento
Introducción a las Lecturas Analógicas
Arduino Uno cuenta con 6 pines de entrada analógica (A0 a A5) que permiten leer valores variables entre 0 y 5 voltios. A diferencia de las señales digitales (0 o 1), las señales analógicas pueden tomar cualquier valor dentro de este rango.
¿Por qué necesitamos conversión?
Importante: Ningún chip electrónico moderno trabaja directamente con señales analógicas. Arduino primero convierte la señal analógica a digital mediante un Conversor Análogo-Digital (ADC) integrado.
Entendiendo la Resolución
El Arduino Uno tiene un ADC de 10 bits de resolución, lo que significa que puede dividir el rango de 0-5V en 1024 valores discretos (2¹⁰ = 1024).
Ejemplos de resolución:
1 bit de resolución:
Valores posibles: 0 o 1
Todo por debajo de ~2.5V = 0
Todo por encima de ~2.5V = 1
Muy poca precisión
2 bits de resolución:
Valores posibles: 0, 1, 2, 3 (2² = 4 valores)
Mejor precisión pero aún limitada
3 bits de resolución:
Valores posibles: 0 a 7 (2³ = 8 valores)
Mayor precisión que los anteriores
10 bits de resolución (Arduino):
Valores posibles: 0 a 1023 (2¹⁰ = 1024 valores)
Alta precisión: cada paso representa aproximadamente 0.0049V (5V/1024)
Fórmula de conversión
Para n bits de resolución, el rango de valores es:
0 a (2ⁿ - 1)
Para Arduino (10 bits):
0 a (2¹⁰ - 1) = 0 a 1023
Implementación práctica en código
void setup() { Serial.begin(9600); // Inicializa comunicación serial } void loop() { int valorAnalogico = analogRead(A0); // Lee el pin analógico A0 float voltaje = (valorAnalogico * 5.0) / 1023.0; // Convierte a voltaje Serial.print("Valor digital: "); Serial.print(valorAnalogico); Serial.print(" | Voltaje: "); Serial.print(voltaje); Serial.println("V"); delay(1000); // Espera 1 segundo }
Aplicaciones comunes
Lectura de sensores (temperatura, luz, humedad)
Potenciómetros y divisores de voltaje
Monitoreo de señales variables
Conclusión
La resolución de 10 bits del Arduino permite mediciones suficientemente precisas para la mayoría de proyectos de electrónica y robótica, convirtiendo señales analógicas del mundo real en valores digitales que podemos procesar programáticamente.
¡En el próximo tutorial veremos ejemplos prácticos de cómo utilizar estas lecturas analógicas en proyectos reales
Comentarios
Publicar un comentario