一种基于前馈动态矩阵控制算法的两对鳍减摇系统控制方法与流程

文档序号:12468268阅读:来源:国知局

技术特征:

1.一种基于前馈动态矩阵控制算法的两对鳍减摇系统控制方法,其特征在于,包括如下步骤:

(1)设计动态矩阵控制器:

动态矩阵控制包含预测模型、滚动优化、反馈校正三个部分:

(1.1)设计预测模型

首先对阶跃响应进行等间隔采样,获得控制实现中需要的样本值ai=a(iT),i=1,2,…,其中T为采样周期;设在k时刻加入控制变量Δu(k),并且这个值在将来的M个采样时间间隔逐渐变化,即Δu(k),Δu(k+1),…,Δu(k+M-1),M≤P,在k时刻后的P个时刻的预测输出模型为:

Ym(k+1)=Y0(k+1)+A·ΔU(k)

式中,

Ym(k+1)=[ym(k+1),ym(k+2),…,ym(k+P)]T

Y0(k+1)=[y0(k+1),y0(k+2),…,y0(k+P)]T

ΔU(k)=[Δu(k+1),Δu(k+2),…,Δu(k+M-1)]T

M为控制时域长度,P为预测时域长度;

Y0(k+1)作为模型输出初值是由k时刻以前Δu(k)序列作用在系统中的效果;如果过程由稳态启动,则可取y0(k+i)=y(k);

否则:Ym(k+1)=AΔU(k)+A0ΔU(k-1);

式中ΔU(k-1)=[Δu(k-N),Δu(k-N+1),…,Δu(k-1)]T

