ImageVerifierCode 换一换
格式:DOCX , 页数:37 ,大小:474.98KB ,
资源ID:21521862      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/21521862.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(#v系统识别matlab第8章Word格式.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

#v系统识别matlab第8章Word格式.docx

1、A=6。 x0=1。 M=255。 f=2。 N=100; %初始化;x0=1。for k=1: N %乘同余法递推100次; x2=A*x0。 %分别用x2和x0表示xi+1和xi-1; x1=mod (x2,M %取x2存储器的数除以M的余数放x1=(v1-0.5 *f。 %将v1中的数xlabel(k, ylabel(vtktle( (-1,+1均匀分布的白噪声程序运行结果如图8.1所示。图8.1采用MATLAB产生的(-1,+1均匀分布的白噪声序列产生的(-1,1在程序运行结束后,产生的(-1,1均匀分布的白噪声序列,直接从MATLAB的window界面中copy出来如下v2中每行存6

2、个随机数):v2 = -0.9531 -0.7188 0.6875 -0.8359 -0.0156 0.9219 0.5703 0.4531 -0.2500 -0.4844 0.1016 -0.3672 0.8047 -0.1328 0.2188 0.3359 -0.9531 -0.7188 0.6875 -0.8359 -0.0156 0.9219 0.5703 0.4531 -0.2500 -0.4844 0.1016 -0.3672 0.8047 -0.1328 0.2188 0.3359 -0.9531 -0.7188 0.6875 -0.8359 -0.0156 0.9219 0.5

3、703 0.4531 -0.2500 -0.4844 0.1016 -0.3672 0.8047 -0.1328 0.2188 0.3359 -0.9531 -0.7188 0.6875 -0.8359 -0.0156 0.9219 0.5703 0.4531 -0.2500 -0.4844 0.1016 -0.3672 -0.2500 -0.4844 0.1016 -0.3672 0.8047 -0.1328 0.1016 -0.3672 0.8047 -0.1328 0.2188 0.3359 -0.9531 -0.7188 0.6875 -0.83598.2 M序列的产生在进行系统辨识时

4、,选用白噪声作为辨识输入信号可以保证获得较好的辨识效果,但在项目上难以实现。M序列是一种很好的辨识输入信号,它具有近似白噪声的性质,不仅可以保证有较好的辨识效果,而且项目上又易于实现。8.2.1 M序列的产生方式M序列是一种离散二位式随机序列,所谓“二位式”是指每个随机变量只有两种状态。离散二位式随机序列是按照确定的方式产生的,实际上是一种确定序列。可用多级线性反馈移位寄存器产生M序列。每级移位寄存器由双稳态触发器和门电路组成,称为1位,分别以0和1来表示2中状态。当移位脉冲来到时,每位的内容0或1)移到下一位,最后1位编程如下:X1=1。X2=0。X3=1。X4=0。 %移位寄存器输入Xi初

5、T态 %异或运算 if Y4=0 U(i=-1。 else=Y4。end endM=U%绘图i1=i1:i1。plot(k,U,k,U,rxylabel(M序列title(移位寄存器产生的M序列程序运行结果如图8.2所示。图8.2软件实现的移位寄存器产生的M序列图四级移位寄存器产生的M序列M = Columns 1 through 10 -1 1 -1 1 1 1 1 -1 -1 -1 Columns 11 through 20 1 -1 -1 1 1 -1 1 -1 1 1 Columns 21 through 30 1 1 -1 -1 -1 1 -1 -1 1 1 Columns 31 t

6、hrough 40 Columns 41 through 50 Columns 51 through 60 i1 = 608.3 最小二乘一次完成算法的产生考虑仿真对象 (8.4其中,是服从正态分布的白噪声N(0,1输入信号采用4阶M序列,幅度为1。选择如下形式的辨识模型(8.5设输入信号的取值是从k =1到k =16的M序列,则待辨识参数为=其中,被辨识参数、观测矩阵zL、HL的表达式为, , (8.6程序框图如图8.3所示。Matlab仿真程序如下:%二阶系统的最小二乘一次完成算法辨识程序,u=-1,1,-1,1,1,1,1,-1,-1,-1,1,-1,-1,1,1。 %系统辨识的输入信号

7、为一个周期的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 %用理想输出值作为观测值subplot(3,1,1 %画三行一列图形窗口中的第一个图形stem(u %画输入信号u的径线图形subplot(3,1,2 %画三行一列图形窗口中的第二个图形i=1:16。 %横坐标范围是1到16,步长为1plot(i,z %图形的横坐标是采样时刻i, 纵坐标是输出观测值z, 图形格式为连续曲线subplot(3,1,3 %画三行一列图形窗口中的第三个图形stem(z,grid on %画出输出观测值

8、z的径线图形,并显示坐标网格u,z %显示输入信号和输出观测信号%L=14 %数据长度HL=-z(2 -z(1 u(2 u(1-z(3 -z(2 u(3-z(4 -z(3 u(4-z(5 -z(4 u(5-z(6 -z(5 u(6-z(7 -z(6 u(7-z(8 -z(7 u(8-z(9 -z(8 u(9-z(10 -z(9 u(10-z(11 -z(10 u(11-z(12 -z(11 u(12-z(13 -z(12 u(13-z(14 -z(13 u(14-z(15 -z(14 u(15 %给样本矩阵HL赋值ZL=z(3z(4z(5z(6z(7z(8z(9z(10z(11z(12z(13

9、z(14z(15z(16 % 给样本矩阵zL赋值%Calculating Parameters c1=HL*HL。 c2=inv(c1 c3=HL*ZL。 c=c2*c3 %计算并显示%Display Parameters 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.

10、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.0000-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.2

11、670 1.0000 -1.00003.1949 0.9386 -1.0000 1.0000 4.6352 3.1949 -1.0000 -1.00006.2165 4.6352 1.0000 -1.00005.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

12、= 1.0000b2 =0.5000从仿真结果表8.4可以看出,因为所用的输出观测值没有任何噪声成分,所以辨识结果也无任何误差。8.4 最小二乘递推算法的产生考虑图8.5所示的仿真对象,图中,是服从N是服从正态分布的白噪声N构造h (k;加权阵取单位阵计算K(k、和P(k,计算各次参数辨识的相对误差,精度满足要求后停机。最小二乘递推算法辨识的Malab程序流程如图8.6所示。图8.6 最小二乘递推算法辨识的Malab6.0程序流程图下面给出具体程序。%最小二乘递推算法辨识程序, clear %清理工作间变量L=15。 % M序列的周期y1=1。y2=1。y3=1。y4=0。 %四个移位寄存器的

13、输出初始值L。%开始循环,长度为L x1=xor(y3,y4 %第一个移位寄存器的输入是第三个与第四个移位寄存器的输出的“或” x2=y1。 %第二个移位寄存器的输入是第一个移位寄存器的输出 x3=y2。 %第三个移位寄存器的输入是第二个移位寄存器的输出 x4=y3。 %第四个移位寄存器的输入是第三个移位寄存器的输出 y(i=y4。 %取出第四个移位寄存器的幅值为0和1的输出信号,即M序列 if y(i0.5,u(i=-0.03。 %如果M序列的值为, 辨识的输入信号取“-0.03” else u(i=0.03。, 辨识的输入信号取“0.03” end %小循环结束 y1=x1。y2=x2。y

14、3=x3。y4=x4。 %为下一次的输入信号做准备end %大循环结束,产生输入信号u figure(1 %第一个图形,grid on %显示出输入信号径线图并给图形加上网格z(2=0。z(1 %设z的前两个初始值为零15。 %循环变量从3到15 z(k %输出采样信号%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。 %被辨识参数矩阵的初

15、始值及大小e=zeros(4,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(:=e2。 %把当前相对变化的列向量加入误差矩阵的最后一列 c0=c1。 %新获得的参数作为下一次递推的旧参数 c(:=c1。 %把辨识参数c 列向量加入辨识参数矩阵的最后一列 p1=p0-k1*k

16、1*h1*p0*h1+1。 %求出 p(k的值 p0=p1。 %给下次用 if e2情况%分离参数a1=c(1,: a2=c(2,: b1=c(3,: b2=c(4,: ea1=e(1,: ea2=e(2,: eb1=e(3,: eb2=e(4,:figure(2 %第二个图形 %横坐标从1到15plot(i,a1,i,a2,:,i,b1,g,i,b2, %画出a1,a2,b1,b2的各次辨识结果Parameter Identification with Recursive Least Squares Method%图形标题figure(3 %第三个图形plot(i,ea1,i,ea2,i,e

17、b1,b,i,eb2,r: %画出a1,a2,b1,b2的各次辨识结果的收敛情况Identification Precision %图形标题c = 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

18、 0.5668 0.5020 0.5016 0.5008 0.5002 0.5002-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 0.0001

19、0 0 249.8612 3.9816 -0.1466 -0.0607 0.0003 -0.0018 -0.0003 -0.0001 0 0 -249.8612 -4.0136 -0.2443 -0.1143 -0.0007 -0.0016 -0.0012 -0.00010.0001 0.0000 -0.0000 -0.0000 0.00000.0001 -0.0000 0.0000 0.0000 0.00000.0001 0.0000 0.0000 0.0000 -0.0000-0.0004 0.0000 -0.0000 0.0000 -0.0000图8.7 最小二乘递推算法的参数辨识数图8

20、.8 最小二乘递推算法的参数辨识结果图8.9最小二乘递推算法的参数辨识结果收敛情况表8.2 最小二乘递推算法的辨识结果参数a1 a2 b1 b2真值 -1.5 0.7 1.0 0.5估计值 -1.4999 0.7 0.9999 0.5000仿真结果表明,大约递推到第十步时,参数辨识的结果基本达到稳定状态,即a1=-1.4999, a2= 0.7000, b1=0.9999, b2=0.5000。此时,参数的相对变化量E 0.000000005。从整个辨识过程来看,精度的要求直接影响辨识的速度。虽然最终的精度可以达到很小,但开始阶段的相对误差会很大,从图8.7(3图形中可看出,参数的最大相对误差会达到三为数8.5 广义最小二乘算法的产生广义最小二乘法所用的模型是:8.9)8.10)其中我们选定模型参数:a1=1.5,a2=-0.7,b1=1,b2=0.5,c1=0,c2=0广义最小二乘递推算法的计算步骤:1.给定初始条件2.利用式,计算和3.利用式,构造4.利用式递推计算5.利用6.根据来构造7.利用广义最小二乘法程序代码L=55。, 辨识的输入信号取“-1”, 辨识的输入信号取“1” %设z的前四个初始值为零45。 %循环变量从5到45 +1*u(k-1%RGLS广义最小二乘辨识c0=0.001 0.001 0.001 0.0

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1