DTMF信號(hào)系統(tǒng)的Matlab仿真畢業(yè)設(shè)計(jì)_第1頁(yè)
DTMF信號(hào)系統(tǒng)的Matlab仿真畢業(yè)設(shè)計(jì)_第2頁(yè)
DTMF信號(hào)系統(tǒng)的Matlab仿真畢業(yè)設(shè)計(jì)_第3頁(yè)
DTMF信號(hào)系統(tǒng)的Matlab仿真畢業(yè)設(shè)計(jì)_第4頁(yè)
DTMF信號(hào)系統(tǒng)的Matlab仿真畢業(yè)設(shè)計(jì)_第5頁(yè)
已閱讀5頁(yè),還剩23頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、dtmf信號(hào)系統(tǒng)的matlab仿真摘 要雙音多頻(dual tone multi frequency, dtmf)信號(hào)是音頻電話中的撥號(hào)信號(hào),由美國(guó)at&t貝爾公司實(shí)驗(yàn)室研制,并用于電話網(wǎng)絡(luò)中。這種信號(hào)制式具有很高的撥號(hào)速度,且容易自動(dòng)檢測(cè)識(shí)別,很快就代替了原有的用脈沖計(jì)數(shù)方式的撥號(hào)制式。這種雙音多頻信號(hào)制式不僅用在電話網(wǎng)絡(luò)中,還可以用于傳輸十進(jìn)制數(shù)據(jù)的其他通信系統(tǒng)中,用于電子郵件和銀行系統(tǒng)中。這些系統(tǒng)中用戶可以用電話發(fā)送dtmf信號(hào)選擇語(yǔ)音菜單進(jìn)行操作。 dtmf信號(hào)系統(tǒng)是一個(gè)典型的小型信號(hào)處理系統(tǒng),它要用數(shù)字方法產(chǎn)生模擬信號(hào)并進(jìn)行傳輸,其中還用到了d/a變換器;在接收端用a/d變換器將其轉(zhuǎn)

2、換成數(shù)字信號(hào),并進(jìn)行數(shù)字信號(hào)處理。本文著重介紹了一種快速的頻率檢測(cè)算法geortzel算法的原理,以及該算法在雙音多頻撥號(hào)檢測(cè)系統(tǒng)中的應(yīng)用。并根據(jù)此算法設(shè)計(jì)出了相應(yīng)的濾波器,利用matlab在計(jì)算機(jī)上對(duì)雙音多頻的信令產(chǎn)生及檢測(cè)接收系統(tǒng)進(jìn)行了仿真測(cè)試。關(guān)鍵詞:雙音多頻,goertzel算法,數(shù)字信號(hào)處理,傅里葉變換;abstract dual-tone multi-frequency signaling (dtmf) is tone dialing signals , developed by at&t , and used in telephone networks. this signal

3、system has a high rate of speed dial and easy automatic identification, soon took the place of the original dial-up form of pulse counting method used. this dual-tone multi-frequency signaling system is not only used in the telephone network , can also be used in other communication systems to trans

4、fer decimal data, e-mail and banking system. these system users can select send dtmf signals by telephone voice menu for operation.dtmf signaling system is a typical small signal processing system , it is to use digital methods to produce the analog signal and transmission , which also used the d /

5、a converter; at the receiving end with d / a converter to convert it into a ditigal signal, and digital signal processing. this article specially introduced the theory of a fast check algorithm -geortzel algorithm, and its application in detecting the double tone multi frequency system. we designed

6、the corresponding filter according to the algorithm the same time,and we imitate the whole dialing process of the system through the matlab in the computer at last.keywords: dual-tone multi-frequency (dtmf); geortzel algorithm; digital signal processing(dsp); fourier transfer;目 錄摘要 abstract 1.緒論11.1

7、 引言11.2 數(shù)字信號(hào)簡(jiǎn)介11.3 數(shù)字濾波器31.4 頻率分析4 1.4.1 傅里葉級(jí)數(shù)及傅里葉變換 4 1.4.2 z變換及系統(tǒng)函數(shù) 4 1.4.3 離散系統(tǒng)傅里葉變換(dft)52.雙音多頻(dtmf)通信系統(tǒng)6 2.1 雙音多頻(dtmf)信號(hào)簡(jiǎn)介6 2.2 雙音多頻(dtmf)信號(hào)的產(chǎn)生6 2.3 雙音多頻(dtmf)信號(hào)的檢測(cè)73.戈澤爾(goertzel)算法 113.1 戈澤爾(goertzel)算法原理 113.2 戈澤爾(goertzel)算法程序 134.檢測(cè)雙音多頻信號(hào)(dtmf)的dft參數(shù) 144.1 頻譜分析的分辨率 144.2 頻譜分析的頻率范圍 144.3

8、檢測(cè)頻率的準(zhǔn)確性 145.雙音多頻(dtmf)系統(tǒng)的matlab實(shí)現(xiàn) 16 5.1 matlab簡(jiǎn)介 165.2 雙音多頻(dtmf)系統(tǒng)的仿真176.結(jié)束語(yǔ) 21致謝 22參考文獻(xiàn) 231 緒論1.1 引言雙音多頻(dual tone multi frequency,dtmf)信號(hào),由美國(guó)at&t貝爾實(shí)驗(yàn)室研制,用于音頻電話網(wǎng)絡(luò)中的撥號(hào)信號(hào)。一方面這種信號(hào)具有非常高的撥號(hào)速度,另一方面它便于自動(dòng)檢測(cè)識(shí)別及電話業(yè)務(wù)的拓展,所以很快代替了原有的脈沖計(jì)數(shù)方式的撥號(hào)形式。自1876年美國(guó)貝爾發(fā)明電話以來(lái),電話交換技術(shù)發(fā)展主要經(jīng)歷了三個(gè)階段:人工交換、機(jī)電交換、電子交換。早在1878年就出現(xiàn)了人工供電

9、制交換機(jī),它借助話務(wù)員進(jìn)行話務(wù)連接。15年后步進(jìn)制的交換機(jī)問(wèn)世,這種交換機(jī)屬于“直接控制”方式,用戶通過(guò)話機(jī)撥號(hào)脈沖直接控制步進(jìn)接續(xù)器做升降和旋轉(zhuǎn)動(dòng)作。從而自動(dòng)完成用戶間的接續(xù)。這種交換機(jī)雖然實(shí)現(xiàn)了自動(dòng)接續(xù),但存在著速度慢、效率低、雜音大與機(jī)械磨損嚴(yán)重等缺點(diǎn)。直到1938年發(fā)明了縱橫制交換機(jī)由直接控制過(guò)渡到間接控制方式,隨后又出現(xiàn)了電子交換機(jī)及程控交換機(jī)等。用戶的撥號(hào)脈沖不再直接控制接線器動(dòng)作,而先由記發(fā)器接收、存儲(chǔ),然后通過(guò)標(biāo)志器驅(qū)動(dòng)接線器,以完成用戶間接續(xù)。由于標(biāo)志器記取的是標(biāo)識(shí)信號(hào),所以可以不采用不穩(wěn)定的脈沖計(jì)數(shù)方式,逐步發(fā)展到數(shù)字號(hào)碼標(biāo)識(shí),所以快速、穩(wěn)定靈活的dtmf音頻撥號(hào)方式取代了

10、脈沖計(jì)數(shù)方式。本文主要闡述goertzel算法在雙音撥號(hào)系統(tǒng)中的應(yīng)用,并利用matlab的強(qiáng)大功能,用軟件實(shí)現(xiàn)dtmf(雙音多頻)信號(hào)的檢測(cè)。1.2 數(shù)字信號(hào)簡(jiǎn)介信號(hào)是反映消息的物理量,是消息的表現(xiàn)形式。由于非電的物理量可以通過(guò)各種傳感器較容易地轉(zhuǎn)換成電信號(hào),而電信號(hào)又容易傳送和控制,所以使其成為應(yīng)用最廣的信號(hào)。電信號(hào)是指隨著時(shí)間而變化的電壓或電流,因此在數(shù)學(xué)描述上可將它表示為時(shí)間的函數(shù),并可畫出其波形。信息可以通過(guò)電信號(hào)進(jìn)行傳送、交換、存儲(chǔ)、提取等。電信號(hào)的形式是多種多樣的,可以從不同的角度進(jìn)行分類。根據(jù)信號(hào)的隨機(jī)性可以分為確定信號(hào)和隨機(jī)信號(hào);根據(jù)信號(hào)的周期性可分為周期信號(hào)和非周期信1號(hào);根

11、據(jù)信號(hào)的連續(xù)性可以分為連續(xù)時(shí)間信號(hào)和離散信號(hào);在電子線路中將信號(hào)分為模擬信號(hào)和數(shù)字信號(hào)。我們每天遇到的信號(hào),大部分都是模擬信號(hào)。離散時(shí)間信號(hào)只被定義在一種特定的時(shí)間瞬間集合上,表現(xiàn)為具有連續(xù)數(shù)值范圍的數(shù)值序列。而數(shù)字信號(hào)在時(shí)間上和幅值上都有離散的數(shù)字。因此在實(shí)際的操作中,數(shù)字信號(hào)更容易處理。隨著數(shù)字電子技術(shù)的發(fā)展,在語(yǔ)音處理、通信控制、圖象處理等領(lǐng)域dsp(digital signal processor 數(shù)字信號(hào)處理器 )也得到了越來(lái)越廣泛的應(yīng)用。數(shù)字通信抗干擾能力強(qiáng)、無(wú)噪聲積累,由于數(shù)字信號(hào)的幅值為有限個(gè)離散值(通常取兩個(gè)幅值),在傳輸過(guò)程中雖然也受到噪聲的干擾,但當(dāng)信噪比惡化到一定程度時(shí)

12、,即在適當(dāng)?shù)木嚯x采用判決再生的方法,再生成沒(méi)有噪聲干擾的和原發(fā)送端一樣的數(shù)字信號(hào),所以可實(shí)現(xiàn)長(zhǎng)距離高質(zhì)量的傳輸。較之傳統(tǒng)的方法,數(shù)字信號(hào)處理系統(tǒng)自身有著無(wú)可比擬的優(yōu)點(diǎn):(1)便于加密處理信息傳輸?shù)陌踩院捅C苄栽絹?lái)越重要,數(shù)字通信的加密處理的比模擬通信容易得多,以話音信號(hào)為例,經(jīng)過(guò)數(shù)字變換后的信號(hào)可用簡(jiǎn)單的數(shù)字邏輯運(yùn)算進(jìn)行加密、解密處理。(2)便于存儲(chǔ)、處理和交換數(shù)字通信的信號(hào)形式和計(jì)算機(jī)所用信號(hào)一致,都是二進(jìn)制代碼,因此便于與計(jì)算機(jī)聯(lián)網(wǎng),也便于用計(jì)算機(jī)對(duì)數(shù)字信號(hào)進(jìn)行存儲(chǔ)、處理和交換,可使通信網(wǎng)的管理、維護(hù)實(shí)現(xiàn)自動(dòng)化、智能化。(3)設(shè)備便于集成化、微型數(shù)字通信采用時(shí)分多路復(fù)用,不需要體積較大的

13、濾波器。設(shè)備中大部分電路是數(shù)字電路,可用大規(guī)模和超大規(guī)模集成電路實(shí)現(xiàn),因此體積小、功耗低。(4)便于構(gòu)成綜合數(shù)字網(wǎng)和綜合業(yè)務(wù)數(shù)字網(wǎng)采用數(shù)字傳輸方式,可以通過(guò)程控?cái)?shù)字交換設(shè)備進(jìn)行數(shù)字交換,以實(shí)現(xiàn)傳輸和交換的綜合。另外,電話業(yè)務(wù)和各種非話業(yè)務(wù)都可以實(shí)現(xiàn)數(shù)字化,構(gòu)成綜合業(yè)務(wù)數(shù)字網(wǎng)。2(5)占用信道頻帶較寬一路模擬電話的頻帶為4khz帶寬,一路數(shù)字電話約占64khz,這是模擬通信目前仍有生命力的主要原因。隨著寬頻帶信道(光纜、數(shù)字微波)的大量利用以及數(shù)字信號(hào)處理技術(shù)的發(fā)展,數(shù)字電話的帶寬問(wèn)題已不是主要問(wèn)題了。1.3 數(shù)字濾波器數(shù)字濾波器由數(shù)字加法器、單位延時(shí)和常數(shù)乘法器組成的一種算法或裝置。數(shù)字濾波器

14、的功能是對(duì)輸入離散信號(hào)的數(shù)字代碼進(jìn)行運(yùn)算處理,即把輸入序列通過(guò)一定的運(yùn)算變換成輸出序列,以達(dá)到改變信號(hào)頻譜的目的。數(shù)學(xué)公示表示如下: (1.3-1)通常可以用兩種方法實(shí)現(xiàn)數(shù)字濾波器:一種方法是把濾波器所完成的運(yùn)算編成程序并讓計(jì)算機(jī)執(zhí)行,也就是采用就算機(jī)軟件實(shí)現(xiàn);另一種方法是設(shè)計(jì)專用的數(shù)字硬件、專用的數(shù)字信號(hào)處理器或采用通用的數(shù)字信號(hào)處理器來(lái)實(shí)現(xiàn)。存在著兩種數(shù)字濾波器的的基本類型:無(wú)限長(zhǎng)單位沖擊響應(yīng)(iir)濾波器和有限長(zhǎng)單位沖擊響應(yīng)(fir)濾波器。它們的系統(tǒng)函數(shù)分別為: (1.3-2) (1.3-3)式(1.3-2)中的h(z)稱為n階iir濾波器函數(shù)式,(1.3-3)中的h(z)稱為n-1

15、階fir濾波器函數(shù)。無(wú)限長(zhǎng)單位沖激響應(yīng)(iir)濾波器的單位沖激響應(yīng)h(n)是無(wú)限長(zhǎng)的;系統(tǒng)函數(shù)h(z)在有限z平面(0z)上有極點(diǎn)存在;結(jié)構(gòu)上存在著輸出到輸入的反饋,也就是結(jié)構(gòu)上是遞歸型的。1.4 頻率分析 3任何給定信號(hào)的頻率分析,都包含著時(shí)域信號(hào)向其頻率分量的轉(zhuǎn)換。之所以要在頻域內(nèi)對(duì)信號(hào)進(jìn)行描述,因?yàn)樵趯?shí)現(xiàn)信號(hào)處理時(shí),通常都利用以頻率響應(yīng)形式描述的系統(tǒng)。而這些頻域信號(hào)處理概念時(shí)傅立葉變換是必不可少的。同時(shí)z變換對(duì)進(jìn)行數(shù)字系統(tǒng)分析和實(shí)現(xiàn)也極其重要。1.4.1 傅立葉級(jí)數(shù)及傅立葉變換任何周期信號(hào)x(t)均可以表示為無(wú)窮多個(gè)諧波調(diào)諧相關(guān)的正弦波和復(fù)指數(shù)之和。具有周期t0(秒)周期信號(hào)x(t),

16、其基本的數(shù)學(xué)表達(dá)式為具有系列定義的傅立葉級(jí)數(shù): (1.4.1-1)式中ck為傅立葉級(jí)系數(shù),第k個(gè)傅立葉系數(shù)ck可以表示為 (1.4.1-2)用周期信號(hào)的傅立葉級(jí)數(shù)通過(guò)極限的方法導(dǎo)出的非周期信號(hào)的頻譜表示式,稱為傅立葉變換:傅立葉逆變換: (1.4.1-3)傅立葉正變換: = (1.4.1-4)1.4.2 z變換及系統(tǒng)函數(shù)對(duì)于離散時(shí)間系統(tǒng)來(lái)說(shuō),與拉普拉斯對(duì)應(yīng)的變換是是z變換,z變換提供了離散時(shí)間信號(hào)和系統(tǒng)的頻域描述,并為數(shù)字濾波器的設(shè)計(jì)和實(shí)現(xiàn),提供了有力的工具。序列x(n)的z變換定義為 : (1.4.2-1)式中z是一個(gè)復(fù)變量,定義中對(duì)n求和是在和之間求和,稱為雙邊z變換。還有一種稱為單邊z變

