无电缆测井中大批量数据存储与传输模块的实现

发布时间:2010-8-31 19:38    发布者:conniede
关键词: 传输模块 , 数据存储 , 无电缆测井
引 言

随着石油勘探开发水平的提高,水平井、大斜度井、大位移井在油田开发中已相当普遍。与之相配套的测井技术也得到了很大发展。我国于90年代初相继研制成功了电缆湿接头钻杆推进测井技术、钻杆推进保护套式测井技术,基本解决了水平井的测井问题。但此类技术施工难度大、成本极高,而且测井成功率较低。

通信技术与计算机技术的飞速发展,以及各种大规模集成电路性价比的不断提高,使得使用大规模存储设备成为可能。因此,我们根据水平井测井的特殊要求,提出了一种不采用测井电缆的水平井测井方法__钻杆推进无电缆测井模式。简化了水平井测井的工艺,降低了成本,经过试验证明具有较高的测井成功率,解决了目前油田开发急需解决的问题。

无电缆测井系统

钻杆推进无电缆测井系统由地面和井下两部分构成(见图1)。


                                  图1 钻杆推进无电缆测井系统的构成

地面部分的主要功能为深度—时间测量。它利用原有的测井地面设备加装一钻杆移动深度—时间测量装置,实时记录钻杆的深度、速度和相对应的时间,并以文件形式进行存储。

井下部分包括原有的井下仪器以及井下数据采集系统。其中,井下数据采集系统是整个系统的核心装置。其主要功能是以等时的方式将井下仪器送来的信号进行采样,并将其以文件的形式记录在大容量存储体中,从而获得数据与时间的对应关系。

系统工作过程如下:

在井场作测井准备时,利用地面系统主计算机的串行通信方式,通过临时连接电缆与准备下井的井下数据采集系统进行通信,其通信目的是向井下数据采集授时,使主计算机与井下部分时钟校准;设置预定采样深度的井下压力值,作该数据采集系统起动采集,并设置井下仪器供电的临界值;同时在地面对井下仪器进行刻度,将刻度数据通过串行接口输入主计算机。

将数据采集模块和下井仪器与钻杆相连,推送下井。地面系统记录深度和时间的关系数据,当下井仪器被推送到预定的测井深度时,数据采集模块中的压力检测电路测得其数值和预定的压力值相等时,打开逆变电源向井下测井仪器供电,此时数据采集模块以等时方式采集测井数据并存入闪存中。此过程一直到仪器到达井底,然后又上提到停止测井的深度,即闪存中记录了下放和上提两个过程中测井的相应数据,此时关闭逆变电源。

当仪器提出井口,在地面,通过临时电缆将数据采集模块与主机串口相连,将闪存中存储的井下测井数据传输到主机中。主机将地面系统记录的深度--时间数据和井下系统记录的地层参数—时间数据进行处理,得到完整的测井资料(即地层参数—深度对应关系数据),此时完成了整个测井过程。

整个系统中,井下数据采集、存储和传输模块是关键部分。由于几千米井下,温度高、压力强、湿度大,环境条件十分恶劣。因此,井下数据采集、存储和传输模块除了必须选用军品级器件外,还必须做热备份,使用完全相同的两套电路,同时独立地进行测井数据的采集和记录。保证测井的高成功率。下面给出数据采集、存储与传输模块的软硬件设计。

数据存储与传输模块设计

硬件设计

数据存储与传输模块的主要功能就是等时(0.5s)地从井下仪器中采集测井数据,并将数据存储到闪存中,待测井结束后,该模块通过RS-485总线将存储的测井数据传输给主机,通信速率为300Kbit/s。闪存的存储容量为10M字节。另外该模块还可对保温瓶温度等模拟量进行采集。在整个测井过程中数据能否可靠地存储与传输是整个测井成功与否的关键,其结构框图如图2所示。主要由CPU(8751)、程序存储器、数据存储器、FLASH存储器、时钟振荡器、RS-485接口,A/D转换器、译码及控制电路和日历时钟等部分组成。




                                         图2 数据存储与传输模块框图

