Protocolo OPC UA. Características y aplicaciones en SCADA
Manuel Rodríguez
OPC es una tecnología diseñada para comunicar datos de forma segura y operativa entre aplicaciones tanto en la industria de la automatización (sistemas SCADA) como en otros sectores. Es una plataforma independiente de los fabricantes y por tanto abierta ya que asegura un flujo de información entre componentes de distintos proveedores. La OPC Foundation es la encargada del desarrollo de este estandar.
OPC inicialmente nació para funcionar únicamente en el sistema operativo Windows (actualmente conocido como OPC clásico), de esta forma las siglas OPC nacieron de OLE for Process Control (OLE para control de procesos). Actualmente este estándar ha evolucionado y ha sido sustituido por OPC UA cuyas siglas han cambiado su significado pasando a pasado a representar a los conceptos: Open Productivity Collaboration Unified Architecture (OPC UA). Esta nueva versión de OPC es totalmente compatible con OPC clásico por lo que reconoce todas las funcionalidades de este.
La modificación de las nuevas especificaciones del estándar de OPC UA se han creado debido a que cada vez son más los retos en seguridad y modelado de datos. Por otro lado era necesario un protocolo más abierto a otros sistemas operativos y por tanto aplicable a tecnologías futuras.
OPC UA tiene dos innovaciones o características que hay que destacar respecto al protocolo OPC clásico:
- Reemplaza el protocolo COM y DCOM, específico de Windows, por protocolos abiertos e independientes para que puedan funcionar bajo otros sistemas operativos con importante implantación no solo a nivel de equipo informático como Windows, Linux, Mac, etc sino también a nivel de dispositivos de telefonía móvil como por ejemplo Android; incorporando además mecanismos de seguridad adicionales.
- Incorpora el modelo de información orientado a objetos que aglutina las funcionalidades tradicionales de OPC (como acceso a datos, históricos, alarmas, eventos, condiciones…) y otras nuevas e innovadoras orientadas a los tipos de datos y métodos.
La característica de que la estructura del direccionamiento en los servidores OPC UA esté orientada a objetos y de que la interfaz para el acceso a dicha estructura sea totalmente genérica da lugar a que OPC UA se considere no solo una pasarela de comunicación entre dos equipos sino también un lenguaje de programación con capacidades de comunicación a través de redes.
Son varias las especificaciones que incorpora OPC UA y que resumiremos a continuación, no obstante además de permitir las especificaciones para realizar las funciones básicas y una serie de modelos de información como para datos, alarmas y otras condiciones; se pueden definir modelos de información adicionales que pasan a denominarse especificaciones complementarias. Veamos algunas de las especificaciones básicas:
- Parte 1. Descripción y conceptos. Esta especificación proporciona una introducción a la tecnología del protocolo UA de alto nivel:
- Introduce cada una de las especificaciones OPC UA.
- Se realiza una vista general de los objetivos de diseño, seguridad y escalabilidad.
- Explica la metodología Cliente/Servidor que utiliza; como por ejemplo el direccionamiento, las suscripciones y eventos.
- Introduce los conceptos asociados a los servicios (interfaces).
- Parte 2. Modelo de seguridad. Describe los aspectos de Seguridad:
- Introduce los objetivos de seguridad e identifica las posibles amenazas en sistemas basados en OPC UA, para posteriormente mitigarlas.
- Se realiza una visión general de la autenticación de usuarios y control de derechos de acceso, así como selección de la aplicación mediante certificados digitales. Controla las actividades del usuario y del sistema de auditoría así como la transmisión de mensajes cifrados y seguros.
- Parte 3. Modelo para el direccionamiento a espacios. Describe la direccionamiento de datos desde un servidor OPC UA hacia un cliente OPC que los consume. Básicamente define los nodos en cuanto a sus tipologías, tipos de referenciado, tipos de eventos y como estos puedes ser usados para el modelado de la información.
- Parte 4. Servicios. Es una de las más importantes especificaciones ya que cubre los servicios que pueden usar servidores y clientes.
- Parte 5. Modelo de información. Especifica como se modela la información definida por el direccionamiento, nodos y referencias.
- Parte 6. Asignaciones. Indica como se transfieren los datos y la información entre los servidores y los clientes. Entre otros aspectos toca el codificado y descodificado, envío de mensajes seguros, reglas de validación seguras así como las asignaciones en los protocolos de trasporte.
- Parte 7. Perfil. Clasifica las conductas y comportamientos que pueden adoptar tanto clientes como servidores.
- Parte 8. Acceso a datos. Define todo lo referente al comportamiento y reglas para el acceso a datos en función de su tipología así como los códigos de error definidos en el estándar. En esta especificación es donde se describe la evolución del acceso a los datos desde OPC Classic.
- Parte 9. Alarmas y condiciones. Define las reglas de estos elementos así como la evolución que se ha realizado desde el OPC clásico.
- Parte 10. Programas. Describe como pueden usarse los programas con aplicaciones OPC UA. Cubre la definición de conceptos asociados a estos, además de definir las reglas generales en ellos, causas y efectos, parámetros y códigos de respuesta, implementación de diagnósticos. Se incluyen en esta especificación ejemplos de programas implementados.
- Parte 11.Acceso a históricos. Define como las bases de datos de históricos pueden pueden archivar y recuperar datos, así como la actualización, borrado. Tocando la evolución desde el OPC clásico y definiendo las normas y detalles en la creación.
- Parte 12. Descubrimiento (discovery). Define como los procesadores, redes e infraestructuras empresariales pueden descubrir y gestionar los productos UA.
- Parte 13. Funciones Agregadas. Define el uso de funciones y aplicaciones agregadas al protocolo OPC UA.
Dentro del software SCADA se pueden configurar estos controles o puntos OPC para poder utilizarlos después en nuestras pantallas.
Categorizado en:
Gestión Integrada
Comentarios
Hola, me gusto bastante la explicación, me gustaría que por favor me diera un consejo, actualmente en mi centro de trabajo tengo un motor, con sus respectivos sensores de medición de temperatura y vibración, se requiere que propongamos una aplicación móvil para poder visualizar estos datos en una forma gráfica «amigable» para que el jefe los pueda ver desde su celular, tenemos OPC como protocolo de comunicación, pero no sé si se pueda transferir estos datos en este caso para desarrollar una aplicación móvil, entonces mi pregunta es: ¿se puede?
Si alguien tiene experiencia en este tema y me puede orientar por donde comenzar, lo agradeceré.
Gracias y buen día.
Perdón, tengo una pregunta básica espero no quedar mal.
Es posible tener un servidor OPC UA, y a su vez recibir datos a través de distintos controladores manejando distintos protocolos?. En este caso sería por ejemplo recibir datos de un PLC Siemens a través de protocolo Profinet y a su vez recibir datos de un controlador en planta que se comunica nativamente a través de Ethernet IP compatible a Allen-Bradley.
Disculpe las molestias y espero recibir alguna aclaración al respecto.
Muchas gracias, Mathias.
Gran explicación detallada de la tecnología OPC UA y sus aplicaciones en entornos SCADA. Un avance al OPC clásico muy importante para la adaptación del protocolo a las necesidades actuales en comunicación industrial Server – Cliente. Mi pregunta es, ¿Es necesario extraer todo el software y sustituirlo por otros nuevos que soporten OPC UA o aún puedo usar lo que tengo?Gracias y saludos