viernes, mayo 06, 2011

STD OPC

Tomado de:ESTANDARD OPC

31 diciembre 2009


Estándares OPC

Las aplicaciones informáticas que encontramos en los sistemas de control, cuentan con un módulo de adquisición de datos procedentes de los dispositivos programables (plc, dcs, rtu…) de la instalación. Con el objetivo de evitar que cada aplicación deba implementar drivers de comunicación para todos los protocolos que puedan necesitarse y desarrollar un estándar común, surgió en Mayo de 1995 la OPC Foundation. En cooperación con Microsoft, el núcleo inicial lo formaron las empresas: Fisher-Rosemount, Rockwell Software, Opto-22, Intellution e Intuitive Technology.

Las especificaciones se basaron en las tecnologías de Microsoft COM (Component Object Model) y DCOM (Distributed Component Object Model). De esta manera, si se instalan los servidores OPC necesarios, los desarrolladores de software industrial sólo necesitan implementar un cliente OPC para sus comunicaciones (la realidad es que se han seguido manteniendo todos los drivers específicos y se ha añadido el driver para OPC).


Actualmente OPC es un conjunto de estándares:

  • OPC Data Access: el primero en aparecer, para la comunicación en tiempo-real con controladores programables. De los controladores programables se ha pasado a desarrollar servidores para cualquier aplicación, cómo las bases de datos o los ERP’s (aunque se aprovecha el hecho de que algunos SCADAs tienen malas interfaces con bases de datos, pero que podemos solventar creándonos dll’s muy sencillas y eficientes)
  • OPC Alarms&Events: en el Data Access, se establece un flujo continuo de datos entre el servidor y los clientes, pero hay muchas señales con poca variabilidad que dan lugar a un tráfico innecesario. Para mejorar la eficiencia, este estándar define la comunicación de las notificaciones/mensajes que el servidor envía a los clientes (suscriptores).
  • OPC Historical Data Access: frente a las peticiones en tiempo-real, se añade la capacidad de incluir en la petición la fecha/hora. Esto implica que los servidores OPC deben almacenar (y gestionar) los datos leídos. Pretende eliminar el papel de los Historizadores, pero parece difícil que pueda competir con ellos y sus drivers para el acceso por http o SQL.
  • OPC Batch: basado en el estándar de Batch ISA88, el servidor OPC deberá mantener listas de los Batchs ejecutados y calcular datos sobre los mismos. No existen apenas servidores OPC Batch. Sólo Yokogawa y algunas pequeñas empresas los tienen, porque los softwares de gestión de Batch ya realizan todas las funciones a partir de los datos de tiempo real.
  • OPC Data eXchange: comunicación entre servidores, útil para implementar redundancia y balanceo de comunicaciones.
  • OPC XML-DA: reglas y formatos para el intercambio de datos en formato XML.
  • OPC Complex Data: estandariza estructuras complejas, como ficheros xml o estructuras binarias.
  • OPC Commands: en fase de desarrollo, el objetivo es poder ejecutar comandos (identificación, monitorización, ejecución de órdenes) en los equipos finales.
  • OPC Unified Architecture: es un conjunto de especificaciones no basadas en Microsoft COM, para el desarrollo de servidores en cualquier plataforma.
  • OPC Security: surge para incrementar la seguridad de las comunicaciones, dado que la seguridad que proporcionan los sistemas operativos no es suficiente. En la práctica es poco utilizado, porque la adopción del estándar implica un rediseño del software que los desarrolladores no han realizado. Se espera que se incluya dentro de los productos basados en OPC Unified Architecture.
  • OPC Express Interface: es una especificación para el desarrollo de clientes en .Net, intentando unificar y regular los desarrollos que cada fabricante estaba desarrollando.

Diego López
S21Sec Labs

No hay comentarios: