主要内容

在线估计ARMAX多项式模型

这个例子展示了如何实现一个在线估计多项式模型。你估计两个ARMAX模型的非线性化学反应过程。这些模型捕获过程的行为在两个操作条件。行为识别模型在线和用来调整收益的自适应PI控制器在系统操作。

连续搅拌釜反应器

连续搅拌釜反应器(装运箱)是一种常见的化学系统过程中产业。装运箱系统的原理是:

这是一个夹套传热(即。,nondiabatic) tank reactor described extensively in Bequette's book "Process Dynamics: Modeling, Analysis and Simulation", published by Prentice-Hall, 1998. The vessel is assumed to be perfectly mixed, and a single first-order exothermic and irreversible reaction, A --> B, takes place. The inlet stream of reagent A is fed to the tank at a constant rate. After stirring, the end product streams out of the vessel at the same rate as reagent A is fed into the tank (the volume in the reactor tank is constant). Details of the operation of the CSTR and its 2-state nonlinear model used in this example are explained in the example非绝热的连续搅拌釜反应器:MATLAB文件建模与模拟仿真软件®金宝app

装运箱模型的输入:

数组$ $ \开始{}{你}& # xA; u_1 (t) = C_ {Af} \ (t);& # 38;\ textnormal{浓度的进口饲料# xA;流}[kgmol / m ^ 3] \ \ & # xA; u_2 (t) = T_f (t) \;& # 38;\ textnormal{进口原料流温度}[K] \ \ & # xA; u_3 (t) = T_j (t) \;& # 38;\ textnormal{夹克冷却剂温度}[K] \ \ & # xA; \{数组}$ $

和输出(y (t)),也是模型的状态(x (t))是:

数组$ $ \开始{}{你}& # xA; y_1 (t) = x_1 (t) = C_{一}\ (t);& # 38;\ textnormal {A的浓度在反应堆槽}[kgmol / m ^ 3] \ \ & # xA; y_2 (t) = x_2 (t) = t (t) \;& # 38;\ textnormal{反应堆温度}[K] \ \ & # xA; \{数组}$ $

控制目标是维持试剂的浓度,美元$ C_{一}(t)在理想的水平美元$ C_ {Aref} (t),会随着时间而改变。夹克的温度美元美元T_j (t)操纵一个PI控制器以抑制干扰产生的进口原料流温度美元美元T_f (t)。输入比例积分控制器的跟踪误差信号,美元C_ {Aref} (t) -C_A (t)美元。进口原料流浓度,美元$ C_ {Af} (t),被认为是常数。仿真软件金宝app模型iddemo_cstr实现了装运箱厂的块装运箱

open_system (“iddemo_cstr”);

美元美元T_f (t)进料温度输入由白噪声干扰的常数抵消。噪声功率是0.0075 (K ^ 2)。这种噪声会导致偏离预期的2%美元$ C_ {Aref} (t)

美元$ C_ {Aref} (t)信号在这个例子中包含一个阶跃变化从1.5 [kgmol / m ^ 3] 2 [kgmol / m ^ 3]t = 400美元。除了这一步变化,美元$ C_ {Aref} (t)还包含一个白噪声扰动的t(0200)和(400600)范围。这个白噪声信号的功率是0.015。噪声功率调整经验大约给10的信噪比。没有足够的激励在参考信号闭环识别会导致没有足够的信息来确定一个特定的模型。的实现美元$ C_ {Aref} (t)是在iddemo_cstr / CA参考块。

自适应控制的在线估计

众所周知从装运箱输出的非线性模型美元$ C_{一}(t)控制输入更敏感美元美元T_j (t)在更高的美元$ C_{一}(t)的水平。递归多项式模型估计块用来检测这种变化敏感。此信息用于调整PI控制器的增益美元$ C_{一}(t)各不相同。其目的是避免高的增益控制循环可能导致不稳定。

你估计一个离散的传输函数美元美元T_j (t)美元$ C_{一}(t)与递归的多项式模型在线估计。自适应控制算法使用的直流增益传递函数。跟踪误差美元C_ {Aref} (t) -C_A (t)美元是除以规范化的直流增益传递函数估计。这样做归一化是为了增加1的跟踪误差初始操作点,PI控制器的设计。例如,错误信号除以2如果直流增益变得原来价值的2倍。这对应于PI控制器收益除以2。这个自适应控制器实现iddemo_cstr /自适应PI控制器

递归估计块输入多项式模型

递归的多项式模型估计的块下找到系统辨识工具箱/估计图书馆在仿真软件。金宝app你用这个块与ARMAX估计线性模型结构。ARMAX模型的形式:

数组$ $ & # xA; \开始{}{1}{y} (q) \酒吧(t) = B (q) \酒吧{你}(t) + C (q) \酒吧}{e (t) \ \ [0.1] & # xA; (q) = 1 + a_1z ^ {1} + a_2z ^ {2} + \ cdots +现代z ^ {na} {na} \ \ & # xA; B (q) = (b_01 + b_1z ^ {1} + b_2z ^ {2} + \ cdots +现代z ^ {nb-1} {nb + 1}) z ^ {nk} \ \ & # xA; C (q) = 1 + c_1z ^ {1} + c_2z ^ {2} + \ cdots + c_ z ^{数控}{数控}\ \ & # xA;结束\{数组}& # xA; $ $

  • 输入输出递归的多项式模型的轮廓尺寸估计块对应酒吧\{你}(t)美元酒吧\ {y} (t)美元分别。装运箱模型$ {y} $ \酒吧{你}$ $ \酒吧偏离了夹克的温度和浓度削减操作要点:$ {y} \酒吧= C_A (t) - C{} \酒吧(t)美元,${你}\酒吧= T_j酒吧(t) - \ {t} _j (t)美元。是件好事{你}$ $ \酒吧$ {y} $ \酒吧的峰值振幅1改善数值估计问题的状况。修剪操作点,$ {C} \酒吧(t)美元$ {T} \酒吧_j (T)美元系统操作之前,并不清楚。他们估计,从测量信号中提取使用一阶移动平均滤波器。这些预处理过滤器的实现iddemo_cstr /预处理Tjiddemo_cstr / CA进行预处理块。

open_system (“iddemo_cstr /预处理Tj”);

  • 可选启用递归的多项式模型的轮廓尺寸估计块控制块的参数估计。参数估计是禁用启动信号时为零。参数估计是所有其他值的支持启用信号。在这个例子中时间间隔的估计是禁用的t \[200400)美元t \[600800)美元。在这些时间间隔测量的输入美元美元T_j (t)不包含足够的励磁闭环系统识别。

递归的多项式模型估计块设置

配置块参数估计二阶ARMAX模型。在模型参数选项卡中,指定:

  • 模型结构:ARMAX。选择ARMAX以来的当前和过去值扰动作用于系统,美元美元T_f (t),预计影响装运箱系统的输出美元美元C_A (t)

  • 最初的估计:一个也没有。默认情况下,软件使用所有估计参数的值为0。

  • 参数的数量在一个(q) (na):2。有两个州的非线性模型。

  • B (q)的参数数量(nb):2

  • C (q)的参数数量(nc):2。估计模型对应一个二阶模型的最大na, nb,数控2。

  • 输入延迟(nk):1。像大多数物理系统,装运箱系统没有直接的引线。同样,没有额外的I / o之间的时间延迟。

  • 参数协方差矩阵:1 e4。指定一个高协方差值,因为初始猜测值是高度不确定的。

  • 样品时间:0.1。装运箱模型已知大约0.25赫兹的带宽。T_s = 0.1美元选择1/0.1大于20倍这样的带宽(5赫兹)。

点击算法和块的选择设置评估选项:

  • 估算方法:遗忘因子

  • 遗忘因子:1-5e-3。预计自估计参数变化与操作点,设置遗忘因子的值小于1。选择美元\λ= 1-5e-3 $对应于一个记忆时间常数的$ T_0 = \压裂{Ts}{1 - \λ}= 100美元秒。一个100秒的记忆时间确保大量数据用于识别来自200年在每个操作点第二识别期。

  • 选择输出估计误差复选框。你用这个块输出验证评估。

  • 选择添加启用端口复选框。你只是想适应估计模型参数港口额外噪声注入时参考。参数估计n是禁用的通过这个端口时,额外的噪音不再注射。

  • 外部复位:没有一个

递归估计块输出多项式模型

在每一个时间步,递归估计提供了一种估计多项式模型一个(q)美元,B (q)美元,C (q)美元,估计误差$ {e} $ \酒吧。的错误外港多项式模型的估计包含块酒吧\ {e} (t)美元也称为领先一步预测误差。的参数外港的块包含一个(q)、B (q), C (q)多项式系数总线信号。考虑到选择多项式订单(na = 2美元,nb = 2美元,数控= 2美元,nk = 1美元)参数公车元素包含:

数组$ $ \开始{}{1}& # xA; (t) = [1 \;a_1 (t) \;a₂(t)) \ \ & # xA; B (t) = [0 \;b_0 (t) \;b_1 (t)) \ \ & # xA; C (t) = [1 \;c₁(t) \;c₂(t)) \ \ & # xA; \{数组}$ $