17、換的定義,如下式: 4 (1.4.2-2)將系統(tǒng)的單位脈沖響應(yīng)h(n)進(jìn)行z變換,得到h(z),一般稱h(z)為系統(tǒng)的系統(tǒng)函數(shù),它表征了系統(tǒng)的頻域特性。對(duì)n階差分方程進(jìn)行z變換,得到系統(tǒng)函數(shù)的一般表示式 (1.4.2-3)令z=ej即得系統(tǒng)的傳輸函數(shù)h(ej)。1.4.3 離散系統(tǒng)傅立葉變換(dft)離散傅立葉變換是針對(duì)有限長(zhǎng)序列或周期序列從存在的,相當(dāng)把序列的連續(xù)傅立葉變換加以抽樣,頻率的離散化造成時(shí)間函數(shù)也呈周期,故級(jí)數(shù)應(yīng)限制在一個(gè)周期內(nèi)。令,則,我們即可得到離散傅立葉變換對(duì)為: (1.4.31) (1.4.32)其中表示有限長(zhǎng)序列的抽樣點(diǎn)數(shù),或周期序列一個(gè)周期的抽樣點(diǎn)數(shù)。52 雙音多頻(

18、dtmf)通信系統(tǒng)2.1 雙音多頻(dtmf)信號(hào)過(guò)去的電話撥號(hào)時(shí)靠脈沖計(jì)數(shù)確定09這10個(gè)數(shù)字的,撥號(hào)速度慢,也不能擴(kuò)展電話上網(wǎng)其他服務(wù)功能?,F(xiàn)在均采用雙音撥號(hào)。每一位號(hào)碼由兩個(gè)不同的單音頻組成,所有的頻率可分成高頻帶和低頻帶兩組。每一位號(hào)碼由一個(gè)高頻信號(hào)和一個(gè)低頻信號(hào)疊加形成,dtmf信號(hào)有16個(gè)編碼。一般情況下,聲音信號(hào)很難造成對(duì)dtmf接收器的錯(cuò)誤觸發(fā)。電話中的雙音多頻信號(hào)有兩個(gè)作用:用撥號(hào)信號(hào)去控制交換機(jī)接通被叫的用戶電話機(jī);控制電話機(jī)的各種動(dòng)作,如播放留言、語(yǔ)音信箱等。2.2 雙音多頻(dtmf)信號(hào)的產(chǎn)生dtmf編碼器基于兩個(gè)二階數(shù)字正弦波振蕩器,一個(gè)用于產(chǎn)生行頻,一個(gè)用于產(chǎn)生列

19、頻。典型的dtmf信號(hào)頻率范圍是7001700hz,選取8000hz作為采樣頻率,dtmf雙音頻信號(hào)由兩個(gè)二階數(shù)字正弦振蕩器產(chǎn)生,一個(gè)用來(lái)產(chǎn)生行音頻信號(hào),另一個(gè)產(chǎn)生列音頻信號(hào)。在電話鍵盤上的每次按鍵,會(huì)產(chǎn)生式(2.2-1)表示的兩個(gè)音調(diào)之和。規(guī)定用8khz對(duì)dtmf信號(hào)進(jìn)行采樣,采樣后得到時(shí)域離散信號(hào)為 (2.2-1)兩個(gè)頻率f1,f2唯一確定了被按壓的鍵。具體數(shù)字對(duì)應(yīng)的兩個(gè)頻率如表2.2.1所示。6表2-1 dtmf撥號(hào)頻率(第四列常被省略)頻低頻高1209hz1336hz1477hz633hz697hz123a770hz456b852hz789c942hz*0#d形成上面序列的方法有兩種,

20、即計(jì)算法和查表法。用計(jì)算法求正弦波的序列值容易,但實(shí)際中要占用一些計(jì)算時(shí)間,影響運(yùn)行速度。查表法是預(yù)先將正弦波的各序列值計(jì)算出來(lái),寄存在存儲(chǔ)器中,運(yùn)行時(shí)只要按順序和一定的速度取出便可。這種方法要占用一定的存儲(chǔ)空間,但是速度快。因?yàn)椴蓸宇l率是8000hz,因此要求每125ms輸出一個(gè)樣本,得到的序列再送到d/a變換器和平滑濾波器,輸出便是連續(xù)時(shí)間的dtmf信號(hào)。dtmf信號(hào)通過(guò)電話線路送到交換機(jī)。2.3雙音多頻(dtmf)信號(hào)的檢測(cè)在接收端,要對(duì)收到的將收到的雙音多頻信號(hào)進(jìn)行檢測(cè),即檢測(cè)兩個(gè)正弦波的頻率,以判斷其對(duì)應(yīng)的十進(jìn)制數(shù)字或者符號(hào)。用數(shù)字方法進(jìn)行檢測(cè),需要將接收到的模擬音頻信號(hào)進(jìn)行a/d變

