matlab与信号与系统的应用

上传人:aa****6 文档编号:51023462 上传时间:2018-08-12 格式:PPT 页数:72 大小:860KB
返回 下载 相关 举报
matlab与信号与系统的应用_第1页
第1页 / 共72页
matlab与信号与系统的应用_第2页
第2页 / 共72页
matlab与信号与系统的应用_第3页
第3页 / 共72页
matlab与信号与系统的应用_第4页
第4页 / 共72页
matlab与信号与系统的应用_第5页
第5页 / 共72页
点击查看更多>>
资源描述

《matlab与信号与系统的应用》由会员分享,可在线阅读,更多相关《matlab与信号与系统的应用(72页珍藏版)》请在金锄头文库上搜索。

1、Matlab与信号与系统的应用提 纲一、信号系统的MATLAB表示 二、线性卷积及MATALB实现 三、系统描述与转换 四、时域分析 五、频域分析连续信号的MATLAB表示n连续信号的时间取值t是连续的,而MATLAB中变 量的取值都是离散的,因此MATLAB对连续信号 只能提供近似表示,即采用对连续时间信号进行 采样的方式进行,为了保证采样值能尽可能保留 信号的细节,应该确保足够小的抽样时间,同时 采用plot命令画出连续信号的图形。一、信号系统的MATLAB表示n对于余弦函数: n设置时间的范围0 Tn在取值范围内的采样点数设置为N,这样时 间点的取值为:则采样信号的形式为:nn的取值范围

2、为:0 N 则在不同采样点数下plot的绘图结果为:一、信号系统的MATLAB表示连续信号的MATLAB表示一、信号系统的MATLAB表示由上图可知,在相同的时间范围内,采样点越多,越能 保留原连续信号的波形。一、信号系统的MATLAB表示离散信号的MATLAB表示离散信号为时间上离散、幅度取有限值的信 号,因此时间取值用n代替了连续的t,并且用 stem命令画出离散信号波形。一、信号系统的MATLAB表示n同样考虑余弦信号:n的取值范围为0 30 MATLAB的程序: n = 0:1:30 y = 2*cos(2*pi*n/16+pi/4) stem(y)一、信号系统的MATLAB表示一、信

3、号系统的MATLAB表示一、信号系统的MATLAB表示n单脉冲序列n单位阶跃序列n矩形窗信号x=zeros(1,N); % N是序列的长度x(1)=1;x=ones(1,N); % N是序列的长度x(1)=1;信号的卷积运算n离散时间系统的输出是系统的输入信号与系统单位脉 冲响应的卷积:MATLBA中用函数conv()进行卷积运算二、线性卷积及MATALB实现设x = 3,-3,7,0,-1,5,2; nx = -4:2; h = 2,3,0,-5,2,1; nh = -1:4; 求其卷积y(n)。解:图2.3.4。x(k)和h(k)如左上图; x(k)和h(-k)如右上图;设n=-1,得出的

4、x(k)和h(n-k)见左下图,设n=2,得出的x(k)和h(n-k)见右下图。由左下图k= -4: 0五个点上的x和h乘积之和,得到y(-1)=3*2+ (-3) *(-5)+7*0+0*3+(-1)*2=19由右下图k=-2: 2五个点上的x和h乘积之和,得到y(2)=7*1+0*2+(-1)*(-5)+5*0+2*3=18对每一个n值,都要这样运算y(n),很繁。序列的卷积手工运算算例二、线性卷积及MATALB实现序列的卷积运算算例3-370-15 223-52 1n序列的卷积运算算例 functiony,ny=conv_improve(x,nx,h,nh) %x,nx为第一个信号; h

