《电子技术应用》

基于NiosII的微型数控测井地面系统研究

来源:电子技术应用2013年第5期 作者:杨青胜, 张先鹤, 詹习生
2013/7/10 9:06:00

摘   要: 研究一种基于NiosII软核的微型数控测井地面系统。该测井地面系统的核心部分是数据采集箱,利用超大规模的可编程逻辑器件SoPC技术,简化了采集箱的硬件结构,实现了采集箱的进一步微型化,提高了系统的性能,增强了系统的可维护性和可扩展性。
关键词: NiosII软核;数据采集箱;可编程逻辑器件

    测井起源于法国,1927年法国人斯仑贝谢兄弟发明了电测井,开始在欧洲勘探煤和油气,两年后传到美国和前苏联。自1927年发明测井以来,测井仪器发展经历了模拟时代、数字时代、数控时代,到现在已发展到成像时代。
    我国的测井技术研究开始于1939年,测井地面系统的发展经历了模拟测井地面系统、数字测井地面系统、数控测井地面系统,现在已发展到成像测井地面系统。我国的数控测井技术是从上世纪80年代初引进Atlas、Schlumberger、Halliburton等测井公司的数控测井设备开始的,随后我国自行研究的测井仪器装备也取得了重大的突破,获得了迅猛的发展,相继生产出一系列填补国内空白的数控测井设备,如HCS数控测井系统等。总的来说,我国对国际上比较流行的成像测井技术的应用刚刚起步,正在广泛运用数控测井技术并不断进行改进[1]。
1 数控测井地面系统的基本概念
    测井是获取地层地质信息的过程。它在石油勘探和开发中,是一门不可缺少的学科技术。对于数控测井地面系统,不管它是国产的还是进口的,一般来说,它们的硬件系统和软件系统都比较庞大。在硬件系统上,其庞大主要体现在硬件箱体比较多,元器件比较多,焊点比较多,因此,一般来说,这些地面系统维护成本不低,可靠性不高,出现故障后排除故障不易。在软件系统上,其庞大主要体现在程序种类多、测井之前输入参数多,因此,一般来说,这些软件使用起来比较烦琐,给使用者带来不便。在电子技术、信息技术和计算机技术高度发达的今天,完全可以在不降低功能和性能甚至功能和性能更高的前提下大大简化硬件系统和软件系统。
2 系统核心的数据采集箱
    本文要开发的数据采集箱,作为数控测井地面系统的核心部分,包括采集箱硬件电路和采集箱软件两部分。采集箱在整个数控测井地面系统中所要完成的功能和任务如图1所示。

    图中A套件和B套件是完全一样的箱体,其中一套用作备份系统,当地面系统在测井过程中出现故障时,操作员可以通过软件操作立即切换到备份系统,减少了许多不必要的麻烦。图中电源箱用于给井下仪器和地面系统供电;综控箱完成常规信号处理、井下仪器控制和电缆选择;采集箱主要完成各种信号的处理与采集,它是地面系统的核心。在采集箱软件的控制下,从井下上来的测井信号(包括电阻率、放射性测井的脉冲等)和来自地面的深度、张力、磁记号信号都进入相应的采集卡进行采集,采集的数据通过串口进入工控机。
    随着电子技术的高速发展,可编程逻辑器件的集成度越来越高,这给数控测井微型地面系统的设计带来了极大的灵活性和可靠性,完全可以采用FPGA技术,使设计高度集成,减少采集卡的数量和面积,实现数控测井微型地面系统进一步微型化。同时,由于Nios的出现和发展改变了人们使用CPU的传统观念,用户可以在任何有Altera FPGA的单板上使用CPU。有些CPU甚至只是用户作系统调试或者测试时用到,而将在正式发布的产品中去掉。毕竟,人们可以用Nios实现传统CPU无法实现的功能和想法。设计传统的嵌入式系统时,CPU和外设均采用分立器件,在PCB上互连,大量分立器件占用了不少PCB的空间,因此集成度较差。如果采用Nios系统,单板上只需一个Altera FPGA即可实现整个系统,这样大大提高了系统的集成度和可靠性。原来许多要通过专用集成电路(ASIC)完成的部分,全都用VHDL语言设计成NiosII系统功能子模块,同NiosII软核一起集成到Cyclone II系列FPGA中,从而提高了整个系统的性能[2]。