本系统的主控芯片是MD87C51单片机,负责整个模块的协调工作,主要任务包含:与主计算机通过RS-485通信、将采集的数据记录在大容量的闪存中,这里使用了XILINX公司的XC3030来对地址进行译码,使得单片机能够访问大容量的闪存。日历时钟电路主要实现准确计时的任务,包含:接收主计算机下发的系统时间,对本时钟电路进行授时,保证主计算机和本电路的时间同步;通过计时器对时间进行累计,与主控芯片MD87C51通过串口通信。A/D转换电路主要由AD7824实现,用以采集系统所需的相关数据,通过单片机总线传送给主控模块MD87C51。

大容量数据存储的实现是使用了20片AMD公司生产的闪存芯片AM29F040B(每片容量为512K)。译码电路,使用了XILINX公司的可编程门阵列XC3030。通过硬件描述语言对XC3030进行编程配置,产生所需的地址译码。由于MD87C51的寻址空间最大为64K,这里采用了锁存低8位地址的方式来对闪存进行寻址。单片机为每片闪存分配了2K的地址空间。单片机读写闪存的时候,需要先将相应地址的低8位锁存入XC3030,然后再对相应的2K空间进行操作。这样,就可以运用普通的51单片机访问大容量的存储器。运用这种方式,可以灵活运用51单片机进行大地址空间的访问。

日历时钟电路在整个无电缆测井系统中占有重要的地位,其定时精度直接影响到测井数据与时间的对应关系。采用MD87C51单片机作为日历时钟电路的控制处理器,通过定时器中断进行时间累加,同时通过串行口与主控单片机通信。

软件设计

软件设计分为两部分,主控单片机的程序设计和日历时钟电路中单片机的程序设计。

主控单片机程序包括一个主程序和两个中断服务子程序。中断服务程序包含T0中断服务子程序和串口中断服务子程序,其中,T0中断服务予程序只是设定一个中断标志,不做任何其他工作;串口中断服务予程序的主要工作是接收和发送数据。主程序控制整个模块的工作状态,数据存储与传输模块存在两种工作状态,即地面通信状态和井下测井状态,其中,地面通信状态就是在地面与主机相接,和主机之间进行通信,包括初始化(擦除闪存等)、刻度以及数据传输等;而进入井下测井状态后,主要工作是每隔0.5s收集一次井下仪器的测井数据,并将它写入闪存中。主程序框图如图3所示。






                                       图3 主控单片机软件流程

上电复位后,首先进行系统的初始化工作,随后查询主计算机是否发送命令,判断命令类型,根据相应的初始化命令、刻度命令、数据传输命令或者压力到达临界值命令,进行设置时间、 送刻度数据、传输测井数据或者进入测井状态等操作。

日历时钟的软件包含一个主程序和两个中断服务子程序(T0和串行通信),T0中断服务程序主要是设置一个标志,主程序根据此标志进行时间累加,串行通信中断服务子程序主要任务是接收主控单片机的命令,并向主控单片机发送数据。上电后,先进行初始化,初始化后检查是否有T0中断,如果有,则进行时间累加,否则直接检测是否有M301命令,若有,处理命令,否则继续进行检测,命令主要包括初始化命令和传输时间值命令。

结 语

本系统的关键在于地面系统和井下仪器在时间上能够同步,这样就大大提高效率和方便性,实现了无电缆水平井测井,解决了水平井测井成本高的问题。

本系统使用了较少的硬件电路,较少的连线,充分使用了可编程逻辑器件和单片机的内部资源,达到了系统所需的功能和要求,提高了电路的可靠性和工作效率,成本和可维修性都大大高于分立逻辑器件设计模式。 在系统可靠性测试中,误差率在10-9以下。由于井下条件恶劣,因此井下仪器的器件需要选择高温器件。在实地测了多口水平井,取得理想结果。

目前,本系统已在胜利油田测井公司批量生产,在实际的油田测井中,工作稳定可靠,得到了用户单位的好评。
本文地址:https://www.eechina.com/thread-24858-1-1.html     【打印本页】

本站部分文章为转载或网友发布,目的在于传递和分享信息,并不代表本网赞同其观点和对其真实性负责;文章版权归原作者及原出处所有,如涉及作品内容、版权和其它问题,我们将根据著作权人的要求,第一时间更正或删除。
您需要登录后才可以发表评论 登录 | 立即注册

厂商推荐

相关视频

关于我们  -  服务条款  -  使用指南  -  站点地图  -  友情链接  -  联系我们
电子工程网 © 版权所有   京ICP备16069177号 | 京公网安备11010502021702
快速回复 返回顶部 返回列表