0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

基于PID技术实现数据采集模块中OPC接口的设计

电子设计 来源:微计算机信息 作者:靳其兵 , 温泉 2021-03-26 09:02 次阅读

1、引言

随着国内外石油化工领域工业自动化的不断发展,采用先进技术对现有装置进行技术改 造,逐步提高装置的生产规模和工艺技术水平,提高装置的经济效益是一种必然的趋势。在 此趋势下,很多企业希望通过先进控制的方法达到以上目的。而装置先进控制以及回路自动 控制的基础就是PID 参数的合适设置。 现阶段 PID 参数的设置很大程度上依赖于操作工人的经验,对于没有经验的工作人员 来说调整PID 参数有些难度。PID 优化整定系统正是针对此问题,自行设计开发的系统软件, 其目的是为了实现PID 参数整定的简单化,对于没有合适参数的回路通过计算得到接近的 参数值,对已有的参数给出优化的参数值。PID 优化整定系统的基础是数据采集模块。数据采集模块以OPC 协议作为接口通讯方式,连接DCS 工程师站与上位机进行数据读取。

2、DCS 及OPC 概述

DCS(Distributed Control System)集散控制系统产生于20 世纪70 年代,它满足了大型 生产的自动化要求,大大提高了单套装置的生产能力。在国内大型石油化工联合企业中, 主要炼油化工装置已经基本实现了DCS 控制,优化了生产过程并提高了生产效率,但由于 大多数DCS 系统是封闭系统,普遍缺乏统一、标准的开放式接口,难以满足企业信息化和 管控一体化的发展要求。为了解决这些问题,一些与微软公司合作的自动化硬件和软件供应商联合制定了一套称为OPC 规范的接口协议,以此来提高过程控制工业中的自动化/控制 应用程序,现场系统/设备以及商业/办公室应用程序之间的互操作性。

OPC是一个开放的工业接口标准,意指用于过程控制的OLE技术。OPC基于微软的 OLE、COM和DCOM技术,包括一整套接口、属性和方法的标准集,用于过程控制和制造 业自动化系统。OPC技术的实质是允许任何设备与其它设备自由通讯的一种机制,是一种 用于过程控制和工业自动化的即插即用的软件技术,是一种过程实时数据交换的工业标准 。这个接口规范不但能够应用于单台计算机,而且可以支持网络上分布式应用程序之间的 通讯,以及不同平台上应用程序之间的通讯。其基本思想是:每个硬件供应商为其设备开发 一个通用的数据接口(即OPC Server),供其它系统读写信息,客户应用软件也可以通过OPC 规范的接口来读写硬件设备的信息(作为OPCClient)。我们在使OPC时,不必关心底层硬件内 部的具体细节,只需遵循OPC数据接口协议,就能够从不同OPC数据服务器中取得数据。

3、OPC接口的设计

OPC接口的设计包括OPC服务器端和客户端两个部分,其实质就是连接数据源和数据使 用者之间的通道。目前,许多DCS产品都推出和集成了OPC服务器,例如基于Windows操作 系统的YOKOGAWA CS3000 DCS和ROSEMOUNT DELTA V DCS。因此,设计PID优化整定 系统的OPC接口有很大的普遍性和实用性。

3.1 OPC接口的选择及实现

OPC规范规定了两套接口标准:OPC自定义接口和OPC自动化接口,如图1所示。自定 义接口的效率高,通过该接口,客户能够发挥OPC服务器的最佳性能,采用C++语言的客户 一般采用自定义接口方案;自动化接口使解释性语言和宏语言访问OPC服务器成为可能,采 用VB、Delphi等语言的客户一般采用自动化接口。

基于PID技术实现数据采集模块中OPC接口的设计

图 1 OPC 接口类型

其中,客户端程序的开发主要是指客户端程序中 OPC 接口部分的开发。客户端程序本 身可以完成很多复杂的数据处理与显示功能,但需要通过OPC 接口部分访问OPC 服务器, 对现场数据进行存取。设计时可根据不同的需求特点,应用不同的接口标准。

3.2 OPC数据存取服务器的访问方式

OPC客户程序对OPC服务器中数据的访问方式主要有同步、异步和订阅三种。客户程序 可按照一定的周期对服务器程序进行数据同步存取操作,此时客户方的调用函数一直运行到 所有数据读写完成。在异步通信方式下,服务器程序定期刷新OPC项,并判断其数值或品质 是否变化,如果有变化则将变化后的数据发送给客户程序,此时客户方的调用函数可立刻返 回。显然,异步通报方式的通信效率更高,但有多个客户程序与服务器相连时,同步读写方 式更具时效性。第三种订阅方式,即OPC服务器监控的数据在状态发生改变时主动的通知 客户程序,而不用客户被动地、一次次地去查询数据,判断其是否发生改变。对于每个组 对象,客户程序可根据需要采用其中一种数据存取方式。

