主要内容gydF4y2Ba

LQG规范:轧机案例研究gydF4y2Ba

本案例研究概述gydF4y2Ba

的使用gydF4y2BaLQG设计工具中的一个过程控制应用程序。目标是调节热钢轧机生产的梁的水平和垂直厚度。这个例子改编自gydF4y2Ba[1]gydF4y2Ba。完整的工厂模型是MIMO,示例显示了直接MIMO LQG设计优于每个轴的单独SISO设计。类型gydF4y2Ba

milldemogydF4y2Ba

命令行中以交互方式运行此演示。gydF4y2Ba

过程和干扰模型gydF4y2Ba

轧钢机是用来塑造矩形钢梁的。所需的外向形状如下所示。gydF4y2Ba

这种形状是由液压致动器定位的两对滚动气缸(每轴一个)留下的印象。两个圆柱体之间的间隙称为gydF4y2Ba辊缝gydF4y2Ba。gydF4y2Ba

目标是保持光束沿gydF4y2Bax -gydF4y2Ba和gydF4y2Bay -gydF4y2Ba轴在质量保证公差范围内。输出厚度的变化可由以下原因引起:gydF4y2Ba

  • 入射光束的厚度/硬度的变化gydF4y2Ba

  • 滚动气缸偏心gydF4y2Ba

为了减少这些干扰的影响,反馈控制是必要的。由于无法在靠近轧机机架处测量轧制间隙,因此使用轧制力作为反馈。gydF4y2Ba

将输入厚度扰动建模为由白噪声驱动的低通滤波器。偏心扰动具有近似周期性,其频率是轧制速度的函数。这种干扰的合理模型是由白噪声驱动的二阶带通滤波器。gydF4y2Ba

这导致以下的通用模型,为每个轴的轧制过程。gydF4y2Ba

测得的轧制力变化gydF4y2BafgydF4y2Ba是由液压执行机构提供的增量力和由偏心和输入厚度变化引起的扰动力的组合。注意:gydF4y2Ba

  • 的输出gydF4y2BaHgydF4y2Ba(gydF4y2Ba年代gydF4y2Ba),gydF4y2BaFgydF4y2BaegydF4y2Ba(gydF4y2Ba年代gydF4y2Ba),gydF4y2BaFgydF4y2Ba我gydF4y2Ba(gydF4y2Ba年代gydF4y2Ba)是由每个组件传递的增量力。gydF4y2Ba

  • 水力或偏心力的增加gydF4y2Ba减少了gydF4y2Ba输出厚度间隙gydF4y2BaδgydF4y2Ba。gydF4y2Ba

  • 输入厚度的增加gydF4y2Ba增加gydF4y2Ba这种差距。gydF4y2Ba

每个轴的模型数据总结如下。gydF4y2Ba

x轴的模型数据gydF4y2Ba

HgydF4y2Ba xgydF4y2Ba (gydF4y2Ba 年代gydF4y2Ba )gydF4y2Ba =gydF4y2Ba 2.4gydF4y2Ba ×gydF4y2Ba 10gydF4y2Ba 8gydF4y2Ba 年代gydF4y2Ba 2gydF4y2Ba +gydF4y2Ba 72gydF4y2Ba 年代gydF4y2Ba +gydF4y2Ba 90gydF4y2Ba 2gydF4y2Ba FgydF4y2Ba 我gydF4y2Ba xgydF4y2Ba (gydF4y2Ba 年代gydF4y2Ba )gydF4y2Ba =gydF4y2Ba 10gydF4y2Ba 4gydF4y2Ba 年代gydF4y2Ba +gydF4y2Ba 0.05gydF4y2Ba FgydF4y2Ba egydF4y2Ba xgydF4y2Ba (gydF4y2Ba 年代gydF4y2Ba )gydF4y2Ba =gydF4y2Ba 3.gydF4y2Ba ×gydF4y2Ba 10gydF4y2Ba 4gydF4y2Ba 年代gydF4y2Ba 年代gydF4y2Ba 2gydF4y2Ba +gydF4y2Ba 0.125gydF4y2Ba 年代gydF4y2Ba +gydF4y2Ba 6gydF4y2Ba 2gydF4y2Ba ggydF4y2Ba xgydF4y2Ba =gydF4y2Ba 10gydF4y2Ba −gydF4y2Ba 6gydF4y2Ba

