APP下载

数字信号处理教学辅助软件设计与实现

2017-07-12潘伟

软件导刊 2017年6期
关键词:数字信号处理

摘要:针对数字信号处理课程理论性强、概念抽象、不易理解的特点,设计了一种数字信号处理教学辅助软件,对本科阶段数字信号处理课程的重要内容用MATLAB进行了模拟仿真,形象展示信号处理和变换过程。使用该软件进行教学,可提高教学效果。

关键词:数字信号处理;教学辅助软件;MATLAB

DOIDOI:10.11907/rjdk.171247

中图分类号:TP319

文献标识码:A 文章编号:1672-7800(2017)006-0077-04

0 引言

数字信号处理技术在无线电通信、数字电视和媒体、生物医学、数字音频和仪器等领域应用非常广泛。数字信号处理知识在电子信息工程及相近信息类专业人才知识构成中占有相当重要的分量。数字信号处理是电子信息工程专业重要的专业课程,该课程理论性强,概念抽象,不易理解,教学内容量大,前后知识联系紧密,普遍存在教师不易教、学生学习难的问题。

MATLAB是一款功能强大、效率高、交互性好的数值计算和可视化高级语言,它将数值分析、矩阵运算、信号处理和图形显示有机融合为一体,形成一个用户界面友好、操作方便的环境[1]。MATLAB软件在信号处理方面的应用主要是数值计算和仿真分析,包括函数波形绘制、函数运算、信号时域分析、信号频谱分析等,可帮助学生更深入理解数字信号处理理论知识。本文将MATLAB强大的数值分析和数据可视化功能运用于数字信号处理基本原理和方法展示,开发了一套数字信号处理课程教学辅助软件,进行多媒体教学。

1 系统总体设计

系统包括序列、信号变换和滤波器3大板块20余项功能,如图1所示。

序列板块包括单位脉冲序列、阶跃序列、矩形序列、实指数序列、复指数序列和正弦序列的产生和展示,序列运算、时域采样过程和采样恢复过程演示。

序列變换指序列的几种重要变换,如DTFT、Z变换、DFT和Chirp-Z的变换过程及相关特性展示。

数字滤波器设计是数字信号处理课程的重点内容,序列变换研究的最终目的就是要设计滤波器。本科阶段主要学习选频滤波器,包括高通滤波器、低通滤波器、带通滤波器和带阻滤波器。从单位脉冲特点来看,分为无限长脉冲响应滤波器(IIR,Infinite Impulse Response)和有限长脉冲响应滤波器(FIR,Finite Impulse Response)两种。在对滤波器没有线性相位要求时,通常设计为IIR滤波器。IIR数字滤波器通常运用脉冲响应不变法或双线性变换法进行数字域和模拟域的频率和系统函数变换,然后借助模拟滤波器的设计方法辅助设计。当要求线性相位时,通常采用FIR滤波器。每种滤波器有多种不同的设计方法,按模拟滤波器、IIR滤波器和FIR滤波器3个子板块进行展示。

系统采用演示版和实验版双版本设计,如图2所示。演示版对3大功能板块中的各项内容进行演示,适合在课程教学过程中使用。实验版不仅包括各项内容的展示,还可完成一些基本的课程实验。

2 系统实现

MATLAB提供的图形用户接口(Graphical User Interface Development,GUI)具有强大的图形界面开发功能。本系统借助MATLAB的GUI环境,设计符合用户使用习惯的外观,便于交互式使用。本文选取序列及其运算、时域采样、频域采样和序列变换等几个具有代表性的功能模块来展示系统的实现方法和效果。

2.1 序列及其运算

序列及其运算是数字信号处理最基础的内容,基本序列模块图形展示采样序列δ(n)、矩形序列R(n)、实指数序列anu(n)、单位阶跃序列u(n)、正弦序列sin(wn)和复指数序列Ae-jwn等几种常见序列。为便于操作和比较,安排在同一界面展示几种不同序列,通过点击不同按钮进行切换;为了提高界面友好性,系统提供了图形控制展台供用户调整图形外观。序列运算模块实现了加法、乘法、翻转和卷积等序列运算。图3是常见序列展示程序界面,图4展示了序列基本运算。本部分实现代码简单,下面是展示序列的卷积运算部分核心代码:

2.2 时域采样模块实现