4、PID优化整定系统OPC接口的架构与实现

4.1 PID优化整定系统的软、硬件结构

PID优化整定系统的硬件为一台装有OPC接口客户端程序的PC机,根据实际情况分别采 用添加网卡或使用路由器的方式接入到控制系统的工程师站上,使PID优化整定系统与工程 师站处在同一局域网内。如果原有的工程师站上配有双网卡,则直接使用网线与工程师站连 接;如果没有双网卡,或不方便接入的,则添加路由器,将两台机器接入同一网内。

图2 系统网络结构图

PID优化整定系统的软件是指优化整定PC机上装有的自行开发的PID优化整定软件。数 据采集的通讯接口方式使用OPC自动化接口方式,数据采集所搭建的环境结构如图2所示。

4.2 OPC接口的实现

由图2可以看出,整个系统的服务器端采用DCS提供的OPC接口,在工程师站上放置使 用OPC数据访问接口编写的OPC应用程序,它主要有两个方面的功能:一是作为控制系统的 客户端,连接下位机与上位机,读取现场数据;二是作为PID优化整定系统的服务器端,连 接PID优化整定系统与下位机,将数据读取到PID优化整定站,供后期数据计算使用。而数 据采集部分的客户端,则放置在PID优化整定站,是使用VB语言,按照OPC自动化访问接口 编写的应用程序。读取数据后,将相关数据保存在Access数据库中,以便于以后随时查询使 用。在全部数据读取过程中,应用的网络协议主要为TCP/IP协议。

4.2.1 OPC服务器端的实现

根据不同工厂DCS设备或者工程师站操作系统的具体情况,服务器端分别采用两种接口 方式,即自动化接口和自定义接口编写服务器端程序。例如,对于YOKOGAWA CS3000 DCS, 采用的是VB编写的自动化接口方式;对于ROSEMOUNT DELTA V DCS采用的是C++编写的 自定义接口方式。

4.2.2 OPC客户端的实现

客户端的主要实现方式是OPC自动化接口方式,使用VB编写应用程序。对于工厂各装 置回路中pv(实测值)、sv(设定值)、mv(阀门开度)参数的采集使用同步通讯的方式; 而对于回路控制的自动、手动情况的采集则使用订阅通讯的方式,即在参数(控制状态)发 生改变时主动通知客户端程序。 OPC数据访问对象由分层结构组成,它由上而下包括OPC服务器对象(OPCServer)、 组对象(OPCGroup)、项对象(OPCItem),在设计OPC客户端程序时,基本按照以上顺 序进行连接。对于OPC自动化接口方式,OPC基金会专门为它的开发提供了“自动化包装器” OPCDAAuto.dll,在编写程序前,应该首先在VB项目中引用该动态链接库,这样才能调用 OPC自动化规范中定义的属性、方法和事件。客户端程序设计的基本步骤如下:

(1)在VB工程中添加对OPCDAAuto.dll的引用。

(2)声明OPC对象。

(3)连接OPC服务器,创建OPC对象。设计时需要调用OPC服务器对象的“Connect” 方法,和OPC服务器建立连接。之后,用OPC服务器对象的“OPCGroups”属性生成一个组 集合,再调用“Add”方法在OPC组集合中添加新的OPC组。最后,在对OPC服务器进行访 问前,要使用“OPCItems”属性生成项集合,并使用“Add”添加新的OPC项。

(4)读取数据。对于装置回路PID参数采集采用同步读取方式,对于装置回路的控制 状态采集采用订阅读取方式;最多可同时读取16条回路的参数。

(5)删除OPC对象,断开与服务器的连接。连接着OPC服务器的OPC应用程序,在退 出之前必须断开与OPC服务器的连接。否则,OPC服务器不知道OPC应用程序的退出,计算 机资源就一直不能被释放,长此以往,会造成计算机资源枯竭而产生严重问题。断开连接时, 使用“Disconnect”方法;并将OPCItems、OPCGroup和OPCServer都置为Nothing,删除对象。

4.3 数据存储及导出的实现

为了给后期PID优化整定提供大量完整的数据,在数据采集过程中需要将大量数据保存 在Access数据库中,以备使用。由于同时读取多条回路,数据量很大,为避免在最后保存数 据时由于数据量过大而造成时间过慢,甚至是死机现象,设计时采取每读取30个数据自动保 存一次的方法。另外,在把数据导出到Excel过程中,由于Excel自身的限制,一张Sheet保存 的数据有限,为了避免数据溢出,设计成每保存一定数据自动生成一张新的Sheet进行存储。

5、结束语

