LQ制御/H∞制御

メインページ

●制御対象(赤)
\left\{\begin{array}{l} \dot{\vec x}=A(T_w){\vec x}+B(T_w)\vec{u}+B_w(T_w,\beta){\vec w},\ {\vec x}(0)={\vec x}_0\\ {\vec y}_M=C_M{\vec x}\\ y=\underbrace{C_SC_M}_{C}{\vec x} \end{array}\right.
●外乱信号(赤紫)
{\vec w}=\left[\begin{array}{l} H_w\sin\frac{2\pi}{T_w} t \\ H_w\cos\frac{2\pi}{T_w} t \end{array}\right]
ここで、H_w=0.01[m]とする。
●安定化制御則(緑)
\vec{u}=-F(T_w)\vec{x}
●推力配分(橙)
\vec{u}は制御目的を達成するための望ましいF_z,F_\phi,F_\thetaであるが、これは4つのスラスタに次式で配分する。
\underbrace{\left[\begin{array}{c}F_1\\F_2\\F_3\\F_4\end{array}\right]}_{\vec F}= \underbrace{\frac{1}{4}\left[\begin{array}{rrr} 1 & 1 & -1 \\ 1 & 1 & 1 \\ 1 & -1 & 1\\1 & -1 & -1 \end{array}\right]}_{G^\dag} \underbrace{\left[\begin{array}{c}F_z\\F_\phi\\F_\theta\end{array}\right]}_{\vec\tau}
●推力制限(橙)
その際、次の制約が課される。
F_{min}\le F_k\le F_{max}\quad(k=1,2,3,4)
上のシミュレータは、この制約を考慮したものとなっている。
ここでは、F_{max}=2.5[kgf]、F_{min}=-2.5[kgf]を用いる(要チェック)。
●留意点
制約を受けた推力は次式で駆動力に変換されるが、推力制限がある場合は設計した駆動力が働かないので注意が必要である。
\underbrace{\left[\begin{array}{c}F_z\\F_\phi\\F_\theta\end{array}\right]}_{\vec\tau}= \underbrace{\left[\begin{array}{rrrr} 1 & 1 & 1 & 1\\ 1 & 1 & -1 & -1\\ -1 & 1 & 1 & -1 \end{array}\right]}_{G} \underbrace{\left[\begin{array}{c}F_1\\F_2\\F_3\\F_4\end{array}\right]}_{\vec F}

このとき、次の16ケースについて、上のシミュレータを用いてシミュレーションを行なう。ただし、短周期は6/\sqrt{50}、長周期は10/\sqrt{50}とする。

モデル/制御 横波短周期 横波長周期 斜波短周期 斜波長周期
2次系/LQ Case 1.1 Case 1.2 Case 1.3 Case 1.4
4次系/LQ Case 1.5 Case 1.6 Case 1.7 Case 1.8
6次系/LQ Case 1.9 Case 1.10 Case 1.11 Case 1.12
6次系/H∞ Case 1.13 Case 1.14 Case 1.15 Case 1.16

001
002
003
004
005
006
007
008
009
010
011
012
013
014
015
016
017
018
019
020
021
022
023
024
025
026
027
028
029
030
031
032
033
034
035
036
037
038
039
040
041
042
043
044
045
046
047
048
049
050
051
052
053
054
055
056

%---LQ制御(2次)
if iCON==2 & iTAR==0, 
  is=[4,10]; ks=[2]; ns=length(is); ms=length(ks);
  A=AA(is,is,iTW); B1=BB2(is,:,iTW); B2=BB1(is,ks,iTW); 
  Cd=[CM(6,2) 0]; 
  Mphi=0.5/180*pi; Mu=5/2; 
  Q=1/Mphi^2; R=1/Mu^2;  
  C=[1 0]; 
  [F,pCL]=opt(A,B2,C,Q,R);    
end  
%---LQ制御(4次)
if iCON==3 & iTAR==0, 
  is=[4,5,10,11]; ks=[2,3]; ns=length(is); ms=length(ks);
  A=AA(is,is,iTW); B1=BB2(is,:,iTW); B2=BB1(is,ks,iTW); 
  Cd=[CM(4,[2,3]) 0 0]; 
  Mphi=0.5/180*pi; Mu2=5/2;
  Q=diag(1./[Mphi Mphi/10].^2); R=1/Mu2^2;  
  C=eye(2,ns); 
  [F,pCL]=opt(A,B2,C,Q,R);    
end    
%---LQ制御(6次)
if iCON==4 & iTAR==0,  
  is=[3,4,5,9,10,11]; ks=[1,2,3]; ns=length(is); ms=length(ks);
  A=AA(is,is,iTW); B1=BB2(is,:,iTW); B2=BB1(is,ks,iTW); 
  Cd=[CM(4,[1,2,3]) 0 0 0]; 
  Mz=0.002; Mphi=0.5/180*pi; Mu=5/2; 
  Q=diag(1./[Mz Mphi Mphi/10].^2); R=1/Mu^2; 
  C=eye(3,ns); 
  [F,pCL]=opt(A,B2,C,Q,R);  
end
%---H∞制御(6次)
if iCON==5 & iTAR==0,  
  is=[3,4,5,9,10,11]; ks=[1,2,3]; ns=length(is); ms=length(ks);
  A=AA(is,is,iTW); B1=BB2(is,:,iTW); B2=BB1(is,ks,iTW); 
  Cd=[CM(4,[1,2,3]) 0 0 0];    
  Mz=0.002; Mphi=0.5/180*pi; Mu=5/2;   
  C1=[1/Mz*Cd;zeros(3,6)]; 
  D11=zeros(4,2); 
  D12=[zeros(1,3);1/Mu*eye(3)]; 
  alpha=0.1; r=20; th=pi/4;
  LMIs=sf_synlmi6(A,B1,B2,C1,D11,D12,alpha,r,th);
  cobj=zeros(1,decnbr(LMIs)); 
  cobj(1)=1; 
  [cost,xopt]=mincx(LMIs,cobj); 
  Y=dec2mat(LMIs,xopt,2);  
  Z=dec2mat(LMIs,xopt,3);  
  F=Z/Y;  
  pCL=eig(A-B2*F)  
end
%---sigma plot
  figure(1) 
  ol=ltisys(A,B1,Cd); 
  cl=ltisys(A-B2*F,B1,Cd); 
  om=logspace(-1,2,200); 
  splot(cl,'sv',om),hold on 
  splot(ol,'sv',om),grid  

以下に、各ケースについてLQ制御系/H∞制御系の応答とゲイン線図を示す。前者の上段は制御点の応答[cm]、中段は操作入力[kgf]、下段は波浪外力[kgf]を示している。4秒までは制御なしで、4秒以降が制御ありの応答。制御点は横波・斜波とも右舷船首S1を取っている(横波の場合、右舷制御点の区別はない)。

2次モデルに対するLQ制御
2次モデルの状態変数はロールとその微分。ここではロールに浮体の半幅長さを掛けた制御点の縦変位の低減を図っている。
Case 1.1(横波、短周期規則波)   Case 1.2(横波、長周期規則波)

Case 1.1コメント
●応答図上段:横波を受けて4秒までは制御点の縦変位は2cm程度まで大きく出る。4秒になると制御が始まり、1/10の0.2㎝程度まで低減される。
●応答図下段:浮体が受ける波浪外力を表している。計算式は
B_{w,5,1}H_w\sin\frac{2\pi}{T_w}t+B_{w,5,2}H_w\cos\frac{2\pi}{T_w}t を用いている。4秒までは5つの山がありますが、これを受けて制御点にも5つの山があることに注意。そして、4秒付近で、波浪外力は次の山に向かって負から正の方向に働いている。
●応答図中段:この外力を打ち消すように、4秒から制御動作が始まる。
●波浪外力から制御点までのゲイン線図を、制御前の開ループ系(橙)と制御前の閉ループ系(青)について示している。波周期に対応する角周波数は2\pi/(6/\sqrt{50})=7.4[rad/sec]です。閉ループ系のゲイン線図から、開ループ系のピークが抑制されていることが分かる。-20dBは1/10を意味する。
Case 1.2コメント
●波周期に対応する角周波数は2\pi/(10/\sqrt{50})=4.4[rad/sec]。閉ループ系のゲイン線図から、開ループ系のピークが抑制されていることが分かる。

Case 1.3(斜波、短周期規則波)   Case 1.4(斜波、長周期規則波)
 
 
Case 1.3コメント
●斜波のときは必ずピッチが生じるが、ここではロールだけに注目している。浮体が受ける波浪外力はCase1.1に比べて小さくなっている。
Case 1.4コメント
●斜波のときは必ずピッチが生じるが、ここではロールだけに注目している。浮体が受ける波浪外力はCase1.2に比べて小さくなっている。

4次モデルに対するLQ制御
4次モデルの状態変数はロールとピッチ、およびそれらの微分。ここではロールとピッチから計算される制御点の縦変位(ヒーブは入らないことに注意)の低減を図っている。

Case 1.5(横波、短周期規則波)   Case 1.6(横波、長周期規則波)
 
 

Case 1.5コメント
●横波の場合はピッチは誘起されないので、Case1.1と同じになる。
●応答図中段:ピッチが誘起されないので、ピッチ駆動力(橙)は零。
Case 1.6コメント
●横波の場合はピッチは誘起されないので、Case1.2と同じになる。
●応答図中段:ピッチが誘起されないので、ピッチ駆動力(橙)は零。

Case 1.7(斜波、短周期規則波)   Case 1.8(斜波、長周期規則波)
 
 

Case 1.7コメント
●応答図下段:ピッチ運動を誘起する波浪外力(橙)が生じている。計算式は B_{w,6,1}H_w\sin\frac{2\pi}{T_w}t+B_{w,6,2}H_w\cos\frac{2\pi}{T_w}t を用いています。
●応答図中段:ピッチ運動を抑制するピッチ駆動力(橙)が生じている。
Case 1.8コメント
●長周期斜波の場合の波浪外力は、短周期の場合に比べて、大き目に出る模様。

6次モデルに対するLQ制御
6次モデルの状態変数はヒーブとロール、ピッチ、およびそれらの微分。ここではヒーブとロール、ピッチから計算される制御点の縦変位(ヒーブが加わことに注意)の低減を図っている。

Case 1.9(横波、短周期規則波)   Case 1.10(横波、長周期規則波)
 
 

Case 1.9コメント
●横波の場合はピッチは誘起されないが、ヒーブが現れる。Case1.5との違いは、それに起因すると考えられる。
●応答図中段:青、赤、橙の順にヒーブ、ロール、ピッチに働く駆動力を表している。
●応答図下段:青、赤、橙の順にヒーブ、ロール、ピッチに働く波浪外力を表している。計算式は、それぞれ次を用いる。
B_{w,4,1}H_w\sin\frac{2\pi}{T_w}t+B_{w,4,2}H_w\cos\frac{2\pi}{T_w}t
B_{w,5,1}H_w\sin\frac{2\pi}{T_w}t+B_{w,5,2}H_w\cos\frac{2\pi}{T_w}t
B_{w,6,1}H_w\sin\frac{2\pi}{T_w}t+B_{w,6,2}H_w\cos\frac{2\pi}{T_w}t
Case 1.10コメント
●横波の場合はピッチは誘起されないが、ヒーブが現れます。Case1.6との違いは、それに起因すると考えられる。

Case 1.11(斜波、短周期規則波)   Case 1.12(斜波、長周期規則波)
 
 

Case 1.11コメント
●斜波の場合はピッチが誘起され、ヒーブが現れる。Case1.7との違いは、それに起因すると考えらる。
Case 1.12コメント
●斜波の場合はピッチが誘起され、ヒーブが現れる。Case1.8との違いは、それに起因すると考えらる。

6次モデルに対するH∞制御
波浪外力から制御点までのゲイン線図は、LQ制御と比べて、波周期に対応する角周波数でより低減されていて、制御点縦変位の抑制も効いています。

Case 1.13(横波、短周期規則波)   Case 1.14(横波、長周期規則波)
 
 
Case 1.13コメント
Case 1.14コメント

Case 1.15(斜波、短周期規則波)   Case 1.16(斜波、長周期規則波)
 
 
Case 1.15コメント
Case 1.16コメント

メインページ