版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、XXXXXXX 大学毕业论文(设计)题目双音频(DTMF)信号的产生与检测学生姓名学专号业电子信息工程班级2008级1班指导教师学部计算机科学与电气工程答辩日期 2012年5月19日黑龙江东方学院本科生毕业论文(设计)任务书姓名学号专业班级电子信息工程08级1班毕业论文(设计)题目:双音频(DTMF )信号的产生与检测毕业论文(设计)的立题依据双音多频 DTMF (Dual Tone Multi-Frequency)信令在全世界范围内得到广泛应用DTMF作为实现电话号码快速可靠传输的一种技术,它具有很强的抗干扰能力和较高的传 输速度,因此,可广泛用于电话通信系统中。主要内容及要求1、利用 DT
2、MF 信号产生的原理合成数字1 ,其合成公式是xi t二sin 2 697 “t sin 2- 1209 t分析其时域波形和频谱;2、生成各个按键信号;3、利用fft分析09十个数字拨号信息的频谱,观察频谱图中的峰值点的幅值以及它们出现的位置。根据谱峰的幅值和位置,识别各 DTMF信号所对应对应的数字;4、编写Goertzel算法的程序,识别各DTMF信号所对应对应的数字;进度安排12月12日12月13日12月29日12月30日1月17日1月18日2月26日2月27日3月27日3月28日4月8日4月9日4月17日4月18日4月22日4月23日5月3日5月4日5月9日5月10日5月18日5月19
3、日选题接受指导老师的指导 拟定论文大纲搜集、查阅、整理相关资料 初稿形成 初稿审定第一次修改第一次审定 第二次修改定稿论文评阅小组评审论文(设计) 毕业论文(设计)答辩 学生签字:指导教师签字:年 月曰黑龙江东方学院本科毕业论文(设计)双音频(DTMF )信号的产生与检测摘 要双音多频 DTMF ( Dual Tone Multi-Frequency)信令在全世界范围内得到广泛应用,DTMF信令的产生与检测集成到含有数字信号处理器(DSP)的系统中,是一项较有价值的工程应用。DTMF作为实现电话号码快速可靠传输的一种技术,它具有很 强的抗干扰能力和较高的传输速度,因此,可广泛用于电话通信系统中
4、。但绝大部分 是用作电话的音频拨号,另外,它也可以在数据通信系统中广泛地用来实现各种数据 流和语音等信息的远程传输,研究其在MATLAB下的仿真实现有助于其具体系统的优化设计。本文给出一种实现方案,主要阐述了DTMF的原理及如何在 Matlab上产生DTMF信号,并对用Goertzel算法提取的频谱进行分析,然后,得到用Goertzel算法在白噪声的环境下对输入的 DTMF信号提取频谱信息,最后,根据提取的频谱信息 对输入信号进行检测解码。关键词:双音多频DTMF ; Goertzel算法;Matlab-I-黑龙江东方学院本科毕业论文(设计)Dual Tone Multi-frequency
5、(DTMF) Signal Generationand DetectionAbstractDTMF (Dual Tone Multi-Freque ncy) sig nali ng in the widely used worldwide, sig nali ng the DTMF gen erati on and detect ion in tegrated with digital sig nal processor (DSP) system, is a more value engin eeri ng. DTMF teleph one nu mber as to achieve a fa
6、st and reliable tran smissi on tech no logy, it has a strong an ti-i nterfere nee ability and high tran smissi on speed, it can be widely used for teleph one com muni cati on system. But the vast majority of teleph one tone diali ng is used. In additi on, it can also be in the data com muni catio n
7、system widely used to achieve a variety of data streams and remote tran smissi on of voice and other information. Under study in the MATLAB Simulation helps optimize the design of their specific systems.This paper prese nts a realizati on of the program, mai nly on the prin ciple of DTMF and how to
8、gen erate DTMF sig nals in Matlab, and extracted with Goertzel algorithm to an alyze the spectrum, and the n, get with the Goertzel algorithm in the con text of white no ise on the in put of the DTMF spectrum in formatio n sig nal extract ion, and fin ally, accord ing to in formatio n extracted from
9、 the in put sig nal spectrum to detect decod ing.Keywords: Dual tone multi-frequency; Goertzel algorithm; Matlab-ii-目录摘 要 IAbstract I.I.第 1 章 绪 论 11.1 引言 11.2 课题意义 1第 2 章 基本原理 32.1 自动电话的制式 32.2 DTMF 技术 52.3 Goertzel 算法52.4 Matlab 简介72.5 本章小结 8第3章 DTMF 信号产生与检测 93.1 DTMF 信号的产生 93.2 DTMF 信号的检测 103.2.1
10、DTMF 信号检测方法 103.2.2 DTMF 信号有效性的检测 123.3 本章小结 13第4章Matlab仿真144.1 设计程序(见附录) 144.2 Matlab 仿真 144.3 本章小结 17结论 18参考文献 19附录 20致谢 29黑龙江东方学院本科毕业论文(设计)双音频(DTMF信号的产生与检测第1章 绪 论1.1引言电话中的双音多频信号(DTMF )有两种用途:一是用于双音多频信号的拨号,去控制交换机接通被叫的用户话机;二是利用双音多频信号遥控电话机各种动作,如 播放留言、语音信箱等,并可以通过附加一些电路来是实现遥控家电设备的开启关闭 等智能功能。前者解决双音多频信号的
11、发送和编码,后者是双音多频信号的接收和解 码。这些东西都离不开DTMF信号的正确检测。目前,大多数的DTMF信号的检测均采 用专用的发送、接收芯片,这种解码的原理都依赖于计算输入信号的过零率。但这种 方法有很大的局限性,无法检测多路 DTMF信号,当混有语音和噪声时,专用芯片检 测往往出现误差,如果音频信号频率改变应用于别的系统时,专用的芯片就发挥不了 作用。所以,用硬件实现DTMF信号的检测并不是一种很好的选择 。信息化已经成为社会发展的大趋势,信息化是以数字化为背景的,而DSP技术则是数字化最重要的基本技术之一。在过去的短短的二十来年里,DSP处理器的性能得到很大改善,软件和开发工具也得到
12、相应的发展,价格却大幅度地下降,从而得到越来 越广泛的应用。通信领域(移动通信的交换设备、基站和手机,网络的路由和交换设 备,智能天线,软件无线电,IP电话等),雷达和声纳系统,巡航导弹、灵巧炸弹及各 种武器系统,自动测试系统,医疗诊断设备(CT、核磁共振、B超等),计算机及其外 设,消费类电子设备(VCD、DVD、HDTV、机顶盒、MP3、家庭影院系统、数字照相 机和摄象机等),机器人及各种自动控制系统,等等,应用范围不胜枚举 o1.2 课题意义DTMF(Dual Tone Multi Frequency)中文译为双音多频信号,最初由美国AT&T贝尔 公司实验室研制,用于音频电话网络
13、中的拨号信号。一方面这种信号有非在常高的拨号 速度,另一方面它便于自动检测识别及电话业务的扩展 ,所以很快代替了原有的脉冲计 数方式的拨号形式在这里不得不提一下电话交换机的发展历史。自1876年美国贝尔发明电话以来,电话交换技术发展主要经历了三个阶段:人工交换、机电交换、电子交换。早在1878年就出现了人工供电制交换机,它借助话务员进行话务接续。15年后步进制的交换机问世,这种交换机属于“直接控制”方式,用户通过话机拨号脉冲直接控制 步进接续器做升降和旋转动作。从而自动完成用户间的接续。这种交换机虽然实现了 自动接续,但存在着速度慢、效率低、杂音大与机械磨损严重等特点。直到1938年发明了纵横
14、制交换机由直接控制过渡到间接控制方式,随后又出现了电子交换机及程控交换 机等。用户的拨号脉冲不再直接控制接线器动作 ,而先由记发器接收、存储,然后通过 标志器驱动接线器,以完成用户间接续3。DTMF双音多频拨号和解码在通信系统及其它方面有着广泛的应用。DTMF信号是便于标志器记取的是标识信号,所以可以不采用不稳定的脉冲计数方式,逐步发展、 到数字号码标识,所以快速,稳定灵活的DTMF音频拨号方式取代了脉冲拨号方式。电 子交换机程控交换机。话网中常用的信令,无论是家用电话、移动电话还是程控交换 机,多采用DTMF信号发送接收号码。语音芯片的应用前景也十分广阔,目前语音芯片已应用于微型固体录音机、
15、通讯、电话、车船、飞机黑匣子、有声电子信函、语音信箱、高级玩具等。此外,还可 以利用语音芯片开发出“会说话”的电压表、电流表等语音型智能仪器仪表以及“会 说话的电子称”、“出租车自动语音报价器”、“多路语音报警系统”等新颖电子电 器产品。该项设计可促进我们学习开发电子、通信产品的技术,培养和锻炼我们电子电路设 计调试、文献资料检索、电路图绘制等多方面的能力和素质,同时也帮助我们熟练掌握 常用双音多频信号编解码器和语音芯片的工作原理和使用方法,具有很强的实践指导意 义和实用价值5。-2-黑龙江东方学院本科毕业论文(设计)第2章基本原理2.1 自动电话的制式要弄清双音频的来龙去脉,必须从电话的制式
16、谈起。最早的电话机是带有一个“手摇把”的,后来慢慢的开始出现了“磁石电话”、“供电电话”、一直发展到现在人们广泛使用的“自动电话”。由于“磁石电话”、“供电电话”早已淘汰,因此我们重点要谈的是自动电话的制式。从自动电话的制式来分,可分为“脉冲制式”及“双音频制式”两种。所谓“脉冲制式”,就是拨号的时候电话机发出的是一串一串的“无电流脉冲”。比如拨号码“ 1”时,发出去的是一个“无电流脉冲”,也就是一个“断电脉冲”,拨号码“2”时,发出去的是两个连续的“无电流脉冲”,拨号码“ 0”时,发出去的是十个连续的“无电流脉冲”。如图2-1所示是脉冲电话机拨武汉区号 721时线路上出现的脉冲图6图2-1脉
17、冲电话机拨号的脉冲图谱从图2-1中可以看出,待机状态下线路上是没有电流的,摘机后线路上才有电 流,拨号时,拨的号码是几,线路上就出现几个连续的、没有电流的脉冲间隙,比如 拨2的时候,就好像电话线被快速的断开了两次一样,因此老式的电话机还能用拍打 叉簧的办法拨号。老式带有“拨号盘”的电话机就是脉冲电话。脉冲电话容易出现拨错号的现象,当线路接触不良,刮风时线路接头时通断时, 就会出现错号。另外脉冲信号经过长途线路传送以后,由于线路电感和电容的影响, 脉冲波形会发生严重畸变,本来上升沿和下降沿都是很陡的波形,传到对方以后很可 能完全变样引起误判,因此这种电话也逐渐被淘汰。所谓“双音频制式”,就是拨电
18、话的时候,拨每一个号码,发出去的都是由两个 不同频率的音频信号组合起来的双音频信号。如拨“0”的时候,发出去的两个音频信号分别是941HZ和1336HZ,拨“ 9”的时候发出去的两个音频信号分别是952HZ和1477HZ等等。我们用电话进行拨号时都能从听筒中听到一种按键的声音,这种声音 其实就是由两个不同的频率组合成的复合音。每个号码都是由两个音频信号组合起来 的,因此叫“双音频”。图2-2列出了每个号码与双音频频率的对应关系 。我们可以将脉冲拨号与双音多频拨号的性能进行一个比较:(1)脉冲信号在线路传输中容易产生波形畸变,可能产生错号。(2)脉冲信号的幅度较容易产生线间干扰。(3)脉冲拨号速
19、度慢。例如:拨打电话号码590850,它所用的时间为:(5+9+10+8+5+10) xl00+800X5=8700ms=8.7s图2-2号码与频率对应关系如果电话号码越长,所用的时间越长,占用交换机的时间也长,这就使程控交换 机接续速度快的优点得不到发挥,从而影响了交换机的接通率。双音多频电话机是两个单音频来代表一个数字,因此,采用音频信号传送的速度 快,它发送的每位号码所用的时间都是相同的,它的发号速度主要取决于打电话者的 拨号速度。现在还以拨打电话号码 590850为例,在双音多频方式下,单频持续时间为 120ms,位间隔为108ms,则拨打上述电话号码所需的时间为120 >6+1
20、08 >5=1260ms=1.26s可见,脉冲拨号所用的时间是双音多频拨号的8.7s/1.26s=6.4倍9。2.2 DTMF 技术由以上分析可知,采用双音多频信号,可以提高电路的抗干扰能力,减少交换机 的接续差错,从而提高交换机的接通率。同时我们也可以知道DTMF技术就是用两个特定的单音频组合信号来代表数字信号以实现其功能的一种编码技术。两个单音频的 频率不同,代表的数字或实现的功能也不同。这种电话机中通常有16个按键,其中有10个数字键09和6个功能键*、#、A、B、C、D。由于按照组合原理,一般应有 8 种不同的单音频信号。因此可采用的频率也有8种,故称之为多频,又因它采用从 8种
21、频率中任意抽出2种进行组合来进行编码,所以又称之为“8中取2”的编码技术10o根据CCITT的建议,国际上采用的多种频率为 687Hz、770Hz、852Hz、941Hz、 1209Hz、1336Hz、1477Hz和1633Hz等8种。用这8种频率可形成16种不同的组 合,从而代表16种不同的数字或功能键,具体组合如表 2-1所示。表2-1键值频率组合表1209133614771633697123A770456B852786C941*0#DDTMF信号由电话键盘使用相同幅度的两个不同的高频和低频来产生。拨号的时 候,需要将每一个号码都转换成一对双音频信号,这种转换叫做编码;解(译)码, 就是将
22、接收到的双音频信号重新还原成数据信号11 o2.3 Goertzel 算法Goertze算法执行离散傅立叶变换(Discrete Fourier Transform),这个算法较为精 简,而且每个频率只需要一个实数系数就可以决定值的振幅;但是,正确计算数值振-6-黑龙江东方学院本科毕业论文(设计)幅和相位时需要复数系数,故需要较复杂的程序,借助只计算音调频率的振幅而忽略 相位的计算,我们可以简化DTMF信号的译码工作。此外,Goertzel算法只要获得任何 采样就可以立刻处理,不必获得全部采样之后才处理,可明显地提高速度。Goertze I算法是DTMF信号检测的核心,它利用二极点的IIR滤波
23、器计算离散傅立叶变换值,快速 有效的提取输入信号的频谱信息。Goertze算法利用了相位因子Wn的周期性,允许我们将DFT的计算表示为线性 滤波运算,因WN-kN=1,我们可以利用该因子乘上DFT,于是,可得N AN JX(k)二Wn叫 x(mwNTx(m)W05(2-1)m0注意:式(2-1)为卷积形式,的确,如果我们定义序列 yk(n)为N 二yk( n) x(mWN“(5( 2-2)很清楚,yk(n)是长度为N的有限时宽输入序列x(n)与滤波器的卷积,并且滤波器的 冲激响应为:hk( n)=W/"5u( n)(2-3)当n=N时,该滤波器的输出为DFT在频率Wk=2n k/Nt
24、t的值,亦即(2-4)歐上)二几(叽如同将(2-3)与式(2-4)相比较就可验证一样,冲激响应为hk(n)的滤波器,他的Hk(z)二系数函数可表示为(2-5)该滤波器在单位圆上的频率Wk=2 n /N处有一个极点。因此,通过将输入的数据组输入到N个单极点并行滤波器(谐振器)组就可计算整个 N点DFT,其中,每一滤波器在响应的DFT频率上有一个极点我们可以利用对应于式(2-5)给定的滤波器的差分方程来递推计算yk(n),而不是按式(2-1)通过卷积来实现DFT的计算,因此我们有yk(n )=WNyk(n1)+x(n )(2-6)初始条件:yk(-1)=0所期望的输出是X(k)=y k(N),其中
25、k=0,1, , N-1,为了完成这一计算,我们可以一 次计算并储存相位因子WN-k12 o通过将具有复共轭极点的谐波器结合成对,就可以避开式(2-6)所固有的复数乘法-8-黑龙江东方学院本科毕业论文(设计)和加法,这就产生了具有两个极点的的滤波器,其系统函数为Wfz1 -2cos(2二 k/N)zZ(2-7)-9-黑龙江东方学院本科毕业论文(设计)该系统的直接型U实现如图2-3所示:图2-3用于计算DFT的两极点谐振器的直接型H实现-#-黑龙江东方学院本科毕业论文(设计)该系统可以用差分方程描述为vk(n)=2cos(2N/kv)n( -k1®n(2<)n (2-8)yk(
26、n)= v ( n> W V(nn 1(2-9)初始条件为 Vk(-1)=Vk(-2) =0。对n=0,1,N式(2-8)中的递推关系可迭代进行。但式(2-9)中的程序仅当n=N时计 算一次,每迭代需要一次实数乘法和两次加法。因此,对实输入序列x(n),该算法通过N+1次实数乘法不仅得到X(k),而且由于对称性也得到X(N-k)的值。当值M相对较小时,比如 M _log2N, Goertze算法特别有吸引力,在其他情况 下,FFT算法更为有效13。2.4 Matlab 简介MATLAB是由美国mathworks公司发布的主要面对科学计算、可视化以及交 互式程序设计的高科技计算环境。它将数
27、值分析、矩阵计算、科学数据可视化以 及非线性动态系统的建模和仿真等诸多强大功能集成在一个易于使用的视窗环境 中,为科学研究、工程设计以及必须进行有效数值计算的众多科学领域提供了一-#-黑龙江东方学院本科毕业论文(设计)种全面的解决方案,并在很大程度上摆脱了传统非交互式程序设计语言(如C、Fortran)的编辑模式,代表了当今国际科学计算软件的先进水平网。MATLAB 和 Mathematica、Maple并称为三大数学软件。它在数学类科技应 用软件中在数值计算方面首屈一指。MATLAB可以进行矩阵运算、绘制函数和数据、实现算法、创建用户界面、连接其他编程语言的程序等,主要应用于工程计 算、控制
28、设计、信号处理与通讯、图像处理、信号检测、金融建模设计与分析等 领域12。MATLAB的基本数据单位是矩阵,它的指令表达式与数学、工程中常用的形式十 分相似,故用MATLAB来解算问题要比用C,FORTRAN等语言完成相同的事情简捷 得多,并且MATLAB也吸收了像Maple等软件的优点,使MATLAB成为一个强大的 数学软件。在新的版本中也加入了对C,FORTRAN,C+, JAVA的支持。可以直接调用,用户也可以将自己编写的实用程序导入到MATLAB 函数库中方便自己以后调用,此外许多的MATLAB爱好者都编写了一些经典的程序,用户可以直接进行下载就 可以用15。2.5 本章小结音频分析利
29、用时域分析、频域分析、失真分析等方法为手段,通过测量各类音频 参数来评价音频系统的性能。音频分析是一种综合性的分析,涉及到众多的测试仪 器,对于普通用户而言,需要根据其感兴趣的参数合理的选择测试仪器,很难建立完 整的音频测试分析系统。-10-黑龙江东方学院本科毕业论文(设计)第3章 DTMF信号产生与检测号码与频率对应关系6977708529413.1 DTMF信号的产生1209133614771633I图3-1号码与频率关系根据 CCITT 建议,国际上采用 697Hz、770Hz、852z、941Hz、1209Hz、1336Hz、 1477Hz、1633Hz 8个频率,并将其分成两个群,即
30、低频群和高频群。从低频群和高频群 中任意抽出一个频率进行叠加组合,具有16种组合形式,让其代表数字和功率,如下图 电话机键盘的频率矩阵所列16。当按下某个键时,所得到的按键信号是由相应两个频率的正弦信号相加而成。设Xk为DTM信号,产生方式为:xk 二 Asi nWhk Bsi 呦k(3-1)式中Wh =2二花/ fsam和W =2n fl / fsam分别表示高频和低频频率,A、B分别为低群 和高频群样值的量化基线。电话信号的典型抽样频率为 fsam=8kHZ。CCITT对DTMF 信号规定的指标是,传送/接收率为每秒10个数字,即每个数字100ms。代表数字的 音频信号必须持续至少45ms
31、,但不超过55ms。100ms内其他时间为静音(无信号),以 便区别连续的两个按键信号17。-12-黑龙江东方学院本科毕业论文(设计)生成行频正弦序列生成列频正弦序列行频正弦序列与列频正弦学序列叠加D/A变换滤波图3-2 DTMF信号产生流程图3.2 DTMF信号的检测3.2.1DTMF信号检测方法DTMF解码即是在输入信号中搜索出有效的行频和列频。计算数字信号的频谱可 以采用DFT及其快速算法FFT,而在实现DTMF解码时,采用Goertze算法要比FFT更 快。通过FFT可以计算得到信号所有谱线,了解信号整个频域信息,而对于 DTMF信号 只用关心其8个行频/列频及其二次谐波信息即可(二次
32、谐波的信息用于将DTMF信号与声音信号区别开)。此时Goertzel算法能更加快速的在输入信号中提取频谱信息18。相对于DTMF编码过程,DTMF的解码过程复杂得多。 DTMF的解码主要完成对有 效行列频率的检测以及对按键的判决。和以往模拟电路通过过零检测来检测有效频率 相比,采用DSP可以从频域直接分析有效频率的存在。在检测DTMF信号时,不但要检测出DTMF的基波信息,而且还要考虑其二次谐波的信息。贝尔试验室所特意选定的这 8个频率,只在基波有较高的能量;而在相同的基波上有较高能量的话音信号在其二次谐 波上也叠加有较高的能量。因此检测二次谐波的作用就是区别DTMF起后发送,解码 时DSP则
33、采用改进的Goertze算法,从频域搜索两个正弦波的存在。因此检测二次谐波 的作用就是区别DTMF信号和话音信号19。DTMF信号的解码是基于Goertzel算法。我们不需要计算全部频域信息,只需要计 算需要的频域的信息,而FFT需要计算全部的频域信息。理论上证明当计算的点数小于 log2N时,Goertze算法比FFT更有效20。在输入信号中检测DTMF信号,并将其转换为实际的数字,这一解码过程本质是 连续的过程,需要在输入的数据信号流中连续地搜索DTMF信号频谱的存在。整个检测过程分两步:(1)采用Goertzel算法在输入信号中提取频谱信息,计算出八个基频和八个二次 谐波幅度的平方值。(
34、2)根据这些频率幅度平方值与所确定的各个门限值相比较,确定输入信号中是否是有DTMF信号并映射出双音多频信号的数字信息作检测结果的有效性检查21。322 DTMF信号有效性的检测得到了 DTMF信号的基波以及二次谐波的频谱平方信息后,需要通过一系列检测 才能确定信号的有效性:(1)DTMF信号的强度是否足够大,行列频率分量平方幅度和是否高于规定的门 限值。(2)如果DTMF信号存在,比较行列频率的最大频率分量差值,因为电话线具有 低通特性,列频比行频衰减得要厉害。因此,要设置一门限值。(3)分别在行列频率组比较频谱分量,最强的谱线至少要比其他音频信号高一 个门限值。(4)二次谐波分量是否小于某
35、个值。-15-黑龙江东方学院本科毕业论文(设计)(5) 判断DTMF信号是否包含稳定的数字信息,只有数字信息被连续检测到两 次,才认为是数字信息是稳定的。最后要检测数字信息之后是否有停顿状态,只有这样将当前的数字作为有效22。3.3 本章小结在输入信号中检测DTMF信号,并将其转换为实际的数字,这一解码过程本质是连续的过程,需要在输入的数据信号流中连续地搜索DTMF信号频谱的存在。整个检测过程分两步:首先采用 Goertzel算法在输入信号中提取频谱信息;接着作检测结果 的有效性检查。-16-黑龙江东方学院本科毕业论文(设计)第4章Matlab仿真4.1 设计程序(见附录)4.2 Matlab
36、 仿真DTMF信号的产生比较简单,可直接利用两行频、列频的正弦函数的叠加实现,DTMF信号(电话拨号“5为例)波形如图4-1所示:图4-1电话号码“5的时域波形图O-17-黑龙江东方学院本科毕业论文(设计)-#-黑龙江东方学院本科毕业论文(设计)电话号码“5的幅度谱如下图所示:EfcTihII>1I II*IiIJI!iBIJOOCI -3000-200000001000 200030004000-#-黑龙江东方学院本科毕业论文(设计)-#-黑龙江东方学院本科毕业论文(设计)图4-2电话号码“ 5的幅度谱我采用的DTMF信号检测的原理是分析信号的频谱特性来分辨不同信息。整个检 测过程分两
37、步:首先采用 Goertzel算法在输入信号中提取频谱信息;接着分析频谱信 息,提取输入的DTMF信号,计算数字信号的频谱可以采用DFT及其快速算法FFT,而在实现 DTMF解码时,由于计算量的限制必须采用更高效的算法。由于 DTMF信号只用关心其8个行频/列频的频谱信息,这为设计更优的算法提供了思路。 经过前面的介绍Goertzel算法达到了我们的设计要求,本毕业设计采用Goertzel算法对双音多频信号进行检测,如图 4-3所示,电话号码“5的 Goertzel算法检测频谱图。图4-3电话号码“ 5的检测频谱图说明:图4-1,4-2, 4-3是在信噪比SNR=10,采样点数N=205的情况
38、下得到的。当采样点N=205时,误码率Pe与信噪比SNR的关系图如下图所示:图4-4 Pe-SNR关系图由图4-4可知,当采样点数一定时,信噪比越大误码率越低当SNR=10时误码率Pe与采样点数N的关系如下图所示:PN关垂图(SNR=10dB)图4-5 Pe-N关系图由图4-5可知,当信噪比一定时,采样点数越大误码率越低Pe-SNR-N关系的3D图如图4-6所示:Pe-SNR-N 系 3D 图图4-6 Pe-SNR-N关系图-20-黑龙江东方学院本科毕业论文(设计)整个仿真过程的gui界面如图4-7所示:513叵冈GoerlzEiN205OD-3flo190000100200300400500
39、600700601i,>,!1!1111_ _l _ ,111111111111 i.41i百41111111- -1ii14卜鈕diI111J-00020009000G&J11! «1i!i i i ii iiiiiiii « LB >0.11111111h fh11<1 >1jdh亡、23456781DQD3Detect TiitieO.MQ38747Pb 忖图315b)MHc!ImHWdPC-5NR-N 3DS-21-黑龙江东方学院本科毕业论文(设计)-#-黑龙江东方学院本科毕业论文(设计)图4-7仿真gui界面4.3 本章小结采用DT
40、MF信号检测的原理是分析信号的频谱特性来分辨不同信息。整个检测过 程分两步:首先采用 Goertzel算法在输入信号中提取频谱信息;接着分析频谱信息, 提取输入的DTMF信号,计算数字信号的频谱可以采用DFT及其快速算法FFT,而在实现DTMF解码时,由于计算量的限制必须采用更高效的算法。结 论双音多频DTMF信号不仅用于多数国家的电话网络中,还广泛应用于传输十进制 数据的其他通信系统如电子邮件及银行等,本文就DTMF信号检测中的算法原理及主 要参数选择进行了理论分析,并给出了基于MATLAB的DTMF信号处理系统仿真实 例。基于Goertzel算法,可以在PC机中通过MATLAB语言实现DT
41、MF的编解码。试 验结果表明基于 MATLAB的DTMF编解码具有速度快、精度高、稳定性好以及便于 灵活应用等特点而利用 MATLAB语言,可以较好地、快速地进行算法的仿真,对 系统的快速开发起到了推动作用。通过此次设计,我们对DTMF的基础知识有了个比较深刻的了解,掌握了DTMF的信号产生及信号检验的原理及方法,并熟悉了用Matlab语言对DTMF的编程的方法,我 们定会总结设计方法,掌握理论知识, 汲取经验教训,为进一步掌握DSP的设计,Matlab的使用打下基础。-22-黑龙江东方学院本科毕业论文(设计)参考文献1 周良权,方向乔数字电子技术基础北京:高等教育出版社,2002. 12.2
42、 吕国泰,吴项.电子技术.北京:高等教育出版社,2001.5.3 陈明义.电子技术课程设计使用教程.中南大学出版社,2002.6.( 1).4 程控交换实验指导书.钟山学院内部资料. 文煖霞.语音编程.远程控制试验板.中国.深圳.51测试网.奥法尼德斯.信号处理导论.清华大学出版社,1999.1.7 信号与系统分析及 MATLAB实现.电子工业出版社,梁红等.8 陈怀琛.MATLAB及其在理工课程中的应用指南M.西安电子科技大学出社,2000.9 奥本海姆.SIGNALS&SYSTEMS 信号与系统.清华大学出版社,1999. 1.10 董爱民.DTMF技术及检测算法研究.计算机与网络
43、.2007.23.11 长春理工大学学报.第三卷,第一期.12 丁玉美,高西全.数字信号处理(第二版).西安电子科技大学出版社,2001.1.13 戴悟僧.数字信号处理导论M.上海科学技求出版社,2000.8.14 陈怀琛.MATLAB及其在理工课程中的应用指南M.西安电子科技大学出版社,2000.15 葛建新.DTMF (双音多频)技术浅析.河北省电子信息产品监督检验院.16 DTMF信号的产生与解码算法研究.信息技术2008年第11期.17 金鑫春,汪一鸣.Goertzel算法下DTMF信号检测及参数优化.18 Stan M R,Burleson W P.Bus-invert coding
44、 for low-power I/O.IEEE Transactions on VLSI Systems.vol.3 no.l. 1995.49-58.19 Weste N,Eshraghia n K.Pri nciples of CMOS VLSI De 2sig n.A Systems Perspective.Reading,MA:Addison -Wesley Publishing Company,1988.20 Mehta H,Owe ns R M,Irwin MJ.Some Issues in GrayCode Addressi ng.GLS-VLSI-96,pp.178- 180,
45、Amea,IA,March 1996.21 魏克新,王云亮,陈志敏.MATLAB语言与自动控制系统M.北京:机械工业出版社,1998.文怙俭.Matlab应用程序接口用户指南M.北京:科学出版社,2000.-23-黑龙江东方学院本科毕业论文(设计)附 录fun ctio n varargout = DTMF(varargi n)% DTMF M-file for DTMF.fig% DTMF, by itself, creates a new DTMF or raises the existi ng%sin glet on*.% H = DTMF returns the han die to
46、a new DTMF or the han die to%the existi ng sin glet on*.%DTMF('CALLBACK',hObject,eve ntData,ha ndles,.) calls the local%fun ctio n named CALLBACK in DTMF.M with the give n input argume nts.%DTMF('Property','Value',.) creates a new DTMF or raises the%exist ing sin glet on*. St
47、art ing from the left, property value pairs are% applied to the GUI before DTMF_OpeningFcn gets called. An%un recog ni zed property n ame or in valid value makes property applicati on%stop. All in puts are passed to DTMF_Ope nin gFc n via vararg in.%*See GUI Options on GUIDE's Tools menu. Choose
48、 "GUI allows only one%in sta nee to run (sin glet on)".% See also: GUIDE, GUIDATA, GUIHANDLES% Edit the above text to modify the resp onse to help DTMF% Begi n in itializati on code - DO NOT EDITgui_S in glet on = 1;gui_State = struct('gui_Name',mfile name, .'gui_S in glet on
49、39;, gui_S in glet on, .'gui_Ope nin gFcn', DTMF_Ope nin gFc n,.'gui_OutputFc n', DTMF_OutputFcn, .'gui_LayoutFc n',.'gui_Callback', );if n argin && ischar(varargi n1)gui_State.gui_Callback = str2fu nc(varargi n1);endif n argoutvarargout1: nargout = gui_mai nf
50、cn( gui_State, varargi n:);elsegui_mai nfcn( gui_State, varargi n:);end% End in itializati on code - DO NOT EDIT% - Executes just before DTMF is made visible.fun ctio n DTMF_Ope nin gFc n(hObject, eve ntdata, han dles, varargi n)% This function has no output args, see OutputFc n.% hObject han dle to
51、 figure% eventdata reserved - to be defined in a future version of MATLAB% han dlesstructure with han dles and user data (see GUIDATA)% varargincomma nd line argume nts to DTMF (see VARARGIN)% Choose default comma nd line output for DTMF han dles.output = hObject;% Update han dles structure guidata(
52、hObject, han dles);% UIWAIT makes DTMF wait for user respo nse (see UIRESUME)% uiwait(ha ndles.figure1);% - Outputs from this fun cti on are returned to the comma nd line. fun ctio n varargout = DTMF_OutputFc n(hObject, eve ntdata, han dles) % varargout cell array for returning output args (see VARA
53、RGOUT); % hObject han dle to figure% eventdata reserved - to be defined in a future version of MATLAB% han dlesstructure with han dles and user data (see GUIDATA)set(ha ndles.text_SNR,'stri ng',ha ndles.SNR);set(ha ndles.text_ nGoertzel,'stri ng',ha ndles .n Goertzel);% Get default c
54、omma nd line output from han dles structure varargout1 = han dles.output;% - Executes on slider moveme nt.fun ctio n slider_SNR_Callback(hObject, eve ntdata, ha ndles)% hObject han dle to slider_SNR (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% han dlesstructure with
55、han dles and user data (see GUIDATA)% Hin ts: get(hObject,'Value') retur ns positi on of slider%get(hObject,'Mi n') and get(hObject,'Max') to determ ine range of sliderhan dles.SNR=get(hObject,'Value'); %returns positi on of slider guidata(hObject,ha ndles);set(ha ndles.text_SNR,'stri ng',ha ndles.SNR);% - Executes duri ng object creati on, after se
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 新疆乌鲁木齐市第八十七中学2026年中考适应性考试(二)数学试题试卷含解析
- 工程设计与施工质量保证承诺书3篇
- 2026年四川达州新世纪学校初三5月质量检测试题(A卷)语文试题理试题含解析
- 职业培训教育质量保障承诺书5篇
- 2026年工程机械:振动筛筛网张紧与防堵结构设计研究
- 2026年医院搬迁期间医疗服务连续性保障方案
- 2026年手持式分析仪在食品安全快检
- 餐饮服务双语·第二版课件 项目五 点餐服务
- 我敬佩的一个人作文
- 无偿销售协议书范本
- 监测系统技术难题研究报告
- 2026贵州双龙航空港开发投资(集团)有限公司第一批招聘10人笔试参考题库及答案解析
- 广东省广州市2026年普通高中毕业班综合测试(广州一模)英语试题
- 2026年常州纺织服装职业技术学院单招职业倾向性测试题库附参考答案详解(考试直接用)
- 2026河北邢台市数字化城市管理服务中心公开招聘编外工作人员20名笔试备考试题及答案解析
- 水利工程运行维护与故障处理指南
- 初中地理八年级下册《北方地区自然地理特征与农业发展》教学设计
- 《自动检测技术》第二版王化祥课后答案
- (李庆扬)数值分析-绪论
- 护理安全不良事件分析及整改记录表
- 解密人的九种体质课件(PPT 28页)
评论
0/150
提交评论