21、換,恢復(fù)為數(shù)字信號(hào),然后檢測(cè)其中的音頻頻譜來(lái)確定所發(fā)送的數(shù)字。檢測(cè)方法有兩種,一種是用一組濾波器來(lái)提取所需頻率,判斷對(duì)應(yīng)的數(shù)字或符號(hào);另一種是用快速傅立葉變換(fft)算法的dft對(duì)雙音多頻信號(hào)進(jìn)行頻譜分析,有信號(hào)的幅度譜,判斷信號(hào)的兩個(gè)頻率,最后確定對(duì)應(yīng)的數(shù)字或符號(hào)。以下章節(jié)對(duì)兩種方法進(jìn)行分析并對(duì)goertzel算法進(jìn)行詳細(xì)的推導(dǎo)。由上面可以知道一個(gè)dtmf信號(hào)是由兩個(gè)不通頻率f1和f2的正弦波組成,它可以用下式表示 (2.3-1)7我們可以考慮通過(guò)離散傅立葉變換進(jìn)行信號(hào)的頻譜分析來(lái)檢測(cè)離散的雙音多頻碼。這是因?yàn)橹挥袝r(shí)域及頻域都是離散的情況下,才能適合于在計(jì)算機(jī)上運(yùn)算;也就是周期的離散時(shí)間信

22、號(hào)與離散頻率間的變換對(duì)。周期性離散時(shí)間信號(hào)x(n)的離散傅立葉變換周期性離散頻率函數(shù)x(k)兩相鄰譜線分量之間的角頻率增量與周期之間的關(guān)系可表示為, 代表信號(hào)的基頻。取樣頻率與取樣周期t的關(guān)系是 取樣角頻率 t為時(shí)域取樣間隔,在一個(gè)周期內(nèi)取樣點(diǎn)數(shù)為n。在自變量為t及f的情況下,在一個(gè)時(shí)域中對(duì)函數(shù)進(jìn)行取樣,兩取樣點(diǎn)間增量的倒數(shù),必是另一個(gè)域中函數(shù)的周期?,F(xiàn)序列的周期為nt,所以對(duì)頻譜取樣的間距是。以數(shù)字頻率表示時(shí),則頻譜間距是 k0,1,n1令并稱之為因子。離散傅立葉變換(dft)可寫成如下形式:, 0 kn1 (2.3-2)dft的表達(dá)式可以直接寫成:, k0,1,n1 ( 2.3-3) 一般

23、來(lái)說(shuō),x(n)和都是復(fù)數(shù),x(k)也是復(fù)數(shù),每計(jì)算一個(gè)x(k)值,需要n次復(fù)數(shù)乘法(x(n)與相乘)以及(n1)次復(fù)數(shù)加法。而x(k)一共有n個(gè)點(diǎn)(k從0取到n1),所以完成整個(gè)dft運(yùn)算總共需要次8復(fù)數(shù)乘法及n(n1)次復(fù)數(shù)加法。復(fù)數(shù)運(yùn)算實(shí)際上是由實(shí)數(shù)運(yùn)算來(lái)完成的,因此上式可寫成: (2.3-4)由此可見,一次復(fù)數(shù)乘法需用四次實(shí)數(shù)乘法和兩次實(shí)數(shù)加法;一次復(fù)數(shù)加法則需兩次復(fù)數(shù)加法。因而每運(yùn)算一個(gè)需要4n次復(fù)數(shù)乘法和2n2(n-1)=2(2n-1)次實(shí)數(shù)加法。 所以,直接計(jì)算dft,乘法次數(shù)和加法次數(shù)都是和成正比的,當(dāng)n很大時(shí),運(yùn)算量是很可觀的,例如,當(dāng)n8時(shí),dft需64次復(fù)數(shù)乘法,而當(dāng)n10

24、24時(shí),dft所需復(fù)數(shù)乘法為1,048,576次,即一百多萬(wàn)次復(fù)數(shù)乘法運(yùn)算,這對(duì)實(shí)時(shí)性很強(qiáng)的信號(hào)處理來(lái)說(shuō),對(duì)計(jì)算速度的要求太高了。因而需要改進(jìn)對(duì)dft的計(jì)算方法,以大大減少運(yùn)算次數(shù)。仔細(xì)觀察dft的運(yùn)算量可以看出,利用系數(shù)的以下固有特性,可以減少dft的運(yùn)算量。(1)的共軛對(duì)稱性: (2)的周期性: (3) 的可約性:由此得出,這樣,(1)利用這些特性,使dft運(yùn)算中有些項(xiàng)可以合并;(2)利用的周期性和對(duì)稱性,可以將長(zhǎng)序列的dft分解為短序列的dft。而前面已經(jīng)說(shuō)到,dft的運(yùn)算量使與成正比的,所以n越小越有利,因而小點(diǎn)數(shù)的dft比大9點(diǎn)數(shù)的dft的運(yùn)算量要小?;谶@樣的思路,快速傅立葉變換(

25、fft)發(fā)展起來(lái)了。如果按時(shí)間抽取的fft算法,系統(tǒng)的運(yùn)算量是,運(yùn)算量明顯比dft運(yùn)算量減少。但它有一個(gè)缺點(diǎn),需要全部抽樣數(shù)據(jù)到達(dá)時(shí),才能進(jìn)行計(jì)算;不適合雙音多頻信號(hào)頻譜的計(jì)算,滿足不了雙音撥號(hào)系統(tǒng)實(shí)時(shí)性的要求。因此開發(fā)出了適合于dmft的特殊算法goertzel算法。103 戈澤爾(goertzel)算法3.1 戈澤爾(goertzel)算法原理戈澤爾算法利用dft中的旋轉(zhuǎn)因子的周期性,將dft的運(yùn)算轉(zhuǎn)換成一種線性濾波運(yùn)算。下面推導(dǎo)戈澤爾算法的計(jì)算公式和實(shí)現(xiàn)結(jié)構(gòu)。假設(shè)長(zhǎng)度為n的序列x(n)的n點(diǎn)dft用x(k)表示,因?yàn)?(3.1-1)因此 k=0,1,12,n-1 (3.1-2)按照上式定

