随钻测井仪器在电缆测井系统中的测试实现
2015-12-24李国玉马明学
丰 扬 李国玉 马明学
(中海油田服务股份有限公司 北京 101149)
0 引 言
随钻电阻率测井对稳定性要求较高,每只仪器均需经过全面测试才能投入使用。一般情况下随钻电阻率仪器在进行实钻试验之前,只能在车间或者室外依据试验条件简单测量几个点的响应,信息量有限;而如果进行实钻试验,成本及风险都很高,这是一对矛盾。为了提高最终实钻试验的成功率,本文设计的仪器可以将随钻电阻率仪器挂接在电缆测井系统上面,在电缆井中测试随钻电阻率仪器的响应性能。
1 设计方案
本文设计的仪器(以下简称转换平台)实际是连接随钻电阻率仪器和电缆测井地面系统的桥梁。电缆测井地面系统的指令通过电缆传输到转换平台,通过转换平台转换为随钻测井仪器通讯总线协议(即中海油服内部定义的TBUS 总线协议)所约定的曼码数据格式下发给随钻电阻率仪器,仪器响应命令后将自身测量的数据上传到平台上,平台将数据转换为电缆测井仪器通讯总线协议(即中海油服内部定义的EDIB 总线协议)所约定的曼码格式上传到地面系统上,供测井解释工程师分析仪器响应性能。转换平台和其他仪器连接关系如图1所示。
图1 转换平台和其他仪器连接关系
2 硬件电路设计
系统整体设计采用DSP +FPGA +硬件编解码器的架构。其中,DSP 是系统控制核心,FPGA 负责EDIB 总线通信的曼码编解码;硬件编解码器(HI15530[1])负责TBUS 总线通信的曼码编解码,如图2 所示。
图2 转换平台功能示意图
2.1 EDIB 总线通信单元电路
转换平台与电缆测井系统的通讯利用曼切斯特编解码模块完成,该模块使用Verilog -HDL 语言在FPGA(A3P060)内部设计实现编、解码,FPGA 被配置到DSP(TMS320F2812[2])的外部扩展区XINTF Zone 0,通过片选信号XZCS0AND1 来选通FPGA。当FPGA 收到地面系统指令时,先进行曼码解码,然后会上升沿触发DSP的中断XINT2,DSP 响应中断,通过地址总线(A0 -A4、A13,起始地址是FPGA 所在的0X02000)访问相应存储单元,通过数据线(D0 至D15)读取FPGA 存储单元的指令。DSP 和FPGA 的电路设计分别如图3、图4 所示。
2.2 TBUS 通信单元电路
图3 DSP 电路设计图
随钻电阻率仪器通过TBUS 总线与转换平台进行通信,转换平台控制电路中的DSP 通过SPI 接口及曼码编解码模块(芯片HI15530 及SN74LVC157 组成)将地面系统指令下发给随钻电阻率仪器;数据也要通过该方式上传到DSP 上面。TBUS 上面曼码的传输速率是40kbps,而DSP 输出的系统时钟(SYSOUTCLK[3])、高速时钟(HSPCLK)都是12.288MHz×5/2 =30.72MHz,经过DSP内部64 分频得到时钟CLK12X 在55 脚定时器4(Timer 4)输出480kHZ 频率的方波信号,正好满足15530[4]编、解码时钟(23 脚ENCODER CLK、5 脚DECODER CLK)要求是数据传输速率的12 倍。DSP 的SPI[5]口配置是在SPICTL 寄存器内完成,本设计中设置MASTER/SLAVE=0,表明DSP 工作在从模式,15530 工作在主模式,当DSP 的SPI 为从模式时,时钟SPICLK 需要外设时钟提供,这里就需要15530 的编码、解码时钟给SPI 模块使用。编解码电路如图5 所示。
2.2.1 转换平台通过TBUS 总线下发指令到随钻电阻率仪器
地面系统曼码指令经FPGA 解码后,FPGA 触发DSP的中断2(XINT2),DSP 响应中断读取分配给FPGA 的外设空间地址上的指令,然后DSP 将46 脚输出0,则与之相连的多路选择器SN74LVC157 的1 脚被置低,A 通道使能;同时DSP 将指令放入SPI 口的发送串行输出缓冲寄存器SPITXBUF 里。DSP 将57 脚置高,则15530 的SYNC SELECT 为高电平,表示编码的字是命令同步。DSP 再将53 脚输出1,则硬件编码器HI15530 的19 脚被置高,编码使能,此时HI15530 的21 脚输出高电平并送到多路选择器的5 脚,则它的7 脚输出高电平,经过反向器为低电平,再送到DSP 的SPI 口使能端35 脚,此时指令就通过SPI 口的41 口(SPISOMI)输入到HI15530 的编码入口18 脚。编码过程是:在ENCODER SHIFT CLK(此时钟是ENCODER CLK 的1/12,即40kHz)的下降沿,如果19 脚(ENCODER ENABLE)为高电平则编码开始,编码周期长度是20 个ENCODER SHIFT CLK。当编码器准备好接收数据时,SEND DATA 输出高电平并维持16个ENCODER SHIFT CLK。在16 个周期内数据在ENCODER SHIFT CLK 上升沿由SERIAL DATA IN 进入编码器,最后再加1bit 的奇偶校验位。3bit 同步位和16bit数据及1bit 校验位共20bit 编码后在BIPOLAR ONE OUT和BIPOLAR ZERO OUT 输出给TBUS 驱动电路,进而发送到随钻电阻率仪器上面。
2.2.2 随钻电阻率仪器通过TBUS 总线上传数据到转换平台
图4 FPGA 电路设计图
图5 TBUS 总线曼码编解码电路
随钻电阻率仪器数据通过驱动电路到达15530 数据输入接口BIPOLAR ZERO IN、BIPOLAR ONE IN,15530运行后会一直监听这两个口,若出现一个有效的同步字符及2bit 有效数据,那么一轮解码开始。当有效同步位被识别后,同步类型将在COMMAND/DATA SYNC(10脚)端口输出到DSP,1 代表命令,0 代表数据,并且维持16 个DECODER SHIFT CLK(40 kHz)。与此同时TAKE DATA 引脚会输出高电平并送到多路选择器的6 脚,此信号会维持到16bit 数据在SERIAL DATA OUT 引脚输出完毕。由于在中断XINT2 服务子程序执行完之前,DSP 将46 脚置1,则与之相连的多路选择器SN74LVC157 的1 脚被置1,B 通道使能;此时HI15530 的3 脚(TAKE DATA)输出高电平并送到多路选择器的6脚,则它的7 脚输出高电平,经过反向器为低电平,再送到DSP 的SPI 口使能端35 脚,SPI 被使能。这样在DECODER SHIFT CLK 的上升沿16bit 被依次输出到SPI 的接收缓冲寄存器SPIRXBUF 里。16bit 输出完毕后进行奇偶校验,如果正确,那么在VALID WORD(1 脚)输出高电平表示一次解码完毕,这个上升沿会触发DSP 的中断1(XINT1),DSP 响应中断读取SPIRXBUF 里的数据并存储在内部RAM 中。在中断1 服务子程序里DSP 在读出SPIRXBUF 中数据后会复位SPI 口,这是为了此时如果15530 再次收到随钻仪器数据时,可以继续写入到该缓冲器内。随钻仪器会将启动一次采集后测量的数据通过SPI 发送到DSP 存储,当地面系统来上传数据指令时,数据就会通过并行数据总线(D0 至D15)上传到FPGA 的三级FIFO 中,并进行曼码编码,然后通过EDIB 总线上传给地面测井系统。
3 软件设计
EDIB 通讯协议[6]是中海油服公司具有自主知识产权的ELIS 测井系统所使用的通讯协议,总线采用CMD、Mode2、Mode5、Mode7 四种工作模式,其中本文用到的CMD 的传 输速率为20. 83kbps,Mode5 的 传 输 速率为93.75 kbps。该协议上的命令和数据传输采用差分曼彻斯特编码方式,高电平到低电平的跳变代表“1”,低电平到高电平的跳变代表“0”。
3.1 DSP 程序设计
转换平台控制电路以DSP (TMS320F2812)为核心,完成测控命令的转发和解读,程序总体流程图如图6 所示。首先是系统初始化,然后开外部中断1、2,中断1 是编解码器15530 收到随钻仪器数据后触发DSP 产生的。
中断2 是地面系统下发指令给转换平台,由FPGA解码后触发DSP 产生的。接下来使能看门狗。然后程序进入while(1)的死循环,除非有中断1 或者2 到来。某一时刻某一中断进来,系统进行判断,如果是中断2,执行以下判断语句。如果是授时指令,那么DSP 通过SPI 接口将当前时间发送给15530 编码后通过TBUS 总线传送到随钻仪器上。如果是采集指令,也是这样。如果是上传数据指令,每次都先检查已写入FPGA 的FIFO的数据长度,如果当前长度小于全部数据总长度时,DSP通过16 位并行数据总线将数据传输给FPGA 的三级FIFO,然后跳出中断。此时FPGA 统计当前字数,如果此时数据长度不够,会继续发来中断2,DSP 响应中断继续往FPGA 内写数据,直到所有数据写完,即使FPGA 再发中断DSP 也不会给数据。这时FPGA 将数据编码并发送到地面系统。如果DSP 判断本次来的是中断1,表示15530 收到了随钻仪器通过TBUS 上传的数据,DSP 响应中断,使能SPI 接口,将数据读进来缓存,等待地面系统读取数据。
图6 DSP 程序流程图
3.2 FPGA 程序设计
转换平台与电缆测井系统通讯所使用的曼码编解码模块由FPGA 实现。利用Verilog HDL 语言实现FPGA内部的编解码逻辑电路,通过ModelSim 对代码进行前仿真,CMD 通道下发到转换平台的解码指令如图7 所示,指令内容是0x3241,表示让转换平台上传数据给电缆测井系统,在DATA_WORD 输出。转换平台上传给地面系统的编码数据(部分截图)如图8 所示,数据开始是8 个0,然后是同步头1,然后就是依次写入3 个FIFO 的数据0x5A3C、0xAC35、0x35C5。由上述波形可见,下发指令和上传数据都正确。
图7 地面系统下发到转换平台的指令
图8 转换平台上传到地面系统的数据
4 结 论
系统整体调试后测试结果如图9 所示。图中数字1波形代表地面系统下发到转换平台上面的采集指令(码率20.83kbps),图中数字3 波形代表仪器通过TBUS 总线传输给转换平台数据(码率为40kbps)。当地面系统给转换平台发送上传数据指令时(如图中数字2 所示波形,码率20.83kbps),转换平台要在20ms 内响应该指令把之前收到的电阻率数据打包发送到地面系统,如图中数字4 所示波形(码率为93.75kbps)。其余波形代表发送给其他仪器的指令。
图9 系统联调结果
目前该设计已投入实际测井使用,测得的电阻率数据通过解释反演得到电阻率曲线,和成熟仪器对比后发现相关性较好,曲线合理,同时测试过程中转换平台误码率也较低,大约为千分之一,可以满足测井要求。该转换平台并不仅限于随钻电阻率仪器挂接在电缆测井系统上面使用,通过更改DSP 代码,也可以应用于其他随钻仪器在电缆井中测试使用,具有一定通用性。
[1] HOLT INTEGRATED CIRCUITS INC. HI - 15530 5V/3.3VManchester Encoder/Decoder[Z]. 2013(资料)
[2]TEXAS INSTRUMENTS. TMS320F2812 Digital Signal Processors Data Manual[Z]. April 2001 – Revised March 2011:42 -43
[3]苏奎峰,吕 强,耿庆峰,等. TMS320F2812 原理与开发[M].北京:电子工业出版社,2005:22 -23
[4]王位宾.HD-15530[J].遥测遥控,1992,17(5):24 -27
[5]TEXAS INSTRUMENTS. TMS320x281x Serial Peripheral Interface Reference Guide[Z]. June 2002 –Revised February 2009:10 -30
[6]李 苏,李 辉,李春楠,等. FPGA 技术在数字声波升级仪器中的应用[J].电子质量,2011,32(6):40 -42