




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、xxxxxxx大學(xué)畢 業(yè) 論 文 (設(shè) 計(jì))題目:雙音頻(dtmf)信號(hào)的產(chǎn)生與檢測(cè)學(xué)生姓名學(xué) 號(hào)專 業(yè)電子信息工程班 級(jí)2008級(jí)1班指導(dǎo)教師學(xué) 部計(jì)算機(jī)科學(xué)與電氣工程答辯日期2012年5月19日黑龍江東方學(xué)院本科生畢業(yè)論文(設(shè)計(jì))任務(wù)書姓名學(xué)號(hào)專業(yè)班級(jí)電子信息工程08級(jí)1班畢業(yè)論文(設(shè)計(jì))題目:雙音頻(dtmf)信號(hào)的產(chǎn)生與檢測(cè)畢業(yè)論文(設(shè)計(jì))的立題依據(jù)雙音多頻dtmf(dual tone multi-frequency)信令在全世界范圍內(nèi)得到廣泛應(yīng)用。dtmf作為實(shí)現(xiàn)電話號(hào)碼快速可靠傳輸?shù)囊环N技術(shù),它具有很強(qiáng)的抗干擾能力和較高的傳輸速度,因此,可廣泛用于電話通信系統(tǒng)中。主要內(nèi)容及要求1、
2、利用dtmf信號(hào)產(chǎn)生的原理合成數(shù)字1,其合成公式是 分析其時(shí)域波形和頻譜;2、生成各個(gè)按鍵信號(hào);3、利用fft分析09十個(gè)數(shù)字撥號(hào)信息的頻譜,觀察頻譜圖中的峰值點(diǎn)的幅值以及它們出現(xiàn)的位置。根據(jù)譜峰的幅值和位置,識(shí)別各dtmf信號(hào)所對(duì)應(yīng)對(duì)應(yīng)的數(shù)字;4、編寫goertzel算法的程序,識(shí)別各dtmf信號(hào)所對(duì)應(yīng)對(duì)應(yīng)的數(shù)字;進(jìn)度安排12月12日選題12月13日12月29日接受指導(dǎo)老師的指導(dǎo)12月30 日1 月17日擬定論文大綱1 月18日2 月26日搜集、查閱、整理相關(guān)資料2 月27日3 月27日初稿形成3 月28日4 月8 日初稿審定4 月9 日4 月17日第一次修改4 月18日4 月22日第一次審
3、定4 月23日5 月3 日第二次修改5 月4 日5 月9 日定稿5 月10日5 月18日論文評(píng)閱小組評(píng)審論文(設(shè)計(jì))5 月19日畢業(yè)論文(設(shè)計(jì))答辯學(xué)生簽字:指導(dǎo)教師簽字:年 月 日雙音頻(dtmf)信號(hào)的產(chǎn)生與檢測(cè)摘要雙音多頻dtmf(dual tone multi-frequency)信令在全世界范圍內(nèi)得到廣泛應(yīng)用,dtmf信令的產(chǎn)生與檢測(cè)集成到含有數(shù)字信號(hào)處理器(dsp)的系統(tǒng)中,是一項(xiàng)較有價(jià)值的工程應(yīng)用。dtmf作為實(shí)現(xiàn)電話號(hào)碼快速可靠傳輸?shù)囊环N技術(shù),它具有很強(qiáng)的抗干擾能力和較高的傳輸速度,因此,可廣泛用于電話通信系統(tǒng)中。但絕大部分是用作電話的音頻撥號(hào),另外,它也可以在數(shù)據(jù)通信系統(tǒng)中廣
4、泛地用來實(shí)現(xiàn)各種數(shù)據(jù)流和語音等信息的遠(yuǎn)程傳輸,研究其在matlab下的仿真實(shí)現(xiàn)有助于其具體系統(tǒng)的優(yōu)化設(shè)計(jì)。本文給出一種實(shí)現(xiàn)方案,主要闡述了dtmf的原理及如何在matlab上產(chǎn)生dtmf信號(hào),并對(duì)用goertzel算法提取的頻譜進(jìn)行分析,然后,得到用goertzel算法在白噪聲的環(huán)境下對(duì)輸入的dtmf信號(hào)提取頻譜信息,最后,根據(jù)提取的頻譜信息對(duì)輸入信號(hào)進(jìn)行檢測(cè)解碼。關(guān)鍵詞:雙音多頻dtmf;goertzel算法;matlab關(guān)鍵詞與摘要內(nèi)容隔行書寫,詞條用小四號(hào)宋體字,詞條間用分號(hào)(;)隔開,3-5個(gè)關(guān)鍵詞dual tone multi-frequency (dtmf) signal gene
5、ration and detectionabstractdtmf (dual tone multi-frequency) signaling in the widely used worldwide, signaling the dtmf generation and detection integrated with digital signal processor (dsp) system, is a more value engineering. dtmf telephone number as to achieve a fast and reliable transmission te
6、chnology, it has a strong anti-interference ability and high transmission speed, it can be widely used for telephone communication system. but the vast majority of telephone tone dialing is used. in addition, it can also be in the data communication system widely used to achieve a variety of data st
7、reams and remote transmission of voice and other information. under study in the matlab simulation helps optimize the design of their specific systems.this paper presents a realization of the program, mainly on the principle of dtmf and how to generate dtmf signals in matlab, and extracted with goer
8、tzel algorithm to analyze the spectrum, and then, get with the goertzel algorithm in the context of white noise on the input of the dtmf spectrum information signal extraction, and finally, according to information extracted from the input signal spectrum to detect decoding. keywords: dual tone mult
9、i-frequency;goertzel algorithm;matlab小提示:當(dāng)需要從網(wǎng)站或者文檔復(fù)制到本文檔時(shí),先將文字復(fù)制到文本文檔,然后再?gòu)奈谋疚臋n復(fù)制到本文檔的相應(yīng)位置,這樣就能夠保證格式是正確的!此行不會(huì)被打印千萬不要?jiǎng)h除行尾的分節(jié)符,此行不會(huì)被打印。(在word菜單-工具-選項(xiàng)-視圖標(biāo)簽中,格式標(biāo)記部分請(qǐng)全部打?qū)μ?hào),這樣就可以看到隱藏的分節(jié)符和空格等信息了)目錄摘要iabstractii第1章 緒論11.1 引言11.2 課題意義1第2章 基本原理32.1 自動(dòng)電話的制式32.2 dtmf技術(shù)52.3 goertzel算法52.4 matlab簡(jiǎn)介72.5 本章小結(jié)8第3章 d
10、tmf信號(hào)產(chǎn)生與檢測(cè)93.1 dtmf信號(hào)的產(chǎn)生93.2 dtmf信號(hào)的檢測(cè)103.2.1 dtmf信號(hào)檢測(cè)方法103.2.2 dtmf信號(hào)有效性的檢測(cè)123.3 本章小結(jié)13第4章 matlab仿真144.1 設(shè)計(jì)程序(見附錄)144.2 matlab仿真144.3 本章小結(jié)17結(jié)論18參考文獻(xiàn)19附錄20致謝29雙音頻(dtmf)信號(hào)的產(chǎn)生與檢測(cè)第1章 緒論1.1 引言電話中的雙音多頻信號(hào)(dtmf)有兩種用途:一是用于雙音多頻信號(hào)的撥號(hào),去控制交換機(jī)接通被叫的用戶話機(jī);二是利用雙音多頻信號(hào)遙控電話機(jī)各種動(dòng)作,如播放留言、語音信箱等,并可以通過附加一些電路來是實(shí)現(xiàn)遙控家電設(shè)備的開啟關(guān)閉等智
11、能功能。前者解決雙音多頻信號(hào)的發(fā)送和編碼,后者是雙音多頻信號(hào)的接收和解碼。這些東西都離不開dtmf信號(hào)的正確檢測(cè)。目前,大多數(shù)的dtmf信號(hào)的檢測(cè)均采用專用的發(fā)送、接收芯片,這種解碼的原理都依賴于計(jì)算輸入信號(hào)的過零率。但這種方法有很大的局限性,無法檢測(cè)多路dtmf信號(hào),當(dāng)混有語音和噪聲時(shí),專用芯片檢測(cè)往往出現(xiàn)誤差,如果音頻信號(hào)頻率改變應(yīng)用于別的系統(tǒng)時(shí),專用的芯片就發(fā)揮不了作用。所以,用硬件實(shí)現(xiàn)dtmf信號(hào)的檢測(cè)并不是一種很好的選擇1。信息化已經(jīng)成為社會(huì)發(fā)展的大趨勢(shì),信息化是以數(shù)字化為背景的,而dsp技術(shù)則是數(shù)字化最重要的基本技術(shù)之一。在過去的短短的二十來年里,dsp處理器的性能得到很大改善,軟
12、件和開發(fā)工具也得到相應(yīng)的發(fā)展,價(jià)格卻大幅度地下降,從而得到越來越廣泛的應(yīng)用。通信領(lǐng)域(移動(dòng)通信的交換設(shè)備、基站和手機(jī),網(wǎng)絡(luò)的路由和交換設(shè)備,智能天線,軟件無線電,ip電話等),雷達(dá)和聲納系統(tǒng),巡航導(dǎo)彈、靈巧炸彈及各種武器系統(tǒng),自動(dòng)測(cè)試系統(tǒng),醫(yī)療診斷設(shè)備(ct、核磁共振、b超等),計(jì)算機(jī)及其外設(shè),消費(fèi)類電子設(shè)備(vcd、dvd、hdtv、機(jī)頂盒、mp3、家庭影院系統(tǒng)、數(shù)字照相機(jī)和攝象機(jī)等),機(jī)器人及各種自動(dòng)控制系統(tǒng),等等,應(yīng)用范圍不勝枚舉2。1.2 課題意義dtmf(dual tone multi frequency)中文譯為雙音多頻信號(hào),最初由美國(guó)at&t貝爾公司實(shí)驗(yàn)室研制,用于音頻電話網(wǎng)絡(luò)中
13、的撥號(hào)信號(hào)。一方面這種信號(hào)有非在常高的撥號(hào)速度,另一方面它便于自動(dòng)檢測(cè)識(shí)別及電話業(yè)務(wù)的擴(kuò)展,所以很快代替了原有的脈沖計(jì)數(shù)方式的撥號(hào)形式在這里不得不提一下電話交換機(jī)的發(fā)展歷史。自1876年美國(guó)貝爾發(fā)明電話以來,電話交換技術(shù)發(fā)展主要經(jīng)歷了三個(gè)階段:人工交換、機(jī)電交換、電子交換。早在1878年就出現(xiàn)了人工供電制交換機(jī),它借助話務(wù)員進(jìn)行話務(wù)接續(xù)。15年后步進(jìn)制的交換機(jī)問世,這種交換機(jī)屬于“直接控制”方式,用戶通過話機(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ī)由直
14、接控制過渡到間接控制方式,隨后又出現(xiàn)了電子交換機(jī)及程控交換機(jī)等。用戶的撥號(hào)脈沖不再直接控制接線器動(dòng)作,而先由記發(fā)器接收、存儲(chǔ),然后通過標(biāo)志器驅(qū)動(dòng)接線器,以完成用戶間接續(xù)3。dtmf雙音多頻撥號(hào)和解碼在通信系統(tǒng)及其它方面有著廣泛的應(yīng)用。dtmf信號(hào)是便于標(biāo)志器記取的是標(biāo)識(shí)信號(hào),所以可以不采用不穩(wěn)定的脈沖計(jì)數(shù)方式,逐步發(fā)展、到數(shù)字號(hào)碼標(biāo)識(shí),所以快速,穩(wěn)定靈活的dtmf音頻撥號(hào)方式取代了脈沖撥號(hào)方式。電子交換機(jī)程控交換機(jī)。話網(wǎng)中常用的信令,無論是家用電話、移動(dòng)電話還是程控交換機(jī),多采用dtmf信號(hào)發(fā)送接收號(hào)碼4。語音芯片的應(yīng)用前景也十分廣闊,目前語音芯片已應(yīng)用于微型固體錄音機(jī)、通訊、電話、車船、飛機(jī)
15、黑匣子、有聲電子信函、語音信箱、高級(jí)玩具等。此外,還可以利用語音芯片開發(fā)出“會(huì)說話”的電壓表、電流表等語音型智能儀器儀表以及“會(huì)說話的電子稱”、“出租車自動(dòng)語音報(bào)價(jià)器”、“多路語音報(bào)警系統(tǒng)”等新穎電子電器產(chǎn)品。該項(xiàng)設(shè)計(jì)可促進(jìn)我們學(xué)習(xí)開發(fā)電子、通信產(chǎn)品的技術(shù),培養(yǎng)和鍛煉我們電子電路設(shè)計(jì)調(diào)試、文獻(xiàn)資料檢索、電路圖繪制等多方面的能力和素質(zhì),同時(shí)也幫助我們熟練掌握常用雙音多頻信號(hào)編解碼器和語音芯片的工作原理和使用方法,具有很強(qiáng)的實(shí)踐指導(dǎo)意義和實(shí)用價(jià)值5。第2章 基本原理2.1 自動(dòng)電話的制式要弄清雙音頻的來龍去脈,必須從電話的制式談起。最早的電話機(jī)是帶有一個(gè)“手搖把”的,后來慢慢的開始出現(xiàn)了“磁石電話
16、”、“供電電話”、一直發(fā)展到現(xiàn)在人們廣泛使用的“自動(dòng)電話”。由于“磁石電話”、“供電電話”早已淘汰,因此我們重點(diǎn)要談的是自動(dòng)電話的制式。 從自動(dòng)電話的制式來分,可分為“脈沖制式”及“雙音頻制式”兩種。所謂“脈沖制式”,就是撥號(hào)的時(shí)候電話機(jī)發(fā)出的是一串一串的“無電流脈沖”。比如撥號(hào)碼“1”時(shí),發(fā)出去的是一個(gè)“無電流脈沖”,也就是一個(gè)“斷電脈沖”,撥號(hào)碼“2”時(shí),發(fā)出去的是兩個(gè)連續(xù)的“無電流脈沖”,撥號(hào)碼“0”時(shí),發(fā)出去的是十個(gè)連續(xù)的“無電流脈沖”。如圖2-1所示是脈沖電話機(jī)撥武漢區(qū)號(hào)721時(shí)線路上出現(xiàn)的脈沖圖譜6。第一串脈沖7個(gè)脈沖開始撥號(hào)撥“0”第一個(gè)無電流脈沖線路電流待機(jī)狀態(tài)撥“2”撥“1”
17、圖2-1 脈沖電話機(jī)撥號(hào)的脈沖圖譜從圖2-1中可以看出,待機(jī)狀態(tài)下線路上是沒有電流的,摘機(jī)后線路上才有電流,撥號(hào)時(shí),撥的號(hào)碼是幾,線路上就出現(xiàn)幾個(gè)連續(xù)的、沒有電流的脈沖間隙,比如撥2的時(shí)候,就好像電話線被快速的斷開了兩次一樣,因此老式的電話機(jī)還能用拍打叉簧的辦法撥號(hào)。老式帶有“撥號(hào)盤”的電話機(jī)就是脈沖電話。脈沖電話容易出現(xiàn)撥錯(cuò)號(hào)的現(xiàn)象,當(dāng)線路接觸不良,刮風(fēng)時(shí)線路接頭時(shí)通斷時(shí),就會(huì)出現(xiàn)錯(cuò)號(hào)。另外脈沖信號(hào)經(jīng)過長(zhǎng)途線路傳送以后,由于線路電感和電容的影響,脈沖波形會(huì)發(fā)生嚴(yán)重畸變,本來上升沿和下降沿都是很陡的波形,傳到對(duì)方以后很可能完全變樣引起誤判,因此這種電話也逐漸被淘汰7。所謂“雙音頻制式”,就是撥
18、電話的時(shí)候,撥每一個(gè)號(hào)碼,發(fā)出去的都是由兩個(gè)不同頻率的音頻信號(hào)組合起來的雙音頻信號(hào)。如撥“0”的時(shí)候,發(fā)出去的兩個(gè)音頻信號(hào)分別是941hz和1336hz,撥“9”的時(shí)候發(fā)出去的兩個(gè)音頻信號(hào)分別是952hz和1477hz等等。我們用電話進(jìn)行撥號(hào)時(shí)都能從聽筒中聽到一種按鍵的聲音,這種聲音其實(shí)就是由兩個(gè)不同的頻率組合成的復(fù)合音。每個(gè)號(hào)碼都是由兩個(gè)音頻信號(hào)組合起來的,因此叫“雙音頻”。圖2-2列出了每個(gè)號(hào)碼與雙音頻頻率的對(duì)應(yīng)關(guān)系8。我們可以將脈沖撥號(hào)與雙音多頻撥號(hào)的性能進(jìn)行一個(gè)比較:(1)脈沖信號(hào)在線路傳輸中容易產(chǎn)生波形畸變,可能產(chǎn)生錯(cuò)號(hào)。(2)脈沖信號(hào)的幅度較容易產(chǎn)生線間干擾。(3)脈沖撥號(hào)速度慢。
19、例如:撥打電話號(hào)碼590850,它所用的時(shí)間為: (5+9+10+8+5+10)100+8005=8700ms=8.7s123a47*0#dcb5689號(hào)碼與頻率對(duì)應(yīng)關(guān)系6977708529411209133614771633圖2-2 號(hào)碼與頻率對(duì)應(yīng)關(guān)系如果電話號(hào)碼越長(zhǎng),所用的時(shí)間越長(zhǎng),占用交換機(jī)的時(shí)間也長(zhǎng),這就使程控交換機(jī)接續(xù)速度快的優(yōu)點(diǎn)得不到發(fā)揮,從而影響了交換機(jī)的接通率。雙音多頻電話機(jī)是兩個(gè)單音頻來代表一個(gè)數(shù)字,因此,采用音頻信號(hào)傳送的速度快,它發(fā)送的每位號(hào)碼所用的時(shí)間都是相同的,它的發(fā)號(hào)速度主要取決于打電話者的撥號(hào)速度。現(xiàn)在還以撥打電話號(hào)碼590850為例,在雙音多頻方式下,單頻持續(xù)時(shí)
20、間為120ms,位間隔為108ms,則撥打上述電話號(hào)碼所需的時(shí)間為1206+1085=1260ms=1.26s??梢?,脈沖撥號(hào)所用的時(shí)間是雙音多頻撥號(hào)的8.7s/1.26s=6.4倍9。2.2 dtmf技術(shù)由以上分析可知,采用雙音多頻信號(hào),可以提高電路的抗干擾能力,減少交換機(jī)的接續(xù)差錯(cuò),從而提高交換機(jī)的接通率。同時(shí)我們也可以知道dtmf技術(shù)就是用兩個(gè)特定的單音頻組合信號(hào)來代表數(shù)字信號(hào)以實(shí)現(xiàn)其功能的一種編碼技術(shù)。兩個(gè)單音頻的頻率不同,代表的數(shù)字或?qū)崿F(xiàn)的功能也不同。這種電話機(jī)中通常有16個(gè)按鍵,其中有10個(gè)數(shù)字鍵09和6個(gè)功能鍵*、#、a、b、c、d。由于按照組合原理,一般應(yīng)有8種不同的單音頻信號(hào)
21、。因此可采用的頻率也有8種,故稱之為多頻,又因它采用從8種頻率中任意抽出2種進(jìn)行組合來進(jìn)行編碼,所以又稱之為“8中取2”的編碼技術(shù)10。根據(jù)ccitt的建議,國(guó)際上采用的多種頻率為687hz、770hz、852hz、941hz、1209hz、1336hz、1477hz和1633hz等8種。用這8種頻率可形成16種不同的組合,從而代表16種不同的數(shù)字或功能鍵,具體組合如表2-1所示。表2-1 鍵值頻率組合表1209133614771633697123a770456b852786c941*0#ddtmf信號(hào)由電話鍵盤使用相同幅度的兩個(gè)不同的高頻和低頻來產(chǎn)生。撥號(hào)的時(shí)候,需要將每一個(gè)號(hào)碼都轉(zhuǎn)換成一對(duì)
22、雙音頻信號(hào),這種轉(zhuǎn)換叫做編碼;解(譯)碼,就是將接收到的雙音頻信號(hào)重新還原成數(shù)據(jù)信號(hào)11。2.3 goertzel算法goertzel算法執(zhí)行離散傅立葉變換(discrete fourier transform),這個(gè)算法較為精簡(jiǎn),而且每個(gè)頻率只需要一個(gè)實(shí)數(shù)系數(shù)就可以決定值的振幅;但是,正確計(jì)算數(shù)值振幅和相位時(shí)需要復(fù)數(shù)系數(shù),故需要較復(fù)雜的程序,借助只計(jì)算音調(diào)頻率的振幅而忽略相位的計(jì)算,我們可以簡(jiǎn)化dtmf信號(hào)的譯碼工作。此外,goertzel算法只要獲得任何采樣就可以立刻處理,不必獲得全部采樣之后才處理,可明顯地提高速度。goertzel算法是dtmf信號(hào)檢測(cè)的核心,它利用二極點(diǎn)的iir濾波器
23、計(jì)算離散傅立葉變換值,快速有效的提取輸入信號(hào)的頻譜信息。goertzel算法利用了相位因子wnk的周期性,允許我們將dft的計(jì)算表示為線性濾波運(yùn)算,因wn-kn=1,我們可以利用該因子乘上dft,于是,可得 (2-1) 注意:式(2-1)為卷積形式,的確,如果我們定義序列yk(n)為 (2-2) 很清楚,yk(n)是長(zhǎng)度為n的有限時(shí)寬輸入序列x(n)與濾波器的卷積,并且濾波器的沖激響應(yīng)為: (2-3) 當(dāng)n=n時(shí),該濾波器的輸出為dft在頻率wk=2k/n處的值,亦即 (2-4) 如同將(2-3)與式(2-4)相比較就可驗(yàn)證一樣,沖激響應(yīng)為hk(n)的濾波器,他的系數(shù)函數(shù)可表示為 (2-5)
24、該濾波器在單位圓上的頻率wk=2k/n處有一個(gè)極點(diǎn)。因此,通過將輸入的數(shù)據(jù)組輸入到n個(gè)單極點(diǎn)并行濾波器(諧振器)組就可計(jì)算整個(gè)n點(diǎn)dft,其中,每一濾波器在響應(yīng)的dft頻率上有一個(gè)極點(diǎn)。我們可以利用對(duì)應(yīng)于式(2-5)給定的濾波器的差分方程來遞推計(jì)算yk(n),而不是按式(2-1)通過卷積來實(shí)現(xiàn)dft的計(jì)算,因此我們有 (2-6)初始條件:yk(-1)=0所期望的輸出是x(k)=yk(n),其中k=0,1,,n-1,為了完成這一計(jì)算,我們可以一次計(jì)算并儲(chǔ)存相位因子wn-k12。通過將具有復(fù)共軛極點(diǎn)的諧波器結(jié)合成對(duì),就可以避開式(2-6)所固有的復(fù)數(shù)乘法和加法,這就產(chǎn)生了具有兩個(gè)極點(diǎn)的的濾波器,其
25、系統(tǒng)函數(shù)為 (2-7) 該系統(tǒng)的直接型實(shí)現(xiàn)如圖2-3所示:+x(n)-1圖2-3 用于計(jì)算dft的兩極點(diǎn)諧振器的直接型實(shí)現(xiàn)該系統(tǒng)可以用差分方程描述為 (2-8) (2-9) 初始條件為。對(duì)n=0,1,n,式(2-8)中的遞推關(guān)系可迭代進(jìn)行。但式(2-9)中的程序僅當(dāng)n=n時(shí)計(jì)算一次,每迭代需要一次實(shí)數(shù)乘法和兩次加法。因此,對(duì)實(shí)輸入序列x(n),該算法通過n+1次實(shí)數(shù)乘法不僅得到x(k),而且由于對(duì)稱性也得到x(n-k)的值。當(dāng)值m相對(duì)較小時(shí),比如,goertzel算法特別有吸引力,在其他情況下,fft算法更為有效13。2.4 matlab簡(jiǎn)介matlab是由美國(guó)mathworks公司發(fā)布的主要
26、面對(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ì)語言(如c、fortran)的編輯模式,代表了當(dāng)今國(guó)際科學(xué)計(jì)算軟件的先進(jìn)水平14。 matlab和mathematica、maple并稱為三大數(shù)學(xué)軟件。它在數(shù)學(xué)類科技應(yīng)用軟件中在數(shù)值計(jì)算方面首屈一指。matlab可以進(jìn)行矩陣運(yùn)算、繪制函數(shù)和數(shù)據(jù)、實(shí)現(xiàn)算法、創(chuàng)建用戶界面、連接其他編程語言的程序等,主要應(yīng)用于
27、工程計(jì)算、控制設(shè)計(jì)、信號(hào)處理與通訊、圖像處理、信號(hào)檢測(cè)、金融建模設(shè)計(jì)與分析等領(lǐng)域12。matlab的基本數(shù)據(jù)單位是矩陣,它的指令表達(dá)式與數(shù)學(xué)、工程中常用的形式十分相似,故用matlab來解算問題要比用c,fortran等語言完成相同的事情簡(jiǎn)捷得多,并且matlab也吸收了像maple等軟件的優(yōu)點(diǎn),使matlab成為一個(gè)強(qiáng)大的數(shù)學(xué)軟件。在新的版本中也加入了對(duì)c,fortran,c+,java的支持??梢灾苯诱{(diào)用,用戶也可以將自己編寫的實(shí)用程序?qū)氲絤atlab函數(shù)庫中方便自己以后調(diào)用,此外許多的matlab愛好者都編寫了一些經(jīng)典的程序,用戶可以直接進(jìn)行下載就可以用15。2.5 本章小結(jié)音頻分析利
28、用時(shí)域分析、頻域分析、失真分析等方法為手段,通過測(cè)量各類音頻參數(shù)來評(píng)價(jià)音頻系統(tǒng)的性能。音頻分析是一種綜合性的分析,涉及到眾多的測(cè)試儀器,對(duì)于普通用戶而言,需要根據(jù)其感興趣的參數(shù)合理的選擇測(cè)試儀器,很難建立完整的音頻測(cè)試分析系統(tǒng)。注意:除第一章緒論外,其他每一章都應(yīng)該有一個(gè)本章小結(jié)第3章 dtmf信號(hào)產(chǎn)生與檢測(cè)3.1 dtmf信號(hào)的產(chǎn)生 123a47*0#dcb5689號(hào)碼與頻率對(duì)應(yīng)關(guān)系6977708529411209133614771633圖3-1 號(hào)碼與頻率關(guān)系根據(jù)ccitt建議,國(guó)際上采用697hz、770hz、852z、941hz、1209hz、1336hz、1477hz、1633hz
29、8個(gè)頻率,并將其分成兩個(gè)群,即低頻群和高頻群。從低頻群和高頻群中任意抽出一個(gè)頻率進(jìn)行疊加組合,具有16種組合形式,讓其代表數(shù)字和功率,如下圖電話機(jī)鍵盤的頻率矩陣所列16。當(dāng)按下某個(gè)鍵時(shí),所得到的按鍵信號(hào)是由相應(yīng)兩個(gè)頻率的正弦信號(hào)相加而成。設(shè)為dtmf信號(hào),產(chǎn)生方式為: (3-1) 式中=/和=2/分別表示高頻和低頻頻率,a、b分別為低群和高頻群樣值的量化基線。電話信號(hào)的典型抽樣頻率為=8khz。ccitt對(duì)dtmf信號(hào)規(guī)定的指標(biāo)是,傳送/接收率為每秒10個(gè)數(shù)字,即每個(gè)數(shù)字100ms。代表數(shù)字的音頻信號(hào)必須持續(xù)至少45ms,但不超過55ms。100ms內(nèi)其他時(shí)間為靜音(無信號(hào)),以便區(qū)別連續(xù)的兩
30、個(gè)按鍵信號(hào)17。生成行頻正弦序列開始生成列頻正弦序列行頻正弦序列與列頻正弦學(xué)序列疊加d/a變換信號(hào)發(fā)送濾波圖3-2 dtmf信號(hào)產(chǎn)生流程圖3.2 dtmf信號(hào)的檢測(cè)3.2.1 dtmf信號(hào)檢測(cè)方法dtmf解碼即是在輸入信號(hào)中搜索出有效的行頻和列頻。計(jì)算數(shù)字信號(hào)的頻譜可以采用dft及其快速算法fft,而在實(shí)現(xiàn)dtmf解碼時(shí),采用goertzel算法要比fft更快。通過fft可以計(jì)算得到信號(hào)所有譜線,了解信號(hào)整個(gè)頻域信息,而對(duì)于dtmf信號(hào)只用關(guān)心其8個(gè)行頻/列頻及其二次諧波信息即可(二次諧波的信息用于將dtmf信號(hào)與聲音信號(hào)區(qū)別開)。此時(shí)goertzel算法能更加快速的在輸入信號(hào)中提取頻譜信息1
31、8。相對(duì)于dtmf編碼過程,dtmf的解碼過程復(fù)雜得多。dtmf的解碼主要完成對(duì)有效行列頻率的檢測(cè)以及對(duì)按鍵的判決。和以往模擬電路通過過零檢測(cè)來檢測(cè)有效頻率相比,采用dsp可以從頻域直接分析有效頻率的存在。在檢測(cè)dtmf信號(hào)時(shí),不但要檢測(cè)出dtmf的基波信息,而且還要考慮其二次諧波的信息。貝爾試驗(yàn)室所特意選定的這8個(gè)頻率,只在基波有較高的能量;而在相同的基波上有較高能量的話音信號(hào)在其二次諧波上也疊加有較高的能量。因此檢測(cè)二次諧波的作用就是區(qū)別dtmf起后發(fā)送,解碼時(shí)dsp則采用改進(jìn)的goertzel算法,從頻域搜索兩個(gè)正弦波的存在。因此檢測(cè)二次諧波的作用就是區(qū)別dtmf信號(hào)和話音信號(hào)19。dt
32、mf信號(hào)的解碼是基于goertzel算法。我們不需要計(jì)算全部頻域信息,只需要計(jì)算需要的頻域的信息,而fft需要計(jì)算全部的頻域信息。理論上證明當(dāng)計(jì)算的點(diǎn)數(shù)小于log2n時(shí),goertzel算法比fft更有效20。在輸入信號(hào)中檢測(cè)dtmf信號(hào),并將其轉(zhuǎn)換為實(shí)際的數(shù)字,這一解碼過程本質(zhì)是連續(xù)的過程,需要在輸入的數(shù)據(jù)信號(hào)流中連續(xù)地搜索dtmf信號(hào)頻譜的存在。整個(gè)檢測(cè)過程分兩步:(1)采用goertzel算法在輸入信號(hào)中提取頻譜信息,計(jì)算出八個(gè)基頻和八個(gè)二次諧波幅度的平方值。(2)根據(jù)這些頻率幅度平方值與所確定的各個(gè)門限值相比較,確定輸入信號(hào)中是否是有dtmf信號(hào)并映射出雙音多頻信號(hào)的數(shù)字信息作檢測(cè)結(jié)果
33、的有效性檢查21。采集信號(hào)讀入采樣點(diǎn)數(shù)n,基頻對(duì)應(yīng)點(diǎn)k調(diào)用goertzel計(jì)算信號(hào)dft模,畫幅度譜輸出相應(yīng)行號(hào)與列號(hào)輸出行列號(hào)對(duì)應(yīng)號(hào)碼幅度譜峰是否大于檢測(cè)門限結(jié)束開始yn圖3-3 dtmf信號(hào)識(shí)別流程圖3.2.2 dtmf信號(hào)有效性的檢測(cè)得到了dtmf信號(hào)的基波以及二次諧波的頻譜平方信息后,需要通過一系列檢測(cè)才能確定信號(hào)的有效性:(1) dtmf信號(hào)的強(qiáng)度是否足夠大,行列頻率分量平方幅度和是否高于規(guī)定的門限值。(2) 如果dtmf信號(hào)存在,比較行列頻率的最大頻率分量差值,因?yàn)殡娫捑€具有低通特性,列頻比行頻衰減得要厲害。因此,要設(shè)置一門限值。(3) 分別在行列頻率組比較頻譜分量,最強(qiáng)的譜線至少
34、要比其他音頻信號(hào)高一個(gè)門限值。(4) 二次諧波分量是否小于某個(gè)值。(5) 判斷dtmf信號(hào)是否包含穩(wěn)定的數(shù)字信息,只有數(shù)字信息被連續(xù)檢測(cè)到兩次,才認(rèn)為是數(shù)字信息是穩(wěn)定的。最后要檢測(cè)數(shù)字信息之后是否有停頓狀態(tài),只有這樣將當(dāng)前的數(shù)字作為有效22。3.3 本章小結(jié)在輸入信號(hào)中檢測(cè)dtmf信號(hào),并將其轉(zhuǎn)換為實(shí)際的數(shù)字,這一解碼過程本質(zhì)是連續(xù)的過程,需要在輸入的數(shù)據(jù)信號(hào)流中連續(xù)地搜索dtmf信號(hào)頻譜的存在。整個(gè)檢測(cè)過程分兩步:首先采用goertzel算法在輸入信號(hào)中提取頻譜信息;接著作檢測(cè)結(jié)果的有效性檢查。注意:除第一章緒論外,其他每一章都應(yīng)該有一個(gè)本章小結(jié)第4章 matlab仿真4.1 設(shè)計(jì)程序(見附
35、錄)4.2 matlab仿真dtmf信號(hào)的產(chǎn)生比較簡(jiǎn)單,可直接利用兩行頻、列頻的正弦函數(shù)的疊加實(shí)現(xiàn), dtmf信號(hào)(電話撥號(hào)“5”為例)波形如圖4-1所示:圖4-1 電話號(hào)碼“5”的時(shí)域波形圖電話號(hào)碼“5”的幅度譜如下圖所示:圖4-2 電話號(hào)碼“5”的幅度譜我采用的dtmf信號(hào)檢測(cè)的原理是分析信號(hào)的頻譜特性來分辨不同信息。整個(gè)檢測(cè)過程分兩步:首先采用goertzel算法在輸入信號(hào)中提取頻譜信息;接著分析頻譜信息,提取輸入的dtmf信號(hào),計(jì)算數(shù)字信號(hào)的頻譜可以采用dft及其快速算法fft,而在實(shí)現(xiàn)dtmf解碼時(shí),由于計(jì)算量的限制必須采用更高效的算法。由于dtmf信號(hào)只用關(guān)心其8個(gè)行頻/列頻的頻譜
36、信息,這為設(shè)計(jì)更優(yōu)的算法提供了思路。經(jīng)過前面的介紹goertzel算法達(dá)到了我們的設(shè)計(jì)要求,本畢業(yè)設(shè)計(jì)采用goertzel算法對(duì)雙音多頻信號(hào)進(jìn)行檢測(cè),如圖4-3所示,電話號(hào)碼“5”的goertzel算法檢測(cè)頻譜圖。圖4-3 電話號(hào)碼“5”的檢測(cè)頻譜圖說明:圖4-1,4-2,4-3是在信噪比snr=10,采樣點(diǎn)數(shù)n=205的情況下得到的。當(dāng)采樣點(diǎn)n=205時(shí),誤碼率pe與信噪比snr的關(guān)系圖如下圖所示:圖4-4 pe-snr關(guān)系圖由圖4-4可知,當(dāng)采樣點(diǎn)數(shù)一定時(shí),信噪比越大誤碼率越低。當(dāng)snr=10時(shí)誤碼率pe與采樣點(diǎn)數(shù)n的關(guān)系如下圖所示:圖4-5 pe-n關(guān)系圖由圖4-5可知,當(dāng)信噪比一定時(shí),
37、采樣點(diǎn)數(shù)越大誤碼率越低。pe-snr-n關(guān)系的3d圖如圖4-6所示:圖4-6 pe-snr-n關(guān)系圖整個(gè)仿真過程的gui界面如圖4-7所示:圖4-7 仿真gui界面4.3 本章小結(jié)采用dtmf信號(hào)檢測(cè)的原理是分析信號(hào)的頻譜特性來分辨不同信息。整個(gè)檢測(cè)過程分兩步:首先采用goertzel算法在輸入信號(hào)中提取頻譜信息;接著分析頻譜信息,提取輸入的dtmf信號(hào),計(jì)算數(shù)字信號(hào)的頻譜可以采用dft及其快速算法fft,而在實(shí)現(xiàn)dtmf解碼時(shí),由于計(jì)算量的限制必須采用更高效的算法。注意:除第一章緒論外,其他每一章都應(yīng)該有一個(gè)本章小結(jié)結(jié)論雙音多頻dtmf信號(hào)不僅用于多數(shù)國(guó)家的電話網(wǎng)絡(luò)中,還廣泛應(yīng)用于傳輸十進(jìn)制
38、數(shù)據(jù)的其他通信系統(tǒng)如電子郵件及銀行等,本文就dtmf信號(hào)檢測(cè)中的算法原理及主要參數(shù)選擇進(jìn)行了理論分析,并給出了基于matlab的dtmf信號(hào)處理系統(tǒng)仿真實(shí)例。基于goertzel算法,可以在pc機(jī)中通過matlab語言實(shí)現(xiàn)dtmf的編解碼。試驗(yàn)結(jié)果表明基于matlab的dtmf編解碼具有速度快、精度高、穩(wěn)定性好以及便于靈活應(yīng)用等特點(diǎn)而利用matlab語言,可以較好地、快速地進(jìn)行算法的仿真,對(duì)系統(tǒng)的快速開發(fā)起到了推動(dòng)作用。通過此次設(shè)計(jì),我們對(duì)dtmf的基礎(chǔ)知識(shí)有了個(gè)比較深刻的了解,掌握了dtmf的信號(hào)產(chǎn)生及信號(hào)檢驗(yàn)的原理及方法,并熟悉了用matlab語言對(duì)dtmf的編程的方法,我們定會(huì)總結(jié)設(shè)計(jì)方
39、法,掌握理論知識(shí),汲取經(jīng)驗(yàn)教訓(xùn),為進(jìn)一步掌握dsp的設(shè)計(jì),matlab的使用打下基礎(chǔ)。參考文獻(xiàn)1 周良權(quán),方向喬.數(shù)字電子技術(shù)基礎(chǔ).北京:高等教育出版社,2002.12.2 呂國(guó)泰,吳項(xiàng).電子技術(shù).北京:高等教育出版社,2001.5.3 陳明義.電子技術(shù)課程設(shè)計(jì)使用教程.中南大學(xué)出版社,2002.6.(1).4 程控交換實(shí)驗(yàn)指導(dǎo)書.鐘山學(xué)院內(nèi)部資料.5 劉愛霞.語音編程.遠(yuǎn)程控制試驗(yàn)板.中國(guó).深圳.51測(cè)試網(wǎng).6 奧法尼德斯.信號(hào)處理導(dǎo)論.清華大學(xué)出版社,1999.1.7 信號(hào)與系統(tǒng)分析及matlab實(shí)現(xiàn).電子工業(yè)出版社,梁紅等.8 陳懷琛.matlab及其在理工課程中的應(yīng)用指南m.西安電子科
40、技大學(xué)出社,2000.9 奧本海姆.signals&systems信號(hào)與系統(tǒng).清華大學(xué)出版社,1999.1.10 董愛民.dtmf技術(shù)及檢測(cè)算法研究.計(jì)算機(jī)與網(wǎng)絡(luò).2007.23.11 長(zhǎng)春理工大學(xué)學(xué)報(bào).第三卷,第一期.12 丁玉美,高西全.數(shù)字信號(hào)處理(第二版).西安電子科技大學(xué)出版社,2001.1.13 戴悟僧.數(shù)字信號(hào)處理導(dǎo)論m.上??茖W(xué)技求出版社,2000.8.14 陳懷琛.matlab及其在理工課程中的應(yīng)用指南m.西安電子科技大學(xué)出版社,2000.15 葛建新.dtmf(雙音多頻)技術(shù)淺析.河北省電子信息產(chǎn)品監(jiān)督檢驗(yàn)院.16 dtmf信號(hào)的產(chǎn)生與解碼算法研究.信息技術(shù)2008年第11
41、期.17 金鑫春,汪一鳴.goertzel算法下dtmf信號(hào)檢測(cè)及參數(shù)優(yōu)化.18 stan m r,burleson w p.bus-invert coding for low-power i/o.ieee transactions on vlsi systems.vol.3no.l.1995.49-58.19 weste n,eshraghian k.principles of cmos vlsi de 2sign.a systems perspective.reading,ma:addisonwesley publishing company,1988.20 mehta h,owens r
42、 m,irwin mj.some issues in graycode addressing.gls-vlsi-96,pp.178-180,amea,ia,march 1996.21 魏克新,王云亮,陳志敏.matlab語言與自動(dòng)控制系統(tǒng)m.北京:機(jī)械工業(yè)出版社,1998.22 劉志儉.matlab應(yīng)用程序接口用戶指南m.北京:科學(xué)出版社,2000.附錄function varargout = dtmf(varargin)% dtmf m-file for dtmf.fig% dtmf, by itself, creates a new dtmf or raises the existing%
43、 singleton*.% h = dtmf returns the handle to a new dtmf or the handle to% the existing singleton*.% dtmf(callback,hobject,eventdata,handles,.) calls the local% function named callback in dtmf.m with the given input arguments.% dtmf(property,value,.) creates a new dtmf or raises the% existing singlet
44、on*. starting from the left, property value pairs are% applied to the gui before dtmf_openingfcn gets called. an% unrecognized property name or invalid value makes property application% stop. all inputs are passed to dtmf_openingfcn via varargin.% *see gui options on guides tools menu. choose gui al
45、lows only one% instance to run (singleton).% see also: guide, guidata, guihandles% edit the above text to modify the response to help dtmf% begin initialization code - do not editgui_singleton = 1;gui_state = struct(gui_name, mfilename, . gui_singleton, gui_singleton, . gui_openingfcn, dtmf_openingf
46、cn, . gui_outputfcn, dtmf_outputfcn, . gui_layoutfcn, , . gui_callback, );if nargin & ischar(varargin1) gui_state.gui_callback = str2func(varargin1);endif nargout varargout1:nargout = gui_mainfcn(gui_state, varargin:);else gui_mainfcn(gui_state, varargin:);end% end initialization code - do not edit%
47、 - executes just before dtmf is made visible.function dtmf_openingfcn(hobject, eventdata, handles, varargin)% this function has no output args, see outputfcn.% hobject handle to figure% eventdata reserved - to be defined in a future version of matlab% handles structure with handles and user data (se
48、e guidata)% varargin command line arguments to dtmf (see varargin)% choose default command line output for dtmfhandles.output = hobject;% update handles structureguidata(hobject, handles);% uiwait makes dtmf wait for user response (see uiresume)% uiwait(handles.figure1);% - outputs from this functio
49、n are returned to the command line.function varargout = dtmf_outputfcn(hobject, eventdata, handles) % varargout cell array for returning output args (see varargout);% hobject handle to figure% eventdata reserved - to be defined in a future version of matlab% handles structure with handles and user d
50、ata (see guidata)set(handles.text_snr,string,handles.snr);set(handles.text_ngoertzel,string,handles.ngoertzel);% get default command line output from handles structurevarargout1 = handles.output;% - executes on slider movement.function slider_snr_callback(hobject, eventdata, handles)% hobject handle
51、 to slider_snr (see gcbo)% eventdata reserved - to be defined in a future version of matlab% handles structure with handles and user data (see guidata) % hints: get(hobject,value) returns position of slider%get(hobject,min) and get(hobject,max) to determine range of sliderhandles.snr=get(hobject,val
52、ue); %returns position of sliderguidata(hobject,handles);set(handles.text_snr,string,handles.snr);% - executes during object creation, after setting all properties.function slider_snr_createfcn(hobject, eventdata, handles)% hobject handle to slider_snr (see gcbo)% eventdata reserved - to be defined
53、in a future version of matlab% handles empty - handles not created until after all createfcns calledhandles.snr=10;guidata(hobject,handles);% hint: slider controls usually have a light gray background.if isequal(get(hobject,backgroundcolor), get(0,defaultuicontrolbackgroundcolor) set(hobject,backgroundcolor,.9 .9 .9);end% - executes during object cre
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 課題申報(bào)書教師建議
- 夫妻財(cái)產(chǎn)分割合同協(xié)議模板
- 項(xiàng)目進(jìn)展跟蹤系統(tǒng)的必要性試題及答案
- 項(xiàng)目管理資格考試的應(yīng)考心態(tài)與復(fù)習(xí)技巧分享試題及答案
- 注冊(cè)會(huì)計(jì)師公司價(jià)值管理試題及答案
- 課題申報(bào)書數(shù)學(xué)
- 提升財(cái)務(wù)知識(shí)的途徑計(jì)劃
- 項(xiàng)目管理優(yōu)先級(jí)排序試題及答案
- 新年職業(yè)素養(yǎng)提升計(jì)劃
- 2025年資本市場(chǎng)基礎(chǔ)試題及答案
- DZ∕T 0215-2020 礦產(chǎn)地質(zhì)勘查規(guī)范 煤(正式版)
- 浙江省紡織服裝出口面臨的問題及應(yīng)對(duì)措施
- MOOC 數(shù)據(jù)結(jié)構(gòu)-西北大學(xué) 中國(guó)大學(xué)慕課答案
- 日本抵押貸款市場(chǎng)調(diào)研和分析報(bào)告(英文版)-2024年1月上傳培訓(xùn)課件
- 多圖中華民族共同體概論課件第十一講 中華一家與中華民族格局底定(清前中期)根據(jù)高等教育出版社教材制作
- 人教版(部編版)小學(xué)語文五年級(jí)下冊(cè)期中復(fù)習(xí)課件1
- 牙周病學(xué)全套教學(xué)課件
- 酒店合作協(xié)議書酒店工程維修
- 《化解沖突收獲友誼》心理健康課件
- DB42-T 2185-2024 高速公路運(yùn)營(yíng)管理服務(wù)規(guī)范
- 寧德時(shí)代社招測(cè)評(píng)試題
評(píng)論
0/150
提交評(píng)論