understanding opc: basic overview - software...

33
Content is Copyright Software Toolbox, 2008 No re-use or copying without written permission Understanding OPC: Basic Overview Colin Winchester VP Operations Nathan Pocock Chief Architect & Developer

Upload: trinhkhanh

Post on 22-Feb-2018

216 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Understanding OPC: Basic Overview - Software Toolboxftp.softwaretoolbox.com/demodnld/webexes/opcbasics/OPC_Basics... · Ethernet, RS232, RS485, Radio etc. PLC / Device Allen-Bradley,

Content is Copyright Software Toolbox, 2008 No re-use or copying without written permission

Understanding OPC: Basic Overview

Colin Winchester VP Operations

Nathan Pocock Chief Architect & Developer

Page 2: Understanding OPC: Basic Overview - Software Toolboxftp.softwaretoolbox.com/demodnld/webexes/opcbasics/OPC_Basics... · Ethernet, RS232, RS485, Radio etc. PLC / Device Allen-Bradley,

Content is Copyright Software Toolbox, 2008 No re-use or copying without written permission

Understanding OPC: Basic Overview

Agenda – 60 MinutesOriginal problem – How to share dataOriginal solutionsOPC Solution

Open and IndustrialClient/Server Architecture - COMPC to PC connections – DCOMWhat can you do with OPC Now

Answers to some common questionsFuture DirectionQuestions & Answers

Page 3: Understanding OPC: Basic Overview - Software Toolboxftp.softwaretoolbox.com/demodnld/webexes/opcbasics/OPC_Basics... · Ethernet, RS232, RS485, Radio etc. PLC / Device Allen-Bradley,

Content is Copyright Software Toolbox, 2008 No re-use or copying without written permission

Original Problem:How to share data?

2) How to share data between programs and PC’s?

1) How to share data from equipment like PLC’s?

SoftwareApplication

SoftwareApplication

SoftwareApplication

SoftwareApplication

Page 4: Understanding OPC: Basic Overview - Software Toolboxftp.softwaretoolbox.com/demodnld/webexes/opcbasics/OPC_Basics... · Ethernet, RS232, RS485, Radio etc. PLC / Device Allen-Bradley,

Content is Copyright Software Toolbox, 2008 No re-use or copying without written permission

Connectivity means….

Enterprise ApplicationAccessing plant-floor data

Transport LayerEthernet, RS232, RS485, Radio etc.

PLC / DeviceAllen-Bradley, Siemens, GE, Modbus, Automation Direct etc.

User Interfacedisplaying plant-floor data

Page 5: Understanding OPC: Basic Overview - Software Toolboxftp.softwaretoolbox.com/demodnld/webexes/opcbasics/OPC_Basics... · Ethernet, RS232, RS485, Radio etc. PLC / Device Allen-Bradley,

Content is Copyright Software Toolbox, 2008 No re-use or copying without written permission

Original Solution

Vendor A HMI / SCADA

ModbusDriver

DF1Driver

OtherDriver

Vendor B HMI / SCADA

ModbusDriver

DF1Driver

OtherDriver

Each vendor has implemented their

own Protocol driver.

Each vendor has implemented their

own Protocol driver.

Inconsistent implementations, i.e.

features supported and reliability

Inconsistent implementations, i.e.

features supported and reliability

1) How to share data from equipment like PLC’s?

Page 6: Understanding OPC: Basic Overview - Software Toolboxftp.softwaretoolbox.com/demodnld/webexes/opcbasics/OPC_Basics... · Ethernet, RS232, RS485, Radio etc. PLC / Device Allen-Bradley,

Content is Copyright Software Toolbox, 2008 No re-use or copying without written permission

Original Problem

Data inaccessible to other systemsSelf-customization limitations, or inabilityExpensive customizations often requiredData sharing via *.CSV import/export

HMI/SCADAApplication

EnterpriseSystem

Modbus / DF1 etc.

OtherApplication

Unsupported

