数字信号处理实验二 求线性时不变系统的输出

数字信号处理实验二 求线性时不变系统的输出
数字信号处理实验二 求线性时不变系统的输出

学生实验报告

开课学院及实验室: 电子楼317 2013年 3 月18 日

学院

机械与电气工程学院

年级、专业、班

姓名

学号 实验课程名称 数字信号处理实验

成绩 实验项目名称

实验二 求线性时不变系统的输出

指导老师

一、实验目的

1. 学习用递推法求解差分方程的方法。

2. 学习用线性卷积法求网络输出的方法。

二、实验原理

一般网络或系统用线性常系数差分方程描述,如果已知差分方程和输入信号,用递推法求解差分方程或者求网络输出,最适合用计算计求解。但要注意N 阶差分方程要预先给定N 个初始条件。下面用例子说明用递推法求解差分方程的方框图。例如一个二阶差分方程如下:

1201()(1)(2)()(1)y n a y n a y n b x n b x n =-+-++-

式中,系数1a 、2a 、 0b 、1b 为已知系数,()x n 是输入序列。设()x n 是因果序列,0)1(=-x ,从

0n =开始递推。当0n =时,

1201(0)(1)(2)(0)(1)y a y a y b x b x =-+-++- 120(1)(2)(0)a y a y b x =-+-+

式中,(1)y -和(2)y -是两个初始条件,要预先给定。这样求解网络输出的计算框图如图 2.1

所示。

图中,N 表示递推了N 步,即y (n )的长度。

如果用差分方程求系统的单位脉冲响应()h n ,也可以用上面的计算框图。因为()h n 是系统输入

()n δ时的零状态响应,因此计算框图中全部的初始条件为0,且()()x n n δ=。这样递推得到

()()y n h n =。

已知()h n 和输入()x n ,求系统输出()y n ,也可以用线性卷积法进行。线性卷积法的公式如下:

()()()y n x n h n =*

()()m x m h n m ∞

=-∞

=

-∑

图2.1 用递推法求解差分方程的框图

计算时,关键问题是根据()x n 和()h n 的特点,确定求和的上下限。例如,()0.9()n

h n u n =,

10()()x n R n =,卷积公式为

10()()0.9()n m m y n R m u n m ∞

-=-∞

=

-∑

根据上式中的10()R n ,限制非零区间为:09m ≤≤,由()u n 限制非零区间为:m n ≤。由上面的不等式知道m 的取值和n 有关,可以分几种情况: 当n <0时,

()0y n =

当0n ≤<9时,

0()0.9n

n m m y n -==∑

当9n ≥时,

9

()0.9n m m y n -==∑

最后得到:

再用计算机计算()y n 。

如果给定的()x n 和()h n 是一些离散数据,更方便的是用MATLAB 语言的数字信号工具箱函数conv 计算两个n 的取值从零开始的有限长序列的线性卷积。

三、使用仪器、材料

1、硬件:计算机

2、软件:Matlab

四、实验步骤

1.已知系统的差分方程如式:()0.9(1)()

y n y n x n =-+

(1) 输入信号=10()()x n R n =,初始条件(1)1y -=,求解输出()y n ; (2) 输入信号=

10()()

x n R n =,初始条件(1)0y -=,求解输出()y n 。

2.已知系统差分方程为 ()0.9(1)()y n y n x n =-+ 求解系统的单位脉冲响应()h n ,并打印()~h n n 曲线。

3.已知系统的单位脉冲响应

()0.9()n

h n u n =,输入信号10()()x n R n =,试用卷积法求解系统输出()y n ,并打印()y n ~n 曲线。

五、实验过程原始记录(数据、图表、计算等)

1.(1)程序为:

a=0.9; %差分方程系数a=0.9 ys=1; %初始状态:y(-1)=1

xn=[ones(1,10),zeros(1,20)]; %矩形序列 B=1; %差分方程系数 A=[1,-a];

xi=filtic(B,A,ys); %等效初始条件的输入序列

yn=filter(B,A,xn,xi); %调用filter 函数解差分方程,求系统输出信号y(n) n=0:length(yn)-1; %位置向量设定 stem(n,yn,'.'); xlabel('n'); ylabel('y(n)')

510

15202530

01

2

3

4

5

6

7

n

y (n )

(2)程序为:

a=0.9; %差分方程系数a=0.9 ys=0; %初始状态:y(-1)=0

xn=[ones(1,10),zeros(1,20)]; %矩形序列 B=1; %差分方程系数 A=[1,-a];

xi=filtic(B,A,ys); %等效初始条件的输入序列

yn=filter(B,A,xn,xi); %调用filter 函数解差分方程,求系统输出信号y(n) n=0:length(yn)-1; %位置向量设定 stem(n,yn,'.'); xlabel('n'); ylabel('y(n)')

数字信号处理基础实验指导书

《数字信号处理》实验指导书 光电工程学院二○○九年十月

实验一离散时间信号分析 一、实验目的 1.掌握各种常用的序列,理解其数学表达式和波形表示。 2.掌握在计算机中生成及绘制数字信号波形的方法。 3.掌握序列的相加、相乘、移位、反转等基本运算及计算机实现与作用。 4.掌握线性卷积软件实现的方法。 5.掌握计算机的使用方法和常用系统软件及应用软件的使用。 6.通过编程,上机调试程序,进一步增强使用计算机解决问题的能力。 二、实验原理 1.序列的基本概念 离散时间信号在数学上可用时间序列来表示,其中代表序列的第n个数字,n代表时间的序列,n的取值范围为的整数,n取其它值没有意义。离散时间信号可以是由模拟信号通过采样得到,例如对模拟信号进行等间隔采样,采样间隔为T,得到一个有序的数字序列就是离散时间信号,简称序列。 2.常用序列 常用序列有:单位脉冲序列(单位抽样)、单位阶跃序列、矩形序列、实指数序列、复指数序列、正弦型序列等。 3.序列的基本运算 序列的运算包括移位、反转、和、积、标乘、累加、差分运算等。 4.序列的卷积运算 上式的运算关系称为卷积运算,式中代表两个序列卷积运算。两个序列的卷积是一个序列与另一个序列反褶后逐次移位乘积之和,故称为离散卷积,也称两序列的线性卷积。其计算的过程包括以下4个步骤。 (1)反褶:先将和的变量换成,变成和,再将以纵轴为对称轴反褶成。 (2)移位:将移位,得。当为正数时,右移位;当为负数时,左

移位。 (3)相乘:将和的对应点值相乘。 (4)求和:将以上所有对应点的乘积累加起来,即得。 三、主要实验仪器及材料 微型计算机、Matlab软件6.5或更高版本。 四、实验内容 1.知识准备 认真复习以上基础理论,理解本实验所用到的实验原理。 2.离散时间信号(序列)的产生 利用MATLAB或C语言编程产生和绘制下列有限长序列: (1)单位脉冲序列 (2)单位阶跃序列 (3)矩形序列 (4)正弦型序列 (5)任意序列 3.序列的运算 利用MATLAB编程完成上述两序列的移位、反转、加法、乘法等运算,并绘制运算后序列的波形。 4.卷积运算 利用MATLAB编制一个计算两个序列线性卷积的通用程序,计算上述两序列,并绘制卷积后序列的波形。 5.上机调试并打印或记录实验结果。 6.完成实验报告。 五、实验报告要求 1. 简述实验原理及目的。 2. 给出上述序列的实验结果。 3. 列出计算卷积的公式,画出程序框图,并列出实验程序清单 (可略)(包括必要的程序说明)。 4. 记录调试运行情况及所遇问题的解决方法。 5. 给出实验结果,并对结果做出分析。 6. 简要回答思考题。 1 如何产生方波信号序列和锯齿波信号序列? 2 实验中所产生的正弦序列的频率是多少?是否是周期序列?

数字信号处理实验一

实验一 离散时间信号分析 班级 信息131班 学号 201312030103 姓名 陈娇 日期 一、实验目的 掌握两个序列的相加、相乘、移位、反褶、卷积等基本运算。 二、实验原理 1.序列的基本概念 离散时间信号在数学上可用时间序列)}({n x 来表示,其中)(n x 代表序列的第n 个数字,n 代表时间的序列,n 的取值范围为+∞<<∞-n 的整数,n 取其它值)(n x 没有意义。离散时间信号可以是由模拟信号通过采样得到,例如对模拟信号)(t x a 进行等间隔采样,采样间隔为T ,得到)}({nT x a 一个有序的数字序列就是离散时间信号,简称序列。 2.常用序列 常用序列有:单位脉冲序列(单位抽样)) (n δ、单位阶跃序列)(n u 、矩形序列)(n R N 、实指数序列、复指数序列、正弦型序列等。 3.序列的基本运算 序列的运算包括移位、反褶、和、积、标乘、累加、差分运算等。 4.序列的卷积运算 ∑∞ -∞==-= m 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 。 三、主要实验仪器及材料 微型计算机、Matlab6.5 教学版、TC 编程环境。 四、实验内容 (1)用Matlab 或C 语言编制两个序列的相加、相乘、移位、反褶、卷积等的程序; (2)画出两个序列运算以后的图形; (3)对结果进行分析; (4)完成实验报告。 五、实验结果 六、实验总结

数字信号处理实验一

一、实验目的 1. 通过本次实验回忆并熟悉MATLAB这个软件。 2. 通过本次实验学会如何利用MATLAB进行序列的简单运算。 3. 通过本次实验深刻理解理论课上的数字信号处理的一个常见方法——对时刻n的样本附近的一些样本求平均,产生所需的输出信号。 3. 通过振幅调制信号的产生来理解载波信号与调制信号之间的关系。 二、实验内容 1. 编写程序在MATLAB中实现从被加性噪声污染的信号中移除噪声的算法,本次试验采用三点滑动平均算法,可直接输入程序P1.5。 2. 通过运行程序得出的结果回答习题Q1.31-Q1.33的问题,加深对算法思想的理解。 3. 编写程序在MATLAB中实现振幅调制信号产生的算法,可直接输入程序P1.6。 4. 通过运行程序得出的结果回答习题Q1.34-Q1.35的问题,加深对算法思想的理解。 三、主要算法与程序 1. 三点滑动平均算法的核心程序: %程序P1.5 %通过平均的信号平滑 clf; R=51; d=0.8*(rand(R,1)-0.5);%产生随噪声 m=0:R-1; s=2*m.*(0.9.^m);%产生为污染的信号 x=s+d';%产生被噪音污染的信号 subplot(2,1,1); plot(m,d','r-',m,s,'g--',m,x,'b-.');

xlabel('时间序号n');ylabel('振幅'); legend('d[n]','s[n]','x[n]'); x1=[0 0 x];x2=[0 x 0];x3=[x 0 0]; y=(x1+x2+x3)/3; subplot(2,1,2); plot(m,y(2:R+1),'r-',m,s,'g--'); legend('y[n]','s[n]'); xlabel('时间序号n');ylabel('振幅'); 2. 振幅调制信号的产生核心程序:(由于要几个结果,因此利用subplot函数画图) %程序P1.6 %振幅调制信号的产生 n=0:100; m=0.1;fH=0.1;fL=0.01; m1=0.3;fH1=0.3;fL1=0.03; xH=sin(2*pi*fH*n); xL=sin(2*pi*fL*n); y=(1+m*xL).*xH; xH1=sin(2*pi*fH1*n); xL1=sin(2*pi*fL1*n); y1=(1+m1*xL).*xH; y2=(1+m*xL).*xH1; y3=(1+m*xL1).*xH; subplot(2,2,1); stem(n,y); grid; xlabel('时间序号n');ylabel('振幅');title('m=0.1;fH=0.1;fL=0.01;'); subplot(2,2,2); stem(n,y1); grid; xlabel('时间序号n');ylabel('振幅');title('m=0.3;fH=0.1;fL=0.01;'); subplot(2,2,3); stem(n,y2); grid; xlabel('时间序号n');ylabel('振幅');title('m=0.3;fH=0.3;fL=0.01;'); subplot(2,2,4); stem(n,y3); grid;

数字信号处理实验

实验一 离散傅里叶变换(DFT )对确定信号进行谱分析 一.实验目的 1.加深对DFT 算法原理和基本性质的理解。 2.熟悉DFT 算法和原理的编程方法。 3.学习用DFT 对信号进行谱分析的方法,了解可能出现的误差及其原因,以便在实际中正确利用。 二.实验原理 一个连续信号)(t x a 的频谱可以用其傅里叶变换表示,即 dt e t x j X t j a a Ω-∞ ∞ -? = Ω)()( 若对)(t x a 进行理想采样可得采样序列 )(|)()(nT x t x n x a nT t a === 对)(n x 进行DTFT ,可得其频谱为: ∑∞ -∞ =-= n n j j e n x e X ωω )()( 其中数字频率ω与模拟频率Ω的关系为: s f T Ω = Ω=ω )(n x 的DFT 为∑∞ -∞ =-= n nk N j e n x k X π 2)()( 若)(t x a 是限带信号,且在满足采样定理的条件下,)(ω j e X 是)(Ωj X a 的周期延拓, )(k X 是)(ωj e X 在单位圆上的等间隔采样值,即k N j e X k X πωω2| )()(= =。 为在计算机上分析计算方便,常用)(k X 来近似)(ω j e X ,这样对于长度为N 的有限 长序列(无限长序列也可用有限长序列来逼近),便可通过DFT 求其离散频谱。 三.实验内容 1.用DFT 对下列序列进行谱分析。 (1))()04.0sin(3)(100n R n n x π=

1 (2)]0,0,0,0,0,0,0,0,1,1,1,1[)(=n x 2.为了说明高密度频谱和高分辨率频谱之间的区别,考察序列 )52.0cos()48.0cos()(n n n x ππ+= (1)当0≤n ≤10时,确定并画出x(n)的离散傅里叶变换。 (2)当0≤n ≤100时,确定并画出x(n)的离散傅里叶变换。 四.实验结果 1. (1) (2)

数字信号处理实验二

实验报告(本科) 学号 2015141443002 姓名柏冲 专业通信工程 日期 2017/12/4 实验题目时域采样和频域采样 一、实验目的

时域采样理论与频域采样理论是数字信号处理中重要的理论。要求掌握模拟信号采样前后频谱的变化,以及如何选择采样频率才能使得采样后的信号不丢失信息;要求掌握频率采样会引起时域周期化的概念,以及频域采样定理及其对频域采样点数选择的指导作用。 二、实验过程 附:源程序 (1)时域采样 Tp=64/1000; %观察时间Tp=64毫秒 %产生M长采样序列x(n) Fs=1000; T=1/Fs; M=Tp*Fs; n=0:M-1; A=444.128; a=pi*50*2^0.5; omega=pi*50*2^0.5; xnt=A*exp(-a*n*T).*sin(omega*n*T); Xk=T*fft(xnt,M); %M点FFT[(xnt)] subplot(3,2,1); stem(xnt,'.'); %调用编绘图函数stem绘制序列图 box on;title('(a) Fs=1000Hz'); k=0:M-1;fk=k/Tp; subplot(3,2,2);stem(fk,abs(Xk),'.');title('(a) T*FT[xa(nT)],Fs=1000Hz'); xlabel('f(Hz)');ylabel('幅度');axis([0,Fs,0,1.2*max(abs(Xk))]); % Fs=300Hz和 Fs=200Hz的程序与上面Fs=1000Hz完全相同。 Tp=64/1000; %观察时间Tp=64毫秒 %产生M长采样序列x(n) Fs=300; T=1/Fs; M=Tp*Fs; n=0:M-1; A=444.128; a=pi*50*2^0.5; omega=pi*50*2^0.5; xnt=A*exp(-a*n*T).*sin(omega*n*T); M1=fix(M); Xk=T*fft(xnt,M1); %M点FFT[(xnt)] subplot(3,2,3); stem(xnt,'.'); %调用自编绘图函数stem绘制序列图 box on;title('(b) Fs=300Hz'); k=0:M-1;fk=k/Tp; subplot(3,2,4);stem(fk,abs(Xk),'.');title('(b) T*FT[xa(nT)],Fs=300Hz'); xlabel('f(Hz)');ylabel('幅度');axis([0,Fs,0,1.2*max(abs(Xk))]); Tp=64/1000; %观察时间Tp=64毫秒 %产生M长采样序列x(n) Fs=200; T=1/Fs; M=Tp*Fs; n=0:M-1; A=444.128; a=pi*50*2^0.5; omega=pi*50*2^0.5; xnt=A*exp(-a*n*T).*sin(omega*n*T); M2=fix(M);

数字信号处理实验答案完整版

数字信号处理实验答案 HEN system office room 【HEN16H-HENS2AHENS8Q8-HENH1688】

实验一熟悉Matlab环境 一、实验目的 1.熟悉MATLAB的主要操作命令。 2.学会简单的矩阵输入和数据读写。 3.掌握简单的绘图命令。 4.用MATLAB编程并学会创建函数。 5.观察离散系统的频率响应。 二、实验内容 认真阅读本章附录,在MATLAB环境下重新做一遍附录中的例子,体会各条命令的含义。在熟悉了MATLAB基本命令的基础上,完成以下实验。 上机实验内容: (1)数组的加、减、乘、除和乘方运算。输入A=[1 2 3 4],B=[3 4 5 6],求C=A+B,D=A-B,E=A.*B,F=A./B,G=A.^B并用stem语句画出A、B、C、D、E、F、G。 clear all; a=[1 2 3 4]; b=[3 4 5 6]; c=a+b; d=a-b; e=a.*b; f=a./b; g=a.^b; n=1:4; subplot(4,2,1);stem(n,a); xlabel('n');xlim([0 5]);ylabel('A'); subplot(4,2,2);stem(n,b); xlabel('n');xlim([0 5]);ylabel('B'); subplot(4,2,3);stem(n,c); xlabel('n');xlim([0 5]);ylabel('C'); subplot(4,2,4);stem(n,d); xlabel('n');xlim([0 5]);ylabel('D'); subplot(4,2,5);stem(n,e); xlabel('n');xlim([0 5]);ylabel('E'); subplot(4,2,6);stem(n,f); xlabel('n');xlim([0 5]);ylabel('F'); subplot(4,2,7);stem(n,g); xlabel('n');xlim([0 5]);ylabel('G'); (2)用MATLAB实现下列序列: a) x(n)= 0≤n≤15 b) x(n)=e+3j)n 0≤n≤15 c) x(n)=3cosπn+π)+2sinπn+π) 0≤n≤15 d) 将c)中的x(n)扩展为以16为周期的函数x(n)=x(n+16),绘出四个周期。

