信号分析与处理课程设计报告书.docx
《信号分析与处理课程设计报告书.docx》由会员分享,可在线阅读,更多相关《信号分析与处理课程设计报告书.docx(10页珍藏版)》请在冰豆网上搜索。
信号分析与处理课程设计报告书
课程设计报告
(2014--2015年度第一学期)
名称:
信号分析与处理A课程设计
题目:
FIR数字滤波器的设计
院系:
自动化
班级:
测控1201
学号:
201202030102
学生姓名:
蔡文斌
指导教师:
金秀章
设计周数:
第22周
成绩:
日期:
2015年01月23日
《信号分析与处理A》课程设计
任务书
一、目的与要求
能够运用本课程中学到的知识,设计基于窗口函数法的FIR数字滤波器。
要求掌握数字信号处理的基本方法;FIR滤波器的设计步骤和方法;能够熟练采用C语言或MATLAB语言进行计算机辅助设计和仿真验证设计内容的合理性。
二、主要内容
2.请采用窗口函数法设计一个低通FIR数字滤波器,要求设计的频率响应为
三、进度计划
序号
设计(实验)内容
完成时间
备注
1
领取设计任务查阅相关资料
2015.1.19
2
制定滤波器设计的方案
2015.1.20
3
编程实现
2015.1.20-2015.1.22
4
答辩
2015.1.23
四、设计(实验)成果要求
课程设计报告
五、考核方式
设计报告+答辩
学生姓名:
蔡文斌
指导教师:
金秀章
2015年1月19日
课程设计正文
一、课程设计的目的与要求
能够运用本课程中学到的知识,设计基于窗口函数法的FIR数字滤波器。
要求掌握数字信号处理的基本方法;FIR滤波器的设计步骤和方法;能够熟练采用C语言或MATLAB语言进行计算机辅助设计和仿真验证设计内容的合理性。
二、设计正文
滤波器的设计
1、所需设计的滤波器要求
采用窗口函数法设计一个低通FIR数字滤波器,要求设计的频率响应为
2、分析所需设计的滤波器并确定序列长度
本题要求我们设计一个低通FIR滤波器,其要求的波动范围为
,由20log0.02
-34db,查表,根据最小阻带衰减,所以选择海宁窗。
该滤波器的通带截止频率
,阻带截止频率
,所以截止频率
。
过渡带宽
。
根据海宁窗的过渡带宽
,可以确定序列的长度为80,由于N必须为奇数,所以取N=81。
3、构造理想的频率响应
将此滤波器化为一个理想低通数字滤波器,其频率特性为
4、计算数字滤波器的单位采样响应并对其进行加窗处理
通过对理想低通数字滤波器的频率特性做傅里叶变换可得理想单位采样响应即
所选海宁窗窗函数为
运用Matlab对所选窗函数进行仿真验证:
对海宁窗移位并施加海宁窗,得:
运用Matlab仿真可得单位采样响应如下:
5、对单位冲激响应做傅里叶变换,检验其是否合格
单位采样响应的频率响应为
利用Matlab进行仿真可得:
在图中可清楚看出,通带截止频率
,阻带截止频率
,
其通带为(0~
),阻带为(
~
),所设计的滤波器通带阻带都包含题目所要求的。
由程序可知,在通带(0~
)中,Max=1.0064<1.02,Min=0.9981
0.98,通带满足设计要求。
由程序可知,在阻带(
~
)中,Max=0.0064<0.02,Min=1.5893e-08>-0.02,阻带满足设计要求。
综上,所设计的滤波器满足要求。
6、构造通带和阻带内不同频率和不同幅值的正弦序列组合而成的输入信号序列,用所设计的滤波器对其进行滤波,验证设计滤波器的合理性。
通带内取值得
,阻带内取值得
,
。
仿真如图:
分析:
由上图可知,滤波后的信号y(n)与信号x(n)波形相同。
证明所设计的滤波器性能良好,满足设计要求。
三、课程设计的总结或结论
通过本次低通FIR数字滤波器的设计,加深了对数字滤波器的理解,以及更加清楚了数字滤波器的在实际生活中的应用,也让我明白了信号分析与处理这门课的意义所在。
在这次课设中,运用了在课堂上学到的有限冲激响应数字滤波器设计的知识,以及运用在课下学到的通过Matlab绘图分析的知识。
另外,这次课设让我学到了一些课本上没有的知识,以及加深了对数字滤波器设计的步骤,收获颇丰。
四、参考文献
[1]崔翔主编.《信号分析与处理》.中国电力出版社,第二版.2011年
[2]张志涌,杨祖樱.《MATLAB教程》.北京航空航天大学出版社,2010年
附录:
Matlab程序
clear;
N=81;
wc=0.35*pi;
forn=1:
N
w(n)=0.5*(1+cos(pi/40*(n-41)));
ifn==41
hd(n)=wc/pi;
h(n)=wc/pi;
else
hd(n)=sin((n-41)*wc)/(pi*(n-41));
h(n)=sin((n-41)*wc)/(pi*(n-41))*w(n);
end
end
m=0:
pi/800:
pi;
forn=1:
801;
H(n)=0;
fork=1:
N;
H(n)=H(n)+h(k)*exp(-j*m(n)*(k-1));
end
H(n)=abs(H(n));
end
forn=1:
200
x1(n)=12*cos(0.12*pi*n)
x2(n)=23*cos(0.6*pi*n);
x(n)=x1(n)+x2(n);
end
form=2:
281
y(m)=0;
fork=1:
N
ifm>k
ifk>m-201
y(m)=y(m)+x(m-k)*h(k);
end
end
end
end
figure
(1)
plot(w);
xlabel('n');
ylabel('w(n)');
title('海宁窗')
figure
(2)
plot(h);
title('实际单位采样响应')
xlabel('n');
ylabel('h(n)')
figure(3)
plot(H);
title('单位冲激响应幅度特性')
xlabel('w(*pi/800)')
ylabel('H(w)')
Max=max(H(1:
241))
Min=min(H(1:
241))
Max=max(H(321:
800))
Min=min(H(321:
800))
figure(4)
subplot(311)
plot(x1);
title('曲线x1')
xlabel('n');
ylabel('x1');
axis([60160-2020]);
subplot(312)
plot(x);
title('曲线x')
xlabel('n');
ylabel('x');
axis([60160-5050])
subplot(313)
plot(y);
axis([60160-2020])
title('滤波后的曲线')
xlabel('n');
ylabel('y');