APP下载

数字信号处理课程Matlab辅助教学方法探索

2013-08-17韩建峰宋丽丽

中国现代教育装备 2013年9期
关键词:信号处理滤波器滤波

韩建峰 宋丽丽

内蒙古工业大学信息工程学院 内蒙古呼和浩特 010080

随着信息技术的飞速发展,数字信号处理的应用日益广泛,对该课程教学的要求也不断提高。我校数字信号处理是为电子信息工程和通信工程专业本科生开设的学科基础课。对这两个专业而言,数字信号处理是承前启后的重要课程。课程组不断吸取国内外高校的先进经验,结合我校实际情况,在课程体系与教学内容改革、完善教学资源、双语教学等方面进行了探索和实践。近年来,将Matlab应用软件融合到课程中,对课堂教学、平时作业及实验等环节带来极大的灵活性和便利性,取得了较明显效果。

1 数字信号处理课程的教学组织及教学方法

为本科生开设的数字信号处理课程,传统上偏重于经典算法理论及其推导,较少涉及实现方法。课程教学内容主要是数字系统对数字信号进行分析、处理的基本原理和基本方法,包含了大量时域、变换域的经典数学分析方法和对系统求解的数学运算,理论性很强。按照传统的课程内容设计,学生易于“纸上谈兵”,即只会用纸笔解题,而不会应用所学理论解决实际问题,与信息产业的发展需求和工程实际相距甚远。目前对此有两条改革的途径[1],一是使用Matlab等软件,为数字信号处理算法实现提供仿真环境;二是引入工程界广泛采用的DSP(数字信号处理器)器件,指导学生在硬件平台上实现数字信号处理算法。

根据不同的教学内容,选择适当的教学方法。对于一般概念和原理,以讲授法为主,采用形象化的方法[2],强调数学公式代表的物理意义,淡化数学计算,辅助以实例或演示,注重其在Matlab仿真中的应用,以作图、音频输出等形式具体展示处理效果;对较为抽象、不易理解的问题采用讨论法,如混叠现象等,提出问题引发学生思考、参与讨论,并加以总结;利用探究式教学法,提出综合性问题及设计型Matlab实验,促使学生发挥主观能动性,不断自我总结各部分教学内容的联系,逐步建立起系统的知识结构,培养学生综合运用知识的能力和创新精神。

2 Matlab应用软件与课程的融合

Matlab是当今国际上科技领域内最具影响力、最有活力的软件之一。它起源于矩阵运算,并已经发展成一种高度集成的计算机语言。它提供了强大的科学运算、灵活的程序设计流程、高质量的图形可视化与界面设计、便捷地与其他程序和语言接口等功能,被广泛应用于数值和符号计算、工程与科学绘图、控制系统的设计与仿真、数字图形处理、数字信号处理、通信系统设计与仿真等领域[3]。其易学易懂,编程效率高,更为重要的是Matlab对许多专门的领域开发了工具箱,在信号处理工具箱中,很多常用算法有对应的函数,如FFT函数实现用于频谱分析的快速傅立叶变换,FIR函数则可实现FIR数字滤波器的设计等[4]。

数字信号处理课程的内容较多,概念比较抽象,学生对有些内容不易理解。课程组将Matlab软件仿真引入数字信号处理课程,把经典的分析、处理方法用计算机实现,理论联系实际,使学生掌握初步的实际信号分析与处理方法,具备基本的基于计算机的数字信号处理应用能力。

在每章学习完后布置软件编程作业,利用Matlab强大的信号处理功能,在计算机上做习题,这样可以简洁、快速、直观、准确地理解数字信号处理的基本理论,以及用来探索和解决习题中不好理解的内容,提高学习效果[5]。

3 基于Matlab的数字信号处理教学举例

数字信号处理是一门理论性和实践性都很强的课程,课程目标强调培养学生的应用能力。课程组开发了多个Matlab实验,内容由浅入深,涵盖了课程内容中涉及的基本原理和常用算法,包括实用性较强的验证型实验和综合性强、有趣味性的设计型实验,采用学生课下自主完成、课堂集中讲解的方法,以作业形式布置给学生。在课程考核中也包含了应用Matlab的实验内容,约占总成绩的20%。另外,课程组还设计了一些难度较高的选做实验,供有兴趣且学有余力的学生在课下以小组的形式学习、钻研和交流,任课教师定期予以辅导。

实例一:抽样

在讲解信号抽样、序列的概念时,采样率对信号序列及信号重构的影响,通过Matlab演示更直观,更易于理解。

如编写一段Matlab代码做产生满足以下要求的正弦序列信号频率为1 kHz,幅度为2,初始相位为0.25 π。持续时间为10 ms;采样率为分别1 kHz,10 kHz和20 kHz绘制序列的STEM图。