数字信号处理实验三

实验三:离散LSI 系统的频域分析 一、实验内容 2、求以下各序列的z 变换: 12030() ()sin() ()sin()n an x n na x n n x n e n ωω-=== 程序清单如下: syms w0 n z a; x1=n*a^n;X1=ztrans(x1) x2=sin(w0*n);X2=ztrans(x2) x3= exp(-a*n)*sin(w0*n);X3=ztrans(x3) 程序运行结果如下: X1 =z/(a*(z/a - 1)^2) X2 =(z*sin(w0))/(z^2 - 2*cos(w0)*z + 1) X3 =(z*exp(a)*sin(w0))/(exp(2*a)*z^2 - 2*exp(a)*cos(w0)*z + 1) 3、求下列函数的逆z 变换 0 312342 1 1() () () ()() 1j z z z z X z X z X z X z z a z a z e z ω---= = = = ---- 程序清单如下: syms w0 n z a; X1=z/(z-a);x1=iztrans(X1) X2= z/(a-z)^2;x2=iztrans(X2) X3=z/ z-exp(j*w0);x3=iztrans(X3) X4=(1-z^-3)/(1-z^-1);x4=iztrans(X4) 程序运行结果如下: x1 =a^n x2 =n*a^n/a 课程名称 数字信号 实验成绩 指导教师 实 验 报 告 院系 信息工程学院 班级 学号 姓名 日期

