← Índice del curso

Internet de las Cosas · Tema 7

Sensores para IoT

Todo el sistema IoT existe para llevar a alguien una medida del mundo físico. Si el sensor mide mal, ninguna nube lo arregla. Este tema recorre los sensores más usados, cómo se describe su calidad y por qué el que parece el más simple de elegir esconde, a veces, el mayor consumo de energía del dispositivo.

01 · Punto de partida

Medir antes de comunicar

Los seis primeros temas se ocuparon de cómo se comunica un dispositivo. Con el segundo bloque empezamos por el principio de la cadena: el sensor. Es el que convierte un fenómeno del mundo (calor, humedad, luz, un golpe) en una señal eléctrica que el microcontrolador puede leer. Hay una regla vieja de la informática que en IoT pesa más que en ningún otro lugar: basura que entra, basura que sale. Un dato mal medido, enviado con el mejor protocolo y guardado en la mejor base, sigue siendo un dato malo.

Ya trabajaste con sensores en el curso de Sensores y Actuadores. Acá miramos los sensores desde la mirada del IoT: dispositivos que están lejos, funcionan con batería, se instalan una vez y deben medir bien durante años sin que nadie los toque.

Las cifras de este tema son órdenes de magnitud típicos para razonar. Para un diseño real, consultá siempre la hoja de datos del sensor exacto.

02 · Cadena de medición

De la magnitud física al número

Entre el fenómeno y el valor que ve tu programa hay varios pasos, y en cada uno se puede perder calidad.

Cadena de medición de un sensor El fenómeno físico, por ejemplo la temperatura, actúa sobre un transductor que lo convierte en una señal eléctrica. Un circuito de acondicionamiento la amplifica y filtra. Un conversor analógico-digital la transforma en un número. El microcontrolador aplica calibración y unidades y arma el mensaje para enviar. En cada etapa pueden entrar ruido y errores. Fenómenotemperatura, luz… Transductorlo vuelve eléctrico Acondicionaramplificar y filtrar Conversoranalógico → digital Firmwarecalibrar y dar unidades Deriva y sensibilidad cruzada Ruido eléctrico Resolución limitada Calibración mal hecha Cada etapa agrega su propio error al dato final

Muchos sensores modernos integran toda la cadena en un solo chip y entregan el valor ya convertido, calibrado y listo por un bus digital. Eso simplifica el diseño y es una de las razones del éxito de los sensores digitales en IoT. Con uno analógico, vos construís el acondicionamiento, elegís el conversor y calibrás; hay más control y más trabajo.

03 · Calidad

Cómo se describe la calidad de un sensor

Tres palabras que en la conversación diaria se usan como sinónimos tienen significados distintos en medición. Confundirlas lleva a elegir mal.

Conceptos para describir un sensor y un ejemplo de cada uno.
ConceptoQué diceEjemplo
RangoEntre qué valores puede medir−40 a 85 °C
ResoluciónEl cambio más pequeño que se puede distinguir en el dato0,01 °C: el valor avanza de a centésimas
Exactitud (accuracy)Cuánto se acerca la medida al valor verdadero±0,3 °C: si hay 20,0 °C reales, puede marcar entre 19,7 y 20,3
Repetibilidad (precisión)Cuánto coinciden medidas sucesivas de lo mismoDiez lecturas seguidas varían ±0,05 °C
Tiempo de respuestaCuánto tarda en reflejar un cambioUn sensor de humedad puede tardar segundos en estabilizarse
DerivaCómo cambia la medida con el tiempo sin que cambie el fenómeno±0,25 % de humedad por año

Lo más importante: una alta resolución no implica exactitud. Un sensor puede mostrar 22,347 °C y estar equivocado por dos grados. Es como una regla con divisiones muy finas pero mal impresa: lee con mucho detalle un valor erróneo. En IoT importa saber cuál de las tres se necesita. Detectar que algo cambió pide repetibilidad y buena resolución; comparar con un límite legal pide exactitud.

