Matlab与信号处理(信号处理)课件.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《Matlab与信号处理(信号处理)课件.ppt》由用户(三亚风情)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Matlab 信号 处理 课件
- 资源描述:
-
1、1MATLAB与信号处理数字信号处理. . .24、基于MATLAB的数字信号处理4.1 4.1 信号产生信号产生4.2 4.2 离散系统的离散系统的MATLABMATLAB实现实现4.3 4.3 变换的变换的MATLABMATLAB实现实现4.4 4.4 数字滤波器设计数字滤波器设计4.5 4.5 功率谱估计功率谱估计. . .34.1 信号产生l信号的表示信号的表示x(n)=x(n)=,x(-2),x(-1),x(0),x(1),x(2) Matlab中,信号都是用矩阵(向量)描述例如:x=4 3 7 9 1l典型离散信号表示典型离散信号表示单位抽样序列 x=zeros(1,N); x(1
2、)=1; (n) x(k)=1; (n-k)单位阶跃序列: x=ones(1,N);. . .4波形的产生波形的产生首先产生时间:如t=0:0.01:2*pi;产生信号:如 y=sin(2*t+pi/4);square sawtooth sinc 噪声的产生噪声的产生rand , randn01234567-1-0.500.51. . .5 周期波形产生函数名功能Sawtooth(t,width)产生锯齿波或三角波. Width确定最大值位置Square(t,duty)产生方波。Duty指定正半周期的比例Sinc(t)产生sinc或sin(pi*t)/(pi*t)Diric(t,n)产生Dir
3、ichlet函数. . .051015202530-1-0.8-0.6-0.4-0.200.20.40.60.81051015202530-2-1.5-1-0.500.511.52-10-50510-0.4-0.200.20.40.60.81-10-50510-0.4-0.200.20.40.60.81sawtooth(t,0.7)square(t)sinc(t)diric(t,5). . .7l信号的常规操作信号加x=x1+x2信号必须等长对齐信号乘x=x1.*x2信号必须等长对齐改变比例x=a*x1移位x=x1(n-k). . .8折叠y=x(-n)取样和y=sum(x(n1:n2)21(
4、 )nnyx n取样积y=prod(x(n1:n2)21( )nnyx n 卷积y=conv(x,h)y,ny=conv_m(x,nx,h,nh)相关r= xcorr(x,y). . .9l产生数据产生数据直接键盘输入直接键盘输入利用函数产生,如利用函数产生,如sin,cos,sawtooh等等用用Matlab从从.Mat文件导入文件导入通过文件读写产生数据,如通过文件读写产生数据,如fopen,fread等等用一个用一个.M文件专门产生数据文件专门产生数据. . .104.2 离散系统的MATLAB实现离散系统的表示方法:离散系统的表示方法: LSI系统的时域表示系统的时域表示 常系数线性差
5、分方程 单位抽样响应h(n) LSI系统的频域表示系统的频域表示 频率响应 (DFT) 转移函数 (z变换) 零极点增益 二次分式 离散系统的内部描述离散系统的内部描述 . . .11l离散系统的输入输出的差分方程:离散系统的输入输出的差分方程:l单位抽样响应单位抽样响应 ?) 1(1 . 0)(2 . 0)2(5 . 0) 1(4 . 0)(nxnxnynyny)(nhfilter函数y=filter(b,a,x)impz函数y=impz(b,a)00()()NMkrkra y nkb x nr. . .12. . .13l频率响应 ? h,f=freqz(b,a,n,fs)jweHNkjw
6、kMrjwrjwekaerbeH. . .14. . .15l 零极点增益?. . .16l离散系统的表示方法转换函数 tf2zp sos2tf tf2ss sos2zp zp2tf sos2ss zp2sos ss2tf zp2ss ss2zp ss2sos. . .17 4.3 变换的MATLAB实现1、DFT10110(2 /)( )( ).01( )( ).01 NknNnNknNNkjNNX kx n WkNx nX k WnNWe其中. . .18计算 DFT并画图 12N),()(6nnx. . .19. . .20. . .212、FFT 可利用内部函数fft进行计算,速度快。
7、 y=fft(x,n) x的n点fft x=ifft(y,n). . .223、z变换R,P,K=residuez(b,a);()()nnXzxnz cnjdzzzXnx121)()(. . .234、DCTly=dct(x,n)lx=idct(y,n)NknNnNcNnNcnxkXnxX10)(. . .24rp=84.3566. . .255、Hilbert变换l 解析信号 l DFT方法求解l 函数y=Hilbert(x)()()(nxjnxnz. . .26(1) 数字滤波器的基本概念数字滤波器的基本概念(2)基于)基于MATLAB的的IIR滤波器设计滤波器设计(3) 基于基于MATL
8、AB的的FIR滤波器设计滤波器设计4.4 基于基于MATLAB的数字滤波器设计的数字滤波器设计. . .27(1) 数字滤波器的基本概念数字滤波器的基本概念l数字滤波器数字滤波器 对数字信号进行滤波的线性时不变系统。l数字滤波器的分类数字滤波器的分类 IIR数字滤波器:设计经典选频滤波器,性能好, 阶数低。 FIR数字滤波器:设计线性相位经典滤波器,适用范围广、 阶数高。 . . .28l数字滤波器的设计步骤数字滤波器的设计步骤1) 按照实际任务的要求,确定滤波器的技术指标。2)用一个因果、稳定的离散线性时不变系统的系统函数 去逼近这一网络性能。根据不同的要求可选择IIR或者 FIR系统函数去
9、逼近。3)利用有限精度算法实现系统函数。. . .29lIIR数字滤波器一般有两种设计方法: 1)模拟原型法 先设计一个合适的模拟滤波器,然后再变 换为满足要求的数字滤波器 。 2)直接法 直接在离散时域和离散频域进行数字滤波 器的设计 . . .30lFIR一般有三种设计方法: 窗函数法 频率取样法 切比雪夫逼近法 . . .31(2) 基于基于MATLAB的的IIR滤波器设计滤波器设计lButterworth数字滤波器设计数字滤波器设计l椭圆数字滤波器设计椭圆数字滤波器设计lChebyshev-I数字滤波器设计数字滤波器设计lChebyshev-II数字滤波器设计数字滤波器设计. . .3
10、2lButterworth数字滤波器设计数字滤波器设计 MATLAB语句: b,a=butter(n,wn) (1) b,a=butter(n,wn,ftype) (2) z,p,k=butter() (3) a,b,c,d=butter() (4) 语句(1) (4) 都可以设计一个阶数为n,截止频率为wn的数字低通滤波器。对于语句(2) ,若参数ftype取hi-gh或stop,则可以来设计相应的高通或带阻滤波器。 返回值a和b为系统函数的分子和分母的系数。. . .33系统函数为: 返回值z,p,k分别是滤波器的零点、极点和增益。返回值A、B、C、D构造滤波器的状态方程。状态方程为: 其
11、中u是输入信号,x是状态变量,y是输出信号。nnznazaznbzbbzAzBzH) 1(.)2(1) 1(.)2() 1 ()()()(11)()()()()() 1(nDunCxnynBunAxnx. . .34例例 : 设计一个阶数为9阶、截止频率为300Hz的高通 Butterworth滤波器,采样频率为1000。并画出它的频率特性。程序: n=9; wn=300/500; b,a=buffer(n,wn,high); freqz(b,a,128,1000);. . .35Buttordworth高通滤波器的频率响应. . .36 n=2. . .37例例 设计一个10阶的带通Butt
12、erworth滤波器,它的通带 范围是100200Hz,采样频率为1000。并画出它的频率特性和冲击响应。 程序:n=10; wn=100 200/500; b,a=butter(n,wn); freqz(b,a,128,1000); y,t=impz(b,a,101); stem(t,y);. . .38 Buttordworth带通滤波器的频率响应. . .39Buttordworth滤波器的时域冲击响应. . .40l椭圆数字滤波器设计椭圆数字滤波器设计 MATLAB语法: b,a=ellip(n,Rp,Rs,wn) (5) b,a=ellip(n, Rp,Rs, wn,ftype) (
13、6) z,p,k=ellip() (7) a,b,c,d=ellip() (8) 语句(5) (8)都可以设计一个阶数为n,截止频率为wn,通带波纹最大衰减为Rp、阻带波纹最小衰减为Rs的数字低通滤波器。对于语句(6),若参数ftype取high或stop,则可以来设计相应的高通或带阻滤波器。 返回值a和b为系统函数的分子和分母的系数。返回 . . .41值z,p,k分别是滤波器的零点、极点和增益。返回值A、B、C、D可以用来构造滤波器的状态方程。例例 采样频率为1000Hz,请设计一个阶数为6阶、截止频 率为300Hz的低通ellip数字滤波器。其中滤波器在通 带的波纹为3dB,阻带的波纹为
14、50dB。 程序: b,a=ellip(6,3,50,300/500); freqz(b,a,512,1000); title(n=6 低通椭圆滤波器);. . .42椭圆低通滤波器的频率响应. . .43例例 设计一个10阶的带通滤波器,通带范围为100200Hz, 信号的采样频率为1000Hz,滤波器在通带的波纹为0.5 dB,阻带的波纹为20dB。设计出这个滤波器并画出它 的冲击响应。 程序: b,a=ellip(10,0.5,20,100 200/500); y,t=impz(b,a,101); freqz(b,a,128,1000); stem(t,y); title(n=10 带通
展开阅读全文