26、義序列 (3.1-3)這個(gè)方程可以解釋為有限長(zhǎng)序列x(n),與序列的卷積,因此表示為 (3.1-4)令 (3.1-5)則 (3.1-6)由上式,將看成是序列x(n)通過(guò)單位脈沖響應(yīng)為的濾波器的輸出,根據(jù)式(3.1-2)和式(3.1-3),得到 (3.1-7)那么,x(n)的dft的第k點(diǎn)就是序列x(n)通過(guò)濾波器輸出的第n=n點(diǎn)樣值。那么n點(diǎn)dft就是這n個(gè)濾波器分別對(duì)序列x(n)的響應(yīng)序列的第n點(diǎn)輸出。對(duì)式(3.1-5)進(jìn)行z變換,得到濾波器的系統(tǒng)函數(shù)11 (3.1-8)該濾波器是一個(gè)一階純極點(diǎn)濾波器,極點(diǎn)為,極點(diǎn)頻率為。該濾波器的結(jié)構(gòu)圖如圖3-1所示,戈澤爾算法的原理方框圖如圖3-2所示。

27、圖3-1單極點(diǎn)濾波器圖3-2戈澤爾算法的濾波器組在圖3-1中存在一次復(fù)乘算法,為了避免復(fù)乘算法,將一階純極點(diǎn)濾波器變?yōu)槎A濾波器,推導(dǎo)如下 (3.1-9)按照?qǐng)D3-2所示。再按照該結(jié)構(gòu)圖,可以用兩個(gè)差分方程表示該二階濾波器,即 (3.1-10)= (3.1-11)對(duì)于音調(diào)檢測(cè),只有的幅值平方是需要的,通過(guò)實(shí)現(xiàn)這種需求,可以使算法作進(jìn)一步簡(jiǎn)化,由(3.1-11)式,的平方幅值可以計(jì)算為:12 (3.1-12)這樣輸入信號(hào)是實(shí)序列,用式(3.1-10)計(jì)算中間變量,用式(3.1-12)計(jì)算輸出信號(hào)的幅度,避免了復(fù)數(shù)的運(yùn)算。由此得到=。因?yàn)橛?種音頻要檢測(cè),所以需要8個(gè)式(3.1-8)表示的濾波器,

28、或者8個(gè)式(3.1-9)表示的濾波器。8個(gè)濾波器的中心頻率分別對(duì)應(yīng)8種音頻。3.2 goertzel算法程序下面是按(3.1-12)式編寫的goertzel算法子程序。它根據(jù)輸入序列x(n)和指定的dft樣本的序號(hào)k計(jì)算待求的dft樣本x。其核心語(yǔ)句只有四句,具體如下:function x=gfft(x,k)n=length(x);x1=x,0;d1=2*cos(2*pi*k/n)v=filter(1,1,-d1,1,x1);w=exp(-i*2*pi*k/n);x=v(n+1)-w*v(n);134 檢測(cè)雙音多頻信號(hào)(dtmf)的dft參數(shù) 用dft檢測(cè)模擬dtmf信號(hào)所含有的兩個(gè)音頻頻率,

29、即為用dft對(duì)模擬信號(hào)進(jìn)行頻譜分析的問(wèn)題,要確定三個(gè)參數(shù):采樣頻率fs,dtf的變換點(diǎn)數(shù)n,需要對(duì)時(shí)間的觀察長(zhǎng)度tp。4.1 頻譜分析的分辨率 觀察表2-1要檢測(cè)的8個(gè)頻率,相鄰間隔最小的是第一個(gè)和第二個(gè)頻率,間隔是73hz,要求dft至少能夠分辨相隔73hz的兩個(gè)信號(hào),即要求fmin=73hz。dft的分辨率和對(duì)信號(hào)的觀察時(shí)間tp有關(guān),tpmin=1/f=1/73=13.7ms??紤]到可靠性,應(yīng)留有富余量,要求按鍵的時(shí)間在40ms以上。4.2 頻譜分析的頻率范圍 要檢測(cè)信號(hào)的頻率范為6971633hz,但考慮存在語(yǔ)音干擾,除了檢測(cè)這8個(gè)頻率外,還要檢測(cè)它們的二次倍頻的幅度大小。波形正常且干擾

30、小的正弦波的二次倍頻是很小的。如果發(fā)現(xiàn)二次諧波很大,則認(rèn)為不是dtmf信號(hào)。這樣頻譜分析的范圍為6973266hz。按照采樣定理,信號(hào)的最高頻率不能超過(guò)折疊頻率,即0.5fs3266hz,由此要求最小采樣頻率應(yīng)為6.53khz??傁到y(tǒng)已經(jīng)規(guī)定fs=8khz,因此一定滿足對(duì)頻譜分析的要求。按照tpmin=13.7ms,fs=8khz,算出對(duì)信號(hào)最少的采樣點(diǎn)數(shù)為nmin=tpmin*fs110。4.3 檢測(cè)頻率的準(zhǔn)確性這是一個(gè)用dft檢測(cè)正弦波頻率是否準(zhǔn)確的問(wèn)題。序列的n點(diǎn)dft是對(duì)序列頻譜函數(shù)在0區(qū)間的n點(diǎn)等間隔采樣,如果是一個(gè)周期序列,截取周期序列的整數(shù)倍周期,進(jìn)行dft,其采樣點(diǎn)剛好在周期信