La resolución de la cadena depende del conversor. Un conversor analógico-digital de n bits divide el rango de entrada en 2n pasos: con 12 bits y una tensión de referencia de 3,3 V, cada paso vale 3,3 / 4096 ≈ 0,8 mV. Si el sensor entrega 10 mV por °C, la resolución es 0,08 °C. Pero la exactitud, en cambio, la fija el sensor y su calibración, no los bits del conversor.

05 · Interfaces

Cómo entrega el dato un sensor

Un sensor puede entregar su medida de cuatro maneras. La elección condiciona el cableado, el consumo, el ruido y la facilidad de programar.

Formas en que un sensor entrega su medida al microcontrolador.
FormaCómo esVentajaInconveniente
AnalógicaUna tensión proporcional a la magnitudSimple y barata; no hay protocoloRuido, calibración manual, un canal del conversor por sensor
Digital por bus (I²C, SPI)Valor ya convertido, leído con comandosPreciso, calibrado de fábrica, varios sensores en el mismo busHay que programar el protocolo; las direcciones pueden chocar
Por pulsos o frecuenciaUn tren de pulsos cuyo ritmo indica el valorInmune al ruido; se mide con un contadorExige temporizadores o interrupciones
Por interrupciónUna señal digital que avisa cuando ocurre un eventoEl microcontrolador duerme hasta que pasa algoHay que configurar bien umbrales y filtros

Para IoT, los sensores digitales por bus son la opción más cómoda: reducen errores de acondicionamiento y calibración, y suelen traer un modo de bajo consumo. Dos detalles prácticos conviene tener presentes: los niveles de tensión del sensor y del microcontrolador deben coincidir (3,3 V contra 5 V), y varios sensores en un mismo bus I²C necesitan direcciones distintas. En algunos microcontroladores, además, ciertos canales analógicos no pueden usarse a la vez que la radio Wi-Fi; en el ESP32 original, por ejemplo, el segundo conversor queda ocupado mientras el Wi-Fi está activo. Es otro motivo para preferir sensores digitales.

06 · Consumo

La energía de un sensor

Cuando se piensa en la batería de un dispositivo IoT, se piensa en la radio. Con los sensores comunes es correcto: medir cuesta fracciones de microamperio-hora, y enviar cuesta miles de veces más. Pero hay sensores que cambian por completo el panorama. Según su comportamiento, se agrupan en tres perfiles:

  • Medición puntual. El sensor se despierta, mide en milisegundos y vuelve a dormir. Es el caso de temperatura, humedad, presión y luz: consumo despreciable.
  • Siempre atento. Está encendido todo el tiempo para detectar eventos, con microamperes: acelerómetros por interrupción. Su gasto es pequeño pero constante, y se suma al del microcontrolador dormido.
  • Siempre caliente. Necesita un calentador, un láser o un ventilador que no puede apagarse sin perder la calibración o la estabilidad: gases y partículas. El consumo es de miliamperes de forma continua, y puede dominar todo.
mAh por día del sensor = corriente continua × 24 h + lecturas por día × corriente al medir × tiempo de lectura

El segundo término suele ser ínfimo; el primero decide. Un sensor de gas con un calentador de 150 mA consumiría 3600 mAh por día: una batería de 2000 mAh duraría 13 horas. Los sensores modernos de calidad del aire cuidan el calentador con ciclos cortos (consumen unos pocos miliamperes), pero siguen gastando decenas de miliamperes-hora por día, mucho más que el resto del dispositivo.

07 · Instalación

Medir bien: el entorno cuenta

