OPC and EPICS M. Clausen EPICS workshop Trieste’99 1 OPC Introduction and EPICS Perspectives Matthias Clausen
OPC and EPICS M. Clausen EPICS workshop Trieste’99 2 Agenda u Introduction –OPC Performance Powerpoint slides from: The Real StoryThe Real Story –OPC Data Access 2.0 Powerpoint slides from: OverviewOverview u Motivation u Status u Next Steps Other Links: –OPC Alarms and Events 1.0 OverviewOverview
OPC and EPICS M. Clausen EPICS workshop Trieste’99 3 TM OLE for Process Control and Factory Automation Al Chisholm - OPC Technical Chairman 10/98 OPC Data Access 2.0 Technical Overview
OPC and EPICS M. Clausen EPICS workshop Trieste’99 4 Topics u A review of the Data Access Problem u Design Features u Assumptions about the Applications u The Objects u The functionality they provide
OPC and EPICS M. Clausen EPICS workshop Trieste’99 5 Why is OPC Data Access needed? Software Driver Software Driver Software Driver Software Driver Display Application Trend Application Report Application
OPC and EPICS M. Clausen EPICS workshop Trieste’99 6 How does OPC Solve the Problem? Software Driver Software Driver Software Driver Software Driver OPC Display Application Trend Application Report Application OPC
OPC and EPICS M. Clausen EPICS workshop Trieste’99 7 Where does OPC Data Access Fit? Low level sensors Typically use a dedicated Hardware Interface and protocol Device Specific I/O Control Data Monitor SubSystem OPC OPC (via DCOM)can also be used between subsystems and Management Consoles OPC is generally used between Monitoring applications and I/O specific software drivers
OPC and EPICS M. Clausen EPICS workshop Trieste’99 8 What data does OPC provide? u Real time sensor data - temp, pressure, flow u Control parameters - open, close, run, stop u Status information –Status of the hardware connection –Status of the local software and subsystem u OPC can expose any data available OPC Interfaces Sensor Data Comm Status System Performance OS Statistics
OPC and EPICS M. Clausen EPICS workshop Trieste’99 9 Features of OPC Data Access u Based on COM - to leverage Microsoft ‘Plumbing’ u Flexible - to support many applications u Efficient & Scalable - to support large applications u Hi performance - well behaved on a Network u Easy to understand u Widely accepted
OPC and EPICS M. Clausen EPICS workshop Trieste’ Assumptions About the Architecture u Each OPC Server such as Data Access is a Separate Object u The Data Access Server provides a window into Existing Data; it is not a configuration system. u Data is accessed by Name (a string) which will generally be vendor or hardware specific. u Data for lists of items can be read explicitly (polled) or subscriptions can be created. Existing SCADA, DCS, PLC or other Data Source FIC101, FIC OPC Server OPC Client
OPC and EPICS M. Clausen EPICS workshop Trieste’99 11 Assumptions about the Applications u Applications are interested in a subset of the Data Items (Tags) available within the underlying Control sub-system. u Applications are interested in many different subsets of Data Items at different times and may have variable requirements for response and resolution. u Applications want to be independent of the data structures (or objects) used by the sub-systems. (I.e. they want symbolic access to the data).
OPC and EPICS M. Clausen EPICS workshop Trieste’ The Logical Object Model OPCServer OPCGroup OPC/COM Interfaces OPCGroup OPCGroup(s) OPCItem(s)
OPC and EPICS M. Clausen EPICS workshop Trieste’ Typical Server Design OPC/COM Interfaces OPC Group & Item Management Item Data Optimization and Monitoring Device Specific Protocol Logic Hardware Connection Management
OPC and EPICS M. Clausen EPICS workshop Trieste’ The Server Interfaces u The server is a COM object which provides: u IOPCServer u IOPCBrowseServerAddressSpace (optional) u IOPCCommon (2.0) u IOPCItemProperties(2.0) u IConnectionPointContainer(2.0) OPCServer
OPC and EPICS M. Clausen EPICS workshop Trieste’ The Group Interfaces u The Group is a COM object which provides: u IOPCGroupStateMgt u IOPCAsyncIO2 (2.0 - replaces IOPCAsyncIO) u IOPCItemMgt u IOPCSyncIO u IConnectionPointContainer (2.0 replaces IDataObject) OPCGroup
OPC and EPICS M. Clausen EPICS workshop Trieste’ The Client Side Intefaces u The Client provides 2 COM interfaces that the server can call u IOPCShutdown u IOPCDataCallback Server Object Group Object(s) Client IOPCDataChange IOPCShutdown
OPC and EPICS M. Clausen EPICS workshop Trieste’ Performance and Flexibility u OPC Data Access is complete, powerful and flexible because it is a combination of the best ideas of many of the best companies in our business. u OPC Data Access is Fast because it was designed from the start with networking in mind.
OPC and EPICS M. Clausen EPICS workshop Trieste’ Summary u The OPC Data Access 2.0 Interfaces u Allow applications to easily access subsystem data u Support polled or exception based access u Are optimized for use over a network u Are designed to be vendor neutral u Are exceptionally flexible and efficient u
OPC and EPICS M. Clausen EPICS workshop Trieste’ OPC Alarms and Events Technical Overview TM OLE for Process Control and Factory Automation Al Chisholm - OPC Technical Chairman 11/98
OPC and EPICS M. Clausen EPICS workshop Trieste’ Topics u A review of the Problem u Design Features u Assumptions about the Applications u The Objects u The functionality they provide
OPC and EPICS M. Clausen EPICS workshop Trieste’ General Features of OPC Alarms u Based on COM - to leverage Microsoft ‘Plumbing’ u Flexible - to support many applications u Efficient - to support large applications u Hi performance - well behaved on a Network u Easy to understand
OPC and EPICS M. Clausen EPICS workshop Trieste’99 2 Fundamental Assumptions (I) u Each OPC Server such as Alarms and Events is a Separate Object which complements the other OPC Objects u Alarms and Events is primarily Subscription based u Event Types –Simple, Tracking, Condition (Alarm) u Conditions –Single State, Multi State
OPC and EPICS M. Clausen EPICS workshop Trieste’ Fundamental Assumptions (II) u Alarm State Information includes –Enabled, Active, Acknowledged u Areas u Source Names u Categories u Filtering
OPC and EPICS M. Clausen EPICS workshop Trieste’ The Logical Object Model OPCServer Subscription Custom Interfaces Subscription Conditions and Events...
OPC and EPICS M. Clausen EPICS workshop Trieste’ Typical Server Design OPC/COM Interfaces OPC Subscription Object Management Condition Monitoring and Optimization Device Specific Protocol Logic (if needed) Hardware Connection Management (if needed)
OPC and EPICS M. Clausen EPICS workshop Trieste’ The Server Interfaces u The server is a COM object which provides: u IOPCCommon u IOPCEventServer u IConnectionPointContainer OPCServer
OPC and EPICS M. Clausen EPICS workshop Trieste’ The Subscription Object Interfaces u The Subscription is a COM object which provides: u IOPCEventSubscriptionMgt u IConnectionPointContainer OPCServer Subscription
OPC and EPICS M. Clausen EPICS workshop Trieste’ The Client Side Intefaces u The Client provides 2 COM interfaces that the server can call u IOPCShutdown u IOPCEventSink Server Object Subscription Object(s) Client IOPCEventSink IOPCShutdown
OPC and EPICS M. Clausen EPICS workshop Trieste’ Client/Server Connection ClientServer Subscription OnEvent CPC CP OnEvent 4
OPC and EPICS M. Clausen EPICS workshop Trieste’ Performance and Flexibility u OPC Alarms and Events is complete, powerful and flexible because it is a combination of the best ideas of many of the best companies in our business. u OPC Alarms and Events is Fast because it was designed from the start with networking in mind.
OPC and EPICS M. Clausen EPICS workshop Trieste’ Summary u The OPC Alarms and Events Interfaces: u Support exception based updates via Filtered Subscriptions u Are designed to be vendor neutral u Allow connections to both simple and complex devices u Are optimized for use over a network u
OPC and EPICS M. Clausen EPICS workshop Trieste’ EPICS and OPC EPICS
OPC and EPICS M. Clausen EPICS workshop Trieste’99 3 OPC in the EPICS environment OPC Server i.e. Profibus DP Profibus DP DCOM i.e. Graphic / Alarm OPC Client i.e. CA-Server OPC Client OPC Server i.e. CA Client From CA Servers To CA ClientsSCADA Systems
OPC and EPICS M. Clausen EPICS workshop Trieste’ Motivation u Reduce development effort to integrate new subsystems –‘Loose’ connections (i.e. read-only) to subsystems can be implemented with existing OPC-servers for field buses. u Reduce development effort for new applications –Existing diagnostic tools on PC platforms can be easily integrated using their OPC-client interface.
OPC and EPICS M. Clausen EPICS workshop Trieste’ Status u Integration of existing control systems into new SCADA/DCS system: –OPC-Server / CA-client ( in work) –OPC-Server / TINE-client (planned) u Retrieving data from SCADA system (s) –use existing OPC-server
OPC and EPICS M. Clausen EPICS workshop Trieste’ Next Steps u Develop generic OPC-client / CA-Server to integrate OPC-aware systems (i.e. SCADA, field buses...) into EPICS. -> We need help for this job! We already know little about OPC but nothing about CA-Server on NT!
OPC and EPICS M. Clausen EPICS workshop Trieste’ Outlook u OPC is an industrial standard which we should not ignore. u OPC should be integrated into EPICS and SOSH u Drawback: –OPC is only available on WINTEL systems! u Limitation: –Access security –Dynamic addressing of channels needs to be tested
OPC and EPICS M. Clausen EPICS workshop Trieste’ Link - List u OPC Performance - The Real StoryThe Real Story u OPC Data Access 2.0 OverviewOverview u OPC Alarms and Events 1.0 OverviewOverview