31、號(hào)的頻率上,dft的幅度最大處就是信號(hào)的準(zhǔn)確頻率。分析這些dtmf信號(hào),不可能經(jīng)過(guò)采樣得到周期序列,因此存在檢測(cè)頻率的準(zhǔn)確性問(wèn)題。 dft的頻率采樣點(diǎn)頻率為(k=0,1,2,-,n-1),相應(yīng)的模擬域采樣14點(diǎn)頻率為(k=0,1,2,-,n-1),希望選擇一個(gè)合適的n,使用該公式算出的能接近要檢測(cè)的頻率,或者用8個(gè)頻率中的任一個(gè)頻率代入公式中時(shí),得到的k值最接近整數(shù)值,這樣雖然用幅度最大點(diǎn)檢測(cè)的頻率有誤差,但可以準(zhǔn)確判斷所對(duì)應(yīng)的dtmf頻率,即可以準(zhǔn)確判斷所對(duì)應(yīng)的數(shù)字或符號(hào)。經(jīng)過(guò)分析研究認(rèn)為n205是最好的。按照8khz,n205,算出8個(gè)頻率及其二次諧波對(duì)應(yīng)k值,和k取整數(shù)時(shí)的頻率誤差見表2

32、。表4-1頻率誤差表8個(gè)基頻hz最近的整數(shù)k值dft的k值絕對(duì)誤差二次諧波hz對(duì)應(yīng)的k值最近的整數(shù)k值絕對(duì)誤差69717.861180.139139435.024350.02477019.531200.269154038.692待添加的隱藏文字內(nèi)容3390.30885221.833220.167170442.813430.18794124.113240.113188247.285470.285120930.981310.019241860.752610.248133634.235340.235267267.134670.134147737.848380.152295474.219740.219

33、163341.846420.154326682.058820.058通過(guò)以上分析,確定8khz,n205,。155 雙音多頻(dtmf)系統(tǒng)的matlab實(shí)現(xiàn)5.1 matlab簡(jiǎn)介matlab是由美國(guó)mathworks公司發(fā)布的主要面對(duì)科學(xué)計(jì)算、可視化以及交互式程序設(shè)計(jì)的高科技計(jì)算環(huán)境。它將數(shù)值分析、矩陣計(jì)算、科學(xué)數(shù)據(jù)可視化以及非線性動(dòng)態(tài)系統(tǒng)的建模和仿真等諸多強(qiáng)大功能集成在一個(gè)易于使用的視窗環(huán)境中,為科學(xué)研究、工程設(shè)計(jì)以及必須進(jìn)行有效數(shù)值計(jì)算的眾多科學(xué)領(lǐng)域提供了一種全面的解決方案,并在很大程度上擺脫了傳統(tǒng)非交互式程序設(shè)計(jì)語(yǔ)言(如c、fortran)的編輯模式,代表了當(dāng)今國(guó)際科學(xué)計(jì)算軟件的先進(jìn)

34、水平。matlab 產(chǎn)品族可以用來(lái)進(jìn)行以下各種工作: 數(shù)值分析 數(shù)值和符號(hào)計(jì)算 工程與科學(xué)繪圖 控制系統(tǒng)的設(shè)計(jì)與仿真數(shù)字圖像處理技術(shù)數(shù)字信號(hào)處理技術(shù) 通訊系統(tǒng)設(shè)計(jì)與仿真 財(cái)務(wù)與金融工程matlab 的應(yīng)用范圍非常廣,包括信號(hào)和圖像處理、通訊、控制系統(tǒng)設(shè)計(jì)、測(cè)試和測(cè)量、財(cái)務(wù)建模和分析以及計(jì)算生物學(xué)等眾多應(yīng)用領(lǐng)域。附加的工具箱(單獨(dú)提供的專用 matlab 函數(shù)集)擴(kuò)展了 matlab 環(huán)境,以解決這些應(yīng)用領(lǐng)域內(nèi)特定類型的問(wèn)題。它有如下的特點(diǎn):(1)功能強(qiáng)的數(shù)值運(yùn)算 在matlab環(huán)境中,有超過(guò)500種數(shù)學(xué)、統(tǒng)計(jì)、科學(xué)及工程方面的函數(shù)可使用,函數(shù)的標(biāo)示自然,使得問(wèn) 題和解答像數(shù)學(xué)式子一般簡(jiǎn)單明了,

35、讓使用者可全力發(fā)揮在解題方面,而非浪費(fèi)在電腦操作上。(2)先進(jìn)的資料視覺化功能 matlab的物件導(dǎo)向圖形架構(gòu)讓使用者可執(zhí)行視覺數(shù)據(jù)分,并制作高品質(zhì)的圖形,完成科學(xué)性或工程 性圖文并茂的文章。16(3)高階但簡(jiǎn)單的程式環(huán)境 作為一種直譯式的程式語(yǔ)言,matlab容許使用者在短時(shí)間內(nèi)寫完程式,所花的時(shí)間約為用 fortran 或 c 的幾分之一,而且不需要編譯(compile)及聯(lián)結(jié) (link) 即能執(zhí)行,同時(shí)包含了更多及更容易使用的內(nèi)建功能。(4)開放及可延伸的架構(gòu) matlab容許使用者接觸它大多數(shù)的數(shù)學(xué)原始碼,檢視運(yùn)算法,更改現(xiàn)存函數(shù),甚至加入自己的函數(shù)使 matlab成為使用者所須要的