2) How to share data between programs and PC’s?

Page 7: Understanding OPC: Basic Overview - Software Toolboxftp.softwaretoolbox.com/demodnld/webexes/opcbasics/OPC_Basics... · Ethernet, RS232, RS485, Radio etc. PLC / Device Allen-Bradley,

Content is Copyright Software Toolbox, 2008 No re-use or copying without written permission

First Solution, DDE

HMI / SCADAApplication

DDE Server(Protocol Converter)

DDE Server(Protocol Converter)

PLC

Protocol drivers were no longer within HMIDDE Server contains protocol definitionHMI connected using DDE TopicsHMI tells DDE Server “read this”, “write that”DDE Server responsible for all I/ODifferent HMIs can connect to a DDE ServerSome Data sharing possible

Page 8: Understanding OPC: Basic Overview - Software Toolboxftp.softwaretoolbox.com/demodnld/webexes/opcbasics/OPC_Basics... · Ethernet, RS232, RS485, Radio etc. PLC / Device Allen-Bradley,

Content is Copyright Software Toolbox, 2008 No re-use or copying without written permission

DDE, Scalable Solution?

Different systems can connect to a DDE ServerAccessible over the Network using NetDDEAdd more DDE Servers

More device supportLoad distribution

Page 9: Understanding OPC: Basic Overview - Software Toolboxftp.softwaretoolbox.com/demodnld/webexes/opcbasics/OPC_Basics... · Ethernet, RS232, RS485, Radio etc. PLC / Device Allen-Bradley,

Content is Copyright Software Toolbox, 2008 No re-use or copying without written permission

DDE, Good Solution?

Decoupled HMI from Protocol driversDDE Server market emergedMore “driver” choiceHMI vendors could focus on their core productAccessible to Any DDE Application

Performance issuesNetDDE reliabilityNo Standards on tag databaseNo Browsing!No quality informationNo Client control of Poll ratesNo timestampNo securityNot easy for network configuration and usageLimited number of client/topic connections

Page 10: Understanding OPC: Basic Overview - Software Toolboxftp.softwaretoolbox.com/demodnld/webexes/opcbasics/OPC_Basics... · Ethernet, RS232, RS485, Radio etc. PLC / Device Allen-Bradley,

Content is Copyright Software Toolbox, 2008 No re-use or copying without written permission

A Standard Was Needed!

Software to Software interface (Problem 2)Keep Client/Server model used with DDEBetter performance neededSecurity neededNeeded to support more sophisticated data types (variants and structures etc.)Needed to be more scalableInternet capableA more “future-proof” framework was needed

Page 11: Understanding OPC: Basic Overview - Software Toolboxftp.softwaretoolbox.com/demodnld/webexes/opcbasics/OPC_Basics... · Ethernet, RS232, RS485, Radio etc. PLC / Device Allen-Bradley,

Content is Copyright Software Toolbox, 2008 No re-use or copying without written permission

OPC, the new Standard

OPEN Standards basedThe OPC Foundation controls the standardsAutomation Industry OrganizationNot controlled by any one company – managed by board of directors elected by the membershipVolunteer effortCreated 1996 – by 6 founding membersCompanies from all over the globeSoftware Toolbox - a charter member, joining in the foundation’s first year

Page 12: Understanding OPC: Basic Overview - Software Toolboxftp.softwaretoolbox.com/demodnld/webexes/opcbasics/OPC_Basics... · Ethernet, RS232, RS485, Radio etc. PLC / Device Allen-Bradley,

Content is Copyright Software Toolbox, 2008 No re-use or copying without written permission

OPC, the Promise

Industrial Automation FocusTimestamp supportQuality flags – Ensuring Data IntegrityInteroperability: Testing & CertificationClient/Server architectureScalable solutionFlexible means of data accessEasy for end-usersSecurity using Microsoft standards