y轴的模型数据gydF4y2Ba

HgydF4y2Ba ygydF4y2Ba (gydF4y2Ba 年代gydF4y2Ba )gydF4y2Ba =gydF4y2Ba 7.8gydF4y2Ba ×gydF4y2Ba 10gydF4y2Ba 8gydF4y2Ba 年代gydF4y2Ba 2gydF4y2Ba +gydF4y2Ba 71gydF4y2Ba 年代gydF4y2Ba +gydF4y2Ba 88gydF4y2Ba 2gydF4y2Ba FgydF4y2Ba 我gydF4y2Ba ygydF4y2Ba (gydF4y2Ba 年代gydF4y2Ba )gydF4y2Ba =gydF4y2Ba 2gydF4y2Ba ×gydF4y2Ba 10gydF4y2Ba 4gydF4y2Ba 年代gydF4y2Ba +gydF4y2Ba 0.05gydF4y2Ba FgydF4y2Ba egydF4y2Ba ygydF4y2Ba (gydF4y2Ba 年代gydF4y2Ba )gydF4y2Ba =gydF4y2Ba 10gydF4y2Ba 5gydF4y2Ba 年代gydF4y2Ba 年代gydF4y2Ba 2gydF4y2Ba +gydF4y2Ba 0.19gydF4y2Ba 年代gydF4y2Ba +gydF4y2Ba 9.4gydF4y2Ba 2gydF4y2Ba ggydF4y2Ba ygydF4y2Ba =gydF4y2Ba 0.5gydF4y2Ba ×gydF4y2Ba 10gydF4y2Ba −gydF4y2Ba 6gydF4y2Ba

x轴的LQG设计gydF4y2Ba

作为第一个近似,忽略交叉耦合gydF4y2BaxgydF4y2Ba- - -gydF4y2BaygydF4y2Ba-轴,并独立处理每个轴。即为每个轴设计一个SISO LQG调节器。设计目标是减少厚度变化gydF4y2BaδgydF4y2BaxgydF4y2Ba和gydF4y2BaδgydF4y2BaygydF4y2Ba由于偏心和输入厚度扰动。gydF4y2Ba

先从gydF4y2BaxgydF4y2Ba设在。首先将模型组件指定为传递函数对象。gydF4y2Ba

%液压执行器(输入“u-x”)Hx = tf(2.4e8,[1 72 90^2],'inputname','u-x') %输入厚度/硬度扰动模型Fix = tf(1e4,[1 0.05],'inputn','w-ix') %滚动偏心模型Fex = tf([3e4 0],[1 0.125 6^2],'inputn','w-ex') %力与厚度间隙增益gx = 1e-6;gydF4y2Ba

接下来构建开环模型,如图gydF4y2Ba过程和干扰模型gydF4y2Ba。你可以用这个函数gydF4y2Ba连接gydF4y2Ba对于这个目的,但是用基本方法构建这个模型更容易gydF4y2Ba附加gydF4y2Ba和gydF4y2Ba系列gydF4y2Ba连接。gydF4y2Ba

%从输入到力f1和f2的I/O映射Px = append([ss(Hx) Fex],Fix) %从f1,f2到输出“x-gap”和“x-force”的静态增益Px = [-gx gx;1 1] * Px %给输出命名:set(Px,'output ',{'x-gap' 'x-force'})gydF4y2Ba

请注意gydF4y2Ba

为了获得最小的状态空间实现,总是将传递函数模型转换为状态空间gydF4y2Ba之前gydF4y2Ba连接它们。将传递函数组合到状态空间中,可以得到非最小状态空间模型。gydF4y2Ba

的变量gydF4y2BaPxgydF4y2Ba现在包含一个开环状态空间模型,包括输入和输出名称。gydF4y2Ba

Px。我nputname ans = 'u-x' 'w-ex' 'w-ix' Px.outputname ans = 'x-gap' 'x-force'