Un sensor excelente mal instalado da medidas malas. Los errores de ubicación son más frecuentes y más grandes que los errores del propio sensor.

  • Autocalentamiento. Un sensor de temperatura soldado cerca de un regulador, del procesador o de la radio mide la temperatura de la placa, no la del aire. Diferencias de 2 a 5 °C son habituales. Se separa físicamente, se ubica en una zona libre de calor, o se mide justo después de encender, antes de que la placa se caliente.
  • Sol y viento. La radiación directa calienta la caja y el sensor; el viento lo enfría. Para el aire exterior se usa un abrigo ventilado que lo proteja del sol sin aislarlo del aire.
  • Humedad y condensación. Los sensores de humedad se degradan con agua líquida, polvo y vapores químicos. Una caja demasiado hermética, por otro lado, atrapa el aire y hace que mida el interior de la caja.
  • Carcasa y presión. Un sensor de presión dentro de una caja cerrada mide la presión de la caja, que cambia con la temperatura.
  • Luz. La tapa translúcida, la suciedad y el ángulo cambian la lectura; el sensor debe «ver» la luz que interesa.
  • Interferencia eléctrica. Cables largos de un sensor analógico captan ruido; los motores y relés cercanos generan picos. Los sensores digitales con bus corto sufren menos.

Una última cuestión es la calibración a lo largo de los años. Los sensores derivan y la suciedad cambia su respuesta. Para productos que deben conservar la exactitud, el diseño prevé comparar contra una referencia, corregir con un valor guardado y avisar si el sensor deja de ser confiable. Lo trabajamos en el tema 10.

08 · Analogía con programación

Comparar el consumo de sensores en Python

Cada sensor se describe con cuatro valores: la corriente que gasta de forma continua (si necesita estar siempre encendido), la corriente al medir y el tiempo de cada lectura. El resto del dispositivo gasta 0,24 mAh por día durmiendo y 0,0025 mAh por cada lectura que procesa y envía por una radio de bajo consumo. La función calcula cuánto gasta el sensor, cuánto el resto y cuánto dura una batería de 2000 mAh.

Python en tu navegador. Los bloques son editables: cambiá los valores y presioná «Ejecutar Python». La primera vez tarda unos segundos en cargar.

BATERIA_MAH = 2000
SUENO_MAH_DIA = 0.24      # microcontrolador dormido
ENVIO_MAH = 0.0025        # procesar y enviar cada lectura (radio de bajo consumo)

# sensor: (qué mide, precisión típica, corriente continua en mA, corriente al medir en mA, ms por lectura)
SENSORES = {
    "termistor NTC":       ("temperatura",        "±1 °C",        0.0,    0.33, 5),
    "temperatura digital": ("temperatura",        "±0,3 °C",      0.0002, 0.5,  10),
    "humedad":             ("humedad relativa",   "±2 % HR",      0.0001, 0.5,  20),
    "presión":             ("presión",            "±1 hPa",       0.0001, 0.7,  15),
    "luz":                 ("iluminación",        "±20 %",        0.0005, 0.2,  100),
    "acelerómetro":        ("movimiento",         "umbral fijo",  0.003,  0.2,  2),
    "gas tipo MQ":         ("gases (calentador)", "relativa",     150.0,  0.0,  0),
    "COV digital":         ("calidad del aire",   "índice",       2.6,    0.0,  0),
}


def autonomia(sensor, lecturas_dia):
    _, _, continua, activa, ms = SENSORES[sensor]
    mah_sensor = continua * 24 + lecturas_dia * activa * ms / 3.6e6
    mah_resto = SUENO_MAH_DIA + lecturas_dia * ENVIO_MAH
    total = mah_sensor + mah_resto
    return mah_sensor, mah_resto, BATERIA_MAH / total


for lecturas in (24, 1440):
    print(f"{lecturas} lecturas por día:")
    print("  sensor                 sensor mAh/día   resto mAh/día   autonomía")
    for nombre in SENSORES:
        s, r, dias = autonomia(nombre, lecturas)
        texto = f"{dias / 365:.1f} años" if dias >= 365 else f"{dias:.1f} días"
        print(f"  {nombre:<22} {s:>12.4f} {r:>15.3f}   {texto}")

