密勒码在随钻测井高速泥浆脉冲遥测系统中的应用
2015-12-13李安宗李传伟梁耀杨亮陈国兴
李安宗,李传伟,梁耀,杨亮,陈国兴
(中国石油集团测井有限公司随钻测井中心,陕西 西安710054)
0 引 言
随着测井技术的快速进步,随钻测井测量参数已发展为多种地质参数,需传输数据量的增加使得旧的泥浆脉冲传输系统不再适应新技术的发展要求。中国石油集团测井有限公司研制了中国首支方位侧向电阻率成像随钻测井仪,可以在随钻条件下测量地层电阻率,能够探测不同深度、不同方位的平均电阻率和衰减电阻率,具有边界探测功能;通过旋转扫描采集地层电阻率数据实现不同级别的地层成像,满足地质导向、地层评价和井眼成像的需求。该仪器的应用对数据传输速率提出了更高的要求。因此,实现高速泥浆脉冲遥测是随钻测井技术推广应用的重要环节。
中国通常采用1s脉宽进行工程服务,传输速率为0.8bit/s[1]。根据现有编码协议和方式,通过降低脉宽提高传输速率达不到高速泥浆脉冲遥测的速率指标要求[2]。寻求一种适用于泥浆传输信道特点的编码方式,研究满足泥浆信道特征的解码算法是实现高传输速率的重要内容。密勒码是一种典型的延时调相码,具有无直流分量、最大宽度为2T、可以进行误码检测等特点,采用密勒码编码的信号直流分量少,占用频带窄,抗干扰能力强,非常适用于随钻测井高速泥浆信道传输的要求。本文分析高速泥浆脉冲遥测系统数据序列传输格式,介绍基于密勒码编解码算法的实现,并采用MATLAB进行了仿真,验证了算法的正确性和可行性。
1 传输序列与编码
1.1 遥测数据序列
在泥浆脉冲遥测系统中,传输序列主要由2部分组成。①静态序列:静态同步头+序列1(静态数据);②动态序列:动态同步头+序列2(动态数据)。每帧传输数据包含1组静态序列和多组动态序列。
系统可通过对控制参数LoopBack的设置实现序列循环,例如配置有3个序列1、2、3(其中1为静态序列,2、3为动态序列),而选择的LoopBack值为2,即按照123232323…如此的序列传送(见图1)。
该方法能实现多种序列的传输,比如可以给某个序列全配成某种参数,而在钻进中需要这个参数时可以快速呈现这个参数,相比现有的序列传输方式有一定的优点。
1.2 同步字定义
序列传输系统中包含2个同步字,同步字1(静态同步头)和同步字2(动态数据同步头)。
图1 传输序列格式
(1)静态同步头。同步字1又称静态同步头,用来在一帧数据传输、处理过程中对齐数据,判断数据是否有效,设脉宽为T,那么同步头1持续时间为12T,波形如图2(a)所示。
(2)动态同步头。同步字2即动态数据同步头,它的主要功能是对齐动态数据,共占据6T时间,其波形如图2(b)所示。
图2 同步头
1.3 密勒编码规则
密勒码的特点是无直流分量,最大宽度2T(T为脉宽),这一性质可用于误码检测。其编码规则:①消息代码中的1用10或01表示;②消息代码中的0分为2种情况,单个“0”,在码元时间内不出现电平跳变,且与邻码元的边界处也不跳变;连“0”串,在2个“0”码元的边界处出现电平跳变,即“00”与“11”跳变。其编码示意图见图3。无论任何信息源,采用密勒编码后其脉宽只能是1T、1.5T、2T等3种状态,直流分量少,占用频带窄,其抗干扰能力强[3]。传输序列中,除静态同步头外,其他所有数据都需进行密勒编码传输。
图3 密勒编码示意图
2 密勒解码算法设计
接收序列正确解码的前提就是完成序列同步和每个数据位的位同步,由于同步字是已知的确定序列,故可采用相关检测的方法检测信号的存在并确定序列起始位置;而针对具体的数据脉冲,则可采用延迟锁定位同步技术和密勒解码方法得到相应的数据信息[4-5]。
2.1 序列同步
采用计算互相关的方法实现信号检测和序列同步,具体算法:假设接收的数字信号r1(n)=s(n)+v(n),其中s(n)为需检测的有用信号,v(n)为加性噪声,而r2(n)=sf(n)则作为本地参考信号(同步字序列),它们的相关函数可表示为
式中,N为本地参考序列长度,k=0,1,2,…,N-1。
由于信号与噪声不相关,故可认为Rvf(k)≈0,因此R(k)=Rsf(k),当本地参考信号与接收信号中的同步字对齐时,将得到最大值,据此即可实现同步字的检测和序列的同步。
2.2 位同步
接收信号的信息码元为密勒编码,码元为“1”时信息位内存在相位跳变,为“0”时信息位内无相位跳变,所以设计位时钟的1个时钟周期对应1个信息数据位宽。位同步环由数字延迟锁定环实现,用再生位时钟的上升沿锁定数据位的起始位置,位同步环的作用就是根据位同步环鉴别器输出的结果,对本地估算的再生时钟的上升沿进行连续不断的反馈调节,达到使本地估算的位同步时钟与接收信号相位跳变点同步的目的。
位同步环由积分清除器、鉴别器和环路滤波器组成(见图4)。其中,I(k)为输入的数据流,环路滤波器采用二阶环[6]。
图4 位同步环结构图
2.2.1 积分清除器
早门积分清除器累加再生位同步时钟高电平对应的数据段,迟门清除积分器累加再生位同步时钟低电平对应的数据段。
如果再生的位同步时钟没有误差,则早门积分清除结果和迟门积分清除结果绝对值完全相等;如果再生的位同步时钟存在误差,则早门积分清除结果和迟门积分清除结果绝对值不相等,两者的差值和位时钟与相位跳变真实位置偏差的大小成比例。早门、迟门积分清除器时序如图5所示。
图5 早门、迟门积分清除时序
2.2.2 误差鉴别与滤波器
根据|E|和|L|的大小判断位同步时钟的调整方向,同时把|E|-|L|作为鉴别结果输出。位同步时钟的调整过程可描述如下。
(1)如果|E|=|L|,位同步时钟没有偏差,不调整位同步时钟。
(2)如果|E|>|L|,迟门跨越数据位,输出的鉴别结果|E|-|L|为正,表明位同步时钟滞后,需要提前调节位同步时钟。
(3)如果|E|<|L|,早门跨越数据位,输出的鉴别结果|E|-|L|为负,表明位同步时钟超前,需要滞后调节位同步时钟。
环路滤波器对鉴别器的输出进行平滑滤波,用于滤除因随机噪声引起的抖动。
2.3 密勒解码
密勒编码中,码元“1”的中心部分存在相位跳变,且方波周期内正、负电平各占一半,码元“0”中心则不存在跳变,对每个数据位中前后半个数据位的积分清除结果进行符号位比较,若不同则判断数据位为“1”,若相同则判断数据位为“0”。
3 MATLAB仿真
密勒编解码方法仿真主要包含2个部分,接收信号的生成和同步解码[7]。分别给出这2个部分的仿真流程和仿真波形。仿真过程中使用的基本参数有:数据速率为10bit/s;采样速率为2kHz。
3.1 信号编码仿真
产生接收到的传输序列信号过程主要包含3个部分:①生成数据序列和同步头,完成信号组帧;②密勒编码后进行数据重采样;③根据设定信噪比叠加噪声信号。
(1)密勒编码波形。对于任意给定的数据序列,依据密勒编码规则,可得到编码和采样后数据如图6所示。
图6 密勒编码序列
(2)设定信噪比下接收信号波形。设定噪声平均功率与信号平均功率相等(即信噪比为0)时,叠加噪声前后的信号如图7所示。
图7 叠加噪声前后的接收信号
3.2 同步解码仿真
由密勒解码算法设计可知,解码过程主要包括3部分:①根据静态同步头相关计算实现序列同步即帧同步;②采用延迟锁定位同步技术完成数据位同步;③密勒解码得到数据序列。
3.3 仿真波形
(1)序列同步相关结果。接收信号从21bit开始是静态同步头,其余部分是0、1随机序列。针对4种不同的同步序列:定义的静态同步头、11bit巴克码、13bit巴克码、15bit的m序列。根据同步头是否参与密勒编码得到了不同的相关结果,分别如图8和图9所示。
图8 同步头参与密勒编码的相关结果
图9 同步头不参与密勒编码的相关结果
通过图8和图9对比可知,4种同步序列在参与密勒码编码后,整个数据带能量较为平均分布,不利于同步字信息提取;而4种同步序列未参与密勒编码时,其同步字在相关处理后能量较为集中(在40bit左右),有利于同步字信息的提取,13bit巴克码同步字相关结果能量更为集中。因此应用中采用了13bit巴克码作为同步字信号,并且不进行密勒码编码。
(2)解码误码率。对数据进行密勒码编码,在信号和噪声具有同样平均功率(即信噪比为0dB)时,信号编解码过程中的信号波形如图10所示。由仿真波形可知,在设定接收信号信噪比为0dB时,假设帧同步已完成,经位同步和密勒解码后得到的数据序列误码率为0。
图10 编解码过程信号波形
4 结 论
(1)通过分析高速泥浆脉冲遥测系统数据序列传输格式及其编解码方法,并采用MATLAB进行了仿真验证,证明了算法的正确性和可行性。
(2)该仿真仅针对信号编解码部分,说明了所设计解码算法的正确性和可行性。算法所能达到的精度(主要指误码率)需对各部分参数进行优化并分别逐步仿真来确定,只有如此才能体现出所设计算法的优势。
(3)对于信号检测和处理,解码前的数据预处理部分(滤波、采样等)非常关键,需要根据钻井现场各种噪声的特征设计处理算法,是提高信号解码率的关键。
[1]李传伟,杨亮,祝环芬,等.一种泥浆脉冲信号处理方法[J].测井技术,2013,37(2):187-190.
[2]刘修缮,苏义脑.泥浆脉冲信号传输速度研究[J].石油钻探技术,2000,10,28(5):24-26.
[3]樊昌信,曹丽娜.通信原理[M].6版.北京:国防工业出版社,2009.
[4]任敏华,张伟,徐国强.数字延迟锁定环设计技术研究[J].计算机工程,2007,33(17):262-264.
[5]李瑛,陶正,牛忠霞.基于延迟锁定环超宽带通信信号的跟踪算法[J].北京理工大学学报,2006,26(11):1019-1021.
[6]徐科军.信号分析与处理[M].北京:清华大学出版社,2005.
[7]Holly Moore.MATLAB实用教程[M].高会生等译.北京:电子工业出版社,2011.