数字信号处理实验指导
《数字信号处理》上机实验指导书
《数字信号处理》上机实验指导书实验1 离散时间信号的产生1.实验目的数字信号处理系统中的信号都是以离散时间形态存在,所以对离散时间信号的研究是数字信号处理的基本所在。
而要研究离散时间信号,首先需要产生出各种离散时间信号。
MATLAB 是一套功能强大的工程计算及数据处理软件,广泛应用于工业,电子,医疗和建筑等众多领域。
使用MATLAB软件可以很方便地产生各种常见的离散时间信号,而且它还具有强大的绘图功能,便于用户直观地输出处理结果。
通过本实验,学生将学习如何用MATLAB产生一些常见的离散时间信号,并通过MATLAB中的绘图工具对产生的信号进行观察,加深对常用离散信号的理解。
2.实验要求本实验要求学生运用MATLAB编程产生一些基本的离散时间信号,并通过MATLAB的几种绘图指令画出这些图形,以加深对相关教学内容的理解,同时也通过这些简单的函数练习了MATLAB的使用。
3.实验原理(1)常见的离散时间信号1)单位抽样序列,或称为离散时间冲激,单位冲激:?(n)???1?0n?0 n?0如果?(n)在时间轴上延迟了k个单位,得到?(n?k)即:?1n?k ?(n?k)??0n?0?2)单位阶跃序列n?0?1 u(n)?n?0?0在MATLAB中可以利用ones( )函数实现。
x?ones(1,N);3)正弦序列x(n)?Acos(?0n??)这里,A,?0,和?都是实数,它们分别称为本正弦信号x(n)的振幅,角频率和初始相位。
f0??02?为频率。
x(n)?ej?n4)复正弦序列5)实指数序列x(n)?A?n(2)MATLAB编程介绍MATLAB是一套功能强大,但使用方便的工程计算及数据处理软件。
其编程风格很简洁,没有太多的语法限制,所以使用起来非常方便,尤其对初学者来说,可以避免去阅读大量的指令系统,以便很快上手编程。
值得注意得就是,MATLAB中把所有参与处理的数据都视为矩阵,并且其函数众多,希望同学注意查看帮助,经过一段时间的训练就会慢慢熟练使用本软件了。
《数字信号处理》实验指导书
《数字信号处理》实验指导书实验一离散傅里叶变换一、实验目的(1) 熟悉Matlab的主要操作命令;掌握Matlab的基本使用方法,能够运用Matlab软件分别产生常见的连续信号和离散信号,并对其进行一定的运算。
(2) 理解离散傅立叶变换是信号分析与处理的一种重要变换,特别是FFT在数字信号处理中的高效率应用。
掌握DFT的理论,通过DFT对典型信号进行的频谱分析,加深对DFT的理解。
(3) 通过对同一信号,作不同点数的FFT,比较其对应的频谱,比较两者的异同点,加深理解信号频谱概念和谱分析的原理与方法,了解快速傅立叶变换(FFT)可以提高运算量的特点,并运用Matlab软件分别对离散周期信号和非周期信号进行谱分析,同时绘出幅度频谱和相位频谱。
二、预习要求1、掌握连续信号和离散信号的特点及其运算方法;2、熟悉Matlab的基本编程语言及其变量、数组、向量与矩阵和部分运算符的使用;3、掌握部分Matlab基本数学函数和作图函数的使用。
三、和实验相关的一些功能函数正弦信号:A*sin(w0*t+phi),A*cos(w0*t+phi),A*sin(omega*n+phi);方波信号:square(w0*t),square(w0*t,DUTY),A*square(omega*n);注意DUTY的取值情况。
指数信号:A*exp(a*t);矩形脉冲信号:rectpulse(t),rectpulse(t,w);单位脉冲信号和单位阶跃信号:ones(1,n)和zeros(1,n);基本信号运算函数:abs(幅值)、 angle(相角)。
四、实验原理1、有限长序列x(n)的DFT的概念和公式:N?1?kn?x(k)??x(n)WN?n?0?N?1?kn?x(n)?1x(k)WN??Nk?0?0?k?N?10?n?N?1《数字信号处理》实验指导书WN?e?j(2?/N)2、FFT算法调用格式是X= fft(x)或 X=fft(x,N)对前者,若x的长度是2的整数次幂,则按该长度实现x的快速变换,否则,实现的是慢速的非2的整数次幂的变换;对后者,N应为2的整数次幂,若x的长度小于N,则补零,若超过N,则舍弃N以后的数据。
数字信号处理实验指导(DOC)
目录第一部分MATLAB 简介 (1)一、MATLAB简介及其安装使用说明 (1)二、Matlab基本语句 (8)三、Matlab基本数值运算 (13)四、Matlab函数、及其调用方法 (17)第二部分实验内容 (18)实验一离散时间信号分析 (18)实验二离散时间系统分析 (24)实验三利用FFT进行谱分析 (31)实验四利用FFT实现快速卷积 (38)第一部分MATLAB 简介一、MATLAB简介及其安装使用说明1、MATLAB程序设计语言简介MATLAB,Matrix Laboratory的缩写,是由Mathworks公司开发的一套用于科学工程计算的可视化高性能语言,具有强大的矩阵运算能力。
与大家常用的Fortran和C等高级语言相比,MATLAB的语法规则更简单,更贴近人的思维方式,被称之为“草稿纸式的语言”。
截至目前,MATLAB已经发展到7.x版,适用于所有32位的Windows操作系统,按NTFS(NT文件系统)格式下完全安装约需850 MB。
MATLAB软件主要由主包、仿真系统和工具箱三大部分组成。
2、MATLAB应用入门(1)MATLAB的安装与卸载MATLAB软件在用户接口设计上具有较强的亲和力,其安装过程比较典型,直接运行光盘中的安装向导支撑程序SETUP.exe,按其提示一步步选择即可。
MATLAB自身带有卸载程序,在其安装目录下有uninstall子目录,运行该目录下的uninstall.exe即可;也可以通过Windows系统的安装卸载程序进行卸载。
(2)MATLAB的启动与退出MATLAB安装完成后,会自动在Windows桌面上生成一个快捷方式,它是指向安装目录下\bin\win32\matlab.exe的链接,双击它即可来到MATLAB集成环境的基本窗口,通常称之为命令窗口。
MATLAB的退出与普通WIN32的程序一样,值得一提的是它有一个自身专有的快捷键Ctrl+Q。
数字信号处理实验指导书
数字信号处理实验指导书实验一离散时间与系统的傅立叶分析一、实验目的用傅立叶变换对信号和系统进行频域分析。
二、实验原理对信号进行频域分析就是对信号进行傅立叶变换。
对系统进行频域分析即对它的单位脉冲响应进行傅立叶变换,得到系统的传输函数。
也可以由差分方程经过;傅立叶变换直接求它的传输函数。
传输函数代表的就是系统的频率响应特性。
但传输函数是ω的连续函数,计算机只能计算出有限个离散频率点的传输函数值,因此得到传输函数以后,应该在0~2л之间取许多点,计算这些点的传输函数的值,并取它们的包络,该包络才是需要的频率特性。
当然,点数取得多一些,该包络才能接近真正的频率特性。
注意:非周期信号的频率特性是ω的连续函数,而周期信号的频率特性是离散谱,它们的计算公式不一样,响应的波形也不一样。
三、实验内容‘1.已知系统用下面差分方程描述:y(n)=x(n)十ay(n一1)试在a=0.95和a=一0.5两种情况下用傅立叶变换分析系统的频率特性。
要求写出系统的传输函数和幅度响应,并打印|H(e jw)|~ω曲线。
2.已知两系统分别用下面差分方程描述:y1(n)=x(n)+x(n一1)y2(n)=x(n)一x(n一1)试分别写出它们的传输函数和幅度响应,并分别打印|H(e jw)|~ω曲线。
3.已知信号x(n)=R3(n),试分析它的频域特性,要求打印|H(e jw)|~ω曲线。
4.假设x(n)=a(n),将x(n)以2为周期进行周期延拓,得到x(n),试分析它的频率特性,并画出它的幅频特性。
四、实验用MATLAB函数介绍1.abs功能:求绝对值(复数的模)。
y=abs(x):计算实数x的绝对值。
当x为复数时得到x的模(幅度值)。
当x为向量时,计算其每个元素的模,返回模向量y。
2.angle功能:求相角。
Ph=angle(x):计算复向量x的相角(rad)。
Ph值介于-л和+л之间.3.freqz:计算数字滤波器H(z)的频率响应。
《数字信号处理》实验指导书(完整)
《数字信号处理》实验指导书通信教研室安阳工学院二零零九年三月第1章 系统响应及系统稳定性1.1 实验目的● 学会运用MATLAB 求解离散时间系统的零状态响应;● 学会运用MATLAB 求解离散时间系统的单位取样响应;● 学会运用MATLAB 求解离散时间系统的卷积和。
1.2 实验原理及实例分析1.2.1 离散时间系统的响应离散时间LTI 系统可用线性常系数差分方程来描述,即∑∑==-=-Mj jN i i j n x b i n y a 00)()( (1-1) 其中,i a (0=i ,1,…,N )和j b (0=j ,1,…,M )为实常数。
MATLAB 中函数filter 可对式(13-1)的差分方程在指定时间范围内的输入序列所产生的响应进行求解。
函数filter 的语句格式为y=filter(b,a,x)其中,x 为输入的离散序列;y 为输出的离散序列;y 的长度与x 的长度一样;b 与a 分别为差分方程右端与左端的系数向量。
【实例1-1】 已知某LTI 系统的差分方程为)1(2)()2(2)1(4)(3-+=-+--n x n x n y n y n y试用MATLAB 命令绘出当激励信号为)()2/1()(n u n x n=时,该系统的零状态响应。
解:MATLAB 源程序为>>a=[3 -4 2];>>b=[1 2];>>n=0:30;>>x=(1/2).^n;>>y=filter(b,a,x);>>stem(n,y,'fill'),grid on>>xlabel('n'),title('系统响应y(n)')程序运行结果如图1-1所示。
1.2.2 离散时间系统的单位取样响应系统的单位取样响应定义为系统在)(n 激励下系统的零状态响应,用)(n h 表示。
数字信号处理实验指导书(学生版)
“数字信号处理”实验指导书(一)一、实验课程编码:105003 二、实验课程名称:数字信号处理三、实验项目名称: 应用MATLAB 分析离散信号频谱 四、实验目的掌握应用MATLAB 分析离散信号频谱的方法,即熟悉应用MATLAB 分析离散信号的函数。
五、主要设备安装有MATLAB 软件的电脑 六、实验内容编写MATLAB 程序,实现下面题目:1. 用快速卷积法计算下面两个序列的线性卷积。
)()4.0(s )(15n R n in n x =,)(9.0)(20n R n h n =2.已知序列[]()cos 0120n n N Nx n π⎧≤≤-⎪=⎨⎪⎩其它(1)计算该序列DTFT 的表达式()j X e ω,并画出N=10时的()j X e ω曲线; (2)编写MATLAB 程序,利用FFT 函数,计算N =10时,序列x [k ]的DTFT 在2m mNπω=的抽样值。
利用hold 函数,将抽样点画在()j X e ω的曲线上。
3.理解高密度频谱和高分辨率频谱的概念。
设)52.0cos()48.0(co )(n n s n x ππ+=(1) 取0≤n ≤9,求)(1k X(2) 将(1)中的)(x n 补零加长到0≤n ≤99,求)(2k X (3) 增加取样值的个数,取0≤n ≤99,求)(3k X4. 用DFT 对连续信号做谱分析。
设)50cos()100sin()200cos()(t t t t x a πππ++=,用DFT 分析)(t x a 的频谱结构,选择不同的截取长度Tp ,观察截断效应,试用加窗的方法减少谱间干扰。
选取的参数:(1) 频率s s f T Hz f /1 ,400==(2) 采样信号序列)()()(n w nT x n x a =,)(n w 是窗函数。
选取两种窗函数:矩形窗函数)()(n R n w N =和Hamming 窗,后者在程序中调用函数Hamming 产生宽度为N 的Hamming 窗函数向量。
数字信号处理实验指导书
j j
括幅频特性和相频特性)曲线。并将其和第 4 步中得到的结果进行比较。
七. 实验报告内容与要求
1. 简述实验目的、实验原理及实验方法和步骤。 2. 对各实验所得结果进行分析和解释。 3. 打印程序清单和要求的各信号波形。 4. 总结实验中的主要结论。 5. 简要回答思考题。
八. 思考
1. 信号的频域特性即信号的傅立叶变换利用 MATLAB 程序如何实现? 2. 信号的频域特性即频率响应函数 H (e ) 利用 MATLAB 程序如何求取?
4
X (e j ) FT [ x(n)]
n
x ( n) e
j n
(2.1)
序列和信号的傅立叶变换是ω的连续函数, 而计算机只能计算出有限个离散频率点的 函数值。因此在取得频谱函数后,应该在 0~2π之间取许多点,计算这些点的频谱函数 的值,并取它们的包络,该包络才是需要的频率特性。当然,点数取得多一些,该包络才
y(n) 0.05 x(n) 0.05 x(n 1) 0.9 y(n 1) 的响应 y2 (n) ,并绘出 y2 (n) 的时域特性曲
线。
( n) ,并绘出 y1 ( n) 的 5. 利用卷积函数 conv () 求信号 x1 ( n) 通过系统 h1 (n) 的响应 y1
j 能接近真正得频率特性。通常对 X (e ) 在[0,2π]上取模 X (e ) ,绘出幅频特性曲
j
线进行观察分析。系统的频域特性,通常是指求系统频率响应函数 H (e ) ,即系统单位 脉冲响应 h(n)的傅里叶变换。 对于线性时不变时域离散系统,当系统的输入序列为 x(n) ,系统的单位脉冲响应为 为 h(n) ,则线性时不变系统的输出序列为
《数字信号处理实验》指导书
《数字信号处理实验》实验1 常用信号产生实验目的:学习用MATLAB编程产生各种常见信号。
实验内容:1、矩阵操作:输入矩阵:x=[1 2 3 4;5 4 3 2;3 4 5 6;7 6 5 4]引用 x的第二、三行;引用 x的第三、四列;求矩阵的转置;求矩阵的逆;2、单位脉冲序列:产生δ(n)函数;产生δ(n-3)函数;3、产生阶跃序列:产生U(n)序列;产生U(n-n0)序列;4、产生指数序列:x(n)=0.5n⎪⎭⎫⎝⎛4 35、产生正弦序列:x=2sin(2π*50/12+π/6)6、产生取样函数:7、产生白噪声:产生[0,1]上均匀分布的随机信号:产生均值为0,方差为1的高斯随机信号:8、生成一个幅度按指数衰减的正弦信号:x(t)=Asin(w0t+phi).*exp(-a*t)9、产生三角波:实验要求:打印出程序、图形及运行结果,并分析实验结果。
实验2 利用MATLAB 进行信号分析实验目的:学习用MATLAB 编程进行信号分析实验内容:1数字滤波器的频率响应:数字滤波器的系统函数为:H(z)=21214.013.02.0----++++z z z z , 求其幅频特性和相频特性:2、离散系统零极点图:b =[0.2 0.1 0.3 0.1 0.2];a=[1.0 -1.1 1.5 -0.7 0.3];画出其零极点图3、数字滤波器的冲激响应:b=[0.2 0.1 0.3 0.1 0.2];a=[1.0 -1.1 1.5 -0.7 0.3];求滤波器的冲激响应。
4、 计算离散卷积:x=[1 1 1 1 0 0];y=[2 2 3 4];求x(n)*y(n)。
5、 系统函数转换:(1)将H(z)=)5)(2)(3.0()1)(5.0)(1.0(------z z z z z z 转换为直接型结构。
(2)将H (z )=3213210.31.123.7105.065.06.11-------+--+-zz z z z z 转换为级联型结构。
《数字信号处理》实验指导书-167
《数字信号处理》实验指导书实验1 数字滤波器的设计实验序号:1 实验名称:数字滤波器的设计 适用专业:通信工程、电子信息工程 学 时 数:4学时一、实验目的1.掌握双线性变换法设计IIR 数字滤波器的具体设计方法及其原理和窗函数设计FIR 滤波器的设计原理与基本方法。
2.观察双线性变换的频域特性。
熟悉Butterworth 滤波器的频率特性。
3.了解各种不同窗函数对滤波器性能的影响。
4.熟悉Matlab 计算机编程。
二、实验原理1.用双线性变换法设计IIR 数字滤波器方法(1)设计思想:将模拟滤波器转换成数字滤波器的实质是,用一种从s 平面到z 平面的映射函数将Ha(s)转换成H(z)。
对这种映射函数的要求是:(1) 因果稳定的模拟滤波器转换成数字滤波器,仍是因果稳定的。
(2)数字滤波器的频率响应模仿模拟滤波器的频响,s 平面的虚轴映射z 平面的单位圆,相应的频率之间成线性关系。
脉冲响应不变法和双线性变换法都满足如上要求。
s 平面与z 平面之间满足以下映射关系:1111--+-=zz ss 平面的虚轴单值地映射于z 平面的单位圆上,s 平面的左半平面完全映射到z 平面的单位圆内。
双线性变换不存在混叠问题。
双线性变换时一种非线性变换)/ω(tg 2=Ω,这种非线性引起的幅频特性畸变可通过预畸而得到校正。
(2)以低通数字滤波器为例,将设计步骤归纳如下:·确定数字滤波器的性能指标:通带临界频率f p 、阻带临界频率f s ;通带内的最大衰减A p ;阻带内的最小衰减A s ;· 确定相应的数字角频率,ωp=2πfp ;ωs=2πfs ;·计算经过预畸的相应模拟低通原型的频率,)2/(ωtg =Ω;·根据Ωp 和Ωs 计算模拟低通原型滤波器的阶数N ,并求得低通原型的传递函数Ha(s); ·用上面的双线性变换公式代入Ha(s),求出所设计的传递函数H(z); ·分析滤波器特性,检查其指标是否满足要求。
《数字信号处理》实验指导书(全)
数字信号处理实验指导书电子信息工程学院2012年6月目录实验一离散信号产生和基本运算 (3)实验二基于MATLAB的离散系统时域分析 (7)实验三基于ICETEK-F2812-A 教学系统软件的离散系统时域分析 (9)实验四基于MATLAB 的FFT 算法的应用 (16)实验五基于ICETEK-F2812-A 的FFT 算法分析 (18)实验六基于ICETEK-F2812-A 的数字滤波器设计 (20)实验七基于ICETEK-F2812-A的交通灯综合控制 (24)实验八基于BWDSP100的步进电机控制 (26)实验一离散信号产生和基本运算一、实验目的(1)掌握MATLAB最基本的矩阵运算语句。
(2)掌握对常用离散信号的理解与运算实现。
二、实验原理1.向量的生成a.利用冒号“:”运算生成向量,其语句格式有两种:A=m:nB=m:p:n第一种格式用于生成不长为1的均匀等分向量,m和n分别代表向量的起始值和终止值,n>m 。
第二种格式用于生成步长为p的均匀等分的向量。
b.利用函数linspace()生成向量,linspace()的调用格式为:A=linspace(m,n)B=linspace(m,n,s)第一种格式生成从起始值m开始到终止值n之间的线性等分的100元素的行向量。
第二种格式生成从起始值m开始到终止值n之间的s个线性等分点的行向量。
2.矩阵的算术运算a.加法和减法对于同维矩阵指令的A+BA-B对于矩阵和标量(一个数)的加减运算,指令为:A+3A-9b.乘法和除法运算A*B 是数学中的矩阵乘法,遵循矩阵乘法规则A.*B 是同维矩阵对应位置元素做乘法B=inv(A)是求矩阵的逆A/B 是数学中的矩阵除法,遵循矩阵除法规则A./B 是同维矩阵对应位置元素相除另'A表示矩阵的转置运算3.数组函数下面列举一些基本函数,他们的用法和格式都相同。
sin(A),cos(A),exp(A),log(A)(相当于ln)sqrt(A)开平方 abs(A)求模 real(A)求实部 imag(A)求虚部 式中A 可以是标量也可以是矩阵 例: 利用等差向量产生一个正弦值向量 t=0:0.1:10 A=sin(t) plot(A)这时候即可看到一个绘有正弦曲线的窗口弹出 另:每条语句后面加“;”表示不要显示当前语句的执行结果 不加“;”表示要显示当前语句的执行结果。
《数字信号处理》实验指导书
实验一 采样率对信号频谱的影响一、实验目的1.理解采样定理; 2.掌握采样频率确定方法; 3.理解频谱的概念; 4.理解三种频率之间的关系。
二、实验原理理想采样过程是连续信号x a (t )与冲激函数串M (t )的乘积的过程∑∞-∞=-=k skT t t M )()(δ (1))()()(ˆt M t x t xa a = (2) 式中T s 为采样间隔。
因此,理想采样过程可以看作是脉冲调制过程,调制信号是连续信号x a (t ),载波信号是冲激函数串M (t )。
显然)()()()()(ˆs k s ak s aa kT t kT xkT t t xt x-=-=∑∑∞-∞=∞-∞=δδ (3)所以,)(ˆt xa 实际上是x a (t )在离散时间kT s 上的取值的集合,即)(ˆs a kT x 。
对信号采样我们最关心的问题是,信号经过采样后是否会丢失信息,或者说能否不失真地恢复原来的模拟信号。
下面从频域出发,根据理想采样信号的频谱)(ˆΩj X a和原来模拟信号的频谱)(Ωj X 之间的关系,来讨论采样不失真的条件∑∞-∞=Ω-Ω=Ωk ssakj j X T j X )(1)(ˆ (4)上式表明,一个连续信号经过理想采样后,其频谱将以采样频率Ωs =2π/T s 为间隔周期延拓,其频谱的幅度与原模拟信号频谱的幅度相差一个常数因子1/T s 。
只要各延拓分量与原频谱分量之间不发生频率上的交叠,则可以完全恢复原来的模拟信号。
根据式(4)可知,要保证各延拓分量与原频谱分量之间不发生频率上的交叠,则必须满足Ωs ≥2Ω。
这就是奈奎斯特采样定理:要想连续信号采样后能够不失真地还原原信号,采样频率必须大于或等于被采样信号最高频率的两倍h s Ω≥Ω2,或者h s f f 2≥,或者2hs T T ≤(5) 即对于最高频率的信号一个周期内至少要采样两点,式中Ωh 、f s 、T h 分别为被采样模拟信号的最高角频率、频率和最小周期。
数字信号处理实验指导书
实验一 信号、系统及系统响应1、实验目的:(1)熟悉连续信号经理想采样前后的频谱变化关系,加深对时域采样定理的理解。
(2)熟悉时域离散系统的时域特性。
(3)利用卷积方法观察分析系统的时域特性。
(4)掌握序列傅里叶变换的计算机实现方法,利用序列的傅里叶变换对连续信号、离散信号及系统响应进行频域分析。
2、实验仪器:PC 机一台 MATLAB 软件 3、实验原理:采样是连续信号数字处理的第一个关键环节。
对一个连续信号)(t x a 进行理想采样的过程可用下式表示。
)()()(ˆt p t x t xa a = 其中)(ˆt xa 为)(t x a 的理想采样,)(t p 为周期冲激脉冲, 即 ∑∞-∞=-=n nT t t p )()(δ;由频域卷积定理,得)]([1)(ˆs a am j X Tj X Ω-Ω=Ω ※ 上式表明,)(ˆΩj X a为)(Ωj X a 的周期延拓,其延拓周期为采样角频率(T s /2π=Ω)。
采样前后的频谱示意图见课本。
只有满足采样定理时,才不会发生频率混叠失真。
在计算机上用高级语言计算)(ˆΩj X a 很不方便,下面给出用序列的傅里叶变换来计算)(ˆΩj X a的方法。
课本中(2.4.7)式∑∞-∞=-=r ajwr TT w j X T e X )]2([1)(π,表示序列的傅里叶变换)(jwe X 和模拟信号)(t x a 的傅里叶变换)(Ωj X a 之间的关系式。
与※式比较,可得T w jw a e X j X Ω==Ω|)()(ˆ,这说明两者之间只在频率度量上差一个常数因子T 。
实验过程中应注意这一差别。
为了在数字计算机上观察分析各种序列的频域特性,通常对)(jwe X 在[]π2,0上进行M 点采样来观察分析。
对长度为N 的有限长序列x(n), 有∑-=-=1)()(N n n jw jw k ke n x eX其中 1,,1,02-==M k k Mw k ,π通常M 应取得大一些,以便观察谱的细节变化。
《数字信号处理》实验指导书(正文)
实验一 离散时间信号分析一、实验目的1.掌握各种常用的序列,理解其数学表达式和波形表示。
2.掌握在计算机中生成及绘制数字信号波形的方法。
3.掌握序列的相加、相乘、移位、反褶等基本运算及计算机实现与作用。
4.掌握线性卷积软件实现的方法。
5.掌握计算机的使用方法和常用系统软件及应用软件的使用。
6.通过编程,上机调试程序,进一步增强使用计算机解决问题的能力。
二、实验原理1.序列的基本概念离散时间信号在数学上可用时间序列来表示,其中代表序列的第n 个数字,n 代表时间的序列,n 的取值范围为∞<<∞-n 的整数,n 取其它值)(n x 没有意义。
离散时间信号可以是由模拟信号通过采样得到,例如对)(t x a 模拟信号进行等间隔采样,采样间隔为T ,得到一个{})(nT x a 有序的数字序列就是离散时间信号,简称序列。
2.常用序列常用序列有:单位脉冲序列(单位采样))(n δ、单位阶跃序列)(n u 、矩形序列)(n R N 、实指数序列、复指数序列、正弦型序列等。
3.序列的基本运算序列的运算包括移位、反褶、和、积、标乘、累加、差分运算等。
4.序列的卷积运算∑∞∞-*=-=)()()()()(n h n x m n h m x n y上式的运算关系称为卷积运算,式中代表两个序列卷积运算。
两个序列的卷积是一个序列与另一个序列反褶后逐次移位乘积之和,故称为离散卷积,也称两序列的线性卷积。
其计算的过程包括以下4个步骤。
(1)反褶:先将)(n x 和)(n h 的变量n 换成m ,变成)(m x 和)(m h ,再将)(m h 以纵轴为对称轴反褶成)(m h -。
(2)移位:将)(m h -移位n ,得)(m n h -。
当n 为正数时,右移n 位;当n 为负数时,左移n 位。
(3)相乘:将)(m n h -和)(m x 的对应点值相乘。
(4)求和:将以上所有对应点的乘积累加起来,即得)(n y 。
《数字信号处理》实验指导书
的相角, Ai 就是极点 pi 到单位圆上的点 e jω 的矢量长度(距离),而θ i 就是该矢量 的相角,因此有:
M
∏ B e j(ψ1 +ψ 2 +⋅⋅⋅⋅+ψ M ) j
H (e jω ) =
j =1 N
= H (e jω ) e jϕ (ω )
∏ A e j(θ1+θ2 +⋅⋅⋅⋅+θ N ) i
(1) 设有直流信号 g(t)=1,现对它进行均匀取样,形成序列 g(n)=1。试讨 论若对该序列分别作加窗、补零,信号频谱结构有何变化。 四、实验过程及结果(含程序)
12
13
14
15
16
实验三 IIR 数字滤波器的设计
一、实验目的 (1)掌握双线性变换法及脉冲相应不变法设计 IIR 数字滤波器的具体设计 方法及其原理,熟悉用双线性变换法及脉冲响应不变法设计低通、高通和 带通 IIR 数字滤波器的计算机编程。 (2)观察双线性变换及脉冲响应不变法设计的滤波器的频域特性,了解双 线性变换法及脉冲响应不变法的特点。 (3)熟悉 Butterworth 滤波器、Chebyshev 滤波器和椭圆滤波器的频率特 性
《数字信号处理》
实验指导书
班级: 学号: 姓名: 苏州科技学院 电子教研室
实验一 信号、系统及系统响应
一、实验目的
(1) 熟悉 MATLAB 平台的使用,掌握离散信号、离散系统的 MATLAB 实现。 (2)掌握根据系统函数绘制系统零极点分布图的基本原理和方法。 (3)理解离散系统频率特性分析的基本原理,掌握根据系统函数零极点分布来分 析离散系统频率响应的几何矢量法。
17
变换类型 低通
Байду номын сангаас
数字信号处理实验指导书
实验一DES 综合外设实验1.1实验目的和要求DES320E 提供了键盘,液晶,数码管,直流电机,步进电机,交通灯等外设。
本实验学习这些外设的控制原理。
本实验为大型综合性实验,要求学生掌握DSP编程的基本方法。
通过实验,学生能编写外设控制程序。
例如,使用交通灯和定时器实现十字路口红绿灯的控制,直流电机的调速控制,使用液晶数码管显示和键盘实现计算器等。
1.2实验原理1) C54XX 的I O 空间读写C54XX 提供64K 字的I O 空间访问能力。
在汇编指令中分别提供了读和写命令:portr和p ortw。
你也可以在C中实现该I O 操作,方法如下:首先定义I O 空间变量,如:ioport unsigned portXXXX;/* 其中,XXXX 代表具体I O 口地址*/然后,就可以象访问普通变量一样访问I O 口。
如portXXXX=0x55;/* 将0x55 写到X XXX 指定的I O 口*/2) 交通灯的控制DES320E 提供了 12 个 LED,其控制地址为 IO 空间的 0x0c000h。
该地址的 D0-11比特位分别对应这12 个L ED。
将1写入可以点亮L ED,0 则关闭。
3) 直流电机控制DES320E 实验系统配有一个小型直流电机,可以 DSP 编程完成直流电机的调速控制。
其控制方法为:当向0x0e000h(…VC5402 的I O 空间)的D0 比特位写入1时,电机正向转动;当写入 0 时,电机反向转动。
用户可以通过 D0 位为 1 或 0 的持续时间(即D0 输出方波的占空比)控制电机的转速。
注意,使用直流电机时,应该先接通电机的电源,方法如下:向I O 空间的0x8000 地址的D0 比特位写入1。
若要关闭电源,请写入0。
当写入1或0时,你可以听到继电器动作的声音。
4) 步进电机的控制DES320E 实验系统还配有一个步进电机。
IO 空间的0x0f000h 的D0,D1,D2,D3 四个比特位分别对应步进电机的四相驱动端。
数字信号处理实验指导书(修订版)
目录实验一卷积实验 (1)实验二DFT和FFT实验 (5)实验三用双线性变换法设计IIR数字滤波器 (11)实验四用窗函数法设计FIR数字滤波器 (16)实验一卷积实验一.实验目的1.熟悉离散信号和系统的MATLAB 表示和产生方法;2.熟悉线性卷积的MATLAB编程方法;3利用卷积方法观察分析系统的时域特性。
二实验原理(一) 离散时间信号的MATLAB表示序列x(n)={2,6,1,2,0,3,4,5,6},用MATLAB语句表示为:n=[-4 -3 -2 -1 0 1 2 3 4];x=[ 2 6 1 2 0 3 4 5 6];其中:n表示取样时间点,x表示对应时间点的值。
如果不需要采样位置信息或这个信息是多余的时候(例如序列从n=0开始),用户可以只使用x向量来表示序列。
1.单位样值序列产生函数IMPSEQ.Mfunction[x,n]=impseq(n0,n1,n2)%产生x(n)=delta(n-n0);n1<=n<=n2;n=[n1:n2];x=[(n-n0)==0];在命令行窗口里执行:>>x= impseq(20,0,100);>> stem(x)有:2.单位阶跃序列产生函数STEPSEQ.Mfunction[x,n]=stepseq(n0,n1,n2)%产生x(n)=u(n-n0);n1<=n<=n2;n=[n1:n2];x=[(n-n0)>=0]; 在命令行窗口里执行:>>x=stepseq(20,0,100);>> stem(x)有:3正余弦信号的产生:% x(n)=1.5cos(0.02*pi*n) -150<=n<=150 n=-150:150x=1.5*cos(0.02*pi*n);stem(n,x)4.产生均值为0,方差为1的高斯随机噪声序列。
n=-150:150;Noise=randn(1,301);stem(n, Noise)(二) 序列的卷积一个线性系统一般应满足下式:y(n)=T[x(n)]由数字信号处理理论可知,线性系统的脉冲响应即为h(n),上式一般称为线性卷积,一般可以表示为:y(n)=x(n)*h(n)如果任意序列是无限长度的,就不能用MATLAB来直接计算卷积。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
奇偶合成:
几何级数:
序列相关:
卷积运算:
差分方程:
在Matlab中: 三、实验内容
1.典型序列的实现 单位阶跃序列;实数指数序列;复数指数序列;正余弦序列;随机 序列用rand(1,N)和randn(1,N)来生成;
2.序列的运算 给定序列x1=[1 2 3 4 5 6 7 8 9], ns1=-4; x2=[9 8 7 6 5 4 3 2 1], ns2=4 求:1) x1+x2; 2) y3=x1×x2;
三、实验内容 IIR滤波器 给定IIR滤波器,求其典范型、级连型、并联型结构。 FIR滤波器 给定FIR滤波器,求其级连型、频率抽样型结构。
四、本实验用到的一些函数 求多项式的根:b=roots(a) 构造指定根的多项式:a=poly(b) 部分分式展开:[r1,p1,k]=residuez(b,a) [b,a]=residuez(r1,p1,k) 对复数进行重新排序:p1=cplxpair(p) 变直接形式为级联形式:[b0,B,A]=dir2cas(b,a) 滤波器的级联实现:y=casfiltr(b0,B,A,x) 变级联形式为直接形式:[b,a]=cas2dir(b0,B,A)
五、MATLAB编程和调试技巧 因为 MATLAB 语言是一种解释性语言,所以有时 MATLAB 程序的 执行速度不是很理想。因此尽量避免使用循环,用向量化的运算来代
替循环操作。 注意;的使用。
如果有的同学对MATLAB的使用不熟悉,请在老师处考取语言学习 PPT。 六、实验报告的要求 实验目的; 实验原理; 实验内容:要求有程序,有图形(坐标要标识清楚)。 实验结论。
实验二 离散时间傅立叶变换
一、实验目的 1.复习离散时间傅立叶正反变换 2.复习DTFT的两个重要特性 3.复习DTFT的其它特性 4.离散LTI系统的频率响应 5.采样及重构信号
二、实验原理 1、信号的离散时间傅立叶变换(DTFT) 2、DTFT的两个重要特性
周期性:离散时间傅立叶变换是w的周期函数,其周期为2π。 对称性:对于实值的X(n),是共扼对称的。即实部为偶对称,虚部为 奇对称。 3、DTFT的其他特性 线性; 时移: 共扼: 折叠: 卷积: 乘法: 能量: 4、LTI系统的频率响应
3) y1=0.5×x1+0.8×x2; 4) y2=0.3×x1(n)×δ(n-6)+0.8×δ(n-5)×x2(n); 5) x1和x2的反折序列; 6) x1(n)和x2(n)的功率; 7) y3=x1*x2 (线性卷积);
四、本实验用到的一些MATLAB函数 Stem(x,y),Plot(x,y): x轴和y轴均为线性刻度(Linear scale) Xlable (‘x’), Ylable(‘y’) Title(‘x’) axis([xmin,xmax,ymin,ymax]):调整图轴的范围 Subplot(x,y,z):同时画出数个小图形在同一视窗中。 Real(x):求复数x的实数部分; Imag(x):求复数x的虚数部分; Abs(x):求复数x的模; Angle(x):求复数x的相位; Conv(x,y):求x和y的卷积,注意下标是从1开始; Fliplr(x):信号反折; Fliter(b,a,x):差分方程的实现。
2、求出低通模拟原型滤波器后,再利用函数[z,p,k]=Buttap(n); [z,p,k]=Cheb1ap(n,Rp) 求出零极点型系统函数,然后可用函数zp2tf[bap,aap]=zp2tf(z,p,k)将其转化为b/a型 3、将模拟低通原型滤波器经频率变换为所要求的模拟滤波器(低通,
高通,带通,带阻)可用函数lp2lp,lp2hp,lp2bs, lp2bp。 [b,a]=lp2lp(bap,aap,wo) [b,a]=lp2bs(bap,aap,wo) 4、求出滤波器的幅频,相频及冲激响应。 [db,mag,pha,w]=freqs_m(b,a,Wmax)(见附录) [ha,x,t]=impulse(b,a)(matlab自带) 直接画出幅频特性和相频特性:freqs(b,a) (matlab自带) 例:wp=0.2*pi;Rp=1;ws=0.3*pi;As=15; [n,wn]=buttord(wp,ws,Rp,As,'s') [z,p,k]=buttap(n); [bap,aap]=zp2tf(z,p,k) [b,a]=lp2lp(bap,aap,wn); [db,mag,pha,w]=freqs_m(b,a,0.5*pi); [ha,x,t]=impulse(b,a); figure(1) subplot(2,2,1),plot(w/pi,mag);title('幅度'); subplot(2,2,2),plot(w/pi,db);title('幅度 in db');
2、FIR滤波器 FIR滤波器可表示为: 其差分方程为: 直接形式:可用函数filter来实现。 级联形式:
线性相位形式: 线性相位的条件: 可表示为:h(n)=h(M-1-n) 偶对称
h(n)=-h(M-1-n) 奇对称 频率取样形式: 冲激响应h(n)的M点DFT为H(k)则有: H(z)=Z[h(n)]=Z[IDFT(H(k))] 利用内插公式可得:
实验五 IIR数字滤波器的设计
一、模拟滤波器的设计 设滤波器的通带截止频率为wp,阻带截止频率为ws,通带衰减
为Rp,阻带衰减为As,通带波纹为Rp。 1、根据给定指标得出,利用函数buttord,cheb1ord,cheb2ord可以计算
出低通模拟原型滤波器的阶数和截止频率。 [n,wn]=buttord(wp,ws,Rp,As,’s’) [n,wn]=cheb1ord(wp,ws,Rp,As,’s’)
实验四 数字滤波器结构
一、实验目的 1.掌握IIR滤波器的三种结构(直接形式、级联形式、并联形式)及 其它们的互相转换。 2.掌握线性相位FIR滤波器的四种结构(横截形、级联形、线性相位 形、频率抽样形)及其它们互相转换。
二、实验原理 1、IIR滤波器
IIR滤波器可以写成:
其差分方程可表示为:
直接形式:可利用y=filter(B,A,x)直接实现。 级联形式: 并联形式:
subplot(2,2,3),plot(w/pi,pha/pi);title('相位'); subplot(2,2,4),plot(t,ha),title('冲激响应'); figure(2) freqs(b,a); 二、数字滤波器的设计
设滤波器的通带截止频率为Wp,止带截止频率为Ws,通带衰减为 Rp,止带衰减为As,通带波纹为Rp。 设计方法一: 1、根据给定指标得出,低通模拟原型滤波器的阶数和截止频率。可利 用函数buttord, cheb1ord,cheb2ord完成。
四、本实验用到的函数 有限长序列的DTFT:dtft(x,n,w)(该函数需自己编写) 算法:
用Matlab语言来实现: function [y]=dtft(x,n,w) y=x*(exp(-j).^(n'*w)); 五、实验报告的要求 实验目的; 实验原理; 实验内容:要求有程序,有图形(坐标要标识清楚)。 实验结论。
5、快速傅立叶变换(FFT) 在MATLAB中提供fft函数来计算x的DFT。 X=fft(x,N);
三、实验内容 1.离散傅立叶级数 给定有限长序列[1 2 3 4],延拓为周期N=6的周期序列,并求其 DFS。
2.求以下序列的N=16,32,64点的快速傅立叶变换 x(n)=exp(-i*pi/8*n);x2(n)=cos(pi/8*n);x3(n)=sin(pi/8*n) 3.利用DFT计算线性卷积 给定序列x1(n)=0.9^n,n=[0:11];h(n)=R9(n) 求x1(n)*h(n);x1(n) 与h(n)的10点圆周卷积。 四、本实验用到的一些函数 1.离散傅立叶级数:Xk=dfs(xn,N) 算法:
3、DFT的性质 线性性 循环折叠性 共轭性 时序列的对称性 序列的圆周移位 频域中的圆周移位 时域循环卷积 频域循环卷积 帕赛瓦尔定理
4、用DFT计算线性卷积 1)设x1(n)为N1点的序列,x2(n)为N2点的序列,则线性卷积的长度 为N1+ N2-1,而当其两者的圆周卷积的长度取为N1+N2-1时, 圆周卷积与线性卷积相等。 2)实际中,当x1(n)的长度远远大于和x2(n)的长度时,往往采用分 块卷积的方法,即重叠保留法和重叠相加法。
变直接形式为并联形式:[C,B,A]=dir2par(b,a) 滤波器的并联实现:y=parfiltr(b0,B,A,x) 变并联形式为直接形式:[b,a]=par2dir(C,B,A)
变h(n)值形式为频率取样形式:[C,B,A]=dir2fs(h)
五、实验报告的要求 实验目的; 实验原理; 实验内容:要求有程序,有图形(坐标要标识清楚)。 实验结论。
5、模拟信号的采样与重构 采样定理 重构: 步骤如下
(a)先把样本集转换成一个加权脉冲串列
(b)再将此脉冲串列通过一个带宽为F的低通滤波器进行滤波。 以上两个步骤可用插值公式来描述:
三、实验内容 1.求信号的离散时间傅立叶变换并分析其周期性和对称性; 给定正弦信号x(t)=2*cos(2*pi*10*t),fs=100HZ,求其DTFT。 2.用以下两个有限长序列来验证DTFT的线性、卷积和共轭特性; x1(n)=[1 2 3 4 5 6 7 8 9 10 11 12];x2(n)=R10(n) 3. 求LTI系统的频率响应 给定0256] B=[0.98997 0.989 0.98997],求系统的幅频响应和相频响应。 (要求使用filter(B,A,δ(n))求解。 4. 采样和频谱混叠 给定信号x(t)=100*exp(-100*t)*cos(2*pi*500*t),求该信号的频 谱;当采样频率分别为fs1=2000HZ,fs2=1000HZ;fs3=500HZ; fs4=200HZ,时输出序列的DTFT。