<mrow> <msub> <mi>A</mi> <mn>0</mn> </msub> <mo>=</mo> <msub> <mfenced open = "[" close = "]"> <mtable> <mtr> <mtd> <msub> <mover> <mi>a</mi> <mo>^</mo> </mover> <mi>N</mi> </msub> </mtd> <mtd> <msub> <mover> <mi>a</mi> <mo>^</mo> </mover> <mi>N</mi> </msub> </mtd> <mtd> <msub> <mover> <mi>a</mi> <mo>^</mo> </mover> <mrow> <mi>N</mi> <mo>-</mo> <mn>1</mn> </mrow> </msub> </mtd> <mtd> <msub> <mover> <mi>a</mi> <mo>^</mo> </mover> <mrow> <mi>N</mi> <mo>-</mo> <mn>2</mn> </mrow> </msub> </mtd> <mtd> <mn>...</mn> </mtd> <mtd> <mrow></mrow> </mtd> <mtd> <mrow></mrow> </mtd> <mtd> <msub> <mover> <mi>a</mi> <mo>^</mo> </mover> <mn>3</mn> </msub> </mtd> <mtd> <msub> <mover> <mi>a</mi> <mo>^</mo> </mover> <mn>2</mn> </msub> </mtd> </mtr> <mtr> <mtd> <msub> <mover> <mi>a</mi> <mo>^</mo> </mover> <mi>N</mi> </msub> </mtd> <mtd> <msub> <mover> <mi>a</mi> <mo>^</mo> </mover> <mi>N</mi> </msub> </mtd> <mtd> <msub> <mover> <mi>a</mi> <mo>^</mo> </mover> <mi>N</mi> </msub> </mtd> <mtd> <msub> <mover> <mi>a</mi> <mo>^</mo> </mover> <mrow> <mi>N</mi> <mo>-</mo> <mn>1</mn> </mrow> </msub> </mtd> <mtd> <mn>...</mn> </mtd> <mtd> <mrow></mrow> </mtd> <mtd> <mrow></mrow> </mtd> <mtd> <msub> <mover> <mi>a</mi> <mo>^</mo> </mover> <mn>4</mn> </msub> </mtd> <mtd> <msub> <mover> <mi>a</mi> <mo>^</mo> </mover> <mn>3</mn> </msub> </mtd> </mtr> <mtr> <mtd> <mo>.</mo> </mtd> <mtd> <mo>.</mo> </mtd> <mtd> <mo>.</mo> </mtd> <mtd> <mo>.</mo> </mtd> <mtd> <mrow></mrow> </mtd> <mtd> <mrow></mrow> </mtd> <mtd> <mrow></mrow> </mtd> <mtd> <mo>.</mo> </mtd> <mtd> <mo>.</mo> </mtd> </mtr> <mtr> <mtd> <mo>.</mo> </mtd> <mtd> <mo>.</mo> </mtd> <mtd> <mo>.</mo> </mtd> <mtd> <mo>.</mo> </mtd> <mtd> <mn>...</mn> </mtd> <mtd> <mrow></mrow> </mtd> <mtd> <mrow></mrow> </mtd> <mtd> <mo>.</mo> </mtd> <mtd> <mo>.</mo> </mtd> </mtr> <mtr> <mtd> <mo>.</mo> </mtd> <mtd> <mo>.</mo> </mtd> <mtd> <mo>.</mo> </mtd> <mtd> <mo>.</mo> </mtd> <mtd> <mrow></mrow> </mtd> <mtd> <mrow></mrow> </mtd> <mtd> <mrow></mrow> </mtd> <mtd> <mo>.</mo> </mtd> <mtd> <mo>.</mo> </mtd> </mtr> <mtr> <mtd> <msub> <mover> <mi>a</mi> <mo>^</mo> </mover> <mi>N</mi> </msub> </mtd> <mtd> <msub> <mover> <mi>a</mi> <mo>^</mo> </mover> <mi>N</mi> </msub> </mtd> <mtd> <msub> <mover> <mi>a</mi> <mo>^</mo> </mover> <mi>N</mi> </msub> </mtd> <mtd> <msub> <mover> <mi>a</mi> <mo>^</mo> </mover> <mi>N</mi> </msub> </mtd> <mtd> <mn>...</mn> </mtd> <mtd> <msub> <mover> <mi>a</mi> <mo>^</mo> </mover> <mrow> <mi>N</mi> <mo>-</mo> <mn>1</mn> </mrow> </msub> </mtd> <mtd> <mn>...</mn> </mtd> <mtd> <msub> <mover> <mi>a</mi> <mo>^</mo> </mover> <mrow> <mi>P</mi> <mo>+</mo> <mn>2</mn> </mrow> </msub> </mtd> <mtd> <msub> <mover> <mi>a</mi> <mo>^</mo> </mover> <mrow> <mi>P</mi> <mo>+</mo> <mn>1</mn> </mrow> </msub> </mtd> </mtr> </mtable> </mfenced> <mrow> <mi>P</mi> <mo>&times;</mo> <mi>N</mi> </mrow> </msub> <mo>;</mo> </mrow>

(1.2)设计反馈校正

Yp(k+1)=Ym(k+1)+λ[y(k)-ym(k)]=AΔU(k)+A0ΔU(k-1)+λe(k) (2)

式中,Ym(k+1)为模型的预测输出,Yp(k+1)为反馈校正后的预测输出,Yp(k+1)=[yp(k+1),yp(k+2),…,yp(k+P)]T,λ=[λ12,…,λP]T,λ的元素可根据实际需要确定;

(1.3)滚动优化

模型预测输出的系统二次型滚动优化目标为:

<mrow> <mi>J</mi> <mo>=</mo> <mo>|</mo> <mo>|</mo> <msub> <mi>Y</mi> <mi>d</mi> </msub> <mrow> <mo>(</mo> <mi>k</mi> <mo>+</mo> <mn>1</mn> <mo>)</mo> </mrow> <mo>-</mo> <msub> <mi>Y</mi> <mi>P</mi> </msub> <mrow> <mo>(</mo> <mi>k</mi> <mo>+</mo> <mn>1</mn> <mo>)</mo> </mrow> <mo>|</mo> <msubsup> <mo>|</mo> <mi>Q</mi> <mn>2</mn> </msubsup> <mo>+</mo> <mo>|</mo> <mo>|</mo> <mi>&Delta;</mi> <mi>U</mi> <mrow> <mo>(</mo> <mi>k</mi> <mo>)</mo> </mrow> <mo>|</mo> <msup> <mo>|</mo> <mn>2</mn> </msup> <msub> <mi>r</mi> <mi>j</mi> </msub> </mrow>

