实验一1.分析并绘出常用函数(a) 锯齿波; (b) 三角波; (c) 方波; (d) 抽样函数 的时域特性波形. 程序:clear allª¤ t=0:0.0001:0.1;x1=sawtooth(2*pi*50*t); %产生五个周期锯齿波 subplot(221) plot(t,x1)title('锯齿波110900623') xlabel('t')x2=sawtooth(2*pi*50*t,0.5); %产生五个周期三角波 subplot(222) plot(t,x2) xlabel('t')title('三角波110900623')x3=square(2*pi*50*t); %产生十个周期方波 subplot(223) plot(t,x3) xlabel('t')title('方波110900623') axis([0,0.1,-1.2,1.2]) t=-4:0.1:4;x4=sinc(t); %产生抽样信号 subplot(224) plot(t,x4) xlabel('t')axis([-5,5,-0.5,0.5]) title('抽样信号110900623')-1-0.500.51锯齿波110900623t-1-0.500.51t三角波110900623-1-0.500.51t方波110900623-0.50.5t抽样信号1109006232.分析并绘出常用窗函数时域特性波形. clear ally1=boxcar(80); %矩形窗 plot(y1,'k')axis([-1,81,-0.2,1.2]) gtxst(‘矩形窗’) hold ony2=triang(80); %三角窗 plot(y2,'m.') hold ony3=hanning(80); %汉宁窗 plot(y3,'y*') gtxst(‘汉宁窗’) hold ony4=hamming(80); %海明窗 plot(y4,'r-') gtxst(‘海明窗’) hold ony5=blackman(80); %布莱克曼窗 plot(y5,'g:')gtxst(‘布莱克曼窗’) hold ony6=kaiser(80,7.865);%凯塞-贝尔窗 plot(y6,'b-.')gtxst(‘凯塞-贝尔窗’)title('常用窗函数110900623')01020304050607080-0.20.20.40.60.81窗常用窗函数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:1:length(ycn1)-1];ny2=[0:1:length(ycn2)-1];ny3=[0:1:length(ycn3)-1];subplot(2,2,1);stem(ny0,yln)ylabel('线性卷积')subplot(2,2,2);stem(ny1,ycn1);ylabel('圆周卷积6')subplot(2,2,3);stem(ny2,ycn2)ylabel('圆周卷积8')subplot(2,2,4);stem(ny3,ycn3)ylabel('圆周卷积10')axis([0,10,0,40]);function yc=circonv2(x1,x2,N) %子程序1if length(x1)>Nerror('N must not be less than length of x1');endif length(x2)>Nerror('N must not be less than length of x2');endx1=[x1,zeros(1,N-length(x1))];x2=[x2,zeros(1,N-length(x2))];n=[0:1:N-1];x2=x2(mod(-n,N)+1);H=zeros(N,N);for n=1:1:NH(n,:)=cirshiftd(x2,n-1,N);endyc=x1*H';function y=cirshiftd(x,m,N) %子程序2if length(x)>Nerror('the length of x must be less than N');endx=[x,zeros(1,N-length(x))]; n=[0:1:N-1]; y=x(mod(n-m,N)+1);线性卷积110900623圆周卷积6110900623圆周卷积8110900623圆周卷积101109006232.某序列为使用FFT 函数分析其频谱.利用不同宽度N 的矩形窗截短该序列,N 分别为20,40,160,观察不同长度N 的窗对谱分析结果的影响. clear all 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)xlabel('n');ylabel('x(n)'); title('x(n)时域 N=20'); subplot(3,2,2)k=0:length(magXK)-1; stem(k,magXK,'g.');xlabel('k');ylabel('|X(k)|'); title('X(k) N=20'); hold on N=40; n=0:N-1;119()0.5cos cos 2020x n n n ππ⎛⎫⎛⎫=+ ⎪ ⎪⎝⎭⎝⎭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,3) plot(n,xn)xlabel('n');ylabel('x(n)'); title('x(n)时域 N=40'); subplot(3,2,4)k=0:length(magXK)-1; stem(k,magXK,'m.'); xlabel('k');ylabel('|X(k)|'); title('X(k) N=40'); hold on N=160; 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,5) plot(n,xn)xlabel('n');ylabel('x(n)'); title('x(n)时域 N=160'); subplot(3,2,6)k=0:length(magXK)-1; stem(k,magXK,'b.');xlabel('k');ylabel('|X(k)|'); title('X(k) N=160');-202nx (n )x(n)时域 N=20k|X (k )|X(k) N=20-202nx (n )x(n)时域 N=40k|X (k )|X (k) N=40-202nx (n )x(n)时域 N=160k|X (k )|X (k) N=160实验三:1.用巴特沃斯滤波器设计一个数字低通滤波器,要求在0-0.2π衰耗不大于3dB,在0.6 π –π衰耗不小于60dB ,采样频率Fs=500 Hz. 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)); gridxlabel('频率/Hz')ylabel('频率响应幅度') title('110900623')0.20.40.60.811.21.4频率/Hz频率响应幅度1109006232.分别使用矩形窗和海明窗函数设计一个线性相位FIR 低通滤波器,其逼近理想低通滤波器的频率特性.其中ωc=1rad,τ=12s 。
clf,()0,j c d c eH ωτωωωωωπ-⎧≤⎪=⎨<≤⎪⎩N=25; Wn=1;b=fir1(N,Wn/pi,hamming(N+1)); freqz(b,1,512) title('110900623') hold onb=fir1(N,Wn/pi,boxcar(N+1)); freqz(b,1,512) title('110900623') gtext('矩形') gtext('海明') gtext('矩形') gtext('海明')0.10.20.30.40.50.60.70.80.91-1500-1000-500Normalized Frequency (⨯π rad/sample)P h a s e (d e g r e e s)0.10.20.30.40.50.60.70.80.91-150-100-50050Normalized Frequency (⨯π rad/sample)M a g n i t u d e (d B )110900623四、实验心得本次实验过程中,除了学会利用matlab 学会产生各种常用序列、窗函数的方法,也学会利用此工具进行信号的处理,包括频谱分析、抽样、卷积等一些计算量比较大的计算,大大缩减了运算时间,使得对信号进行的数学处理,可以通过直观的图像进行形象的认识,也弥补了我数学运算上的不足。