Guía Completa de Sensores para Arduino (2025)
Los sensores son componentes fundamentales en cualquier proyecto con Arduino, ya que permiten que nuestros circuitos interactúen con el mundo físico. Desde medir temperatura y humedad hasta detectar movimiento, gas o luz, los sensores transforman magnitudes físicas en señales eléctricas que Arduino puede procesar.
Esta guía completa presenta los sensores más utilizados en proyectos con Arduino, explicando su funcionamiento, aplicaciones prácticas, especificaciones técnicas y consideraciones importantes para su implementación. Cada sensor incluye información sobre su principio de operación, rangos de medición, precisión y consejos para obtener los mejores resultados.
Tanto si estás comenzando en el mundo Arduino como si buscas expandir tus conocimientos sobre sensores específicos, encontrarás aquí información práctica y detallada sobre los módulos más populares del mercado. Aprenderás a seleccionar el sensor adecuado según las necesidades de tu proyecto y a comprender las diferencias entre modelos similares.
Sensores de Temperatura y Humedad
DHT11 - Sensor de Temperatura y Humedad Básico
El DHT11 es el sensor de temperatura y humedad más económico y popular para proyectos educativos. Utiliza un sensor capacitivo de humedad y un termistor para medir el aire circundante, proporcionando una salida digital calibrada en el pin de datos.
- Rango de temperatura: 0°C a 50°C (±2°C de precisión)
- Rango de humedad: 20% a 90% HR (±5% de precisión)
- Voltaje de operación: 3V a 5.5V
- Frecuencia de muestreo: 1 muestra por segundo
- Protocolo de comunicación: One-Wire digital
Este sensor es ideal para estaciones meteorológicas caseras, sistemas de control ambiental básicos, proyectos educativos y monitoreo de temperatura en interiores. Su bajo costo lo hace perfecto para aprender los fundamentos de lectura de sensores ambientales.
Conexión: Requiere tres pines: VCC (5V), GND y DATA. Se recomienda usar una resistencia pull‑up de 10kΩ entre DATA y VCC para garantizar comunicación estable. La librería DHT.h facilita enormemente la lectura de valores.
Limitaciones importantes: No es adecuado para aplicaciones que requieran alta precisión o lecturas rápidas. En ambientes muy húmedos o secos puede presentar lecturas inestables. No debe exponerse directamente a agua o condensación extrema.
DHT22 (AM2302) - Sensor de Temperatura y Humedad de Precisión
El DHT22 es la versión mejorada del DHT11, ofreciendo mayor precisión y rango de medición. Es el sensor más recomendado para aplicaciones profesionales que requieren datos ambientales confiables sin necesidad de calibración externa.
- Rango de temperatura: ‑40°C a 80°C (±0.5°C de precisión)
- Rango de humedad: 0% a 100% HR (±2‑5% de precisión)
- Voltaje de operación: 3.3V a 6V
- Frecuencia de muestreo: 0.5 Hz (una lectura cada 2 segundos)
- Consumo: 2.5mA en medición activa
Es la elección perfecta para invernaderos automatizados, sistemas HVAC caseros, dataloggers meteorológicos de largo plazo y proyectos IoT que requieren monitoreo ambiental preciso. Su estabilidad a largo plazo lo hace confiable para instalaciones permanentes.
Ventajas sobre DHT11: Cuatro veces más preciso en temperatura, cubre todo el rango de humedad, funciona en temperaturas bajo cero y ofrece mejor linealidad en sus mediciones. Aunque cuesta aproximadamente el doble, la inversión se justifica en proyectos serios.
Uso con Arduino: Compatible con la misma librería DHT.h que el DHT11, simplemente cambiando el tipo de sensor en el código. La instalación física es idéntica, incluyendo la resistencia pull‑up de 10kΩ.
DS18B20 - Sensor de Temperatura Digital Sumergible
El DS18B20 es un sensor de temperatura digital de alta precisión con encapsulado resistente al agua. Su característica única es el protocolo 1‑Wire que permite conectar múltiples sensores en un solo bus digital, ideal para sistemas de monitoreo distribuido.
- Rango de temperatura: ‑55°C a 125°C (±0.5°C de precisión entre ‑10°C y 85°C)
- Resolución programable: 9 a 12 bits (0.5°C a 0.0625°C)
- Voltaje de operación: 3.0V a 5.5V
- Tiempo de conversión: 750ms (resolución de 12 bits)
- Cada sensor tiene dirección única de 64 bits
Aplicaciones ideales incluyen medición de temperatura en líquidos, monitoreo de acuarios y piscinas, sistemas de calefacción por suelo radiante, control de fermentación en cervecería casera y cualquier escenario donde el sensor deba sumergirse o exponerse a humedad extrema.
Conexión múltiple: La gran ventaja del DS18B20 es poder conectar decenas de sensores en paralelo usando solo un pin digital de Arduino. Cada sensor tiene un ID único que permite identificarlo individualmente, perfecto para mapas térmicos o monitoreo de múltiples puntos.
Configuración: Requiere resistencia pull‑up de 4.7kΩ entre la línea de datos y VCC. La librería OneWire junto con DallasTemperature simplifica enormemente la lectura. El encapsulado impermeable con cable de 1 metro permite instalación en lugares difíciles.
Sensores de Distancia y Proximidad
HC‑SR04 - Sensor Ultrasónico de Distancia
El HC‑SR04 es el sensor de distancia más utilizado en robótica educativa. Funciona emitiendo pulsos ultrasónicos de 40 kHz y midiendo el tiempo que tarda el eco en regresar, calculando así la distancia al objeto mediante la velocidad del sonido en el aire.
- Rango de medición: 2 cm a 400 cm
- Precisión: ±3 mm
- Ángulo efectivo: 15 grados cónico
- Voltaje de operación: 5V DC
- Corriente de trabajo: 15 mA
- Frecuencia ultrasónica: 40 kHz
Es perfecto para robots autónomos que evitan obstáculos, sistemas de estacionamiento asistido, medidores de nivel de líquidos en tanques, detectores de presencia en puertas automáticas y proyectos interactivos que respondan a la proximidad de personas u objetos.
Funcionamiento: El sensor tiene dos transductores: TRIG (transmisor) y ECHO (receptor). Arduino envía un pulso de 10 μs al pin TRIG, el sensor emite 8 pulsos ultrasónicos y el pin ECHO permanece en HIGH durante el tiempo que tarda el eco en regresar.
Cálculo de distancia: La fórmula es simple: Distancia (cm) = (Tiempo en microsegundos × 0.034) / 2. Dividimos entre 2 porque el sonido recorre la distancia dos veces (ida y vuelta). La función pulseIn() de Arduino facilita la medición del tiempo.
Consideraciones prácticas: Las superficies blandas, irregulares o en ángulo pueden absorber o desviar el ultrasonido, causando lecturas erráticas. Funciona mejor con superficies planas y perpendiculares. No es confiable para medir objetos muy pequeños o con formas complejas.
Sensores de Movimiento
HC‑SR501 - Sensor de Movimiento PIR
El sensor PIR (Passive Infrared) detecta movimiento mediante cambios en la radiación infrarroja emitida por objetos con temperatura (principalmente cuerpos humanos y animales). Es el sensor estándar para sistemas de iluminación automática y alarmas de seguridad caseras.
- Rango de detección: 3 a 7 metros (ajustable)
- Ángulo de detección: 120 grados
- Voltaje de operación: 4.5V a 20V (ideal 5V)
- Tiempo de retardo ajustable: 0.3 a 200 segundos
- Sensibilidad ajustable mediante potenciómetros
- Temperatura de operación: ‑15°C a +70°C
Aplicaciones comunes: sistemas de iluminación que se activan al detectar personas, alarmas de intrusos, contadores de personas en entradas, activadores de cámaras de seguridad, proyectos de domótica para automatización de luces y sistemas de ahorro energético en oficinas.
Ajustes del sensor: El módulo incluye dos potenciómetros en la parte posterior. Uno controla el tiempo que la salida permanece en HIGH después de detectar movimiento (delay time), y el otro ajusta la sensibilidad o distancia de detección. Estos ajustes son cruciales para optimizar el comportamiento según la aplicación.
Modos de operación: Un jumper permite seleccionar entre modo Single Trigger (una detección por ciclo) y Repeat Trigger (detección continua mientras haya movimiento). El modo Repeat es ideal para iluminación, mientras que Single Trigger funciona mejor para contadores.
Limitaciones: No detecta objetos estáticos, funciona mal a través de vidrio o plástico grueso, puede dar falsos positivos con cambios bruscos de temperatura o corrientes de aire, y requiere un tiempo de calentamiento de 30‑60 segundos al encenderse antes de funcionar correctamente.
MPU6050 - Acelerómetro y Giroscopio de 6 Ejes
El MPU6050 combina un acelerómetro de 3 ejes y un giroscopio de 3 ejes en un solo chip, proporcionando información completa sobre orientación, aceleración y velocidad angular. Es fundamental en drones, estabilizadores de cámara, sistemas de navegación inercial y dispositivos wearables.
- Acelerómetro: rangos seleccionables de ±2g, ±4g, ±8g, ±16g
- Giroscopio: rangos de ±250, ±500, ±1000, ±2000 grados/segundo
- Comunicación: I2C (dirección 0x68 o 0x69)
- Voltaje de operación: 3.3V a 5V
- ADC de 16 bits para alta precisión
- Procesador DMP interno para cálculos complejos
Este sensor es indispensable en cuadricópteros y drones para estabilización de vuelo, robots balancines de dos ruedas (self‑balancing), gimbals para cámaras, sistemas de realidad virtual DIY, monitores de actividad física, control de juegos mediante gestos y navegación inercial para robots.
Conexión I2C: Utiliza solo dos pines de datos (SDA y SCL) más alimentación. Múltiples MPU6050 pueden compartir el mismo bus I2C si se configura la dirección mediante el pin AD0. La comunicación I2C simplifica el cableado y permite integración con otros sensores I2C simultáneamente.
Procesamiento de datos: Los datos crudos del acelerómetro y giroscopio deben combinarse mediante algoritmos de fusión sensorial (como filtro complementario o filtro de Kalman) para obtener ángulos precisos. El DMP interno puede realizar estos cálculos automáticamente, aligerando la carga del Arduino.
Calibración necesaria: El sensor requiere calibración inicial para compensar offsets y drift. Las librerías como MPU6050_tockn o I2Cdev facilitan este proceso. Sin calibración adecuada, las lecturas pueden derivar significativamente con el tiempo, especialmente en el giroscopio.
Sensores de Gas y Calidad del Aire
MQ‑2 - Sensor de Gas y Humo
El MQ‑2 es un sensor de gas de óxido metálico semiconductor que detecta una amplia variedad de gases combustibles y humo. Su elemento sensible de SnO₂ (dióxido de estaño) cambia su conductividad en presencia de gases, generando una señal analógica proporcional a la concentración.
- Gases detectables: GLP, propano, metano, butano, hidrógeno, alcohol, humo
- Rango de concentración: 300 a 10 000 ppm
- Voltaje de operación: 5V DC
- Consumo: 150 mA (el sensor se calienta durante operación)
- Tiempo de calentamiento: 20‑48 horas para estabilización completa
- Salidas: analógica (A0) y digital con umbral ajustable (D0)
Aplicaciones: detectores de fugas de gas en cocinas, alarmas de incendios por detección de humo, sistemas de ventilación automática para garajes, monitores de calidad del aire, proyectos de seguridad industrial casera y automatización de extractores de aire en laboratorios o talleres.
Calentamiento obligatorio: El sensor debe precalentarse durante al menos 48 horas para alcanzar estabilidad óptima, aunque puede dar lecturas útiles después de 24 horas. Durante el calentamiento, el elemento interno alcanza aproximadamente 300°C, lo que es normal y necesario para su funcionamiento.
Calibración y uso: No proporciona mediciones absolutas en ppm sin calibración específica para cada gas. La salida analógica varía entre 0‑1023 en Arduino. El potenciómetro en el módulo ajusta el umbral de la salida digital. Para aplicaciones serias, se requiere calibración con concentraciones conocidas del gas objetivo.
Advertencias de seguridad: No es un sensor certificado para aplicaciones de seguridad crítica. No debe usarse como único medio de detección de gas en instalaciones reales. Es sensible a múltiples gases simultáneamente, lo que puede causar lecturas ambiguas. Evitar exposición directa a agua o humedad extrema.
Sensores de Luz
LDR - Fotoresistor (Sensor de Luz)
El LDR (Light Dependent Resistor) o fotoresistor es un componente pasivo cuya resistencia varía inversamente con la intensidad de luz incidente. A mayor luz, menor resistencia (puede bajar hasta 100 Ω en luz brillante), y en oscuridad puede alcanzar varios megaohmios.
- Resistencia en oscuridad: 1 MΩ – 10 MΩ
- Resistencia bajo luz brillante: 100 Ω – 1 kΩ
- Voltaje máximo: 150 V DC
- Potencia máxima: 100 mW
- Respuesta espectral: 400‑700 nm (luz visible)
- Tiempo de respuesta: 8‑12 ms (subida), 80‑100 ms (bajada)
Usos comunes: iluminación automática que se activa al anochecer, seguidores solares que orientan paneles fotovoltaicos, medidores de intensidad lumínica, control de brillo automático en pantallas, sensores crepusculares para jardín, proyectos de fotografía automática y sistemas de ahorro energético.
Configuración con Arduino: El LDR se conecta en un divisor de tensión con una resistencia fija (típicamente 10 kΩ) y se lee mediante una entrada analógica. La fórmula del divisor permite calcular la luz: Vout = Vin × (R_fija / (R_fija + R_LDR)). Arduino lee este voltaje como valor entre 0‑1023.
Ventajas: Extremadamente económico (centavos), fácil de usar, no requiere alimentación activa, amplio rango dinámico de detección, muy robusto y duradero. Es el sensor de luz más simple para comenzar en Arduino.
Limitaciones: Respuesta lenta comparada con fotodiodos, sensibilidad no lineal que dificulta mediciones precisas en lux, puede degradarse con exposición prolongada a luz UV intensa, variabilidad entre unidades que requiere calibración individual. No distingue colores, solo intensidad total.
Sensores de Presión
BMP180 - Sensor de Presión Barométrica
El BMP180 es un sensor de presión atmosférica de alta precisión que también mide temperatura. La presión barométrica no sólo indica cambios meteorológicos, sino que permite calcular altitud con notable precisión, siendo fundamental en drones, estaciones meteorológicas y dispositivos de navegación.
- Rango de presión: 300 a 1100 hPa (hectopascales)
- Precisión: ±0.03 hPa (equivalente a ±0.25 metros de altitud)
- Rango de temperatura: ‑40°C a +85°C (±2°C de precisión)
- Resolución de presión: 0.01 hPa
- Comunicación: I2C (dirección 0x77)
- Voltaje de operación: 3.3V (tolerante a 5V en pines I2C)
Aplicaciones prácticas: estaciones meteorológicas para predicción de clima, altímetros para drones y aviones RC, sistemas de navegación vertical, dataloggers de montaña para seguimiento de rutas, proyectos de ciencia atmosférica y compensación de presión en sensores de gases sensibles a cambios barométricos.
Cálculo de altitud: La fórmula barométrica internacional permite convertir presión en altitud: Altura (m) = 44330 × (1 ‑ (P/P₀)^(1/5.255)), donde P es la presión medida y P₀ es la presión al nivel del mar (101325 Pa). La precisión típica es de ±1 metro en condiciones estables.
Conexión I2C: Usa sólo dos cables de datos más alimentación, permitiendo compartir el bus con otros sensores I2C como el MPU6050 o displays OLED. La librería Adafruit_BMP085 (compatible con BMP180) simplifica enormemente la lectura y los cálculos de compensación de temperatura.
Compensación de temperatura: El sensor realiza automáticamente compensación térmica interna para mantener precisión en la medición de presión a diferentes temperaturas. Las lecturas de temperatura también son precisas y pueden usarse independientemente como termómetro digital.
Nota importante: El BMP180 ha sido reemplazado por el BMP280 y BME280 (que añade humedad) en nuevos diseños, pero sigue siendo ampliamente usado por su disponibilidad y bibliotecas maduras. El código es casi idéntico entre versiones.
Sensores de Humedad del Suelo
Sensor Capacitivo de Humedad del Suelo
El sensor capacitivo de humedad del suelo mide el contenido de agua en el sustrato mediante cambios en la capacitancia del material. A diferencia de los sensores resistivos que se corroen rápidamente, el sensor capacitivo no tiene contacto eléctrico directo con el suelo, ofreciendo mayor durabilidad.
- Voltaje de operación: 3.3V a 5V DC
- Salida: analógica (0‑3V típicamente)
- Consumo: <5 mA
- Tiempo de respuesta: instantáneo
- Material: PCB recubierto resistente a la corrosión
- Longitud de inserción: 6‑8 cm típicamente
Perfecto para sistemas de riego automático de jardines y macetas, invernaderos inteligentes, agricultura de precisión a pequeña escala, monitoreo de plantas indoor, proyectos IoT de jardinería y cualquier aplicación donde sea crítico mantener niveles óptimos de humedad en el sustrato.
Ventajas sobre sensores resistivos: No se oxida ni corroe con el tiempo, vida útil mucho más larga (años vs. semanas), lecturas más estables, no introduce corriente eléctrica al suelo (evita electrólisis), no afecta el pH del sustrato y mantiene precisión constante sin degradación.
Calibración necesaria: Cada sensor y tipo de suelo es diferente. Calibrar midiendo el valor en aire seco (máximo, suelo totalmente seco) y sumergido en agua (mínimo, saturación completa). Mapear estos valores a porcentajes de humedad: Humedad(%) = map(lectura, valor_aire, valor_agua, 0, 100).
Instalación correcta: Insertar verticalmente en el suelo hasta la línea indicada en el PCB. No sumergir la electrónica superior. Para lecturas precisas, mantener la misma profundidad y orientación. En macetas pequeñas, insertar cerca del centro alejado de las paredes para evitar lecturas falsas.
Tipos de suelo: La lectura varía significativamente según el tipo de sustrato (arena, arcilla, turba, fibra de coco). Calibrar específicamente para cada medio de cultivo. La salinidad del agua y fertilizantes pueden afectar las lecturas capacitivas, requiriendo recalibración periódica.
Consideraciones Generales para Trabajar con Sensores
Al integrar sensores en proyectos Arduino, es fundamental comprender algunos principios universales que aplican a casi todos los dispositivos de medición. Estos conceptos te ayudarán a obtener lecturas confiables y evitar problemas comunes.
Alimentación estable: Muchos sensores son sensibles a fluctuaciones de voltaje. Usa fuentes de alimentación reguladas y capacitores de desacople (100nF cerámico + 10μF electrolítico) cerca de los pines VCC y GND de cada sensor para filtrar ruido eléctrico. Cables largos pueden introducir caídas de tensión significativas.
Tiempo de estabilización: Los sensores químicos y térmicos requieren tiempo para alcanzar equilibrio con el ambiente. Espera al menos 2-3 segundos después de encender antes de tomar la primera lectura válida. Los sensores de gas pueden necesitar minutos o incluso horas de calentamiento previo.
Promediado de lecturas: Las mediciones instantáneas suelen contener ruido aleatorio. Toma múltiples lecturas (10-20) y calcula el promedio para obtener valores más estables. Descarta lecturas extremas (outliers) que se desvíen significativamente del conjunto para mayor robustez.
Filtrado digital: Implementa filtros como media móvil o filtro exponencial para suavizar datos ruidosos sin perder capacidad de respuesta a cambios reales. El filtro de Kalman es ideal para sensores de movimiento como MPU6050, combinando múltiples fuentes de datos.
Calibración periódica: Los sensores derivan con el tiempo debido a envejecimiento, temperatura y contaminación. Recalibra regularmente usando patrones conocidos. Documenta los valores de calibración y la fecha para tracking de rendimiento a largo plazo.
Protección ambiental: Muchos sensores son sensibles a humedad, polvo y condensación. Usa cajas con ventilación adecuada, recubrimientos conformales en PCBs o encapsulados específicos. La silicona RTV protege electrónica de humedad manteniendo permeabilidad a gases para sensores ambientales.
Interferencias electromagnéticas: Motores, relés y fuentes conmutadas generan ruido eléctrico que puede afectar lecturas analógicas. Separa físicamente sensores de fuentes de ruido, usa cables apantallados para señales analógicas y considera optoacopladores para aislar secciones críticas del circuito.
Limitaciones físicas: Cada sensor tiene rangos operativos específicos de temperatura, humedad y presión. Operar fuera de especificaciones puede causar lecturas erróneas o daño permanente. Verifica siempre las condiciones ambientales del despliegue contra las especificaciones del fabricante.
Resolución vs precisión: Un sensor puede tener alta resolución (muchos bits de salida) pero baja precisión (desviación del valor real). La resolución indica el cambio mínimo detectable, mientras que la precisión indica cercanía al valor verdadero. Ambos parámetros son importantes según la aplicación.
Documentación y datasheets: Siempre consulta la hoja de datos técnica del sensor. Contiene información crítica sobre tiempos de respuesta, corrientes máximas, protocolos de comunicación, fórmulas de conversión y limitaciones que no son obvias. Los ejemplos de código genéricos de internet pueden no aplicar a tu módulo específico.
Recursos y Librerías Recomendadas
El ecosistema Arduino cuenta con librerías maduras para casi todos los sensores mencionados. La mayoría se instalan fácilmente desde el Gestor de Librerías del Arduino IDE (Herramientas > Administrar Bibliotecas). Busca por el nombre del sensor o fabricante.
Librerías esenciales: DHT sensor library (para DHT11/DHT22), OneWire y DallasTemperature (DS18B20), Adafruit BMP085/BMP180, MPU6050_tockn o I2Cdev (MPU6050), NewPing (HC-SR04). Estas librerías están bien documentadas, mantenidas activamente y probadas por millones de usuarios.
Plataformas de visualización: Para monitorear datos en tiempo real, considera integrar con Blynk, ThingSpeak, MQTT brokers, o crear dashboards con Processing/Python. Estos sistemas permiten logging histórico, análisis de tendencias y control remoto de actuadores basado en lecturas de sensores.
Comunidad y soporte: Los foros oficiales de Arduino, Reddit (r/arduino), Stack Exchange y grupos de Facebook son excelentes para resolver problemas específicos. Al pedir ayuda, incluye siempre el modelo exacto del sensor, esquema de conexión, código completo y descripción detallada del comportamiento observado vs esperado.
Proyectos de ejemplo: GitHub y Arduino Project Hub contienen miles de proyectos documentados usando estos sensores. Revisar implementaciones reales te ayuda a comprender patrones de uso, optimizaciones y soluciones a problemas comunes que enfrentaron otros makers.
Conclusión
Los sensores son los ojos, oídos y tacto de tus proyectos Arduino, transformando el mundo físico en información digital procesable. Esta guía ha cubierto los sensores más versátiles y accesibles del ecosistema maker, desde medición ambiental básica hasta detección de movimiento avanzada.
Cada sensor tiene su nicho ideal: DHT22 para clima preciso, HC-SR04 para evitación de obstáculos, MPU6050 para estabilización, MQ-2 para seguridad contra gases, PIR para detección de presencia, BMP180 para altimetría. Comprender sus fortalezas y limitaciones te permite seleccionar la herramienta correcta para cada desafío.
El siguiente paso es experimentar. Comienza con proyectos simples que usen un solo sensor, familiarízate con sus peculiaridades, y gradualmente combina múltiples sensores en sistemas más complejos. La integración de sensores es donde Arduino realmente brilla, permitiendo crear dispositivos inteligentes que responden autónomamente a su entorno.
Recuerda que la confiabilidad en proyectos reales requiere atención al detalle: calibración cuidadosa, manejo de casos extremos, filtrado de ruido y validación de datos. Los sensores económicos pueden tener variabilidad entre unidades, así que prueba múltiples ejemplares si tu aplicación requiere precisión crítica.
Con estos conocimientos fundamentales sobre sensores Arduino, estás preparado para transformar ideas en prototipos funcionales, automatizar procesos, recopilar datos científicos y crear experiencias interactivas. El mundo físico espera ser medido, analizado y comprendido a través de tus proyectos. ¡Manos a la obra!