Page 13: Understanding OPC: Basic Overview - Software Toolboxftp.softwaretoolbox.com/demodnld/webexes/opcbasics/OPC_Basics... · Ethernet, RS232, RS485, Radio etc. PLC / Device Allen-Bradley,

Content is Copyright Software Toolbox, 2008 No re-use or copying without written permission

OPC Solution, Similar to DDE, but better

HMI / SCADAApplication

OPC Server(Protocol Converter)

OPC Server(Protocol Converter)

PLC/other Equipment

Same client/server architectureOPC Server contains protocol definitionTag Database clearly definedHMI makes OPC calls to tell the Server saying “read this”, “write that” and how oftenPerformance gainsQuality and timestamp information now accessibleEasy configuration for the end-user.

Page 14: Understanding OPC: Basic Overview - Software Toolboxftp.softwaretoolbox.com/demodnld/webexes/opcbasics/OPC_Basics... · Ethernet, RS232, RS485, Radio etc. PLC / Device Allen-Bradley,

Content is Copyright Software Toolbox, 2008 No re-use or copying without written permission

OPC Solution

• Standard software to software interface

• One connection: OPC

• Communications infrastructure decoupled from the HMI/SCADA

• Microsoft Security

• Improves performance

• Flexibility

• Choices

HMI/SCADA OPC Clients

OPCServer A

OPCServer B

OPCServer C

Page 15: Understanding OPC: Basic Overview - Software Toolboxftp.softwaretoolbox.com/demodnld/webexes/opcbasics/OPC_Basics... · Ethernet, RS232, RS485, Radio etc. PLC / Device Allen-Bradley,

Content is Copyright Software Toolbox, 2008 No re-use or copying without written permission

Dev1.Tag14001

Dev1.Tag24001

Dev2.Tag1obj1.prop.val

Dev2.Tag2obj2.prop.val

What’s in a Tag/Item?

OPC Server exposes PLC memory addresses as “Tags”Tags are a friendly name, that maps to a memory register in the PLC.Decouples the OPC Client from the underlying Device Protocol and Memory Register knowledge.

OPC Server

Modbus / DF1 etc. BACNet, Profibus etc.

PLC specific addresses

PLC specific addresses

OPC Client

Page 16: Understanding OPC: Basic Overview - Software Toolboxftp.softwaretoolbox.com/demodnld/webexes/opcbasics/OPC_Basics... · Ethernet, RS232, RS485, Radio etc. PLC / Device Allen-Bradley,

Content is Copyright Software Toolbox, 2008 No re-use or copying without written permission

OPC – Data Access Capabilities

Browse computer for available OPC ServersBrowse the server for available TagsRead 1..x Tags in a single callWrite 1..x Tags in a single callSubscribe to Tags and receive updates when their value(s) change.

Page 17: Understanding OPC: Basic Overview - Software Toolboxftp.softwaretoolbox.com/demodnld/webexes/opcbasics/OPC_Basics... · Ethernet, RS232, RS485, Radio etc. PLC / Device Allen-Bradley,

Content is Copyright Software Toolbox, 2008 No re-use or copying without written permission

OPC DA, Data Acquisition

Synchronous I/OBlocking callGood for round-robin polling-type applications

Asynchronous I/OFaster method, compared to Synchronous

Development requires different way of thinking

Different LocationsCache

Device

OPCClient

OPCServer

Read these 1…x Tag(s) one time, and I will wait for

the response

Read these 1…x Tag(s) one time, and I will wait for

the response

Read these 1…x Tag(s) one time, TELL ME when you have results

Read these 1…x Tag(s) one time, TELL ME when you have results

Page 18: Understanding OPC: Basic Overview - Software Toolboxftp.softwaretoolbox.com/demodnld/webexes/opcbasics/OPC_Basics... · Ethernet, RS232, RS485, Radio etc. PLC / Device Allen-Bradley,

Content is Copyright Software Toolbox, 2008 No re-use or copying without written permission

OPC DA, Data Acquisition

