可编程控制器OPC数据服务器的开发.docVIP

  1. 1、本文档共11页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
可编程控制器OPC数据服务器的开发摘?要:本文分析了PLC控制系统集成中存在的一些问题,就此提出了利用OPC技术可以很好的解决此问题。然后对OPC数据服务器的结构进行了总体的介绍,分析了FX系列PLC的串口通信标准并利用WTOPCSvr.DLL工具包开发FX系列可编程控制器的OPC数据服务器。经测试表明:该OPC服务器符合OPC规范,简化了PLC控制系统的集成。 关键词:PLC、OPC服务器、串行通信、WTOPCSvr.DLL工具包 1.前言 PLC应用面广、功能强大、使用方便,已经成为当代工业自动化的主要支柱之一。但由于人机交互界面方面的不足。PLC在工控领域中一般作为下位机使用,用个人计算机或工业计算机作为上位机,来完成数据处理、存储、系统状态显示,以实现系统的实时监控。而且在计算机上,不同的语言对驱动程序的接口有不同的要求。这样应用软件需要为相同的PLC设备编写大量的驱动程序,这种程序可重用程度低,不符合软件工程的发展趋势。还有在同一时刻,两个客户应用一般不能对同一个设备进行数据读写,因为它们拥有不同的、相互独立的驱动程序,同时对同一个设备进行操作,可能会引起存取冲突,甚至导致系统崩溃。OPC标准的发布,为此提供了一种良好的解决方案。 2. OPC技术简介 OPC (OLE for Process Control)即用在过程控制领域的OLE,它是由OPC基金会制定的一套基于COM/DCOM技术为基础,采用客户/服务器模型制定的一种工业控制领域的开放式标准。OPC在工业控制设备与应用软件之间建立了统一的软件接口标准。主要解决监控程序与其数据源的交互问题。 通过采用OPC技术,工业控制系统硬件与软件的配置可以由图1表示。各个厂商只要提供符合OPC规范的服务器就可以一次性的解决设备的驱动程序问题。该系统的修改和升级都是非常方便的。而且OPC客户端不必关心底层是什么硬件,硬件有什么特性以及与硬件如何进行通讯交换。只要遵循OPC数据接口协议,就能够从不同的硬件厂商提供的OPC数据服务器中取得数据,从而实现数据的灵活配置和多种系统的真正集成,提高了系统的开放性和可互操作性 。 ? 图1利用OPC的控制系统构成 3.可编程控制器OPC数据服务器的设计 本文实现的OPC服务器需要完成数据采集的功能,提供符合OPC数据存取规范的接口。采用如图2所示的结构进行设计,各个部分功能相对独立又相互协作,形成一个统一的整体。 图2? OPC数据服务器的整体结构 OPC数据服务器大致可以分为三种不同的功能模块:服务器界面模块、与硬件设备通信模块和OPC标准接口实现模块。由于OPC数据服务器既要对底层硬件进行读写操作,又要通过OPC接口与客户程序进行交互,所以采用多线程模型,以保证数据存取的效率。同时为了解决共享数据的保护问题,应使用线程的同步和互斥等技术,以保证同一时刻只有一个线程对数据进行操作。 OPC服务器对象和组对象是真正的COM对象,能够将各自的接口暴露给客户程序。OPC服务器对象维护有关服务器的信息并作为OPC组对象的包容器,可以动态地创建或释放组对象;而OPC组对象除了维护有关自身的信息外,还提供包容OPC项的机制,从逻辑上实现对OPC项的管理;OPC项则代表与OPC服务器中定义的数据项的连接,数据项包括值(Value)、品质(Quality)和时间戳(Time Stamp)3个属性,数据值以VARIANT形式表示以及与硬件相关的属性。这些OPC对象在WTOPCSvr.DLL中已经进行了封装,用户只需调用相应的函数即可实现。 数据存储区中存放着OPC服务器定义的数据项,数据项包括数据值、数据品质和时间戳3个基本属性以及与硬件相关的属性。数据存储区是服务器的中心,需要动态管理和维护数据项,并与其它部分进行数据交互。数据存储区的设计可利用C++标准模板库(STL)中的包容器,通过包容器管理OPC服务器中的数据项,也可定义一个固定长度的数组(这样会造成内存的浪费),这里我们使用MFC中的链表模板类CObArray进行数据存取。 服务器程序界面便于用户观察数据项的变化,而且还可以管理数据项和设置数据项的属性。也可以把对硬件的初始化和对硬件的监控和诊断显示做在界面上,以方便用户操作。 三菱PLC驱动程序通过串行通信与PLC进行读写操作,从PLC取得的数据被OPC服务器“翻译”后,才交给最终的客户程序,此时不同的客户程序只要按照OPC标准就可以对PLC里的数据进行操作。 3.三菱PLC驱动程序的实现 三菱FX系列PLC与计算机之间的通信是通过交换命令帧和应答帧的方式实现的,当PLC接收到上位机的命令时自动返回应答帧。帧格式如图3、4所示,其中和校验值是将命令码STX-ETX之间的字符的ASCII码(十六进制数)相加,取得所得和的最低二位数。STX

文档评论(0)

word.ppt文档 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档