收稿日期:2006-12-27
作者简介:庞建丽(1980~ ),男,河南西平人,黄淮学院信息工程系助教.
基于MATLAB 的信号系统仿真
庞建丽1,高丽娜2,赵 领1
(1.黄淮学院,河南 驻马店 463000;2.徐州师范大学,江苏 徐州 221009)
摘 要:在信号分析中,复杂周期信号可用一定的数学工具将其展开为一系列的谐波信号;反过来,一系列的谐波信号也可合成得到相应的周期信号.用MA TLAB 编程实现信号合成的仿真,其吉布斯现象的效果相当明显,进而介绍了一种数字低通滤波器的设计. 关键词:吉布斯现象;MA TLAB ;低通滤波器 MA TLAB 是一套高性能的数值计算和可视化的科技应用软件.它集高效的数值分析、完备的信号和图形处理、功能丰富的应用工具箱为一体,构成了一个方便且界面友好的用户环境,是一种适应多种硬件平台的数学计算工具.它的出现给“信号与系统”课程的计算机辅助教学带来了福音.特别它的信号处理软件包,可以方便地进行信号与系统分析的数值计算,可视化建模,系统设计和仿真调试等.
滤波器的设计是信号处理最重要的内容之一,MA TLAB 具有强大的滤波器设计功能,通过应用于滤波器的设计教学可以让学生更容易、更深刻地理解滤波器的设计. 1 吉布斯现象及其MATLAB 仿真
当从信号的傅立叶变换恢复或逼近原信号时,如果原信号包含有间断点,那么,在各间断点处将出现过冲即尖峰,这种现象称为吉布斯现象.我们研究如图1所示的周期矩形脉冲的傅立叶级数形式,并观察了其出现的吉布斯现象.根据图1可计算出周期矩形脉冲的傅立叶级数的三角形式是:
(1)/2k 112π()π[(1)1]()2π2k x t k t t k ∞
−=⎧⎫
=
++−−−∞<<+∞⎨⎬⎩⎭∑, 给定正奇数N ,设x N (t)是有限项和,则
(1)/2N 112π()π[(1)1]()2π2N k k x t k t t k −=⎧⎫
=++−−−∞<<∞⎨⎬⎩⎭
∑,
当N 趋近于∞时,x N (t )趋近于x (t ),我们只要使得N 值
足够大,x N (t )应近似等于x (t ),情况到底是什么样的呢?我们用MA TLAB 仿真的结果来看一下.这里仅以N = 49的时候的代码如下:
syms t
f 1 = sym('heaviside(t + 0.5) − heaviside(t − 0.5)'); f 2 = subs(f 1,t,t + 2); f 3 = subs(f 1,t,t − 2); s = f 1 + f 2 + f 3; ezplot(s,[-3,3]); hold on ;
t = −3 : 6/1000 : 3; N = 49;
c 0 = 0.5;w 0 = p i ;x n = c 0*ones(1,length(t)); for k = 1 : 2 : N
theta = ((-1)^((k-1)/2) −1)*p i /2; x n = x n + 2/k/p i *cos(k*w 0*t + theta); end plot(t,x n ) xlabel('t'); ylabel('x 49(t)')
图1 周期矩形脉冲信号
我们观察图2发现,随着N 的增大,x N (t )的波形越来越
接近于x (t ),但是在脉冲拐角处有过冲出现,经过计算,大约有9%的过冲.事实上,当N 趋近于∞时,过冲也存在.根据吉布斯现象得到的结论是,在x (t )不连续处,x (t )的傅立叶级数在任何一点上都不等于x (t ),如果x (t )在t = t 1处不连续,那么其傅立叶级数在t 1−和t 1+处都大约偏离9%.
通过上面的分析我们得到如下结论:① 当用有限项之和重现原信号(复杂周期信号)波形时,随着N 的增大,合成的结果越接近原波形.② 当N 增大时,跳变峰向间断点靠近,但跳变峰幅值并未明显减小,跳变峰所包围的面积减
中图分类号:TP391.9
文献标识码:B
文章编号:1006-5261(2007)05-0038-02
小,通过MA TLAB使这种吉布斯现象得到清楚的表现.③信号中频率较低的谐波的幅值大,占主体地位,频率较高的高次谐波的幅值较小,信号波形中所含的高次谐波越多,波形的边缘越陡峭.随着N的增大,吉布斯现象越突出.
图2 不同N值下x N(t)的波形
2低通滤波器的MATLAB设计程序
我们设计了一个截止频率为200 Hz,抽样频率为1000 Hz的8阶巴特沃斯数字低通滤波器.该滤波器的MA TLAB设计程序如下:
clear;
F s = 1000;N = 8;
W n = 200/(F s/2);
[b,a] = butter(N,W n);
[h,w] = freqz(b,a);
subplot(211);
plot(w,abs(h));
xlabel('频率');
ylabel('幅度');
title('N = 8时的幅频响应');
N1=20;
[b1,a1] = butter(N1,W n);
[h1,w1] = freqz(b1,a1);
subplot(212);
plot(w1,abs(h1));
xlabel('频率');
ylabel('幅度');
title('N = 20时的幅频响应')
滤波器幅频响应如图3所示.为方便观察,我们同时比较了8阶和20阶巴特沃斯数字低通滤波器的幅频响应特性.在理论计算上我们需要说明的是两者的差异,两者的差异可以给我们非常直观而深刻的印象,从而可得出结论:阶数高的滤波器滤波性能更好.
图3 8阶和20阶巴特沃斯数字低通滤波器幅频响应
3结束语
对于吉布斯现象和一些滤波器的特性,如果仅从理论推导结论来看,它总是抽象的结果,学生不能直观地看到自己设计的系统.随着计算机技术的发展和一些高品质软件(如MA TLAB等)的出现,了以前传统的教学模式,使在实验环境中依靠计算机软件辅助计算实现系统的可视化和仿真调试成为可能,这是一种值得推广的模式.
参考文献:
[1] Edward W Kamen,Bonnie S Heck.应用Web和MA TLAB
的信号与系统基础[M].高强,戚银城,杨志,等译.北京:电子工业出版社,2002.130~132.
[2] 郑君里.信号与系统[M].北京:高等教育出版社.
100~105.
[3] 吴新余.信号与系统—时域\\频域分析及MA TLAB软件
的应用[M].北京:电子工业出版社,1999.71~77.[4] 王沫然.MA TLAB与科学计算[M].北京:电子工业出
版社,2003.98~102.
[5] 梁虹,梁洁,陈跃斌,等.信号与系统分析及MA TLAB
实现[M].北京:电子工业出版社,2002.165~169.
〔责任编辑 牛建兵〕
N = 3 N = 21 N = 49