Q=diag[q1,q2,…,qp],Q为误差权矩阵;R=diag[r1,r2,…,rM],R为控制权矩阵;

(2)选择动态矩阵控制参数;

动态矩阵控制在控制过程中,变化的参数主要有模型动态参数ai,模型动态参数ri和校正参数hi;ai受T的限制,ri受T、P、M、Q、R的影响;

(2.1)设计采样周期T和模型长度N

N的选定,满足aN≈as;在实际应用中,还要考虑计算机的性能问题,因此,一般选择合理的采样周期,使系统模型长度N在20~50范围内;

根据N的范围,设定采样周期T;

(2.2)设计时域长度P

根据系统二次型滚动优化指标,优化时域长度P,考虑式(3)所示的优化指标,使系统二次型滚动优化指标达到最小;

(2.3)设计控制时域长度M和控制权矩阵R

对具有简单动态响应的对象,选择M=1~2;对于含有振荡等复杂响应的对象,则选择M=4~8,且M≤P;

R=diag(r1,…,rM)中,ri选为同一个数,记为r;R主要是用来对Δu(k)的大小变化进行限制,以免加入变化过快的控制;一般情况下,选取r=0.1;

(2.4)设计误差权矩阵Q

Q为一个对角矩阵,Q=diag(q1,…,qP),权系数qi是对应误差项的值在所有指标中的权重值,qi选0或1;

(3)采用前馈补偿控制后鳍升力;

在确定后鳍实时升力损失之后,通过前馈补偿控制,实时调整后鳍转角,增大后鳍的转角,以增大后鳍的有效鳍角,进而补偿后鳍升力损失;

(3.1)控制系统GS(s)接收船舶横摇角速度Wq(s),根据所获取数据计算前后鳍控制参数,将参数分别传给前后鳍随动系统GB(s)和GF(s);

(3.2)系统根据动态矩阵控制预测模型计算前鳍对后鳍的扰动量β,并将其传递给前馈补偿控制器Gff(s);

(3.3)前馈补偿控制器Gff(s)根据扰动量计算补偿差值,将差值反馈给后鳍随动系统GB(s);

(3.4)后鳍随动系统GB(s)将控制系统GS(s)和前馈补偿控制器Gff(s)的参数加和,最终得到后鳍转动角度,作用于后鳍;

(3.5)前后鳍传感器实时传输前后鳍力矩,当前后鳍力矩不相等时,重复步骤(3.2)、(3.3)、(3.4);当前后鳍力矩相等时,进行步骤(6);

(3.6)船舶横摇角减小后,船舶反馈横摇角速度Wq(s)至控制系统GS(s),重复步骤(3.1)至(3.6);

实现前馈完全补偿的条件是:

<mrow> <msub> <mi>G</mi> <mrow> <mi>f</mi> <mi>f</mi> </mrow> </msub> <mrow> <mo>(</mo> <mi>s</mi> <mo>)</mo> </mrow> <mo>=</mo> <mo>-</mo> <mfrac> <mrow> <msub> <mi>G</mi> <mrow> <mi>P</mi> <mi>D</mi> </mrow> </msub> <mrow> <mo>(</mo> <mi>s</mi> <mo>)</mo> </mrow> </mrow> <mrow> <msub> <mi>G</mi> <mi>B</mi> </msub> <mrow> <mo>(</mo> <mi>s</mi> <mo>)</mo> </mrow> </mrow> </mfrac> </mrow>

扰动量即可视为后鳍升力损失的大小,由动态矩阵控制的预测输出值与后鳍升力进行比较获得;GPD(s)利用升力反推鳍转角,再通过拉氏变换求的;在前后鳍系统型号相同的情况下,GB(s)与前鳍传函一致。

当前第2页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1