数字信号处理00002Word格式.docx
《数字信号处理00002Word格式.docx》由会员分享,可在线阅读,更多相关《数字信号处理00002Word格式.docx(10页珍藏版)》请在冰点文库上搜索。
t'
x2=sawtooth(2*pi*50*t,0.5);
%产生五个周期三角波
subplot(222)
plot(t,x2)
三角波110900623'
x3=square(2*pi*50*t);
%产生十个周期方波
subplot(223)
plot(t,x3)
方波110900623'
axis([0,0.1,-1.2,1.2])
t=-4:
0.1:
4;
x4=sinc(t);
%产生抽样信号
subplot(224)
plot(t,x4)
axis([-5,5,-0.5,0.5])
抽样信号110900623'
2.分析并绘出常用窗函数时域特性波形.
clearall
y1=boxcar(80);
%矩形窗
plot(y1,'
k'
axis([-1,81,-0.2,1.2])
gtxst(‘矩形窗’)
holdon
y2=triang(80);
%三角窗
plot(y2,'
m.'
y3=hanning(80);
%汉宁窗
plot(y3,'
y*'
gtxst(‘汉宁窗’)
y4=hamming(80);
%海明窗
plot(y4,'
r-'
gtxst(‘海明窗’)
y5=blackman(80);
%布莱克曼窗
plot(y5,'
g:
'
gtxst(‘布莱克曼窗’)
y6=kaiser(80,7.865);
%凯塞-贝尔窗
plot(y6,'
b-.'
)
gtxst(‘凯塞-贝尔窗’)
常用窗函数110900623'
实验二内容:
1.计算序列x(n)=[1,2,3,4,5],与序列h(n)=[2,-2,3,5]的线性卷积和6点、8点和10点圆周卷积.
xn=[1,2,3,4,5];
hn=[2,-2,3,5];
yln=conv(xn,hn);
ycn1=circonv2(xn,hn,6);
ycn2=circonv2(xn,hn,8);
ycn3=circonv2(xn,hn,10);
ny0=[0:
1:
length(yln)-1];
ny1=[0:
length(ycn1)-1];
ny2=[0:
length(ycn2)-1];
ny3=[0:
length(ycn3)-1];
subplot(2,2,1);
stem(ny0,yln)
ylabel('
线性卷积'
subplot(2,2,2);
stem(ny1,ycn1);
圆周卷积6'
subplot(2,2,3);
stem(ny2,ycn2)
圆周卷积8'
subplot(2,2,4);
stem(ny3,ycn3)
圆周卷积10'
axis([0,10,0,40]);
functionyc=circonv2(x1,x2,N)%子程序1
iflength(x1)>
N
error('
Nmustnotbelessthanlengthofx1'
);
end
iflength(x2)>
Nmustnotbelessthanlengthofx2'
end
x1=[x1,zeros(1,N-length(x1))];
x2=[x2,zeros(1,N-length(x2))];
n=[0:
N-1];
x2=x2(mod(-n,N)+1);
H=zeros(N,N);
forn=1:
H(n,:
)=cirshiftd(x2,n-1,N);
yc=x1*H'
;
functiony=cirshiftd(x,m,N)%子程序2
iflength(x)>
thelengthofxmustbelessthanN'
x=[x,zeros(1,N-length(x))];
y=x(mod(n-m,N)+1);
2.某序列为
使用FFT函数分析其频谱.利用不同宽度N的矩形窗截短该序列,N分别为20,40,160,观察不同长度N的窗对谱分析结果的影响.
N=20;
n=0:
N-1;
xn=0.5*cos(11*pi*n/20)+cos(9*pi*n/20);
XK=fft(xn,N);
magXK=abs(XK);
phaXK=angle(XK);
subplot(3,2,1)
plot(n,xn)
n'
x(n)'
x(n)时域N=20'
subplot(3,2,2)
k=0:
length(magXK)-1;
stem(k,magXK,'
g.'
|X(k)|'
X(k)N=20'
N=40;
subplot(3,2,3)
x(n)时域N=40'
subplot(3,2,4)
X(k)N=40'
N=160;
subplot(3,2,5)
x(n)时域N=160'
subplot(3,2,6)
b.'
X(k)N=160'
实验三:
1.用巴特沃斯滤波器设计一个数字低通滤波器,要求在0-0.2π内衰耗不大于3dB,在0.6π–π内衰耗不小于60dB,采样频率Fs=500Hz.
wp=500*0.2*pi;
ws=500*0.6*pi;
Rp=3;
Rs=60;
Fs=500;
Ts=1/Fs;
%参数设计
[N,Wn]=buttord(wp,ws,Rp,Rs,'
s'
%?
模拟巴特沃斯低通滤波器
[Z,P,K]=buttap(N);
%°
把滤波器零极点模型转化为传递函数模型
[Bap,Aap]=zp2tf(Z,P,K);
把模拟滤波器原型转化为截止频率为wn的低通滤波器
[b,a]=lp2lp(Bap,Aap,Wn);
%双线性变换法实现模拟滤波器到数字滤波器转换
[bz,az]=bilinear(b,a,Fs);
%绘制频率响应图
[H,W]=freqz(bz,az);
plot(W*Fs/(2*pi),abs(H));
grid
频率/Hz'
频率响应幅度'
110900623'
2.分别使用矩形窗和海明窗函数设计一个线性相位FIR低通滤波器,其逼近理想低通滤波器的频率特性.
其中ωc=1rad,τ=12s。
clf
N=25;
Wn=1;
b=fir1(N,Wn/pi,hamming(N+1));
freqz(b,1,512)
b=fir1(N,Wn/pi,boxcar(N+1));
freqz(b,1,512)
gtext('
矩形'
海明'
四、实验心得
本次实验过程中,除了学会利用matlab学会产生各种常用序列、窗函数的方法,也学会利用此工具进行信号的处理,包括频谱分析、抽样、卷积等一些计算量比较大的计算,大大缩减了运算时间,使得对信号进行的数学处理,可以通过直观的图像进行形象的认识,也弥补了我数学运算上的不足。
虽然这个工具掌握的不够深,还不能够灵活运用,但是作为一种信号处理手段,当有了这个概念后,在未来的学习和工作中,如果有可以利用matlab这个工具进行更有效率的利用时,我可以再去专研学习。