APP下载

基于DSP5509A的自适应系统识别的实现

2012-11-05傅仁壮李善姬

电子测试 2012年9期
关键词:框图权值滤波器

傅仁壮, 李善姬

(延边大学工学院,吉林延吉 133002)

0 引言

自适应滤波是在维纳滤波等线性滤波基础上发展起来的一种最佳滤波方法[1]。这种滤波器是根据前一时刻已知的滤波器参数,自动地调节下一时刻的参数,使得误差信号达到最小值,最终实现最优滤波。由于自适应滤波器适合时变信号的处理[2],因而自适应滤波技术在通信领域中应用相当广泛。尤其是在系统识别等多个领域得到更广泛的应用。系统识别就是应用自适应滤波器模拟一个处理过程的方法。在很多应用场合,采集数据的同时要对模型进行识别,每当提供一个新的数据,就会马上更新模型,更新的过程就是靠自适应算法来完成的。

本文利用一个FIR滤波器作为待识别的未知系统,再应用DSPTMS320VC5509A芯片实现自适应系统识别,真正意义上达到信号处理的高精度和高效性。

1 自适应滤波器原理

自适应滤波器由滤波器和自适应算法2部分组成。其原理框图如图1所示。

图1 自适应滤波器原理框图

图1 中,u(n)为滤波器的输入信号,y(n)为输入信号经过数字滤波器产生的输出信号,d(n)为滤波器的期望信号,通过d(n)与y(n)的比较可以得到滤波器的估计误差信号e(n)。误差信号e(n)和u(n)通过自适应算法来调节滤波器的权值系数,根据LMS或RLS等算法准则判断e(n)是否已经达到极小值。若没达到极小值则重复以上过程,调节滤波器的权值系数,最终使信号误差最小,即为最佳的滤波效果。

自适应滤波器的结构一般有FIR或IIR两种[3],由于IIR滤波器稳定性不如FIR滤波器,因此本文中的自适应滤波器结构采用了FIR横向滤波器结构。

其中T表示矩阵转置运算符,时间序列为n,用M表示滤波器的阶数。

2 LMS算法

传统LMS算法是基于最小均方误差准则(MMSE)的维纳滤波器和最陡下降法提出的[4]。LMS算法基本思路是:假设已知期望信号d(n)和原始信号相关,先对FIR数字滤波器的权值设定一组任意初始值;然后根据期望信号和滤波器的输出值之间的误差e(n)对权值进行调 节,使下一次的误差e(n)减少;重复上述过程,直到误差信号最小。

假设期望信号d(n)和输入信号u(n)是联合各态历经的平稳过程,我们就可以利用有限观测样本值的时间平均逐渐逼近统计平均,即:

式(13)中maxλ是 自相关矩阵R的最大特征值。

3 自适应系统识别原理

自适应识别主要由自适应滤波器和未知系统构成[5]。它是通过自适应滤波器模拟一个处理过程的重要方法。如果在一个信号处理系统中,只知道系统的输入和输出,并不知道它的内部具体结构,可以把整个系统结构看成是一个“黑匣子”系统。自适应系统识别的主要目的就是通过对系统输入信号和输出信号进行分析和测试,求出系统函数或冲激响应。自适应系统识别原理框图如图2所示。

图2 自适应系统识别原理框图

图2 中,G(z)是需要识别的未知系统,W(z)是FIR数字滤波器,用来模拟G(z)。白噪声信号u(n)分别去激励数字模型W(z)和未知系统G(z),会得到相应的输出信号y(n)和d(n),通过LMS算法调整数字模型W(z)从而减小y(n)和d(n)之间的误差。不断的调整滤波器系数直到误差信号达到最小,即自适应滤波器收敛。此时,滤波器的系数就能完整地把未知系统描述出来。

4 自适应系统识别的DSP实现

为了提高自适应系统识别的处理速度和精确度,采用TI 公司的TMS320VC5509A芯片实现,该处理器采用程序与数据分开的哈佛体系结构[6-8],具有高度的并行性。

