数字信号处理的MATLAB实现

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

昆明理工大学信息工程与自动化学院学生实验报告

(2011—2012 学年第二学期)

课程名称:数字信号处理开课实验室:信自楼111 2012 年 5 月 31 日年级、专业、班生医学号姓

成绩

实验项目名称数字信号处理的matlab 实现指导教师

评语教师签名:

年月日

一.实验目的

熟练掌握matlab的基本操作。

了解数字信号处理的MATLAB实现。

二.实验设备

安装有matlab的PC机一台。

三.实验内容

.1.求信号x(n)=cos(6.3Пn/3)+cos(9.7Пn/30)+cos(15.3Пn/30),0≤n≤29的幅度频谱.

2. 用冲击响应不变法设计一个Butterworth低通数字滤波器,要求参数为:

Wp=0.2Пαp=1dB

Ws=0.3Пαs=15dB

3.用双线性变换法设计一个Chebyshev高通IIR滤波器,要求参数为:

Wp=0.6Пαp=1dB

Ws=0.4586Пαs=15dB

4.用窗函数法设计一个低通FIR滤波器,要求参数为:

Wp=0.2Пαp=0.3dB

Ws=0.25Пαs=50dB

5.用频率抽样法设计一个带通FIR滤波器,要求参数为:

W1s=0.2П W1p=0.35П W2p=0.65П W2s=0.8П

αs=60dB αp=1dB

6.根据 4 点矩形序列,( n ) = [1 1 1 1] 。做 DTFT 变换,再做 4 点 DFT 变换。然后分别补零做 8 点 DFT 及 16 点 DFT。

7.调用filter解差分方程,由系统对u(n)的响应判断稳定性

8编制程序求解下列系统的单位冲激响应和阶跃响应。 y[n]+ 0.75y[n -1]+ 0.125y[n -2] = x[n]- x[n -1]

四.实验源程序

1.

n=[0:1:29];

x=cos(6.3*pi*n/30)+cos(9.7*pi*n/30)+cos(15.3*pi*n/30);

subplot(2,2,1);

stem(n,x);

title('信号x(n),0<=n<=29');

X=fft(x);

magX=abs(X(1:1:16));

k=0:1:15;

subplot(2,2,2);

stem(k,magX);

title('FFT幅度');

2.

wp=0.2*pi; %通带边界数字频率(Hz)

ws=0.3*pi; %阻带边界数字频率(Hz)

Rp=1; %通带波动(dB)

As=15; %阻带波动(dB)

T=1; %取T=1

OmegaP=wp*T; %模拟原型通带边界频率

OmegaS=ws*T; %模拟原型阻带边界频率

[cs,ds]=afd_butt(OmegaP,OmegaS,Rp,As);%调用模拟Butterworth滤波器的设计

[b,a]=imp_invr(cs,ds,T); %调用模拟到数字滤波器转换函数%[b0,B,A]=dir2cas(b,a); %直接型转换为级联型系数的计算[H,w]=freqz(b,a,501); %调用计算频率特性函数

mag=abs(H);pha=angle(H);

subplot(2,2,1);plot(w/pi,mag);title('幅频特性');

subplot(2,2,2);plot(w/pi,-pha/pi);title('相频特性');

3.

ws=0.4586*pi; %通带边界数字频率(Hz)

wp=0.6*pi; %阻带边界数字频率(Hz)

Rp=1; %通带波动(dB)

As=15; %阻带衰减(dB)

[N,wn]=cheb1ord(wp/pi,ws/pi,Rp,As);%Chebyshew滤波器参数计算

[b,a]=cheby1(N,Rp,wn,'high'); %数字Chebyshew高通滤波器设计

%[b0,B,A]=dir2cas(b,a); %直接型转换为级联型系数计算

[H,w]=freqz(b,a,501); %调用计算频率特性函数

mag=abs(H);pha=angle(H); %计算幅频和相频特性

subplot(2,2,1);plot(w/pi,mag);title('幅频特性');

subplot(2,2,2);plot(w/pi,-pha/pi);title('相频特性');

4.

p=0.2*pi;ws=0.3*pi;

tr_width=ws-wp;

M=ceil(6.6*pi/tr_width)+1;

n=[0:1:M-1];

wc=(ws+wp)/2;

hd=ideal_lp(wc,M);

w_ham=(hamming(M))';

h=hd.*w_ham;

[H,w]=freqz(h,[1],501);

mag=abs(H);pha=angle(H);

db=20*log10((mag+eps)/max(mag));

delta_w=2*pi/1000;

Rp=-(min(db(1:1:wp/delta_w+1)));

As=-round(max(db(ws/delta_w+1:1:501)));

subplot(2,2,1);stem(n,h);title('单位抽样响应');

subplot(2,2,2);plot(w/pi,db);title('幅频特性(db)');

Rp=-(min(db(1:1:wp/delta_w+1)))

As=-round(max(db(ws/delta_w+1:1:501)))

5.

M=40;alpha=(M-1)/2;l=0:M-1;wl=(2*pi/M)*l;

T1=0.109021;T2=0.59417456;

Hrs=[zeros(1,5),T1,T2,ones(1,7),T2,T1,zeros(1,9),T1,T2,ones(1,7),T2,T1,zeros(1, 4)];

Hdr=[0,0,1,1,0,0];wdl=[0,0.2,0.35,0.65,0.8,1];

k1=0:floor((M-1)/2);k2=floor((M-1)/2)+1:M-1;

angH=[-alpha*(2*pi)/M*k1,alpha*(2*pi)/M*(M-k2)];

H=Hrs.*exp(j*angH);

h=real(ifft(H,M));

[db,mag,pha,grd,w]=freqz_m(h,1);

[Hr,ww,a,L]=Hr_Type2(h);

subplot(2,2,1);stem(l,h);title('单位抽样响应');

subplot(2,2,2);plot(w/pi,db);axis([0,1,-100,10]);

title('幅频特性')

set(gca,'XTickMode','manual','XTick',[0,0.2,0.35,0.65,0.8,1]);

6.

% x(n)=[1 1 1 1],长度为4的离散序列,求DTFT[x(n)];

n=0:3;

x=[1 1 1 1];

k=0:1000;

w=(2*pi/1000)*k;

X=x*(exp(-j*2*pi/1000)).^(n'*k);

magX=abs(X);angX=angle(X);

realX=real(X);imagX=imag(X);

hold on

figure(1);

subplot(2,1,1);plot(k/500,magX);grid

相关文档
最新文档