教学文库网 - 权威文档分享云平台
您的当前位置:首页 > 文库大全 > 教育文库 >

Matlab 系统辨识 仿真 CH3,CH4,CH6程序注释与剖析

来源:网络收集 时间:2026-06-01
导读: Matlab 系统辨识 仿真 CH3,CH4,CH6程序注释与剖析 第3章程序及注释 例3.3 考虑仿真对象 z(k) 1.5z(k 1) 0.7z(k 2) u(k 1) 0.5u(k 2) v(k) (3.41) 其中,v(k)是服从正态分布的白噪声N(0,1)。输入信号采用4阶M序列,幅度为1。选择如下形式的辨识模型 z(k) a1z(

Matlab 系统辨识 仿真 CH3,CH4,CH6程序注释与剖析

第3章程序及注释

例3.3 考虑仿真对象

z(k) 1.5z(k 1) 0.7z(k 2) u(k 1) 0.5u(k 2) v(k) (3.41)

其中,v(k)是服从正态分布的白噪声N(0,1)。输入信号采用4阶M序列,幅度为1。选择如下形式的辨识模型

z(k) a1z(k 1) a2z(k 2) b1u(k 1) b2u(k 2) v(k) (3.42)

设输入信号的取值是从k =1到k =16的M序列,则待辨识参数θLS

ττ =(HL 、观测矩阵z L、H L的表达为θHL) 1HLzL。其中,被辨识参数θLSLS

式为

z(3) z(2) z(1)u(2)u(1) a1

z(3) z(2)u(3)u(2) a z(4)2 , , (3.43) zL HL

b1

b2 z(16) z(15) z(14)u(15)u(14)

θ LS

程序框图如图3.2所示。Matlab6.0仿真程序如下:

Matlab 系统辨识 仿真 CH3,CH4,CH6程序注释与剖析

%二阶系统的最小二乘一次完成算法辨识程序,在光盘中的文件名:FLch3LSeg1.m

u=[-1,1,-1,1,1,1,1,-1,-1,-1,1,-1,-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); %用理想输出值作为观测值 end

subplot(3,1,1) %画三行一列图形窗口中的第一个图形 stem(u) %画输入信号u的径线图形

subplot(3,1,2) %画三行一列图形窗口中的第二个图形 i=1:1:16; %横坐标范围是1到16,步长为1

plot(i,z) %图形的横坐标是采样时刻i, 纵坐标是输出观测值z, 图形格式为连续曲线

subplot(3,1,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(11)

Matlab 系统辨识 仿真 CH3,CH4,CH6程序注释与剖析

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)] %给样本矩阵HL赋值

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 %计算并显示θLS

%Display Parameters

中分离出并显示a1 、a1=c(1), a2=c(2), b1=c(3),b2=c(4) %从θa2、 b1、 LS

b2 %End

程序运行结果:

>>

u =[ -1,1,-1,1,1,1,1,-1,-1,-1,1,-1,-1,1,1]

z =[ 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.5185] HL =

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.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 -1.0000

5.5800 6.2165 1.0000 1.0000

ZL =[ 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.5185]T

c =[ -1.5000,0.7000,1.0000,0.5000]T

Matlab 系统辨识 仿真 CH3,CH4,CH6程序注释与剖析

a1 = -1.5000 a2 = 0.7000 b1 = 1.0000 b2 =0.5000

>>

10

-110

-10100-10

从仿真结果表3.1可以看出,由于所用的输出观测值没有任何噪声成分,所以辨识结果也无任何误差。

例3.4 根据热力学原理,对给定质量的气体,体积V与压力P

之间的关系为PV ,其中 和 为待定参数。经实验获得如下一批

数据, 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

Matlab 系统辨识 仿真 CH3,CH4,CH6程序注释与剖析

之间的关系PV 改为对数关系,即,logP logV log 。此式与式(3.14),z(k) h (k)θ e(k),对比可得:z(k) logP,h (k) [ logV

θ [

log ] 。

1],

例3.4的Matlab6.0程序如下。

%实际压力系统的最小二乘辨识程序,在光盘中的文件名:FLch3LSeg2.m clear %工作间清零

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,1][alpha,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(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.0000]

Matlab 系统辨识 仿真 CH3,CH4,CH6程序注释与剖析

P = [61.2000, 49.5000, 37.6000, 28.4000, 19.2000, 10.1000]ZL = [4.1141, 3.9020, 3.6270, 3.3464, 2.9549, 2.3125] HL =

-3.9945 1.0000 -4.1239 1.0000 -4.2822 1.0000 -4.4853 1.0000 -4.7758 1.0000 -5.2679 1.0000 c4 = alpha = 1.4042 beita = 1.5972e+004

>>

仿真结果表明,用最小二乘一次完成算法可以迅速辨识出系统参数,

即 =1.4042, =1.5972e+004。

例3.5 考虑图3.6所示的仿真对象,图中, v(k)是服从N(0,1)分布的不相关随机噪声。且

1

G(z 1) B(z)

A(z 1)

,N(z

1

1

) D(z)

C(z 1)

A(z 1) 1 1.5az 1 0.7z 2 C(z 1)

1

1 1 2 B(z) 1.0z 0.5z

D(z 1) 1

选择图3.6所示的辨识模 …… 此处隐藏:3741字,全部文档内容请下载后查看。喜欢就下载吧 ……

Matlab 系统辨识 仿真 CH3,CH4,CH6程序注释与剖析.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.jiaowen.net/wenku/114708.html(转载请注明文章来源)
Copyright © 2020-2025 教文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:78024566 邮箱:78024566@qq.com
苏ICP备19068818号-2
Top
× 游客快捷下载通道(下载后可以自由复制和排版)
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能出现无法下载或内容有问题,请联系客服协助您处理。
× 常见问题(客服时间:周一到周五 9:30-18:00)