在实际工程应用中需要识别的系统都是未知的,为了覆盖未知系统的所有零点和极点,输入信号u(n)的频谱应该宽广,一般情况采用线性调频脉冲信号或者是白噪声信号。在本次实验中,采用rand( )函数构建一个零均值随机噪声发生器,用来产生自适应滤波器和未知系统所需要的测试数据。rand( )函数能产生一个0到32 767的16位有符号整数,再把得到的数值减去0x4000就可以得到一个从-16384到16383数值的零均值伪随机序列。具体的C语言程序代码如下:

# include <math.h>

# define unsigned int uint

# pragma CODE_SECTION (rhs,”sj_dm”);

void rhs (int *x , uint S)

{

uint i;

for (i =S; i>0;i++)

*x++ =rand( ) -0x4000;

}

自适应系统识别的程序流程图,如图3所示。

图3 自适应系统识别程序流程图

采用C语言编程后,把调试好的程序下载到TMS320VC5509A片内存储器,再在view菜单选项下设置相应的参数,用来显示未知系统和识别系统的波形以及频谱。通过对以下4图对比可以知道,自适应LMS算法收敛以后,自适应系统识别模型和未知系统的频域响应和冲激响应高度一致,未知系统的特征可以由自适应系统识别模型精确地描述出来,真正意义上实现了自适应系统对未知系统的高精度识别。

图4 未知系统传递函数时域波形

图5 未知系统传递函数频谱

图6 自适应系统识别未知系统的时域波形

图7 自适应系统识别未知系统的频谱

5 结束语

在信号处理领域,自适应系统识别的方法是非常重要的。本文在论述LMS算法的自适应滤波器原理和自适应系统识别原理的基础上,采用rand( )函数构造一个随机白噪声信号发生器, 使输入信号u(n)具有宽广频谱,从而覆盖未知系统的所有零点和极点,并且用来产生自适应滤波器和未知系统所需要的测试数据。最后利用TI公司的DSP TMS320VC5509A芯片实现了自适应系统识别。通过实验可以得出,利用该方法对未知系统的识别可以真正意义上达到信号处理的高精度和高效性。

[1] 张婷瑞,李善姬,丁景龙.基于LabVIEW和MATLAB混合编程的自适应滤波器设计[J].电子测试, 2009(1):40-43.

[2] 余荣.自适应滤波器在噪声消除中的应用与研究[D].南昌:南昌航空大学,2008:4-38.

[3] 王丽芳,陈益平.基于DSP的自适应滤波器的实现[J].计算机仿真,2009,26(9):281-284.

[4] 王秀芳,刘凯,马赛.基于改进LMS算法的自适应滤波器[J].大庆石油学院学报,2009,33(6):94-97.

[5] 吴宵,叶水生,黄珍.基于自适应滤波器的系统识别研究 与实现[J].微计算机信息,2007,23(2-1):275-277.

[6] 冯炳枢,罗飞,许玉各,等.基于LMS 算法自适应滤波器信息采集系统设计[J].计算机工程,2009,35(3):266-272.

[7] Song W C,Lin F.DSP-based communication for monitoring and control in variable frequency drives [J].Power Systems and Communications for the future,2005(9):61-64.

[8] 陈书林,柳媛慧.P2P网络中基于节点能力自适应的搜索算法[J].湖南科技大学学报:自然科学版,2009,24(2):61-65.

猜你喜欢

框图权值滤波器
一种融合时间权值和用户行为序列的电影推荐模型
CONTENTS
捷豹I-PACE纯电动汽车高压蓄电池充电系统(三)
从滤波器理解卷积
开关电源EMI滤波器的应用方法探讨
电路图2017年凯迪拉克XT5
算法框图的补全
基于权值动量的RBM加速学习算法研究
基于多维度特征权值动态更新的用户推荐模型研究
基于Canny振荡抑制准则的改进匹配滤波器