Conectar OPC UA a Azure IoT Edge / OPC Publisher
| Producto | Azure IoT Edge / OPC Publisher |
|---|---|
| Categoría | Nube |
| Rol de OPC UA | Cliente |
OPC Publisher es un cliente OPC UA que se ejecuta como módulo de IoT Edge, se suscribe a los nodos que usted enumere en un fichero de configuración y los reenvía a Azure IoT Hub como JSON. Es el camino de OPC UA a la nube mejor documentado, y su problema más difícil son los certificados, no el código.
Antes de empezar
- Un runtime de IoT Edge en un gateway que pueda alcanzar los servidores OPC UA y la nube.
- Un fichero de configuración published-nodes que lista los endpoints y los identificadores de nodo a los que suscribirse.
- Un plan sobre cómo se confiará en el certificado del publicador en cada servidor con el que hable. Esta es la parte que retrasa los despliegues, no el contenedor.
- Red saliente desde el gateway. El lado OPC UA es solo entrante desde la perspectiva del publicador, que es la razón de que encaje en una red por capas.
Cómo configurarlo
- Escriba el fichero published-nodesUna entrada por endpoint, cada una con una lista de identificadores de nodo, sus intervalos de publicación y de muestreo y una banda muerta opcional. Guarde el URI del espacio de nombres dentro del identificador de nodo allí donde la sintaxis lo permita, en lugar de un índice en bruto, para que una descarga al PLC no rompa la recogida de forma silenciosa.
- Despliegue el móduloDespliéguelo como módulo de IoT Edge con el fichero de configuración y un volumen persistente para su directorio PKI. El volumen no es opcional: vea las trampas.
- Confíe en el publicador en todos los servidoresEn la primera conexión, el certificado del publicador acaba en el almacén de rechazados de cada servidor. Un administrador lo mueve a la carpeta de confianza, en cada servidor. Reserve tiempo de verdad para esto en toda la flota, o despliegue antes un enfoque de gestión de certificados.
- Elija la codificación de forma deliberadaEl publicador puede emitir JSON reversible o no reversible. El no reversible es más pequeño y más fácil de leer, pero descarta la información de tipo y no admite ida y vuelta. Decídalo antes de que se escriban consumidores aguas abajo contra él.
- Verifique lo que llegaCompruebe los mensajes en IoT Hub y confirme que el código de estado y el SourceTimestamp han sobrevivido. En codificación JSON un estado Good es 0 y se omite por completo, así que un campo de estado ausente significa Good y no un dato que falta: el código posterior debe escribirse sabiéndolo.
- Ajuste antes de escalarFije los intervalos de publicación según lo que necesite el consumidor en la nube y no según lo más rápido que dé el PLC, aplique bandas muertas en las analógicas y mantenga pequeño el número de intervalos distintos. Cada intervalo distinto se convierte en otra suscripción en el servidor.
Qué aspecto tiene el espacio de direcciones
El publicador no modela nada: reenvía los nodos que usted enumere. La semántica se queda donde usted la ponga, lo que en la práctica significa que o bien los identificadores de nodo llevan el significado por convención, o bien algo aguas abajo se lo vuelve a asociar. Si la máquina implementa una especificación complementaria, esa estructura se pierde salvo que la codifique en la nomenclatura de sus topics o de sus tags.
Las trampas
- Un volumen PKI no persistente regenera el certificado de aplicación en cada reinicio del contenedor, de modo que la lista de confianza de cada servidor queda obsoleta en cada despliegue. Este es el fallo de despliegue más habitual de OPC Publisher.
- La documentación afirma claramente que conseguir que el equipamiento acepte el certificado del publicador es el mayor obstáculo al que se enfrenta la mayoría de los administradores de OT. Trátelo como una tarea de proyecto con responsable, no como un detalle de configuración.
- El JSON no reversible pierde silenciosamente la información de tipo. Un consumidor aguas abajo no puede distinguir un Int32 de un Double, lo que importa en cuanto alguien hace aritmética.
- La conexión inversa solo se soporta para opc.tcp, y el publicador escucha para ella en un puerto configurable. Útil a través de una red por capas Purdue en la que solo se permite el tráfico saliente.
- Los índices de espacio de nombres codificados de forma fija en un fichero published-nodes se rompen tras una descarga de programa al PLC. Use URI de espacio de nombres donde la sintaxis del identificador de nodo lo permita.
Cómo sacarle datos de OEE
Disponibilidad, recuentos y motivos llegan todos a la nube si la máquina los expone, pero el publicador reenvía valores en lugar de interpretarlos. Las transiciones de la máquina de estados llegan como cambios de valor, así que el cálculo de duración ocurre aguas abajo y depende de su intervalo de publicación: un intervalo de 10 segundos no puede resolver una microparada de 3 segundos. Suscríbase a eventos de condición de la Part 9 para los motivos de parada en lugar de sondear un registro de motivo. El tiempo de producción planificado y el contexto de orden no están en la máquina y no aparecerán aquí.
Ú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.