一种检测列车交通信号载波频率的方法

文档序号:4016595阅读:184来源:国知局
专利名称:一种检测列车交通信号载波频率的方法
技术领域
本发明涉及列车数字信号处理方法,尤其涉及列车交通信号载波频率的检测方法。
背景技术
目前列车交通信号主要制式包括AC、FSK和UM-71。列车交通信号的提取包括载频检测和计算低频调制信号频率。精确的载频检测是计算调制信号频率的关键。现有的载频检测方法一般为过零计数,它因为计算简单而获得了广泛应用,但计算延迟大,一般为0.4秒以上,但精确度和抗干扰能力比较差,不适合UM-71这类频率较高的制式。
另外有人用谱分析的方法计算载频和低频信号频率(魏学业,强干扰小信号检测的计算机仿真研究,《铁路计算机应用》,1998年第6期),但这种方法计算复杂,而且不适合逐点运算,并且也有比较大的延迟时间。

发明内容
本发明提供了一种列车交通信号载频检测方法,它不但具有延迟时间少,精确度高,好的信噪比性能和强抗干扰能力,而且计算简单。
为了解决上述技术问题,本发明提供了如下的技术方案一种检测列车交通信号载波频率的方法,它包括首先将列车的采样信号S(t)与参考信号进行相关运算;然后对所述的运算结果进行比较,并根据比较的结果确定信号的载波频率。
所述的参考信号是程序预先产生并以数组的形式存放在存储器中的,而且参考信号数组的长度对于不同的参考信号频率具有不同的长度。
所述的参考信号是由若干对正交的正弦和余弦信号组成,每一对参考信号对应一个载波的判决频率。
所述的相关运算是将采样信号与参考信号进行乘积、然后对乘积进行积分运算,再对积分进行平方和运算。
所述的积分运算可以采用逐点迭代的方式实现,也可以采用逐数据块批处理的方式。
所述的比较是通过检测器选取积分平方和最大值对应的频率点,然后输出结果;它还包括用非线性平滑滤波器对所述的输出结果进行修正。
本发明与现有技术相比,有显著的技术进步首先,本发明具有极低的延迟时间。载波频率检测延迟近似为互相关运算中积分区间长度的一半,即N/2个样点,对于UM-71就是6.3毫秒。非线性平滑滤波器的延迟为n个样点,可以忽略不计。计算调制信号频率的延迟为该调制信号周期的一半Tm/2=1/2fm,不同的调制频率对应不同的延迟时间。当调制信号频率为10.3Hz时,该延迟达到最大值为49毫秒;当调制信号频率为29Hz时,该延迟达到最小值为17毫秒。因此该算法的总延迟时间为近似23~56毫秒之间。而现有的技术一般为延迟0.4秒以上。
其次本发明具有很好的信噪比性能。假设信道中存在与信号不相关的功率为σN2/T的平稳白噪声N(t),则用四个参考信号(频率分别为fi,i=1,2,3,4)分别进行相关运算得到Ai(t)=|∫T[s(t)+N(t)]exp(2πfit)dt|2]]>考虑到噪声与信号不相关,可把上式写为如下形式Ai(t)=(∫T[s(t)+N(t)]exp(2πfit)dt)(∫T[s(t)+N(t)]exp(2πfit)dt)*]]>=∫T∫s(t)s*(τ)exp[2πfi(t-τ)]dtdτ+T∫T|N(t)|2dt]]>=S(fi)+σN2]]>其中S(fi)是信号的功率谱密度在频率点fi处的值。可见,由于噪声的存在,每个Ai(t)值都增加了一个相同的常数项σN2,而它对载波频率的判决比较是没有任何影响的。因此,本发明对任何强度的白噪声具有天然的抑制作用。
另外,本发明还具有很强的抗干扰能力。本发明实质上是计算采样信号在4个参考频率点上的功率密度谱值。假设信道中存在某个窄带干扰源,如果它的各次谐波分量与任何参考信号是非正交的,则对该干扰信号与参考信号的相关运算将得到一个有界的结果,不会对载波频率检测产生不利影响。因此在列车行驶过程中,上行与下行信号之间以及不同模式信号之间不会相互干扰。
当然本发明的计算非常简单。载波检测对每个采样点只进行8次乘法运算和4次平方和运算,以及为完成累加而进行的8次加、减法运算。采用特殊的参考信号使本算法需要的存储量非常小。非线性平滑滤波的计算量也非常小。


