Matlab-系统辨识-应用例子.doc
《Matlab-系统辨识-应用例子.doc》由会员分享,可在线阅读,更多相关《Matlab-系统辨识-应用例子.doc(24页珍藏版)》请在咨信网上搜索。
1、例1、考虑仿真对象 其中,是服从正态分布的白噪声N。输入信号采用4阶M序列,幅度为1。选择如下形式的辨识模型 设输入信号的取值是从k =1到k =16的M序列,则待辨识参数为=。其中,被辨识参数、观测矩阵的表达式为: 程序框图如图1所示。Matlab仿真程序如下:赋输入信号初值u定义输出观测值的长度并计算系统的输出值画出输入和输出观测值的图形给样本矩阵HL和zL赋值根据公式计算参数从中分离出并显示出被辨识参数a1, a2, b1, b2结束图1 最小二乘一次完成算法程序框图%二阶系统的最小二乘一次完成算法辨识程序,文件名:LS.mu=-1,1,-1,1,1,1,1,-1,-1,-1,1,-1,
2、-1,1,1; %系统辨识的输入信号为一个周期的M序列z=zeros(1,16); %定义输出观测值的长度for k=3:16 z(k)=1.5*z(k-1)-0.7*z(k-2)+u(k-1)+0.5*u(k-2); %用理想输出值作为观测值endsubplot(3,1,1) %画三行一列图形窗口中的第一个图形stem(u) %画输入信号u的径线图形subplot(3,1,2) %画三行一列图形窗口中的第二个图形i=1:1:16; %横坐标范围是1到16,步长为1plot(i,z) %图形的横坐标是采样时刻i, 纵坐标是输出观测值z, 图形格式为连续曲线subplot(3,1,3) %画三行
3、一列图形窗口中的第三个图形stem(z),grid on %画出输出观测值z的径线图形,并显示坐标网格u,z %显示输入信号和输出观测信号%L=14 %数据长度HL=-z(2) -z(1) u(2) u(1);-z(3) -z(2) u(3) u(2);-z(4) -z(3) u(4) u(3);-z(5) -z(4) u(5) u(4);-z(6) -z(5) u(6) u(5);-z(7) -z(6) u(7) u(6);-z(8) -z(7) u(8) u(7);-z(9) -z(8) u(9) u(8);-z(10) -z(9) u(10) u(9);-z(11) -z(10) u(1
4、1) u(10);-z(12) -z(11) u(12) u(11);-z(13) -z(12) u(13) u(12);-z(14) -z(13) u(14) u(13);-z(15) -z(14) u(15) u(14) %给样本矩阵赋值ZL=z(3);z(4);z(5);z(6);z(7);z(8);z(9);z(10);z(11);z(12);z(13);z(14);z(15);z(16) % 给样本矩阵z L赋值%Calculating Parameters c1=HL*HL; c2=inv(c1); c3=HL*ZL; c=c2*c3 %计算并显示%Display Paramete
5、rs a1=c(1), a2=c(2), b1=c(3),b2=c(4) %从中分离出并显示a1 、a2、 b1、 b2%End程序运行结果: u = -1,1,-1,1,1,1,1,-1,-1,-1,1,-1,-1,1,1z = 0,0,0.5000,0.2500,0.5250,2.1125, 4.3012,6.4731,6.1988,3.2670,-0.9386, -3.1949,-4.6352,6.2165,-5.5800,-2.5185HL = 0 0 1.0000 -1.0000 -0.5000 0 -1.0000 1.0000 -0.2500 -0.5000 1.0000 -1.0
6、000 -0.5250 -0.2500 1.0000 1.0000 -2.1125 -0.5250 1.0000 1.0000 -4.3012 -2.1125 1.0000 1.0000 -6.4731 -4.3012 -1.0000 1.0000 -6.1988 -6.4731 -1.0000 -1.0000 -3.2670 -6.1988 -1.0000 -1.0000 0.9386 -3.2670 1.0000 -1.0000 3.1949 0.9386 -1.0000 1.0000 4.6352 3.1949 -1.0000 -1.0000 6.2165 4.6352 1.0000 -
7、1.0000 5.5800 6.2165 1.0000 1.0000ZL = 0.5000,0.2500,0.5250,2.1125,4.3012,6.4731,6.1988,3.2670,-0.9386,-3.1949, -4.6352,-6.2165,-5.5800,-2.5185Tc = -1.5000,0.7000,1.0000,0.5000Ta1 = -1.5000a2 = 0.7000b1 = 1.0000b2 =0.5000 图2 最小二乘一次完成算法仿真实例中输入信号和输出观测值从仿真结果表1可以看出,由于所用的输出观测值没有任何噪声成分,所以辨识结果也无任何误差。真 值 -1
8、.5 0.7 1.0 0.5估计值 -1.5 0.7 1.0 0.5参 数 a1 a2 b1 b2表1 最小二乘一次完成算法的辨识结果例2 根据热力学原理,对给定质量的气体,体积V与压力P之间的关系为,其中和为待定参数。经实验获得如下一批数据, V的单位为立方英寸,P的单位为帕每平方英寸。 V 54.3 61.8 72.4 88.7 118.6 194.0 P 61.2 49.5 37.6 28.4 19.2 10.1试用最小二乘一次完成算法确定参数和。 首先要写出系统的最小二乘表达式。为此,把体积V与压力P之间的关系改为对数关系,即,。此式与式,对比可得:,。 例2的Matlab6.0程序如
9、下。%实际压力系统的最小二乘辨识程序,文件名:LS2.mclear %工作间清零V=54.3,61.8,72.4,88.7,118.6,194.0,P=61.2,49.5,37.6,28.4,19.2,10.1 %赋初值并显示V、P%logP=-alpha*logV+logbeita=-logV,1alpha,log(beita)=HL*sita %注释P、V之间的关系for i=1:6; Z(i)=log(P(i); %循环变量的取值为从1到6,系统的采样输出赋值End %循环结束ZL=Z % z L赋值HL=-log(V(1),1;-log(V(2),1;-log(V(3),1;-log(
10、V(4),1;-log(V(5),1;-log(V(6),1 %HL赋值%Calculating Parameters c1=HL*HL; c2=inv(c1); c3=HL*ZL; c4=c2*c3 %计算被辨识参数的值%Separation of Parameters alpha=c4(1) %为c4的第一个元素beita=exp(c4(2) %为以自然数为底的c4的第二个元素的指数程序运行结果:V = 54.3000, 61.8000, 72.4000, 88.7000, 118.6000, 194.0000P = 61.2000, 49.5000, 37.6000, 28.4000,
11、19.2000, 10.1000ZL = 4.1141, 3.9020, 3.6270, 3.3464, 2.9549, 2.3125HL = -3.9945 1.0000 -4.1239 1.0000 -4.2822 1.0000 -4.4853 1.0000 -4.7758 1.0000 -5.2679 1.0000c4 = 1.4042 9.6786alpha = 1.4042beita = 1.5972e+004 仿真结果表明,用最小二乘一次完成算法可以迅速辨识出系统参数,即=1.4042,=1.5972e+004。例3 考虑图3所示的仿真对象,图中, 是服从N分布的不相关随机噪声。且
12、 , ,经过计算,得到系统真实的模型: 选择图3所示的辨识模型。仿真对象选择如下的模型结构 其中,是服从正态分布的白噪声N。输入信号采用4位移位寄存器产生的M序列,幅度为0.03。+e(k) 图3 最小二乘递推算法辨识实例结构图y(k)u(k)z(k)v(k) 最小二乘递推算法辨识的Malab6.0程序流程如图4所示。下面给出具体程序。%最小二乘递推算法辨识程序, 在光盘中的文件名: RL3.mclear %清理工作间变量L=15; % M序列的周期y1=1;y2=1;y3=1;y4=0; %四个移位寄存器的输出初始值for i=1:L;%开始循环,长度为L x1=xor(y3,y4); %第
13、一个移位寄存器的输入是第三个与第四个移位寄存器的输出的“或” x2=y1; %第二个移位寄存器的输入是第一个移位寄存器的输出 x3=y2; %第三个移位寄存器的输入是第二个移位寄存器的输出 x4=y3; %第四个移位寄存器的输入是第三个移位寄存器的输出 y(i)=y4; %取出第四个移位寄存器的幅值为0和1的输出信号,即M序列 if y(i)0.5,u(i)=-0.03; %如果M序列的值为1, 辨识的输入信号取“-0.03” else u(i)=0.03; %如果M序列的值为0, 辨识的输入信号取“0.03” end %小循环结束 y1=x1;y2=x2;y3=x3;y4=x4; %为下一次
14、的输入信号做准备end %大循环结束,产生输入信号u figure(1); %第一个图形stem(u),grid on %显示出输入信号径线图并给图形加上网格z(2)=0;z(1)=0; %设z的前两个初始值为零for k=3:15; %循环变量从3到15 z(k)=1.5*z(k-1)-0.7*z(k-2)+u(k-1)+0.5*u(k-2); %输出采样信号 endY工作间清零产生输出采样信号给被辨识参数和P赋初值按照式(4.94)的第三式计算P(k)计算被辨识参数的相对变化量参数收敛满足要求?结束按照式(4.95)的第二式计算K(k)按照式(4.96)的第一式计算(k)第四个移位寄存器的
15、输出取反,并将幅值变为0.03得到辨识系统的输入信号样本值给M序列的长度L和移位寄存器的输入赋初始值画出被辨识参数的各次递推估计值图形分离参数画出被辨识参数的相对误差的图形画出辨识的输入信号径线图形图4 最小二乘递推算法辨识的Malab6.0程序流程图N %RLS递推最小二乘辨识c0=0.001 0.001 0.001 0.001; %直接给出被辨识参数的初始值,即一个充分小的实向量p0=106*eye(4,4); %直接给出初始状态P0,即一个充分大的实数单位矩阵E=0.000000005; %取相对误差E=0.000000005c=c0,zeros(4,14); %被辨识参数矩阵的初始值及
16、大小e=zeros(4,15); %相对误差的初始值及大小for k=3:15; %开始求K h1=-z(k-1),-z(k-2),u(k-1),u(k-2); x=h1*p0*h1+1; x1=inv(x); %开始求K(k) k1=p0*h1*x1;%求出K的值 d1=z(k)-h1*c0; c1=c0+k1*d1; %求被辨识参数c e1=c1-c0; %求参数当前值与上一次的值的差值 e2=e1./c0; %求参数的相对变化 e(:,k)=e2; %把当前相对变化的列向量加入误差矩阵的第k列 c0=c1; %新获得的参数作为下一次递推的旧参数 c(:,k)=c1; %把辨识参数c 列向
17、量加入辨识参数矩阵的第k列 p1=p0-k1*h1*p0; %求出 p(k)的值 p0=p1; %给下次用 if e2c = 0.0010 0 0.0010 -0.4984 -1.2328 -1.4951 -1.4962 -1.4991 -1.4998 -1.4999 0.0010 0 0.0010 0.0010 -0.2350 0.6913 0.6941 0.6990 0.6998 0.6999 0.0010 0 0.2509 1.2497 1.0665 1.0017 1.0020 1.0002 0.9999 0.9998 0.0010 0 -0.2489 0.7500 0.5668 0.5
18、020 0.5016 0.5008 0.5002 0.5002图5 最小二乘递推算法的参数辨识仿真-1.5000 -1.5000 -1.5000 -1.4999 -1.49990.7000 0.7000 0.7000 0.7000 -0.70000.9999 0.9999 0.9999 0.9999 0.99990.5000 0.5000 0.5000 0.5000 0.5000e = 0 0 0 -499.4200 1.4734 0.2128 0.0007 0.0020 0.0004 0.0000 0 0 0 0 -235.9916 -3.9416 0.0042 0.0070 0.0012
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Matlab 系统 辨识 应用 例子
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【快乐****生活】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【快乐****生活】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。