当前位置:首页 > 数字信号处理实验讲义2015-9-6
(3)sinc函数绘图程序如下: t=-pi:0.001:pi; x=sinc(t); plot(t,x);
xlabel('t'),ylabel('sinc(t);');
四、问题讨论与总结:
1.离散正弦序列的性质:
离散正弦序列就是一个连续的正弦信号被一系列冲激函数采样后的结果,原连续正弦函数一定是周期的,但采样后的离散序列却不一定是周期的。对于离散序列x=sin(n*w)来说, 只有当2*pi/w是一个有理数时,也就是说当w是pi的倍数时,此离散序列才是周期的。所以在本实验中x1=1.5*sin(2*pi*0.1*n)的周期是10,而x2=sin(0.9*n)是非周期的。因为0.9不是pi的倍数。
2.离散复指数序列性质:
对于离散复指数函数x=a*exp(z*n),只有当z是纯虚数,且纯虚数的系数是pi的倍数时,才是周期的。其它情况下均不是。这个性质由本次实验中的五个函数的图像可以被证明。
9
实验二 离散系统时域分析
一、实验目的
1.学习MATLAB语言的编程和调试技巧; 2.差分方程的求解;
3.掌握笔算离散卷积方法和MATLAB语言实现。
二、 实验内容
时域中,离散时间系统对输入信号或延迟信号进行运算处理,生成具有所需特性的输出信号。本实验通过MATLAB仿真一些简单的离散时间信号和系统,并研究其时域特性。涉及到离散时间信号、离散时间系统、系统性质及线性卷积等知识点。
三、实验原理与方法和手段
一个离散时间系统,输入信号为x(n),输出信号为y(n),运算关系用T[﹒]表示,则输
入与输出的关系可表示为y(n)=T[x(n)]。
在《信号与系统》和《数字信号处理》课程中,我们知道描述线性移不变离散时间系统的数学模型是常系数差分方程,它与系统的结构流图之间可以互相推导。迭代解法(也称递推解法)是求解差分方程的最简单也最适用的方法,也是实现数字滤波器的一种基本方法。 差分方程通式为:
?ay?n?k???bx?n?m?
kmk?0m?0NM?a[k]y(n?k)??b[r]x(n?r)k?0r?0NNx(n)与y(n)分别为系统的激励和响应。
MATLAB以函数filter(b, a , x),来计算在给定输入和差分方程系数时求差分方程的数值解。b,a分别为系统方程的系数向量。x是输入序列。
线性时不变系统的输入输出关系可通过单位脉冲响应h(n)表示: y(n)?x?n?*h(n)?式中*表示卷积运算。
可物理实现的线性时不变系统是稳定的、因果的。这种系统的单位脉冲响应是因果的
m????x(m)h(n?m)
?? 10
(单边)且绝对可和的,即:h(n)=0,n<0;
n????h(n)??。在MATLAB语言中采用conv
??实现卷积运算即:y=conv(x,h),它默认从n=0开始。
四、实验组织运行要求
1.学生在进行实验前必须进行充分的预习,熟悉实验内容; 2.学生根据实验要求,读懂并理解相应的程序;
3.学生严格遵守实验室的各项规章制度,注意人身和设备安全,配合和服从实验室人员管理;
4.教师在学生实验过程中予以必要的辅导,独立完成实验; 5.采用集中授课形式。
五、实验条件
1.具有WINDOWS 98/2000/NT/XP操作系统的计算机一台; 2.。MATLAB编程软件。
六、实验步骤
在“开始--程序”菜单中,找到MATLAB程序,运行启动;进入MATLAB后 ,首先熟悉界面;在Command Window中输入参考程序,并执行;记录运行结果图形,并与笔算结果对照。(MATLAB的使用请参考附录) 具体步骤如下:
1.已知某一系统方程为: y(n)+3y(n-1)+2y(n-2)=x(n)
(1)利用MATLAB计算系统的脉冲响应h(n)并画出波形图,其中n=(-2,10); (2)若x(n)=u(n),利用MATLAB计算系统的零状态响应y(n)并画出波形图。 2.设某LSI的单位脉冲响应和h(n)=()u(n), (1)判断此系统是否可实现;
(2)当输入为x(n)?3[u(n)?u(n?5)]时,利用卷积和手工计算此LSI的输出y(n); (3)用MATLAB实现第二步,并画出图形(h(n)的n取值范围自定)。
3.x(n)=[2,3,1,1,2,-1,0,3],-2≤n≤5;h(n)=[2,4,1,-2,0,-1],-3≤n≤2,手工计算和MATLAB
11
n12n
计算卷积y(n)=x(n)*h(n)。
七、思考题
结合《信号与系统》课程所学,思考离散时间系统的线性卷积公式与连续时间系统的卷积公式的异同?
八、实验报告要求
1.报告中要给出实验的MATLAB程序; 2.简述实验目的和原理;
3.给出用笔算时差分方程解、卷积和conv计算线性卷积对照图; 4.给出收获和体会。
九、参考程序
1.程序1
系统微分方程y(n)-y(n-1)+0.9y(n-2)=x(n),计算并画出系统单位冲激响应h(n),n=(-5,10)。 %xh08 n=[-5:10]; b=[1]; a=[1 -1 0.9]; x=impseq(-5,10,0); h=filter(b,a,x); stem(n,h, '.');
xlabel('时间序号n'); ylabel('h(n)'); title('单位冲激响应');grid on 2.程序2
设某LSI的单位脉冲响应h(n)?0.8u(n) (1)判断此系统是否可实现;
(2)当输入为矩形脉冲x(n)?2[u(n)?u(n?10)]时,手工计算此LSI的输出y(n); %xh09 n1=0:9;
12
nn
共分享92篇相关文档