Resultado con los valores iniciales: con 24 lecturas por día, los sensores de temperatura, humedad, presión y luz consumen entre 0,0000 y 0,0121 mAh por día y la batería rinde de 17,6 a 18,3 años (en la práctica la autodescarga de la pila lo acorta); el acelerómetro gasta 0,072 mAh por su atención continua y llega a 14,7 años; el sensor de gas tipo MQ consume 3600 mAh por día y la batería dura 0,6 días; el sensor de COV digital consume 62,4 mAh y dura 31,9 días. Con 1440 lecturas por día, todos los sensores pasivos igualan su autonomía en 1,4 años, porque pasa a dominar el resto del dispositivo (3,84 mAh por día), y el de COV cae a 30,2 días.

El modelo muestra dos regímenes. En los sensores pasivos, la autonomía no depende del sensor sino de cuántas lecturas se envían; elegir entre un NTC y un sensor digital no cambia casi nada. En los sensores con calentador, el sensor es el dispositivo en términos de consumo, y enviar menos no ayuda. Conocer el perfil de consumo del sensor antes de diseñar la alimentación ahorra rediseños.

09 · Exploración interactiva

¿Cuánto gasta el sensor?, de extremo a extremo

Este laboratorio ejecuta el mismo modelo del código anterior. Elegí el sensor, cuántas lecturas se envían por día y la autonomía que se pretende. Las barras muestran la duración de la batería de 2000 mAh con cada uno de los ocho sensores (escala logarítmica); el elegido va resaltado y la línea naranja marca el objetivo. Los consumos son valores didácticos.

Consumo del sensor y del resto

Qué mide (y calidad típica)—
Consumo del sensor por día—
Consumo del resto por día—
Parte que gasta el sensor—
Duración de la batería—
Resultado—

Elegí los parámetros y presioná «Calcular el consumo».

Recorrido guiado

  1. Con los valores iniciales (temperatura digital, 24 lecturas, objetivo de 3 años), calculá. El sensor gasta 0,0048 mAh por día, menos del 2 % del total, y la batería rinde 18 años: cumple con holgura.
  2. Pasá por NTC, humedad, presión y luz: las duraciones son casi idénticas (de 17,6 a 18,3 años). Con estos sensores, cambiar de modelo no mueve la autonomía.
  3. Elegí el acelerómetro: su atención continua suma 0,072 mAh por día y baja a 14,7 años. Es poco, pero es el único de este grupo que ya se nota.
  4. Elegí COV digital: 62,4 mAh por día y 31,9 días de batería; «El sensor gasta de más». Probá con 1440 lecturas: casi no cambia, porque su gasto es continuo.
  5. Elegí Gas tipo MQ: 3600 mAh por día, 0,6 días de duración. Un calentador siempre encendido no es compatible con una batería pequeña.
  6. Volvé a Temperatura digital y subí a 1440 lecturas con objetivo de 3 años: 1,4 años y «Gasta la radio». El sensor es el mismo; lo que pesa es cuántas veces se procesa y se envía.
Desafío: pulsar el calentador

Un sensor de gas con calentador de 150 mA se podría encender solo 10 segundos cada 10 minutos. El ciclo de trabajo sería 10 / 600 = 1/60 y la corriente media bajaría a 150 / 60 = 2,5 mA, unos 60 mAh por día: la batería de 2000 mAh duraría unos 33 días. Mejora 60 veces, pero hay una trampa: los sensores de óxido metálico necesitan estabilizarse y su lectura cambia con la temperatura alcanzada, por lo que un ciclo corto puede dar medidas poco repetibles. Por eso los sensores modernos incorporan algoritmos y calentadores diseñados para pulsos. Reducir el consumo de un sensor nunca es gratis en calidad de medida: se verifica con pruebas.

10 · Método de trabajo

Cómo elegir un sensor