第二个输出gydF4y2Ba“x-force”gydF4y2Ba是轧制力的测量。LQG调节器将使用该测量来驱动液压执行器,并减少干扰引起的厚度变化gydF4y2BaδgydF4y2BaxgydF4y2Ba。gydF4y2Ba

LQG设计包括两个步骤:gydF4y2Ba

  1. 设计一种全状态反馈增益,使损耗最小化gydF4y2BaLQ绩效衡量的形式gydF4y2Ba

    JgydF4y2Ba (gydF4y2Ba ugydF4y2Ba xgydF4y2Ba )gydF4y2Ba =gydF4y2Ba ∫gydF4y2Ba 0gydF4y2Ba ∞gydF4y2Ba {gydF4y2Ba 问gydF4y2Ba δgydF4y2Ba xgydF4y2Ba 2gydF4y2Ba +gydF4y2Ba rgydF4y2Ba ugydF4y2Ba xgydF4y2Ba 2gydF4y2Ba }gydF4y2Ba dgydF4y2Ba tgydF4y2Ba

  2. 设计一个gydF4y2Ba卡尔曼滤波器,估计状态向量给定的力测量gydF4y2Ba“x-force”gydF4y2Ba。gydF4y2Ba

的性能gydF4y2Ba标准gydF4y2BaJgydF4y2Ba(gydF4y2BaugydF4y2BaxgydF4y2Ba)对低频和高频的惩罚是一样的。因为低频变化是首要关注的,所以消除高频内容gydF4y2BaδgydF4y2BaxgydF4y2Ba低通滤波器30/(gydF4y2Ba年代gydF4y2Ba+ 30),并在LQ性能标准中使用过滤值。gydF4y2Ba

lpf = tf(30,[1 30]) %将低通滤波器连接到Px的第一个输出Pxdes = append(lpf,1) * Px set(Pxdes,'output ',{'x-gap*' 'x-force'}) %使用LQRY和q=1, r=1e-4设计状态反馈增益kx = LQRY (Pxdes(1,1),1,1e-4)gydF4y2Ba

请注意gydF4y2Ba

lqrygydF4y2Ba期望所有的输入都是命令,所有的输出都是度量。下面是命令gydF4y2Ba“u-x”gydF4y2Ba还有测量gydF4y2Ba“x-gap *”gydF4y2Ba(滤波间隙)是的第一输入和第一输出gydF4y2BaPxdesgydF4y2Ba。因此,使用语法gydF4y2BaPxdes (1, 1)gydF4y2Ba指定I/O之间的关系gydF4y2Ba“u-x”gydF4y2Ba和gydF4y2Ba“x-gap *”gydF4y2Ba。gydF4y2Ba

然后,利用该函数设计卡尔曼估计器gydF4y2Ba卡尔曼gydF4y2Ba。过程噪声gydF4y2Ba

wgydF4y2Ba xgydF4y2Ba =gydF4y2Ba [gydF4y2Ba wgydF4y2Ba egydF4y2Ba xgydF4y2Ba wgydF4y2Ba 我gydF4y2Ba xgydF4y2Ba ]gydF4y2Ba

具有单位协方差。将测量噪声协方差设置为1000以限制高频增益,并仅保留测量输出gydF4y2Ba“x-force”gydF4y2Ba用于估计器设计。gydF4y2Ba

estx = kalman(Pxdes(2,:),eye(2),1000)gydF4y2Ba

最后,连接状态反馈增益gydF4y2BakxgydF4y2Ba状态估计器gydF4y2BaestxgydF4y2Ba组成LQG监管机构。gydF4y2Ba

Regx = lqgreg(estx,kx)gydF4y2Ba

完成了LQG的设计gydF4y2BaxgydF4y2Ba−轴。gydF4y2Ba

让我们看看0.1和1000 rad/sec之间的稳压器波德响应。gydF4y2Ba

h = bodeploy (Regx,{0.1 1000}) setopoptions (h,' phasemmatching ','on')gydF4y2Ba