5、,nh为第一个信号 ny1=nx(1)+nh(1); ny2=nx(length(x)+nh(length(h); ny=ny1+ny2 y=conv(x,h)调用并执行上程序得到 y= 6 3 5 6 19 -31 30 18 -27 -1 9 2 ny=-5 -4 -3 -2 -1 0 1 2 3 4 5 6 注:conv函数假定两个序列都是从n=0开始的二、线性卷积及MATALB实现用MATALAB实现信号的卷积运算例:离散时间系统的单位脉冲响应为:输入信号为:则系统的响应为:y = conv(x,h)二、线性卷积及其MATALB实现MATLAB的程序: h = 0.25*ones(1,

6、4); x = ones(1,10); y = conv(x,h); stem(y)二、线性卷积及其MATALB实现n卷积运算conv除了能根据系统的脉冲响 应和输入信号计算系统的输出信号,还 可以计算两个多项式的乘积结果。n则y1*y2的多项式就可以用conv完成二、线性卷积及其MATALB实现n 多项式乘法注意:注意:y1y1和和y2y2的幂次是按照降幂顺序排列的,的幂次是按照降幂顺序排列的, 这样这样a0a0对应的幂次为对应的幂次为0 0,因此如果多项式没有,因此如果多项式没有 常数项,则多项式也要写出常数项,则多项式也要写出a0a0的取值为的取值为0 0 二、线性卷积及其MATALB实

7、现例:y1 = 3 4 1 0; y2 = 1 2; conv(y1,y2) ans =3 10 9 2 0二、线性卷积及其MATALB实现二、线性卷积及其MATALB实现n互相关函数定义:n相关函数与线性卷积的关系用xcorr(x,y)计算两个信号的相关性注意:计算相关性时,两个序列都不翻转,只是将h(k)移动后对应相 乘再相加;卷积时,要将其中一个序列翻转后再移动;相关表示两个信号之间的关联性,与系统无关,卷积则表示的是 时不变系统中输入、单位响应和输出之间的关系三、系统描述与转换n传递函数n零极点增益n状态空间n部分分式展开传递函数模型n1、连续系统的传递函数模型num=b1,b2,bm

8、,bm+1 den=a1,a2,an,an+1注意:它们都是按注意:它们都是按s s的降幂进行排列的,并且的降幂进行排列的,并且 是多项式的表达方式。是多项式的表达方式。传递函数模型num=12,24,0,20; den=2 4 6 2 2;传递函数模型借助多项式乘法函数conv来处理: num=4*conv(1,2,conv(1,6,6,1,6,6); den=conv(1,0,conv(1,1,conv(1,1,con v(1,1,conv1,3,2,5);零极点增益模型K为系统增益,zi为零点,pj为极点。 零极点增益模型用z,p,K矢量组表示,即: z=z1,z2,zm p=p1,p2

9、,.,pn K=k 注意:这里的零点、极点都是列向量表示零极点增益模型z = 0 -6 -5 p = -3+4i -3-4i -2 -1 k = 0.5状态空间描述n以上两种系统表示模型,关注的是输入输出 信号间的关系描述,状态变量同时关心某一时 刻系统中某状态变量的变化过程,以及与输入 、输出信号的关系。n其中y为输出信号,x为系统状态变量,u为输 入信号。状态空间描述A=1 6 9 10; 3 12 6 8; 4 7 9 11; 5 12 13 14; B=4 6; 2 4; 2 2; 1 0; C=0 0 2 1; 8 0 2 2; D=zeros(2,2);三种模型间的相互转换n传递函

10、数模型(Transfer Function)n极零点模型(Zero Pole)n状态空间模型(State Space)n三种模型间的转换:ntf2zp()、zp2tf()nzp2ss()、ss2zp()ntf2ss()、ss2tf()三种模型间的相互转换num=1,11,30,0; den=1,9,45,87,50; z,p,k=tf2zp(num,den) A,B,C,D=tf2ss(num,den)三种模型间的相互转换z = 0 -6 -5 p = -3.0000+4.0000i -3.0000-4.0000i -2.0000 -1.0000 k = 1三种模型间的相互转换A =-9 -4

11、5 -87 -501 0 0 00 1 0 00 0 1 0B =1000 C = 1 11 30 0 D = 0部分分式展开n模拟系统:n函数r,p,k=residue(b,a)nb,a=residue(r,p,k)n数字系统n函数r,p,k=residuez(b,a)nb,a=residuez(r,p,k)部分分式展开n分式展开将原有的传递函数表达为各个 分式相加形式,类似于分解为并联形式 部分分式展开nNum=2 0 9 1;nDec = 1 1 4 4;nr p k = residue(num,dec);部分分式展开结果:p=0.0000+2.0000i0.0000-2.0000i-1

12、.0000k=2r=0.0000-0.2500i0.0000+0.2500i-2.0000注意点n以上模型结构都是针对连续时间系统的 ,对于离散时间系统而言,描述方式类 似,不同的是离散时间系统的传递函数 中z的幂次都是负值,若要使用连续时间 系统的函数描述,必须注意z的阶次(多 项式的表达方式)。注意点计算上述系统的零、极点时,系统的描述不是如下所示 num = 1 -1 den = 1 0 -1 而是首先将其转换为正数幂次形式,再列出传递函数模型。这样传递函数模型为: num = 1 -1 0; den = 1 0 -1; z p k = tf2zp(num,dec)n系统(连续、离散)的

13、单位脉冲响应、阶跃响应n系统对任意输入信号的响应四、时域分析n求解系统的单位阶跃响应和脉冲响应n单位阶跃响应:step()、dstep()-离散信号n冲激(脉冲)响应:impulse()、dimpulse()、 impz()这里的调用参数都是系统的描述方式四、时域分析求系统的阶跃响应曲线 %传递函数描述 num=20; den=1 8 36 0 40 ;%绘制系统的阶跃响应曲线 t=0:0.1:10; step(num, den, t);四、时域分析四、时域分析n2输入2输出系统:n求系统的冲激响应四、时域分析%系统状态空间描述 a=-2.5 -1.22 0 0;1.22 0 0 0;1 -1

14、.14 -3.2 -2.56; 0 0 2.56 0; b=4 1;2 0;2 0;0 0; c=0 1 0 3;0 0 0 1; d=0 -2;-2 0;%绘制闭环系统的冲激响应 impulse(a,b,c,d) title(impulse response) xlabel(time-sec) ylabel(amplitude)四、时域分析%求解系统的脉冲响应 num = 1; den = 1 -0.6 -0.16; n = 0:1:20; y = dimpulse(num,den,n); figure(1) stem(n,y) Title( The impulse response)四、时

15、域分析四、时域分析n对于impz()与dimpulse()不同:该函数是针对数字 信号系统的,描述系统结构时采用impz(b,a,n)的形式其中b、a都是按照z的负值幂次形式,并且从z的 零次幂开始,因此对于以上离散系统H(z)b、a分别 为:b = 0 0 1;a = 1 -0.6 -0.16;四、时域分析注意:这里的b不能写成b = 1,否则就成为如下的系统:b = 0 0 1; a = 1 -0.6 -0.16; n =0:1:20; y = impz(b,a,n); figure(2) stem(n,y) Title( The impulse response)四、时域分析四、时域分析n对任何输入信号,系统响应的求解。n已知系统脉冲响应的,利用输入信号与冲激信 号的卷积得到系统的输出,基于MATLAB的 conv()命令n已知系统的传递函数,利用滤波原理得到系统 的输出,基于MATLAB的lsim()、filter()命令四、时域分析差分方程的递推在MATLAB中用filter子程序来实现。 调用的最简单形式为: y = fil

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > PPT模板库 > 教育/培训/课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号