发明名称 基于广义预测控制优化的水箱液位控制方法
摘要 本发明公开了自动控制技术领域中的一种基于广义预测控制优化的水箱液位控制方法。包括:采集各时刻水箱液位高度和入水阀门开度的数据;根据采集的数据,基于广义预测优化控制算法辨识计算当前时刻入水阀门的PID控制器参数;根据当前时刻入水阀门的PID控制器参数,控制入水阀门开度,进而控制水箱液位;进入下一个时刻,重复上述步骤,对各个时刻入水阀门开度进行控制。本发明公开的自动控制技术领域中的一种基于广义预测控制优化的水箱液位控制方法,不仅继承了广义预测控制和PID控制的优良性能,同时形式简单并能满足实际工业过程的需要。
申请公布号 CN104076831B 申请公布日期 2016.08.24
申请号 CN201410302486.4 申请日期 2014.06.27
申请人 华北电力大学 发明人 刘向杰;春苗;赵亮
分类号 G05D9/12(2006.01)I 主分类号 G05D9/12(2006.01)I
代理机构 北京众合诚成知识产权代理有限公司 11246 代理人 张文宝
主权项 一种基于广义预测控制优化的水箱液位控制方法,其特征是所述方法包括:步骤1:采集各时刻水箱液位高度和入水阀阀门开度的数据;步骤2:根据采集的数据利用最小二乘法辨识整定当前时刻入水阀阀门的PID控制器参数;步骤3:根据当前时刻入水阀阀门的PID控制器参数,控制入水阀阀门开度,进而控制水箱液位;步骤4:进入下一个时刻,返回步骤1;所述根据采集的数据利用最小二乘法辨识整定当前时刻入水阀阀门的PID控制器参数具体包括如下子步骤:子步骤A1:以采集的水箱液位高度作为输出数据,采集入水阀阀门开度作为输入数据,建立水箱液位高度变化的离散差分方程形式的过程模型;子步骤A2:将所述过程模型参数代入受控自回归积分滑动平均模型,利用最小二乘法辨识所述过程模型参数a<sub>k1</sub>、b<sub>k2</sub>和c<sub>k3</sub>;其中,k1=1,2,...,n<sub>a</sub>,k2=0,1,...,n<sub>b</sub>,k3=1,2,...,n<sub>c</sub>;子步骤A3:根据所述过程模型参数a<sub>k1</sub>、b<sub>k2</sub>和c<sub>k3</sub>,求解受控自回归积分滑动平均模型的后移算子z<sup>‑1</sup>的多项式A(z<sup>‑1</sup>)和B(z<sup>‑1</sup>);子步骤A4:利用丢番图方程1=E<sub>j</sub>(z<sup>‑1</sup>)A(z<sup>‑1</sup>)Δ+z<sup>‑j</sup>F<sub>j</sub>(z<sup>‑1</sup>),求解丢番图方程多项式E<sub>j</sub>(z<sup>‑1</sup>)、F<sub>j</sub>(z<sup>‑1</sup>)、G<sub>j</sub>(z<sup>‑1</sup>)以及f<sub>j</sub>(k);j=1,2,...,P,P为预测长度;子步骤A5:利用上面得到的结果求出预测输出<img file="FDA0000937052130000011.GIF" wi="165" he="93" />并将控制量u(k)进行变化后,将预测输出和变化后的控制量带入目标函数J中进行优化,得到公式<maths num="0001"><math><![CDATA[<mrow><mi>w</mi><mrow><mo>(</mo><mi>k</mi><mo>)</mo></mrow><mo>=</mo><mfrac><mrow><msup><mrow><mo>(</mo><mi>r</mi><mi>e</mi><mi>f</mi><mo>(</mo><mi>k</mi><mo>)</mo><mo>-</mo><mover><mi>f</mi><mo>&LeftArrow;</mo></mover><mo>(</mo><mi>k</mi><mo>)</mo><mo>)</mo></mrow><mi>T</mi></msup><mi>Q</mi><mi>G</mi><mi>E</mi></mrow><mrow><mo>(</mo><msup><mi>G</mi><mi>T</mi></msup><mi>Q</mi><mi>G</mi><mo>+</mo><mi>R</mi><mo>)</mo><msup><mi>E</mi><mi>T</mi></msup><mi>E</mi></mrow></mfrac><mo>;</mo></mrow>]]></math><img file="FDA0000937052130000021.GIF" wi="620" he="151" /></maths>目标函数为:<maths num="0002"><math><![CDATA[<mfenced open = "" close = ""><mtable><mtr><mtd><mrow><mi>J</mi><mo>=</mo><mi>Q</mi><msup><mrow><mo>(</mo><mrow><mi>r</mi><mi>e</mi><mi>f</mi><mrow><mo>(</mo><mi>k</mi><mo>)</mo></mrow><mo>-</mo><mover><mi>y</mi><mo>&LeftArrow;</mo></mover><mrow><mo>(</mo><mrow><mi>k</mi><mo>|</mo><mi>k</mi></mrow><mo>)</mo></mrow></mrow><mo>)</mo></mrow><mn>2</mn></msup><mo>+</mo><msup><mi>R&Delta;</mi><mn>2</mn></msup><mover><mi>u</mi><mo>~</mo></mover><mrow><mo>(</mo><mrow><mi>k</mi><mo>|</mo><mi>k</mi></mrow><mo>)</mo></mrow></mrow></mtd></mtr><mtr><mtd><mrow><mo>=</mo><mi>Q</mi><msup><mrow><mo>(</mo><mrow><mi>r</mi><mi>e</mi><mi>f</mi><mrow><mo>(</mo><mi>k</mi><mo>)</mo></mrow><mo>-</mo><mi>G</mi><mi>&Delta;</mi><mi>u</mi><mrow><mo>(</mo><mi>k</mi><mo>)</mo></mrow><mo>-</mo><mover><mrow><mi>f</mi><mrow><mo>(</mo><mi>k</mi><mo>)</mo></mrow></mrow><mo>&LeftArrow;</mo></mover></mrow><mo>)</mo></mrow><mn>2</mn></msup><mo>+</mo><msup><mi>R&Delta;</mi><mn>2</mn></msup><mi>u</mi><mrow><mo>(</mo><mi>k</mi><mo>)</mo></mrow></mrow></mtd></mtr></mtable></mfenced>]]></math><img file="FDA0000937052130000022.GIF" wi="876" he="192" /></maths>子步骤A6:利用公式<img file="FDA0000937052130000023.GIF" wi="595" he="157" />计算时刻k的入水阀门的PID控制器参数;其中,w(k)=[w<sub>1</sub>(k),w<sub>2</sub>(k),w<sub>3</sub>(k)]<sup>T</sup>;w<sub>1</sub>(k)=K<sub>p</sub>(k)+K<sub>i</sub>(k)+K<sub>d</sub>(k);w<sub>2</sub>(k)=‑K<sub>p</sub>(k)‑2K<sub>d</sub>(k);w<sub>3</sub>(k)=K<sub>d</sub>(k);K<sub>p</sub>(k)为时刻k入水阀阀门的PID控制器比例参数;K<sub>i</sub>(k)为时刻k入水阀阀门的PID控制器积分参数;K<sub>d</sub>(k)为时刻k入水阀阀门的PID控制器微分参数;ref(k)为时刻k的参考轨迹向量且ref(k)=[ref<sub>1</sub>(k),ref<sub>2</sub>(k),...,ref<sub>P</sub>(k)]<sup>T</sup>;ref<sub>j</sub>(k)为时刻k的参考轨迹中第j个参考点的值且ref<sub>j</sub>(k)=β<sup>j</sup>y(k)+(1‑β<sup>j</sup>)c(k);y(k)为时刻k水箱液位高度;c(k)为时刻k的设定值;β<sup>j</sup>为设定柔化系数;Q为误差加权矩阵且Q=diag(q<sub>1</sub>,q<sub>2</sub>,...q<sub>P</sub>);q<sub>j</sub>为误差加权矩阵的参数值;j=1,2,...P;<maths num="0003"><math><![CDATA[<mrow><mover><mi>f</mi><mo>&LeftArrow;</mo></mover><mrow><mo>(</mo><mi>k</mi><mo>)</mo></mrow><mo>=</mo><msup><mrow><mo>&lsqb;</mo><msub><mi>f</mi><mn>1</mn></msub><mrow><mo>(</mo><mi>k</mi><mo>)</mo></mrow><mo>,</mo><mo>...</mo><mo>,</mo><msub><mi>f</mi><mi>P</mi></msub><mrow><mo>(</mo><mi>k</mi><mo>)</mo></mrow><mo>&rsqb;</mo></mrow><mi>T</mi></msup><mo>;</mo></mrow>]]></math><img file="FDA0000937052130000031.GIF" wi="533" he="87" /></maths>G为由丢番图方程多项式G<sub>j</sub>(z<sup>‑1</sup>)的系数组成的矩阵;R为控制加权矩阵且<maths num="0004"><math><![CDATA[<mrow><mi>R</mi><mo>=</mo><mi>diag</mi><mrow><mo>(</mo><msub><mi>r</mi><mn>1</mn></msub><mo>,</mo><msub><mi>r</mi><mn>2</mn></msub><mo>,</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>,</mo><msub><mi>r</mi><msub><mi>N</mi><mi>u</mi></msub></msub><mo>)</mo></mrow><mo>;</mo></mrow>]]></math><img file="FDA0000937052130000032.GIF" wi="459" he="70" /></maths>r<sub>l</sub>为控制加权矩阵的参数;l=1,2,...N<sub>u</sub>,N<sub>u</sub>为设定控制时域;E=[e<sub>1</sub>(k),e<sub>1</sub>(k‑1),e<sub>1</sub>(k‑2)]<sup>T</sup>;e<sub>1</sub>(k)为k时刻入水阀阀门的PID控制器的控制偏差。
地址 102206 北京市昌平区回龙观朱辛庄2号