MATLAB在《信号与系统》课程改革中的应用研究
2013-11-13秦继新
秦继新
(南通大学 电子信息学院,江苏 南通 226000)
0 引言
信号与系统课程是通信工程、电子信息工程、电子科学与技术等专业的基础课,同时也是电信类专业研究生入学考试的一门重要课程。学生通过该课程的学习,熟悉并掌握信号和线性系统的基本理论以及基本分析方法,为后续学习研究通信原理、控制理论、信号处理与信号检测、图像处理等课程打下坚实的基础。因此,学好这门课程对整个专业素质的提高起到关键作用。那么,如何提高该课程的教学质量就显得尤为重要。信号与系统课程的大部分内容都以数学推导为基础,而传统的教学方法又是以板书和电子课件为主,这就造成了课堂内容的枯燥、抽象,学生学习的认知性和积极性都普遍较低。为了帮助学生提高课堂效率并很好的理解信号系统课程里的基本概念、原理及分析方法,同时也考虑到电信类学生学习过MATLAB软件,具备一定的初级编程能力,所以将MATLAB软件引入到信号与系统课程教学中。利用该软件强大的数值计算功能,可以简化书本上繁琐的数学推导过程,让学生把更多的注意力集中在对概念的理解、分析和应用上,从而不断提高教学效果。
1 MATLAB软件的特点在信号系统中的应用
MATLAB是由美国mathworks公司发布的主要面对科学计算、可视化以及交互式程序设计的高科技计算环境。它将数值分析、矩阵计算、科学数据可视化以及非线性动态系统的建模和仿真等诸多强大功能集成在一个易于使用的视窗环境中,为科学研究、工程设计以及必须进行有效数值计算的众多科学领域提供了一种全面的解决方案,并在很大程度上摆脱了传统非交互式程序设计语言(如C、Fortran)的编辑模式,代表了当今国际科学计算软件的先进水平。而信号与系统课程内容主要涉及到信号与系统的基本概念、连续(离散)系统的时域分析、连续(离散)系统的频域分析、系统的Z域分析、系统函数、系统的状态变量分析等。针对以上内容特点,利用MATLAB软件的信号处理工具箱和图形处理数据化等功能,教师可以将复杂的数学推算过程用软件演示计算,并实现可视化的图形,让学生对抽象的概念有了更直观的认识,加强学生的理解能力。同时,学生也可以自己进行课题平台设计,进一步激发他们的学习兴趣,逐步提高利用软件解决分析实际问题的能力。
2 信号与系统仿真实验设计
2.1 针对课程重点、难点的仿真实验设计
“傅里叶变换”是信号与系统课程中的是重点,同时也是学生普遍觉得难以理解的部分,为了让学生更好的理解傅里叶变换的概念,以及利用傅里叶变换解决实际问题,我们以利用Heaviside函数构成矩形脉冲为例,求Fourier变换。本范例主要利用了MATLAB软件的函数调用、simple指令的适当运用、绘图指令的配用等,分为两个步骤进行求解。
1)求 Fourier变换
Syms A t w tao
yt=A*(heaviside(t+tao/2)-heaviside(t-tao/2)); ---------定义矩形脉冲
Yw=fourier(yt,t,w) -----------傅里叶变换
Yw_fy=simplify(Yw) ------------恒等式法简化
Yw_fy_e=simple(Yw_fy)
Yw=
A*((sin((tao*w)/2)+cos((tao*w)/2)*i)/w-(-sin((tao*w)/2)+cos((tao*w)/2)*i/w)
Yw_fy=
(2*A*sin((tao*w)/2))/w
Yw_fy_e=
(2*A*sin((tao*w)/2))/w
2)通过可视化操作得到傅里叶变换频谱
T3=3;
tn=-3:0.1:3;
yt13=subs(yt,{A,tao},{1,t3})
yt13n=subs(yt13,’t’,tn);
kk=find(tn==-t3/2);
plot(tn(kk),yt13n(kk),’.r’,’MarkerSize’,30)
yt13n(kk)=NaN;
plot(tn,yt13n,’-r’,’Linewidth’,3)
2.2 交互式仿真设计
在信号与系统的教学中往往会遇到一些综合设计实例,这需要学生有很强的数学功底和全局观的理解能力,往往有的学生碰到类似问题就望而却步。而通过Simulink可以给学生提供一个动态系统建模、仿真和综合分析的集成环境,这样就跳过了繁琐的数学公式运算,而只需选取适当的库及模块,就可以构造出复杂的仿真模型。
比如传递函数作为《信号与系统》里最重要的知识点之一,往往是考试的重点和难点,用传统的数学方法计算往往比较复杂,而通过Simulink可以达到简化晕死的效果。
图1 多环控制系统
如图1所示的多换控制系统,试求系统传递函数。本例的系统数学模型是通过形象直观的框图和各环节传递函数给出的,因此我们采用Simulink的传递函数模块建模。构造模型的主要步骤有:
1)引出空白模型窗
2)复制典型模块并进行翻转操作
3)整理模块并连接
4)模块参数设置及名称改写
接着进行系统模型的获取
[A,B,C,D]=linmod2(‘exm070102’);
STF=tf(mineral(ss(A,B,C,D)))
[Num,Den]=tfdata(STF);
Num{:},Den{:}
显然,利用Simulink模型,系统函数就很容易求出。
3 结束语
传统的信号与系统教学方法抽象复杂,很难激发同学们的学习兴趣,然而将MATLAB软件应用于信号与系统教学过程中后,通过实验的方法使得原本繁琐的数学计算过程变得形象化,简洁化,同时利用MATLAB软件强大的计算能力和图像处理能力,高效的解决了信号系统教学过程中的重点和难点。实践表明,学生对此方法产生浓厚的兴趣,并能深刻理解教学内容,提高了教学质量。
[1]张利红,陈伯俊.高校信号与系统教学改革探讨[M].中国教育技术装备,2009-12,下(33).
[2]李建华,马晓红,邱天爽.信号与系统课程体系剖析[M].电气电子教学学报,2010-04.
[3]吴大正.信号与系统[M].高等教育出版社.