OPC DA服务器的设计与实现

  什么是opc服务器

  OPC服务器的功能就是与下位机进行数据的交换,其中包含了大量的通讯程序和数据存贮程序。然后提供标准的OPC接口,供其它软件使用。程序标准化以后,其他的软件商只需开发面对服务器的程序即可,不用对不同的硬件设备开发不同的硬件驱动程序。减小了工作量,也方便了使用。

  OPC 全称OLE for Process CONtrol,它是由OPC 基金会制定的自动化领域过程控制标准。

  实际上,OPC 代表一系列的标准,包括OPC 数据访问(OPC Data AccESS),OPC 报警与事件(Alarms & Events ),历史数据访问(OPC Historical Data Access),OPC XML-DA(1.0)等。目前,OPC 标准在现代工业控制领域,特别是在数据采集和软实时控制方面已有很好的应用。

  OPC 标准介绍

  在 OPC 标准制定之前,工业软件制造商需要为不同的硬件开发各自独立的驱动接口。对于开发典型监控程序软件的技术人员来说,约有20%-30%的时间是用于编写通讯驱动程序。当供应商提供一个新的硬件时,应用软件研发人员就不得不重新编写一个新的程序。

  而OPC 标准的出现为此解决该问题提供了一个方案,它制定了一系列的数据存取,事件,报警等规范,使得当有新的硬件出现时,供应商只需提供实现的OPC 标准接口,而上层应用软件则不需重新改写。这样,在系统与设备之间,车间现场与信息管理之间,甚至更远的距离上,都可以通过OPC 标准实现无缝通讯,而不必担心设备升级带来的不便和额外费用。

  OPC 为不同的应用制定了不同的标准,OPC DA 是针对现场数据进行存取的接口规范,该标准基于OLE / COM / DCOM / COM+技术,采用Client / Server 模式。数据通过特定的采集卡或串口等,从现场设备中获得,然后OPC DA 服务器将这些从数据源采集到的数据,以OPC 标准接口形式提供给外部应用程序,例如工控软件,实时数据库等。OPC 服务器可以通过本地或远程服务服务器两种方式,为依照OPC 标准实现的客户端提供服务。

  OPC DA 服务器的设计

  本文通过使用 VC++编程实现的一个OPC DA 服务器框架,来介绍OPC DA 服务器设计中需要解决的主要问题。在OPC 服务器的设计中,引入适配器模式,通过适配层将数据访问同具体的数据源操作相分离,以便针对不同的数据来源时,进行快速的二次开发。实现 OPC DA 服务器,需要依照OPC 基金会提供的OPC DA 标准,将从数据源中采集数据,以标准规定的接口形式提供给外部。其中,OPC 规范为OPC 服务器规定了两套接口方式:定制接口(Custom interface)和自动化接口(AutomATIon Interface)。其中,前者是OPC 服务器必须实现的接口,后者则是为方便VB 等脚本语言而提供,可以选择性实现。

  OPC DA 服务器中的对象

  根据 OPC 标准,在OPC DA 服务器中,主要包含三个层次的对象:服务器对象(Server),组对象(Group)和数据项(Item)。其中,服务器对象与组对象是一对多的关系,一个Server 对象可以包含0 到多个Group 对象,而一个组对象中可以包含0 到多个数据项。OPC DA 标准对Server 和Group 对象需要实现的接口,进行了详细的规定说明。

  在 OPC DA 标准中,客户端对服务器的数据存取是以Group 为单位的,每次将需要存取的数据项item 加入一个Group,然后对该Group 进行整体读写操作。Group 对象通过标准定义的IOPCDataMgt 接口,对Item 进行添加,删除等相关的管理;而Server 对象则通过IOPCServer 接口对Group 对象进行添加,删除等管理。

  OPC DA 服务器的结构

  开发一个 OPC DA 服务器需要注意以下问题:服务器的运行方式,各个接口与对象的相互关系,内部数据的组织形式,对外部数据源的访问等。在本实例中,OPC 数据存取服务器的框架结构如下图所示

  OPC DA服务器的设计与实现

技术专区

  • Alexa语音服务软件扩展STM32Cube
  • 结合DNN API驱动未来神经网络应用的解决方案
  • 针对于高端移动通信和汽车市场的四集群设计
  • 一款基于帧捕捉的开源图形调试器应用设计
  • 即将成为标准配置的最新安全技术:后视摄像系统
  • OPC DA服务器的设计与实现已关闭评论
    A+
发布日期:2019年07月14日  所属分类:物联网