Recorré estas preguntas en orden. Casi siempre, las dos primeras reducen la lista a un par de opciones:

  1. ¿Qué magnitud, en qué rango? Un sensor de temperatura para un invernadero no es el mismo que uno para un horno.
  2. ¿Con qué calidad? Distinguí si necesitás exactitud (comparar con un límite), repetibilidad (detectar cambios) o simplemente un indicador relativo.
  3. ¿Cómo responde en el tiempo? Si la variable cambia en segundos y el sensor tarda minutos, no sirve.
  4. ¿Cuál es su perfil de energía? Medición puntual, siempre atento o siempre caliente, y cuánto tarda en estabilizarse.
  5. ¿Qué interfaz tiene? Preferí digital por bus; verificá niveles de tensión, direcciones y la disponibilidad de bibliotecas.
  6. ¿Soporta el entorno? Humedad, polvo, temperatura, luz solar, vapores.
  7. ¿Cuánto deriva y cómo se calibra? Qué vida útil se espera con la calidad pedida.
  8. ¿Costo y disponibilidad? Precio por unidad, proveedores y vida de producción prevista.

Y antes de dar por buena la elección, un ensayo simple: comparar el sensor contra un instrumento de referencia en las condiciones reales de instalación durante unos días. Detecta los errores de ubicación que la hoja de datos no puede anticipar.

11 · Comprensión

Confusiones frecuentes

«Más decimales significa más precisión»

Los decimales muestran la resolución, no la exactitud. Un sensor que informa 22,347 °C puede estar equivocado por 2 °C. La calidad real figura en la hoja de datos como exactitud y repetibilidad, y se comprueba con una referencia.

«Un sensor más caro siempre mide mejor»

Mide mejor lo que fue diseñado para medir, en las condiciones previstas. Un sensor muy exacto mal instalado, o usado fuera de su rango, da peores resultados que uno barato bien ubicado. La instalación y la calibración pesan tanto como el modelo.

«Los sensores no consumen energía»

La mayoría, midiendo de a ratos, consume muy poco. Pero los de calidad del aire con calentador, los de partículas con ventilador o láser y los de CO₂ por infrarrojo gastan miliamperes y pueden dominar el consumo del dispositivo.

«El sensor de gas mide la concentración exacta de un gas»

Los de óxido metálico económicos entregan un índice relativo que responde a muchos gases a la vez (sensibilidad cruzada) y cambia con la temperatura y la humedad. Sirven para detectar cambios y tendencias, no para medir con exactitud o para aplicaciones de seguridad que requieran certificación.

«La temperatura de la placa es la temperatura del ambiente»

El procesador, el regulador y la radio calientan la placa. Un sensor cerca de ellos mide el calor del propio dispositivo. Hay que alejarlo, aislarlo térmicamente o corregir con un modelo de la placa.

«Un sensor calibrado de fábrica se calibra una sola vez»

La deriva, el envejecimiento, la contaminación y los choques cambian su respuesta con los años. En productos de larga vida se prevé verificar o recalibrar periódicamente, o al menos detectar cuándo la medida deja de ser confiable.

12 · Práctica guiada

Predecí antes de comprobar

1. Resolución del conversor

Un conversor de 12 bits con referencia de 3,3 V lee un sensor que entrega 10 mV por °C. ¿Cuál es la resolución en °C? ¿Y con un conversor de 10 bits?

Ver solución

Con 12 bits: 3,3 V / 4096 ≈ 0,806 mV por paso; a 10 mV/°C son 0,08 °C. Con 10 bits: 3,3 V / 1024 ≈ 3,22 mV por paso, es decir 0,32 °C. Más bits mejoran la resolución; no mejoran la exactitud del sensor.

2. Resolución o exactitud

Un sensor con resolución de 0,01 °C marca 23,45 °C mientras un termómetro de referencia marca 21,8 °C. ¿Es un problema de resolución?

Ver solución

No. La resolución es suficiente; hay un error de exactitud de unos 1,65 °C. Las causas probables son un autocalentamiento por la placa, una mala calibración o una ubicación inadecuada. Aumentar la resolución no corregiría nada.

3. Elegir el sensor

