发明名称 一种基于校正基准量的增量式PID控制方法
摘要 本发明介绍了一种基于校正基准量的增量式PID控制方法,包括下述步骤:①、对具有大迟延和大惯性特征的待控制锅炉过热器,建立数据样本集Ω;②、建立待控制锅炉过热器模型;③、确定加权系数;④、计算当前采样时刻输入值;⑤、在线辨识待控制锅炉过热器模型;⑥、重复步骤④~⑤,直到实际输出值能够跟踪设定输出值。本方法:1)、能弥补常规PID控制对于大迟延和大惯性系统控制性能不佳的缺陷,更具实际使用价值;2)、对校正基准量进行实时调整,具有良好的自适应能力;3)、方法简易,无需对现有控制系统进行大的改造,便于工程应用。
申请公布号 CN103439879A 申请公布日期 2013.12.11
申请号 CN201310348169.1 申请日期 2013.08.12
申请人 国家电网公司;湖南省电力公司科学研究院;湖南省湘电试研技术有限公司 发明人 王志杰;寻新;王伯春;刘复平
分类号 G05B11/42(2006.01)I 主分类号 G05B11/42(2006.01)I
代理机构 长沙正奇专利事务所有限责任公司 43113 代理人 陈立武
主权项 1.一种基于校正基准量的增量式PID控制方法,该方法包括下述步骤:①、对具有大迟延和大惯性特征的待控制锅炉过热器,建立包含N组该待控制锅炉过热器的输入数据和包含N组该待控制锅炉过热器的输出数据在内的,能够反映出该待控制锅炉过热器的动态特性的数据样本集Ω;②、建立所述待控制锅炉过热器的模型,设定所述待控制锅炉过热器的滞后时间常数d的最小值d<sub>min</sub>和最大值d<sub>max</sub>,利用步骤①建立的数据样本集Ω,采用递推最小二乘RLS离线辨识所述待控制锅炉过热器的模型的参数,并使该待控制锅炉过热器的滞后时间常数d由上述最小值d<sub>min</sub>逐步增大到上述最大值d<sub>max</sub>,获得(max-min+1)个<maths num="0001"><![CDATA[<math><mrow><msubsup><mi>&Sigma;</mi><mrow><mi>k</mi><mo>=</mo><mn>1</mn></mrow><mi>N</mi></msubsup><msubsup><mrow><mo>[</mo><mi>y</mi><mrow><mo>(</mo><mi>k</mi><mo>)</mo></mrow><mo>-</mo><mover><mi>y</mi><mo>^</mo></mover><mrow><mo>(</mo><mi>k</mi><mo>)</mo></mrow><mo>]</mo></mrow><mi>i</mi><mn>2</mn></msubsup><mo>,</mo><mrow><mo>(</mo><mi>i</mi><mo>=</mo><mn>1,2</mn><mo>,</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>,</mo><mi>max</mi><mo>-</mo><mi>min</mi><mo>+</mo><mn>1</mn><mo>)</mo></mrow><mo>,</mo></mrow></math>]]></maths>其中的最小值<maths num="0002"><![CDATA[<math><mrow><mi>min</mi><mo>{</mo><msubsup><mi>&Sigma;</mi><mrow><mi>k</mi><mo>=</mo><mn>1</mn></mrow><mi>N</mi></msubsup><msubsup><mrow><mo>[</mo><mi>y</mi><mrow><mo>(</mo><mi>k</mi><mo>)</mo></mrow><mo>-</mo><mover><mi>y</mi><mo>^</mo></mover><mrow><mo>(</mo><mi>k</mi><mo>)</mo></mrow><mo>]</mo></mrow><mi>i</mi><mn>2</mn></msubsup><mo>,</mo><mrow><mo>(</mo><mi>i</mi><mo>=</mo><mn>1,2</mn><mo>,</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>,</mo><mi>max</mi><mo>-</mo><mi>min</mi><mo>+</mo><mn>1</mn><mo>)</mo></mrow><mo>}</mo></mrow></math>]]></maths>所对应的d就是所辨识出的待控制锅炉过热器的滞后时间常数d的值,本步骤中所述<img file="FDA00003651241100013.GIF" wi="414" he="126" />为辨识误差平方和,其中N为数据样本数,y(k)为第k个采样时刻所述待控制锅炉过热器的实际输出值,<img file="FDA00003651241100014.GIF" wi="123" he="89" />为辨识出的第k个采样时刻所述待控制锅炉过热器的输出值;上述待控制锅炉过热器的模型的表达式为下式(1):<maths num="0003"><![CDATA[<math><mrow><mover><mi>y</mi><mo>^</mo></mover><mrow><mo>(</mo><mi>k</mi><mo>)</mo></mrow><mo>=</mo><msup><mi>&theta;</mi><mi>T</mi></msup><mrow><mo>(</mo><mi>k</mi><mo>)</mo></mrow><mi>z</mi><mrow><mo>(</mo><mi>k</mi><mo>)</mo></mrow><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>1</mn><mo>)</mo></mrow></mrow></math>]]></maths>式(1)中,<img file="FDA00003651241100016.GIF" wi="115" he="81" />为通过上述RLS辨识出的第k次采样时刻待控制锅炉过热器的输出值;“z(k)=[y(k-1),y(k-2),…,y(k-n),u(k-d),u(k-d-1),…,u(k-d-m)]<sup>T</sup>,”为待控制锅炉过热器的模型的输入向量;“u(i),(i=k-d,k-d-1,…,k-d-m),”为待控制锅炉过热器在第i次采样时刻的输入值;“y(j),(j=1,2,…,n),”为待控制锅炉过热器在第j次采样时刻的输出值;“θ(k)=[θ<sub>1</sub>(k),θ<sub>2</sub>(k),…,θ<sub>m+n+1</sub>(k)]<sup>T</sup>,”为辨识出的待控制锅炉过热器的模型的参数向量,“θ<sub>i</sub>(k),(i=1,2,…,m+n+1),”为辨识出的待控制锅炉过热器的模型的参数;T为矩阵转置符号,k为第k次采样时刻,d为待控制锅炉过热器的滞后时间常数,m为正整数,n亦为正整数;③、采用下式(2)确定加权系数a<sub>i</sub>:<maths num="0004"><![CDATA[<math><mrow><msub><mi>a</mi><mi>i</mi></msub><mo>=</mo><mfenced open='{' close=''><mtable><mtr><mtd><mfrac><mrow><mi>k</mi><mo>-</mo><mi>i</mi></mrow><msup><mi>d</mi><mn>2</mn></msup></mfrac><mo>,</mo><mi>i</mi><mo>=</mo><mi>k</mi><mo>,</mo><mi>k</mi><mo>-</mo><mn>1</mn><mo>,</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>,</mo><mi>k</mi><mo>-</mo><mi>d</mi></mtd></mtr><mtr><mtd><mfrac><mrow><mi>i</mi><mo>-</mo><mrow><mo>(</mo><mi>k</mi><mo>-</mo><mn>2</mn><mi>d</mi><mo>)</mo></mrow></mrow><msup><mi>d</mi><mn>2</mn></msup></mfrac><mo>,</mo><mi>i</mi><mo>=</mo><mi>k</mi><mo>-</mo><mi>d</mi><mo>-</mo><mn>1</mn><mo>,</mo><mi>k</mi><mo>-</mo><mi>d</mi><mo>-</mo><mn>2</mn><mo>,</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>,</mo><mi>k</mi><mo>-</mo><mn>2</mn><mi>d</mi></mtd></mtr></mtable></mfenced><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>2</mn><mo>)</mo></mrow></mrow></math>]]></maths>式(2)中,a<sub>i</sub>满足<img file="FDA00003651241100022.GIF" wi="314" he="105" />a<sub>i</sub>的大小反映不同时刻的待控制锅炉过热器的输入u(i),对所述待控制锅炉过热器在当前采样时刻k的输出y(k)的影响程度;“i=k-2d,k-2d+1,…,k,”为不同的采样时刻;k为当前采样时刻;依据步骤②所获待控制锅炉过热器的滞后时间常数d的值,按下述式(3)确定校正基准量u<sup>*</sup>的值:<maths num="0005"><![CDATA[<math><mrow><msup><mi>u</mi><mo>*</mo></msup><mo>=</mo><msubsup><mi>&Sigma;</mi><mrow><mi>i</mi><mo>=</mo><mi>k</mi><mo>-</mo><mn>2</mn><mi>d</mi></mrow><mi>k</mi></msubsup><msub><mi>a</mi><mi>i</mi></msub><mi>u</mi><mrow><mo>(</mo><mi>i</mi><mo>)</mo></mrow><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>3</mn><mo>)</mo></mrow></mrow></math>]]></maths>式(3)中,u<sup>*</sup>为待控制锅炉过热器输入的校正基准量;u(i)为待控制锅炉过热器在第i次采样时刻的输入值;a<sub>i</sub>为第i次采样时刻待控制锅炉过热器输入u(i)的加权值;“i=k-2d,k-2d+1,…,k,”为不同的采样时刻;④、依照下述式(4)~(5),计算出当前采样时刻k所述待控制锅炉过热器的输入值:u(k)=u<sup>*</sup>+Δu(k)    (4)<img file="FDA00003651241100024.GIF" wi="901" he="94" />式(4)~(5)中,u(k)为当前采样时刻PID控制器的输出值,即当前采样时刻所述待控制锅炉过热器的输入值;Δu(k)为第k次采样时间与第k-1次采样时间间隔内PID控制器输出的变化量;<img file="FDA00003651241100025.GIF" wi="55" he="71" />为PID控制器的参数向量,其表达式为下述式(6)所示:<img file="FDA00003651241100031.GIF" wi="944" he="94" />式(6)中,K<sub>p</sub>、K<sub>i</sub>、K<sub>d</sub>依次分别为PID控制器的比例增益、积分增益和微分增益,使用常规经验试凑法分别确定K<sub>p</sub>、K<sub>i</sub>、K<sub>d</sub>的值;式(5)中的r(k)为当前时刻设定的输出向量,x(k)为当前时刻实际的输出向量,r(k)、x(k)的表达式依序分别为下述式(7)~(8):r(k)=[y<sub>r</sub>(k),y<sub>r</sub>(k-1),y<sub>r</sub>(k-2)]<sup>T</sup>    (7)x(k)=[y(k),y(k-1),y(k-2)]<sup>T</sup>    (8)式(7)~(8)中,y<sub>r</sub>(i)为所述待控制锅炉过热器在第i次采样时刻的设定输出值;“y(i),(i=k,k-1,k-2)”为所述待控制锅炉过热器在第i次采样时刻的实际输出值;⑤、在线搜索上述待控制锅炉过热器的输入数据和上述锅炉过热器的输出数据,得到该待控制锅炉过热器的输入数据和该待控制锅炉过热器的输出数据,依据所得待控制锅炉过热器的输入数据和待控制锅炉过热器的输出数据,重复步骤②,对待控制锅炉过热器进行在线辨识,实时更新待控制锅炉过热器的滞后时间常数d,依据所得待控制锅炉过热器的滞后时间常数d,使用步骤③给出的上述式(2)和式(3)在线计算出校正基准量u<sup>*</sup>的值;⑥、重复步骤④~⑤,直到所述待控制锅炉过热器的实际输出值能够跟踪设定输出值或直到所述待控制锅炉过热器的实际输出值与设定输出值之间的偏差保持在设定的误差范围内为止。
地址 100033 北京市西城区西长安街86号