学生虽然学习了采样和重构的概念,理论上知道采样率越大采样间隔越小,满足采样定理信号可重构,但对哪些采样序列可以重构,哪些序列不可以重构却没有更直观的认知。

在Matlab中编程,采样率分别是1 kHz,10 kHz和20 kHz的采样序列,所得图形如图1所示;很清楚地看到,采样率是1 kHz时每个周期只有一个采样点,不可能重构原信号。

图1 不同采样率下的采样序列

通过这种图形比较的方式,学生对采样和重构以及采样定理等概念都有很深刻的理解与掌握。

实例二:滤波

在我们讲授完N点平均滤波器的时候,编写Matlab程序,很直观地看到了滤波的效果。

图2所示为11点平均滤波的效果图,很清楚地看到左图中x经11点滤波后成为右图中y的效果。y信号与s信号比较,即滤波后的信号与纯信号相比除有一定的时移外基本一致。

图2 滤波前后比较

学生只需修改程序中的M值,就可以很容易地得到不同系数滤波器的滤波效果。对于这样的练习,学生很感兴趣,会主动尝试,比做一般作业时的被动完成效果要好。

实例三:频率响应

其理论推导繁琐且不易理解,在Matlab中更简单直观。

在学习了离散信号和系统的频域分析后,利用Matlab软件,通过简单的程序代码,很容易得到系统的幅频和相频特性(如图3所示)。

图3 幅频特性和相频特性

实例四:用FIR数字滤波器处理语音信号

在讲授数字滤波器的设计时,选择不同的窗函数、窗口长度和截止频率设计出不同的FIR滤波器,并显示滤波器的幅频和相频特性等。学生通过这种练习,能较深刻理解序列傅里叶变换的频域特性。

对一段语音信号,设计FIR数字高通滤波器进行滤波,对比滤波前后的信号变化,并对发生的变化进行分析。为了减少抽样信号的失真,选取抽样频率fs=44100 Hz,归一化截止频率为1/10,用窗口长度为400的汉宁窗设计高通滤波器并进行滤波。

从图4中可以看到,在大于截止频率的频段上,几乎看不到下降,在通带内相频特性为直线,表明该滤波器为线性相位。图5给出了滤波器的输入信号和输出信号,通过图形可以发现,输入信号经过高通滤波后,滤掉了一部分低频信号,输出信号证明了这一点。由于输入信号的一部分低频分量被高通滤波器衰减,所以分别播放滤波前后的两段语音,会感觉到处理后的语音变得比以前尖锐了。

图4 滤波器的幅频和相频响应

图5 滤波前后信号数据的比较

这种综合型实验将枯燥的数学公式、单调的推导过程和难以理解的算法通过演示形式展现出来,使学生对学习内容有一个直观认识,激发了学生的学习兴趣,学生通过自己录制、采集语音信号完成实验,增加了对抽象概念的理解,提高了学生的学习积极性和主动性。

4 结束语

将Matlab应用到数字信号处理课程的教学中,利用Matlab进行计算机仿真,起到了丰富教学手段、提高教学效果的作用,可以让学生直观地理解和领会教材中抽象的内容,数字信号处理课由以前的枯燥、难懂变得有趣、易解了。这种实践教学设计提高了学生的学习兴趣,有利于学生实践能力和专业素质的培养。

[1]教育部高等学校电子信息科学与工程类专业教学指导分委员会.高等学校电子信息科学与工程类本科指导性专业规范(试行)[M].北京:高等教育出版社,2010.

[2]谷亚林,徐天成,宋耀良.数字信号处理中IIR数字滤波器设计的教法研究[J].理工高教研究,2003,22(4):124-126.

[3]王艳芬,王刚,张晓光.数字信号处理精品课程建设探索[J].电气电子教学学报,2011,33(2):22-24.

[4]高远.基于Matlab的《数字信号处理》课程的教学改革实践[J].高教论坛,2007(4):141-143.

[5]李强,明艳,吴坤君.基于Matlab的《数字信号处理》辅助教学方法[J].重庆邮电大学学报:自然科学版,2007(B06):89-91.

猜你喜欢

信号处理滤波器滤波
专题征稿启事
——信号处理
MATLAB在数字信号处理中的应用
基于MATLAB的语音信号处理
从滤波器理解卷积
基于EKF滤波的UWB无人机室内定位研究
开关电源EMI滤波器的应用方法探讨
一种微带交指滤波器的仿真
一种激光/无线电复合引信信号处理技术
一种GMPHD滤波改进算法及仿真研究
基于TMS320C6678的SAR方位向预滤波器的并行实现