x3 =charfcn[0](n)-iztrans(exp(i*w0),w0,n) x4 =charfcn[2](n)+charfcn[1](n)+charfcn[0](n) 4、求一下系统函数所描述的离散系统的零极点分布图,并判断系统的稳定性 (1) (0.3)()(1)(1) z z H z z j z j -= +-++ z1=[0,0.3]';p1=[-1+j,-1-j]';k=1; [b1,a1]=zp2tf(z1,p1,k); subplot(1,2,1);zplane(z1,p1); title('极点在单位圆外); subplot(1,2,2);impz(b1,a1,20); 由图可见:当极点位于单位圆内,系统的单位序列响应随着频率的增大而收敛;当极点位于单位圆上,系统的单位序列响应为等幅振荡;当极点位于单位圆外,系统的单位序列响应随着频率的增大而发散。由此可知系统为不稳定系统。 -1 -0.5 00.51 -2 -1.5-1-0.500.511.5 2Real Part I m a g i n a r y P a r t 极点在单位圆外 n (samples) A m p l i t u d e Impulse Response

数字信号处理实验报告一

武汉工程大学 数字信号处理实验报告 姓名:周权 学号:1204140228 班级:通信工程02

一、实验设备 计算机,MATLAB语言环境。 二、实验基础理论 1.序列的相关概念 2.常见序列 3.序列的基本运算 4.离散傅里叶变换的相关概念 5.Z变换的相关概念 三、实验内容与步骤 1.离散时间信号(序列)的产生 利用MATLAB语言编程产生和绘制单位样值信号、单位阶跃序列、指数序列、正弦序列及随机离散信号的波形表示。 四实验目的 认识常用的各种信号,理解其数字表达式和波形表示,掌握在计算机中生成及绘制数字信号波形的方法,掌握序列的简单运算及计算机实现与作用,理解离散时间傅里叶变换,Z变换及它们的性质和信号的频域分

实验一离散时间信号(序列)的产生 代码一 单位样值 x=2; y=1; stem(x,y); title('单位样值 ') 单位阶跃序列 n0=0; n1=-10; n2=10; n=[n1:n2]; x=[(n-n0)>=0]; stem(n,x); xlabel('n'); ylabel('x{n}'); title('单位阶跃序列');

实指数序列 n=[0:10]; x=(0.5).^n; stem(n,x); xlabel('n'); ylabel('x{n}'); title('实指数序列');

正弦序列 n=[-100:100]; x=2*sin(0.05*pi*n); stem(n,x); xlabel('n'); ylabel('x{n}'); title('正弦序列');

随机序列 n=[1:10]; x=rand(1,10); subplot(221); stem(n,x); xlabel('n'); ylabel('x{n}'); title('随机序列');

实验一 基于Matlab的数字信号处理基本

实验一 基于Matlab 的数字信号处理基本操作 一、 实验目的:学会运用MA TLAB 表示的常用离散时间信号;学会运用MA TLAB 实现离 散时间信号的基本运算。 二、 实验仪器:电脑一台,MATLAB6.5或更高级版本软件一套。 三、 实验内容: (一) 离散时间信号在MATLAB 中的表示 离散时间信号是指在离散时刻才有定义的信号,简称离散信号,或者序列。离散序列通常用)(n x 来表示,自变量必须是整数。 离散时间信号的波形绘制在MATLAB 中一般用stem 函数。stem 函数的基本用法和plot 函数一样,它绘制的波形图的每个样本点上有一个小圆圈,默认是空心的。如果要实心,需使用参数“fill ”、“filled ”,或者参数“.”。由于MATLAB 中矩阵元素的个数有限,所以MA TLAB 只能表示一定时间范围内有限长度的序列;而对于无限序列,也只能在一定时间范围内表示出来。类似于连续时间信号,离散时间信号也有一些典型的离散时间信号。 1. 单位取样序列 单位取样序列)(n δ,也称为单位冲激序列,定义为 ) 0() 0(0 1)(≠=?? ?=n n n δ 要注意,单位冲激序列不是单位冲激函数的简单离散抽样,它在n =0处是取确定的值1。在MATLAB 中,冲激序列可以通过编写以下的impDT .m 文件来实现,即 function y=impDT(n) y=(n==0); %当参数为0时冲激为1,否则为0 调用该函数时n 必须为整数或整数向量。 【实例1-1】 利用MATLAB 的impDT 函数绘出单位冲激序列的波形图。 解:MATLAB 源程序为 >>n=-3:3; >>x=impDT(n); >>stem(n,x,'fill'),xlabel('n'),grid on >>title('单位冲激序列') >>axis([-3 3 -0.1 1.1]) 程序运行结果如图1-1所示。 图1-1 单位冲激序列

数字信号处理实验4

数字信号处理实验四 第一题结果: (1)没有增加过渡点 源码如下: N = 15; H = [1 1 1 0.5 zeros(1,7) 0.5 1 1 1]; %确定抽样点的幅度大小 %H(3,13) = 0.75;H(5,11) = 0.25; %设置过渡点 k = 0:N-1; A = exp(-j*pi*k*(N-1)/N); %抽样点相位大小 HK = H.*A; %求抽样点的H(k) hn = ifft(HK,N); %求出FIR的单位冲激响应h(n) freqz(hn,1,256); %画出幅频相频曲线figure(2); stem(real(hn),'.'); %绘制单位冲激响应的实部 line([0,35],[0,0]);xlabel('n');ylabel('Real(h(n))'); 单位脉冲响应曲线 幅频和相频特性曲线

(2)增加过渡点 源码如下: N = 15; H = [1 1 1 0.5 zeros(1,7) 0.5 1 1 1]; %确定抽样点的幅度大小 H(3) = 0.75;H(13) = 0.75;H(5) = 0.25;H(11) = 0.25; %设置过渡点 k = 0:N-1; A = exp(-j*pi*k*(N-1)/N); %抽样点相位大小 HK = H.*A; %求抽样点的H(k) hn = ifft(HK,N); %求出FIR的单位冲激响应h(n) freqz(hn,1,256); %画出幅频相频曲线figure(2); stem(real(hn),'.'); %绘制单位冲激响应的实部 line([0,35],[0,0]);xlabel('n');ylabel('Real(h(n))'); 单位脉冲响应曲线 幅频和相频特性曲线 第二题结果:

数字信号处理基础实验报告_

本科生实验报告 实验课程数字信号处理基础 学院名称地球物理学院 专业名称地球物理学 学生姓名 学生学号 指导教师王山山 实验地点5417 实验成绩 二〇一四年十一月二〇一四年十二月

填写说明 1、适用于本科生所有的实验报告(印制实验报告册除外); 2、专业填写为专业全称,有专业方向的用小括号标明; 3、格式要求: ①用A4纸双面打印(封面双面打印)或在A4大小纸上用蓝黑色水笔书写。 ②打印排版:正文用宋体小四号,1.5倍行距,页边距采取默认形式(上下2.54cm, 左右2.54cm,页眉1.5cm,页脚1.75cm)。字符间距为默认值(缩放100%,间距:标准);页码用小五号字底端居中。 ③具体要求: 题目(二号黑体居中); 摘要(“摘要”二字用小二号黑体居中,隔行书写摘要的文字部分,小4号宋体); 关键词(隔行顶格书写“关键词”三字,提炼3-5个关键词,用分号隔开,小4号黑体); 正文部分采用三级标题; 第1章××(小二号黑体居中,段前0.5行) 1.1 ×××××小三号黑体×××××(段前、段后0.5行) 1.1.1小四号黑体(段前、段后0.5行) 参考文献(黑体小二号居中,段前0.5行),参考文献用五号宋体,参照《参考文献著录规则(GB/T 7714-2005)》。

实验一生成离散信号并计算其振幅谱 并将信号进行奇偶分解 一、实验原理 单位脉冲响应h(t)=exp(-a*t*t)*sin(2*3.14*f*t)进行离散抽样,分别得到t=0.002s,0.009s,0.011s采样的结果。用Excel软件绘图显示计算结果。并将信号进行奇偶分解,分别得到奇对称信号h(n)-h(-n)与偶对称信号h(n)+h(-n)。用Excel 软件绘图显示计算结果。 二、实验程序代码 (1)离散抽样 double a,t; a=2*f*f*log(m); int i; for(i=0;i

数字信号处理基础实验报告 (2)

成都理工大学 《信号处理基础》实验 开设时间:2013—2014学年第2学期

题目1:信号的产生和显示 一、实验目的: 认识基本信号 通过使用MATLAB 设计简单程序, 掌握对MATLAB 的基本使用方法 二、实验原理: 找出下列表达式的信号与:正弦信号、最小相位信号、最大相位信号、零相位信号的对应关系。 1、sin60t 2、e-60t sin60t 3、(1- e-60t)sin60t 4、e60t sin60t 三、实验内容: 产生上述信号的信号并显示 (1)t=[-pi/30:0.001:pi/30]; f=sin(60*t); plot(t,f) 产生图形如下:

(2)t=[0:0.001:pi/30]; f=exp(-60*t).*sin(60*t); plot(t,f) 产生图形如下:

(3)t=[-5*pi/30:0.001:5*pi/30]; f=(1-exp(-60*t)).*sin(60*t); plot(t,f) 产生图形如下: (4) t=[-pi/30:0.001:pi/30]; f=exp(6*t).*sin(60*t); plot(t,f) 产生如下波形:

四、实验结果与讨论: 讨论上述信号的特点 从第一个波形图可以看出,它的波形与正弦函数sin(t)的相像,只是相位上有改变,是一个正弦信号。最大相位信号的能量集中在后面,最小相位能量集中在前面,所以第二个是一个最小相位,第四个是一个最大相位信号。第三个由于波形在t>0时没有,所以是一个零相位信号。 题目2:频谱分析与显示 一、实验目的 初步认识频谱分析

数字信号处理上机实验答案完整版

数字信号处理上机实验 答案 HEN system office room 【HEN16H-HENS2AHENS8Q8-HENH1688】

第十章上机实验 数字信号处理是一门理论和实际密切结合的课程,为深入掌握课程内容,最好在学习理论的同时,做习题和上机实验。上机实验不仅可以帮助读者深入的理解和消化基本理论,而且能锻炼初学者的独立解决问题的能力。本章在第二版的基础上编写了六个实验,前五个实验属基础理论实验,第六个属应用综合实验。 实验一系统响应及系统稳定性。 实验二时域采样与频域采样。 实验三用FFT对信号作频谱分析。 实验四 IIR数字滤波器设计及软件实现。 实验五 FIR数字滤波器设计与软件实现 实验六应用实验——数字信号处理在双音多频拨号系统中的应用 任课教师根据教学进度,安排学生上机进行实验。建议自学的读者在学习完第一章后作实验一;在学习完第三、四章后作实验二和实验三;实验四IIR数字滤波器设计及软件实现在。学习完第六章进行;实验五在学习完第七章后进行。实验六综合实验在学习完第七章或者再后些进行;实验六为综合实验,在学习完本课程后再进行。 functiontstem(xn,yn) %时域序列绘图函数 %xn:信号数据序列,yn:绘图信号的纵坐标名称(字符串) n=0:length(xn)-1; stem(n,xn,'.');boxon xlabel('n');ylabel(yn); axis([0,n(end),min(xn),*max(xn)]) 实验一: 系统响应及系统稳定性 1.实验目的 (1)掌握求系统响应的方法。 (2)掌握时域离散系统的时域特性。 (3)分析、观察及检验系统的稳定性。 2.实验原理与方法 在时域中,描写系统特性的方法是差分方程和单位脉冲响应,在频域可以用系统函数描述系统特性。已知输入信号可以由差分方程、单位脉冲响应或系统函数求出系统对于该输入信号的响应,本实验仅在时域求解。在计算机上适合用递推法求差分方程的解,最简单的方法是采用MATLAB语言的工具箱函数filter函数。也可

数字信号处理实验八

实验报告 实验名称:FIR数字滤波器设计及应用 课程名称____数字信号处理________ 院系部:电气与电子工程专业班级:信息1002 学生姓名:王萌学号: 11012000219同组人:实验台号: 指导教师:范杰清成绩: 实验日期: 华北电力大学

一、实验目的 加深理解 FIR 数字滤波器的时域特性和频域特性,掌握FIR 数字 滤波器的设计原理与设计方法,以及FIR 数字滤波器的应用。 二、 实验原理 FIR 数字滤波器可以设计成具有线性相位,在数据通信、图像处理、 语音信号处理等实际应用领域得到广泛应用。 M 阶FIR 数字滤波器的系统函数为: FIR 数字滤波器的单位脉冲响应h [k ]是长度为M +1的有限长因果序列。当满足对称条件时,该FIR 数字滤波器具有线性相位。FIR 数字滤波器设计方法主要有窗口法、频率取样法及优化设计法。 MATLAB 中提供的常用FIR 数字滤波器设计函数有: fir1 窗函数法设计FIR 数字滤波器(低通、高通、带通、 带阻、多频带滤波器) fir2 频率取样法设计FIR 数字滤波器:任意频率响应 firls FIR 数字滤波器设计:指定频率响应 firrcos 升余弦型 FIR 数字滤波器设计 intfilt 内插FIR 数字滤波器设计 kaiserord 凯塞(Kaiser)窗函数设计法的阶数估计 firpm Parks-McClellan 算法实现FIR 数字滤波器优化设计 firpmord Parks-McClellan 数字滤波器的阶数选择 cremez 复系数非线性相位FIR 等波纹滤波器设计 1、 窗口法设计FIR 数字滤波器 fir1函数可以很容易地实现FIR 数字滤波器窗口法设计。 可设计低通、高通、带通、带阻滤波器、多频带滤波器。 k M k z k h z H -=∑=][)(0

数字信号处理实验二

实验二离散时间系统的时域分析实验室名称: 实验时间:

六、实验记录(数据、图表、波形、程序等) Q2、1 程序代码: %产生输入信号 n = 0:100; s1 = cos(2*pi*0、05*n); %一个低频正弦 s2 = cos(2*pi*0、47*n); %一个高频正弦 x = s1+s2; %滑动平均滤波器的实现 M = input('Desired length of the filter = '); num = ones(1,M); y = filter(num,1,x)/M; clf; %显示输入与输出信号 subplot(2,2,1); plot(n, s1); axis([0, 100, -2, 2]); xlabel('Time index n'); ylabel('Amplitude'); title('Signal #1'); subplot(2,2,2); plot(n, s2); axis([0, 100, -2, 2]); xlabel('Time index n'); ylabel('Amplitude'); title('Signal #2'); subplot(2,2,3); plot(n, x); axis([0, 100, -2, 2]); xlabel('Time index n'); ylabel('Amplitude'); title('Input Signal'); subplot(2,2,4); plot(n, y); axis([0, 100, -2, 2]); xlabel('Time index n'); ylabel('Amplitude'); title('Output Signal'); axis; 显示结果:

数字信号处理 实验一

数字信号处理实验一 序列的绘图 一、实验目的: 1.了解MATLAB的实验环境; 2.充分熟悉subplot函数的使用; 3.能够画出单位脉冲序列及单位阶跃序列的图形; 4.能够画出矩形序列及正弦序列的图形。 二、实验步骤: 1.打开MATLAB,了解三个区域(工作区、命令区、历史记录区)的作用; 2.用help查找subplot函数的使用情况; 3.编辑并生成函数impseq.m(单位脉冲序列) function [x,n] = impseq(n0,n1,n2) % 产生 x(n) = delta(n-n0); n1 <= n,n0 <= n2 % [x,n] = impseq(n0,n1,n2) if ((n0 < n1) | (n0 > n2) | (n1 > n2)) error('参数必须满足 n1 <= n0 <= n2') end n = [n1:n2]; %x = [zeros(1,(n0-n1)), 1, zeros(1,(n2-n0))]; x = [(n-n0) == 0]; 以及函数stepseq.m(单位阶跃序列) function [x,n] = stepseq(n0,n1,n2) % 产生 x(n) = u(n-n0); n1 <= n0 <= n2 % [x,n] = stepseq(n0,n1,n2) if ((n0 < n1) | (n0 > n2) | (n1 > n2)) error('参数必须满足n1 <= n0 <= n2') end n = [n1:n2]; %x = [zeros(1,(n0-n1)), ones(1,(n2-n0+1))]; x = [(n-n0) >= 0]; 主函数test1.m n=[-5:5];

数字信号处理实验报告(全)

实验一、离散时间系统及离散卷积 1、单位脉冲响应 源程序: function pr1() %定义函数pr1 a=[1,-1,0.9]; %定义差分方程y(n)-y(n-1)+0.9y(n-2)=x(n) b=1; x=impseq(0,-40,140); %调用impseq函数 n=-40:140; %定义n从-40 到140 h=filter(b,a,x); %调用函数给纵座标赋值 figure(1) %绘图figure 1 (冲激响应) stem(n,h); %在图中绘出冲激 title('冲激响应'); %定义标题为:'冲激响应' xlabel('n'); %绘图横座标为n ylabel('h(n)'); %绘图纵座标为h(n) figure(2) %绘图figure 2 [z,p,g]=tf2zp(b,a); %绘出零极点图 zplane(z,p) function [x,n]=impseq(n0,n1,n2)%声明impseq函数 n=[n1:n2]; x=[(n-n0)==0]; 结果: Figure 1: Figure 2:

2、离散系统的幅频、相频的分析 源程序: function pr2() b=[0.0181,0.0543,0.0543,0.0181]; a=[1.000,-1.76,1.1829,-0.2781]; m=0:length(b)-1; %m从0 到3 l=0:length(a)-1; %l从0 到3 K=5000; k=1:K; w=pi*k/K; %角频率w H=(b*exp(-j*m'*w))./(a*exp(-j*l'*w));%对系统函数的定义 magH=abs(H); %magH为幅度 angH=angle(H); %angH为相位 figure(1) subplot(2,1,1); %在同一窗口的上半部分绘图 plot(w/pi,magH); %绘制w(pi)-magH的图形 grid; axis([0,1,0,1]); %限制横纵座标从0到1 xlabel('w(pi)'); %x座标为 w(pi) ylabel('|H|'); %y座标为 angle(H) title('幅度,相位响应'); %图的标题为:'幅度,相位响应' subplot(2,1,2); %在同一窗口的下半部分绘图 plot(w/pi,angH); %绘制w(pi)-angH的图形 grid; %为座标添加名称

数字信号处理实验答案

第十章上机实验 数字信号处理是一门理论和实际密切结合的课程,为深入掌握课程内容,最好在学习理论的同时,做习题和上机实验。上机实验不仅可以帮助读者深入的理解和消化基本理论,而且能锻炼初学者的独立解决问题的能力。本章在第二版的基础上编写了六个实验,前五个实验属基础理论实验,第六个属应用综合实验。 实验一系统响应及系统稳定性。 实验二时域采样与频域采样。 实验三用 FFT 对信号作频谱分析。 实验四 IIR 数字滤波器设计及软件实现。 实验五 FIR 数字滤波器设计与软件实现 实验六应用实验——数字信号处理在双音多频拨号系统中的应用 任课教师根据教学进度,安排学生上机进行实验。建议自学的读者在学习完第一章后作实验一;在学习完第三、四章后作实验二和实验三;实验四 IIR 数字滤波器设计及软件实现在。学习完第六章进行;实验五在学习完第七章后进行。实验六综合实验在学习完第七章或者再后些进行;实验六为综合实验,在学习完本课程后再进行。 10.1 实验一 : 系统响应及系统稳定性 1.实验目的 (1 )掌握求系统响应的方法。 (2 )掌握时域离散系统的时域特性。 (3 )分析、观察及检验系统的稳定性。

在频域可以用系统函数描述系 2.实验原理与方法 在时域中, 描写系统特性的方法是差分方程和单位脉冲响应, 统特性。 已知输入信号可以由差分方程、 单位脉冲响应或系统函数 求出系统对于该输入信号 的响应, 本实验仅在时域求解。 在计算机上适合用递推法求差分方程的解, 最简单的方法是 采用 MATLAB 语言的工具箱函数 filter 函数。也可以用 MATLAB 语言的工具箱函数 conv 函数计算输入信号和系统的单位脉冲响应的线性卷积,求出系统的响应。 系统的时域特性指的是系统的线性时不变性质、 因果性和稳定性。 重点分析实验系统的稳定 性,包括观察系统的暂态响应和稳定响应。 系统的稳定性是指对任意有界的输入信号, 系统都能得到有界的系统响应。 或者系统的单位 脉冲响应满足绝对可和的条件。系统的稳定性由其差分方程的系数决定。 实际中检查系统是否稳定, 不可能检查系统对所有有界的输入信号, 输出是否都是有界输出, 或者检查系统的单位脉冲响应满足绝对可和的条件。 可行的方法是在系统的输入端加入单位 阶跃序列,如果系统的输出趋近一个常数(包括零) ,就可以断定系统是稳定的 [19] 。系统 的稳态输出是指当 时,系统的输出。如果系统稳定,信号加入系统后,系统输出的开始一段称为暂态效应,随 n 的加大,幅度趋于稳定,达到稳态输出。 注意在以下实验中均假设系统的初始状态为零。 3.实验内容及步骤 (1 )编制程序,包括产生输入信号、单位脉冲响应序列的子程序,用 filter 函数或 conv 函数求解系统输出响应的主程序。程序中要有绘制信号波形的功能。 (2 )给定一个低通滤波器的差分方程为 输入信号 a ) 分别求出系统对 和 的响应序列,并画出其波形。 b ) 求出系统的单位冲响应,画出其波形。 (3 )给定系统的单位脉冲响应为

