Download presentation
Presentation is loading. Please wait.
Published byRalf O’Neal’ Modified over 9 years ago
1
OPC.NET 3.0 Technical Overview
2
OPC.NET 3.0 or Xi OPC Xi was renamed to OPC.NET 3.0 to better reflect its purpose – to provide a.NET interface for OPC Xi is still used informally as an abbreviated name, especially in drawings where space is at a premium. In these uses, the “X” now stands for “.NET” and the “i” for “interface. Xi is also used in the source code since names cannot start with a ‘.’ 2
3
What is OPC.NET 3.0? A simple Microsoft.NET interface for securely wrapping industrial automation systems, for both local and remote access. Xi Client Existing Client Xi Client OPC COM Server Xi Interface Xi Secure Messaging Xi Secure Messaging
4
Why was OPC.NET 3.0 developed? New Microsoft-based client developments have moved to.NET => These application need a native.NET interface to talk to OPC COM servers, instead of each having to develop its own. Before Xi (need a custom adapter for each type of OPC server) OPC COM Server.NET Interface “A”.NET Client Application “A” COM/DCOM.NET Interface “B”.NET Client Application “B” COM/DCOM Custom Adapter.NET Interface “C”.NET Client Application “C” COM/DCOM With Xi (Xi Wrapper is common to all types of OPC Servers) OPC COM Server.NET Client Application “A”.NET Client Application “B” COM/ DCOM Xi Wrapper.NET Client Application “C” Xi.NET Interface
5
Is OPC.NET 3.0 a common interface? Yes - OPC.NET 3.0 provides access to runtime and historical data, events, and alarms, all in one interface Xi Alarm Client Xi Interface Xi DA Client OPC DA Server OPC HDA Server OPC A&E Server Xi History Client Xi Integrated Client
6
Security model Full Access Limited Access (e.g. no Writes) Full Access
7
Performance model Higher Performance Remote Access Performance Highest Performance
8
Platform model Open – Generally Windows Open – Any platform using web services Windows
9
OPC.NET 3.0 Interface Architecture Multi-layer architecture to reduce interoperability problems Client Interface Client App Client Base Server Base OPC Wrapper OPC COM Server Server Interface WCF Alternate Server Implementation Developer- specific code Standard code for the client Standard code for the server Developer- specific code Standard code for OPC Wrappers I/F Ext
10
Robustness.NET Client Application OPC.NET Server X DA HDA A&E Automatic recovery from connection failure No loss of client configuration in the server (client context)
11
Security & Firewall Friendliness Two ports to open: OPC.NET Server HTTP TCP DA HDA A&E Encryption.NET Client Application
12
Security concepts Base user privileges defined by access control list Base encryption and authentication provided by.NET WCF Read, write, and subscribe privileges for the user can be restricted based on location of the user and the client application being used (e.g. only approved client apps can write). Patent pending (royalty-free license for use with OPC.NET 3.0)
13
Read Endpoint Resource Management Endpoint Security architecture Server Discovery Endpoint List of Resources Write Endpoint Secure One per server One per system Dynamically opened Multiple endpoints per client Multiple lists per endpoint Known only to the client Opened only if authorized List of Resources Subscribe Endpoint List of Resources Poll or Callback (may be redundant) Access Controls Client Application List of Resource Discovery Endpoints
14
Server and endpoint discovery PNRP Enabled Servers Non-PNRP Enabled Servers PNRP Enabled Clients Non-PNRP Enabled Clients Xi Discovery Server Manual Configuration of Discovery Server Address Manual Configuration of Server Address PNRP Discovery of Servers Xi Discovery of Server Endpoints Xi Discovery of Xi Server Endpoints PNRP Discovery of Discovery Servers PNRP = Peer Name Resolution Protocol (Microsoft)
15
OPC.NET 3.0 Functional Architecture Clients select resources (data/alarms/events) into lists, and add lists to endpoints for access Client App System Resources Client-specific Context Historical Data Alarms & Events Historical Alarms & Events Runtime. Data Common to all clients filter Read Write Subscribe Manage
16
Endpoint interfaces ServerDiscovery ResourceManagement CallbackPoll Read Write Used to locate servers Used to: discover resources of a server, create lists of resources, create endpoints, and assign lists to endpoints Used to receive updates (changes) to list entries Used to update the value of list entries Subscribe Used to read the value of list entries
17
Obtaining information about the server Standard MIB Objects Vendor MIB Objects (optional) Server Management Info Base (MIB) Server capabilities and settings accessed by the GetStandardMib() method Server-specific management object values accessed via Read/Write/Subscribe endpoints Vendor MIB Object descriptions
18
Finding objects (filtered browsing) A BC DEFG Object Hierarchy Objects located by their path (e.g. A/C/G) Object Attributes InstanceId Name Description IsLeaf ObjectTypeId DataTypeId ListDimensions IsReadable IsWritable FastestScanRate Roles IsCollectingHistory Flags Browsing follows path from root Client can build path from root if known - no need to always start from root or change browse position Built-in generic filtering mechanism Object attributes returned – no need to separately ask for properties
19
Data lists Data Lists A BC EFG Object Hierarchy data objects D Data lists select data objects that are to be accessed via read/write/subscribe Data lists can be created by the client or the server
20
Historical data lists Historical Data Lists A BC EFG Object Hierarchy Historical values D Historical data lists are data lists that contain historical values Historical lists are updated as new values are received into the Data Journal
21
Alarm and event lists Event/Alarm List Filter Criteria Alarms and Events Alarm/Event Sources Area Hierarchy Alarms and events, like data, are accessed via lists, but membership in the list is defined by filters Events are in lists only long enough for them to be reported via a subscription Alarms stay in lists until they are acked/inactive Alarms and event lists can be created by the client or the server Areas
22
Historical alarm and event lists Historical Event/Alarm List Filter Criteria Historical Alarms and Events Alarm/Event Sources Event Journal Historical alarm/event list membership is defined by filters Historical lists are updated as new alarms/events are received into the Event Journal Areas
23
Interface summary
24
Example specification page
25
Conclusion Additional security layered on top of traditional security mechanisms Additional robustness features added to recover dropped connections with the server Supports runtime and historical data, events, and alarms. Additionally supports passthroughs and historical alarms/events Provides: –Local access via NamedPipe bindings –LAN access via NetTcp bindings –Web access and off-platform access via REST interface & Http bindings
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.