一种存储式测井工程监控系统软件的实现和研究

2021-06-16 09:35李盛
电子技术与软件工程 2021年7期
关键词:测井仪器模板

李盛

(中国电子科技集团公司第二十二研究所 河南省新乡市 453003)

1 监控系统地面系统软件设计

地面系统软件设计在系统中,主要组成部分有绞车传感器、大钩负荷传感器、立压传感器等深度相关的三种传感器数据采集、预处理、存储;实时监控数据采集、解码、预处理、存储、实时监控数据显示、曲线绘制、实时监控数据传输到钻台井口显示器;测井完成后通过下井仪器数据校正时间深度文件、并根据校正的时间深度文件实现工程监控数据的回放显示、曲线绘制、数据和曲线的打印、以及图头文件的生成打印。地面软件的主要功能涉及以下几个方面:

(1)建立面向对象的深度采集用户界面,实现人机交互,对深度采集传感器,采用人机工程设计在保证可靠性、维修性、安全性的条件下,确保操作人员正常、准确的操作。

(2)实现地面计算机和井下仪器的数据交互。

(3)深度传感器数据采集需要出厂前对大钩负荷传感器和立压传感器进行车间刻度,深度采集则需要在现场根据绞车传感器、井筒、大绳的现场状况刻度调整来校准测量。

(4)实现对井下工程监控数据的解码、纠错等处理操作。

(5)将经过解码的工程监控实时数据传输到钻台井口显示器上提供实时预警,防止事故发生。

(6)对经过解码的工程监控实时数据进行图形化处理。

(7)时间深度数据的存储和预处理。

(8)使用井下仪器时间测量数据,通过特定的算法校准进行辅助校正得到用于生成深度曲线数据所需要的准确时间深度文件。

(9)对工程参数的曲线回放功能实现,可以生成数据和曲线报表,并完成打印。

(10)根据不同的需求,制定图头模板,生成相应的图头文件,显示打印。

图1:实时测井主界面

鉴于软件实时系统的设计要求,通过使用多线程方式同时进行深度数据采集、电磁波实时监控数据解码,实时监控数据曲线绘制、实时监控数据传输。地面处理系统的设计和实现中,系统性能稳定,在进行时间深度数据采集的同时,可以高效完成对电磁波信号的实时采集和解码处理,实时地将井下仪器速度、伸缩,张力、推靠姿态及通讯状态、电池状态,用户关心的设备安全性数据通过实时绘制的曲线来反映,另外也将这些数据通过网络传输到司钻显示器进行显示,当遇到问题时通过声光报警让司钻及时采取相应措施,阻止危险发生。而由于存储式测井多应用于裸眼井,测井时下井仪器的作业环境较差,通过增加工程参数的数据回放功能,可以在发生工程事故时能够达到回溯效果。

1.1 用户界面的设计

面向对象的人机界面设计实现界面与应用的分离设计,从而形成整个系统的面向对象设计模型的人机交互。

(1)使用SplitContainer 控件将用户界面根据不同功能模块进行划分,实现多窗口设计,用户可以根据不同的需求和使用习惯设计定制界面显示风格设置缺省布局,并使用XML 文件对修改进行保存,提供一键恢复默认用户界面恢复出厂设置。

(2)对于各个功能模块采用继承和重写窗体事件处理函数方式,通过调用相应窗体文件生成的DLL 来实现。这种迭代开发的方式提高了软件开发的效率,也方便对软件界面的维护和升级。

1.2 接口设计

图2:监控界面放大显示

工程监控地面系统中,深度传感器数据采集主要采用RS-232串口通讯,采集来自传感器总线的绞车传感器A、B 信号,大钩负荷传感器信号以及立压传感器信号,地面系统深度测量是通过绞车传感器感应钻机的滚筒转动,利用滚筒参数、大绳参数参与计算、校正系数参与微调的处理方式,结合大钩负荷传感器的轻重载状态判断来实现深度的准确测量,测井完成后通过读取井下仪器数据完成深度校准,最终生成时间深度文件用于井下仪器的深度匹配完成测井;井下仪器下井前需要和计算机进行时间同步以及参数配置,等仪器从井下起出后需要读取存储在仪器里的测井数据,这些都是通过CAN 通讯来实现;和井下仪器的通信司钻显示器通过RS-485 总线与地面控制计算机连接,通讯速率9600bps,通讯间隔500ms,提供对伸缩、张力、测井井深、大钩速度等状态以数值和图形的方式显示,提供井下仪器的通讯是否正常、电池是否欠压、伸缩和张力、测井速度超限等三种工作状态信息报警提示。井下仪器实时状态数据主要依靠电磁波传输到深度机箱,井下仪器数据存储在存储器中,数据的处理分成两个部分,一是测量数据是通过软件大钩负荷传感器轻重载来判断仪器是否处于测量状态来进行对有效深度数据进行甄别和剔除,二是工程监控数据由于需要完整的记录整个测井过程井下仪器的状态所以需要通过全记录来实现深度数据和井下仪器监控数据的记录,工程监控井下仪器数据是在测井过程中通过电磁波传输来实现。实时显示经过软件处理直接进行曲线绘制,只起实时监控功能使用,回放数据则根据读取井下仪器其他数据对深度进行精准匹配处理后,进行数据表的存储,显示和打印、监控数据曲线的绘制保存和打印,以便数据回溯的需求。

