数字信号处理实习课案Word格式文档下载.docx
- 文档编号:817573
- 上传时间:2023-04-29
- 格式:DOCX
- 页数:23
- 大小:278.04KB
数字信号处理实习课案Word格式文档下载.docx
《数字信号处理实习课案Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《数字信号处理实习课案Word格式文档下载.docx(23页珍藏版)》请在冰点文库上搜索。
4.2IIR滤波器的设计的调试11
4.3FIR滤波器的调试12
5课程设计的思考与体会12
参考文献13
附录:
14
附录A采样信号MATLAB程序代码14
附录BIIR滤波器MATLAB程序代码16
附录CFIR滤波器MATLAB程序代码19
1本课程设计目的
(1)、掌握数字信号处理的基本概念,基本理论和基本方法。
(2)、熟悉离散信号和系统的时域特性。
(3)、掌握序列快速傅里叶变换方法。
(4)、学会MATLAB的使用,掌握MATLAB的程序设计方法。
(5)、掌握利用MATLAB对语音信号进行频谱分析。
(6)、掌握滤波器的网络结构。
(7)、掌握MATLAB设计IIR数字滤波器的方法和对信号进行滤波的方法。
1.2设计达到效果
学生通过课程设计加强实践能力,同时巩固数字信号处理的知识,学会设计设计滤波器,熟练掌握matlab软件的使用。
通过matlab完成课程设计的仿真,最后提升自己的整个学习能力。
2设计的详细原理
2.1采样定理
对模拟信号进行采样可以看做一个模拟信号通过一个电子开关S。
设电子开关每隔周期T合上一次,每次合上的时间为τ<
<
T,在电子开关输出端得到其采样信号
。
该电子开关的作用等效成一宽度为τ,周期为T的矩形脉冲þ
T(t),采样信号
就是
与þ
T(t)想乘的结果。
(2-1)
(2-2)
2.2卷积定理
1、离散时间序列f1(k)和f2(k)的卷积和定义:
(2-3)
2、在离散信号与系统分析中有两个与卷积和相关的重要结论:
a、
(2-4)
即离散序列可分解为一系列幅度由f(k)决定的单位序列δ(k)及其平移序列之积。
b、对线性时不变系统,设其输入序列为f(k),单位响应为h(k),其零状态响应为y(k),则有:
(2-5)
2.3IIR滤波器原理
“递归滤波器”。
递归滤波器,也就是IIR数字滤波器,顾名思义,具有反馈。
IIR数字滤波器的设计方法有两类:
间接设计法和直接设计法。
间接设计法是借助模拟滤波器设计方法进行设计的,先根据数字滤波器设计指标设计相应的过渡模拟滤波器,再将过渡模拟滤波器转换为数字滤波器。
直接设计法师在时域或频域直接设计数字滤波器。
由于模拟滤波器设计理论非常成熟,而且有很多性能优良的典型滤波器可供选择(如,巴特沃斯滤波器、切比雪夫滤波器、椭圆滤波器等),设计公式和图表完善,而且许多实际应用需要模拟滤波器的数字仿真,所以间接设计法得到广泛的应用。
N阶IIR数字滤波器的系统函数:
(2-6)
2.4FIR滤波器的原理
FIR(FiniteImpulseResponse)滤波器:
有限长单位冲激响应滤波器,又称为非递归型滤波器,是数字信号处理系统中最基本的元件,它可以在保证任意幅频特性的同时具有严格的线性相频特性,同时其单位抽样响应是有限长的,因而滤波器是稳定的系统。
设单位脉冲响应h(n)长度为N,器系统函数H(z)和差分方程分别为:
(2-7)
(2-8)
2.5窗函数原理
在实际进行数字信号处理时,往往需要把信号的观察时间限制在一定的时间间隔内,只需要选择一段时间信号对其进行分析。
这样,取用有限个数据,即将信号数据截断的过程,就等于将信号进行加窗函数操作。
而这样操作以后,常常会发生频谱分量从其正常频谱扩展开来的现象,即所谓的“频谱泄漏”。
当进行离散傅立叶变换时,时域中的截断是必需的,因此泄漏效应也是离散傅立叶变换所固有的,必须进行抑制。
而要对频谱泄漏进行抑制,可以通过窗函数加权抑制DFT的等效滤波器的振幅特性的副瓣,或用窗函数加权使有限长度的输入信号周期延拓后在边界上尽量减少不连续程度的方法实现。
而在后面的FIR滤波器的设计中,为获得有限长单位取样响应,需要用窗函数截断无限长单位取样响应序列。
另外,在功率谱估计中也要遇到窗函数加权问题。
由此可见,窗函数加权技术在
数字信号处理中的重要地位。
下面介绍窗函数的基本概念。
设x(n)是一个长序列,w(n)是长度为N的窗函数,用w(n)截断x(n),得到N点序列xn(n),即
(2-9)
在频域上则有
(2-10)
由此可见,窗函数w(n)不仅仅会影响原信号x(n)在时域上的波形,而且也会影响到频域内的形状。
数字信号处理领域中所用到的基本窗函数主要有:
表1-1
窗函数
旁瓣峰值幅度/db
过渡带宽
阻带最小衰减/db
矩形窗
-13
4π/N
12
三角形窗
-25
8π/N
汉宁窗
-31
-44
哈明窗
-41
-53
不萊克曼窗
-57
12π/N
-74
凯塞窗
10π/N
-80
3设计的步骤和过程
3.1采样定理的验证
对下面连续信号采样:
A=444.128,a=10,
=222.144,A为幅度因子,a为衰减因子,
为模拟角频率。
画出原信号时域图,x轴为时间,y轴为振幅,如图1:
图1原信号时域图
对原信号采样,x轴为离散点,y轴为振幅,如图2:
图2原信号采样时域图
原信号采样频域图,x轴为频率,y轴为振幅,如图3:
图3原信号采样频域图
改变采样频率,频谱混叠时域图,x轴为采样点,y轴为振幅,如图4:
图4频谱混叠时域图
频谱混叠频域图,x轴为频率,y轴为振幅,如图5:
图5频谱混叠频域图
3.2IIR滤波器的设计
录自己的一段语音,画出原信号时域图频域图,时域图x轴为时间,y轴为振幅,频域图x轴为频率,y轴为振幅,如图6:
图6原信号时域图频域图
加入噪音信号,得出加噪信号时域频域图,时域图x轴为时间,y轴为振幅,频域图x轴为频率,y轴为振幅,如图7:
图7加噪时域图频域图
同时画出椭圆IIR滤波器幅频图,x轴为频率,y轴为DB,如图8:
:
图8幅频图
然后对加噪信号进行滤波,得出滤波后信号时域频域图,时域图x轴为时间,y轴为振幅,频域图x轴为频率,y轴为振幅,如图9:
图9时域频域图
3.3FIR滤波器的设计
根据上次技术指标,仿真出汉明窗FIR滤波器,FIR窗函数滤波器幅频图,x轴为频率,y轴为振幅,如图10:
图10FIR窗函数滤波器幅频图
FIR滤波器时域频域图,时域图x轴为时间,y轴为振幅,频域图x轴为频率,y轴为振幅,如图11:
图11时域频域图
4设计程序的调试和运行结果
4.1采样信号的调试
根据实习的要求计算出信号的截止频率fc,当采样频率fs大于二倍fc时,由上图可知采样频谱并未发生频谱混叠,当fs小于二倍fc时,会产生频谱混叠。
4.2IIR滤波器的设计的调试
通过自己在电脑录的一段自己的一段话,在matlab中,利用wavread函数对语音信号进行采样,同时利用快速傅里叶变换与plot画出频谱图,通过分析得到技术指标,通带截止频率,阻带截止频率。
然后加上一段噪音,画出加噪信号的时域图和频谱图。
然后根据技术指标仿真出滤波器,同时画出滤波器的幅频特性图,以下是滤波器的程序:
Fs=10000;
%采样频率
wp=600*2/Fs;
%通带截止频率
ws=800*2/Fs;
%阻带截止频率
Rp=1;
%通带最大衰减
Rs=40;
%阻带最大衰减
[n,Wn]=ellipord(wp,ws,Rp,Rs,'
s'
);
%计算阶数边界频率
[B,A]=ellip(n,Rp,Rs,Wn,'
low'
%计算滤波器系数
[h,w]=freqz(B,A,512);
%求数字滤波器的频率响应
plot(w*Fs/(2*pi),20*log10(abs(h)/max(abs(h))));
axis([0,1200,-65,3]);
title('
数字低通滤波器的幅度响应'
xlabel('
Hz/频率'
%x轴
ylabel('
DB/分贝数'
%y轴
然后对加噪信号滤波,画出滤波后的信号频谱。
最后完整滤出噪音信号。
4.3FIR滤波器的调试
同样在技术指标下,仿真出滤波器,下面是滤波器设计程序:
wp=600/(0.5*fs);
ws=800/(0.5*fs);
rp=1;
rs=60;
[N1,wc]=buttord(wp,ws,rp,rs);
%求阶数
[B,A]=butter(N1,wc);
%Filter();
yo=filter(B,A,x2);
%滤波
hn=Fir1(95,0.5*(wp+ws),'
hanning(96));
%加窗口函数求系统函数
[h1,w]=freqz(hn,1);
figure
(2);
plot(w*fs/(2*pi),20*log10(abs(h1)));
hz/频率'
DB'
窗函数幅频特性'
yof=conv(hn,x2);
最后画出滤波后的信号频谱图,看滤波效果。
5课程设计的思考与体会
在课程设计的这段时间,我获益匪浅。
不但进一步掌握了数字信号处理的基础知识及MATLAB的基本操作,还使我了解了信号的产生、采样及频谱分析的方法。
我进一步了解到凡事都需要耐心,细心仔细是成功的保证。
虽然在做的过程中遇到了一些问题,但是我都通过自己的努力解决了它们,证明了自己的能力。
这次课程设计对我各方面的综合能力有了很大的提高,对我以后的工作,实践都有很大的帮助。
在此次课程设计当中,我经常把C语言的语法知识照搬到MATALAB设计中,从而导致调试失败,所以下次用此类语言做课程设计时,应事先学习下这类语言的基本语法,以免与其他语言相混淆。
还有就是有些不定参数存在时,可先取定值,用于调试,这样可以节约调试时间,从而提高效率。
本次课程设计不但让我又学到了一些知识,而且也提高了我的综合能力。
使我在各个方面都得到了锻炼,以后有这样的机会一定会更加的很好利用,它不仅可以提高学习的针对性而且可以很好的锻炼动手能力以及自己的逻辑设计能力和处理问题的能力,希望在以后这方面的能力会很好的加强。
参考文献
[1]《数字信号处理(第二版)》,丁玉美等,西安电子科技大学出版社;
[2]《数字信号处理试验指导书》王创新、文卉编长沙理工大学印刷(内部使用)
[3]《数字信号处理及其MATLAB实现》,陈怀琛等译,电子工业出版社;
[4]《MATLAB及在电子信息课程中的应用》,陈怀琛等,电子工业出版社。
[5]《数字信号处理》A.V.奥本海姆,R.W.谢弗著,北京:
科学出版社
[6]《数字信号处理——理论、算法与实现(第二版)》胡广书编著,北京:
电子工业出版社
附录A采样信号MATLAB程序代码
figure
(1);
t=0:
0.005:
1;
%时域
A=444.128;
p=222.144;
x=A*exp((-10)*t).*sin(p*t);
plot(t,x);
%连续画图
信号波形201484250216zmd'
t/s'
振幅'
n=0:
200;
fs=200;
%离散信号采样频率
x=A*exp((-10)*n/fs).*sin(p*n/fs);
stem(n,x);
采样后的信号'
hz'
figure(3);
y=fft(x,128);
y1=abs(y);
f=100*(0:
63)/128;
plot(abs(y1(1:
128)));
信号频谱'
figure(4);
t1=0:
0.01:
x1=A*exp((-10)*t1).*sin(p*t1);
stem(x1);
混频信号频谱'
figure(5);
y=fft(x1,128);
plot(y1);
混频频谱'
附录BIIR滤波器MATLAB程序代码
fs=8000;
[x,fs,bits]=wavread('
不说再见~1.wav'
%读取录音文件
%sound(x,fs,bits);
%创建一个窗口
subplot(2,1,1);
plot(x);
%信号图
s/时间'
fudu'
原始信号图'
y1=fft(x,4096);
%快速傅里叶变换
f=fs*(0:
2047)/4096;
%设x=0:
512代表一个一维数列0、1、2、3。
512,相当于x=[0,1,2,3,。
512]f=fs*x/1024就是每个x值进行fs*x(i)/1024运算
subplot(2,1,2);
plot(abs(y1));
%频谱图
原始信号频谱'
axis([045000300]);
%限定画图的范围
%加噪
t1=(0:
length(x)-1)/1024;
x1=[0.5*sin(2*pi*7000*t1)]'
;
%产生噪声信号
x0=x(:
1);
x2=x0+x1;
%加噪音
%sound(x2,fs,bits);
plot(x2);
加噪信号'
wavwrite(x2,fs,'
E:
\数字信号处理实习\加噪.wav'
%将滤波的信号生成wav文件
y2=fft(x2,4096);
plot(abs(y2));
加噪信号频谱'
grid
y3=filter(B,A,x2);
plot(y3);
t/时间'
滤波后的时域图'
y4=fft(y3,4096);
plot(abs(y4));
滤波后的频域图'
wavwrite(y3,fs,'
\数字信号处理实习\去噪.wav'
axis([0,1200,0,300]);
附录CFIR滤波器MATLAB程序代码
%t=0:
(size(x)-1);
%图一
滤波前的时域图'
%hd=dfilt.dffir(hn);
%图二plot(w*Fs/(2*pi),20*log10(abs(h)/max(abs(h))));
plot(yof);
y1=fft(yof,1024);
wavwrite(yof,fs,'
\数字信号处理实习\去噪2.wav'
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数字信号 处理 实习