3 系统实现原理
3.1 数控测井数据采集箱的实现原理

    本系统可作为一个完整的测井数据采集和记录系统,通过该系统可方便地实现对不同类型的测井信号(模拟量、脉冲量和数字量)进行程控数据采集、测井状态控制、下井仪器供电的监测和调整等。根据实际要求,采集箱系统需要完成以下几个任务:
    (1) 实时地接收并执行上位机的命令(包括硬件和软件的设置)。
    (2) 发送命令,采集测井信号(包括深度信号、张力、模拟信号如电阻率、脉冲信号等)。
    (3) A/D不断地采集模拟信号,NiosII软核在中断发出后读取最新的采样值,经过处理后传给上位机。
    (4) 通过RS232串口,向上位机传送测井数据。
3.2 NiosII系统资源及使用原理
    NiosII系统各外围设备(Peripherals)内核都是以IP核的形式提供给用户的,用户可以根据实际需要把这些IP核集成到NiosII系统中去。一般包括:EPCS控制器、定时器、SDRAM控制器、CFI控制器、System ID和UART等。
4 系统方案的具体实现
4.1 系统方案概述

    考虑到NiosII系统的CPU核强大的运算处理功能,设计采用有丰富的I/O资源DE2开发板,采用以RS232串口通信的数控测井地面系统。整个系统包括深度信息处理及速度计算模块、A/D测井数据采样模块、放射性测井脉冲信号采集模块、曼彻斯特编解码模块以及上位机与NiosII软核数据通信部分。总的系统设计原理框图如图2所示[3-5]。

    当上位机向下发出控制命令时,深度信号处理模块根据所得到的脉冲中断数(发出一次中断所用的脉冲个数)按时发出中断,当NiosII软核收到中断信号后,将由AD0809采样得到的模拟信号张力、电阻率以及由脉冲频率计数器采集的放射性脉冲信号连同由深度信号处理模块得到的深度信息一并发送给上位机,通过上位机编写的串口通信程序将上述测井信号经过标度变换予以显示。
4.2 数据采集箱子系统
    该数据采集箱子系统在结构上主要分硬件和软件两部分。其中硬件部分包括: SD卡外设、串口UART和JTAG_UART、LCD及七段数码管显示、音频接口、按键开关及DPDT、LED、存储器Flash及SDRAM等;通过开发自己的用户功能模块,并与Altera提供的IP资源在SoPC Builder中进行有效的整合,通过Avalon总线与NiosII软核构成一个完整的系统。软件部分主要是使用基于Eclipse IDE构架的集成软件开发环境NiosII IDE以及上位机串口通信程序。 NiosII IDE用来编写自己的C/C++应用程序代码,完成NiosII 处理器系统的所有软件开发任务。C/C++应用程序代码主要用来编写NiosII系统与DE2开发板外设间的控制命令以及NiosII核内各个模块间的信号流程和控制。该系统的SoPC Builder资源如图3所示。

4.3 系统部分测试结果
    系统测试结果包括深度信号采集仿真、脉冲信号采集仿真、深度及速度信息的采集显示等。在此,以深度处理模块中深度计数部分为例。具体深度计数仿真波形如图4所示。在深度计数部分设计了一个32位的可逆计数器,在A、B信号的作用下,计数器做加减计数。从图4中可以看出,当系统复位信号有效时,深度计数的初始值为80000000H。在101 ns前,即A超前B时,方向信号为低,说明仪器被上提,计数器从80000000H做减计数,当减到EFFFFFE7H时,深度信号发生改变,B超前A,方向信号为高,仪器被下放,计数器从EFFFFFE7H开始做加计数。

 

 

    目前在我国各大油田,虽然也拥有成像测井地面系统,但由于其测井成本较高,一般只在比较复杂的探井测井中才使用,而对于大量的测井任务还是使用数控测井地面系统,而且在相当长的时期内,数控测井地面系统仍将是各测井公司的主力设备。本文将NiosII软核成功应用于数控测井地面系统中,使得地面系统进一步微型化,稳定性进一步提高。
参考文献
[1] 熊晓东.数控测井微型地面系统[M].北京:石油工业出版社, 2002.
[2] 张志刚.FPGA与SoPC设计教程——DE2实践[M].西安:西安电子科技大学出版社, 2007.
[3] 李洪伟,袁斯华.基于QUARTUS II的FPGA/CPLD设计[M]. 北京:电子工业出版社,2006.
[4] 刘秋云,王佳.Verilog HDL设计实践指导[M].北京:机械工业出版社,2005.
[5] 周立功. NiosII SoPC嵌入式系统开发指南[M].广州:广州周立功单片机发展有限公司,2005.

继续阅读>>