Presentation is loading. Please wait.

Presentation is loading. Please wait.

OPC: Environment for Industrial System Integration.

Similar presentations


Presentation on theme: "OPC: Environment for Industrial System Integration."— Presentation transcript:

1 OPC: Environment for Industrial System Integration

2 Click to edit Master title style Author Truong Dinh Chau Ho Chi Minh City Univ. of Tech. chau.truong@hcmut.edu.vn chau.truong@me.com (+84) (0)91. 543-74-40

3 Click to edit Master title style Topics  Approaches for connection with control devices: Direct driver, DDE, OPC  I/O driver problem. What is OPC  Logical object model OPC Data Access Server  OPC client/server interaction  Data sources  Modes of data exchange between OPC client/server  Structure of demo system  Popular SCADA (Citect, Intouch, RSView32) – OPC  C++ application – OPC .NET – OPC  Web – OPC  MS Excel – OPC

4 Approaches for connection with control devices

5 Click to edit Master title style Technologies  DLL - Dynamic-link Library (Direct drivers)  DDE - Dynamic Data Exchange  OPC - OLE for Process Control

6 Click to edit Master title style SCADA Specific part … … I/O Device A Driver A - DLL Driver B - DLL … … Driver C - DLL General part ( EXE ) General part ( EXE ) I/O Device B I/O Device C Direct drivers User C/C++ code User C/C++ code

7 Click to edit Master title style Direct drivers

8 Click to edit Master title style Direct drivers Tag DAQ Tasks EXE DLL Tag bool DeviceConfig() {... } float Read( DWORD Channel) {... } bool Write( DWORD Channel, float Data) {... } DAQ Tasks

9 Click to edit Master title style DDE … … I/O Device DDE Sever DDE Server … … DDE Clients, SCADA I/O Device Computer A

10 Click to edit Master title style DDE I/O Device DDE Server Application Topic1 Item1 Item2 Item3 Topic2 Item1 Item2 Item3 DDE Client Application | Topic1 ! Item2

11 Click to edit Master title style Demo for DDE connection  Excel – Citect  Excel – Intouch  Intouch - Citect

12 OPC

13 Click to edit Master title style The I/O driver problem C/C++ Application SCADASCADASCADASCADA Software Driver C Software Software Driver B Software Software Driver A Software Physical I/O Device A Physical I/O Device B Physical I/O Device C Not allowAllow

14 Click to edit Master title style How does OPC solve the problem? C/C++ Application SCADASCADA OPCOPC SCADASCADA Software Driver C Software Software Driver B Software Software Driver A Software Physical I/O OPCOPCOPCOPC OPCOPCOPCOPCOPCOPC Device A Physical I/O Device B Physical I/O Device C

15 Click to edit Master title style The I/O driver problem

16 Click to edit Master title style How does OPC solve the problem?

17 Click to edit Master title style What is OPC? OPC is an industry standard created by a number of worldwide leading hardware and software suppliers. The OPC standard specifies an interface between client applications and servers of process data. The standard was purposely limited to the reading and writing of real-time process values (Data Access – DA). Alarm handling, process events (A&E), historical data access (HDA), … were all deferred to subsequent releases of the standard. An OPC compliant client can read and write data to any OPC compliant server. OPC Foundation (www.opcfoundation.org). OPC is supported 408 companies: Schneider Electric (France), Iconics ( USA ), Wonderware ( USA ), Rockwell Automation ( USA ), Adastra ( Russia ), Siemens ( Germany ), Intellution ( USA ), Indusoft Russia ( Russia ), Fastwel ( Russia ), ABB Automation ( USA ), Fieldbus Foundation ( USA ), Toshiba ( Japan ), Hitachi ( Japan ), National Instruments ( USA ), Advantech (Taiwan)… SCADACompanyCountry Vijeo CitectSchneider ElectricFrance InTouchWonderwareUSA RSView32Rockwell AutomationUSA iFIXIntellutionUSA WinCCSiemensGermany Genesis32IconicsUSA CimplicityGE FanucUSA GenieDAQAdvantechTaiwan Trace ModeAdAstraRussia Vijeo LookSchneider ElectricFrance LabViewNational InstrumentsUSA Master SCADAInSATRussia ContourObedinenie UigUcraina WizconAxedaUSA Crug-2000CrugRussia Elipse SCADAElipse SoftwareUSA

18 Click to edit Master title style What is OPC? OPC – OLE for Process Control OPC – OLE for Production Control OPC – Openness, Productivity and Connectivity OPC – OLE COM for Process Control Object Linking & Embedding COM – “Component Object Model” provides interfaces and inter-component communication. Through COM, an application may use features of any other application object. COM is the core of DCOM (Distributed COM), ActiveX.

19 Click to edit Master title style OPC components I/O Device …… OPC Server ( DLL ) OPC Server ( DLL ) OPC Server ( EXE ) OPC Server ( EXE ) … OPC Server ( EXE ) OPC Server ( EXE ) OPC Client ( SCADA ) OPC Client ( SCADA ) I/O Device