相位响应有一个有趣的物理解释。首先,考虑增加输入厚度。这种低频扰动增加了输出厚度和轧制力。因为调节器相位近似为0gydF4y2BaogydF4y2Ba在低频时,反馈回路通过增加液压力来抵消厚度的增加。现在考虑偏心的影响。偏心引起轧辊间隙(轧制气缸之间的间隙)的波动。当轧制间隙较小时,轧制力增大,梁厚减小。然后必须减小液压力(负力反馈)以恢复所需的厚度。这正是LQG稳压器在相位降至-180时所做的gydF4y2BaogydF4y2Ba在偏心扰动的固有频率附近(6拉德/秒)。gydF4y2Ba

其次,比较扰动对厚度间隙的开环和闭环响应。使用gydF4y2Ba反馈gydF4y2Ba闭合循环。为了帮助指定反馈连接,请查看工厂的I/O名称gydF4y2BaPxgydF4y2Ba和监管机构gydF4y2BaRegxgydF4y2Ba。gydF4y2Ba

Px。我nputname ans = 'u-x' 'w-ex' 'w-ix' Regx.outputname ans = 'u-x' Px.outputname ans = 'x-gap' 'x-force' Regx.inputname ans = 'x-force'

这表明您必须连接的第一个输入和第二个输出gydF4y2BaPxgydF4y2Ba给监管者。gydF4y2Ba

clx = feedback(Px,Regx,1,2,+1) %注:+1表示正反馈gydF4y2Ba

现在可以比较从扰动到厚度间隙的开环和闭环波德响应。gydF4y2Ba

h = bodeplot (Px(2:3),“——”,clx(2:3),“-”,0.1 {100})setoption (h,“PhaseMatching”,“上”)gydF4y2Ba

虚线表示开环响应。注意,偏心距-间隙响应的峰值增益和输入厚度-间隙响应的低频增益降低了约20 dB。gydF4y2Ba

最后,使用gydF4y2BalsimgydF4y2Ba模拟开环和闭环对白噪声输入的时间响应gydF4y2BawgydF4y2Ba前女友gydF4y2Ba和gydF4y2BawgydF4y2Ba9gydF4y2Ba。选择gydF4y2Badt = 0.01gydF4y2Ba作为模拟的采样时间,并推导出该采样率的等效离散白噪声输入。gydF4y2Ba

t = 0:dt: 50%时间样本%产生单位协方差驱动噪声wx = [w-ex;w-ix]。%等价的离散协方差为1/dt wx = sqrt(1/dt) * randn(2,length(t)) lsim(Px(1,2:3),':',clx(1,2:3),'-',wx,t)gydF4y2Ba

右键单击出现的图并选择gydF4y2Ba显示输入gydF4y2Ba关闭输入的显示。gydF4y2Ba

虚线对应开环响应。在此模拟中,LQG调节将峰值厚度变化减少了1 / 4。gydF4y2Ba

y轴的LQG设计gydF4y2Ba

