Integración · Series temporales

Conectar OPC UA a Telegraf / InfluxDB

ProductoTelegraf / InfluxDB
CategoríaSeries temporales
Rol de OPC UACliente

Telegraf es un colector OPC UA práctico: el plugin de entrada opcua sondea nodos a intervalos y el plugin de entrada opcua_listener se suscribe a cambios de dato, y ambos escriben en InfluxDB o en otra salida. Es solo configuración, que es su punto fuerte, y el intercambio de certificados con cada servidor es el trabajo que realmente lleva tiempo.

Antes de empezar

  • Una instalación de Telegraf en un host con ruta de red a cada servidor OPC UA, y una decisión sobre si un agente sirve a muchas máquinas o hay un agente por máquina. Uno por máquina falla de forma independiente y normalmente compensa las instancias adicionales.
  • Una salida configurada y probada primero, de forma que cuando el lado OPC UA funcione vea datos de inmediato en lugar de depurar dos capas a la vez.
  • Una lista de nodos revisada, con URI de espacio de nombres e identificadores, en lugar de la intención de explorar en tiempo de ejecución. Telegraf recoge lo que usted configure; no descubre.
  • Un lugar donde guardar el certificado de cliente y la clave del agente, y la capacidad de meter ese certificado en el almacén de confianza de cada servidor.

Cómo configurarlo

  1. Empiece con una lectura sin seguridad para demostrar el caminoConfigure una sección inputs.opcua con el endpoint y sin seguridad, un grupo de nodos y un nodo, y ejecute el agente en modo de prueba para que imprima la métrica por stdout en lugar de escribirla. Esto confirma endpoint, espacio de nombres e identificador en un solo paso.
  2. Configure grupos de nodos por espacio de nombres y por cadenciaAgrupe los nodos por espacio de nombres y por el intervalo que necesitan. Cada grupo lleva el espacio de nombres, el tipo de identificador y la lista de nodos, de modo que un grupo por subsistema de máquina mantiene legible la configuración y permite cambiar una cadencia sin tocar el resto.
  3. Cambie al plugin listener para todo lo que se parezca a un eventoUse inputs.opcua_listener con un intervalo de suscripción donde necesite datos dirigidos por cambios, en particular variables de estado y contadores. Sondear un estado a intervalo fijo pierde las transiciones entre sondeos, y una transición perdida es un evento de parada perdido.
  4. Active la seguridad y complete el intercambio de confianzaAjuste la política y el modo de seguridad a lo que ofrezca el servidor, indique al plugin el certificado y la clave privada del agente, y configure el token de identidad. Después conecte una vez, deje que falle y mueva el certificado del agente del almacén de rechazados del servidor a su almacén de confianza. Confíe en el certificado del servidor en el lado del agente según lo que exija la política elegida.
  5. Fije la nomenclatura de métricas y los tags antes de escribir históricoEstablezca el nombre de la medición y añada tags que identifiquen máquina, línea y planta, más el URI de espacio de nombres y el identificador como metadatos. Renombrar una serie después de seis meses de histórico sale mucho más caro que pensarlo una vez ahora.
  6. Decida qué marca de tiempo lleva la métricaPor defecto, un colector marca la hora en el momento de la recogida. Compruebe si su versión de Telegraf puede trasladar la marca de tiempo de origen de OPC UA al tiempo de la métrica y, si puede, úsela y confirme el nombre de la opción en la documentación actual del propio plugin. Si no puede, deje constancia de ese hecho donde lo vaya a leer el equipo de analítica.
  7. Vigile las propias métricas del agenteActive la entrada interna y alerte sobre errores de recogida y fallos de escritura. Un agente Telegraf que en silencio no llega a un PLC produce un hueco que parece una máquina parada, que es el modo de fallo más dañino en la captura de datos de máquina.

Qué aspecto tiene el espacio de direcciones

