现代信号处理课设报告_数字信号处理课设报告
现代信号处理课设报告由刀豆文库小编整理,希望给你工作、学习、生活带来方便,猜你可能喜欢“数字信号处理课设报告”。
中南大学 课程设计报告
题 目 现代信号处理课程设计 学生姓名 万义武 指导教师 周扬、支国明 学 院 信息科学与工程学院 学 号 0909118219 专业班级 电子信息专业1102班
一、课程设计题目
1、信号发生器
用户根据测试需要,可任选以下两种方式之一生成测试信号:(1)直接输入(或从文件读取)测试序列;(2)输入由多个不同频率正弦信号叠加组合而成的模拟信号公式(如式 1-1 所示)、采样频率(Hz)、采样点数,动态生成该信号的采样序列,作为测试信号。12 100sin(2)100sin(2)100sin(2)n f t f t f t
(1-1)
2、频谱分析
使用 FFT 对产生的测试信号进行频谱分析并展示其幅频特性与相频特性,指定需要滤除 的频带,通过选择滤波器类型(IIR / FIR),确定对应的滤波器(低通、高通)技术指标。
3、滤波器设计
根据以上技术指标(通带截止频率、通带最大衰减、阻带截止频率、阻带最小衰减),设 计数字滤波器,生成相应的滤波器系数,并画出对应的滤波器幅频特性与相频特性。(1)IIR DF 设计:可选择滤波器基型(巴特沃斯或切比雪夫型);
(2)FIR DF 设计:使用窗口法(可选择窗口类型,并比较分析基于不同窗口、不同阶数 所设计数字滤波器的特点)。
4、数字滤波
根据设计的滤波器系数,对测试信号进行数字滤波,展示滤波后信号的幅频特性与相频特 性,分析是否满足滤波要求(对同一滤波要求,对比分析各类滤波器的差异)。(1)IIR DF:要求通过差分方程迭代实现滤波(未知初值置零处理);
(2)FIR DF:要求通过快速卷积实现滤波(对于长序列,可以选择使用重叠相加或重叠 保留法进行卷积运算)。
5、选做内容
将一段语音作为测试信号,通过频谱展示和语音播放,对比分析滤波前后语音信号的变化,进一步加深对数字信号处理的理解。
二、设计过程
《1》、第一、二题:(1).信号发生器。
①直接输入(或从文件读取)测试序列;
②输入由多个不同频率正弦信号叠加组合而成的模拟信号公式。
③使用FFT对产生的测试信号进行频谱分析并展示其幅频特性与相频特性。(2).源代码
t=(0:0.00001:1);n=0:100;f1=50;y=sin(2*pi*f1*t);f=input('please f=');T=1/f;x=sin(2*pi*f1*n*T);m=fft(x);h=abs(m);figure(1);subplot(321)plot(t,y);subplot(322)stem(n,x,'.');title('xulitu');subplot(323)plot(n,h);title('fupintu');subplot(324)xi=interp1(n,x,t*f1,'linear');plot(t,xi);title('chongjiantu');
(3)结果
(4)分析:
采样原理:对模拟信号进行采样可以看作是一个模拟信号通过一个电子开关S。设电子开关每隔周期T合上一次,每次合上的时间为τ,在电子开关输出端得到其采样信号,一般τ很小, τ越小,采样输出脉冲的幅度越接近输入信号在离散时间点上的瞬时值。
《2》、第三、四题
(1)题目(滤波器设计与数字滤波)
滤波器设计—根据输入的数字滤波器的技术指标,包括通带截止频率,通带最大衰减,阻带截止频率,阻带最小衰减,设计滤波器,生成相应的滤波器系数,并画出对应的滤波器幅频、相频特性。IIR DF设计:可选择滤波器基型(巴特沃斯或切比雪夫型);
(2)源代码
i=input('please input i(choose fuction)=');switch fix(i)
case {1}%低通滤波
wp=input('please input wp=');ws=input('please input ws=');ap=input('please input ap=');as=input('please inout as=');fs=1;T=1/fs;
wp1=(2/T)*tan(wp/2);ws1=(2/T)*tan(ws/2);
[n,wn]=buttord(wp1,ws1,ap,as,'s');[b,a]=butter(n,wn,'s');[bz,az]=bilinear(b,a,fs);w=linspace(0,2*pi,1000);h=freqz(bz,az,w);
subplot(311)
plot(w(1:500)/pi,abs(h(1:500)));grid;
title(['N=',num2str(n)]);text(0.1,0.8,['b=',num2str(bz)]);text(0.1,0.4,['a=',num2str(az)]);xlabel('w/pi');ylabel('幅度(dB)');
subplot(312)plot(w/pi,angle(h));
xlabel('w/pi');ylabel('相位');grid;
subplot(313)y=real(ifft(h));x=0:999;plot(x,y);
title('单位脉冲响应');grid;clear;
case{2}%高通滤波
wp=input('please input wp=');ws=input('please input ws=');ap=input('please input ap=');as=input('please inout as=');fs=1;T=1/fs;
wp1=(2/T)*tan(wp/2);ws1=(2/T)*tan(ws/2);
[n,wn]=buttord(wp1,ws1,ap,as,'s');[b,a]=butter(n,wn,'high','s');[bz,az]=bilinear(b,a,fs);w=linspace(0,2*pi,1000);h=freqz(bz,az,w);
subplot(311)
plot(w(1:500)/pi,abs(h(1:500)));grid;
title(['N=',num2str(n)]);text(0.1,0.9,['b=',num2str(bz)]);text(0.1,0.4,['a=',num2str(az)]);xlabel('w/pi');ylabel('幅度(dB)');
subplot(312)plot(w/pi,angle(h));
xlabel('w/pi');ylabel('相位');grid;
subplot(313)y=real(ifft(h));x=0:999;plot(x,y);
title('单位脉冲响应 ');grid;clear;
case{3}%带通滤波
wpl=input('please input wpl=');wph=input('please input wph=');wsl=input('please input wsl=');wsh=input('please input wsh=');ap=input('please input ap=');as=input('please inout as=');wp=[wpl,wph];ws=[wsl,wsh];fs=1;T=1/fs;
wp2=(2/T)*tan(wp/2);ws2=(2/T)*tan(ws/2);
[n,wn]=buttord(wp2,ws2,ap,as,'s');[b,a]=butter(n,wn,'s');[bz,az]=bilinear(b,a,fs);w=linspace(0,2*pi,1000);h=freqz(bz,az,w);
subplot(311)
plot(w(1:500)/pi,abs(h(1:500)));grid;
title(['N=',num2str(n)]);text(0.1,1.2,['b=',num2str(bz)]);text(0.1,0.4,['a=',num2str(az)]);xlabel('w/pi');ylabel('幅度(dB)');
subplot(312)plot(w/pi,angle(h));
xlabel('w/pi');ylabel('相位');grid;
subplot(313)y=real(ifft(h));x=0:999;plot(x,y);
title('单位脉冲响应 ');grid;clear;
end
(3)结果
低通滤波
高通滤波
带通滤波(4)分析
用双线性变换法设计无限脉冲响应数字滤波器(IIF DF)时,先把数字滤波器指标转换成模拟滤波器的指标,然后根据模拟滤波器的指标设计模拟滤波器,再经过线性变换把模拟滤波器转换成数字滤波器。该系统要能够设计巴特沃兹型低通、带通、高通滤波器,并能够输入数字滤波器的性能指标,显示出滤波器的阶数和系数。该系统的关键部分是滤波器的设计部分,按照双线性变换法设计滤波器的步骤进行设计即可。
三、设计总结与心得体会
在课程设计的这段时间,我获益匪浅。不但进一步掌握了数字信号处理的基础知识及MATLAB的基本操作。虽然在做的过程中遇到了一些问题,但都通过自己的努力解决了它们。这次课程设计对我各方面的综合能力有了很大的提高,对我以后的实践都有很大的帮助。
本次课程设计不但让我又学到了一些知识,而且也提高了我的综合能力。使我在各个方面都得到了锻炼,以后有这样的机会一定会更加的很好利用,它不仅可以提高学习的针对性而且可以很好的锻炼动手能力以及自己的逻辑设计能力和处理问题的能力,希望在以后这方面的能力会很好的加强。
四、课程设计指导书
[1] 《数字信号处理(第二版)》.丁玉美等 西安电子科技大学出版社 [2] 《数字信号处理及其MATLAB实现》,陈怀琛等译,电子工业出版社;
[3] 《MATLAB及在电子信息课程中的应用》,陈怀琛等,电子工业出版社
五、鸣谢
此次的课程社真心感谢那些为我们提供良好的上机环境已经良好的知道的老师们。同时也感谢中南大学给了我这一次检验自己的动手能力以及发现自己错误的机会!