单芯测井电缆高速数据传输系统下行链路设计与实现
2015-05-09屈毅陈伟顾庆水陶爱华张菊茜
屈毅, 陈伟, 顾庆水, 陶爱华, 张菊茜
(1.电子科技大学, 四川 成都 611731; 2.中海油田服务股份有限公司油田技术研究院, 北京 101149)
0 引 言
单芯电缆测井系统中,为简化井下仪器的复杂度,系统上行和下行采用不同的调制方式。上行链路数据量大,实时性要求高,为了实现数据的高速传输,采用频带利用率高的自适应OFDM调制技术[1];下行链路中的数据多是一些控制指令,对带宽和速率的要求不是很高,因此,常利用单芯电缆的低频段通过数字基带传输下发指令[2]。
AMI码具有无直流分量、自同步方便等优点,下行链路常用的数字基带传输为AMI码传输[3]。传输过程中,AMI码和直流供电信号一起耦合在单芯电缆上。耦合电路在其通带内的相频特性非线性,导致非常数的群时延,并最终致使AMI信号波形失真严重。为减小耦合电路的影响,通常可以采用模拟群时延均衡滤波器进行校正,但为了得到所需的均衡效果,均衡器需要较高的阶数,从而加大了设计和调试的难度。
相对数字基带传输,2FSK信号具有抗干扰能力强、受信道参数变化影响小、实现简单等特点,因此本文采用了基于DSP的2FSK调制解调技术。该方法将包含用户数据的逻辑帧分解为特定的字节符号;然后将字节符号中的码元调制为特定频率的2FSK信号;最后,在接收端利用状态机和FFT变换实现信号的解调操作[4-6]。经测试,该设计不仅很好地解决了接收端的位同步问题,而且使数据的误码率有了明显改善。
1 下行链路总体结构
设计的下行链路总体结构如图1所示。
图1 下行链路总体结构图
为实现单芯电缆下行链路数据的可靠传输,下发数据不仅包括测井过程中用户输入的数据,还包括测井初始化阶段的信道激活、训练序列以及比特分配表等系统数据,因此,在传输过程中需要将各种不同的数据通过逻辑帧进行标明。为了便于接收端的信号解调,逻辑帧中的每一个字节都采用一个特定的物理层字节符号进行传输。对于字节符号中的码元“0”和“1”,通过载波序列表将其调制为OFDM信号的1号和2号子载波序列,以保持下行信号和上行OFDM信号的正交性。离散信号经DAC、低通滤波器、耦合电路后,由单芯电缆传输至井下解调部分。
井下主要根据ADC采样得到的载波信号,利用状态机和8点FFT算法完成信号的解调,进而经组帧提取出有效数据。
2 系统设计
2.1 发送端设计
该设计重点是以DSP为平台的算法和程序设计。其中,发送端逻辑帧的具体结构见图2。逻辑帧以转义字符DLE和文本起始字符STX开始,以DLE和文本结束字符ETX结束,中间为数据段DAT。类型字符TYP用于标示DAT字段的数据类型。如果DAT字段中出现DLE字符,则在其前面插入一个DLE以便区别。
为了便于在解调端进行信号的位同步,采用的字节符号结构见图3,1个字节符号包含1个0值的起始位,8个数据位以及3个全1值的停止位。
图3 字节符号结构
图2 逻辑帧结构
对于字节符号中的每个码元,其持续时间内均对应16个采样点,并且码元之间相位连续。根据OFDM信号的1号和2号子载波的频率,2组采样点可事先生成,然后以数组的方式存放在DSP中,以方便使用时直接调用。
由此产生的2FSK序列经过DAC转换为模拟信号,然后通过低通滤波器滤除带外噪声,最终由功放将其放大后耦合至单芯电缆上。
2.2 接收端设计
2.2.1 8点实序列FFT运算
在接收端,仅需提取出每个码元对应载波的频率值便可以判断出该码元的具体值。因此,可通过FFT运算进行信号解调。由于载波经ADC采样后成为了一系列离散的实数值,而实数序列经2N点FFT变换后频域值具有共轭对称的性质,因此,对码元进行判决时,8点是2N点FFT运算的最小点数。
本文采用的8点实序列FFT的蝶形运算见图4。码元“1”的载波在1个周期内有8个离散点,从而对应着8点FFT后的y(1)值;码元“0”对应的载波在1个周期内有4个离散点,从而对应着y(2)值。因为只需要比较出2个频点模值的相对大小,所以也可以取消开平方操作以减小运算量。
本文采用的8点实序列FFT运算将变换结果中的8个值减少为2个,极大地减小了运算量。另外,无论对于码元“0”还是码元“1”,8点采样值均包含整数个载波周期,采用了连续相位的载波连接形式,可以大大减小频谱泄露的影响。
图4 8点实序列FFT蝶形运算
2.2.2 状态机解析
对于图3中的字节符号,要完成数据提取必须准确进行位同步操作。参考文献[7-9]提出了一系列的同步方法,但是对于单芯电缆测井系统,本文采用的同步方法实现较简单,在兼顾了消耗资源较少的情况下有着较高的运算速度,满足了单芯电缆测井的需要。
具体的解调过程通过状态机实现,状态机的转移过程见图5。
图5 状态转移图
(1) 上电激活:为便于接收端解调,发送端上电后,在未发送有效数据时设定为连续发送码元“1”。每个码元均对应16个采样点,8点的FFT可以看做一个滑动窗口,解调端可每间隔16个采样点将FFT窗口做1次滑动,并根据FFT运算结果得到|y(1)|2和|y(2)|2。由于直接根据两数的大小进行码元判定受噪声影响较大,因此,需定义一个相对门限以提高数据的准确性。门限设定如式(1)所示。
(1)
根据接收端的信号强度进行了大量测试分析,在兼顾尽量避免乘法操作的同时,最终将门限值τ设定为整数8(左移3位)。若连续多次判定结果均为码元“1”,则认为地面发送端已上电,上电激活状态完成。次数的具体设定与调制端上电后首个指令的发送有关,本文将这一参数设定为4。
(2) 下降沿判定:上电激活状态完成后,为了判断字节符号起始位下降沿的位置,需要逐位滑动FFT窗口。通过创建一个深度为17的循环缓冲区,FFT运算结果为
Error_y=|y(1)|2-|y(2)|2
(2)
将其值随着窗口的逐位滑动存入缓冲区内。为便于理解,令Error_y(i)表示循环缓冲区的第i个结果,即Error_y(1)为循环缓冲区内最先写入的差值,Error_y(17)为缓冲区内当前写入的差值,这2个差值之间相距16个采样点,即1个码元的长度,做到前后2个码元的准确对应。若缓冲区结果满足式(3)的关系,则认为前一个码元为“1”、后一个码元为“0”,即出现一个下降沿。
(3)
(3) 起始位确认:检测到下降沿时,若该位确实为起始位,那么对于图4所示的运算,在理论情况下,Error_y(17)对应的8点FFT中只需要x(0)至x(2)包含码元“1”的信息、x(3)至x(7)包含码元“0”的信息。因此,若将FFT窗口再次滑动7个采样点,此时FFT窗口所在的位置正好为起始位码元对应16个采样点的中间8个点。然后,根据式(1)的判决关系,如果再次判定为码元“0”,则认为起始位判定完成,进入数据位读取状态;如果判决为码元“1”,则认为下降沿判断是噪声引起的,返回下降沿判定状态;如果不满足式(2)的关系则认为调制端处于下电状态,进入上电激活状态。
(4) 数据位读取:在起始位确认阶段已经确定了起始位的中间位置,将FFT滑动窗口每间隔16个采样点滑动1次就可以分别对应8个数据位的中间位置。为了进一步提取数据,定义了一个16 bit的双字节缓存单元。该单元的低8 bit为通过FFT解调写入的8个数据位;高8 bit定义为标志位,用来判断写入低8 bit的数据是否有效。
实际实现时,由于采样数据存储在一个深度一定的缓冲区中,这可能会导致缓冲区内存入的并不是一帧完整的数据,因此需将该状态分为8个状态依次对d[7:0]的各位进行读取。另外,为了简化状态机,此处的数据位判定结果直接由|y(1)|2和|y(2)|2的大小关系决定,同时把数据有效性的判断留给停止位判定状态。
(5) 停止位判定:在8 bit数据尚未完全读取时存在调制端下电等情况,仅根据数据读取状态解调的结果并不能判断收到的8 bit数据是有效数据。因此,需要继续将FFT窗口做一次16点的滑动,此时FFT窗口对应着停止位E1的中间位置。根据式(2)判定后,若结果为码元“1”,则说明停止位判定生效,即一帧数据完整接收,从而在16 bit缓存单元的高8 bit内写入有效标志;否则,在16 bit缓存单元的高8 bit内写入无效标志并最终将该帧数据丢弃。至于停止位E2和E3的保留,是为了在连续接收下一帧数据时方便进行下降沿判定。
在完成状态机解析后,将获得的字节数据重新组合并形成逻辑帧;然后,通过解帧操作得到下发数据;最终,将该数据传送至井下仪器单元。
3 测试结果
在实验室环境下,利用7 600 m的单芯电缆对下行链路的设计进行了系统性能测试。其中,物理层传输速率可以达到610 bit/s;误码率测试的具体结果见表1。通过对系统数据和用户数据分别进行6 h的连续测试,结果并未出现误码,满足了一般测井作业的需求。
表1 误码率测试结果
4 结 论
(1) 通过对单芯电缆测井系统下行链路的各层数据进行具体划分,利用2FSK调制解调技术替代通用的基带传输方案设计了一种更加稳定可靠的传输系统。
(2) 该传输系统不仅减小了耦合电路对下行数据的影响,而且保证了下行信号和上行OFDM信号的正交性,同时解决了接收端位同步困难的问题,最终使系统的误码率有了明显改善。
(3) 单芯电缆测井系统正向耐高温、高速传输的方向发展,该传输系统的设计使得单芯电缆测井技术有了更广阔的发展空间。
参考文献:
[1] 张菊茜, 卢涛, 李群, 等. 一种基于OFDM技术的900 kbit/s测井数据传输系统 [J]. 测井技术, 2009, 3(1): 84-88.
[2] 张淑玲, 沈田. 曼彻斯特编码技术在测井数据传输中的应用研究 [J]. 计算机与数字工程, 37(9): 187-189.
[3] 陈国瑞, 赖学军. AMI码及其在有线遥测数传系统中的应用 [J]. 石油仪器, 1992, 6(4): 224-228.
[4] 肖妮, 孟超, 阮先丽. 基于DSTFT的FSK信号数字解调方法仿真 [J]. 无线通信技术, 2009(4): 40-43.
[5] 吴志敏, 黄红兵, 肖大光. 基于DFT的FSK数字化解调算法研究 [J]. 通信技术, 2008, 41(4): 36-41.
[6] Hara S, Wannasarnmaytha A, Tsuchida Y, et al. A Novel FSK Demodulation Method Using Short-time DFT Analysis for LEO Satellite Communication Systems [C]∥IEEE Transactions on Vehicular Technology, 1997, 46(3): 625-633.
[7] 胡延平, 李钢, 王展, 等. 一种基于DSTFT解调2FSK信号的新方法 [J]. 通信学报, 2000, 21(6): 54-59.
[8] 金文光, 张正宇, 唐少华, 等. 2FSK信号DSTFT解调算法中的同步新方法 [J]. 浙江大学学报: 工学版, 2011, 45(6): 1027-1031.
[9] 徐艺文, 陈忠辉, 李雷, 等. 基于DFT的2FSK信号解调自适应门限同步检测算法 [J]. 四川大学学报: 工程科学版, 2011, 43(1): 169-173.