通信系统分为模拟通信系统和数字通信系统。如果在发送端的信息源中包括一个模/数转换装置,在接收端包含一个数/模转换装置,就可以在数字系统中传输模拟信号。模/数转换的主要任务是对模拟信号作离散化处理,将时间上连续的信号处理成时间上离散的信号,这一过程称为时域抽样,如图4所示。

时域抽样过程展示:

(1)形象展示奈奎斯特抽样定理的基本原理。根据奈奎斯特抽样定理,理想采样信号的频谱是原模拟信号频谱的周期延拓,延拓周期与采样频率成正比。理论上,当采样频率fs ≥ 2fH时(fH 是模拟信号的最高频率),可以由采样信号无失真地恢复出原模拟信号。 分fs<2fH、fs=2fH和fs > 2fH三种情况展示抽样定理基本原理,如图4(a)所示。

(2)展示对任意模拟信息进行时域抽样和抽样恢复的实际情况,如图4(b)所示。为使信号具有一般性,通过两个正弦信号来合成抽样信号,以图形的方式展示模拟信号的幅度、抽样后生成的时域离散信号以及恢复得到的模拟信号。抽样频率可以任意调整,以展示不同情况下的抽样和恢复情况。

2.3 序列变换实现

信号的分析方法包括时域分析方法和频域分析方法两种。在时域离散信号和系统中,信号序列用差分方程描述。在频域,则用序列的傅里叶变换(DTFT)、离散傅里叶变换(DFT)、离散傅里叶级数(DFS)和Z变换表示。这里以DTFT和DFT为例展示其实现方法,图5(a)展示了DTF,图5(b)展示了DFT。

模拟系统可用单位冲激相应h(t)来表征,数字系统则用单位脉冲相应h(n)来表征。模拟系统的系统函数为单位冲激相应h(t)的拉普拉斯变换H(s),而数字系统的系统函数则是其单位脉冲相应h(n)的Z变换H(z),理论上h(n)可通过对h(t)进行抽样得到。因此,研究模拟系统与数字系统的关系可以转化为研究拉普拉斯变换与Z变化的关系,也就是研究S平面和Z平面之间的映射关系。

复变量S平面到复变量Z平面的映射关系包括点映射、线映射和面映射3种。其中,点映射包括3种情况:①S平面虚轴上的点映射到Z平面为单位圆上的点;②S左半平面的点映射到Z平面为单位圆内部的一个点;③S右半平面的点映射到Z平面单位圆外部的一个点。线映射包括两种情况:①S平面平行与纵轴的任意一条直线映射到Z平面为一个以原点为圆心的圆;②S平面平行与横轴的一条直线映射到Z平面为一条以原点为起点的辐射线。面映射指S平面上宽度为2π/T的水平带映射到整个Z平面。图6展示了Z平面和S平面的映射关系。为方便处理,用极坐标表示Z平面,用直角坐标表示S平面。

2.4 频域采样展示

时域采样会造成频域的周期延拓,但只要采样频率足够高(fs≥2fH),就可以避免频谱各延拓分量的相互混叠,理论上能够由采样信号无失真地恢复到原模拟信号。与时域采样类似,频率采样会造成时域序列的周期延拓,但只要频域采样的点数足够多(M≥N),也能够保证各延拓分量不相互混叠,从而由采样信号无失真地恢复原序列。频域采样定理如图7所示。

3 结语

针对数字信号处理课程理论性强、不易理解的特点,本文用MATLAB设计并开发了数字信号处理教学辅助软件。对该软件的总体功能结构进行了介绍,展示了软件的主要功能模块。在课堂教学中将软件与多媒体幻灯片有机结合,可改善教学效果,提高教学效率。

参考文献:

[1]薛年喜.MATLAB在数字信号处理中的应用[M].北京:清华大学出版社,2003.

[2]楼顺天,李博苗.基于M记曲的系统分析与设计[M].西安:西安电子科技大学出版社,1998.

[3]丁玉美,高西全.数字信号处理教程[M].西安:西安电子科技大学出版社,2005.

[4]刘顺兰,吴杰.数字信号处理[M].西安:西安电子科技大学出版社,2003.

[5]潘伟.MATLAB在数字信号处理辅助教学中应用[J].绵阳师范学院学报,2010(2):99-103.

(责任编辑:杜能钢)

猜你喜欢

数字信号处理
电子信息工程专业数字信号处理课程改革与研究
数字信号处理课程教学探索