图1本发明的流程框图具体实施方式
本发明被应用到本公司的ATP(自动列车防护,Automatic TrainProtect)项目中。在ATP系统中,经过铁轨发送的列车交通信号被装置在列车上的传感器获取之后,经过采样和数模转化器(ADC)变为数字信号。采样率必须满足Nyquist(奈奎斯特)条件,过大的采样率会增加计算的复杂度,因而也是不需要的。对AC一般可设采样率为250Hz,对FSK设为5KHz,对UM-71设为10KHz。
如图1所示,它是本发明检测载波频率的框图。该方法采用了互相关检测算法的原理,该原理为如果将频率为f1的正弦信号s1(t)=sin(2πf1t)与一个频率为f2的正弦信号s2(t)=sin(2πf2t)相乘,得到s1(t)s2(t)=sin(2πfit)sin(2πf2t)=-12(cos[2π(f1+f2)t]-cos[2π(f1-f2)t]),]]>如果f1=f2,则上式变为一个高频分量cos(4πf1t)与一个直流分量的和。由于直流分量的存在,将上式对时间t进行积分的结果将随着时间而线性增长。
而如果f1≠f2,则上式是两个交流分量的和,其积分结果是有界的且是周期性的。
如图1所示,采样信号Sk(t)分别与四个频率为f1、f2、f3、f4、参考信号进行乘积、积分以及平方和运算,最后通过一个检测器选取最大值对应的频率点,作为载波频率判决输出。每个参考信号由一对正交的正弦sin(2πf1t)和余弦信号cos(2πf1t)组成,以解决采样信号的相位不确定性问题,每一路相关运算的输出值Ai(t)为Ai(t)=|∫Ts(t)sin(2πfit)dt|2+|∫Ts(t)cos(2πfit)dt|2]]>本发明是在定点DSP(数字信号处理)器件上用软件实现的,如果用浮点运算或者用硬件电路实现,也是可行的。在定点DSP器件上进行运算时,采样信号和参考信号可以设为256阶有符号数,即一个字节长度,经过乘积、积分和平方和运算后符号长度可能达到64bit,所以平方和运算以及判决部分要采用64bit的运算长度。
本发明的参考信号是由程序预先产生存放在存储器中的,如果采用硬件电路信号源产生或者在算法运行过程中通过三角函数计算实时产生信号源,也是可行的。
本发明的积分运算是采用逐点迭代的方式实现的,如果采用逐数据块批处理的方式也是可行的。所谓的迭代求和算法,即将采样信号与参考信号的乘积P(i)作为中间结果保存在一个先入先出(FIFO)的数据结构中,同时保存累加值A(i)。第k次采样后,先把当前乘积值P(k)输入FIFO数据结构中,同时从FIFO数据结构中输出最老的数值P(k-N),然后更新累加值A(k)=A(k-1)+P(k)-P(k-N)。其中N为FIFO数据结构的长度,表示积分区间。因为列车载波信号被一个低频信号调制,所以积分区间的长度对载频检测精度有一定影响。我们经过测试,发现对于FSK其最佳值为N=48,对于AC和UM-71为N=128。由于采用迭代求和,所以计算量非常小,而且与积分区间的长度无关。在DSP软件中FIFO数据结构可以用一个简单的循环数组实现。
本发明与Fourier(傅立叶)变换在本质上是一致的。如图1所示,每一路相关运算的输出值Ai(t)为Ai(t)=|∫Ts(t)sin(2πfit)dt|2+|∫Ts(t)cos(2πfit)dt|2]]>它可以被进一步写为如下形式Ai(t)=|∫Ts(t)sin(2πfit)dt+j∫Ts(t)cos(2πfit)dt|2]]>=|∫Ts(t){sin(2πfit)+jcos(2πfit)}dt|2]]>=|∫Ts(t)exp(2πfit)dt|2]]>上式最后得到了一个Fourier变换模平方的形式,所以相关检测可以被认为是只在几个离散的参考频率点上求信号的功率密度谱,其他无关的频率点不予理会,因此可以得到比谱分析算法更高的计算效率,而且更适合逐点运算。
由于信号采样带来了参考信号的相位不连续性问题。离散的参考信号由程序预先产生并保存在存储器中,每次进行相关运算时从中循环、顺序地取出一个数据。如果参考信号长度选取不当,则循环取数会产生不连续相位,从而导致迭代重新进入初始化。对于某一路参考信号ri(t)=sin(2πfit),其离散形式为ri(k)=ri(kTs)=sin(2πfikfs),]]>其中Ts和fs分别为采样间隔和采样频率。若要保证参考信号的相位连续,则其长度K必须使得 是2π的整数倍,即2πfiKfs=2πL,]]>或者
K=fsfiL.]]>即参考信号长度应为 的任意整数倍。对于AC制式(fi=25Hz,50Hz,75Hz,fs=250Hz),可以选择K=10;对于FSK制式(fi=550~850±55Hz,fs=5000Hz),可以选择K=1000。这样可以得到绝对连续的相位。对于UM-71制式(fi=1700~2600±11Hz,fs=10000Hz),选择K=10000可以得到绝对连续的相位。但是这么大的参考信号数组占用了太多的内存,在DSP实现上是很不经济的,因此我们用不定长参考信号技术来解决这个问题。
所谓不定长参考信号,指的是本发明中由程序预先产生并存放在存储器中的参考信号数组,对于不同的参考信号频率,其长度是各不相同的,以便在保证参考信号相位连续的条件下尽量减小所占内存空间。
不定长参考信号技术的原理是离散时间正弦信号除了在K=fsfiL]]>长度上保持严格的相位连续,在其它的一系列点上是近似连续的,这些点可以通过计算循环自相关求得。对于一个近似相位连续的参考信号,其误差随着循环次数累积增加。为了防止误差无限累积,需要每隔10000个采样周期(UM-71)对参考信号指针进行重新归零,这是因为对于UM-71,长度10000的参考信号是严格相位连续的。
这样,不定长参考信号的误差周期性增长,且每隔10000次达到最大值。
表1列出通过循环自相关计算出的一系列可以满足近似连续相位要求的参考信号长度值。最右列为我们计算出的最佳近似长度及其可以达到的最大误差。如果采用这组最佳长度,则最大累积误差为0.001数量级(信号幅值为1)。考虑到定点运算中参考信号采用256级的量化级数,这个最大误差是小于量化误差的,因此可以得到与严格连续相位信号一致的参考信号。
经过测试发现,即使采用非最佳的近似连续长度,尽管此时会产生较大的周期性误差,但是运算结果仍能基本满足系统的精度要求,而且需要的存储空间更小。在我们的系统中,采用的参考信号长度分别为373,263,181,363,782,463,309,563。
表1

