周小娟
(西安外事學(xué)院 計算機(jī)中心,陜西 西安 710077)
對非整周期正弦波形信噪比計算方法的研究
周小娟
(西安外事學(xué)院 計算機(jī)中心,陜西 西安 710077)
以雙音多頻信號為例,通過運(yùn)用快速傅里葉變換和Hanning窗等數(shù)學(xué)方法,分析了信號頻率,電平和相位之間的關(guān)系,推導(dǎo)出了計算非整周期正弦波形信噪比的算法,解決了數(shù)字信號處理中非整周期正弦波形信噪比計算精度低下的問題。以C編程語言進(jìn)行實(shí)驗(yàn),證明了算法的正確性和可重用性,并可極大的提高工作效率。
圖數(shù)字信號處理;數(shù)字正弦波形;信噪比;非整數(shù)周期
數(shù)字信號處理中對采集的正弦輸出信號的分析一般都是通過對信號進(jìn)行快速傅里葉變換來分析信號的頻率特征,如總諧波失真(THD),信噪比(SNR)等。然而,如果采集到的信號和理想情況存在誤差,它的周期不是整數(shù),就會使得快速傅里葉變換過程失真,造成分析精確度的下降。一般的,當(dāng)一個非整數(shù)周期的正弦波形在進(jìn)行快速傅里葉變換之前,會將波形末尾的信號忽略掉以便使得整個波形是一個整數(shù)的周期重復(fù),然后進(jìn)行適當(dāng)?shù)拇昂瘮?shù)處理,最后進(jìn)行快速傅里葉變換。這種對部分信號的忽略是造成分析精確度下降的主要原因。本文以雙音多頻信號為例,研究了一種當(dāng)正弦波形周期在非整數(shù)的情況下計算信噪比而不影響精確度的方法。
雙音多頻信號(DTMF)是國際電報電話咨詢委員會推薦的一種信號,它由一組4個低頻和一組4個高頻的雙音組成。低頻組包括697,770,852,941 Hz+/1.8%;高頻組包括1 209,1 336,1 447,1 633 Hz+/1.8%。
圖1示例了DTMF信號的產(chǎn)生過程,一個頻率為10.24 MHz的水晶振蕩器被分為高頻和低頻兩組,正弦波形的128個信號點(diǎn)被存儲在ROM中,通過兩組信號中的D/A轉(zhuǎn)換器合成DTMF信號的輸出。
在老一代不基于數(shù)字信號處理的系統(tǒng)中,選擇性電平表,陷波器和其他一些設(shè)備被用來獨(dú)立地測試高頻組和低頻組的信號,通過過濾基波信號把噪聲輸入一個電壓表,這樣使得噪聲的測試具有很好的精確性,但這需要很長的測試時間。在一個數(shù)字信號出來系統(tǒng)中,即使使用窄帶濾波器也會發(fā)生相同的事情,較長的測試時間無法發(fā)揮數(shù)字信號系統(tǒng)的優(yōu)勢,因此必須研究一種計算方法能夠自動校準(zhǔn)和消除基波分量,以提高測試精度和縮短測試時間。
圖1 DTMF信號的產(chǎn)生過程Fig.1 Generation process of DTMF signal
首先,讓我們簡要地討論確定DTMF信號的頻率和電平的方法。圖2是一個采樣頻率為16 kHz的DTMF波形的輸出圖,對這個波形應(yīng)用快速傅里葉變換得到如圖3所示的頻譜,對這個波形應(yīng)用Hanning窗和快速傅里葉變換得到如圖4所示的頻譜。
圖2 采樣頻率為16 kHz的DTMF信號的波形圖Fig.2 DTMF waveform with sampling frequency at 16 kHz
圖3 對圖2應(yīng)用快速傅里葉變換后的頻譜圖Fig.3 Spectrum by applying FFT at Fig.2
圖4 對圖2應(yīng)用Hanning窗和快速傅里葉變換后的頻譜圖Fig.4 Spectrum by applying FFT and Hanning window at Fig.2
比較發(fā)現(xiàn),在圖4中DTMF信號具有是典型的Hanning窗側(cè)裂片特征,如果峰值頻譜和其向左或向右的第二高峰值可以被獲得,DTMF信號真正的頻率和電平就可以利用已有的公式計算出來。另外,利用Hanning窗的特點(diǎn)也可以精確獲得目標(biāo)信號的相位。據(jù)此,初步判斷,如果能夠充分利用圖5中的減法型失真度測試儀的結(jié)構(gòu),就有可能進(jìn)行SNR測量。
在傳統(tǒng)的失真度測試儀中,陷波濾波器是用來消除基波。在這里,一個衰減器和相位儀被用來生產(chǎn)和被測信號基波分量相同的波形。從被測信號中減去產(chǎn)生的信號,就剩余諧波和噪聲,通過測量電壓就可以獲得諧波失真。圖6描述了這個過程,通過調(diào)整衰減器和相位儀器獲得諧波失真,也就可以得到信噪比。
圖5 減法型失真度測試儀的結(jié)構(gòu)Fig.5 Structure of the subtraction-type distortion meter
圖6 非整數(shù)周期正弦波形信噪比的計算過程Fig.6 Calculation process of SNR for non-integer cycle sine wave
因此,筆者基本推導(dǎo)出了計算非整數(shù)周期正弦波形信噪比的一般方法,
1)通過對測試信號應(yīng)用Hanning窗和快速傅里葉變換,測算基波信號的水平,頻率和相位;
2)通過第一步得到的信號特征,還原基波正弦波;
3)從測試信號中減去還原的基波信號,得到噪音信號;
4)計算噪聲信號的均方根;
5)使用步驟1)和4)的結(jié)果,計算出信噪比。
有了以上的計算方法,我們可以很方便的用編程語言來實(shí)現(xiàn)算法。以下偽代碼簡要的描述了在數(shù)字信號處理中對上述計算方法的算法實(shí)現(xiàn)。
通過對雙音多頻信號應(yīng)用Hanning窗和快速傅里葉變換,分析信號的頻譜特征,計算出信號的頻率,電平和相位,推導(dǎo)并實(shí)現(xiàn)了計算非整數(shù)周期正弦波形的信噪比的算法,解決了數(shù)字信號處理中非整數(shù)周期正弦波形的信噪比計算精度低下的問題。
[1]Proakis J G,Manolakis D G.Digital xignal processing[M].方艷梅,劉永清,譯.北京:電子工業(yè)出版社,2007.
[2]Burns M,Roberts G W.Introduction to Mixed-signal IC test&measurement[M].USA:Oxford University Press,2001.
[3]Maxim Integrated Products.Coherent Sampling vs.Window Sampling[EB/OL].(2002).http://china.maxim-ic.com/app-notes/index.mvp/id/1040.
[4]李傳軍.C語言與MATLAB接口--編程與實(shí)例[M].北京:北京郵電大學(xué)出版社,2004.
[5]羅月星.Matlab與C語言程序的應(yīng)用編程接口[EB/OL].(2007).http://www.builder.com.cn/2007/1030/591033.shtml.
[6]Tabei M,Ueda M.A method of high precision frequency detection with FFT[J].IEICE,1987,70(5):708-805.
[7]parker R,Stoneman S A.On the use of fast fourier transform when high frequency resolution is required[J].J.Sound and Vibration,1986,104(1):75-79.
Methodology research of calculating SNR for non-integer cycle sine wave
ZHOU Xiao-juan
(Computer Center,Xi’an International University,Xi’an710077,China)
This article takes dual-tone multi-frequency signal as an example,analyzes the relationship between signal frequency, level and phase by applying FFT, Hanning window and other mathematical calculation method, derivates the methodology of calculating SNR for non-integer cycle sine wave and finally solves the problem of low accuracy in calculating SNR for non-integer cycle sine wave.Experiments by C programming language prove the methodology is correct,can be reused and can greatly improve efficiency.
Digital Signal Processing(DSP);sinusoidal waveform;non-integer cycle
TN453
A
1674-6236(2012)03-0142-03
2011-11-22 稿件編號:201111112
周小娟(1977—),女,陜西乾縣人,碩士研究生,講師。研究方向:數(shù)字信號處理,計算機(jī)應(yīng)用。