主要内容

使用零/钢管/增益参数估计模型

这个例子展示了如何估计模型参数化的波兰人,零,收益。示例需要控制系统工具箱™软件。

你使用复共轭极点/零对参数化模型。参数化真实时,使用复共轭双灰色矩形模型参数,软件更新参数值,估算值也复共轭双。

加载测量数据。

负载zpkestdatazd;

变量zd,包含测量数据,加载到MATLAB®工作区。

情节(zd);

图包含2轴对象。坐标轴对象1标题y1包含一个类型的对象。该对象代表zd。坐标轴对象2标题u1包含一个类型的对象。该对象代表zd。

输出显示了一个输入延迟大约3.14秒。

使用zero-pole-gain估计模型(zpk)形式使用zpkestODE函数。查看这个函数,输入

类型zpkestODE
函数(a, b, c, d) = zpkestODE (z, p、k、t、变长度输入宗量)% zpkestODE ODE文件,利用状态空间模型参数化一个波兰人和% 0作为其参数。% %需要控制系统工具箱。% 2011年版权MathWorks公司sysc = zpk (z,磷、钾);如果t = = 0 (a, b, c, d) = ssdata (sysc);其他(a, b, c, d) = ssdata(汇集(sysc, Ts,“呸”));结束

创建一个线性灰色矩形模型与ODE函数相关联。

假设模型有五个波兰人和四个零。假设两个波兰人和两个零的复共轭双。

z =(-0.5 + 1我,-0.5我,-0.5,1];p =(-1.11 + 2我,-1.11 - 2我,-3.01,-4.01,-0.02);k = 10.1;参数= {z,磷、钾};t = 0;odefun = @zpkestODE;init_sys = idgrey (odefun、参数“cd”,{},Ts,“InputDelay”,3.14);

z,p,k模型参数的初始猜测。

init_sys是一个idgrey模式相关联的zpkestODE.m函数。的“cd”国旗表明ODE函数,zpkestODE,返回连续或离散模型,根据采样周期。

评估的质量符合所提供的初始模型。

compareOpt = compareOptions (“InitialCondition”,“零”);比较(zd init_sys compareOpt);

图包含一个坐标轴对象。坐标轴对象包含2线类型的对象。这些对象代表验证数据(日元),init \ _sys: -40.72%。

最初的模型提供了一个贫穷的健康。

指定评估选项。

选择= greyestOptions (“InitialState”,“零”,“DisturbanceModel”,“没有”,“SearchMethod”,“玲娜”);

估计模型。

sys =老龄化最严重的(zd、init_sys选择);

sys,一个idgrey模型,包含zero-pole-gain估计模型参数。

估计和初始参数值进行比较。

[getpvec (init_sys) getpvec (sys)]
ans =10×2复杂-0.5000 + 1.0000我-1.6158 + 1.6173 -0.5000 - 1.0000 -1.6158 - -0.9416 1.6173 -0.5000 + 0.0000我我-1.0000 + 0.0000 + 0.0000 -1.4100 -1.1100 + 2.0000 + 0.0000我-2.4050 + 1.4340我-1.1100 - 2.0000 -2.4050 - 1.4340 -3.0100 -2.3388 + 0.0000 + 0.0000我-4.0100 0.0000 -0.0200我-2.3393 + 0.0000 + 0.0000 + -0.0082 + 0.0000我10.1000 + 0.0000我9.7881 + 0.0000

getpvec命令返回一个模型的参数值。在上面的输出中,每一行显示相应的初始和估计参数值。所有参数最初指定为复共轭双估计后依然如此。

评估的质量符合提供的估计模型。

比较(zd、init_sys sys, compareOpt);

图包含一个坐标轴对象。坐标轴对象包含3线类型的对象。这些对象代表验证数据(日元),init \ _sys: -40.72%, sys: 99.33%。

sys提供了一个更适合测量数据(98.35%)。

另请参阅

||||

相关的话题