微波EDA网,见证研发工程师的成长!
首页 > 通信和网络 > 通信网络技术文库 > 一种新的基于改进的ADALINE神经网络的DTMF解码器方案

一种新的基于改进的ADALINE神经网络的DTMF解码器方案

时间:11-24 来源:互联网 点击:
四、基于改进的ADALINE神经网络的DTMF解码仿真结果

为了验证上述基于改进的ADALINE神经网络的DTMF检测算法,我们在MATLAB上使用Neural Networks Toolbox进行了仿真。

仿真条件和参数选择:模拟实际信道中常见的高斯白噪声情况,待检测输入信号x(n)是DTMF信号和信道噪声的叠加,输入信噪比SNR是-3dB。为了讨论方便,假定每个DTMF分量的幅度是+/-2V(只要进行比例缩放就可以适用实际情况),两个分量信号幅度之和为+/-4V,并假定ADC接口之前的预处理电路的限幅电平是+/-5V,即两个有用信号幅度之和占限幅电平的80%。改进的ADALINE神经网络单元选择含有2个权系数和1个偏置值,采用LMS算法,学习速度 选0.02。待检测信号SNR=-3dB,采样频率为8KHz,采样时间20ms。非线性环节的门限threshold选定为1.0V。

仿真结果如下:以"*"键为例,DTMF信号为941Hz/1209Hz。图5上图为纯DTMF信号和高斯白噪声信号,下图为二者的叠加信号,即待检测信号x(n)。



图5


图6为对应941Hz的神经网络单元的输出,上图为中间信号a(n),下图为网络输出信号y(n)。从图中可以看出,网络很快就能捕捉到输入中的941Hz信号,输出信号很强并且从12ms开始就基本稳定。因此系统判断为输入信号中含有941Hz的信号。对应1209Hz的神经网络单元也类似。



图7为对应1336Hz的神经网络单元的输出,上图为中间信号a(n),下图为网络输出信号y(n)。从图中可以看出,网络输出信号一直很弱并且也基本稳定。因此系统判断为无法捕捉到1336Hz信号,即输入信号中不含有1336Hz的信号。另外5个神经网络单元也类似。


   



图7


图6和图7中红色虚线表示非线性环节的门限。由此可以看出,系统判断出输入信号中含有941Hz/1209Hz的信号,不含697/770/852/1336/1477/1633Hz信号,从而实现"*"键号码的正确解码。

当输入DTMF信号为其他频率组合时的情况与上述结果类似,都能正确解码。其他仿真结果表明它在信噪比为-3dB以下仍能准确检测。

五、工程应用方案设计

采用上述基于改进的ADALINE神经网络的DTMF检测算法,在TMS320C5402 DSP和TLV320AIC10 AIC上实现DTMF信号检测器硬件结构如图8所示。

TMS320C5402是一款性价比很高的16位定点DSP,采用改进的哈佛结构,速度达100MIPS,并具有丰富的片上外设资源,非常适合于语音信号处理,有线或无线通信等通信类应用场合。TLV320AIC10是一款模拟接口芯片(AIC) [10],具有一对采用Sigma-Delta调制技术的16位采样频率达22KHz的ADC/DAC,还内含相关的滤波与增益控制等电路。TLV320AIC10能与TMS320C5402实现无缝接口,配合使用。

需要说明的是:DTMF解码功能通常只是由DSP与AIC组成的通信处理系统的一部分。TMS320C5402强大的处理能力与DSP/AIC丰富的片上资源再配以外围电路足以实现系统所需的其他功能。本文只谈及DTMF解码功能。

TLV320AIC10设置为采样频率8KHz,Master模式,帧同步为Pulse模式。如图8所示,来自电话线的信号经过接口预处理电路后送入AIC的ADC进行模数转换,然后通过McBSP串口与TMS320C5402通信,把采样数据送入DSP,同时进行A律扩展,以备后续处理。



图8


对每个样点逐个计算8个神经网络单元的输出值并按照LMS算法更新网络参数,然后等待下一个新样点的到来。经过20ms周期即180个样点处理,可以得到8个网络单元的输出幅值,它定义为从12ms到20ms之间的输出值平均。

当8个网络单元的输出幅值计算出来后,还要进行DTMF有效性检验,以判定是否为有效的DTMF信号。有效性检验包括以下几项内容:(1)高、低频段的最大幅值都必须大于某个门限值,而且二者之和也要大于某个门限值。(2)高、低频段的最大幅值与各自频段其它三个幅值相比,其差值必须大于某个门限值。(3)逆向绞度检验即低频段最大幅值不得超过高频段最大幅值8dB,标准绞度检验即高频段最大幅值不得超过低频段最大幅值4dB。(4)高、低频段最大幅值之和与其它6个幅值之和之比,必须大于某个门限值。

若上述检验通过,判定当前周期DTMF信号有效,根据频率组合可确定是对应哪个号码。但要确认接收到一个有效的号码,还要满足两个条件,一是要有两个以上连续周期的有效且相同的DTMF信号,以保证信号持续时间,二是前面有足够的静音时间,以避免重复识别。由于每个周期是20ms信号,可以保证一位号码能接收到两个完整的DTMF信号周期。程序流程图如图9所示。



图9


六、结语

传统DTMF信号的解码方法有两种:滤波器组法和Goertzel/DFT算法。针对传统DTMF信号检测方法抗干扰能力不足的问题,本文提出了一种新的基于改进的ADALINE神经网络的DTMF信号检测算法,并介绍了在TMS320C5402 DSP和TLV320AIC10 AIC上采用此算法的DTMF信号检测器工程应用方案设计。仿真结果和实际工程实验均表明它比传统方法具有更强的抗干扰能力,该方案具有一定的实用和参考价值。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top