ModbusTCP的OPC服务器设计.docx
《ModbusTCP的OPC服务器设计.docx》由会员分享,可在线阅读,更多相关《ModbusTCP的OPC服务器设计.docx(8页珍藏版)》请在三一办公上搜索。
1、-基于Modbus TCP的OPC服务器设计由于目前广泛应用的DCS、FCS、SCADA 等传统计算机测控系统使用的智能仪表设备、分布式IO模块、PLC 等设备来自于不同的生产商,而各生产商为了各自的商业利益,没有遵循统一的接口规*,造成了设备之间的通信异常复杂,难以实现现场设备与上层控制软件间的信息交互和各现场设备间的直接互联与互操作,因此限制了计算机测控系统开放性、通用性的提高。OPC(OLE for Process Control,用于过程控制的对象和嵌入)技术为解决工业客户机与各种设备间通讯而产生的一项工业技术规*和标准。OPC 技术规*是OPC 基金会制定的,它提供了统一的数据访问软
2、硬件接口,将现场信号按照统一的标准与SCADA(监控与数据采集系统),HMI(人机接口)等软件无缝连接起来,同时将硬件和应用软件有效地分离开。只要硬件开发商提供带有OPC接口的服务器,任何支持OPC接口的客户程序均可采用统一的方式对不同硬件厂商的设备进行存取,无须重复开发驱动程序,因此大大提高了控制系统的互操作性和适应性。OPC技术1OPC核心基础主要是为了实现软件复用和互操作,并且为基于Windows的应用程序提供统一的、可扩展的、面向对象的通讯标准,D是技术在分布式计算领域的扩展,支持在局域网、广域网甚至因特网上不同计算机的对象之间的通讯。OPC技术是在工业领域的一种特殊应用,实质上,OP
3、C规*就是定义了一些用于数据访问、事件报警处理、历史数据访问等的对象和接口。2OPC DA规*OPC DA规*是整个OPC协议族中的核心和基础,所有的其他OPC规*都以OPC DA规*为基础进行扩展而来。对于高敏感度的实时数据,将其从实时数据中分离,提出报警/事件的概念,制定了专门的OPC报警事件(OPC Alarm and Events)接口规*;对于面向趋势显示、历史分析、报表的数据,OPC制定了历史数据访问(OPC Historical Data Access)接口规*。其他的OPC规*还包括OPC安全处理(OPC Security)接口规*、OPC批处理(OPC Batch)接口规*,
4、OPC *ML数据访问(OPC *MLDA)规*,OPC数据交换(OPC Data E*change)规*等。在过程控制系统的架构中,整个系统以OPC DA服务器为中心,OPC AE服务器从OPC DA服务器上得到实时数据,并根据客户的设置进行逻辑分析,产生相应的事件和报警信息发送到客户端;OPC HAD服务器将从OPC DA服务器上获得的实时数据按照客户要求进行保存,便于客户端进行查询和分析数据的变化情况;OPC D*服务器将多个OPC DA服务器的数据组织起来,根据需要进行各个OPC DA服务器之间的数据交换:*ML DA服务器将OPC DA服务器上的数据转换成*ML文本,并发布到互联网上
5、,实现数据更大*围内的共享;OPC Security服务器则对整个数据层的数据加上了一层安全保护。实际应用中也主要是以OPC DA规*、OPC AE规*和OPC HDA规*应用最为广泛,尤其是OPC DA规*。因此通常提到的OPC服务器和客户端都是指OPC DA服务器和OPC DA客户端。Modbus TCP OPC服务器的设计与实现1. 总体结构本文实现的OPC数据访问服务器要完成对Modbus设备的数据采集功能,提供OPC数据存取规定的定制接口,同时通过数据存取区将设备数据与OPC接口联系来。如图1所示的OPC数据存取服务器总体结构,各个功能模块相对独立又相互协作,形成了一个有机整体。图1
6、:OPC数据存取服务器总体结构。本文设计的OPC数据存取服务器拥有独立的进程空间,与客户进行数据交换时稳定性高,同时提供了用户友好的人机界面,便于用户的自定义组态操作;硬件设备通讯模块实现了标准的MdbusTCP通讯协议,可以实现与标准的ModbusTCP设备无缝互联通信,简单方便地获取硬件设备的过程数据。2. OPC接口模块OPC接口模块包括OPC对象部分和数据存储区部分,基于组件化的设计思想,可以设计成将和OPC技术细节隐藏,使得用户将开发OPC数据采集服务器的工作集中在特定的数据采集任务上。本文采用了OPCMaster的OM_OPCSvr.dll OPC接口动态库工具来实现OPC接口模块
7、部分,OM_OPCSvr.dll完全支持OPC数据存取规*的所有版本,包括最新的DA 3.0版,它通过提供API函数完成OPC接口模块的任务。其结构如图2红色虚线所示。图2:OPCMaster OPC接口动态库工具结构。OPC服务器初始化管理:通过调用InitOPCSvr(byte *pSvrCLSID,bool bE*eSvr,DWord dwCoInit)来对的OPC服务器的CLSID、程序应用模型和初始化库的线程模式进行初始化设置。通过调用SetServerRate(DWord dwServerRate)设置OPC服务器端向客户端最快回调速率。通过调用SetVendorInfo(LPCW
8、STR lpVendorInfo, WORD wMajorVersion, WORD wMinorVersion, WORD wBuildNumber)设置Vendor及OPC服务器版本信息。通过调用SetServerDelimiter(WCHAR cDelimiter)设置服务器标签ID的分隔符,在这里我们设置cDelimiter为”.”。通过调用SetCaseSensitivity(BOOL bOnOff = FALSE)设置OPC服务器端地址空间是否区分大小写,在这里我们设置bOnOff=True,即区分地址空间大小写。OPC回调数据通信管理:在这里主要设置三个回调函数,分别是读设备数据



- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- ModbusTCP OPC 服务器 设计

链接地址:https://www.31ppt.com/p-1119130.html