以OPC为接口通讯方式的数据采集模块是PID优化整定系统的基础,该模块及整个PID 优化整定系统的设计都相对独立于现场工程师站,使用OPC通讯也只进行读操作而不进行写 操作。该设计的好处是,既能使两台机器互相没有影响,又能使客户端采集到全部DCS数据。 鉴于石油化工企业的重要性,数据采集只读不写,具有较好的安全性,可以保证原系统数据 的安全和纯洁,也避免了数据错误造成的影响,保证了生产的安全。目前,PID优化整定系 统经过实验室长期检验,已经稳定的运行于国内许多石油化工企业中,且运行状况良好。 现在,绝大多数工控厂商为实现系统的开放性,其DCS都提供了OPC接口。同时,OPC 基金会也在不断推出新的产品,从OPC DA到OPC XML-DA,再到OPC UA。OPC必然会向 更为广泛的跨语言、跨平台、企业级的方向发展。

责任编辑:gt

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 数据采集
    +关注

    关注

    38

    文章

    4510

    浏览量

    112313
  • 服务器
    +关注

    关注

    12

    文章

    8105

    浏览量

    82485
  • PID
    PID
    +关注

    关注

    35

    文章

    1446

    浏览量

    83790
收藏 人收藏

    评论

    相关推荐

    数据采集接口OPC SERVER

    业务为企业信息化、工业自动化两个方面,在实时数据库、先进控制、控制系统数据采集接口OPCServer等产品、技术服务上具有独特的技术实力 。
    发表于 04-22 14:41

    数据采集分享】基于LABVIEW的USB接口高速数据采集的设计

    引言  在日常的测试测量,经常使用数据采集采集数据。但是很多数据采集卡往往通过PCI总线完成数据的传输,它有诸多弊端,例如操作不便,受限
    发表于 12-16 11:32

    多路模拟数据采集接口设计

    该文档为基于FPGA的多路模拟数据采集接口设计讲解文档,介绍一种基于 8,RQ 的多路模拟数据采集接口的设计方案。该方案使用Max1281 作为模数转换芯片,在 APA150 FPGA
    发表于 09-21 14:37

    SMT行业数据采集技术

    与设备控制系统的集成,二是实现生产数据的实时收集。这需要对数据采集采集方式、参数的确定、软硬件实现、信号处理方法等问题开展
    发表于 10-20 20:17

    提高MES系统数据采集传输实时性的办法及措施

    系统的数据采集的方法:方法1:实时数据库使用OPC协议直接从DCS采集OPC的英文全称是:OLE for Process Control,即
    发表于 10-30 17:51

    FPGA实现数据采集的方式对比(传统串口、数据采集卡及外设计接口

    ,使用非常方便。USB2.0支持高达480 Mbps的数据传输速率。USB接口实现计算机与多个外围设备的简单、高速互联,将USB技术应用于数据采集
    发表于 01-07 07:00

    通过OPC服务器采集的设备数据转为MQTT,实现云端发布或订阅

    本帖最后由 autoctrl 于 2021-7-1 17:55 编辑 通过OPC服务器软件建立通讯,进行实时数据采集监控,然后将相关数据转换为MQTT等多种服务接口
    发表于 03-10 14:23

    基于USB接口数据采集模块的设计与实现

    基于USB接口数据采集模块的设计与实现Design and Implementation of USB-Based Data Acquisition Module路 永 伸(天津科技
    发表于 10-18 15:24 38次下载

    基于USB数据采集模块的QPC服务器设计

    基于USB数据采集模块的QPC服务器设计Design of OPC Server Based on USB Data Acquisition Module 摘 要 : 针对目前USB数据采集
    发表于 01-11 12:05 17次下载

    基于OPC的远程数据采集与存储

    文章以开发某火电厂凝结水精处理数据采集与分析系统为背景,提出了基于OPC技术的RSView32远程数据采集方案。在分析了几种可能的数据存储方
    发表于 09-07 15:44 24次下载

    基于STM32的USB数据采集模块的设计与实现

    基于STM32的USB数据采集模块的设计与实现
    发表于 11-06 17:07 39次下载

    基于OPC技术的多线程数据采集系统的实现_乔富强

    基于OPC技术的多线程数据采集系统的实现_乔富强
    发表于 01-12 19:56 1次下载

    基于OPC UA的工业数据采集系统

    为了解决工业设备协议多样性给工厂数据采集和统一监控带来的难题,研究了基于 OPC UA的数据采集系统。以PLC、工业机器人和数控机床等工业设备为研究对象,通过工业以太网建立与本地监控服务器的连接
    发表于 04-22 14:53 35次下载
    基于<b class='flag-5'>OPC</b> UA的工业<b class='flag-5'>数据采集</b>系统

    数据采集模块是什么,有哪些作用

    数据采集又称数据收集,是一种从系统外部采集数据并输入系统内部的接口数据采集技术广泛应用于各个领
    发表于 07-09 09:24 6362次阅读

    什么是数据采集模块,有哪些作用?

    数据采集又称数据收集,是一种从系统外部采集数据并输入系统内部的接口数据采集技术广泛应用于各个领
    的头像 发表于 11-08 11:11 4445次阅读