Respuesta breve

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.

Ideas clave

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.

JSONDescarga el registro de revisión temporal de eventos

JSON con horas ficticias originales, corregidas y de recepción, más campos vacíos de significado, desfases, incertidumbre y decisiones de orden.

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.

EventoHora de origen corregidaRecepción en pasarelaRetraso en este ejemplo construido
A10:00:00.20010:00:00.900700 ms
B10:00:00.50010:00:00.700200 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.

Convención documentada de desfaseHora de evento corregida = hora original del dispositivo − desfase de su reloj

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.

Dos eventos ficticios ocurren A antes que B, pero llegan B antes que A; un desfase de 400 milisegundos queda separado del transporte.
Reconstruir el orden exige correcciones documentadas e incertidumbre, no solo llegada de mensajes. Abrir el diagrama a tamaño completo

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.

  1. Registra de dónde sale cada hora

    Registra reloj físico, significado del campo, valor original y recepción.

  2. Aplica correcciones justificadas

    Conserva signo, origen y vigencia del desfase junto a su incertidumbre.

  3. Reconstruye el orden necesario

    Usa identidad de origen, secuencia y límites temporales, no solo llegada.

  4. 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.

Leer la nota complementaria

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.