第十章上机实验1第十章上机实验数字信号处理是一门理论和实际密切结合的课程,为深入掌握课程内容,最好在学习理论的同时,做习题和上机实验。上机实验不仅可以帮助读者深入的理解和消化基本理论,而且能锻炼初学者的独立解决问题的能力。本章在第二版的基础上编写了六个实验,前五个实验属基础理论实验,第六个属应用综合实验。实验一系统响应及系统稳定性。实验二时域采样与频域采样。实验三用FFT对信号作频谱分析。实验四IIR数字滤波器设计及软件实现。实验五FIR数字滤波器设计与软件实现实验六应用实验——数字信号处理在双音多频拨号系统中的应用任课教师根据教学进度,安排学生上机进行实验。建议自学的读者在学习完第一章后作实验一;在学习完第三、四章后作实验二和实验三;实验四IIR数字滤波器设计及软件实现在。学习完第六章进行;实验五在学习完第七章后进行。实验六综合实验在学习完第七章或者再后些进行;实验六为综合实验,在学习完本课程后再进行。10.1实验一:系统响应及系统稳定性1.实验目的(1)掌握求系统响应的方法。(2)掌握时域离散系统的时域特性。(3)分析、观察及检验系统的稳定性。2.实验原理与方法在时域中,描写系统特性的方法是差分方程和单位脉冲响应,在频域可以用系统函数描述系统特性。已知输入信号可以由差分方程、单位脉冲响应或系统函数求出系统对于该输入信号的响应,本实验仅在时域求解。在计算机上适合用递推法求差分方程的解,最简单的方法是采用MATLAB语言的工具箱函数filter函数。也可以用MATLAB语言的工具箱函数conv函数计算输入信号和系统的单位脉冲响应的线性卷积,求出系统的响应。系统的时域特性指的是系统的线性时不变性质、因果性和稳定性。重点分析实验系统的稳定性,包括观察系统的暂态响应和稳定响应。系统的稳定性是指对任意有界的输入信号,系统都能得到有界的系统响应。或者系统的单位脉冲响应满足绝对可和的条件。系统的稳定性由其差分方程的系数决定。实际中检查系统是否稳定,不可能检查系统对所有有界的输入信号,输出是否都是有界输出,或者检查系统的单位脉冲响应满足绝对可和的条件。可行的方法是在系统的输入端加入单位阶跃序列,如果系统的输出趋近一个常数(包括零),就可以断定系统是稳定的[19]。系统的稳态输出是指当n时,系统的输出。如果系统稳定,信号加入系统后,系统输出的开始一段称为暂态效应,随n的加大,幅度趋于稳定,达到稳态输出。注意在以下实验中均假设系统的初始状态为零。3.实验内容及步骤(1)编制程序,包括产生输入信号、单位脉冲响应序列的子程序,用filter函数或conv函数求解系统输出响应的主程序。程序中要有绘制信号波形的功能。(2)给定一个低通滤波器的差分方程为)1(9.0)1(05.0)(05.0)(nynxnxny第十章上机实验2输入信号)()(81nRnx)()(2nunxa)分别求出系统对)()(81nRnx和)()(2nunx的响应序列,并画出其波形。b)求出系统的单位冲响应,画出其波形。(3)给定系统的单位脉冲响应为)()(101nRnh)3()2(5.2)1(5.2)()(2nnnnnh用线性卷积法分别求系统h1(n)和h2(n)对)()(81nRnx的输出响应,并画出波形。(4)给定一谐振器的差分方程为)2()()2(9801.0)1(8237.1)(00nxbnxbnynyny令49.100/10b,谐振器的谐振频率为0.4rad。a)用实验方法检查系统是否稳定。输入信号为)(nu时,画出系统输出波形。b)给定输入信号为)4.0sin()014.0sin()(nnnx求出系统的输出响应,并画出其波形。4.思考题(1)如果输入信号为无限长序列,系统的单位脉冲响应是有限长序列,可否用线性卷积法求系统的响应?如何求?(2)如果信号经过低通滤波器,把信号的高频分量滤掉,时域信号会有何变化,用前面第一个实验结果进行分析说明。5.实验报告要求(1)简述在时域求系统响应的方法。(2)简述通过实验判断系统稳定性的方法。分析上面第三个实验的稳定输出的波形。(3)对各实验所得结果进行简单分析和解释。(4)简要回答思考题。(5)打印程序清单和要求的各信号波形。10.1.2实验程序清单%实验1:系统响应及系统稳定性closeall;clearall%======内容1:调用filter解差分方程,由系统对u(n)的响应判断稳定性======A=[1,-0.9];B=[0.05,0.05];%系统差分方程系数向量B和Ax1n=[11111111zeros(1,50)];%产生信号x1(n)=R8(n)x2n=ones(1,128);%产生信号x2(n)=u(n)第十章上机实验3hn=impz(B,A,58);%求系统单位脉冲响应h(n)subplot(2,2,1);y='h(n)';tstem(hn,y);%调用函数tstem绘图title('(a)系统单位脉冲响应h(n)');boxony1n=filter(B,A,x1n);%求系统对x1(n)的响应y1(n)subplot(2,2,2);y='y1(n)';tstem(y1n,y);title('(b)系统对R8(n)的响应y1(n)');boxony2n=filter(B,A,x2n);%求系统对x2(n)的响应y2(n)subplot(2,2,4);y='y2(n)';tstem(y2n,y);title('(c)系统对u(n)的响应y2(n)');boxon%===内容2:调用conv函数计算卷积============================x1n=[11111111];%产生信号x1(n)=R8(n)h1n=[ones(1,10)zeros(1,10)];h2n=[12.52.51zeros(1,10)];y21n=conv(h1n,x1n);y22n=conv(h2n,x1n);figure(2)subplot(2,2,1);y='h1(n)';tstem(h1n,y);%调用函数tstem绘图title('(d)系统单位脉冲响应h1(n)');boxonsubplot(2,2,2);y='y21(n)';tstem(y21n,y);title('(e)h1(n)与R8(n)的卷积y21(n)');boxonsubplot(2,2,3);y='h2(n)';tstem(h2n,y);%调用函数tstem绘图title('(f)系统单位脉冲响应h2(n)');boxonsubplot(2,2,4);y='y22(n)';tstem(y22n,y);title('(g)h2(n)与R8(n)的卷积y22(n)');boxon%=========内容3:谐振器分析========================un=ones(1,256);%产生信号u(n)n=0:255;xsin=sin(0.014*n)+sin(0.4*n);%产生正弦信号A=[1,-1.8237,0.9801];B=[1/100.49,0,-1/100.49];%系统差分方程系数向量B和Ay31n=filter(B,A,un);%谐振器对u(n)的响应y31(n)y32n=filter(B,A,xsin);%谐振器对u(n)的响应y31(n)figure(3)subplot(2,1,1);y='y31(n)';tstem(y31n,y);title('(h)谐振器对u(n)的响应y31(n)');boxonsubplot(2,1,2);y='y32(n)';tstem(y32n,y);title('(i)谐振器对正弦信号的响应y32(n)');boxon10.1.3实验程序运行结果及分析讨论程序运行结果如图10.1.1所示。实验内容(2)系统的单位冲响应、系统对)()(81nRnx和)()(2nunx的响应序列分别如图(a)、(b)和(c)所示;实验内容(3)系统h1(n)和h2(n)对)()(81nRnx的输出响应分别如图(e)和(g)所示;第十章上机实验4实验内容(4)系统对)(nu和)4.0sin()014.0sin()(nnnx的响应序列分别如图(h)和(i)所示。由图(h)可见,系统对)(nu的响应逐渐衰减到零,所以系统稳定。由图(i)可见,系统对)4.0sin()014.0sin()(nnnx的稳态响应近似为正弦序列sin(0.4)n,这一结论验证了该系统的谐振频率是0.4rad。020400.020.040.060.080.1nh(n)(a)系统单位脉冲响应h(n)020400.20.40.6ny1(n)(b)系统对R8(n)的响应y1(n)0501000.20.40.60.81ny2(n)(c)系统对u(n)的响应y2(n)第十章上机实验505101500.51nh1(n)(d)系统单位脉冲响应h1(n)0102002468ny21(n)(e)h1(n)与R8(n)的卷积y21(n)05100123nh2(n)(f)系统单位脉冲响应h2(n)0510152002468ny22(n)(g)h2(n)与R8(n)的卷积y22(n)050100150200250-0.04-0.0200.020.04ny31(n)(h)谐振器对u(n)的响应y31(n)050100150200250-0.500.51ny32(n)(i)谐振器对正弦信号的响应y32(n)图10.1.110.1.4简答思考题(1)如果输入信号为无限长序列,系统的单位脉冲响应是有限长序列,可否用线性卷积第十章上机实验6法求系统的响应。①对输入信号序列分段;②求单位脉冲响应h(n)与各段的卷积;③将各段卷积结果相加。具体实现方法有第三章介绍的重叠相加法和重叠保留法。(2)如果信号经过低通滤波器,把信号的高频分量滤掉,时域信号的剧烈变化将被平滑,由实验内容(1)结果图10.1.1(a)、(b)和(c)可见,经过系统低通滤波使输入信号()n、)()(81nRnx和)()(2nunx的阶跃变化变得缓慢上升与下降。10.2实验二时域采样与频域采样10.2.1实验指导1.实验目的时域采样理论与频域采样理论是数字信号处理中的重要理论。要求掌握模拟信号采样前后频谱的变化,以及如何选择采样频率才能使采样后的信号不丢失信息;要求掌握频率域采样会引起时域周期化的概念,以及频率域采样定理及其对频域采样点数选择的指导作用。2.实验原理与方法时域采样定理的要点是:a)对模拟信号)(txa以间隔T进行时域等间隔理想采样,形成的采样信号的频谱)(ˆjX是原模拟信号频谱()aXj以采样角频率s(Ts/2)为周期进行周期延拓。公式为:)](ˆ[)(ˆtxFTjXaa)(1nsajnjXTb)采样频率s必须大于等于模拟信号最高频率的两倍以上,才能使采样信号的频谱不产生频谱混叠。利用计算机计算上式并不方便,下面我们导出另外一个公式,以便用计算机上进行实验。理想采样信号)(ˆtxa和模拟信号)(txa之间的关系为:naanTttxtx)()()(ˆ对上式进行傅立叶变换,得到:dtenTttxjXtjnaa])()([)(ˆdtenTttxtjna)()(=在上式的积分号内只有当nTt时,才有非零值,因此:nnTjaaenTxjX)()(ˆ第十章上机实验7上式中,在数值上)(nTxa=)(nx,再将T代入,得到:nnjaenxjX)()(ˆ上式的右边就是序列的傅立叶变换)(jeX,即TjaeXjX)()(ˆ上式说明理想采样信号的傅立叶变换可用相应的采样序列的傅立叶变换得到,只要将自变量ω用T代替即可。频域采样定理的要点是:a)对信号x(n)的频谱函数X(ejω)在[0,2π]上等间隔采样N点,得到2()(),0,1,2,,1jNkN