日期:2023-01-24 阅读量:0次 所属栏目:软件技术
摘要:以采煤机作为震源的回采工作面随采地震探测技术是获取精准开采地质条件、提高工作面内部地质异常体探测精度、实现无人/少人化智能开采的关键,具有广泛的应用前景。而常规的地震数据处理软件不能满足随采地震数据实时、连续不间断、大数据量等要求。通过分析随采地震探测技术的数据处理软件的需求,提出了分层、多任务的随采地震数据处理软件(SWM)的框架体系,并详细介绍了软件框架中各层、各任务的组成成分及其功能。该系统集数据管理、数据展示、数据处理和成果展示于一体,满足随采地震数据实时、连续及大数据量的需求。
关键词:随采地震;智能开采;软件研发;实时多任务
近年来,矿井槽波地震勘探技术为煤矿工作面回采解决了很多地质问题,但这种探测技术通常要求以炸药作为震源,用来提高槽波波场信噪比。这种震源方式在高瓦斯、煤与瓦斯突出矿井中的施工较为受限,同时在施工时往往要求停止生产,从而影响到煤矿的正常生产活动。此外,该技术为静态一次性探测,难以反映回采工作面内的动态应力变化。随着煤矿生产的发展转向高效化、自动化、集约化和智能化,以采煤机切割时的震动作为震源的随采地震探测技术被提出并越来越受到重视。
20世纪80年代末,有学者提出利用采煤机作为震源对回采工作面内部进行探测[1-2],然而由于激发能量以及采煤机位置无法自动定位等问题未能深入研究。直到2008年,XunLuo等[3-4]用采煤机震源对回采工作面内部的应力进行探测,获得了第一个有意义的结果。陆斌等[5-7]和覃思等[8-9]分别研究了随采地震信号的干涉成像法和井地联合探测方法,研究结果表明,随采地震技术可以用来实时监测工作面采动过程中应力的变化,及时发现危险区域并做出灾害预警。
得益于地震干涉技术[10]的快速进步,随采地震技术越来越受到重视,相关技术研究也得以进一步深入。但由于缺少配套软件的支撑,采集的资料得不到有效处理,该技术的发展受到一定制约。常规地震数据处理软件应用于随采地震数据时存在诸多问题,如不满足随采地震的实时、连续不间断的大数据量处理需求,达不到随采随探的目的;不具有随采地震数据处理所需的处理模块,无法单独完成所有处理流程。因此现有软件系统无法满足随采地震数据的处理需求,迫切需要开发一套适用于随采地震数据处理的软件系统(SeismicofWhileMining,简称SWM),推动这一新技术的发展应用。针对随采地震数据的处理需求,采用分层模型[11-14]及实时多任务的体系设计了SWM软件体。通过分层,使得数据管理、界面显示和数据处理模块逻辑性分开,从而使软件具有更好的适应性和可扩展性。
1SWM软件体系架构
1.1数据层
数据层负责规范数据的定义、格式、存储、转换和导入导出等。随采地震数据类型多、数据量巨大,采集过程中每天的原始数据达到数十GB,中间处理数据则更多。针对不同数据类型,定义了不同的数据结构。主要的数据类型包括:采集原始数据、观测系统、处理参数、干涉形成的虚拟共炮集数据、指标性数据、反演成像数据及其他一些数据类型(如导入的CAD材料图、从采煤机获取的采煤机位置、滚筒高度、截割速度、功率等)。
数据层中的上述数据类型,其大小差异较大,考虑到运行效率问题,依据数据大小以及访问频率将其按两种存储方式进行储存。如原始数据、虚拟共炮集数据、反演成像数据等数据量特别巨大的数据类型,不适宜存储到存储库中,否则会严重降低查询效率。将其以文件形式存入磁盘阵列,数据的具体信息,如文件名、采样率、道长、道数、对应观测系统索引号以及采集起始时间等,存储到数据库信息表中,便于管理、查询和访问。其他类型数据则分别建立数据库表进行存储。
数据层除了数据格式的规范定义、存储,还包括了数据格式转换,以及导入导出等功能。比如从导入地震数据中提取观测系统,或导出时将观测系统存储到导出地震数据的道头。此外,还为各种数据类型定义了读写接口函数,便于应用层的数据处理模块访问和存储数据。
1.2表示层
地震数据处理软件中,图形图像的高质量显示、界面设计的美观、实用以及交互显示的便捷性等都是较为重要的特征。在实现这些特征的基础上,完成表示层将数据层中的数据在软件界面中绘制,以展示给用户进行分析与解释的功能。
SWM中需要展示的数据类型主要有地震数据、观测系统、属性数据、参数数据、日志数据以及成像剖面的显示。不同类型数据显示时还需要配合交互编辑等操作,如地震数据显示时,具有AGC、带通滤波、道间均衡以及局部放大等功能;观测系统显示时还需要交互编辑、导入导出等;属性数据的显示需与地震数据联动;成像结果显示时需要将其投放到CAD图中,以便与回采工作面的实际情况进行对比分析与解释;参数数据在进行编辑修改后需要实时通知处理模块对使用的处理参数进行及时更新,确保使用参数的一致性等。
除了UI桌面主线程对表示层进行控制外,应用层中的各模块的执行线程也可通过发送Windows消息控制相应数据,从而进行实时显示。
此外,SWM还需要通过表示层对以前的数据以视频方式进行回放展示,突出了随采地震的实时动态探测特点。
1.3应用层
应用层主要负责数据的处理,由几大功能相对独立的模块组成,是SWM软件系统的核心部分,最能体现SWM软件数据的处理效果。应用层只与数据层进行数据交换,从数据层读取数据,应用完毕后将输出的数据送入数据层进行存储。
SWM应用层模块设计主要依据于随采地震数据的处理流程,如图2所示,软件通过监听来判断是否有新数据需要进行处理、若无则继续等待,否则读入数据,然后利用地震干涉方法对数据进行处理,获得虚拟共炮集数据。接着利用该数据进行CT反演及反射波成像,通过循环流程作业实时处理所有采集到的随采地震数据记录。
依据上述流程,将应用层分成4个任务:数据监听、随采干涉、CT反演和反射成像。每个任务启动一个任务线程,互相之间独立运行,每个线程只与数据层进行数据访问和存储。这种方式的优点是任务间依赖度小,便于独立开发、调试和部署,也方便后续进行功能的扩展与维护。
应用层模块在数据处理完毕,需要进行结果显示时,通过发送Windows消息通知表示层实时显示需要显示的数据,从而将显示任务交予表示层执行。
1.3.1数据监听
由于随采地震数据的采集通过采集软件完成,采集软件采集到的数据根据时间进行分段,并以文件形式保存,同时将数据的关键信息存入数据库表中。SWM通过数据监听的方式判断是否有新采集数据,若有则将新数据信息和记录通过表示层进行实时显示,并给应用层的处理线程发送windows消息,使处理线程完成对该数据的处理;若无则线程进入短暂休眠状态,结束休眠后继续监听。
1.3.2地震干涉
地震干涉模块的作用是通过地震干涉方法将随采地震数据处理成虚拟共炮集记录,并计算出数据指标,用于判断采煤机的工作状态(停机、空转和采煤)。
地震干涉模块从数据层访问并读入数据,完成后将处理结果中的指标数据、互相关时差数据及虚拟炮集数据经数据层进行存储,并给表示层发送消息,以实时显示相关处理结果。
1.3.3CT反演
CT反演将地震干涉模块获得的走时信息,经预处理后进行CT层析成像,获得更新后的波传播速度,再通过给表示层发送消息对反演结果进行实时显示,并通过数据层进行保存。
采掘过程中,工作面内部煤层应力会发生变化,但应力短时间内变化很小,实时CT反演占用大量计算资源降低计算效率。因此SWM采取每割一刀煤进行一次CT反演,并与上一刀煤的反演结果做差,获得割煤过程中地震波传播速度的变化,以此来反应工作面内应力的变化,从而避免了地层本身的应力分布差异。
1.3.4反射波成像
与CT反演模块相似,反射波成像属于长期对静态目标进行多次成像,应符合叠加要求。数据的读取、存储及显示等其他方面,实现方式与CT反演相同。
2SWM软件具体实现
2.1关键数据类型定义
2.1.1工区数据类型
采用如下数据结构定义SWM的工区数据,主要包含了工区数据保存路径、工作面长和宽以及网格划分间隔、工区建立时间等,具体如表1所示。
2.1.2随采原始数据类型
原始数据是SWM中数据量最大的数据类型之一,这一类型数据的信息通过建立数据信息表的方式保存到数据库中便于查询和访问,而数据则以文件形式存入磁盘阵列。其中每一数据文件对应一个索引号,同时指定该数据的观测系统索引号。具体的数据信息表如表2所示。
2.1.3观测系统数据类型
地震数据处理软件中,采集观测系统具有重要的作用,是不可或缺的。SWM中考虑到工作面回采时观测系统会根据实际情况进行调整(如增删、移动等),专门为观测系统建立了数据库表,在每次调整后将新的观测系统保存入数据库表中,并与采集数据通过索引号进行一一对应。观测系统数据库表设计如表3所示,其中,xyz和channelinfo两字段按二进制格式存储到数据库中。各数据项通过观测系统索引号获得对应的观测系统坐标。
2.2并行处理机制
由1.3节可知,SWM的核心应用层将整个实时处理分为4个关键任务模块,这几个模块之间相互独立运行,每个任务模块均通过一个工作线程执行各自的处理任务。在计算量较大的地震干涉、CT反演和反射波成像3个关键任务中,采用OpenMP自动进行多线程并行加速,以满足大数据量数据处理时对实时性的要求。在实际运行时,SWM采用每两分钟存储一个原始数据文件,这个文件通常会在1min内处理完毕,达到了实时性目的。
为了避免线程之间资源共享冲突,保证线程运行安全稳定,各工作线程通过数据库完成对数据层的访问与存储,由数据库来实现多线程对数据的共享访问。与表示层则通过Windows消息机制进行通信,同样通过数据库完成数据读取,最终成图显示。此外,对同一数据访问时,通过全局变量来避免数据存取错误甚至系统死锁。
3SWM软件的特点
基于应用层、数据层和表示层的分层模式和多任务机制开发的SWM软件体系结构具有以下几个优点:
a.分层模式的体系结构使得软件整个架构比较整洁、每层的功能设计相对明确,降低了软件开发难度,提高了软件运行的稳定性和可靠性。
b.应用层采用多任务并发机制,且各任务相互独立,以并行方式运行,互不干扰。这种方式使得各个模块能够单独编写、调试,提高了软件的可扩展性,便于后续模块的集成,同时也降低了后续软件的升级维护难度。
4SWM软件案例应用
在贵州某矿随采地震项目中对研发的SWM软件进行了2个月调试,各项指标均满足预定设计要求,并在随后进行了为期3个月的全面试运行,软件稳定性、实时性均符合要求。测试结果如图3—图5所示,图3为实测的地震记录波形显示剖面,该剖面进行了去直流、去工频干扰和道均衡等预处理;图4为数据处理界面,图形上部曲线为地震干涉计算的互相关曲线,大值表示采煤机正在截割,较为平稳的低值则表示采煤机处于停机状态。图的下部分的左边为观测系统图,用户可通过点击任一绿色检波点;图的下部分的右边显示的是对应的干涉虚拟炮集记录;图5为在采煤机截割一刀后反演得到的采煤工作面内地震波传播速度,用于反映工作面内应力的分布情况。
稳定运行期间,采样率设置为2000Hz,采集软件每隔2.5min输出一个采集数据文件,SWM可在0.5min左右完成对该数据的预处理、地震干涉和反演成像等,较好地完成了实时性要求。
5结论
a.针对随采地震数据处理的实际需求,本文开发了基于多层模式、多任务并行机制的随采地震数据处理系统的体系结构,并在该结构的基础上完成了软件的具体实现过程。
b.经现场长时间联调测试,研发的SWM软件运行稳定、可靠性好、易于功能扩展,基本满足了随采地震数据处理的大数据量、实时性、稳定性等要求,有助于促进随采地震技术的进一步发展。
本文链接:http://www.qk112.com/lwfw/jsjlw/ruanjianjishu/228859.html