Proponé un sensor para cada caso: (a) detectar que un portón se abrió, con batería de años; (b) medir la iluminación de una oficina; (c) medir la humedad de una bodega de vino.

Ver solución

(a) Acelerómetro (o un interruptor magnético) con salida de interrupción: duerme el microcontrolador hasta el evento. (b) Sensor de luz ambiente digital, con una tapa difusora; el rango dinámico y la respuesta parecida al ojo son lo importante. (c) Sensor de humedad capacitivo digital, protegido de la condensación y con control de la deriva.

4. El calentador permanente

Un sensor de gas con calentador de 150 mA funciona con una batería de 2000 mAh. ¿Cuánto dura? ¿Y si el calentador se enciende 10 s cada 10 minutos (sin considerar el resto)?

Ver solución

Continuo: 2000 / 150 ≈ 13 horas. Con ciclo de 10 s sobre 600 s, la corriente media es 150 × (10 / 600) = 2,5 mA, y la batería dura 2000 / 2,5 = 800 horas, unos 33 días. Hay que verificar que la medida siga siendo válida con ciclos tan cortos.

5. Más lecturas, ¿mejor?

Con un sensor de temperatura digital, pasar de 24 a 1440 lecturas por día baja la autonomía de 18 años a 1,4. ¿Qué causa el cambio, el sensor o la radio?

Ver solución

La causa es el resto del dispositivo: procesar y enviar cada lectura. El sensor pasa de 0,0048 a 0,0068 mAh por día, diferencia ínfima, mientras el resto sube de 0,3 a 3,84 mAh por día. Con sensores pasivos, la frecuencia de envío decide la autonomía, no el sensor.

6. Autocalentamiento

Un sensor de temperatura montado a 5 mm de un regulador de tensión marca siempre entre 2 y 3 °C más que el ambiente. Proponé tres mejoras.

Ver solución

(1) Alejarlo del regulador y de las fuentes de calor, incluso con un cable corto o una placa secundaria. (2) Aislarlo térmicamente de la placa con ranuras en la plaqueta y exponerlo al aire. (3) Apagar el regulador o medir antes de que se caliente: encender el sensor, medir y volver a dormir. Se puede además corregir con un modelo, pero lo mejor es evitar el error.

13 · Síntesis

Ideas para recordar

  • La calidad del dato se decide en el sensor y su instalación; ningún protocolo ni plataforma mejora un dato mal medido.
  • Entre el fenómeno y el valor hay una cadena (transductor, acondicionamiento, conversor y firmware) y cada etapa agrega error.
  • Resolución, exactitud y repetibilidad son conceptos distintos: más decimales no significan más exactitud.
  • Los sensores de temperatura, humedad, presión y luz son pasivos y de consumo mínimo; los de calidad del aire con calentador, láser o ventilador son los grandes consumidores.
  • Hay tres perfiles de energía: medición puntual, siempre atento y siempre caliente; el tercero puede dominar el consumo del dispositivo.
  • Con sensores pasivos, la autonomía la fijan el procesamiento y el envío de cada lectura, no el modelo de sensor.
  • Los sensores digitales por bus simplifican el diseño y los que generan interrupciones permiten dormir hasta que ocurra un evento.
  • Los errores de instalación (autocalentamiento, sol, condensación, carcasa) suelen superar a los del propio sensor.
  • Se elige por magnitud, calidad, respuesta temporal, energía, interfaz, entorno, deriva y costo, y se valida contra una referencia.

¿Listo para el tema 8?

Antes de avanzar, tomá un producto de tu entorno que mida algo (un termómetro, un detector, un reloj inteligente) y analizá: qué magnitud mide, con qué principio, qué calidad necesita, qué perfil de energía tiene su sensor y dónde podría fallar la instalación. Después pensá cómo lo comprobarías contra una referencia.

En el próximo tema aprendemos a conectar los sensores al microcontrolador: entradas analógicas, conversores, buses I²C y SPI, direcciones, resistencias de pull-up y cómo compartir un bus entre varios sensores sin interferencias.