Una Gateway pierde el enlace ascendente a las 09:00 y lo recupera a las 12:00. Entonces reenvía las tres horas de lecturas que había guardado. Si la plataforma receptora conserva la marca temporal original de cada lectura, la gráfica rellena el hueco. Si asigna la hora de llegada, tres horas de energía caen en un solo intervalo de 15 minutos. Con una carga media de 40 kW, son 120 kWh en 15 minutos y el informe de demanda muestra un pico ficticio de 480 kW.
Todos los valores del ejemplo eran reales. Solo era incorrecta la hora, y el panel en directo no lo mostraba.
Cada observación debe responder cuatro preguntas: ¿qué propiedad se observó y dónde? ¿Cuándo se produjo esa condición? ¿Es válido y suficientemente reciente el valor para este uso? ¿Qué cadena de medida y procesamiento lo generó? La facturación, protección, funciones de seguridad e informes reglamentarios añaden sus propios requisitos de equipos, aprobación, incertidumbre y auditoría a lo que sigue.
Modelos de observación SSN y SensorThings
La ontología Semantic Sensor Network del W3C (SOSA/SSN) define una observación como el acto de observar, normalmente para estimar o determinar el valor de una propiedad de una entidad de interés. Trata por separado la propiedad, el resultado, el sensor, el procedimiento, el momento del fenómeno y el momento del resultado. También indica que estos dos momentos no tienen por qué coincidir.
La API SensorThings del OGC usa un modelo parecido para servicios web de sensores. Cada Observation pertenece a un Datastream y contiene resultado, momento del fenómeno, momento del resultado, calidad, periodo de validez y parámetros.
No es necesario adoptar ninguno de los dos modelos. Conserve el significado, momento de observación, calidad y procedencia en campos distintos, cualquiera que sea el esquema.
Registro mínimo de una observación
| Campo o relación | Pregunta que responde | Fallo si falta |
|---|---|---|
| Identidad de instalación, activo y punto | ¿Qué equipo y canal físicos lo produjeron? | Se mezclan o comparan erróneamente valores de fuentes distintas |
| Propiedad observada | ¿Potencia activa, energía acumulada, temperatura o estado? | Una cifra carece de significado técnico estable |
| Valor y unidad | ¿Qué magnitud y unidad se comunicaron? | Se confunden W, kW y MW, o °C y °F, sin advertencia |
| Momento del fenómeno o del origen | ¿Cuándo se produjo la condición medida? | Los datos antiguos almacenados parecen actuales |
| Momento del resultado o de ingesta | ¿Cuándo se produjo o recibió aquí el resultado? | No se pueden diagnosticar el retraso y el reenvío |
| Calidad o estado | ¿El valor es bueno, incierto, incorrecto, obsoleto, sustituido o inexistente? | Datos inválidos parecen fiables |
| Identidad del procedimiento y configuración | ¿Qué rango, escalado, firmware, calibración y cálculo se aplicaron? | Un cambio de configuración parece un cambio físico |
| Secuencia o identidad estable de evento | ¿Se ha procesado ya esta observación? | Los reintentos crean registros duplicados o doble recuento de energía |
Este es un registro del acumulado de energía de un cuadro trifásico que informa en límites horarios de 15 minutos. Corresponde a la lectura de las 09:45 del corte anterior, entregada tras recuperarse el enlace:
{
"site": "plant-02",
"asset": "db-3-compressor-house",
"point": "db-3/energy-active-total",
"property": "active energy, cumulative register",
"value": 184213.4,
"unit": "kWh",
"observed_at": "2026-09-14T09:45:00Z",
"received_at": "2026-09-14T12:02:41Z",
"quality": "good",
"config_revision": "point-list r7",
"sequence": 88412
}Las dos horas difieren en 2 horas y 17 minutos. La diferencia revela al consumidor que la lectura estuvo retenida durante una interrupción y no representa la carga actual. El número de secuencia le permite descartar una segunda copia.
No todas las fuentes pueden rellenar cada campo. Documente cuáles no puede proporcionar cada una y no invente precisión. Por ejemplo, un sensor Zigbee de terceros informa de un valor sin marca temporal; la Gateway le asigna la hora de llegada. Etiquete esa hora como tal en la lista de puntos.
Diseñar el punto
Defina primero la medida
Empiece por el mensurando: la magnitud que pretende medir. «Temperatura» es insuficiente si la decisión depende de la temperatura del aire en un lugar concreto, la superficie de una tubería, un líquido o una media de varias salas.
Anote el rango, incertidumbre requerida en todo él, tiempo de respuesta y condiciones de instalación. Anote la decisión, alarma o cálculo que utiliza el valor. Después, qué ocurre si este es erróneo, falta o llega tarde. La última respuesta determinará el límite de obsolescencia y el comportamiento de la alarma.
La precisión nominal de un componente no define el rendimiento de toda la cadena instalada. La política de trazabilidad metrológica de NIST trata la trazabilidad como una propiedad del resultado de medida. Una cadena documentada de calibraciones la respalda y cada calibración contribuye a la incertidumbre. Un instrumento calibrado no vuelve automáticamente trazables todos los resultados posteriores. Para electricidad, la guía de contadores de alta precisión distingue la clase del contador, la incertidumbre de la cadena completa y la aprobación legal. Para una RTD, la calculadora Pt100 y Pt1000 muestra la curva normalizada y el límite de tolerancia de cada clase. Añada los efectos del transmisor, cableado y montaje.
Conserve la trazabilidad del escalado y las conversiones
Un registro bruto o entrada analógica puede necesitar decodificación con signo, orden de palabras, relación de TC o TT, escalado lineal o curva no lineal antes de convertirse en un valor técnico. Guarde los parámetros o la revisión de configuración que se aplicó. Un orden de palabras erróneo puede producir un número plausible: decodifique a mano un valor bruto. La guía de puesta en servicio Modbus incluye un ejemplo.
Para un punto calculado, conserve también la identidad de las entradas, fórmula y revisión, y unidades antes y después de la conversión. Registre cómo se alinean las horas y qué hace la fórmula con una entrada incorrecta, ausente u obsoleta. Marque cualquier sustitución, limitación o intervención manual en el resultado.
No sustituya un valor incorrecto por cero. Cero es una lectura válida para un motor parado o depósito vacío; lleva a una decisión operativa distinta de «desconocido».
Separe la hora de observación de la de llegada
Una lectura lleva la hora a la que se produjo la condición y la hora a la que la recibió cada sistema. Se separan cuando los datos se almacenan y reenvían. Marcas temporales de telemetría, hora de origen y de llegada explica qué hora conservar, UTC y horario de verano, y cómo probar el reenvío en la instalación.
Las garantías de transporte terminan en cada tramo
MQTT 5.0 define tres niveles de calidad de servicio entre un emisor y un receptor: como máximo una vez, al menos una vez y exactamente una vez. También admite caducidad de mensajes y estado de sesión. La guía MQTT sobre TLS trata identidad del bróker, autenticación de clientes y acceso a temas.
Nada de ello demuestra que la lectura física sea correcta ni que cada muestra se haya convertido en mensaje. Tampoco demuestra que la carga útil tenga punto, unidad y marca temporal correctos, que el siguiente tramo de integración conserve las mismas garantías o que el consumidor guarde el mensaje una sola vez. Un mensaje retenido es el último publicado en su tema y puede tener horas o días.
Dé a cada observación una identidad estable. Para un punto de contador, suelen bastar la identidad del punto y la hora de observación. Haga idempotentes las escrituras para que un lote reintentado no se cuente dos veces. Pruebe el corte y reenvío en la instalación. No deduzca el comportamiento solo por el nombre de un protocolo.
Haga visibles la calidad y la vigencia
El consumidor debe distinguir un valor actual de uno tardío, obsoleto, sustituido o ausente. Mapee deliberadamente los estados de calidad de cada fuente a los suyos. Telemetría obsoleta, ausente e inválida describe esos estados, cómo elegir el límite de obsolescencia y cómo mostrarlo junto al valor.
Agregue a partir de pruebas brutas
Cada magnitud necesita su propia función de agregación. La potencia media durante un intervalo, demanda máxima, último estado conocido, número de alarmas y diferencia de un acumulado son cosas distintas. Registre límites del intervalo y zona horaria. Indique si cada intervalo se etiqueta por su inicio o final, regla mínima de integridad y cómo revisan los datos tardíos un intervalo ya cerrado. Marque cada resultado como medido, agregado, estimado o sustituido.
Nunca calcule la media de un acumulado de energía. Reste las lecturas en los límites del intervalo. Tampoco sume lecturas de potencia instantánea sin multiplicar cada una por el tiempo que representa.
Tanto el desbordamiento como el reinicio de un contador producen una diferencia negativa, pero requieren tratamientos distintos. Considere un acumulado de Wh de 32 bits que vuelve a cero tras 4.294.967.295. Con una media de 40 kW tarda unos 12 años en llegar; pocos sistemas prueban ese caso antes de que ocurra.
A las 23:45 el registro marca 4.294.960.296 Wh. A las 00:00 marca 3.000 Wh. Si hubo desbordamiento, la energía del intervalo es (4.294.967.296 − 4.294.960.296) + 3.000 = 10.000 Wh. Son 10 kWh en 15 minutos y una demanda media de 40 kW:
Ahora se sustituye el contador. Su última lectura era 1.250.400 Wh y la primera del nuevo, 3 Wh. La misma fórmula de desbordamiento da 4.293.716.899 Wh, unos 4,3 GWh en 15 minutos.
Acepte un desbordamiento solo si la energía implícita es físicamente posible en el intervalo. Una alimentación de 100 kW puede entregar como máximo 25 kWh en 15 minutos. Un resultado mayor indica un reinicio: cierre ese intervalo como incompleto, empiece una nueva referencia y registre el evento. En un monitor eléctrico ZEM-6x como ZEM-65, Edge muestra el punto de desbordamiento del registro, en kWh, como ajuste de solo lectura. Los registros de kWh por fase son escribibles, de modo que un técnico puede preestablecerlos. Registre cada preajuste como reinicio.
Conserve el acumulado junto a los valores por intervalo. Tras un hueco de telemetría, su diferencia recupera la energía total del periodo, pero no el perfil de potencia dentro del hueco.
Muestreo, informes y actualización del panel
«Datos cada minuto» puede significar cinco cosas: que el sensor toma una muestra cada minuto; que el contador toma muestras rápidas y calcula una media de un minuto; que el dispositivo publica su último valor una vez al minuto; que la plataforma almacena una agregación de un minuto; o que el panel se actualiza cada minuto aunque el punto cambie a otra frecuencia. Especifique cada frecuencia relevante en la lista de puntos.
Los sensores Zigbee de EpiSensor muestran esta diferencia: pueden informar en límites de minutos del reloj, a una frecuencia fija en segundos o ante cambios.
La frecuencia tiene un coste. Un punto que informa cada 10 s produce 8.640 mensajes al día; cada 60 s, 1.440. Mil puntos que informan una vez por minuto producen 1,44 millones de puntos diarios antes de filtrar. En sensores de batería, cada informe también consume tiempo de radio y batería. Compruebe a qué intervalo de informe corresponde la duración de batería de la ficha técnica.
| Uso | Intervalo habitual | Pruebas que conservar |
|---|---|---|
| Reparto energético y facturación | Periodo de liquidación o tarifa, normalmente 15 o 30 min, además del acumulado | Límites, integridad, reinicios del registro y estimaciones |
| Tendencia operativa | 1 min para potencia; de 5 a 15 min para temperatura ambiente | Frecuencia de origen, agregación y visualización |
| Alarma | Retraso de detección más límite de obsolescencia dentro del tiempo de respuesta permitido | Umbral, persistencia, banda muerta, límite de obsolescencia y retraso de aviso |
| Gestión de demanda | Bastante menor que la ventana de demanda, por ejemplo 1 min en una ventana de 15 o 30 min, para poder actuar | Definición de ventana, frecuencia de actualización, lógica de umbral y pruebas de órdenes |
| Monitorización de estado | Tendencias de corriente o temperatura cada minuto para degradación lenta. Los espectros de vibración necesitan muestreo de kHz con instrumento dedicado | Ancho de banda del sensor, método de muestreo, cálculo de características y referencia |
| Calidad de suministro, protección o seguridad | Instrumentos y métodos cualificados para esa función, como IEC 61000-4-30 para calidad eléctrica | Norma aplicable, configuración del instrumento, momento del evento y pruebas de aceptación |
Para conocer qué pueden revelar corriente y potencia sobre el estado de los equipos, consulte monitorización de estado con datos eléctricos.
Pruebas de puesta en servicio que revelan datos incorrectos
Ejecute cada prueba en la ruta completa, del sensor a la plataforma receptora. Anote el resultado esperado antes de hacerla.
- Vincule cada punto mostrado con el dispositivo físico, canal y etiqueta del activo.
- Aplique al menos dos valores conocidos, uno distinto de cero, y compruebe todas las conversiones. En un canal con TC, compare la corriente en Edge y en la plataforma con una pinza amperimétrica calibrada sobre el mismo conductor.
- Compruebe polaridad, convención de signo para importación y exportación, y asociación de fases. Un TC invertido da potencia de importación negativa en esa fase. Corríjalo en el TC o con el ajuste de dirección por fase del contador y anote qué cambió.
- Compare los relojes de origen y recepción. Después retenga datos durante un periodo conocido y compruebe que las dos marcas temporales siguen diferenciadas.
- Desconecte o invalide la fuente. La aplicación debe mostrar «incorrecto» o «no disponible», no cero.
- Detenga las actualizaciones sin borrar el último valor. El punto debe pasar a obsoleto al llegar al límite acordado.
- Corte la conexión de salida durante un periodo fijo, por ejemplo 30 minutos. Observe el crecimiento de la cola. Reconecte y compruebe el orden, marcas temporales e integridad del reenvío en el receptor.
- Reproduzca un registro o reintente una entrega. Un consumidor idempotente no debe contarlo dos veces.
- Reinicie cada capa por turno: sensor, Gateway, bróker y plataforma. Compruebe que se recuperan identidad, configuración, reloj y entrega.
- Compare un intervalo cerrado con las lecturas de origen, incluyendo un límite de intervalo, valor ausente y reinicio del contador.
- Cambie una revisión de rango o fórmula aprobada. El cambio debe aparecer en la trazabilidad y no alterar el significado de los datos anteriores.
- Compare las medidas importantes con una referencia independiente bajo carga representativa.
El acta de aceptación identifica el equipo, configuración, referencia, hora de prueba, resultado esperado y observado, y la persona que lo aprobó.
Fallos observados en instalaciones
| Síntoma | Causa probable | Cómo detectarlo |
|---|---|---|
| Potencia de importación negativa en una fase | TC invertido o instalado en otra fase | Signo de la potencia de cada fase frente a una carga conocida y factor de potencia muy distinto del esperado |
| Valores 1.000 veces mayores o menores | W comunicados como kW o falta un factor de escala | Comparación con pantalla del contador o pinza amperimétrica durante la puesta en servicio |
| Valores enormes o casi nulos tras cambiar el mapa de registros | Orden de palabras o tipo de datos erróneo | Decodificar a mano un registro bruto |
| Falta una hora en marzo y se duplica en octubre | Intervalos identificados por hora local | Contar los periodos por día local: 92, 96 o 100 |
| Un hueco seguido de muchas lecturas con la misma hora | Datos reenviados fechados al llegar | Hora de recepción menos hora de observación para cada lectura |
| Lecturas con fechas de años pasados o futuros | Reloj del dispositivo o Gateway sin ajustar tras un corte | Hora de observación fuera de una ventana plausible respecto a la de recepción |
| Línea plana en el último valor | La fuente se detuvo y la pantalla retiene el valor | Estado de obsolescencia y antigüedad de la última observación |
| Salto de energía de varios GWh en un intervalo | Reinicio de contador interpretado como desbordamiento | Límite de energía máxima posible en el intervalo |
Supervisar la calidad de datos durante la operación
La puesta en servicio demuestra un estado en un día. Durante la operación hay que detectar cuándo cambia. Para cada punto, compare observaciones esperadas y recibidas y vigile la antigüedad de la última válida. Cuente lecturas tardías, fuera de orden, duplicadas, incorrectas, inciertas, sustituidas y fuera de rango. Vigile el desfase del reloj, profundidad de la cola y antigüedad del elemento más antiguo. Registre cambios rechazados de esquema, unidad o identidad, y concilie los totales de intervalos con el acumulado.
Active alertas con umbrales adecuados al uso: por ejemplo, observación más antigua que el límite de obsolescencia, elemento más antiguo de la cola con más de una hora o desfase del reloj superior a 5 s para datos de un minuto.
Defina el denominador antes de citar disponibilidad. «99,9 % de disponibilidad de datos» carece de significado sin fijar puntos esperados, calendario de informes, exclusiones, regla de calidad y tratamiento de datos tardíos. Para un punto que informa cada minuto, un 99,9 % durante 30 días aún permite 43 lecturas ausentes.
ISO/IEC 25012 ofrece un modelo general de calidad de datos estructurados. Define 15 características, repartidas entre una perspectiva intrínseca y otra dependiente del sistema; ISO la revisó y confirmó por última vez en 2025. Aporta el vocabulario, pero el proyecto todavía debe convertir las características pertinentes en requisitos medibles.
Datos de sensores con EpiSensor
Los dispositivos EpiSensor, como los monitores eléctricos ZEM y sensores de temperatura y humedad ZHT, informan por Zigbee a una Gateway ZGW-20. La Gateway ejecuta EpiSensor Edge, que conserva historial local (30 días por defecto), ejecuta cálculos y reglas, y reenvía datos a otras plataformas.
Las lecturas de dispositivos Zigbee EpiSensor llegan a Edge con una marca temporal por punto de datos, que Edge conserva. En cambio, a los valores de dispositivos Zigbee de terceros Edge les asigna la hora de llegada del reloj de la Gateway. Edge descarta un punto cuya marca temporal es inválida y registra una advertencia.
Edge calcula la calidad de cada sensor en ventanas de 15 minutos. Para un sensor con horario fijo, la calidad es el porcentaje de puntos esperados. Uno que informa cada minuto espera 15 puntos; si llegan 13, la calidad es del 87 %. Para sensores que informan al cambiar, o menos de una vez cada 15 minutos, Edge comunica el número de puntos recibidos. Compruebe el tipo de calidad antes de comparar dos sensores.
Si falla un destino admitido, Edge traslada a una cola en disco los datos no entregados. Algunas integraciones gestionan su propia política de reintentos, así que consulte su guía. Edge comprueba el destino cada minuto y reproduce la cola cuando vuelve. Las lecturas conservan sus marcas temporales originales y no vuelven a ejecutar cálculos ni automatizaciones locales. Para MQTT, Edge da por completada la entrega cuando el bróker confirma la publicación. Un lote puede llegar dos veces si el destino lo recibió antes de que Edge registrase la finalización: el receptor debe descartar duplicados. Los datos pendientes no tienen límite de antigüedad, por lo que una interrupción larga hace crecer la cola. Dimensione el espacio libre de la Gateway para el corte máximo previsto.
Dentro de Edge, cada lectura lleva ID de sensor, ID de exportación formado por el número de serie del dispositivo y el ID de sensor, marca temporal y valor. La unidad, escalado y calidad proceden de la configuración del dispositivo. Acuerde en la lista de puntos cómo los obtiene la plataforma receptora. Defina también qué capa aplica el escalado, cómo se traduce la calidad de Edge al modelo de la plataforma y qué hacen alarmas y control cuando una entrada queda obsoleta.
Una vez fijada la lista de puntos, siga con la arquitectura de almacenamiento de datos IoT para elegir dónde se ubica cada almacén.
Preguntas frecuentes
¿Qué debe contener un registro de datos de sensor IoT?
Necesita identidad de instalación, activo y punto, propiedad observada, valor y unidad, hora a la que se produjo la condición, hora de recepción y estado de calidad. La facturación, el reparto por subcontadores y la liquidación de respuesta a la demanda también necesitan la revisión de escalado, calibración y cálculo que generó el valor.
¿En qué se diferencian la marca temporal de origen y la de ingesta?
La de origen indica cuándo se produjo la condición medida. La de ingesta indica cuándo recibió o guardó el registro otro sistema. Se separan durante almacenamiento, reintentos y errores de reloj. Sustituir la hora de origen por la de ingesta hace que datos antiguos parezcan actuales.
¿QoS de MQTT garantiza datos de sensores completos?
No. QoS de MQTT cubre la entrega entre un emisor y un receptor. No demuestra que el sensor midiera correctamente ni que cada muestra se convirtiera en mensaje. Tampoco que la siguiente aplicación lo guardase una sola vez o que la carga útil tenga unidad y marca temporal correctas.
¿Cómo se elige el intervalo de informes IoT?
Parta del cambio más rápido que la aplicación debe detectar y del periodo de liquidación o cálculo. Compruebe después el retraso de detección permitido, capacidad de dispositivos y red, y almacenamiento. Muestreo, cálculo, publicación y actualización del panel son frecuencias distintas; defina cada una deliberadamente.
¿Cero equivale a un dato ausente u obsoleto?
No. Cero puede ser una medida válida. Ausente significa que no llegó ningún valor en un intervalo esperado. Obsoleto significa que el último valor supera el límite de vigencia para ese uso. Guarde y muestre los tres estados por separado.