图3:工程数据实时监控回放软件主界面

1.3 数据的预处理

时间深度数据记录同时按两种模式记录,用于生成测井数据深度匹配的时间深度文件数据考虑到由于存储式施工的特点存在时间的不连续性,剔除冗余的等待时间段和重复深度段的时间深度数据,并进行纠错处理,剔除明显超越边界不合逻辑的数据;而用于匹配实时工程监控的数据需要全程不间断监控测井状态,所以需要全测量记录完整的时间深度数据,考虑到深度相关数据的实时性和可利用性可以精确到秒级来存储,而在回放过程中由于可能存在长时间等待而该停滞等待作业段又是无事故状态,所以存储时存储全记录的数据,而在数据回放是可以选择性剔除无事故状态长时间等待的数据,并选择此段不绘制曲线,但保证原始数据的存储状态不变。工程监控数据预处理则完成全测量过程的速度、伸缩,张力、推靠姿态及通讯状态、电池状态的全记录,但也需要通过固定算法对实时数据进行甄别和筛选处理,防止解码错误导致产生的不合逻辑的数据的存在。测井前要进行计算机和下井仪器时间同步,计算机和井台司钻显示器时间同步。深度采集需要的大钩负荷传感器、立压传感器都需要到现场进行刻度标定的操作来实现数据的准确可靠,绞车传感器则需要根据现场的设备通过特定的算法实现深度校正。

2 数据曲线绘制和打印

工程监控地面系统的数据显示和曲线回放采用 Microsoft Visual studio C# 和 SQLite 数据库设计开发,采用dataset 数据集来实现数据的访问和存储,基于window1064 位操作系统平台。Microsoft Visual studio C#是面向对象的开发语言,提供了高级开发工具的同时具备调试功能、数据库功能和其他实用的工具集合,方便快速高效的开发各种应用程序。SQLite 数据库是一种轻便式小型数据库,能够跟多种程序语言结合处理速度远高于Mysql 等其他开源数据库,支持的SQL 语句也毫不逊色于其他开源数据库。DataSet 不依赖于数据库的独立数据集合,即便关闭数据库,依然可用。

2.1 曲线显示

监控系统数据回放采用曲线设置模板,实现了监控数据和显示打印的分离,提供模板编辑功能,曲线模板存储着轨道设置(横向页面设置)、纵向比例设置、曲线显示设置(边界、颜色、线性/对数等)等。只要数据文件的曲线名能在模板中设置,就可以显示。设置好的模板可以存储为XML(可扩展标记语言)文件,方便下次调用。模板的文件名存储在数据文件中,为下次打开的默认模板,若找不到,系统自动使用monitor.xml 模板文件。提供默认的绘图格式,但也提供修改绘图格式信息的机制,曲线名可以修改,但不允许重名,

2.1.1 坐标设置

提供轨道、网格类型、垂直比例、曲线设置功能,轨道定义为页面的横向区域,单位是inch,820 打印机的打印纸最大宽度为8.5inches,轨道的有限宽度定义为8inches。显示按屏幕大小进行缩放,曲线显示只能在某一轨道内,不允许跨越轨道。

2.1.2 网格类型

有线性网格和对数网格两种,线性网格按细线条数,均匀的将轨道分为若干小的横向区域,对数网格按对数模的个数,将轨道分为若干小的横向区域,起始模定义网格读值形式一般设为2.网格的线型、线宽、颜色、条数都可以重新设置。

2.1.3 垂直比例

设置显示打印与实际数据比例关系,以及纵向深度标志线深度显示。

2.1.4 曲线模板

曲线模板采用xml 标准规范定义格式,方便操作和修改存储。

2.1.5 监控数据回放区域

上面部分是工程监控数据曲线显示区域,下面是曲线图例显示格式信息,包含了工程监控数据曲线显示的分区信息、左右边界信息、显示曲线颜色。双击曲线图例区域任何地方都可以实现对曲线显示信息的编辑,可以修改曲线设置,选择轨道,可以改变曲线所属的轨道,并自动保存信息。上面部分的左边显示测井的时间、深度、右边是工程监控数据曲线分区显示。如图3 所示。

2.2 曲线打印

实现图例打印控制,选择工程监控数据曲线图例的打印,可以通过控制左右边界实现调整打印纸的左右边界。在形成打印文件(pdf或图片)时,将曲线显示和屏幕保持一致,提供逆页序打印模式,自动获取系统默认打印机的颜色打印属性实现彩色打印。