Subscriptions offer best optimizationOPC client requests a subscriptionOPC Server does the pollingOPC Server sends change notifications to the client

OPCClient

OPCServer

These tags have changed values….

These tags have changed values….

Page 19: Understanding OPC: Basic Overview - Software Toolboxftp.softwaretoolbox.com/demodnld/webexes/opcbasics/OPC_Basics... · Ethernet, RS232, RS485, Radio etc. PLC / Device Allen-Bradley,

Content is Copyright Software Toolbox, 2008 No re-use or copying without written permission

OPC Quality Codes

Specifies if the Tag value is something you can trust or not.16-bit Bitmask of values (low 8 bits):

0 = Bad (00000000)64 = Uncertain (01000000)128 = Reserved (10000000)192 = Good (1100000)

High word is reserved for Vendor use.

Page 20: Understanding OPC: Basic Overview - Software Toolboxftp.softwaretoolbox.com/demodnld/webexes/opcbasics/OPC_Basics... · Ethernet, RS232, RS485, Radio etc. PLC / Device Allen-Bradley,

Content is Copyright Software Toolbox, 2008 No re-use or copying without written permission

OPC, How does it Work?

OPC Client connects to an OPC Server.Client adds a “Group”.Client adds “Tags” to Group.The poll-rate is set in the Group.You can add multiple Groups.

•Any OPC Client•HMI/SCADA•Custom Application

OPC

OPC ServerOPC Group

OPC Item

OPC Item

OPC Item

OPC Group

OPC Item

OPC Item

Hardware specific networks and protocols

Page 21: Understanding OPC: Basic Overview - Software Toolboxftp.softwaretoolbox.com/demodnld/webexes/opcbasics/OPC_Basics... · Ethernet, RS232, RS485, Radio etc. PLC / Device Allen-Bradley,

Content is Copyright Software Toolbox, 2008 No re-use or copying without written permission

Defined as the OPC Server

Defined as the OPC

Client

Client/Server and OPC DA

The Client Consumes data services

The Server Provides data services

COM is the Middle Man

OPC Servers and Clients in most cases are separate programs now

OPC Servers only act on commands from an OPC Client

HumanMachineInterface

Communications

Drivers

Ethernet

Ethernet/IP

Modbus RTUOPC DA

Client Side

OPC DA

Server Side

Microsoft COM

Page 22: Understanding OPC: Basic Overview - Software Toolboxftp.softwaretoolbox.com/demodnld/webexes/opcbasics/OPC_Basics... · Ethernet, RS232, RS485, Radio etc. PLC / Device Allen-Bradley,

Content is Copyright Software Toolbox, 2008 No re-use or copying without written permission

OPC, Dependent upon COM

An OPC Client connects to an OPC Server through COM

An OPC Client connecting to an OPC Server on a different machine connects through DCOM and must be authenticated.

PC – 1 OPC Client

COM run-time

Security Provider

OPC Client

PC – 1 OPC Client

COM run-time

Security Provider

OPC Client

I want to connect to you

I want to connect to you

Tell me your login name and

password!My user name is “fred” and password is

“*****”

My user name is “fred” and password is

“*****”

Let me check my Access Control

List….Yes, you are on my list… I will

grant you access!

Page 23: Understanding OPC: Basic Overview - Software Toolboxftp.softwaretoolbox.com/demodnld/webexes/opcbasics/OPC_Basics... · Ethernet, RS232, RS485, Radio etc. PLC / Device Allen-Bradley,

Content is Copyright Software Toolbox, 2008 No re-use or copying without written permission

OPC DA, Scalable Architecture

A server can support multiple Clients, concurrentlyMany servers can exist on the networkAttach OPC Systems to other OPC Systems

OPC Server

OPC ClientDatabase Logging

OPC ClientVisualization &Alarming etc.

OPC Client/OPC Server

OPC Server

HMI/SCADAApplication

EnterpriseSystem

OtherApplication