数字信号处理实验报告一 离散信号及其MATLAB实验

南昌航空大学实验报告 2012 年 04 月 06 日 课程名称: 数字信号处理 实验名称: 离散信号及其MATLAB 实现 班级: 090423班 学号: 09042303 姓名: 张 丽 实验一 离散信号及其MATLAB 实验 一、实验目的 (1)熟悉MATLAB 的主要操作命令; (2)学会离散信号的表示方法及其基本运算; (3)掌握简单的绘图命令; (4)用Matlab 编程并学会创建函数。 二、实验内容 (1)序列的加、减、乘、除和乘方运算。输入A=[1 2 3 4 ],B=[3 4 5 6],起点n=0,求C=A+B ,D=A-B ,E=A.*B ,F=A./B ,G=A.^B ,并用stem 语句画出A ,B ,C ,D ,E ,F ,G 。 (2)用MATLAB 实现下列序列: ① x(n)=n 8.0 0≤n ≤15 ② x(n)=n j e )32.0( 0≤n ≤15 ③ x(n)=3cos(0.125πn+0.2π)+2sin(0.25πn+0.1π) 0≤n ≤15 (3)编写函数如stepshift (n0,n1,n2)实现u(n)的移动序列u(n-n0),n1≤n ≤n2,给出该函数的图形。设n1=0,n2=9,n0=2 (4) x(n)=[1,-1,3,5],起点n=0,产生并绘出下列序列的样本: x1(n)=2x(n+2)-x(n-1)-2x(n) 三、实验程序及实验图形 实验(1) 1、 程序: n=[0:3]; A=[1 2 3 4 ]; %定义序列A ,即一行四列的矩阵 B=[3 4 5 6]; %定义序列B C=A+B;D=A-B;E=A.*B;F=A./B;G=A.^B; figure(1);

相关文档
最新文档