Telegraf aplana el espacio de direcciones en métricas. Cada nodo recogido se convierte en un field de un measurement, con tags para las dimensiones que haya configurado, y todo lo demás que el servidor sabía, definiciones de tipo, unidades de ingeniería, jerarquía de navegación, se queda por el camino salvo que lo haya codificado en nombres y tags. Tampoco hay modelo en el lado de InfluxDB: una serie es un nombre y un conjunto de tags. La consecuencia es que el URI de espacio de nombres y el identificador OPC UA deberían transportarse como tags o en una tabla de correspondencias aparte mantenida bajo control de versiones, para que un número de un cuadro de mando siempre pueda rastrearse hasta el nodo del que procede. Sin eso, la correspondencia existe únicamente en un fichero de configuración de un host.

Las trampas

  • Meter el certificado del agente en el almacén de confianza de cada servidor es el mayor obstáculo de despliegue a escala de flota, y hay que hacerlo máquina por máquina. Decida un procedimiento o una PKI antes del primer despliegue, y cuente con que el primer intento contra cada servidor falle con un error de confianza por diseño.
  • Los índices de espacio de nombres en la configuración se rompen tras una carga de programa en el PLC. Configure por URI de espacio de nombres allí donde el plugin lo admita, y trate cualquier índice literal como un pasivo conocido con un responsable documentado.
  • Sondear una variable de estado no es lo mismo que suscribirse a ella. Si la disponibilidad importa, use el plugin listener, porque una parada más corta que su intervalo de sondeo es invisible e irrecuperable.
  • La marca de tiempo del colector no es la de la máquina. Si el tiempo de la métrica es el tiempo de recogida, toda duración de parada hereda el jitter de su sondeo, y nadie aguas abajo puede notarlo.
  • Los contadores escritos en bruto necesitan una función de diferencia o de diferencia no negativa en el momento de la consulta. Promediar un contador produce una serie convincente y sin sentido, y los reinicios o desbordamientos requieren tratamiento explícito.
  • No hay store-and-forward en el lado OPC UA. Si el host del agente está caído, ese periodo es un hueco, y un hueco es indistinguible de una máquina parada salvo que recoja además un heartbeat o una métrica de salud de la conexión.
  • Un solo agente recogiendo muchas máquinas concentra el riesgo: un error de configuración o un reinicio interrumpe todas las líneas a la vez.
  • Los intervalos de muestreo y de publicación que solicite pueden ser revisados por el servidor. Confirme lo que el servidor entrega realmente en lugar de fiarse del número configurado.

Cómo sacarle datos de OEE

Telegraf puede aportar las tres entradas que necesita el OEE, con un límite claro. Estado: suscríbase con el plugin listener a una variable de estado o de modo y almacene cada transición, de forma que la disponibilidad se calcule a partir de duraciones y no de muestras. Recuentos: lea los contadores del PLC como valores y calcule los deltas en el momento de la consulta, tratando los reinicios de forma explícita; no pida al colector que cuente flancos. Motivos: las alarmas y condiciones de OPC UA no son aquello para lo que sirve este colector, así que una variable de código de motivo es la vía realista, y los motivos basados en eventos requieren otra herramienta. Más allá de eso, deje claro que la disciplina de marcas de tiempo del colector fija el techo de precisión de toda duración que se informe, y que el tiempo de producción planificado, los calendarios de turnos y los tiempos de ciclo estándar no están en la máquina y tienen que llegar como datos de referencia independientes con un responsable.

Verifique esto antes de confiar en ello:Los nombres de las opciones del plugin, qué políticas de seguridad se admiten, si la marca de tiempo de origen puede trasladarse al tiempo de la métrica y el comportamiento de la generación automática de certificados difieren entre versiones de Telegraf, y ambos plugins de entrada están en desarrollo activo. Consulte la documentación del plugin y la referencia de configuración que acompañan a la versión que instale en lugar de fiarse de esta página, y confirme por separado la versión de InfluxDB y sus funciones de consulta, ya que el tratamiento de contadores difiere entre lenguajes de consulta.

Última verificación el 7 de septiembre de 2026 frente a OPC UA 1.05.07. OPC UA Connect es un recurso educativo y no está afiliado a la OPC Foundation.

Descarga gratuita
OPC UA Machine Data → OEE Mapping Kit
A qué nodos suscribirse, cómo se convierten en Disponibilidad, Rendimiento y Calidad, y qué especificación complementaria ya le da la respuesta, para que deje de inventar tags.
Consiga el kit de mapeo gratis →
Gratis, sin curso, sin registro