APP下载

油田OPC规范的实时数据共享技术研究

2014-08-02霍凤财任伟建

化工自动化及仪表 2014年9期
关键词:客户端报警油田

霍凤财 任伟建 高 维 高 妍 江 声

(1.东北石油大学电气信息工程学院,黑龙江 大庆 163318;2.中国石油大庆油田有限责任公司采气分公司,黑龙江 大庆 163514;3.中国石油大庆油田有限责任公司储运销售分公司,黑龙江 大庆 163453)

OPC(OLE for Process Control)是工业界最先进的资料交换标准[1]。基于OPC规范,通过建立通信规则框架信息库并采用有效的实时处理策略,设计开发具有较强通用性、面向过程数据通信的OPC中间数据服务技术[2]。通过该数据服务技术,可以实时、准确地获得最新的生产现场数据,安全、可靠地对现场设备进行控制[3,4]。鉴于以上原因,有必要将油田生产现场实时数据库与企业管理数据库进行无缝整合,形成统一的生产数据库平台,这是油田信息化建设的发展趋势。

油田OPC规范的实时数据共享技术的研究是在油田站库实时数据采集与应用系统的基础上进行的,虽然站库实时数据采集与应用系统实现了实时数据的提取和显示,但是该系统是在组态软件的基础上开发的,若要在其他应用系统显示或提取实时数据库中的数据就很难做到。在这种状况下,为了扩展实时数据的应用范围和广度,将OPC实时数据接口程序封装成动态链接库,实现第三方软件的接口应用,油田OPC规范的实时数据共享的关键技术研究应运而生,本技术的研究可实现大量用户访问实时数据库,保证实时数据的准确性和稳定性。

1 技术开发框架①

应用OPC规范解析技术对实时数据库的历史数据和访问方式进行分别处理。由于实时数据需要及时更新,对实时数据库的访问次数较多,因此在中间服务器上采用预先读取进行缓存的方式,对实时数据库访问的压力在时间上均匀分开,减少集中访问造成实时数据库过大的压力。

图1所示为OPC技术开发架构,其中利用通信协议和API函数读取数据是将实时数据库中的信息读取到中间服务器中去,利用通信协议和IP配置获取数据是将XML中的点位表信息获取到中间服务器缓存中,从而传输到客户端进行显示。

图1 OPC技术开发架构

2 技术流程

结合油田OPC规范实时数据的特点,并按照生产过程中实时数据获取的流程进行整理,总结出如图2所示的技术解决流程。按照该流程逐步解决每部分的关键点,从而完成具有OPC规范的实时数据共享技术的研究。

图2 技术解决流程

3 关键技术

3.1 OPC接口规范解析技术

目前读取油田OPC规范的实时数据有两种形式,一种是利用API函数直接从实时数据库中读取数据;另一种是通过OPC读取实时数据。利用API函数直接从实时数据库读取数据,通过OCX封装的API函数同步读写站库实时数据库中满足OPC规范的实时数据,而通过OPC读取实时数据是利用现有的OPC接口完成数据的传输,主要包括OPC客户端和OPC服务器。笔者应用的实时数据库由于没有OPC,只有符合OPC规范的实时数据,因此实时数据库的读取主要采用API函数对符合OPC规范的数据进行读取,分析规范,完成数据访问,具体步骤为:

a. 实时数据访问控件OCX。OCX控件在系统启动时自动加载到运行环境中,接口可以访问。主要接口包括实时数据、历史数据和报警数据接口的读取。

b. 实时数据读取处理方法。实时数据读取的频率较高,对服务器造成很大的压力,所以采用预先读取然后内存缓存的方式进行处理。

c. 客户端与服务端的数据交互。

3.2 多线程访问技术

