MATLAB辅助现代工程数字信号处理 第二版 作者 李益华 第15章 第1章.ppt
《MATLAB辅助现代工程数字信号处理 第二版 作者 李益华 第15章 第1章.ppt》由会员分享,可在线阅读,更多相关《MATLAB辅助现代工程数字信号处理 第二版 作者 李益华 第15章 第1章.ppt(108页珍藏版)》请在三一办公上搜索。
1、第1章 数字信号处理与离散时间系统,1.1 数字信号处理概述1.2 信号与系统1.3 离散时间信号1.4 离散时间系统1.5 小结,在线教务辅导网:http:/,教材其余课件及动画素材请查阅在线教务辅导网,QQ:349134187 或者直接输入下面地址:,http:/,1.1 数字信号处理概述目前,以DSP芯片为核心的数字信号处理开发设备已广泛应用于工程技术领域。所涉及的信号包括电、磁、机械、热、声、光等各个方面。随着大规模集成电路和数字计算机的飞速发展,以及数字信号处理理论和技术的成熟与完善,数字信号处理已成为一门极其重要的学科。,1.1.1 数字信号处理的理论基础在较强背景噪声下,如何提取
2、出真正的信号或信号特征,并将其应用于实际工程是信号处理理论要完成的主要任务。数字信号处理在理论上所涉及的范围极广。数学领域中的微积分、概率统计、随机过程、高等代数、数值分析、复变函数等是其基本分析工具;网络理论、信号与系统等是其理论基础;最优控制、通信理论、故障诊断等也与其紧密相连。在近40年的发展中,数字信号处理已基本形成了一套较完整的理论体系,主要包括信号的采集(A/D转换、采样定理、多抽样率等)、离散信号的分析(时频分析、信号变换等)、离散系统分析及其算法(系统转移函数、频率特性、快速傅里叶变换、快速卷积等)、信号的估值(各种估值理论、相关函数与功率谱估计等)、数字滤波技术(各种数字滤波
3、器的设计与实现)、信号的建模(AR、MA、ARMA、PRONY等模型)、信号处理中的特殊算法(抽取、插值、反卷积、信号重建等)、信号处理技术的实现与应用(软硬件系统的整体实现)。,伴随着通信技术、电子技术及计算机的飞速发展,数字信号处理的理论也在不断地发展和完善,各种新算法、新理论层出不穷。平稳信号的高阶统计量分析、非平稳信号的联合时域分析、信号的多抽样率分析、小波变换及独立分量分析等信号理论取得了较大的发展。,1.1.2 数字信号处理的实现数字信号处理的实现是指将信号处理的理论应用于某一具体的实践任务中。对象不同,实现的途径也不相同,总体说来,数字信号处理的实现可分为软件实现和硬件实现两大类
4、。软件实现主要是指在通用计算机上用软件来实现信号处理的过程。目前,有关信号处理最强大的软件工具是MATLAB语言及相应的工具箱。本书涉及的工程数字信号处理的相关理论与具体实际应用,均以MATLAB为辅助软件来实现信号处理的仿真过程。硬件实现主要是指采用通用微处理器或数字信号处理器DSP芯片,配置适当的外围IC,配合相应的处理程序构成的数字信号处理系统。DSP芯片可分为通用的可编程DSP芯片和专用的DSP芯片。,具体有以下几种实现方式:(1)在大、中、小型计算机上运行相应的数字信号处理软件来实现。如图像压缩和解压缩软件等。软件实现的执行速度较慢,因此,软件实现一般仅用于DSP算法的模拟与仿真。(
5、2)在通用计算机系统中加上专用的加速处理机来实现。此方法专用性强,但不便于系统的独立运行。(3)在通用的单片机(如MCS-51系列、MSC-96系列等)上实现。这种方法主要用于数字控制等领域。设计中可根据不同环境选配不同的单片机类型,以达到实时控制的目的,但该法数据运算量不能太大,只适用于实现简单的DSP算法。,(4)利用通用的可编程DSP芯片来实现。DSP芯片较之单片机,具有更加适合于数字信号处理的软件和硬件资源,可用于复杂的数字信号处理算法。通用DSP芯片内部带有乘法器、累加器,采用流水线工作方式及并行结构、多总线结构,执行速度快,适用于信号处理的指令等。(5)采用专用的DSP芯片来实现。
6、在一些特殊场合,当要求信号处理速度极高时,通用DSP芯片很难实现要求的功能,须采用专用的DSP芯片。例如专用于FFT、数字滤波、卷积、相关等算法的DSP芯片。这种芯片将相应的信号处理算法在芯片内部用硬件实现,使用者只需给出输入数据,即可在输出端直接得到数据,无需进行编程。,1.1.3 数字信号处理的应用数字信号处理是一门涉及多学科的新兴学科,在语音、雷达、声纳、地震、图像、通信系统、系统控制、生物医学工程、机械振动、遥感遥测、地质勘探、航空航天、电力系统、故障检测、自动化仪器等众多领域获得了极其广泛的应用。数字信号处理有效地推动了众多工程技术领域的技术改造和学科发展。近年来,随着多媒体的发展,
7、DSP芯片已在家电、电话、磁盘机等设备中广泛应用。数字信号处理的典型应用如表1.1所示。,1.2 信 号 与 系 统信号是信息的载体,是信息的物理表现形式,是信息的函数。信号是随着时间、空间或其他自变量变化的物理量。通常把一个信号描述为一个或几个自变量的函数。例如,函数S(x,y)5x4xy20y2(1.1)描述了含两个自变量x和y的信号,是一种确定性信号。然而,很多情况下,这种函数关系是未知的,比如语音信号等自然信号。,信号根据其不同的特征属性,有很多种分类方法。按信号的周期性可分为周期信号和非周期信号;按信号是否能被确定规则所唯一描述,可分为确定性信号和随机信号;按信号时间自变量的特征和取
8、值,可分为连续时间信号和离散时间信号。系统定义为对某个信号执行某种操作的一台物理设备。譬如,用于降低有用信息载体信号噪声和干扰的滤波器,就是一个系统。滤波器通过执行相应操作有效地滤去信号中的噪声和干扰。操作就是信号处理。操作的执行过程就是对信号的处理过程。在操作过程中,如果是线性操作,系统就是线性的;如果是非线性操作,系统就是非线性的。,系统不仅包括物理设备,还包括对信号操作的软件实现。对于计算机处理系统来说,程序就是软件实现。信号处理主要针对的是数字信号,而模拟信号一般可以转换成所需处理的数字信号。因此,本书主要论述的是数字系统。从广义上讲,一个数字系统是一个硬件和软件结合的实现,每一部分都
9、执行自身的一套特定操作。系统是可以被描述的。连续系统可用常系数微分方程、傅里叶变换、拉普拉斯变换描述;离散系统可用差分方程、离散傅里叶变换、Z变换描述。数字系统所执行的操作通常可以由数学方式来表达,执行相应数学操作的方法或规则集称为算法。,1.2.1 连续时间信号和离散时间信号连续时间信号在给定时间区域内,对于任意时刻都对应一个确定的函数值。时间域可以是有限或是无限。常见的连续时间信号主要有指数信号、正弦信号、单位阶跃信号、单位斜坡信号、正负号信号、脉冲信号、sinc信号及复指数信号。离散时间信号定义在某些特定的时间值上,只是在某些离散的瞬时时间点给出函数值,其他点无定义。这些时间点不需要是等
10、间隔的,但为计算方便和易于处理,通常取为等时间间隔。如果使用离散时间的序号n作为自变量,那么信号值就会变成整型变量的函数,这样,一个离散时间信号就可以用一系列实数或复数来表示。为强调信号的离散时间特性,通常用序列x(n)来表示这种信号。若信号等间隔,则可用x(nT)表示,T为采样周期。,在MATLAB中,可用一个列向量来表示一个有限长度序列x(n)。由于计算机内存有限,故无法表示任意无限序列。另外,由于列向量没有包含采样时刻的信息,因此要完整地表示序列x(n),需要用n和x两个向量来表示,前者表示序列元素的位置,后者表示相应的序列值。例如序列x(n)=3,1,4,6,5,8,9,2在MATLA
11、B中可表示为n=1,0,1,2,3,4,5,6x=3,1,4,6,5,8,9,2,1.2.2 确定性信号与随机信号任何一个可以被一个显式数学表达式、一个数据表或者一个定义好的规则所唯一描述的信号,都称为确定性信号。确定性信号的每个值都可以用有限个参量唯一地加以描述。然而,在很多实际应用中,有些信号不能被数学公式显式表达到一个合理的精度,或者是描述得太过复杂以至于没有任何实际用处。这种不能用有限参量来唯一、确定地加以描述,也无法对其未来值确定地预测的信号,称为随机信号。随机信号可以通过统计数学的方法描述,常用的是概率密度函数或功率密度谱描述。如地震信号、语音信号以及最常用的白噪声。,随机信号可分
12、为平稳随机信号与非平稳随机信号,而平稳随机信号又可分为各态遍历信号与非各态遍历信号。白噪声的特征是所有频率(无限带宽)下具有平坦的功率密度(即均匀能量分布),但它的概率密度函数可以有各种分布形式。从信号处理的角度出发,由于噪声是一个随机过程,可用统计方法描述,将混杂在有用信号中的噪声去除,即在噪声中提取有用信号。,1.2.3 能量信号与功率信号连续信号x(t)和离散信号x(n)的能量分别定义为,(1.2a),(1.2b),式中,若E,则称为能量无限信号。当x(t)和x(n)的能量E无限时,仅研究它们的功率。信号x(t)和x(n)的功率分别为,(1.3a),(1.3b),式中,若P,则称x(t)
13、或x(n)为功率有限信号,简称功率信号。随机信号由于其时间是无限的,所以总是功率信号。一般来说,在有限区间内存在的确定性信号有可能是能量信号。,1.2.4 数字信号处理系统的基本组成在科学和工程上,大多数信号都是自然模拟信号。该类信号一般为连续变量的函数,可以直接被适合的模拟系统处理,以改变信号的特征或提取有用信息。在这种情况下,输入和输出信号均是模拟的。数字信号处理是把信号用数字或符号表示成序列,通过计算机或专用信号处理设备,用数值计算方法进行各种处理,达到提取有用信息以便于应用的目的。如滤波、检测、变换、增强、估计、识别、参数提取以及频谱分析等。,数字信号处理提供了处理模拟信号的备用方法,
14、如图1.1所示。要执行数字信号的处理,需在模拟信号和数字信号间加一个A/D转换器,将模拟信号转换为数字信号,再作为数字信号处理器的输入。,图 1.1 数字信号处理系统,可编程数字计算机是一个对输入信号执行所需操作的数字信号处理器。处理器通过更改软件来灵活地改变信号的处理操作。在实际应用中,数字信号处理器的输出通常是以模拟信号传给用户的,例如语音、图像等,这就需用D/A转换器将数字信号转换为模拟信号输出。图像等,这就需用D/A转换器将数字信号转换为模拟信号输出。数字信号处理与模拟信号处理相比,数字信号处理的动态范围宽,信噪比高。信号在模拟系统中经过一系列模拟运算处理后,误差积累,噪声逐级放大,整
15、个系统信噪比指标下降;信号在数字系统中,仅受A/D转换的量化误差及系统有限字长影响,处理过程中不会产生其他噪声。数字信号处理系统的性能具有确定性、可预见性和可重复性,稳定性好。这是由数字器件相比模拟器件的高精度及高稳定度决定的。数字信号处理系统具有很强的灵活性,易于实现自适应算法,易于大规模集成。,1.2.5 模数转换和数模转换现实中的信号大多是模拟信号,要通过数字方法处理模拟信号,首先就需将其转换为具有有限精度的数字序列形式。这一过程称为模数(A/D)转换,其转换设备称为A/D转换器。A/D转换一般由采样、量化和编码三步完成。而数模(D/A)转换器则通过样本间的插值操作完成数字信号到模拟信号
16、的输出。,1.模拟信号的采样模拟信号的采样即对信号时间上的离散化,这是数字化处理的第一个环节。其研究内容主要包含信号经采样后发生的变化(如频谱的变化)、信号内容是否丢失(采样序列能否代表原始信号、如何不失真地还原信号)以及由离散信号恢复连续信号的条件。采样器一般由电子开关组成,开关每隔T秒短暂地闭合一次,将连续信号接通,实现一次采样。如开关每次闭合秒,则采样器的输出是一串重复周期为T,宽度为的脉冲,脉冲的幅度是这段时间内信号的幅度,这一采样过程可看做一个脉冲调幅过程,脉冲载波是一串周期为T、宽度为的矩形脉冲,用P(t)表示,调制信号是输入的连续信号xa(t),则采样输出为xp(t)=xa(t)
17、P(t)(1.4),一般是很小的,越小,则采样输出脉冲幅度越接近输入信号在离散时间点上的瞬时值。信号采样要满足奈奎斯特采样定理,即在信号采样中,采样频率必须大于信号最高频率的两倍。工程实际中,考虑到信号含有噪声,为避免频谱混淆,选取的采样频率总比信号最高频率S的两倍大得多。同时,为避免高于折叠频率S/2的噪声信号进入采样器造成频谱混淆,采样器前常常加一个保护性的前置低通滤波器(抗混叠滤波器)。,2.量化量化是离散时间连续值信号转换到离散时间离散值信号的转换过程。每个信号的样本值是从可能值的有限集中选取的。3.编码在A/D转换器中的编码过程为每一个量化级别赋予一个唯一的二进制数。如果有L级,那么
18、至少需要L个不同的二进制数。若字长为b位,则可生成2b个不同的二进制数。,4.D/A转换与插值处理D/A转换通过执行某种插值操作连接数字信号的点,其一般的样本形式称为零阶保持或阶梯近似。采样定理指出了带限信号的最佳插值。为简化插值处理过程,实际上大多采用零阶保持线性插值的方法来实现D/A转换,再跟随一个后滤波器或平滑滤波器来实现模拟输出。,1.3 离散时间信号对模拟信号xa(t)进行等间隔采样,采样间隔为T,可得到的采样输出为xn=xa(t)|t=nT=xa(nT),n=,2,1,0,1,2,(1.5)对于不同的n值,xa(nT)是一个有序的数字序列,该数字序列就是离散时间信号。T称为采样周期
19、或采样间隔,f=1/T为采样频率。,实际信号处理中,这些数字序列值按顺序存放于存储器中,此时nT代表的是前后顺序。为了简化表述,一般不写采样间隔,记为x(n),称为数字序列。对于具体信号,x(n)也代表第n个序列值。需要说明的是,n需取整数,非整数时无定义;另外,在数值上它等于信号的采样值,且信号随n的变化规律可以用公式表示,也可以用图形表示。,1.3.1 典型离散时间信号在数字信号处理中,定义了一些基本的典型离散时间信号序列,它们的定义和在MATLAB中的表述如下。1.单位采样序列单位采样序列的表达式为,(1.6),(1.7),单位采样序列也可以称为单位脉冲序列,特点是仅在n=0时取值为1,
20、其他情况时均为0。它类似于模拟信号和系统中的单位冲激函数(t),但不同的是(t)在t=0时,取值无穷大,t0时取值为0,对时间t的积分为1。在MATLAB中,利用函数zeros(1,N)可以实现有限长区间的(n),也可利用逻辑关系操作符n=0来实现。,【例 1.1】用MATLAB编写生成单位采样序列的程序,其中,n10,10,n0=1。MATLAB程序如下:%MATLAB PROGRAM 1-1%a Delta Sequencen0=1;n1=-10;n2=10;%Generate x(n)=delta(n-n0);n1 n2)|(n1 n2)error(参数必须满足 n1=n0=n2)end
21、n=n1:n2;%x=zeros(1,(n0-n1),1,zeros(1,(n2-n0);%用zeros函数实现x=(n-n0)=0;%用逻辑关系式实现 stem(n,x)xlabel(n);ylabel(x(n);title(Delta Sequence);grid程序运行结果如图1.2所示。,图 1.2 单位采样序列,2.单位阶跃序列单位阶跃序列的表达式为,(1.8),(1.9),单位阶跃序列类似于模拟信号中的单位阶跃函数u(t)。(n)与u(n)之间的关系为(n)=u(n)u(n1)(1.10),(1.11),在MATLAB中,利用函数ones(1,N)可以实现有限长区间的u(n),也可
22、用逻辑关系式n0来实现。【例 1.2】用MATLAB编写生成单位阶跃序列的程序,其中,n8,8,n0=2。MATLAB程序如下:%MATLAB PROGRAM 1-2%Functionx,n=stepseq(n0,n1,n2)n0=2;n1=-8;n2=8;if(n0 n2)|(n1 n2)error(参数必须满足 n1=0;%用“”实现stem(n,x)xlabel(n);ylabel(x(n);title(Step Sequence);grid,程序运行结果如图1.3所示。,图 1.3 单位阶跃序列,矩形序列是其一种特殊序列,定义为,(1.12),式中,N称为矩形序列的长度。,3.单位斜坡
23、序列单位斜坡序列的表达式为,(1.13),【例 1.3】用MATLAB编写生成单位斜坡序列的程序,其中,n0,10。,MATLAB程序如下:%MATLAB PROGRAM 1-3%a Ramp Sequencen1=0;n2=10;n=n1:0.5:n2;x=n;stem(n,x)xlabel(n);ylabel(x(n);title(Ramp Sequence);grid程序运行结果如图1.4所示。,图 1.4 单位斜坡序列,4.正弦、余弦序列正弦和余弦序列的表达式分别为x(n)=A sin(0n+j)n(1.14a)x(n)=A cos(0n+j)n(1.14b)式中,A为幅度;0称为序列
24、的数字域频率,表示序列变化的速率,单位是弧度;j为初始相位角。在MATLAB中,利用函数sin和cos可以实现有限长区间的正弦和余弦序列。,【例 1.4】用MATLAB编写程序,生成x(n)=2 sin(0.3n),n10,50。MATLAB程序如下:%MATLAB PROGRAM 1-4n=10:50;x=3*cos(0.4*pi*n+pi/3)2*sin(0.3*pi*n);stem(n,x)xlabel(n);ylabel(x(n);title(Sine Sequence);grid程序运行结果如图1.5所示。,图 1.5 正余弦序列,5.实指数序列实指数序列的表达式为x(n)=an n
25、,aR(1.15)如果|a|1,x(n)的幅度随n的增大而增大,称x(n)为发散序列。在MATLAB中,利用数组运算符“.”可以实现有限长区间的实指数序列。【例 1.5】用MATLAB编写生成x(n)=0.5n,n8,10的程序。,MATLAB程序如下:%MATLAB PROGRAM 15n=8:10;x=0.5.nstem(n,x)xlabel(n);ylabel(x(n);title(Real Power Sequence);grid程序运行结果如图1.6所示。,图 1.6 实指数序列,6.复指数序列复指数序列的表达式为x(n)=e(+j0)n(1.16)式中,0为数字域频率,为阻尼系数。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- MATLAB辅助现代工程数字信号处理 第二版 作者 李益华 第15章 第1章 MATLAB 辅助 现代 工程 数字信号 处理 第二 15
链接地址:https://www.31ppt.com/p-2250429.html