基于ADPCM算法的汽車智能語音報警系統(tǒng)設(shè)計
1前言
為了防止汽車發(fā)生交通事故,當汽車智能檢測裝置探測到前方有危險時,必須向駕駛員發(fā)出警告信息。語音報警向駕駛員明確提示危險,以便駕駛員能及時準確地采取措施。因此,本文提出數(shù)字語音處理技術(shù),先將各種狀況的報警信息進行數(shù)字化采集、存儲,遇到危險時,將判斷危險類型并自動選擇播放存儲的報警信息。由于語音信息量大,直接存儲需占用龐大的存儲空間,為此,本文采用FPGA實現(xiàn)ADPCM(Adaptive Differential Pulse CodeModulation,自適應(yīng)差分脈沖編碼調(diào)制)編解碼器設(shè)計,對語音信息進行壓縮存儲.從而使存儲信息量增大了一倍。
2 系統(tǒng)結(jié)構(gòu)及原理
本系統(tǒng)設(shè)計是以單片機和FPGA為核心。單片機控制系統(tǒng)的工作狀態(tài)、啟動錄放音并對錄放音時間進行計時、顯示。FPGA對采集到的數(shù)據(jù)進行壓縮、存儲、解壓。單片機與FPGA協(xié)調(diào)工作,提高了系統(tǒng)的工作效率和穩(wěn)定性。系統(tǒng)結(jié)構(gòu)如圖1所示。
首先,將所希望采集的各種報警聲音經(jīng)前向通道(話筒、差分放大器、濾波器、加法器)再由A/D轉(zhuǎn)換器轉(zhuǎn)換為數(shù)字信號并送人FPGA進行ADPCM壓縮編碼處理,然后存儲到靜態(tài)存儲器SRAM中。遇到危險時,單片機對危險進行判斷,控制FPGA將相應(yīng)的語音數(shù)據(jù)從SRAM中取出并進行解碼,然后送至8 位的D/A轉(zhuǎn)換器,轉(zhuǎn)換為模擬信號,再經(jīng)后向通道(濾波器、校正電路、功率放大器、揚聲器)復(fù)現(xiàn)報警聲音。
3 系統(tǒng)主要硬件設(shè)計
3.1 前置放大器
采用駐極體話筒采集語音信號,轉(zhuǎn)換其信號幅值為毫伏級的電信號,系統(tǒng)前級對其處理時,要盡可能提高放大器輸入端的信噪比,保證放大電路具有精確、穩(wěn)定的增益。為此,本文設(shè)計了如圖2所示的檢測放大電路。該電路前級采用電壓跟隨器,利用輸入電阻為無窮大而輸出趨于零的特性,提供高輸入電阻,實現(xiàn)阻抗變換與隔離;后級采用差動放大器,獲得較高的共模抑制比,增強電路抗干擾性。
電壓跟隨器由性能優(yōu)良的低噪聲音頻放大器NE5532構(gòu)成,工作電壓為12 V,工作帶寬為10 MHz,特別適用于語音信息處理。差動放大器采用AD620實現(xiàn)。AD620內(nèi)部實際上是一個差分放大器,其失調(diào)電壓電流小,共模抑制比高,因此處理微弱信號時,也就是放大和消除噪聲方面具有優(yōu)異性能,其增益G=1+(49.4 kΩ/Rg)(Rg為接在1、8引腳之間的電阻)。調(diào)節(jié)電位器R1,使放大的信號幅值介于-2.5 V和2.5 V之間,便于A/D轉(zhuǎn)換器采樣量化。
3.2 帶通濾波器
語音信號經(jīng)放大傳輸后容易拾取噪聲,因此在數(shù)據(jù)采集之前,需要通過帶通濾波器濾除掉帶外雜波。人的語音頻率范圍為300 Hz~3.4 kHz,故濾波器的通帶范圍應(yīng)為300 Hz~3.4kHz。如此寬的頻帶,必須采用低通部分與高通部分相級聯(lián)的方式實現(xiàn)。
高通濾波器設(shè)計指標:通帶截止頻率fp=300Hz,通帶允許最大衰減αp≤3 dB;為消除工頻干擾,確定阻帶截止頻率fs=50 Hz,阻帶允許最小衰減as>40 dB。選用兩級二階Butterworth高通濾波器相級聯(lián)構(gòu)成.仿真結(jié)果如圖3所示。
評論