36、環(huán)境。(5)豐富的程式工具箱 matlab的程式工具箱融合了套裝前軟體的優(yōu)點(diǎn),與一個(gè)靈活的開放但容易操作之環(huán)境,這些工具箱提 供了使用者在特別應(yīng)用領(lǐng)域所需之許多函數(shù)?,F(xiàn)有工具箱有:符號(hào)運(yùn)算(利用maple v的計(jì)算核心執(zhí)行 )、影像處理、統(tǒng)計(jì)分析、訊號(hào)處理、神經(jīng)網(wǎng)路、模擬分析、控制系統(tǒng)、即時(shí)控制、系統(tǒng)確認(rèn)、強(qiáng)建控 制、弧線分析、最佳化、模糊邏輯、mu分析及合成、化學(xué)計(jì)量分析。因?yàn)橛辛诉@些工具箱,大量繁雜的數(shù)學(xué)運(yùn)算和分析可通過(guò)調(diào)用matlab函數(shù)直接求解,大大提高了編程效率,其程序編譯和執(zhí)行速度遠(yuǎn)遠(yuǎn)超過(guò)了basic、fortran和c等語(yǔ)言。5.2 雙音多頻(dtmf)系統(tǒng)的仿真dtmf信號(hào)的產(chǎn)

37、生與識(shí)別仿真實(shí)驗(yàn)在matlab環(huán)境下進(jìn)行,編寫仿真程序,運(yùn)行程序,送入8位電話號(hào)碼,程序自動(dòng)產(chǎn)生每一位號(hào)碼數(shù)字相應(yīng)的dtmf信號(hào),并送出雙頻聲音,再用dft進(jìn)行譜分析,顯示每一位號(hào)碼數(shù)字的dtmf信號(hào)的dft幅度譜,安照幅度譜的最大值確定對(duì)應(yīng)的頻率,再安照頻率確定每一位對(duì)應(yīng)的號(hào)碼數(shù)字,最后輸出8位電話號(hào)碼,程序名為exp8。下面用matlab程序?qū)υ撓到y(tǒng)進(jìn)行模擬,程序分四段:第一段(第27行)設(shè)置參數(shù),并讀入8位電話號(hào)碼;第二段(第920行)根據(jù)輸入的8位電話號(hào)碼產(chǎn)生時(shí)域離散dtmf信號(hào),并連續(xù)發(fā)出8位號(hào)碼對(duì)應(yīng)的雙音頻聲音;第三段(第2225行)對(duì)時(shí)域離散dtmf信號(hào)進(jìn)行頻率檢測(cè),畫出幅度譜;

38、第四段(第2633行)根據(jù)幅度譜的兩個(gè)峰值,分別查找并確定輸入的8位電話號(hào)碼。程序如下:17% dtmf雙頻撥號(hào)信號(hào)的生成和檢測(cè)程序:%clear all;clc;tm=1,2,3,65;4,5,6,66;7,8,9,67;42,0,35,68; % dtmf信號(hào)代表的16個(gè)數(shù)n=205;k=18,20,22,24,31,34,38,42;%8個(gè)基頻對(duì)應(yīng)的8個(gè)k值f1=697,770,852,941; % 行頻率向量f2=1209,1336,1477,1633; % 列頻率向量tn=input(鍵入8位電話號(hào)碼= ); % 輸入8位數(shù)字tnr=0; %接收端電話號(hào)碼初值為零for l=1:8;

39、 %分別對(duì)每位號(hào)碼數(shù)字處理:產(chǎn)生信號(hào),發(fā)聲,檢測(cè) d=fix(tn/10(8-l); %計(jì)算出第l位號(hào)碼數(shù)字 tn=tn-d*10(8-l); for p=1:4; for q=1:4; if tm(p,q)=abs(d); break,end % 檢測(cè)與l位號(hào)碼相符的列號(hào)q endif tm(p,q)=abs(d); break,end % 檢測(cè)與l位號(hào)碼相符的行號(hào)p end n=0:1023; % 為了發(fā)聲,加長(zhǎng)序列 x = sin(2*pi*n*f1(p)/8000) + sin(2*pi*n*f2(q)/8000);% 構(gòu)成雙音頻信號(hào) sound(x,8000); % 發(fā)出聲音 pause(0.1) %相鄰信號(hào)響聲之間加0.1秒停頓 % 接收檢測(cè)端的程序 x=goertzel(x(1:n),k+1); % 用goertzel算法計(jì)算8點(diǎn)dft樣本 val = abs(x); % 列出八點(diǎn)dft的摸 subplot(4,2,l); stem(k,val,.);grid;xlabel(k);ylabel(|x(k)|) % 畫出8點(diǎn)dft(k)的幅度 axis(10 50 0 120) limit = 80; %基頻檢測(cè)門限為80 for s=5:8; if val(s) limit, break, end % 查找列號(hào) end for

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論