20 Click to edit Master title style Logical object model OPC Server OPC Group OPC Item OPC Group OPC Item OPC Group OPC Item OPC Interfaces OPC Group DeviceDevice OPC Server TagTagTagTagTagTag DeviceDevice TagTagTagTagTagTag

21 Click to edit Master title style OPC Item  Connection to a data source.  Properties:  Data value (v) VARIANT type: boolean, integer, float, string, …  Quality (q) UNCERTAIN, GOOD, BAD, …  Time stamp (t) - FILETIME: {yyyy:mm:dd:hh:mm:ss:…} - The Timestamp should indicate the time that the value and quality was obtained by the device. Item i Tag j

22 Click to edit Master title style Timestamp of real-time data in the integrated control system Supervision Upper controller level Controller level PLC Passive I/O boards I nstrumentation PLC SCADA station OPC Server SCADA station v – value, q – quality, t – timestamp v 5, q 5, t OPC Server v 1, q 1, tv 4, q 4, tv 6, q 6, t v 4, q 4, tv 3, q 3, tv 1, q 1, t v 1, t v 2, t v 6, t v 4, t v 3, t v 5, q 5, t v 5, t 3.1, OK, 03:54:01 3.1, 03:54:01 3.1, GOOD, 03:54:01 3.2, OK, 03:54:02 3.2, 03:54:02 3.2, GOOD, 03:54:02 3.5, OK, 03:54:03 3.5, 03:54:03 3.5, GOOD, 03:54:03 3.8, OK, 03:54:04 3.5, 03:54:04 3.8, GOOD, 03:54:04 3.8, OK, 03:54:05 3.8, 03:54:05 3.8, GOOD, 03:54:05 4.1, BAD, 03:54:06 4.1, 03:54:06 4.1, BAD, 03:54:06 4.3, BAD, 03:54:07 4.3, 03:54:07 4.3, BAD, 03:54:07 4.0, GOOD, 03:54:08 4.0, 03:54:08 4.0, GOOD, 03:54:08 3.9, GOOD, 03:54:09 3.9, 03:54:09 3.9, GOOD, 03:54:09 4.2, BAD, 03:54:10 4.2, 03:54:10 4.2, BAD, 03:54:10 4.0, GOOD, 03:54:11 4.0, 03:54:11 4.0, GOOD, 03:54:11 4.5, BAD, 03:54:12 4.5, 03:54:12 4.5, BAD, 03:54:12 4.3, BAD, 03:54:13 4.3, 03:54:13 4.3, BAD, 03:54:13 3.8, GOOD, 03:54:14 3.8, 03:54:14 3.8, GOOD, 03:54:14 3.2, GOOD, 03:54:15 3.2, 03:54:15 3.2, GOOD, 03:54:15 3.2, BAD, 03:54:16 0.9, 03:54:16 0.9, BAD, 03:54:16 1.7, GOOD, 03:54:17 1.7, 03:54:17 1.7, GOOD, 03:54:17 2.0, GOOD, 03:54:18 2.0, 03:54:18 2.0, GOOD, 03:54:18 2.6, GOOD, 03:54:19 2.6, 03:54:19 2.6, GOOD, 03:54:19 4.3, BAD, 03:54:20 4.3, 03:54:20 4.3, BAD, 03:54:20 4.1, BAD, 03:54:21 4.1, 03:54:21 4.1, BAD, 03:54:21 4.0, GOOD, 03:54:22 4.0, 03:54:22 4.0, GOOD, 03:54:22 4.5, BAD, 03:54:23 4.5, 03:54:23 4.5, BAD, 03:54:23 5.1, BAD, 03:54:24 5.1, 03:54:24 4.5, BAD, 03:54:24 3.9, GOOD, 03:54:25 3.9, 03:54:25 3.9, GOOD, 03:54:25 4.3, BAD, 03:54:26 4.3, 03:54:26 4.3, BAD, 03:54:26 4.2, BAD, 03:54:27 4.2, 03:54:27 4.2, BAD, 03:54:27 4.0, GOOD, 03:54:28 4.0, 03:54:28 4.0, GOOD, 03:54:28 3.9, GOOD, 03:54:29 3.9, 03:54:29 3.9, GOOD, 03:54:29 4.0, GOOD, 03:54:30 4.0, 03:54:30 4.0, GOOD, 03:54:30 4.3, BAD, 03:54:31 4.3, 03:54:31 4.3, BAD, 03:54:31 4.6, BAD, 03:54:32 4.6, 03:54:32 4.6, BAD, 03:54:32 4.4, BAD, 03:54:33 4.4, 03:54:33 4.4, BAD, 03:54:33 4.1, BAD, 03:54:34 4.1, 03:54:34 4.1, BAD, 03:54:34 3.5, GOOD, 03:54:35 3.5, 03:54:35 3.5, GOOD, 03:54:35 2.9, GOOD, 03:54:36 2.9, 03:54:36 2.9, GOOD, 03:54:36 2.7, GOOD, 03:54:38 2.7, 03:54:38 2.7, GOOD, 03:54:38 2.0, GOOD, 03:54:39 2.0, 03:54:39 2.0, GOOD, 03:54:39 1.9, GOOD, 03:54:40 1.9, 03:54:40 1.9, GOOD, 03:54:40 2.0, GOOD, 03:54:41 2.0, 03:54:41 2.0, GOOD, 03:54:41 1.8, GOOD, 03:54:42 1.8, 03:54:42 1.8, GOOD, 03:54:42 1.9, GOOD, 03:54:43 1.9, 03:54:43 1.9, GOOD, 03:54:43 1.8, GOOD, 03:54:44 1.8, 03:54:44 1.8, GOOD, 03:54:44 1.7, GOOD, 03:54:45 1.7, 03:54:45 1.7, GOOD, 03:54:45 1.7, GOOD, 03:54:46 1.7, 03:54:46 1.7, GOOD, 03:54:46 1.7, GOOD, 03:54:47 1.7, 03:54:47 1.7, GOOD, 03:54:47 1.7, GOOD, 03:54:48 1.7, 03:54:48 1.7, GOOD, 03:54:48 1.8, GOOD, 03:54:49 1.8, 03:54:49 1.8, GOOD, 03:54:49 1.7, GOOD, 03:54:50 1.7, 03:54:50 1.7, GOOD, 03:54:50 1.8, GOOD, 03:54:51 1.8, 03:54:51 1.8, GOOD, 03:54:51 2.0, GOOD, 03:54:52 2.0, 03:54:52 2.0, GOOD, 03:54:52 2.1, GOOD, 03:54:53 2.1, 03:54:53 2.1, GOOD, 03:54:53 1.9, GOOD, 03:54:54 1.9, 03:54:54 1.9, GOOD, 03:54:54 1.8, GOOD, 03:54:55 1.8, 03:54:55 1.8, GOOD, 03:54:55 1.7, GOOD, 03:54:56 1.7, 03:54:56 1.7, GOOD, 03:54:56 1.6, GOOD, 03:54:57 1.6, 03:54:57 1.6, GOOD, 03:54:57 1.6, GOOD, 03:54:58 1.6, 03:54:58 1.6, GOOD, 03:54:58 1.6, GOOD, 03:54:59 1.6, 03:54:59 1.6, GOOD, 03:54:59 1.7, GOOD, 03:54:60 1.7, 03:54:60 1.7, GOOD, 03:54:60

