王培傲,卜凡亮
(中國人民公安大學(xué)信息技術(shù)與網(wǎng)絡(luò)安全學(xué)院,北京 102600)
警用強聲系統(tǒng)是公安機關(guān)為了處理群體性事件來維護社會治安秩序和穩(wěn)定社會的一種既可實現(xiàn)遠距離、高效、快速、安全地驅(qū)散人群,又可以平息騷亂的新型低致命性的干擾系統(tǒng)[1]。由于音頻信號在采集和處理中會出現(xiàn)大量的問題,而在處理群體性事件的時候?qū)β曇舻牟杉约疤幚硪蟊容^高,因此通過數(shù)字信號處理器(Digital Signal Processor,DSP)作為控制器來設(shè)計警用強聲系統(tǒng)比用單片機處理信號更加迅速。
系統(tǒng)采用TMS320VC5509A作為核心處理器,通過TLV320AIC23B音頻編解碼器,設(shè)計出一款FIR低通數(shù)字濾波器,使警用強聲系統(tǒng)發(fā)射出一種清晰度高、強度大的聲波,從而達到在群體事件中驅(qū)散人群的目的。
根據(jù)沖激響應(yīng)的時域特性,數(shù)字濾波器又分為無限沖激響應(yīng)濾波器(Infinite Impulse Response Filter,IIR)和有限沖激響應(yīng)濾波器(Finite Impulse Response Filter,FIR)。FIR數(shù)字濾波器的優(yōu)點是不含有反饋回路使系統(tǒng)更加的穩(wěn)定、結(jié)構(gòu)簡單以及在幅度特性是隨意設(shè)置的時候可以保證精確地線性相位讓硬件很容易實現(xiàn),因而該系統(tǒng)是在對相位有較高要求的同時能在硬件上可以快速運行的條件下,選取FIR數(shù)字濾波器。
FIR數(shù)字濾波器有多種設(shè)計方法,其中包括窗函數(shù)法、頻率取樣法以及等波紋優(yōu)化設(shè)計方法等,其中窗函數(shù)設(shè)計法是最簡單也是最普遍的方法,常用的窗函數(shù)有矩形窗、三角窗、海寧窗、漢明窗、布萊克曼窗、凱澤窗等[2]。窗函數(shù)法是在時域進行的,因此首先需要有理想頻率響應(yīng)推導(dǎo)出對應(yīng)的單位取樣響應(yīng)hd(n),再設(shè)計一個FIR數(shù)字濾波器的單位取樣響應(yīng)h(n)去逼近hd(n)。假設(shè)設(shè)計一個截止頻率為ωc的低通濾波器,要求濾波器是線性相位,從而推導(dǎo)出理想濾波器的單位取樣響應(yīng)。
顯然,對于實際FIR數(shù)字濾波器幅頻特性有影響的是實時窗函數(shù)的幅頻特性,實際FIR數(shù)字濾波器的幅頻特性是理想低通濾波器的幅頻特性與窗函數(shù)幅頻特性的復(fù)卷積。因此,為了滿足警用強聲系統(tǒng)的要求,只能改變窗函數(shù)的形狀來改變?yōu)V波器的幅頻特性[3]。
MATLAB中集成了數(shù)字濾波器的各種設(shè)計方法,為了分析警用強聲系統(tǒng)在DSP運行下FIR數(shù)字濾波器的功能,利用MATLAB進行FIR數(shù)字濾波器設(shè)計。用凱澤窗函數(shù)設(shè)計一個讀入交流聲的語音數(shù)據(jù)文件,濾除語音中的交流干擾。部分程序設(shè)計如下:
通過MATLAB進行仿真所得到的FIR數(shù)字濾波器幅值響應(yīng)曲線圖如圖1所示。
圖1 FIR數(shù)字濾波器的幅值響應(yīng)曲線圖
由圖1可知當(dāng)頻率小于50Hz時,語音信號的幅值響應(yīng)在60-70dB上下浮動,當(dāng)頻率大于50Hz時候,信號的幅值衰減逐漸減少,等頻率大于80Hz時,語音信號的幅值衰減基本為0,則說明語音信號中的交流信號被逐漸濾除,所以FIR數(shù)字濾波器在信號輸入的過程中可以過濾部分交流干擾信號。
FIR數(shù)字濾波器的實現(xiàn)主要取決于整個系統(tǒng)的硬件電路設(shè)計,系統(tǒng)的硬件電路設(shè)計其中最核心器件的就是DSP芯片和音頻芯片。這兩款芯片的選擇與電路連接設(shè)計對FIR數(shù)字濾波器在數(shù)字信號處理起到?jīng)Q定性的作用。系統(tǒng)選取的音頻芯片是TLV320AIC23B,它是TI公司推出的一款具有高性能的立體聲音頻編解碼器[4]。警用強聲系統(tǒng)的硬件電路連接設(shè)計圖如圖2所示。
圖2 警用強聲系統(tǒng)的硬件電路連接設(shè)計圖
該系統(tǒng)采用的是TMS320VC5509A的多通道緩沖串行口(Multichannel Buffered Serial Port,McBSP)與音頻芯片TLV320AIC23B無縫對接。C5509A的I2C總線是由SDA和SCL兩個引腳構(gòu)成的串行總線,被用來作為單項控制通道,配置AIC23B使用,可以發(fā)送和接收數(shù)據(jù),在語音信號在被傳輸?shù)倪^程中,它一般是空閑的。McBSP串行口是由CLKX、DR、DX、FSR和FSX五個引腳組成,其主要功能就是被用作數(shù)據(jù)的發(fā)送和接受,所有的語音數(shù)據(jù)都是通過McBSP串口傳輸。在語音信號處理系統(tǒng)中,模擬語音信號由LINEIN/MICIN接口輸入到AIC23B芯片上,這些數(shù)據(jù)需要通過McB?SP對AIC23B進行配置,然后模擬語音通過A/D轉(zhuǎn)換、音頻編碼后,由數(shù)字音頻接口傳輸?shù)紺5509A的McB?SP串口,并接收C5509A串口的數(shù)據(jù),收到的數(shù)字音頻信號經(jīng)濾波器過濾、解碼、D/A轉(zhuǎn)換后,從LINEOUT輸出。
警用強聲系統(tǒng)一般都是在室外比較嘈雜的環(huán)境下使用,因此本文設(shè)計一個低通的FIR數(shù)字濾波器,要求通帶邊緣頻率為10kHz,阻帶邊緣頻率為22kHz,阻帶衰減75dB,采樣頻率50 kHz。FIR低通數(shù)字濾波器設(shè)計窗函數(shù)有很多種,選布萊克曼窗。
將強聲系統(tǒng)的硬件設(shè)備連接好,運行CCS軟件,首先打開FIR數(shù)字濾波器的程序設(shè)計文件,對所編的程序文件進行匯編、連接,生成DSP可執(zhí)行的文件代碼[5]。其次選擇菜單,對濾波器的輸入與輸出頻率進行設(shè)置,F(xiàn)IR數(shù)字濾波器在CCS軟件上的參數(shù)設(shè)置界面如圖3所示,要求對濾波器的輸入與輸出頻率進行六次不同的設(shè)置。最后對整個系統(tǒng)進行編譯、調(diào)試和運行。
圖3 FIR濾波器參數(shù)設(shè)置界面
根據(jù)CCS的圖形顯示功能,分別觀察輸入信號和輸出信號的時域波形圖和頻域波形圖,F(xiàn)IR數(shù)字濾波器的輸入與輸出波形圖如圖4所示。由圖4可知上面的圖是語音信號輸入波形圖,輸入的波形是一個低頻的正弦波與一個高頻的正弦波疊加而成,下面的圖是通過FIR數(shù)字濾波器進行濾波后輸出的波形圖,輸出的波形圖是一個低頻的正弦波形圖。從這兩張圖比較可知,經(jīng)過FIR數(shù)字濾波器過濾后,輸入波形中的高頻信號大部分被濾出,而低頻信號則順利通過,所以FIR數(shù)字濾波器在信號輸入的過程中可以過濾部分高頻信號。
圖4 FIR數(shù)字濾波器的輸入與輸出波形
警用強聲系統(tǒng)就是采用TMS320VC5509A數(shù)字信號處理芯片作為核心處理器,運用C語言在該系統(tǒng)上進行FIR低通數(shù)字濾波器設(shè)計,實現(xiàn)并通過濾波仿真。警用強聲系統(tǒng)對信號的實時處理性能的要求很高,在DSP中實現(xiàn)FIR數(shù)字濾波可以使單通道語音信號達到處理的效果。
參考文獻:
[1]劉萬松.基于DSP的FIR數(shù)字濾波器的設(shè)計[D]:[碩士學(xué)位論文].貴陽:貴州大學(xué),2007.
[2]Dick Blandford,John Par.數(shù)字信號處理及MATLAB仿真[M].陳后金,李居民,譯.北京:機械工業(yè)出版社,2015:125-135.
[3]M.D.Lutovac,D.V.Tosic,B.I.Evans.Filter Design for Signal Processing Using MATLAB and Mathematica[M].Publishing House of Electronics Industry;Pearson,2002.
[4]Texas Instruments.TMS320VC5509A Fixed-Point Digital Signal Processor Data Manual[M].SPRS205K,January 2008.
[5]彭啟琮.DSP集成開發(fā)環(huán)境:CCS及DSP/BIOS的原理與應(yīng)用[M].北京:電子工業(yè)出版社,2004:213-218.