




已阅读5页,还剩3页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
数据采集服务器设计计算机应用computerapplications自动化技术与应用20l0年第29卷第5期数据采集服务器设计李金波.陈庆文(黑龙江省科学院自动化研究所,黑龙江哈尔滨150090)摘要:本义利用olc技术进行数据采集服务器的没计.评介绍数据采集服务器实现方法,闸述_f】otc设汁系统的点.简述ri/odii的肝发.小文的数据采集驽对电能表没计的.关键词:opc;服筹器;电能表中圈分类d:tp274.2文献标码:bl殳章编号:1003724l(2010)05003905designmentandimplementationofpowermeterdataacquisitionserverlijin-bo,chenqingwen.(heilongjiangacodemyofsciences,haerbin150090china)abstract:opcservertechnologyfordataacquisitioninthedesign,andintroducedthemethodofdatacollectionserverontheopcdesignwiththeadvantageofthesystem,outlinesthei0dlldevelopment.inthispaper,thedataacquisitionserverforenergymeterdesign.keywords:opc;servers;energymeter1引言数据采集系统软件通过i/o驱动程序从现场i/o设备获得实时数据,对数据进行必要的处理后,一方面以图形方式直观地显示在计算机屏幕上,另一方面按照组态要求和操作人员的指令将控制数据送给i/o设备,对执行机构实施控制或调整控制参数.但是,数据采集系统软件存在一个严重的制约因素,即现场设备与应用软件之间难以实现开放的,无缝隙的连接.即针对同一个硬件设备,每个应用软件都要根据自己的需求开发一套硬件驱动程序.这不仅加大了开发和维护费用,而且带来了访问冲突问题.opc技术将各个硬件设备驱动程序和通信程序封装成独立的opc服务器,上层应用软件可以不关心硬件的性能特点,而通过标准的opc接口访问opc服务器.这样不仅解决了上述问题,而且实现了软件的”即插即用”.opc相当于一块软件”主板”,它能够直接与现场收稿日期:20100329的plc,工业网络,数据采集和windowsce设备连接,快速有效地获取现场实时数据.pc机内的各种监视,控制和管理等应用软件则像是插在opc主板上的软件”芯片”,”芯片”可通过opc获得现场实时数据,“芯片”之间也可按照opc协议进行通信,从而实现软件的”即插即用”.本文以针对一种电能表的数据采集服务器为编程实例,详细介绍数据采集服务器的基本结构以及如何实现opc服务器.电能表采用了(多功能电能表通信规约)(dl/t6451997).多功能电能表通信规约适用于本地系统中的电能表费率装置与手持单元(也称抄表器,用于现场抄表或编程)或其他数据终端设备进行点对点的或一主多从的数据交换方式;标准中规定了它们之间的物理连接(物理层),通信链路(数据链路层)及应用技术(应用层)规范.数据终端设备经数据信道(如无线电台,市话网络等)与远方主站的数据通信协议不属于dl/t645自动化技术与应用20l0年第29卷第5期i-l-n机应用computerapplicationsl997的范畴.dl/t6451997中的主站指手持单元或其他数据终端设备.它具有选择费率装置(与电能表连接或与电能表组装在一起的数据采集与处理单元)并与它进行信息交换的功能.2传统数据采集系统的劣势传统的数据采集系统为使每一个应用程序与设备交换信息,必须为每个设备提供相应的驱动程序,在数据源与客户程序之间分别建立一对一的驱动连接,如图1以电能表为例.图1传统的应用软件与数据源接口方式由于设备多样性和驱动程序不兼容性,这种方式存在以下缺陷:(1)应用程序开发者必须花费大量精力开发各种设备的驱动接口,计算机硬件厂家要为不同的应用软件编写不同的驱动程序,这种程序可复用程度低,不符合软件工程的发展趋势,典型的高级语言软件开发过程约有2530%的时间用于编写这类接口,使开发时间和费用大大增加;(2)设备不具有互操作性,使用中硬件的升级,变更和增加都可能造成驱动程序的变化,从而在维护过程中引起二次投资;(3)由于每一驱动软件有各自的驱动程序,当多个应用软件读取同一数据源时,经常发生冲突;(4)设备厂商虽然可能提供驱动程序,但与用户开发应用软件往往不一致,限制了用户对软件和设备的自由选择.可见,在现场设备与应用软件之间提供标准的接口,实现开放的,无缝隙的连接,是顺利推进企业管控一体化的关键.为此,在微软的倡导下,世界范围内处于主导地位的硬件和软件开发商组成了opc基金会组织(opcfondation),制定硬件和应用软件之间的接口标准一opc规范.3采用opc规范设计服务器的益处1)采用标准的windows体系接口,硬件制造商为其设备提供的接口程序的数量减少到一个,软件制造商也仅需要开发一套通讯接口程序.即有利于软硬件开发商,更有利于最终用户.2)opc规范以ole/dcom为技术基础2,而ole/dcom支持tcp/ip等网络协议,因此可以将各个子系统从物理上分开,分布于网络的不同节点上.3)opc按照面向对象的原则,将一个应用程序(opc服务器)作为一个对象封装起来,只将接口方法暴露在外面,客户以统一的方式去调用这个方法,从而保证软件对客户的透明性,使得用户完全从底层的开发中脱离出来.4)opc实现了远程调用,使得应用程序的分布与系统硬件的分布无关,便于系统硬件配置,使得系统的应用范围更广.5)采用opc规范,便于系统的组态,将系统复杂性大大简化,可以大大缩短软件开发周期,提高软件运行的可靠性和稳定性,便于系统的升级与维护.图2基于opc应用软件与数据源接口方式6)opc规范了接口函数,不管现场设备以何种形式存在,客户都以统一的方式去访问,从而实现系统的开放性,易于实现与其它系统的接口.图2为基于0pc技术的应用软件与智能电能表进行数据交换的处理过程,它比传统的数据采集系统有明显的优势.4数据采集服务器设计的整体结构数据采集服务器的设计以opcserver为核心【引,它介于各种硬件设备与上位过程控制系统之间,将采用不同的通讯规约和通讯方式的各种监控设备信息转换成自动化技术与应用2010年第29卷第5期符合opc接口规范的信息,提供给客户端(监控软件);同时客户端下发的各种控制命令等信息通过数据采集服务器提供给相应设备.opc服务器由server对象,group对象,item对象和针对不同现场设备的编写的i/0dll组成.server,对象,group对象都是标准的com对象,opc客户端通过它们提供的接口来访问现场设备的数据,使opc客户端与0pc服务器实现无缝连接成为可能.server对象是0pc客户端与0pc服务器端交互的首要对象,opc客户端通过server对象来组织管理group对象,group对象是用来组织管理item对象的.item对象描述了服务器与现场设备的连接,是对应的现场设备的属性在服务器中的代表,它包含有数据项的值,值的质量标志和时间标签(读取数据的时间).i/odll实现从具体的现场设备中读取数据的功能,因为不同厂商设备的数据采集方式和现场通信网络的通信协议不同,需要为不同硬件设备和通信协议编写不同的i/odll.数据采集服务器的整体结构如图3所示.图3数据采集服务器的整体结构5数据采集服务器的设计与实现数据采集服务器中0pcserver的开发主要应用com技术4】,但直接采用com技术开发的难度比较大,且周期长.为了减少了开发的难度,本软件0pc服务器部分应用第三方拓林的开发包开发,通过加载kosrdk.dll动态连接库实现不同设备到opc的转换.opcserver是透过一组一组的接口提供服务的.在实际的架构上,opcserver共分为三层:如图4,分别是opcserver,opcgroup,opcitem.其中每一个opcltem对应到一个实际的硬件装置上的某一个channel或port;每一个opcgroup则包含了许多的opcitem,同时并定义这些opcltem更新的时间,方式,以及提供读取opcltem值的接口;而每一个opcserver则包含若干个opcgroup,同时提供操作这些opcgroup的接口.图4opcserver/opcgroup/opcltem间的关系图本文以拓林的开发包开发工具为例总结出以下开发步骤:(1)安装opcproxy动态链接库文件.进行opcserver编程开发首先需要从opc基金会官方网站下载并安装opcproxy/stub动态链接库文件,包括opcproxy.dll,opccomn_ps.dll,opcae_ps.dll,opchdaps.dll四个文件.获得这些文件后,将它们拷贝到系统目录(system32)下,然后在命令行格式下按照以下方法对这些文件进行注册:regsvr32opcproxy.dll,regsvr32opccomnps.di1regsvr32opcaeps.dll,regsvr32opchda_ps.dll此外,还要检查系统中是否存在actxprxy.dill文件,如果没有,则需要从microsoft官方网站下载aprxdist.zip文件进行安装.(2)编程环境设置.用opc数据服务器快速开发工具进行opc数据服务器的开发主要利用开发工具所提供的动态链接库进行opc数据服务器的编程开发工作,在visualc+编程环境中将用到wtopcsvr.dll,wtopcsvr.1ib,wtopcsvrapi.h三个文件.对于动态链接库文wtopcsvr.dll,需要将其拷贝到要开发的opcserver程序所在目录;对于输出定义文件wtopcsvr.dll,需要在编程环境的连接设置中加人此文件:对于头文件wtopcsvrapi.h,则需要用到开发工具api函数的源程序都应包含此文件.(3)获得clsid.自动化技术与应用2010年第29卷第5期计算机应用computerapplications每个opc服务器均有一个全球唯一的guid类型的标识,如下:staticconstguidclsidsvr=0x73f90f71,0x9154,ox43d9,0x86,0x45oxf9,0x49,0x61,0x6,0x7c,0x80;(4)系统设置和初始化.服务器名称和描述设置opc服务器的名称和描述,用于系统的注册和标识.mstrsvrname=“test.opc.serverver1.01”./nameofopcserverm_strsvrdesc=“test.opc.server”./descriptionofopcserver服务器初始化调用kosinit()对服务器进行初始化.kos_init(clsid_svr,100);/knightopcserverinitialization函数第一个参数为服务器的classid,第二个参数数据扫描频率.设置回调函数1.客户端写函数kossetclientwriteproc(&clientwriteproc,;/settingwritecallbackprocedure2.客户端关闭kossetclientshutd0wnproc(&clientshutdownproc);/settingclientshutdowncallbackprocedure注册与反注册注册:bret=k0sregister(clsidsvr,mstrsvrname,mstrsvrdesc,strfile);反注册:bret=kosunregiste(clsidsvr,mstrsvrname);(5)添加opc点.服务器的初始化工作完成后,需要添加opc点到opcserverdll中,opc客户端才能够检索和使用opc点.(6)更新opc点.在上一步中,opc点已经被添加到opcservedll中,这样,opc客户端程序就可以浏览到opc点;同时,也可以读取到opc点的值(包括数据类型,数据值,质量,时间戳等).程序将从设备采集上来的数据不断更新到opcserverdll中,使得客户端程序可同步更新.(7)关闭opc服务器.关闭opc服务器之前,需要完成如下工作:如果有客户端连接,发出断开连接请求;释放用new等操作符申请的内存;调用kosremoveltem0从opc服务器中删除已添加的opc点.调用kosunit()完成opc服务器的退出.6电能表i0dll开发图5接收功能实现流程图计算机应用computerapplications自动化技术与应用2010年第29卷第5期.旰婚|l度瓤l聋崩掠跚皿|r菇电.哂技礁s1.ii结覃持l图6正常应答帧开始1|绽翻l本帆地址(a0-a5工艘鲫c1h=控制码【表示异常鹰菩帧)i傲撼螭长度0lhl错误侍息宇职rl檀齄码csl帧绪柬牟鲁l砸图7异常应答帧由于不同厂商的设备的数据采集方式和现场通信网络采用的协议不同,厂商提供的用于数据采集的api函数也不同,因此在opc服务中,通过编写不同的i/odll,使得服务器能从连接
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 责任与个人幸福
- 谈判心理学知识培训课程课件
- 2025标识标牌智能导视系统设计与集成合同范本
- 2025版互联网平台委托管理合同示范文本
- 2025版全新大包工程合同含绿色施工技术创新条款下载
- 2025年度创业团队合伙人竞业禁止合同范本
- 2025版办公楼墙面翻新美化与节能改造合同
- 2025年材料合同终止与供应链优化协议
- 2025年度智能环保节能建筑项目施工工程合同台账模板
- 2025版乳胶漆施工安全教育与培训合同协议书
- 苏少版七年级上册综合实践活动教案
- 院前急救技能竞赛(驾驶员)理论考试题库大全-上(选择题)
- 锁骨骨折的护理查房
- 部编人教版六年级上册语文全册教学课件+单元复习课件
- 《消费心理学》课程教学大纲
- 华为员工股权激励方案
- 市政工程质量常见问题专项治理技术方案
- 跨文化商务交际导论 课件 Unit 1 Culture
- 人防工程伪装防护技术规范
- 2024年度企业预算表(制造企业)
- 医养结合模式研究
评论
0/150
提交评论