当前位置:文档之家› 数字信号处理课程实验报告4

数字信号处理课程实验报告4

数字信号处理课程实验报告
实验名称FIR数字滤
班级姓名
波器设计
教师姓名实验地点实验日期
一、实验内容
1、设计一个最小阶次的低通FIR数字滤波器,性能指标为:通带0Hz~1500Hz,阻带截
止频率2000Hz,通带波动不大于1%,阻带波动不大于1%,采样频率为8000Hz;
2、用一个仿真信号来验证滤波器的正确性(注意:要满足幅度要求和线性相位特性)。

二、实验目的
1、利用学习到的数字信号处理知识解决实际问题;
2、了解线性相位滤波器的特殊结构;
3、熟悉FIR数字滤波器的设计方法。

三、涉及实验的相关情况介绍(包含使用软件或实验设备等情况)
计算机一台(安装MATLAB6.5版本或以上版本)
四、实验记录(以下1~5项必须完成,第6项为选择性试做)
1.原理基础
令希望设计的滤波器的传输函数是H(ejw,hd(n)是与其对应的单位脉冲响应。

一般情况下,由Hd(ejw)求出hd(n),然后由Z变换求出滤波器的系统函数。

但是通常Hd(ejw)在边界频率处有不连续点,这使得hd(n)是无限长的非因果序列,所以实际是不能实现的。

为了构造一个长度为N的线性相位滤波器,可以将hd(n)截取一段来近似,并且根据线性相位的特点,需要保证截取后的序列关于(N-1)/2对称。

设截取的一段为h(n),则
Wr(n)称为矩形窗函数。

当hd(n的对称中心点取值为(N-1)/2时,就可以保证所设计的滤波器具有线性相位。

2 实验流程
1.信号的谱分析
2.信号的采样
3.信号的恢复
3源程序代码
clc;
clear all;
close all;
fs=700;%采样频率
f=[30 40];%截止频率
a=[1 0];
dev=[0.01 0.1]; % dev纹波
[n,fo,ao,w]=remezord(f,a,dev,fs);%n滤波器阶数fo过渡带起止频率ao频带内幅度————firpmord
b=remez(n,fo,ao,w);%firpm
b=b.*blackman(length(b))';
b=b;
a=1;
figure(1)
% [H,W]=freqz(b,1,1024,Fs);
% plot(W,20*log10(abs(H)));
freqz(b,1,1024,fs);grid
title('滤波器')
grid
%%%%%%%%%%%%%%%%
fc=28;
fcl1=50;
fcl2=100;
fcl3=150;
N=1024;
n=1:N;
%
x=2*cos(2*pi*fc/fs*n)+j*2*sin(2*pi*fc/fs*n)+cos(2*pi*fcl/fs*n)+j*sin(2*pi*fcl/fs*n)+1*r and(1,N);
xc=2*cos(2*pi*fc/fs*n);
x=2*cos(2*pi*fc/fs*n)+2*cos(2*pi*fcl1/fs*n)+2*cos(2*pi*fcl2/fs*n)+0.1*rand(1,N);
% x=2*cos(2*pi*fc/fs*n);
xfft=abs(fft(x,N));
xfft=20*log10(xfft/max(xfft));
figure(2)
subplot(2,1,1)
plot(x(1:200))
subplot(2,1,2)
plot((1:N)/N*fs,(xfft),'b')
title('某个复合信号')
figure(3)
n=9;
rp=3;
rs=60;
wp=(fc+20)/(fs/2);
[b2,a2]=ellip(n,rp,rs,wp);
y=filter(b,a,x);
y2=filter(b2,a2,x);
subplot(2,1,1)
plot(1:300,y(1:300),'b',1:300,y2(1:300),'r');title('滤波以后的信号') subplot(2,1,2)
yfft=abs(fft(y,N));
yfft=20*log10(yfft/max(yfft));
plot((1:N)/N*fs,(yfft),'b');grid
4实验结果
5实验结果分析
实验结果符合的实验猜想,符合要求,近一步了解线性相位滤波器的特殊结构,熟悉FIR数字滤波器的设计方法。

五、实验总结
利用学习到的数字信号处理知识能够解决实际问题,了解线性相位滤波器的特殊结构,
熟悉用双线性变换法设计FIR数字滤波器,能够将FIR滤波器的设计同IIR滤波器相比较。

相关主题