4.3 OPC (Open Process Control formerly OLE for Process Control)

Slides:



Advertisements
Similar presentations
Whats New In Dream Report 4.5 Renee Sikes Applications Engineer Dream Report Brand Manager.
Advertisements

OCEAN DATA SYSTEMS Presents Wonderware HMI Reports
Dream Report: Advanced Manual Data Entry
Status Enterprise System Overview. What is Status Enterprise? Status is an HMI/SCADA system with live and historical data, trending, alarming, web and.
Dream Report: The Technical Basics Renee Sikes Applications Engineer Dream Report Brand Manager.
SCADA Solutions.
Solving Automation Reporting Problems with Dream Report Renee Sikes Applications Engineer Dream Report Brand Manager.
© 2002 ABB Automation Technology Products AB BSE ppt Industrial IT The Aspect Object Architecture Overview.
Technical Architectures
OPC - OLE For Process Control Paul C. Shafer Bently Nevada Corp.
15 Chapter 15 Web Database Development Database Systems: Design, Implementation, and Management, Fifth Edition, Rob and Coronel.
INTERNET DATABASE Chapter 9. u Basics of Internet, Web, HTTP, HTML, URLs. u Advantages and disadvantages of Web as a database platform. u Approaches for.
Interpret Application Specifications
Sensor/Actuator Manager Candidates CPAC/NeSSI Workshop May 5, 2005, Seattle,WA by Softing North America Ken Hoover.
OPC Overview OPC Device Support (PLC Gateway for 3.14) Ralph Lange – EPICS Collaboration Meeting at SLAC, April 2005.
OPC UA- Avoiding DCOM with Software Toolbox Products Presenters: Kevin Rutherford Senior Applications Engineer Renee Sikes Applications Engineer.
Client/Server Architecture
© PROFIBUS International 2001PROFInetnet... More than justEthernet... More than just Ethernet.
Introducing Dream Report Win Worrall Applications and Development Engineer.
DataHub ® OPC Tunneller Overview and Demo.  Cogent Real-Time Systems  Established in 1994  Wholly owned subsidiary of Skkynet Cloud Systems  Key stats.
1. 2 How do I verify that my plant network is OK? Manually: Watch link lights and traffic indicators… Electronically: Purchase a SNMP management software.
.NET, and Service Gateways Group members: Andre Tran, Priyanka Gangishetty, Irena Mao, Wileen Chiu.
4 Application Layer Protocols
Vision/Benefits/Introduction Randy Armstrong (OPC Foundation)
Industrial Automation Automation Industrielle Industrielle Automation Control System Architecture 1.5Architecture de Contrôle - Commande Leittechnik-Architektur.
OPC and EPICS M. Clausen EPICS workshop Trieste’99 1 OPC Introduction and EPICS Perspectives Matthias Clausen.
Beyond DHTML So far we have seen and used: CGI programs (using Perl ) and SSI on server side Java Script, VB Script, CSS and DOM on client side. For some.
Armani Engr Corp. Armani Engr Corp. Offers Industrial Automation Services From Concept to Commissioning we currently introducing and.
OPC Database.NET. OPC Systems.NET What is OPC Systems.NET? OPC Systems.NET is a suite of.NET and HTML5 products for SCADA, HMI, Data Historian, and live.
CopyRight©2006 Dragonfly Automation Software Dragonfly Open PlantEngine Center (DOPEC)
Progress Report on CGSE Control System Project Team of SJTU for AMS-02 Yang Yupu AMS JSC, Jan 8-12, 2007.
Obsydian OLE Automation Ranjit Sahota Chief Architect Obsydian Development Ranjit Sahota Chief Architect Obsydian Development.
Copyright 1998 Intellution, Inc. All Rights Reserved TM OLE for Process Control and Factory Automation Al Chisholm - OPC Technical Chairman 10/98 OPC Data.
OPC – OLE for PROCESS CONTROL By: Mugdha More. Swagata Bhaumik.
Moving the RFID Value Chain Value Proposition Cost and Complexity What is it? (passive RFID) Where is it? (active RFID) How is it? (Sensors) Adapt to it.
Network Monitoring using OPC - (OLE) for Process Control Project Advisor : Dr. Chung-E-Wang Prepared By: Bhumi Patel.
Windows Control Center
SCADA. 3-Oct-15 Contents.. Introduction Hardware Architecture Software Architecture Functionality Conclusion References.
OPC: Environment for Industrial System Integration.
OLE for Process Control (OPC)
Dream Report: Secure and Reliable Reporting Renee Sikes Applications Engineer Dream Report Brand Manager.
9 Chapter Nine Compiled Web Server Programs. 9 Chapter Objectives Learn about Common Gateway Interface (CGI) Create CGI programs that generate dynamic.
Ralph Lange: OPC Gateway (Device Support) OPC Gateway (Device Support) Ralph Lange – EPICS Collaboration Meeting March SSRF.
Lecture 15 Introduction to Web Services Web Service Applications.
© ABB University - 1 Revision C E x t e n d e d A u t o m a t i o n S y s t e m x A Chapter 5 OPC Connectivity Course T314.
SNMP Simple Network Management Protocol SNMP Simple Network Management Protocol Haris Ribic.
1 Welcome to CSC 301 Web Programming Charles Frank.
4 - 1 Copyright © 2006, The McGraw-Hill Companies, Inc. All rights reserved. Computer Software Chapter 4.
Yokogawa Global MES Solution Centre (GMSC)
© ABB University - 1 Revision C E x t e n d e d A u t o m a t i o n S y s t e m x A Chapter 16 Alarm and Events Course T314.
Chapter 18 Historian and Trends
Kemal Baykal Rasim Ismayilov
© 2013, published by Flat World Knowledge Chapter 10 Understanding Software: A Primer for Managers 10-1.
August 2003 At A Glance The IRC is a platform independent, extensible, and adaptive framework that provides robust, interactive, and distributed control.
Intro to Web Services Dr. John P. Abraham UTPA. What are Web Services? Applications execute across multiple computers on a network.  The machine on which.
REPORTING SOFTWARE for BUILDING & INDUSTRIAL AUTOMATION.
Copyright 2007, Information Builders. Slide 1 iWay Web Services and WebFOCUS Consumption Michael Florkowski Information Builders.
Instrument Control Systems Seminar 2014, 20 th -24 th October 2014 New Standards VLT Control System Mario Kiekebusch (On behalf everyone who took part.
October 2006 Success Through Collaboration OPC Foundation Thomas J. Burke OPC Foundation President & Executive Director.
Exploring Networked Data and Data Stores Lesson 3.
SAP Integration with Oracle 11g Muhammad Raza Fatmi.
E-Business Infrastructure PRESENTED BY IKA NOVITA DEWI, MCS.
INTRO. To I.T Razan N. AlShihabi
SCADA SCADA TRAINING AJAY K BASU
ABB Research Centre, Baden, Switzerland
05/07/17 Presented by a.benoit
#01 Client/Server Computing
by Prasad Mane (05IT6012) School of Information Technology
OFFIS Presenter: Sebastian Rohjans
#01 Client/Server Computing
Presentation transcript:

4.3 OPC (Open Process Control formerly OLE for Process Control) Industrial Automation Automation Industrielle Industrielle Automation 4 Access to devices 4.3 OPC (Open Process Control formerly OLE for Process Control) 4.3.1 Common elements Prof. Dr. H. Kirrmann ABB Research Centre, Baden, Switzerland 2012 April, HK

Executive Summary OPC is a standard, manufacturer-independent programming interface through which an automation application client such as a human interface can access the plant data coming from remote devices, such as programmable logic controllers, field bus devices or real-time databases. To that effect, the manufacturer of automation devices supplies an OPC server that runs on a PC, which communicates with its devices through a proprietary protocol. An OPC Server can manage several devices of the same type. Several servers can run in parallel and each server can be accessed by several clients, which run on the same PC or in the same network. All OPC servers present the process variables in the same format to their clients as a uniform interface. This interface consists of a set of commands collected in a software library (DLL) that can be called by client applications written in Visual Basic, C# or other Microsoft programming languages (even Excel) and which access the OPC servers. The OPC library allows in particular to read and write process variables, read alarms and events and acknowledge alarms, and retrieve historical data from data bases according to several criteria. Automation platforms such as ABB's 800XA platform act as OPC clients to collect data from PLCs or databases through third-party OPC servers. Several automation platforms act themselves as an OPC server to publish their data, events and historical data. OPC is the preferred connectivity for 78% of MES, 75% of HMI / SCADA, 68% of DCS / PLC and 53% or ERP /Enterprise system level applications (according to Arc Advisory Group, 2004)" keep on reading even if you are not an executive....

OPC Common Overview OPC Common Overview: usage and specifications OPC as an integration tool Clients and Servers: configuration Automation and Custom Interface OPC Data Access Overview: Browsing the server Objects, Types and properties Communication model Simple Programming Example Standard and components OPC Alarms and Events Specification Overview: definitions and objects Events Alarm Conditions Automation Interface OPC Historical Data Specification Overview

What is OPC ? OPC (formerly: "OLE1 for Process Control", now: "Open Process Control") is an industry standard set up by the OPC Foundation (http://www.opcfoundation.org/) specifying the software interface (objects, methods) to a server that collects data produced by field devices and programmable logic controllers. interfaces covered by the OPC standard node application (OPC client) servers OPC server X OPC server (simulator) OPC server Y Ethernet (not covered) Field bus (not covered) PLCs Brand X PLCs Brand Y Sensors/Actors 1) OLE (Object Linking and Embedding) is a Microsoft technology for connecting software components. It has since been extended by the COM / DCOM technology. It corresponds to Java Beans.

Before OPC visualization history data base ABB PLCs Télémécanique PLCs MasterBus MMS driver Profinet driver XWAY driver ABB PLCs Télémécanique PLCs Siemens PLCs

example: SCADA connection (ABB 800xA) Operator Historian (Information Manager) application software is written independently from the type of controller the drivers still exist, but the clients do not see them anymore ABB OPC server Schneider OPC server Siemens OPC server MMS XWAY ProfiNet ABB AC800M Télémécanique TSX Siemens S7

OPC is the greatest improvement in automation since IEC 61131. Importance OPC is the greatest improvement in automation since IEC 61131. OPC is supported by the OPC foundation (http://www.opcfoundation.org/) More than 150 vendors offer OPC servers to connect their PLCs, field bus devices, displays and visualization systems. OPC is also used for data exchange between applications and for accessing databases OPC is available as DLL for Automation Interface (Visual Basic,..) and Custom (C++,..) OPC consists of three major components: 1) OPC - DA = Data Access (widespread, mature) 2) OPC - AE = Alarms and Events (not yet much used) 3) OPC - HDA = Historical Data Access (seldom used) … and some profiles* (batch,…) * A “profile” is a subset or a specialization of a standard to form a stricter standard, adapted to an application. E.g. 100 Mbit/s, full-duplex, fibre-optical Ethernet is a profile of IEEE 802.3.

The main OPC Specifications OPC Batch OPC HDA history data base batch system OPC Alarms & Events OPC Data Access OPC UA field network future

Specification 1: OPC DA for Data Access Process variables describe the plant's state, they are generated by the sensors or calculated in the programmable logic controllers (PLCs). Process variables can be sent upon a change, on demand or when a given time elapsed. The OPC DA (Data Access) specification addresses collecting Process Variables. The main clients of OPC DA are visualization and (soft-) control.

Specification 2: OPC AE for Alarms and Events Events are changes in the process that need to be logged, such as "production start" Alarms are abnormal states in the process that require attention, such as "low oil pressure" OPC AE (Alarms and Events) specifies how alarms and events are subscribed, under which conditions they are filtered and sent with their associated messages. The main clients of OPC AE are the Alarms and Event loggers. determine the exact time of change (time stamping) categorize by priorities log for further use acknowledge alarms (events are not acknowledged) link to clear text explanation

Specification 3: HDA for Historical Data Access Historical Data are process states and events such as: process variables, operator actions, recorded alarms,... that are stored as logs in a long-term storage for later analysis. OPC HDA (Historical Data Access) specifies how historical data are retrieved from the logs in the long-term storage, filtered and aggregated (e.g. compute averages, peaks). The main client of OPC HDA are Trend Displays and Historians.

Specification 4: OPC Batch based on: IEC 61512-1 Batch Control – Part 1: Models and Terminology (ANSI/ISA S88.01 1995) ISA-dS88.02-2000 draft 17 of May 2000 allows to access: equipment capabilities, current operating conditions, historical and recipe contents

Beyond Microsoft: OPC UA In a move to get more independence from Microsoft and use web technology, a new specification called " Unified Architecture" (formerly. OPC XML) that uses web services for all kinds of transactions: query, read, write, subscribe,... The classical OPC DA, AE and HDA are implemented with XML / SOAP / WSDL this allows encryption and authentication of process data. OPC UA does not only standardize the interfaces, but also the transmitted data.

OPC as an integration tool OPC Common Overview: usage and specifications OPC as an integration tool Clients and Servers: configuration Automation and Custom Interface OPC Data Access Overview: Browsing the server Objects, Types and properties Communication model Simple Programming Example Standard and components OPC Alarms and Events Specification Overview: definitions and objects Events Alarm Conditions Automation Interface OPC Historical Data Specification Overview

OPC as a hub OPC variables is also a convenient way to exchange data between applications on the same machine. OPC data can be easily read in any Microsoft Office application source: Siemens WinCC

OPC connection to databases Tools such as LifeWire’s allow to build an OPC DA interface to any database (with an standard ODBC interface). The database internal structure (exposed through queries) is reflected as a hierarchy of OPC items. This allows to give a unified access to simple items. application (OPC client) OPC server ODBC DataBase

OPC for internal communication: ABB’s SCADA (800xA) as example ABB's Operator Workplace (800xA) is at the same time OPC server and OPC client. Software components (agents) within AIP expose their properties as OPC objects. Internal (within the PC) and external communication (between PCs) takes place over OPC. 800xA aspects aspects aspects Enterprise Historian Asset Optimizer functions OPC server Windows PC process data base OPC connections OPC client ABB OPC server Schneider OPC server Siemens OPC server

Example substation automation Enterprise level Grid Control Center SCADA HMI SCADA OPC server Tele- control gateway substation data base OPC server OPC server OPC server station bus IED IED IED bay bay bay bay bay bay power plant devices substation devices

OPC Connection to Enterprise Resource Planning Direct connection to SAP (BAPI) is provided by tools such as Matrikon's or Intellution's

Simulators and Explorer: which helps are available Several tools are available on the market to browse OPC servers, especially: - Matrikon OPC Explorer (no source code) - TopServer Client (source code in VB available) Simulator: OPC data should be simulated before commissioning the real plant. To this effect, commercial simulation servers allow to create, observe and change variables by hand or according to time functions (ramp, random,…). Most PLC servers have also a simulation mode. Freeware servers such as Matrikon have only limited number of variables These explorers and simulators work with OPC DA, AE is yet seldom.

Client and Servers OPC Common Overview: usage and specifications OPC as an integration tool Clients and Servers: configuration Automation and Custom Interface OPC Data Access Overview: Browsing the server Objects, Types and properties Communication model Simple Programming Example Standard and components OPC Alarms and Events Specification Overview: definitions and objects Events Alarm Conditions Automation Interface OPC Historical Data Specification Overview

Server(s) and Client(s) in the same node client application (OPC client) client application (OPC client) OPC server OPC server OPC server devices devices devices devices Clients and servers run as parallel processes The OPC specification defines the interface between client and server in the form of objects and methods.

Direct and Fieldbus access direct connection fieldbus connection client application (OPC client) client application (OPC client) (local) OPC server (local) OPC server FB Manager fieldbus proprietary protocol I/O devices can also be a point-to-point link fieldbus fieldbus The OPC server is running all the time, even if no client is present FB agent FB agent PLC PLC

Example field bus access: ABB AC800 OPC Server based on MMS Process Portal (client) Matrikon client separate processes user panels IEC 61131 Programming Environment (Control Builder) config files AC800 OPCserver OPCServer config MMS MMS Panel by FTP or internal TCP/IP Ethernet TCP/IP MMS PLC variables The variables are defined in the server, not in the PLC.

Accessing a server in another node client application (OPC client) stub DCOM TCP/IP DCOM TCP/IP TCP/IP DCOM DCOM OPC server OPC server Limitation: does not work over firewalls. Solution: OPC UA (see later) FB Manager fieldbus

Full-fledged COM/DCOM across multiple nodes connectivity node Ethernet app3 application 2 (OPC client) application 1 (OPC client) TCP/IP TCP/IP panel OPC server for BrandZ node 1 OPC server for BrandY OPC server for BrandX OPC server for simulation Fieldbus Y Fieldbus X drivers input / output to plant The OPC servers supports multiple clients and servers on the same, or on remote nodes. they run as separate processes (as soon as at least one client is requesting them)

OPC Technology OPC Common Overview: usage and specifications OPC as an integration tool Clients and Servers: configuration OPC Technology, client and custom interface OPC Data Access Overview: Browsing the server Objects, Types and properties Communication model Simple Programming Example Standard and components OPC Alarms and Events Specification Overview: definitions and objects Events Alarm Conditions Automation Interface OPC Historical Data Specification Overview

COM/DCOM (COM+) maintains the same interface regardless of COM/DCOM quick intro 1) same process client library (DLL) library 2) different processes same computer client stub proxy local procedure call memory local procedure call 3) different computers library client stub proxy remote procedure call remote procedure call network COM/DCOM (COM+) maintains the same interface regardless of the location of the components TCP/IP TCP/IP

