和利时OPC基础应用知识.ppt

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

13 2019/4/3
OPC Group对象接口
IUnknown IOPCItemMgt IOPCGroupStateMgt [IOPCPublicGroupStateMgt] IOPCSyncIO IOPCAsyncIO IDataObject IOPCItemMgtDisp IOPCGroupStateMgtDisp [IOPCPublicGroupStateMgtDisp] IOPCSyncIODisp IOPCAsyncIODisp
16 2019/4/3
OPC的访问方式-订阅方式
事件发生 事件处理结束 事件发生
事件结束 OPC应用程序 通知 时间
其他处理
通知
数据变化事件
数据变化事件
OPC服务器 时间
1、服务器定时更新OPC服务器的数据缓冲区。如果数据超出敏感区DeadBand则 发生数据变化事件! 2、降低数据精度!
17 2019/4/3
Plant Highway
Plant Highway Process Management
Controller
Fieldbus
Measurement -Pressure Valves -Temp Positioners -Flow -Level
Fisher
Coriolis
Analytical PD Meters Common Head -Simple -Analog I/O Handheld Configuration and PDA -Complex -Discrete I/O Maintenance -TC/RTD
开发OPC应用程序的几种模式
第三方HMI软件 自动化接口(VB、Delphi、Pb、Bc)

– 第三方提供的RDK

定制接口(VC)FacView支持
– OPC.H文件 – OPC_I.C文件
1、对于OPC服务器而言,其应该提供定制接口,自动化接口则可选 2、FacView中的OPCServer只支持定制接口
Standard OPC Server Object
IOPCServerDisp [IOPCServerPublicGroupsDisp] [IOPCServerBrowseServerAddressSpaceDisp]
1、开发者必须完成非选项的接口实现! 2、OPC标准仅仅提供接口的定义! 3、客户端调用这些接口完成与OPC Server的连接!
OPC Custom I/F
Server Data Cache Local Data Cache
I/O
Physical Device Device Data
12 2019/4/3
OPC Server对象接口
IUnknown
IOPCServer [IOPCServerPublicGroups] [IOPCServerBrowseServerAddressSpace] [IPersistFile]
Field Management
4 2019/4/3
OPC的基本定义
监视应用程序 趋势应用程序 报表应用程序
驱动器A 设备A
驱动器B 设备B
驱动器C 设备C
驱动器D 设备D
1、各设备厂商接口不统一,则应用开发花费多 2、系统共存驱动太多,导致系统维护困难。
5 2019/4/3
OPC的基本定义
监视应用程序 OPC 趋势应用程序 OPC 报表应用程序 OPC
本地访问
OPC服务器
远程访问
11 2019/4/3
OPC的体系结构
C++ Application OPC Custom I/F Local or Remote OPC Server (Shared by many clients)
OPC Handler VB Application OPC Automation I/F
说明
必须生成opcserver。其自动包含一个opc组集合 以及opc浏览器对象 OPC服务器中添加的所有OPC组的集合 OPC组对象是用于组的状态管理以及利用项集 合为单位的数据访问。 在对应OPC组中添加的所有的OPC项的集合 含有项的定义,当前值,状态以及最后更新时 间信息的对象。
19 2019/4/3
20 2019/4/3
VB开发OPC应用程序的基本步骤
连接OPC服务器和建立OPC组 添加OPC标签 同步读写数据 断开OPC服务器连接

21 2019/4/3
连接OPC服务器和建立OPC组
变量声明
Option Explicit Option Base 1 'opc对象的申明 Dim WithEvents MyOPCServer As OPCServer Dim MyOPCGroups As OPCGroups Dim MyOPCTestgrp As OPCGroup Dim MyOPCItems As OPCItems Dim MyOPCItem As OPCItem Dim iServerhandles() As Long Dim MyOPCBrowse As OPCBrowser Const strProgID = "OPCJ.SAMPLESERVER.1" Const strNode = “xionghui”
22 2019/4/3
连接OPC服务器和建立OPC组
Private Sub Command1_Click() If MyOPCServer Is Nothing Then Set MyOPCServer = New OPCServer End If If MyOPCServer.ServerState = OPCDisconnected Then MyOPCServer.Connect strProgID, strNode End If If MyOPCGroups Is Nothing Then Set MyOPCGroups = MyOPCServer.OPCGroups End If If MyOPCTestgrp Is Nothing Then Set MyOPCTestgrp = MyOPCGroups.Add("TESTGRP") End If End Sub
OPC数据访问对象模型
服务器(OPC Server)
组集合(OPC Groups)
浏览器(OPC Browser)
1、组织管理项 2、客户据此决定刷新时间 3、激活/禁止OPC 4、分为PUBLIC和LOCAL 。 1、代表和数据源的连接关系/DCS点在 OPC SERVER中的地址。 2、必须通过OPC Group进行访问 3、其数据类型为VARIANT 4、一般包括Value、TimeStamp、Quality
23 2019/4/3
添加OPC标签
Private Sub Command2_Click() Dim stritemids(8) As String Dim iclienthandles(8) As Long Dim ierror() As Long Dim i As Integer If MyOPCTestgrp Is Nothing Then Exit Sub End If If Not MyOPCItems Is Nothing Then If MyOPCItems.Count > 0 Then Exit Sub End If End If MyOPCTestgrp.IsSubscribed = False MyOPCTestgrp.IsActive = True Set MyOPCItems = MyOPCTestgrp.OPCItems For i = 1 To 8 strItemids(i) = "MyTAG" & i iClienthandles(i) = i Next Call MyOPCItems.AddItems(8, strItemids, iClienthandles, iServerhandles, ierror) 24 2019/4/3 End Sub