估计参数(q), B (q)和C (q)多项式变化模拟如下:

sim卡(“iddemo_cstr”);close_system (“iddemo_cstr /预处理Tj”);open_system (“iddemo_cstr / ABC”);

参数估计很快改变初始值为0的由于高价值选择初始参数协方差矩阵。中的参数一个(q)美元B (q)美元它们的值在多项式方法t = 200美元迅速。然而,参数C (q)美元多项式展示一些波动。这些波动背后的一个原因是干扰美元美元T_f (t)装运箱输出美元美元C_A (t)没有完全ARMAX模型的结构。误差模型C (q)美元不重要的控制问题研究自美元美元T_j (t)美元美元C_A (t)是被传递函数之间的关系$ \压裂{B (q)} {(q)} $。因此,波动C (q)美元不是关心这识别和控制问题。

参数估计是保持不变的t \[200400)美元因为估计的块是禁用这个区间(0信号启用尺寸)。启用了参数估计t = 400美元当装运箱柜开始切换到新的操作点。的参数一个(q)美元B (q)美元收敛到他们的新值t = 600美元通过设置,然后保持不变启用端口0。的融合一个(q)美元B (q)美元在这个操作点慢。这慢收敛,因为较小的参数协方差矩阵的特征值t = 400相比初始e4值设定在t = 0。协方差参数,这是一个测量估计的信心,与每个时间步更新。算法迅速改变了参数估计在估计的信心较低时在t = 0。改善参数估计更好地捕捉系统行为,导致领先一步预测错误和小参数协方差矩阵的特征值(增加信心)。的系统行为变化t = 400。然而,块慢改变参数估计估计由于增加了信心。您可以使用递归的多项式模型的外部重置选项估计块为参数提供一个新值协方差在t = 400。协方差参数的值,选择输出参数协方差矩阵复选框在递归多项式模型估计量。

验证估计模型

错误的输出递归的多项式模型估计块给领先一步误差估计模型。

close_system (“iddemo_cstr / ABC”);open_system (“未来iddemo_cstr /互译”预测误差);

领先一步误差较高时没有额外注入扰动美元美元T_j (t)渠道系统识别。这些更高的错误可能是由于缺乏足够的信息美元美元T_j (t)输入通道,依赖于估计的块。然而,即使这更高的误差很低和有界相比,测量的波动美元美元C_A (t)。这给信心估计参数值。

更严格的检查的估计模型是模拟估计模型与实际模型和比较输出。的iddemo_cstr /时变ARMAX块实现时变ARMAX模型在线估计的多项式模型估计量。装运箱的输出之间的误差系统和时变估计ARMAX模型的输出是:

close_system (“未来iddemo_cstr /互译”预测误差);open_system (“iddemo_cstr /模拟误差”);

相比模拟误差是有界和低的波动美元美元C_A (t)。这进一步提供了信心,估计线性模型能够预测非线性装运箱模型的行为。

确定模型在MATLAB可以进一步分析。模型估计的操作点C_A = 1.5美元kgmol / m ^ 3美元C_A = 2美元kgmol / m ^ 3美元可以通过观察获得的估计(q), B (q)和C (q)多项式在哪里t = 200美元t = 600美元分别。这些模型的伯德图:

t = 0.1;tidx =找到(t > = 200, 1);P200 = idpoly (AHat (:,:, tidx) BHat (:,:, tidx),聊天(:,:,tidx), 1, 1, [], Ts);tidx =找到(t > = 600, 1);P600 = idpoly (AHat (:,:, tidx) BHat (:,:, tidx),聊天(:,:,tidx), 1, 1, [], Ts);bodemag (P200“b”P600,“r——”{10 ^ 1 20});传奇(的估计模型C_A = 1.5 (kgmol / m ^ 3) ',的估计模型C_A = 2.0 (kgmol / m ^ 3) ',“位置”,“最佳”);

估计模型具有更高的增益在更高浓度的水平。这是在协议与先验知识对非线性装运箱。的传递函数美元C_A (t) = 2 kgmol / m ^ 3美元有一个6 db美元更高的增益(双振幅)在低频率。

总结

你估计两个ARMAX模型来捕捉非线性装运箱厂的行为在两个操作条件。估计是在闭环操作与一个自适应控制器。你看两个信号验证评估结果:领先一步预测错误和装运箱装置输出之间的误差和估计的仿真模型。这两个错误信号相比是有界和小工厂装运箱的输出。这提供了信心估计ARMAX模型参数。

bdclose (“iddemo_cstr”);