主要内容

本页采用了机器翻译。点击此处可查看英文原文。

使用零点/极点/增益参数估计模型

本示例演示了如何对由极点、零点和增益参数化的一款模型进行估计。该示例需要使用 Control System Toolbox™ 软件。

您使用复共轭零极点对对模型进行参数化。当您使用复共轭参数对对实数灰盒模型进行参数化时,软件会更新参数值,使得估计值也是复共轭参数对。

加载测量数据。

load zpkestdata zd;

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

plot(zd);

MATLAB figure

输出结果显示输入延迟约为 3.14 秒。

使用 zpkestODE 函数,以零极点增益 (zpk) 形式对模型进行估计。要查看此函数,请输入

type zpkestODE
function [a,b,c,d] = zpkestODE(z,p,k,Ts,varargin)
%zpkestODE ODE file that parameterizes a state-space model using poles and
%zeros as its parameters.
%
% Requires Control System Toolbox.

%   Copyright 2011 The MathWorks, Inc.

sysc = zpk(z,p,k);
if Ts==0
   [a,b,c,d] = ssdata(sysc);
else
   [a,b,c,d] = ssdata(c2d(sysc,Ts,'foh'));
end

创建一个与 ODE 函数相关的线性灰盒模型。

假设该模型有五个极点和四个零点。假设其中两个极点和两个零点是复共轭对。

z = [-0.5+1i, -0.5-1i, -0.5, -1]; 
p = [-1.11+2i, -1.11-2i, -3.01, -4.01, -0.02]; 
k = 10.1; 
parameters = {z,p,k};
Ts = 0;
odefun = @zpkestODE;
init_sys = idgrey(odefun,parameters,'cd',{},Ts,'InputDelay',3.14);

zpk 是模型参数的初始猜测值。

init_sys 是一个 idgrey 模型,与 zpkestODE.m 函数相关联。'cd' 标志表示 ODE 函数 zpkestODE 会根据采样周期返回连续或离散模型。

评估初始模型的拟合质量。

compareOpt = compareOptions('InitialCondition','zero'); 
compare(zd,init_sys,compareOpt);
legend(Interpreter="none")

MATLAB figure

初始模型的拟合效果不佳。

指定估计选项。

opt = greyestOptions('InitialState','zero','DisturbanceModel','none','SearchMethod','gna');

估计模型。

sys = greyest(zd,init_sys,opt);

sys 是一个 idgrey 模型,其中包含估计得到的零点-极点-增益模型参数。

比较估计值与初始参数值。

[getpvec(init_sys) getpvec(sys)]
ans = 10×2 complex

  -0.5000 + 1.0000i  -1.6158 + 1.6173i
  -0.5000 - 1.0000i  -1.6158 - 1.6173i
  -0.5000 + 0.0000i  -0.9417 + 0.0000i
  -1.0000 + 0.0000i  -1.4099 + 0.0000i
  -1.1100 + 2.0000i  -2.4050 + 1.4340i
  -1.1100 - 2.0000i  -2.4050 - 1.4340i
  -3.0100 + 0.0000i  -2.3387 + 0.0000i
  -4.0100 + 0.0000i  -2.3392 + 0.0000i
  -0.0200 + 0.0000i  -0.0082 + 0.0000i
  10.1000 + 0.0000i   9.7881 + 0.0000i

getpvec 命令返回模型的参数值。在上面的输出中,每一行都显示了相应的初始参数值和估计参数值。所有最初被指定为复共轭对的参数,在估计后仍保持这种形式。

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

compare(zd,init_sys,sys,compareOpt);
legend(Interpreter="none")

MATLAB figure

sys 与测量数据的吻合度更高 (98.35%)。

另请参阅

| | | |

主题