曲线打印报表回放使用XML 提供模板编辑功能,采用了XML(可扩展标记语言)来存储和保存设置信息,模板化处理根据用户不同要求可以自定义显示区间和能够设置走纸速度,由于时间段不连续,因此程序能够自动处理不走白纸。

2.3 数据库连接

工程参数数据和深度数据存储采用了SQlite 数据库存储,应用了Dataset 数据集操作,使用软件加密算法和加密狗双重保护数据,设置权限用户只能查看原始数据,无法修改原始数据,保证原始数据的真实有效。

数据存储后,程序具备基于远程监控的数据传输功能,在联网状态下测井计算机工作在服务器模式下,使用了基于TCP/IP 网络协议的C/S 传输模式功能自动打开,当基地需要数据时主动连接服务器,握手成功后将文件传输到基地计算机,方便基地对测井现场状况进行及时了解并做出相应的反应,由于使用了数据库无连接模式,所以并不影响现场数据的存储和显示。

2.4 数据曲线的绘制和刷新

原始数据是毫秒级别的数据,信息包括时间,测速、大钩负荷,大钩高度,钻头位置、井下张力、井下伸缩、井下通讯状态、1#电池是否欠压、2#电池是否欠压、姿态保持器状态等。一口井在特殊情况下有可能需要几天的时间完成,数据存储量大,需要通过滚动屏幕显示实时监控数据,使用双缓冲技术,首先在内存中绘制曲线,在滚屏显示过程中将内存中相应位块的图像剪贴到显示区域,这样就能克服上述问题,同时也避免了当快速滚动加载数据时由于加载的数据量过大而引起的程序无反应的问题。连续的显示曲线,进而将内存中的设备相关图像转换成设备无关的、标准格式的图像进行保存。针对背景刷新引起的闪烁,采用了不进行背景重绘的方法来消除,针对工程监控数据曲线图形刷新造成的屏幕闪烁现象,采用内存DC 绘图来消除屏幕闪烁。做到工程数据监控数据显示和打印分离,实现了和设备无关的显示和打印,显示时通过获取屏幕X 方向分辨率和Y 方向分辨率,来计算显示相应的像素比例尺,计算出显示图头和相应的页面曲线高度,再计算页面曲线高度所能容纳的井深,确定滚动条位置,算出井深范围,实现了在不同分辨率的显示器上显示同样的效果。打印时则通过获取打印机的分辨率和打印纸张的大小来计算出相应的打印像素比例尺来确定曲线打印所对应的比例以及打印的边界,再根据特定的纸张宽度和长度来实现曲线绘制。通过显示和打印的两者结合又实现了所见即所得的打印效果。利用SQLite 数据库和Dataset 的配合使用sql 语句查询的方式就可以实现提供选择指定时间段或者指定深度段两种方式,按用户需求来进行曲线显示和打印。也可以通过查询的方式快速定位到指定时间段或者深度段的监控曲线绘制显示,甚至可以通过输入指定的工程监控数据的边界值来快速定位到相应越界事故区域。

2.5 数据安全性

数据保护采用多重方式,应用程序使用特定软件加密处理,防止应用程序反编译和暴力破解。硬件加密狗和硬件模块识别同时使用,软件内嵌加密算法多重保护。

3 结论

存储式工程数据地面监控测井尤其适用于大斜度井、大位移井等复杂水平井,该系统具有施工方便、缩短了测井作业时间、进而提高了测井的效率,且能够有效降低测井施工安全风险和作业成本。本系统技术的突破关键在于深度处理、电磁波传输距离,实时监控预警和解码的可靠性和稳定性,核心在于工程监控数据回放和曲线的生成和打印,通过对井下仪器状态实时监控可以最大限度的预防工程事故的发生,在复杂井段和事故多发井段的使用作用更为明显,图形化处理简单明了,声光预警功能辅助操作和井台司钻提前做出预判,弥补了井台司钻指重计误差大,反应慢的缺陷,及时降低了事故发生的机率;而工程参数的曲线回放功能,在发生工程事故时能够回溯还原真相具有事故追责功效,对违规操作起到一定的震慑作用,对规范作业起到积极作用。

4 思考

基于电磁波传输的工程监控地面系统的优势固然明显,但是也是有一定的局限性,由于电磁波传输主要影响因素是地层电阻率,所以对于不适合的地层还需要通过双向通讯技术和传输中继等技术来提高电磁波传输的距离和质量。泥浆脉冲方式和电磁波传输的互相补充也不失为一种有效的解决方案,但关键的技术还在于解码算法和解码方式的改进和提高才能从根本上解决问题,这也是留给科技攻关人员的一个技术使命。

猜你喜欢
测井仪器模板
本期广告索引
八扇区水泥胶结测井仪刻度及测井数据处理
我国古代的天文仪器
铝模板在高层建筑施工中的应用
城市综改 可推广的模板较少
基于测井响应评价煤岩结构特征
中石油首个全国测井行业标准发布
星敏感器用仪器星等的确定