Page 24: Understanding OPC: Basic Overview - Software Toolboxftp.softwaretoolbox.com/demodnld/webexes/opcbasics/OPC_Basics... · Ethernet, RS232, RS485, Radio etc. PLC / Device Allen-Bradley,

Content is Copyright Software Toolbox, 2008 No re-use or copying without written permission

Answers to common Questions

Can I use OPC across different Domains?Does re-configuring DCOM open security holes on my computer? Does a Tunneller help get OPC data through a firewall and over the internet?How do I know if my PLC/Device is offline?Can OPC work on Linux?Is OPC DA still valid now OPC UA is coming?How much data can an OPC Server transfer?Can OPC Servers run as Windows Services?

Page 25: Understanding OPC: Basic Overview - Software Toolboxftp.softwaretoolbox.com/demodnld/webexes/opcbasics/OPC_Basics... · Ethernet, RS232, RS485, Radio etc. PLC / Device Allen-Bradley,

Content is Copyright Software Toolbox, 2008 No re-use or copying without written permission

OPC, more than 1 standard

OPC Data Access (DA)OPC Historical Data Access (HDA)OPC Alarms & Events (A&E)OPC XML Data Access (XMLDA)OPC Data Exchange (DX)OPC Complex DataOPC CommandsOPC Security

Page 26: Understanding OPC: Basic Overview - Software Toolboxftp.softwaretoolbox.com/demodnld/webexes/opcbasics/OPC_Basics... · Ethernet, RS232, RS485, Radio etc. PLC / Device Allen-Bradley,

Content is Copyright Software Toolbox, 2008 No re-use or copying without written permission

OPC Provides Industry-Standard interOperability Performance & Connectivity

BatchBatch

OPC OPC

Manufacturing, Production and MaintenanceManufacturing, Production and Maintenance

OP

C(D

CO

M)

OP

C(D

CO

M)

Adv.Adv.ControlControl

OP

C (D

CO

M)

OP

C (D

CO

M)

HMIHMI SCADASCADA

PCPC--Based ControlBased Control

MESMES

OPC(DCOM)OPC(DCOM)

OPC(DCOM)OPC(DCOM)

Industrial NetworksIndustrial Networks DataAcquisition

DataAcquisition

PLCDCS