线程是程序中一个单一的顺序控制流程,在单个程序中同时运行多个线程完成不同的工作,称为多线程。使用线程可以把占据时间长的程序中的任务放到后台去处理,程序的运行速度可以加快。在一些等待的任务实现上如文件读写及网络收发数据等,线程比较实用。在这种情况下可以释放一些珍贵的资源如内存等。图3就是多线程技术应用于中间数据服务器,利用多线程技术在同一个中间服务器中,从实时数据库中同时获取不同类型的数据。不同的访问客户端采用多线程响应,提高读取速度。每个客户端通过IP和端口登录服务器,服务器进行相关的认证后,启动数据线程为该客户端进行服务。

图3 多线程访问技术应用在中间数据服务器

3.3 实时数据动态缓存技术

缓存技术的关键是设置缓存依赖项,也就是保证当缓存失效时尽可能立刻清除缓存。由于实时数据是不断更新且无规律的,因此缓存这些动态数据就需要动态缓存技术。动态缓存技术实现的关键点是实时获取变化的数据,但不是全部获取,而是只获取单位时间内的动态数据,这样不断地更新单位时间内的数据,就做到了部分动态数据的缓存,这样在客户端发出实时数据请求时,直接将这个单位时间内的数据发送给客户端,就实现了动态数据的实时提取。

3.4 数据异常实时监控技术

异常实时监控主要是针对多个检测点实时数据的超限报警监控,如罐液位高于高限液位、低于低限液位、压力温度超过限值以及流量大于高限小于低限等。对于罐液位而言,每个罐都有液位传感器监控液位,当出现超限情况,就会报警,将超限的时间、位置、检测点名称、报警类型、当前超限值及限值等信息全都存储进入实时数据库。为了提取这些报警信息,运用数据异常实时监控技术,中间数据库获取实时数据库中的报警数据,并缓存到中间数据库。客户端则通过Socket通信,向中间数据库发送报警信息的请求,中间数据库接收到请求就会根据请求条件将符合条件的报警信息以字符串流形式发送给客户端,这样客户端将获取的报警信息字符串分割提取,再存储进入Table表格中,这样就实现了以报表的形式显示的报警信息。对于压力、温度及流量等类型的监控数据,监控和警报都与罐液位相似,通过实时监控,将出现报警监控点的相关数据信息存储进入实时数据库,客户端通过中间数据库获取对应的超限报警数据。图4为通过异常监控,提取某联合站各个监控点的实时数据,若出现超限报警,便提取该报警点的说明、位置、类型、时间、数值及限值等,并以报表的形式呈现。

图4 实时数的提取汇总

3.5 AJAX异步刷新与定时器结合的数据呈现技术

在客户端中利用AJAX异步刷新和定时器综合应用的方式定时向中间服务器发送数据请求并获取数据。应用AJAX异步刷新向中间服务器发送并提取所请求的数据,使用SOAP或其他一些基于XML的Web Service接口,并在客户端采用JavaScript处理来自服务器的响应。因此在中间服务器和浏览器之间数据交换量大大减少,响应速度大大提升。图5是针对实时数据进行不同方式的呈现,并能实现数据的动态加载和实时更新。

图5 实时数据的呈现

4 结束语

油田OPC规范的实时数据共享技术研究的完成,将充分利用信息资源为生产服务,实现客户端实时准确获取生产数据,提高实时数据的共享能力,减少传统实时数据获取的复杂性和滞后性,使生产单位和信息汇总部门能及时获取实时生产数据,方便对数据进行汇总上报。该技术的研究在增加了访问用户数量的同时,还保证了实时数据库和中间数据库的稳定性,确保处理数据请求速率的提升。

猜你喜欢

客户端报警油田
碳中和油田的未来之路
我国海上全新“绿色油田”建成投产
我国海上油田新发现
如何看待传统媒体新闻客户端的“断舍离”?
LKD2-HS型列控中心驱采不一致报警处理
县级台在突发事件报道中如何应用手机客户端
孵化垂直频道:新闻客户端新策略
掘金油田环保
2015款奔驰E180车安全气囊报警
死于密室的租住者