LQG设计为gydF4y2BaygydF4y2Ba-轴(调节gydF4y2BaygydF4y2Ba(厚度)遵循与gydF4y2BaxgydF4y2Ba设在。gydF4y2Ba

%指定模型分量Hy = tf(7.8e8,[1 71 88^2],'inputn','u-y') fy = tf(2e4,[1 0.05],'inputn','w- y') Fey = tf([1e50],[1 0.19 9.4^2],'inputn','w- y') gy = 0.5e- 6%力隙增益%建立开环模型Py = append([ss(Hy) Fey],Fiy) Py = [-gy gy;1 1] * Py set(Py,'output ',{'y-gap' 'y-force'}) %状态反馈增益设计Pydes = append(lpf,1) * Py %添加低频。权重集(Pydes,'output ',{'y-gap*' 'y-force'}) ky = lqry(Pydes(1,1),1,1 -4) %卡尔曼估计器设计esty = Kalman (Pydes(2,:),eye(2),1e3) %形成SISO LQG调节器y轴和闭环Regy = lqgreg(esty,ky) ly =反馈(Py,Regy,1,2,+1)gydF4y2Ba

比较开环和闭环对白噪声输入干扰的响应。gydF4y2Ba

dt = 0.01 t = 0: dt: 50王寅= sqrt (1 / dt) * randn(2、长度(t)) lsim (Py(2:3),“:”,c(2:3),“-”,王寅,t)gydF4y2Ba

右键单击出现的图并选择gydF4y2Ba显示输入gydF4y2Ba关闭输入的显示。gydF4y2Ba

虚线对应开环响应。仿真结果与仿真结果相当gydF4y2BaxgydF4y2Ba设在。gydF4y2Ba

轴间交叉耦合gydF4y2Ba

的gydF4y2BaxgydF4y2Ba/gydF4y2BaygydF4y2Ba厚度调节,是一个MIMO问题。到目前为止,您已经分别处理了每个轴,并一次关闭一个SISO循环。只要两个轴完全解耦,这种设计就是有效的。不幸的是,这种轧机过程在轴之间表现出一定程度的交叉耦合。物理上,液压力沿着gydF4y2BaxgydF4y2Ba-轴压缩了材料,这反过来又增加了对材料的斥力gydF4y2BaygydF4y2Ba设在汽缸。结果是……的增加gydF4y2BaygydF4y2Ba-厚度和沿轴的等效(相对)水力减小gydF4y2BaygydF4y2Ba设在。gydF4y2Ba

下图显示了耦合。gydF4y2Ba

因此,厚度间隙和轧制力与输出有关gydF4y2Ba δgydF4y2Ba ¯gydF4y2Ba xgydF4y2Ba ,gydF4y2Ba fgydF4y2Ba ¯gydF4y2Ba xgydF4y2Ba ,gydF4y2Ba …gydF4y2Ba 的gydF4y2BaxgydF4y2Ba- - -gydF4y2BaygydF4y2Ba-轴模型gydF4y2Ba

[gydF4y2Ba δgydF4y2Ba xgydF4y2Ba δgydF4y2Ba ygydF4y2Ba fgydF4y2Ba xgydF4y2Ba fgydF4y2Ba xgydF4y2Ba ]gydF4y2Ba =gydF4y2Ba [gydF4y2Ba 1gydF4y2Ba 0gydF4y2Ba 0gydF4y2Ba ggydF4y2Ba ygydF4y2Ba xgydF4y2Ba ggydF4y2Ba xgydF4y2Ba 0gydF4y2Ba 1gydF4y2Ba ggydF4y2Ba xgydF4y2Ba ygydF4y2Ba ggydF4y2Ba ygydF4y2Ba 0gydF4y2Ba 0gydF4y2Ba 0gydF4y2Ba 1gydF4y2Ba −gydF4y2Ba ggydF4y2Ba ygydF4y2Ba xgydF4y2Ba 0gydF4y2Ba 0gydF4y2Ba −gydF4y2Ba ggydF4y2Ba xgydF4y2Ba ygydF4y2Ba 1gydF4y2Ba ]gydF4y2Ba ︸gydF4y2Ba 交叉耦合矩阵gydF4y2Ba [gydF4y2Ba δgydF4y2Ba ¯gydF4y2Ba xgydF4y2Ba δgydF4y2Ba ¯gydF4y2Ba ygydF4y2Ba fgydF4y2Ba ¯gydF4y2Ba xgydF4y2Ba fgydF4y2Ba ¯gydF4y2Ba ygydF4y2Ba ]gydF4y2Ba

让我们看看在考虑交叉耦合时,前面的“解耦”LQG设计是如何进行的。要构建如上所示的两轴模型,请附加模型gydF4y2BaPxgydF4y2Ba和gydF4y2BaPygydF4y2Ba为gydF4y2BaxgydF4y2Ba- - -gydF4y2BaygydF4y2Ba相互重合。gydF4y2Ba

P = append(Px,Py)gydF4y2Ba

为方便起见,请重新排序输入和输出,以便命令和厚度间隙先出现。gydF4y2Ba

P = P([1 3 2 4],[1 4 2 3 5 6]) P.outputname ans = 'x-gap' 'y-gap' 'x-force' 'y-force'gydF4y2Ba

最后,将交叉耦合矩阵与输出串联起来。gydF4y2Ba

Gxy = 0.1;Gyx = 0.4;CCmat = [eye(2) [0 gyx*gx;gxy* gx 0];0 (2) [1 -gyx;-gxy 1]] Pc = CCmat * P Pc。outputname = P.outputnamegydF4y2Ba

为了模拟闭环响应,也通过形成闭环模型gydF4y2Ba

Pc的前两个输入是命令feedout = 3:4 % Pc的后两个输出是测量cl =反馈(Pc,追加(Regx,Regy),feedin,feedout,+1)gydF4y2Ba

现在可以模拟开环和闭环对驱动白噪声的响应gydF4y2Ba的天气gydF4y2Ba(对于gydF4y2BaxgydF4y2Ba设在)和gydF4y2Ba王寅gydF4y2Ba(对于gydF4y2BaygydF4y2Ba设在)。gydF4y2Ba

wx = [wx;王寅]lsim (Pc(1:2,三6),“:”,cl(1:2,三6),“-”,wxy, t)gydF4y2Ba

右键单击出现的图并选择gydF4y2Ba显示输入gydF4y2Ba关闭输入的显示。gydF4y2Ba

这一反应表明,中国的监管表现严重恶化gydF4y2BaxgydF4y2Ba-轴(峰值厚度变化约为无交叉耦合时的4倍)。因此,对于这种水平的交叉耦合,一次设计一个环路是不够的,您必须执行联合轴MIMO设计以正确处理耦合效应。gydF4y2Ba

MIMO LQG设计gydF4y2Ba

从完整的两轴状态空间模型开始gydF4y2Ba个人电脑gydF4y2Ba派生的gydF4y2Ba轴间交叉耦合gydF4y2Ba。模型输入和输出为gydF4y2Ba

电脑。我nputname ans = 'u-x' 'u-y' 'w-ex' 'w-ix' 'w_ey' 'w_iy' P.outputname ans = 'x-gap' 'y-gap' 'x-force' 'y-force'

如前所述,添加低通滤波器串联gydF4y2Ba“x-gap”gydF4y2Ba和gydF4y2Ba“y-gap”gydF4y2Ba输出只惩罚低频厚度变化。gydF4y2Ba

Pdes = append(lpf,lpf,eye(2)) * Pc Pdes。output = pc .outputgydF4y2Ba

接下来,像以前一样设计LQ增益和状态估计器(现在有两个命令和两个测量)。gydF4y2Ba

k = lqry(Pdes(1:2,1:2),eye(2),1e-4*eye(2)) % LQ增益est = kalman(Pdes(3:4,:),eye(4),1e3*eye(2)) % kalman估计RegMIMO = lqgreg(est,k) % form MIMO LQG调节器gydF4y2Ba

由此产生的LQG调节器gydF4y2BaRegMIMOgydF4y2Ba有两个输入和两个输出。gydF4y2Ba

RegMIMO。我nputname ans = 'x-force' 'y-force' RegMIMO.outputname ans = 'u-x' 'u-y'

绘制其奇异值响应(本金收益)。gydF4y2Ba

σ(RegMIMO)gydF4y2Ba

接下来,绘制对白噪声输入的开环和闭环时间响应(使用MIMO LQG稳压器进行反馈)。gydF4y2Ba

%形成闭环模型cl = feedback(Pc,RegMIMO,1:2,3:4,+1);%使用相同噪声输入lsim模拟lsim(Pc(1:2,3:6),':',cl(1:2,3:6),'-',wxy,t)gydF4y2Ba

右键单击出现的图并选择gydF4y2Ba显示输入gydF4y2Ba关闭输入的显示。gydF4y2Ba

MIMO设计是对每个轴单独的SISO设计的明显改进。特别是,水平gydF4y2BaxgydF4y2Ba/gydF4y2BaygydF4y2Ba厚度变化现在可与解耦情况下得到的厚度变化相媲美。这个例子说明了多变量系统直接MIMO设计的好处。gydF4y2Ba

参考文献gydF4y2Ba

M.J.格里布尔,gydF4y2Ba鲁棒工业控制:多项式系统的最优设计方法gydF4y2Ba, Prentice Hall, 1994,第261页和443-456页。gydF4y2Ba