PLCDCS Other…. (DB, SQLOther…. (DB, SQL

ERP, SAP ERP, SAP …… Corporate EnterpriseCorporate Enterprise

OPCOPC

Page 27: Understanding OPC: Basic Overview - Software Toolboxftp.softwaretoolbox.com/demodnld/webexes/opcbasics/OPC_Basics... · Ethernet, RS232, RS485, Radio etc. PLC / Device Allen-Bradley,

Content is Copyright Software Toolbox, 2008 No re-use or copying without written permission

OPC, Quality Assurance!

OPC Compliance TestingInteroperability Testing

Annual eventVendors attend with source code

OPC Self-CertificationIndependent Test Lab Certification

Learn more about OPC Certification:http://www.opcfoundation.org/Certification.aspx

Page 28: Understanding OPC: Basic Overview - Software Toolboxftp.softwaretoolbox.com/demodnld/webexes/opcbasics/OPC_Basics... · Ethernet, RS232, RS485, Radio etc. PLC / Device Allen-Bradley,

Content is Copyright Software Toolbox, 2008 No re-use or copying without written permission

Future Direction

OPC UASingle, abstract set of objectsBackward compatible with all existing OPC standardsService Oriented Architecture (SOA)Embeddable, within a PLC/DeviceSecurity and encryption built-inDesigned to take plant-floor data to the Enterprise.

Page 29: Understanding OPC: Basic Overview - Software Toolboxftp.softwaretoolbox.com/demodnld/webexes/opcbasics/OPC_Basics... · Ethernet, RS232, RS485, Radio etc. PLC / Device Allen-Bradley,

Content is Copyright Software Toolbox, 2008 No re-use or copying without written permission

What Does OPC UA Mean for OPC DA?

SCADASCADAHMI

Visualization

HMI

Visualization

Asset

Management

Asset

ManagementPurchasingPurchasing

ProductionManagement Systems

ProductionManagement Systems

Inventory

Management

Inventory

ManagementProduction

Control

ProductionControl

TheAutomationparadigm

TheAutomationparadigm

The Enterpriseparadigm

The Enterpriseparadigm

DA, HDA, A&E

UA

UA Doesn’t Replace

OPC DA/HDA/A&E

It Complements Them!

UA Doesn’t Replace

OPC DA/HDA/A&E

It Complements Them!

Page 30: Understanding OPC: Basic Overview - Software Toolboxftp.softwaretoolbox.com/demodnld/webexes/opcbasics/OPC_Basics... · Ethernet, RS232, RS485, Radio etc. PLC / Device Allen-Bradley,

Content is Copyright Software Toolbox, 2008 No re-use or copying without written permission

Want to learn more?“Using OPC” Webinars

Using OPC DA Applications:www.softwaretoolbox.com/opcdawebinar

Building OPC Applications inVisual Studio.NETwww.softwaretoolbox.com/opcvsnetwebinar

Page 31: Understanding OPC: Basic Overview - Software Toolboxftp.softwaretoolbox.com/demodnld/webexes/opcbasics/OPC_Basics... · Ethernet, RS232, RS485, Radio etc. PLC / Device Allen-Bradley,

Content is Copyright Software Toolbox, 2008 No re-use or copying without written permission

More Information

Questions:

… get through to an expert!Visit www.softwaretoolbox.com/webinars for future events

Nathan Pocock:Email: [email protected]

Tel: +1 (704) 708-6482

Colin WinchesterEmail: [email protected]

Tel: 704-849-2773 x1327

Technical Support:Tel: +1 (704) 849-2773

Web: http://support.softwaretoolbox.com

Page 32: Understanding OPC: Basic Overview - Software Toolboxftp.softwaretoolbox.com/demodnld/webexes/opcbasics/OPC_Basics... · Ethernet, RS232, RS485, Radio etc. PLC / Device Allen-Bradley,

Content is Copyright Software Toolbox, 2008 No re-use or copying without written permission

Some Terminology

HMI – Human Machine InterfaceSCADA – Supervisory Control & Data AcquisitionDDE – Dynamic Data Exchange – a method of software to software data exchange created in 1988 by Microsoft in Windows 2.0. OPC

OLE for Process Control (circa 1996)Openness, Productivity, ConnectivityToday, the acronym underlying words is meaningless – OPC a standardized technology is for open software connectivity in industrial automation

COM – Component Object Model – circa mid 90’s Microsoft term for the way Windows software parts talk to each other under the hoodDCOM – Distributed COM – same concept but allowing software parts on different computers to talk to each other

Page 33: Understanding OPC: Basic Overview - Software Toolboxftp.softwaretoolbox.com/demodnld/webexes/opcbasics/OPC_Basics... · Ethernet, RS232, RS485, Radio etc. PLC / Device Allen-Bradley,

Content is Copyright Software Toolbox, 2008 No re-use or copying without written permission

More Terminology

PLC – Programmable Logic Controller – hardware used to control many industrial processes and machineryDCS – Distributed Control System – used for same purposes as a PLC, but highly optimized for process control, i.e. chemicals, oil/gas, food/beverage, pharmaceuticalRTU – Remote Terminal Unit – traditionally proprietary hardware –today PLCs can be used for RTU’s – any device put in a remote location that controls and/or gathers data for collection at a central host – usually a SCADA systemProtocol – as set of defined instructions or commands used to exchange data with a device over a serial or Ethernet connectionRegister – a memory location in a PLC or DCS. To some a register is a 16 bit word of data. Often used generically to refer to a memory location in any type of device you are exchanging data withTag, or Item – a single unit of data – can be digital or analog values, in some cases can even be arrays of digital or analog values