载波频率检测后输出四个值00b,01b,10b,11b,分别对应上行或下行时的四个频率,但在载频检测过程中难免出现偶尔的判决错误。而用一个非线性平滑滤波器可以对上述结果进行修正,可以消除偶尔的判决错误,并且计算量增加极小。
这个非线性平滑滤波的原理是用程序生成一个长度为2n+1的FIFO,用来存储载频检测结果的最低比特(0或1)。每输入FIFO一个检测值,对FIFO中的值进行迭代求和,如果该和小于等于n,则判决为0;否则判决为1。将判决值代替当前检测值的最低比特,作为非线性平滑滤波器的输出。用C语言描述如下static short flt_conv=0,flt_index=0;
static short flt_buf[FLT_SIZE];
short smooth_filter(short freq_id){short freq0=freq_id&0x01;
flt_conv=flt_conv+freq0-flt_buf[flt_ndex];
flt_buf[flt_index]=freq0;
flt_index++;
if(flt_index>=FLT_SIZE)flt_index=0;
freq0=flt_conv>=((FLT_SIZE>>1)+1) 1:0;
return(freq_id&0xfffe)|freq0;
}根据本发明得到了精确的载波频率值,统计当前载频的持续时间,就可以直接计算得到调制信号的频率。例如对于UM-71上行模式,在一个铁轨的BLOCK(区段)内,载波频率在1689Hz和1711Hz之间交替变换,其变换频率为10.3Hz,11.4Hz,...,29Hz。当每次载频变换的时刻,设统计该载频持续了M点,则调制信号频率为fm=fs/2M。其中fs是采样频率。
权利要求
1.一种检测列车交通信号载波频率的方法,其特征在于,它包括首先将列车的采样信号S(t)与参考信号进行相关运算;然后对所述的运算结果进行比较,并根据比较的结果确定信号的载波频率。
2.如权利要求1所述的检测列车交通信号载波频率的方法,其特征在于所述的参考信号是程序预先产生并以数组的形式存放在存储器中的,而且参考信号数组的长度对于不同的参考信号频率具有不同的长度。
3.如权利要求1或2所述的检测列车交通信号载波频率的方法,其特征在于所述的参考信号是由若干对正交的正弦和余弦信号组成,每一对参考信号对应一个载波的判决频率。
4.如权利要求1所述的检测列车交通信号载波频率的方法,其特征在于所述的相关运算是将采样信号与参考信号进行乘积、然后对乘积进行积分运算,再对积分进行平方和运算。
5.如权利要求4所述的检测列车交通信号载波频率的方法,其特征在于所述的积分运算可以采用逐点迭代的方式实现,也可以采用逐数据块批处理的方式。
6.如权利要求1所述的检测列车交通信号载波频率的方法,其特征在于所述的比较是通过检测器选取积分平方和最大值对应的频率点,然后输出结果。
7.如权利要求6所述的检测列车交通信号载波频率的方法,其特征在于它还包括用非线性平滑滤波器对所述的输出结果进行修正。
全文摘要
本发明公开了一种检测列车交通信号载波频率的方法,它包括首先将列车的采样信号S(t)与参考信号进行相关运算;然后对所述的运算结果进行比较,并根据比较的结果确定信号的载波频率。所述的参考信号是程序预先产生并以数组的形式存放在存储器中的,而且参考信号数组的长度对于不同的参考信号频率具有不同的长度,它可以是由一对正交的正弦和余弦信号组成。所述的比较是通过检测器选取积分平方和最大值对应的频率点,然后输出结果,它还包括用非线性平滑滤波器对所述的输出结果进行修正。
文档编号B61L1/00GK1870443SQ20051002616
公开日2006年11月29日 申请日期2005年5月25日 优先权日2005年5月25日
发明者张华 , 张立军 申请人:上海科意捷信息技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1