文档库 最新最全的文档下载
当前位置:文档库 › 北交大数字信号处理

北交大数字信号处理

北交大数字信号处理
北交大数字信号处理

北交大数字信号处理

————————————————————————————————作者: ————————————————————————————————日期:

?

《数字信号处理》课程研究性学习报告

试点班专用

姓名

学号

班级

指导教师陈后金

李居朋

时间

?基本概念和技能学习报告

【目的】

(1) 掌握离散信号和系统时域、频域和z域分析中的基本方法和概念;

(2)学会用计算机进行离散信号和系统时域、频域和z域分析。

(3)培养学生自主学习能力,以及发现问题、分析问题和解决问题的能力。

利用MATLA B的filter 函数,求出下列系统的单位脉冲响应,并判断系统是否稳定。讨论本

题所获得的结果。 211850586.0845.111)(--+-=z z z H 21285.085.111)(--+-=z

z z H 【题目目的】

?1. 掌握LTI 系统单位脉冲响应的基本概念、系统稳定性与单位脉冲响应的关系;

2. 学会fi lter 函数的使用方法及用f ilt er函数计算系统单位脉冲响应;

?3. 体验有限字长对系统特性的影响。

【仿真结果】

【结果分析】

1.若已知]}[{][k x T k y =则]}[{][k T k h δ=

2. ][],[21k h k h 均为有限长序列,满足绝对可和的条件,说明这两个系统都稳定。

【问题探究】

已知LTI 系统的系统函数)(z H ,有哪些计算系统单位脉冲响应方法,比较这些方法的优缺点。

方法一:用部分分式法或留数法对)(z H 反变换,)}({][1

z H Z k h -= 方法二:由∑∑=-=-==n i i i

m j j j zi z a z b z X z Y z H 00)()()(可知∑∑==-=-m

j j n i i j k x b i k y a 00][][,依据单位脉冲响应的定义知∑∑==-=-m

j j

n i i j k b i k h a 00][][δ 比较:方法一较为直接,但计算难度大;方法二关注系数,回到时域计算不易得到闭合解。

【仿真程序】

b=1;

a1=[1,-1.845,0.850586];

a2=[1,-1.85,0.85];

k=-50:50;

x=[zeros(1,50),1,zeros(1,50)];

h1=filter(b,a1,x);

h2=filter(b,a2,x );

sub plo t(1,2,1);s tem(k,h1,'.');

title('T he R esponse of H1(z)');

x la be l('x[k]');ylabe l('h[k]');

subp lot(1,2,2);stem(k,h2,'.');

title ('The Res ponse of H 2(z)');

xla be l('x[k]');yl abel ('h[k ]');

(1)利用MAT LAB 语句

x =firls(511,[0 0.4 0.404 1],[1 1 0 0])

产生一个长度为512的序列x [k ],并画出该序列的幅度频谱。

(2) 已知序列)cos(][][0k k x k y πΩ=,分别画出ππ,9.0π,8.0π,4.00=Ω时序列y [k ]的幅度频谱。解释所得到的结果。

【题目目的】

1. 学会用MATLA B函数f req z计算序列频谱;

2.掌握序列频谱的基本特性及分析方法。

【温磬提示】

?只需知道MATLAB语句

x=firls(511,[00.4 0.404 1],[1 1 00])

产生一个长度为512的序列x[k],该序列满足

=k

k

-

x

=

k

x

]

,

255

[

,1,0

],

[

511

不需知道其他细节。用函数freqz计算该序列的频谱,在画幅度频谱时,建议用归一化频率。【仿真结果】

【结果分析】

序列)cos(][][0k k x k y πΩ=,序列y[k ]的幅度频谱)(Ωj e Y 在ππ,9.0π,8.0π,4.00=Ω时相当于][k x 的频谱()Ω

j e X 左偏移、右偏移、幅度减半(在一个周期上)后叠加的结果(在整个Ω轴上)

【问题探究】

有部分的计算结果可能与理论分析的结果不一致,分析出现该现象的原因,给出解决问题方法并进行仿真实验。

π9.0=Ω时与理论计算的偏差较大,原因是MATLAB 在输入)cos(0k πΩ序列时为有限长度。 解决方法:增加)cos(0k πΩ的取值,][k x 随之补0.

【仿真程序】

k=0:1:511;

x=fi rls(511,[0 0.4 0.404 1],[1 1 0 0]);

b1=x;

a1=1;

w=l in spac e(0,pi,512);

y 1=x.*cos (0.4*pi*k);

y 2=x .*cos(0.8*p i*k);

y3=x .*cos(0.9*pi*k);

y 4=x.*cos(pi *k);

X=f reqz(b 1,a1,w);

Y1=fre qz (y1,a1,w);

Y2=f reqz(y2,a 1,w);

Y3=fr eqz(y3,a 1,w);

Y4=fre qz(y4,a1,w);

figure(1);p lot(w /pi,abs (X));

xlab el ('Normalized Frequ en cy');ylabel('Am plitu de');

title ('A mpl itude Re sponse of x[k]');

figure(2);p lot (w/pi,ab s(Y 1));

xlabel('Norma lized F reque ncy');ylabel ('Am plit ud e');

ti tle('Am plit ude Re sp on se of x[k ]cos(0.4*pi*k)');

f igur e(3);plot(w /p i,abs (Y2));

x label('No rmalized Frequency');ylab el ('Amp litude');

ti tle('Amp litude Respon se of x[k]co s(0.8*pi*k)');

figur e(4);pl ot(w/pi ,abs (Y3));

xlabe l('Norma liz ed Freque ncy ');ylabel('Ampl itu de');

title ('A mp litu de R esp onse of x[k]cos (0.9*pi*k)');

figu re(5);plot (w/pi,abs (Y4));

x label('No rmal ized Fre quency');ylabe l('Am plitude');

title ('Amplitud e Re spo nse of x[k]cos(pi*k)');

已知一因果系统的H (z ) 为 6.055.199.02)(22++++=z z z z z H 试求出和H (z )具有相同幅度响应的最小相位系统H min (z )和最大相位系统H ma x(z )。画出并比较H (z )、H min (z) 和H max (z)的相位响应。

【题目目的】

?1. 掌握全通滤波器的基本特征和特性;

2. 学会计算具有相同幅度响应的最小相位系统H m in(z )和最大相位系统H max (z)。

【温磬提示】

在画系统的相位响应时,要把三个系统的相位响应画在一张图上,比较其解卷绕(unwrap)后的相位特点。

【仿真结果】

【结果分析】

由图可见,在具有相同幅度响应的因果稳定系统中,最小相位系统具有最小的相位滞后,最大相位系统具有最大的的相位滞后。

【问题探究】

手算时,如何找出最小相位系统Hmin(z)和最大相位系统H max(z)?用计算机自动求解时,如何找出最小相位系统Hmin(z)和最大相位系统Hmax(z)?你所用的算法是一样的吗?

我使用的是相同的算法,先求零点,与1比较后再做变换。

【仿真程序】

b1=[1,2,0.99];

a=[1,1.55,0.6];

disp('Zeros');disp(roots(b1))

bb1=[1.1,1];bb2=[1,0.9];

bb3=[1,1.1];bb4=[0.9,1];

b2=conv(bb1,bb2);

b3=conv(bb3,bb4);

w=linspace(0,pi,512);

H1=freqz(b1,a,w);

H2=freqz(b2,a,w);

H3=freqz(b3,a,w);

plot(w/pi,unwrap(angle(H1)),w/pi,unwrap(angle(H2)),w/pi,unwrap(angle(H3)));

legend('H','Hmin','Hmax');

xlabel('Normalized Frequency');ylabel('Phase');

title('Response of Phase');

一个长度为5的FIR滤波器,其脉冲响应满足h[0]=h[4],h[1]=h[3],系统输入信号为三个角频率分别为0.1π rad, 0.4 πrad, 0.7 πrad的余弦序列的和。若要求系统只能使频率为

0.4 π rad的余弦序列通过,试求出系统的单位脉冲激响应h[k],画出该系统的幅度和相位响应,用

MATLAB验证系统的滤波效果。

【题目目的】

?1.学会最简单的FIR滤波器设计;

2.了解滤波器的特性对系统输出的影响。

【FIR滤波器的设计过程】

【仿真结果】

【结果分析】

系统的相位响应对输出有何影响?编程验证输出信号的延迟量。

【问题探究】

若想消除瞬态响应的影响,提出解决问题的方案,并进行仿真实验。

【仿真程序】

k1=-100:1:100;

x=cos(0.1*pi*k1)+cos(0.4*pi*k1)+cos(0.7*pi*k1);%产生x[k]

h0=-0.0772;

h4=-0.0772;

h1=-0.24;

h3=-0.24;

h2=0.6705;

b1=[h0,h1,h2,h3,h4];%产生标准Ⅰ型FIR滤波器

k2=0:1:4;

b2=cos(0.1*pi*k2)+1i*sin(0.1*pi*k2);

b3=cos(0.7*pi*k2)+1i*sin(0.7*pi*k2);

h1=b1.*b2;%相移滤波器

h2=b1.*b3;

w=linspace(0,pi,512);

X=freqz(x,1,w);

subplot(1,2,1);plot(w/pi,abs(X));

title('TheOriginalSignal');xlabel('Normalized Frequency');ylabel('Amplitude');y0=filter(h1,1,x);

y=filter(h2,1,y0);

Y=freqz(y,1,w);

subplot(1,2,2);plot(w/pi,abs(Y));

title('The Filtrated Signal');xlabel('NormalizedFrequency');ylabel('Amplitu de');

相关文档