2 2019/4/3
词汇
OPC:OLE For Process Control FA:Factory Automation PA:Process Automation COM:Component Object Model DCOM:Distributeed Component Object Model DDE:Dynamic Data Exchange DLL:Dynamic Link Library
OPC 设备A
OPC 设备B
OPC 设备C
OPC
设备D
1、OPC是为了不同供应厂商的设备和应用程序之间的软件接口标准化,使其数据交换 更加简单化的目的而提出的;从而可以向用户提供不依靠于特定开发语言和开发环境的 可以任意组合使用的过程控制软件组件产品。 2、OPC系统是由提供数据采集服务的OPC服务器、OPC接口,以及OPC应用程序所构成。 3、OPC服务器按照硬件厂商提供的硬件所开发,使之不依赖于硬件产品;同时利用 VARIANT数据类型,可以不依存于硬件要求的数据类型
10 2019/4/3
OPC的概要--组成
OPC应用程序 OPC自动化接口 包装DLL OPC定制接口 OPC应用程序 OPC自动化接口 包装DLL OPC定制接口
代理-占位DLL
计算机过程边界 代理-占位DLL OPC定制接口
代理-占位DLL
计算机过程边界 代理-占位DLL OPC定制接口
OPC服务器
员工内部培训系列之三
OPC基础应用知识
主讲人:熊辉
2019/4/3
工业自动化事业部SmartPro技术支持组
1
概述
OPC的基本定义 OPC的概要 OPC的数据访问对象模型 自动化接口开发OPC应用程序的基本步骤 RDK开发OPC服务器的基本步骤 OPC的配置 OPC在SmartPro系统中的应用组态
15 2019/4/3
OPC的访问方式-异步访问
调用开始 调用结束 事件发生
事件结束 OPC应用程序 其他处理 通信 时间
调用异步访问方法
异步访问完成事件
OPC服务器
时间
1、读取/写入指定OPC标签,应用程序发出更新请求后立即返回,更新数据完成后发生 数据变化事件! 2、发出请求与访问完成事件处理是独立完成,因此需要使用事务管理,开发较难!
1.0 1.0 1.0
报警和事件标准
历史数据访问
Historical Data Access 1.0
批处理标准 安全标准
8 2Байду номын сангаас19/4/3
OPC使用范围
HMI/SCADA OPC应用程序
历史数据库 批处理 OPC应用程序
OPC服务器
OPC服务器
OPC服务器
OPC服务器
PLC
设备A
设备B 设备C 设备D
6 2019/4/3
OPC的基本定义

基于COM技术的OPC
– COM是一种软件组件之间相互数据交换的有效方法。它不是一种计算机语 言,而是于运行计算机、操作系统以及软件开发语言无关的,任意软件组 件之间可以相互通信的二进制和网络通信标准 – DCOM:可以使COM组件分布在不同计算机上,并通过网络互相连接并互 相交换数据。
9 2019/4/3
1、与现场I/O数据的连接;2、与应用程序之间的连接
OPC的概要--组成


OPC服务器:由硬件提供商或独立软件供应商提供, 主要是提供过程数据。 OPC代理-占位DLL:利用操作系统提供的通信功能进 行数据交换,以实现应用程序和服务器之间的格式变 换。 OPC自动化包装DLL:将OPC定制接口变换成OPC自 动化接口,从而更方便地实现对OPC服务器的访问。 OPC应用程序:对OPC服务器提供的数据源进行访问, 实现用户特定目的而开发的应用程序。
Standard OPC Group Object
14 2019/4/3
OPC的访问方式-同步访问
调用开始
调用结束 时间
等待状态
OPC应用程序
调用同步访问方法
OPC服务器 时间
1、读取指定OPC标签,应用程序一直等待到读取完成为止! 2、写入指定OPC标签,应用程序一直等待到写入完成为止! 3、开发简单,但是大批量数据处理则访问性能影响大!

3 2019/4/3
OPC的基本定义
Windows 3.1 Windows-95 Windows NT Client Applications
Business Management
Windows NT Operator Console RT/History Data Server Windows NT Operator Console Windows NT RT/History Data Server

作为工业标准定义的COM接口
优点: 1、设备开发者:使设备驱动器开发唯一 2、应用程序开发:使用通用工具,不必开发特定的接口。 3、用户:可以自由选择各种商业软件包,使系统成本大大 降低
7 2019/4/3
OPC标准
标准
Data Access
版本
1.0、2.0
内容
数据访问标准
Alarm and Event Batch Security
201431331没有分布式没有分布式comcom安全机制的设置安全机制的设置计算机分布式com设置推荐值opc服务器opc服务器身份认证级别无启动权限everyone201431332访问权限everyone身份标志交互式或指定式opc客户机默认身份级别无具有分布式具有分布式comcom安全机制的设置安全机制的设置计算机分布式com设置推荐值opc服务器opc服务器身份认证级别连接启动权限特定用户201431333访问权限与启动权限相同身份标志交互式或指定式opc客户机默认身份级别无comcom配置实用程序配置实用程序?具有计算机管理员权限的用户登录?从菜单开始运行输入dcomcnfgexe确定后启动即可
OPC Group OPC Group 组 (OPC Group)
项集合(OPC Items)
OPC Item OPC Item 项(OPC Item)
18 2019/4/3
OPC数据访问对象模型
名称
OPC服务器 OPC组集合 OPC组 OPC项集合 OPC项
对象名
OPCServer OPCroups OPCGroup OPCItems OPCItem
相关文档
最新文档