Usa las marcas de tiempo según su significado documentado, no solo según el orden de llegada al panel. La hora de origen, la del servidor y la de recepción en una pasarela pueden describir momentos distintos del registro. El desfase y la incertidumbre de los relojes también pueden invertir el orden aparente. Este ejemplo ficticio de dos sensores reconstruye la secuencia solo cuando lo permiten las evidencias de desfase y mantiene el orden sin resolver si la incertidumbre es demasiado grande.
Distingue el orden de eventos de máquina del orden de recepción.
Aplica una corrección documentada con el signo visible.
Evita atribuir causalidad a diferencias horarias inciertas.
Identifica cada reloj y el significado de su marca
OPC UA define una marca de origen para el valor en su fuente y otra del servidor. Lee el significado del servidor en la especificación, sin suponer una hora universal de llegada a red. Una pasarela también puede guardar su propio campo explícito receivedAt.
Conserva los campos relevantes en vez de sustituir unos por otros. Almacena UTC u otra representación inequívoca y preserva por separado la zona horaria de presentación. Muchos decimales no demuestran exactitud del reloj.
Interpreta la inversión ficticia del orden de llegada
Supón que los eventos reales ocurren en el mismo segundo: A a las 10:00:00.200 y B a las 10:00:00.500. A llega a la pasarela a .900 y B a .700. Se recibe primero B y después A, aunque A ocurrió antes.
Los retrasos de transporte de 700 ms y 200 ms están definidos para este ejemplo. Un sistema real necesita evidencias de sincronización o desfase acotado antes de restar horas de dispositivos distintos e informar de latencia de red.
| Evento | Hora de origen corregida | Recepción en pasarela | Retraso en este ejemplo construido |
|---|---|---|---|
| A | 10:00:00.200 | 10:00:00.900 | 700 ms |
| B | 10:00:00.500 | 10:00:00.700 | 200 ms |
Corrige un desfase conocido sin ocultarlo
Ahora supón que el reloj de A está adelantado 400 ms. Su marca original es 10:00:00.600. Con un desfase positivo documentado de 400 ms, la hora corregida es la original menos el desfase: vuelve a .200. La marca original de B es .500 y su desfase declarado es cero.
Conserva hora original, corrección, fecha de evidencia e incertidumbre. No modifiques registros históricos sin aviso al cambiar la sincronización. Si el desfase varía durante la observación, una corrección fija puede no bastar.
A: .600 − .400 = .200. Un desfase positivo significa que el reloj se adelanta a la referencia. La separación corregida de A a B es 300 ms.
Comprueba si la diferencia supera la incertidumbre
Si cada marca corregida tiene incertidumbre de ±200 ms, la separación relativa de A a B puede ir de −100 a 700 ms según límites simples de peor caso. El signo no está determinado. La diferencia nominal de 300 ms no demuestra qué evento fue primero.
Una secuencia acotada del mismo origen puede establecer orden local aunque siga incierto entre dispositivos. Secuencia, lote e identidad de unidad también distinguen una entrega tardía de otro evento productivo. La trazabilidad de lotes necesita identidad significativa además de hora.
- Registra de dónde sale cada hora
Registra reloj físico, significado del campo, valor original y recepción.
- Aplica correcciones justificadas
Conserva signo, origen y vigencia del desfase junto a su incertidumbre.
- Reconstruye el orden necesario
Usa identidad de origen, secuencia y límites temporales, no solo llegada.
- Señala las comparaciones sin resolver
No uses un orden ambiguo entre dispositivos para afirmar causas o calcular duraciones.
Evita falsas alarmas por valores estables y saltos de reloj
Una marca de origen OPC UA puede seguir igual si el valor no cambia. Evalúa vigencia con estado y evidencias de conexión. La hora de consulta no reconstruye una transición de máquina no observada.
Comprueba saltos de reloj, cambios de presentación por horario de verano, reinicios, desfases ausentes y mensajes repetidos. El tratamiento de reinicios de contador aborda otra discontinuidad; la monitorización en tiempo real debe mostrar estos límites, no suavizarlos.
Usa un registro temporal antes de construir una explicación causal
Una parada seguida de un mensaje de otra máquina no demuestra causalidad. Establece definición de evento, identidad, orden corregido y mecanismo plausible del proceso. Los tiempos pueden descartar una explicación sin demostrar la siguiente.
La descarga conserva los eventos ficticios originales y corregidos, más campos para revisar tus registros. No presupone que los relojes de toda la planta estén sincronizados.
Un ejemplo relacionado de Abolfazl
Revisa horas, llegadas tardías y duplicados antes de confiar en el contador.
En inglés, en el blog personal del fundador Abolfazl. Es lectura relacionada, no una fuente técnica independiente.
Lista práctica
- Define cada campo temporal.
- Identifica el reloj físico.
- Separa horas originales y de recepción.
- Usa una base horaria inequívoca.
- Conserva signo y vigencia del desfase.
- Compara diferencias e incertidumbre.
- Usa secuencia e identidad de unidad cuando existan.
- Deja sin resolver el orden ambiguo y la causalidad.
Preguntas frecuentes
Preguntas frecuentes
Fuentes y lecturas
Referencias autorizadas utilizadas para investigar y verificar esta guía.