23 Click to edit Master title style OPC Group Object  Collection of items.  Clients must use group to access items.  Properties:  Requested update rate;  Percent dead-band;  Time bias; Group i Item 1 Item 2 Item 3

24 Click to edit Master title style OPC DA Specification ver. 1.0

25 Click to edit Master title style Data sources in OPC Servers Read from server’s internal cache. Read directly from device. Write directly to the device.

26 Click to edit Master title style Client/server interaction Group 2 Client 2 Server 2 Item 2 Item 1 Group 1 Group 2 Client 1 Server 1 Device 1 Tag 1 Tag 2 Tag 3 Device 2 Tag 1 Tag 2 Group 1 Item 3 Item 2 Item 1 OPC Server

27 Click to edit Master title style Modes of data exchange between OPC Server/Client Synchronous read/write. Asynchronous read/write. Subscription (for read). Refresh (for read).

28 Click to edit Master title style Synchronous mode Group 2 Client 1 OPC Server Server 1 Device 1 Tag 1 Tag 2 Tag 3 Device 2 Tag 1 Tag 2 Group 1 Item 3 Item 2 Item 1 Group1.Read(DEVICE, ItemHandles, Results )

29 Click to edit Master title style Asynchronous mode Group 2 Client 1 OPC Server Server 1 Device 1 Tag 1 Tag 2 Tag 3 Device 2 Tag 1 Tag 2 Group 1 Item 3 Item 2 Item 1 Item 2 Group1.Read(DEVICE, ItemHandles) Client1.ReadComplete(Results)

30 Click to edit Master title style Subscription Group 2 Client 1 OPC Server Server 1 Device 1 Tag 1 Tag 2 Tag 3 Device 2 Tag 1 Tag 2 Group 1 Item 3 Item 2 Item 1 Item 2       Item 3 Data changed Client1.DataChanged(Data)

31 Click to edit Master title style Demo system

32 Click to edit Master title style Demo system

33 Click to edit Master title style Demo: PLC

34 Click to edit Master title style Demo: SCADAs – OPC Server Citect, Schneider Electric Intouch, Wonderware RSView32, Rockwell Automation

35 Click to edit Master title style Demo: C++ Application – OPC Server

36 Click to edit Master title style Demo: Excel as OPC Client

37 Click to edit Master title style Demo:.NET OPC client. OPC.NET wrapper.NET platform interface C++ object C# thread COM interface

38 Click to edit Master title style Demo: C# OPC client

39 Click to edit Master title style Demo: Web-based OPC Client

40 Click to edit Master title style Thank you for your attention Truong Dinh Chau, Ph.D Ho Chi Minh City Univ. of Tech. chau.truong@hcmutedu.vn chau.truong@me.com (+84) (0)91. 543-74-40


Download ppt "OPC: Environment for Industrial System Integration."

Similar presentations


Ads by Google