发明名称 一种具有时延和丢包网络化系统的动态矩阵控制方法
摘要 一种具有时延和丢包网络化系统的动态矩阵控制方法,包括以下步骤:1)在同时具有时延、丢包、乱序的情况下,根据时延序列选取最新的控制量;2)通过对时延的分析并结合被控对象模型,获得不同时延下的阶跃响应系数;3)基于动态矩阵控制算法设计控制器。本发明提供了一种可以有效解决时延、丢包、乱序网络化系统的动态矩阵控制方法。
申请公布号 CN105353622A 申请公布日期 2016.02.24
申请号 CN201510863398.6 申请日期 2015.11.30
申请人 浙江工业大学 发明人 刘安东;季鹏;张文安;王宏霞;俞立
分类号 G05B13/04(2006.01)I 主分类号 G05B13/04(2006.01)I
代理机构 杭州斯可睿专利事务所有限公司 33241 代理人 王利强
主权项 一种具有时延和丢包网络化系统的动态矩阵控制方法,其特征在于:所述方法包括以下步骤:1)根据时延序列选取最新控制量从传感器到控制器的时延记为τ<sub>sc</sub>,从控制器到执行器的时延记为τ<sub>ca</sub>,传感器和执行器采用时间驱动的方式,控制器采用事件驱动的方式,故将时延τ<sub>sc</sub>和τ<sub>ca</sub>合并,即k时刻的总时延τ<sub>k</sub>为:τ<sub>k</sub>=τ<sub>sc</sub>+τ<sub>ca</sub>k时刻的总时延τ<sub>k</sub>满足τ<sub>k</sub>∈N<sub>1</sub>={0,1,...,d}T,其中d为最大时延周期数,T为系统采样周期,则k时刻需要用于计算实际使用控制量的时延序列为:τ(k)=[τ<sub>k‑d+1</sub>,...,τ<sub>k‑1</sub>,τ<sub>k</sub>]则k时刻选取最新控制量的参数σ(k)为:σ(k)=r+θ<sub>k‑r</sub>,r=min{i|τ<sub>k‑i</sub>‑(i+θ<sub>k‑i</sub>)T≤0,i=0,1,...,d},其中,θ<sub>k‑r</sub>为(k‑r)时刻的连续丢包数,且θ<sub>k‑r</sub>∈[0,s],s≤d,s为最大连续丢包数;2)获得不同时延情况下的阶跃响应系数被控对象的连续时间状态空间方程为:<maths num="0001" id="cmaths0001"><math><![CDATA[<mfenced open = "{" close = ""><mtable><mtr><mtd><mrow><mover><mi>x</mi><mo>&CenterDot;</mo></mover><mo>=</mo><mi>A</mi><mi>x</mi><mo>+</mo><mi>B</mi><mi>u</mi></mrow></mtd></mtr><mtr><mtd><mrow><mi>y</mi><mo>=</mo><mi>C</mi><mi>x</mi></mrow></mtd></mtr></mtable></mfenced>]]></math><img file="FDA0000862062920000011.GIF" wi="277" he="151" /></maths>则其离散化后的状态空间方程为:<maths num="0002" id="cmaths0002"><math><![CDATA[<mfenced open = "{" close = ""><mtable><mtr><mtd><mrow><mi>x</mi><mrow><mo>(</mo><mrow><mi>k</mi><mo>+</mo><mn>1</mn></mrow><mo>)</mo></mrow><mo>=</mo><mover><mi>A</mi><mo>&OverBar;</mo></mover><mi>x</mi><mrow><mo>(</mo><mi>k</mi><mo>)</mo></mrow><mo>+</mo><mover><mi>B</mi><mo>&OverBar;</mo></mover><mi>u</mi><mrow><mo>(</mo><mi>k</mi><mo>)</mo></mrow></mrow></mtd></mtr><mtr><mtd><mrow><mi>y</mi><mrow><mo>(</mo><mi>k</mi><mo>)</mo></mrow><mo>=</mo><mover><mi>C</mi><mo>&OverBar;</mo></mover><mi>x</mi><mrow><mo>(</mo><mi>k</mi><mo>)</mo></mrow></mrow></mtd></mtr></mtable></mfenced>]]></math><img file="FDA0000862062920000012.GIF" wi="526" he="165" /></maths>其中,<img file="FDA0000862062920000013.GIF" wi="643" he="107" />T为采样周期,则若系统在无时延情况下的阶跃响应系数向量为a=[a<sub>1</sub>,a<sub>2</sub>,…,a<sub>N</sub>]<sup>T</sup>,则在k时刻时延为τ<sub>k</sub>=jT情况下的阶跃响应系数向量为:a<sup>*</sup>=[a<sub>1</sub><sup>*</sup>,a<sub>2</sub><sup>*</sup>,…,a<sub>N</sub><sup>*</sup>]<sup>T</sup>,且:<maths num="0003" id="cmaths0003"><math><![CDATA[<mrow><msubsup><mi>a</mi><mi>i</mi><mo>*</mo></msubsup><mo>=</mo><mfenced open = "{" close = ""><mtable><mtr><mtd><mrow><msub><mi>a</mi><mi>i</mi></msub><mo>-</mo><mover><mi>C</mi><mo>&OverBar;</mo></mover><mrow><mo>(</mo><msup><mover><mi>A</mi><mo>&OverBar;</mo></mover><mrow><mi>i</mi><mo>-</mo><mn>1</mn></mrow></msup><mo>+</mo><mo>...</mo><mo>+</mo><mover><mi>A</mi><mo>&OverBar;</mo></mover><mo>+</mo><mi>I</mi><mo>)</mo></mrow><mover><mi>B</mi><mo>&OverBar;</mo></mover><mo>,</mo></mrow></mtd><mtd><mrow><mi>i</mi><mo>&le;</mo><mi>j</mi></mrow></mtd></mtr><mtr><mtd><mrow><msub><mi>a</mi><mi>i</mi></msub><mo>-</mo><mover><mi>C</mi><mo>&OverBar;</mo></mover><mrow><mo>(</mo><msup><mover><mi>A</mi><mo>&OverBar;</mo></mover><mrow><mi>i</mi><mo>-</mo><mn>1</mn></mrow></msup><mo>+</mo><mo>...</mo><mo>+</mo><msup><mover><mi>A</mi><mo>&OverBar;</mo></mover><mrow><mi>i</mi><mo>-</mo><mi>j</mi></mrow></msup><mo>)</mo></mrow><mover><mi>B</mi><mo>&OverBar;</mo></mover><mo>,</mo></mrow></mtd><mtd><mrow><mi>i</mi><mo>&gt;</mo><mi>j</mi></mrow></mtd></mtr></mtable></mfenced></mrow>]]></math><img file="FDA0000862062920000014.GIF" wi="773" he="191" /></maths>3)基于动态矩阵控制算法设计控制器,步骤如下:步骤3.1:初始化(k=0),控制时域M,预测时域P,模型时域N,且M≤P≤N;给定初始时刻对未来N个时刻的预测输出y<sub>N</sub>(0),控制量u(0);针对时延为τ<sub>k</sub>∈{0,1,...,d}T的(d+1)种情况,得到(d+1)组阶跃响应系数,构成动态矩阵控制中的控制矩阵{A<sub>0</sub>,A<sub>1</sub>,…,A<sub>d</sub>};步骤3.2:计算σ(k)σ(k)=r+θ<sub>k‑r</sub>,r=min{i|τ<sub>k‑i</sub>‑(i+θ<sub>k‑i</sub>)T≤0,i=0,1,...,d}步骤3.3:通信:传感器以周期T对系统的输出进行采样,获得系统k时刻的输出值为y(k);步骤3.4:更新(k‑1)时刻的预测值,施加控制量u(k)<maths num="0004" id="cmaths0004"><math><![CDATA[<mrow><msubsup><mi>y</mi><mi>N</mi><mo>&prime;</mo></msubsup><mrow><mo>(</mo><mi>k</mi><mo>-</mo><mn>1</mn><mo>)</mo></mrow><mo>=</mo><msub><mi>y</mi><mi>N</mi></msub><mrow><mo>(</mo><mi>k</mi><mo>-</mo><mn>1</mn><mo>)</mo></mrow><mo>+</mo><msub><mfenced open = "[" close = "]"><mtable><mtr><mtd><msub><mi>a</mi><mn>1</mn></msub></mtd></mtr><mtr><mtd><msub><mi>a</mi><mn>2</mn></msub></mtd></mtr><mtr><mtd><mtable><mtr><mtd><mo>.</mo></mtd></mtr><mtr><mtd><mo>.</mo></mtd></mtr><mtr><mtd><mo>.</mo></mtd></mtr></mtable></mtd></mtr><mtr><mtd><msub><mi>a</mi><mi>N</mi></msub></mtd></mtr></mtable></mfenced><mrow><mi>N</mi><mo>&times;</mo><mn>1</mn></mrow></msub><mo>&CenterDot;</mo><mrow><mo>(</mo><mi>u</mi><mo>(</mo><mi>k</mi><mo>)</mo><mo>-</mo><mi>u</mi><mo>(</mo><mrow><mi>k</mi><mo>-</mo><mn>1</mn></mrow><mo>)</mo><mo>)</mo></mrow></mrow>]]></math><img file="FDA0000862062920000021.GIF" wi="949" he="303" /></maths>步骤3.5:计算输出误差,取y'<sub>N</sub>(k‑1)的第一项<img file="FDA0000862062920000022.GIF" wi="255" he="63" />与y(k)相比较,构成输出误差<maths num="0005" id="cmaths0005"><math><![CDATA[<mrow><mi>e</mi><mrow><mo>(</mo><mi>k</mi><mo>)</mo></mrow><mo>=</mo><mi>y</mi><mrow><mo>(</mo><mi>k</mi><mo>)</mo></mrow><mo>-</mo><msup><mover><mi>y</mi><mo>~</mo></mover><mo>&prime;</mo></msup><mrow><mo>(</mo><mi>k</mi><mo>|</mo><mi>k</mi><mo>-</mo><mn>1</mn><mo>)</mo></mrow><mo>;</mo></mrow>]]></math><img file="FDA0000862062920000023.GIF" wi="524" he="70" /></maths>步骤3.6:启发式校正,并计算k时刻对未来N个时刻的预测输出y<sub>N</sub>(k):<img file="FDA0000862062920000024.GIF" wi="1100" he="302" />其中,校正向量h=[h<sub>1</sub> h<sub>2</sub> … h<sub>N</sub>]<sup>T</sup>由校正权系数{h<sub>1</sub>,h<sub>2</sub>,…,h<sub>N</sub>}构成;步骤3.7:计算应用于(k+1)时刻的控制量u(k+1),获取y<sub>N</sub>(k),A<sub>j</sub>根据τ<sub>k</sub>=jT确定,u(k+1)=u(k‑σ(k))+c<sup>T</sup>·(A<sub>j</sub><sup>T</sup>QA<sub>j</sub>+R)<sup>‑1</sup>A<sub>j</sub><sup>T</sup>Q[ω<sub>P</sub>(k)‑y<sub>P</sub>(k)]其中,c<sup>T</sup>=[1 0 … 0]<sub>M×1</sub>;Q=diag(q<sub>1</sub>,…,q<sub>P</sub>),{q<sub>1</sub>,…,q<sub>P</sub>}为表示对跟踪误差抑制程度的权系数;R=diag(r<sub>1</sub>,…,r<sub>M</sub>),{r<sub>1</sub>,…,r<sub>M</sub>}为表示对控制量变化抑制程度的权系数;ω<sub>P</sub>(k)=[ω<sub>k+1</sub> ω<sub>k+2</sub> … ω<sub>k+P</sub>]<sup>T</sup>,{ω<sub>k+1</sub>,ω<sub>k+2</sub>,…,ω<sub>k+P</sub>}为k时刻对未来P个时刻的期望输出;y<sub>P</sub>(k)为y<sub>N</sub>(k)的前P项,即y<sub>P</sub>(k)=[I<sub>P×P</sub> 0<sub>P×(N‑P)</sub>]<sub>P×N</sub>·y<sub>N</sub>(k);步骤3.8:滚动时域,令k=k+1,进入下一时域迭代运算,回到步骤3.2。
地址 310014 浙江省杭州市下城区朝晖六区潮王路18号浙江工业大学