(Distributed) Component Object Model OPC technologies ActiveX Object Linking and Embedding (OLE) OLE for Process Control (OPC) (Distributed) Component Object Model (COM / DCOM) Transport (TCP-IP, UDP, Queued) only between nodes Ethernet OPC bases on Microsoft's COM/DCOM technology (i.e. it only works on Windows platforms). Effort to port it to other platforms (Linux) and web transport protocols (XML) are in progress. Advantages are the direct integration into all applications, such as Excel.

Structure of an OPC server OPC/COM Interfaces OPC Group & Item Management Item Data Optimization and Monitoring Device Specific Protocol Logic Hardware Connection Management

“Automation” vs. “Custom” interface The OPC specifications define two interfaces: "custom" and "automation". “custom” is the native C++ interface of COM. “automation” is the interface offered in Visual Basic, used in Word, Excel,….. The interface is defined by a Type Library (distributed by the OPC Foundation) Functionality is roughly the same in both models, “automation” is easier to use, but "custom" gives a more extended control. "Automation" client (Visual Basic, Excel,…) "Custom" client (C++,….) OPC Automation wrapper custom interface custom interface server server server

Assessment Common What is the objective of OPC ? On which technology does OPC rely ? What is an OPC Server ? Which are the main OPC specifications ? What are the components of the OPC DA Automation Interface ? How does an automation platform use the OPC interfaces ?

Three-tiers Active-X components graphical interface business logic storage and communication