自动化_数字信号处理实验5答案
- 格式:doc
- 大小:149.00 KB
- 文档页数:14
数字信号处理第5章答案史林赵树杰编著第五章练习题答案%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%5.8 已知复序列()()()f n x n jy n =+的8点DFT 为()[()](07)F k DFTf n k =≤≤,其值为(0)13,(1)24,(2)37,(3)45,(4)25,(5)12,(6)48,(7)6,F j F j F j F j F j F j F j F j =-=-+=+=--=+=--=-=不计算()F k 的离散傅里叶逆变换(IFFT ),试求实序列()x n 和()y n 的8点DFT ()X k 和()Y k 。
解:利用DFT 的共轭对称性()()()f n x n jy n =+[]()()()()F k DFT f n X k jY k ==+[]Re ()()()f n Fep k x n ??[]Im ()()()j f n Fop k y n ??所以[][]*()()R e ()()1(())(())()2N N N X k D FT x n D FT f n Fep k F k F N k R k ??====+-?[][]*1()()Im ()()1(())(())()2N N N Y k D FT y n D FT f n Fep k j F k F N k R k j ??====--?%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%5.9 设()x n 和()y n 是长度为N 的两个实序列。
已知()[()](01)X k DFT x n k N =≤≤-,()[()](01)Y k DFT y n k N =≤≤-。
现在希望根据()X k 和()Y k 求()x n 和()y n ,为了提高运算效率,试设计一种算法,用一次N 点IFFT 来完成。
第五章习题与上机题5.1 已知序列12()(),0 1 , ()()()nx n a u n a x n u n u n N =<<=--,分别求它们的自相关函数,并证明二者都是偶对称的实序列。
解:111()()()()()nn mx n n r m x n x n m a u n au n m ∞∞-=-∞=-∞=-=-∑∑当0m ≥时,122()1mmnx n ma r m aaa∞-===-∑ 当0m <时,122()1m mnx n a r m aaa -∞-===-∑ 所以,12()1mx ar m a =-2 ()()()()N x n u n u n N R n =--=22210121()()()()()1,0 =1,00, =()(1)x NN n n N mn N n m N r m x n x n m Rn R n m N m N m N m m Nm N m R m N ∞∞=-∞=-∞--=-=-=-=-⎧=--<<⎪⎪⎪⎪=-≤<⎨⎪⎪⎪⎪⎩-+-∑∑∑∑其他从1()x r m 和2()x r m 的表达式可以看出二者都是偶对称的实序列。
5.2 设()e()nTx n u n -=,T 为采样间隔。
求()x n 的自相关函数()x r m 。
解:解:()()()()e()e ()nTn m T x n n r m x n x n m u n u n m ∞∞---=-∞=-∞=-=-∑∑用5.1题计算1()x r m 的相同方法可得2e()1e m Tx Tr m --=-5.3 已知12()sin(2)sin(2)s s x n A f nT B f nT ππ=+,其中12,,,A B f f 均为常数。
求()x n 的自相关函数()x r m 。
解:解:()x n 可表为)()()(n v n u n x +=的形式,其中)2sin()(11s nT f A n u π=,=)(n v 22sin(2)s A f nT π,)(),(n v n u 的周期分别为 s T f N 111=,sT f N 221=,()x n 的周期N 则是21,N N 的最小公倍数。
实验一熟悉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.8n0≤n≤15b) x(n)=e(0.2+3j)n0≤n≤15c) x(n)=3cos(0.125πn+0.2π)+2sin(0.25πn+0.1π) 0≤n≤15d) 将c)中的x(n)扩展为以16为周期的函数x16(n)=x(n+16),绘出四个周期。
数字信号处理实验课后答案数字信号处理实验课后答案【篇一:数字信号处理第三版课后实验程序(高西全)】txt>close all;clear all%======内容1:调用filter解差分方程,由系统对u(n)的响应判断稳定性====== a=[1,-0.9];b=[0.05,0.05]; %系统差分方程系数向量b和ax1n=[1 1 1 1 1 1 1 1 zeros(1,50)]; %产生信号x1(n)=r8(n)x2n=ones(1,128); %产生信号x2(n)=u(n)hn=impz(b,a,58); %求系统单位脉冲响应h(n)subplot(2,2,1);y=h(n);tstem(hn,y); %调用函数tstem绘图title((a) 系统单位脉冲响应h(n));box ony1n=filter(b,a,x1n); %求系统对x1(n)的响应y1(n)subplot(2,2,2);y=y1(n);tstem(y1n,y);title((b) 系统对r8(n)的响应y1(n));box ony2n=filter(b,a,x2n); %求系统对x2(n)的响应y2(n)subplot(2,2,4);y=y2(n);tstem(y2n,y);title((c) 系统对u(n)的响应y2(n));box on%===内容2:调用conv函数计算卷积============================ x1n=[1 1 1 1 1 1 1 1 ]; %产生信号x1(n)=r8(n)h1n=[ones(1,10) zeros(1,10)];h2n=[1 2.5 2.5 1 zeros(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));box onsubplot(2,2,2);y=y21(n);tstem(y21n,y);title((e) h1(n)与r8(n)的卷积y21(n));box onsubplot(2,2,3);y=h2(n);tstem(h2n,y); %调用函数tstem绘图title((f) 系统单位脉冲响应h2(n));box onsubplot(2,2,4);y=y22(n);tstem(y22n,y);title((g) h2(n)与r8(n)的卷积y22(n));box on%=========内容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和a y31n=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));box onsubplot(2,1,2);y=y32(n);tstem(y32n,y);title((i) 谐振器对正弦信号的响应y32(n));box on10.2.2 实验程序清单1 时域采样理论的验证程序清单% 时域采样理论验证程序exp2a.mtp=64/1000; %观察时间tp=64微秒%产生m长采样序列x(n)% fs=1000;t=1/fs;fs=1000;t=1/fs;m=tp*fs;n=0:m-1;a=444.128;alph=pi*50*2^0.5;omega=pi*50*2^0.5;xnt=a*exp(-alph*n*t).*sin(omega*n*t);xk=t*fft(xnt,m); %m点fft[xnt)]yn=xa(nt);subplot(3,2,1);tstem(xnt,yn); %调用自编绘图函数tstem绘制序列图box on;title((a) fs=1000hz);k=0:m-1;fk=k/tp;subplot(3,2,2);plot(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完全相同。
第十章上机实验数字信号处理是一门理论和实际密切结合的课程,为深入掌握课程内容,最好在学习理论的同时,做习题和上机实验。
上机实验不仅可以帮助读者深入的理解和消化基本理论,而且能锻炼初学者的独立解决问题的能力。
本章在第二版的基础上编写了六个实验,前五个实验属基础理论实验,第六个属应用综合实验。
实验一系统响应及系统稳定性。
实验二时域采样与频域采样。
实验三用FFT对信号作频谱分析。
实验四IIR数字滤波器设计及软件实现。
实验五FIR数字滤波器设计与软件实现实验六应用实验——数字信号处理在双音多频拨号系统中的应用任课教师根据教学进度,安排学生上机进行实验。
建议自学的读者在学习完第一章后作实验一;在学习完第三、四章后作实验二和实验三;实验四IIR数字滤波器设计及软件实现在。
学习完第六章进行;实验五在学习完第七章后进行。
实验六综合实验在学习完第七章或者再后些进行;实验六为综合实验,在学习完本课程后再进行。
10.1 实验一: 系统响应及系统稳定性1.实验目的(1)掌握求系统响应的方法。
(2)掌握时域离散系统的时域特性。
(3)分析、观察及检验系统的稳定性。
2.实验原理与方法在时域中,描写系统特性的方法是差分方程和单位脉冲响应,在频域可以用系统函数描述系统特性。
已知输入信号可以由差分方程、单位脉冲响应或系统函数求出系统对于该输入信号的响应,本实验仅在时域求解。
在计算机上适合用递推法求差分方程的解,最简单的方法是采用MA TLAB语言的工具箱函数filter函数。
也可以用MA TLAB语言的工具箱函数conv 函数计算输入信号和系统的单位脉冲响应的线性卷积,求出系统的响应。
系统的时域特性指的是系统的线性时不变性质、因果性和稳定性。
重点分析实验系统的稳定性,包括观察系统的暂态响应和稳定响应。
系统的稳定性是指对任意有界的输入信号,系统都能得到有界的系统响应。
或者系统的单位脉冲响应满足绝对可和的条件。
系统的稳定性由其差分方程的系数决定。
第一章 作业题 答案############################################################################### 1.2一个采样周期为T 的采样器,开关导通时间为()0T ττ<<,若采样器的输入信号为()a x t ,求采样器的输出信号()()()a a x t x t p t ∧=的频谱结构。
式中()()01,()0,n p t r t n t r t ττ∞=-∞=-≤≤⎧=⎨⎩∑其他解:实际的采样脉冲信号为:()()n p t r t n τ∞=-∞=-∑其傅里叶级数表达式为:()000()jk tn p t Sa k T eTωωτω∞=-∞=∑采样后的信号可以表示为:()()()ˆa a xt x t p t δ= 因此,对采样后的信号频谱有如下推导:()()()()()()()()()()()()()0000000000000ˆˆsin 1j t a a jk t j t a n jk t j t a k j k ta k ak a k X j x t e dtx t Sa k T e e dtTSa k T x t e e dtTSa k T x t edtTSa k T X j jk Tk T X j jk T kωωωωωωωωτωωτωωτωωτωωωωωω∞--∞∞∞--∞=-∞∞∞--∞=-∞∞∞---∞=-∞∞=-∞∞=-∞Ω=====-=-⎰∑⎰∑⎰∑⎰∑∑%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 1.5有一个理想采样系统,对连续时间信号()a x t 进行等间隔T 采样,采样频率8s πΩ=rad/s ,采样后所得采样信号()a x t ∧经理想低通滤波器()G j Ω进行恢复,已知()41/4,,4G j ππ⎧Ω≤⎪Ω=⎨Ω>⎪⎩今有两个输入信号12()cos(2)()cos(5)a a x t t x t t ππ==和,对应的输出信号分别为12()()a a y t y t 和,如题1.5图所示,问12()()a a y t y t 、有没有失真,为什么?题1.5图 理想采样系统与恢复理想低通滤波器解:因为是理想采样系统,因此采样后的信号频谱可以表示为:()()1ˆa a s k X j X j jk T ∞=-∞Ω=Ω-Ω∑8s πΩ=,12πΩ=,25πΩ=,折叠频率为2s Ω,而滤波器对4πΩ≤的信号通过,因此有如下图:结论:1)1()a y t 不失真、2()a y t 失真。
【最新整理,下载后即可编辑】习题一 (离散信号与系统)1.1周期序列,最小周期长度为5。
1.2 (1) 周期序列,最小周期长度为14。
(2) 周期序列,最小周期长度为56。
1.5()()()()()()()11s a s s s a n s s a s n X j x t p t X j ΩP j Ω2n τn τj sin j Ωjn e X 2n π2n n τj Sa X j jn e 2T 2πττ∞=-∞∞=-∞Ω==*⎡⎤⎣⎦ΩΩ⎛⎫-=-Ω ⎪⎝⎭ΩΩ⎛⎫-=Ω-Ω ⎪⎝⎭∑∑ 1.6 (1) )(ωj e kX (2) )(0ωωj n j e X e (3) )(21)(2122ωωj j e X e X -+ (4) )(2ωj e X1.7 (1) 0n z -(2) 5.0||,5.0111>--z z (3) 5.0||,5.0111<--z z (4)0||,5.01)5.0(11101>----z z z1.8 (1) 0,)11()(211>--=---z zz z z X N(2) a z az az z X >-=--,)1()(211 (3) a z az z a az z X >-+=---,)1()(311211.91.10 (1))1(2)(1----+n u n u n (2))1(24)()5.0(6--⋅--n u n u n n (3))()sin sin cos 1(cos 000n u n n ωωωω++(4) )()()(1n u a a a n a n ---+-δ 1.11(1))(1z c X - (2) )(2z X (3))()1(21z X z -+ (4)-+<<x x R z R z X /1/1),/1(1.12 (1) 1,11<-ab ab(2) 1 (3)00n a n1.13 (1) 该系统不是线性系统;该系统是时不变系统。
实验五 IIR滤波器设计一、实验目的1. 掌握冲激响应不变法和双线性变换法设计IIR数字滤波器的原理和方法;2. 观察双线性变换法和冲激响应不变法设计的滤波器的频域特性,了解双线性变换法和冲激响应不变法的特点和区别。
二、实验仪器1. 计算机2. MATLAB软件三、预习要求理解冲激响应不变法,双线性变换法,掌握常用 matlab 程序。
四、实验原理1. IIR数字滤波器一般为线性移不变的因果离散系统,N阶IIR滤波器的传递函数为:,式中系数至少有一个不为0。
IIR数字滤波器的设计通常利用模拟滤波器作为原型滤波器,直接由模拟滤波器的频率响经过冲激响应不变法或双线性变换法转换成IIR数字滤波器。
2. 常用模拟原型滤波器(1)巴特沃斯滤波器巴特沃斯滤波器通带和阻带都单调衰减,所有结束的幅度函数-3dB点为同一点。
其幅度响应为:,式中N为滤波器阶数,通带截止频率。
(2)切比雪夫Ⅰ型滤波器切比雪夫Ⅰ型滤波器在通带呈现等波纹特性,阻带单调衰减,其幅度响应为:,式中N为滤波器阶数;,表示通带波纹大小,越大,波纹越大;为截止频率,不一定为3dB带宽;为N阶Chebyshev多项式。
(3)切比雪夫Ⅱ型滤波器切比雪夫Ⅱ型滤波器在阻带呈现等波纹特性,通带单调衰减,其幅度响应为:,式中是阻带衰减达到一定数值时的最低频率。
(4)椭圆滤波器椭圆滤波器在通带和阻带都呈现波纹特性,在带内均匀波动,具有最快的滚降。
,式中为椭圆函数。
3. 冲激响应不变法所谓冲激响应不变法就是使数字滤波器的单位冲激响应序列等于模拟滤波器的单位冲激响应和的采样值,即:,其中,T为采样周期。
令为模拟系统传递函数,且,则冲激响应不变法得到的数字滤波器传递函数。
冲激响应不变法的特点是:(1)时域逼近特性良好;(2)模拟频率和数字频率呈线性关系。
(3)存在频率混叠效应,故只适用于限带的模拟滤波器。
在 MATLAB 中,可用函数 impinvar 实现从模拟滤波器到数字滤波器的冲激响应不变映射,调用格式为:[bz,az]=impinvar(b,a,fs)[bz,az]=impinvar(b,a)其中,b、a 分别为模拟滤波器的分子和分母多项式系数向量;fs为采样频率(Hz),缺省值 fs=1Hz;bz、az分别为数字滤波器分子和分母多项式系数向量。
举例:若Ha(s)=,则b=[1,1];a=[1,5,6]。
4. 双线性变换法由于平面和平面的单值双线性映射关系为,其中 T 为采样周期。
因此,若已知模拟滤波器的传递函数,将上式代入即可得到数字滤波器的系统函数。
在双线性变换中,模拟角频率和数字角频率的变换关系为:,可见,模拟频率和数字频率之间的变换关系为非线性的。
双线性变换法的特点是:(1)由于映射是单值变换关系,避免了冲激响应不变法的频率混叠现象;(2)当频率增加时,变换关系存在着严重的非线性。
在 MATLAB 中,可用函数 bilinear 实现从模拟滤波器到数字滤波器的双线性变换映射,调用格式为:[bz,az]=bilinear(b,a,fs)5. 数字滤波器设计步骤(1)将技术指标转换为模拟低通原型设计性能指标。
(2)估计满足性能指标的模拟低通性能阶数和截止频率。
利用 MATLAB 中 buttord、cheb1ord、cheb2ord、ellipord 等函数,调用格式如:其中,和分别是滤波器的通带截止频率和阻止截止频率,单位为;和分别是通带最大衰减系数和阻带最小衰减系数,单位为dB;‘s’表示为模拟滤波器;函数返回值 n 为模拟滤波器的最小阶数;为模拟滤波器的截止频率(-3dB 频率),rad/s。
函数适用低通、高通、带通、带阻滤波器。
(3)设计模拟低通原型滤波器。
利用 MATLAB 中 buttap、cheb1ap、cheb2ap、elliap等函数,调用格式为:[z,p,k]=buttap(n)。
采用上述函数所得到原型滤波器的传递函数为零点、极点、增益表达式,需要和函数[b,a]=zp2tf(z,p,k)配合使用,以转化为多项式形式。
(4)由模拟低通原型经频率变换获得模拟低通、高通、带通或带阻滤波器。
利用 MATLAB 中 lp2lp、lp2hp、lp2bp、lp2bs 等函数,调用格式如:[c1,d1]=lp2lp(c,d,Wn)。
(5)利用冲激响应不变法或双线性不变法,实现模拟滤波器到数字滤波器的映射。
五、实验内容1. 利用冲激响应不变法,设计一数字低通滤波器,并画出各滤波器的幅频和相频特性曲线。
滤波器指标、、、,采样频率fs=1kHz,要求:function [db,mag,pha,w]=freqz_m(b,a);%对FIR滤波器,b=h,a=[1][H,w]=freqz(b,a,1000,'whole');H=(H(1:1:501))';w=(w(1:1:501))';mag=abs(H);db=20*log10((mag+eps)/max(mag));pha=angle(H);(1)用巴特沃斯滤波器设计;Wp=0.2*pi; Ws=0.3*pi;Rp=0.5; Rs=50;fs=1000;% T=1/fs;[n,Wn]=buttord(Wp*fs,Ws*fs,Rp,Rs,'s');[z,p,k]=buttap(n);[bb,aa]=zp2tf(z,p,k);[b,a]=lp2lp(bb,aa,Wn);[bz,az]=impinvar(b,a,fs);% [H,w]=freqz(b,a,fs);[db,mag,pha,w]=freqz_m(bz,az);subplot(211);plot(w/pi,mag);title(['巴特沃斯幅度响应 n=' int2str(n)])%标题里显示变量xlabel('');ylabel('|H|');axis([0,1,0,1.1]) ;%设置坐标变量及坐标轴范围% set(gca,'XTickMode','manual','XTick',[0,wp/pi,ws/pi,1]); %在指定位置标记grid on; %显示格线% set(gca,'YTickMode','manual','YTick',[0,Attn,Ripple,1]);subplot(212);plot(w/pi,pha/pi);title('巴特沃斯相位响应');xlabel('');ylabel('单位:pi');axis([0,1,-1,1]);grid on; %显示格线% set(gca,'XTickMode','manual','XTick',[0,wp/pi,ws/pi,1]);% set(gca,'YTickMode','manual','YTick',[-1,0,1]);grid on;(2)用切比雪夫Ⅰ型设计。
Wp=0.2*pi; Ws=0.3*pi;Rp=0.5; Rs=50;fs=1000;% T=1/fs;[n,Wn]=cheb1ord(Wp*fs,Ws*fs,Rp,Rs,'s'); [z,p,k]=cheb1ap(n,Rp);[bb,aa]=zp2tf(z,p,k);[b,a]=lp2lp(bb,aa,Wn);[bz,az]=impinvar(b,a,fs);% [H,w]=freqz(b,a,fs);[db,mag,pha,w]=freqz_m(bz,az);subplot(211);plot(w/pi,mag);title(['切比雪夫Ⅰ型 n=' int2str(n)])%标题里显示变量xlabel('');ylabel('|H|');axis([0,1,0,1.1]) ;%设置坐标变量及坐标轴范围% set(gca,'XTickMode','manual','XTick',[0,wp/pi,ws/pi,1]); %在指定位置标记grid on; %显示格线% set(gca,'YTickMode','manual','YTick',[0,Attn,Ripple,1]);subplot(212);plot(w/pi,pha/pi);title('切比雪夫Ⅰ型');xlabel('');ylabel('单位:pi');axis([0,1,-1,1]);grid on; %显示格线% set(gca,'XTickMode','manual','XTick',[0,wp/pi,ws/pi,1]);% set(gca,'YTickMode','manual','YTick',[-1,0,1]);grid on;提示:matlab中可用freqz( )函数得到数字系统的频率响应,调用格式为:[H,w]= freqz(bz,az,fs ),H为滤波器频率响应,w为H对应频率。
和分别是滤波器的通带截止频率和阻止截止频率,单位为;和分别是通带最大衰减系数和阻带最小衰减系数,单位为dB;1)利用双线性变换法,设计一数字低通滤波器,并画出各滤波器的幅频和相频特性曲线。
滤波器指标、、、,采样频率fs=1kHz,要求:(1)用巴特沃斯滤波器设计;wp=0.2*pi;ws=0.3*pi;fs=1000;T=1/fs;OmegaP=(2/T)*tan(wp/2);OmegaS=(2/T)*tan(ws/2);rp=0.5;rs=50;% ripple=10^(-rp/20);attn=10^(-rs/20);[n,wn]=buttord(OmegaP,OmegaS,rp,rs,'s');[z,p,k]=buttap(n);[b,a]=zp2tf(z,p,k);[bt,at]=lp2lp(b,a,wn);[bz,az]=bilinear(bt,at,fs);% [b,a]=impinvar(b,a,Fs);[db,mag,pha,w]=freqz_m(bz,az);%下面绘出各条曲线subplot(211);plot(w/pi,db);grid;title(['双线性变换法巴特沃斯幅度响应 N=' int2str(n)])%标题里显示变量。