最新のリリースでは、このページがまだ翻訳されていません。 このページの最新版は英語でご覧になれます。

LQG サーボ コントローラーの設計

この例は、次のシステムのサーボ コントローラーを設計する方法を示します。

プラントには、3 つの状態 (x)、2 つの制御入力 (u)、2 つのランダム入力 (w)、1 つの出力 (y)、出力の測定ノイズ (v)、および次の状態方程式と測定方程式があります。

x˙=Ax+Bu+Gwy=Cx+Du+Hw+v

ここで、

A=[010001100]B=[0.31010.30.9]G=[0.71.121.1710.141.5]C=[1.91.31]D=[0.530.61]H=[1.20.89]

システムには次のノイズ共分散データがあります。

Qn=E(wwT)=[4221]Rn=E(vvT)=0.7

次のコスト関数を使用して、トラッカーの性能と制御操作のトレードオフを定義します。

J(u)=0(0.1xTx+xi2+uT[1002]u)dt

このシステムの LQG サーボ コントローラーを設計する手順は、次のとおりです。

  1. MATLAB のコマンド ウィンドウに次のように入力して、状態空間システムを作成します。

    A = [0 1 0;0 0 1;1 0 0];    
    B = [0.3 1;0 1;-0.3 0.9];
    G = [-0.7 1.12; -1.17 1; .14 1.5];
    C = [1.9 1.3 1];  
    D = [0.53 -0.61];
    H = [-1.2 -0.89];
    sys = ss(A,[B G],C,[D H]);

  2. 次のコマンドを入力することにより、与えられたコスト関数を使用して最適状態フィードバック ゲインを構成します。

    nx = 3;    %Number of states
    ny = 1;    %Number of outputs
    Q = blkdiag(0.1*eye(nx),eye(ny));
    R = [1 0;0 2];
    K = lqi(ss(A,B,C,D),Q,R);
    

  3. 次のコマンドを入力することにより、与えられたノイズの共分散データを使用してカルマン状態推定器を構成します。

    Qn = [4 2;2 1]; 
    Rn = 0.7;
    kest = kalman(sys,Qn,Rn);
    

  4. 次のコマンドを入力することにより、カルマン状態推定器と最適状態フィードバック ゲインを接続し、LQG サーボ コントローラーを形成します。

    trksys = lqgtrack(kest,K)
    このコマンドは、次の LQG サーボ コントローラーを返します。
    >> trksys = lqgtrack(kest,K)
     
    a = 
               x1_e    x2_e    x3_e     xi1
       x1_e  -2.373  -1.062  -1.649   0.772
       x2_e  -3.443  -2.876  -1.335  0.6351
       x3_e  -1.963  -2.483  -2.043  0.4049
       xi1        0       0       0       0
     
    b = 
                 r1      y1
       x1_e       0  0.2849
       x2_e       0  0.7727
       x3_e       0  0.7058
       xi1        1      -1
     
    c = 
              x1_e     x2_e     x3_e      xi1
       u1  -0.5388  -0.4173  -0.2481   0.5578
       u2   -1.492   -1.388   -1.131   0.5869
     
    d = 
           r1  y1
       u1   0   0
       u2   0   0
     
    Input groups:              
           Name        Channels
         Setpoint         1    
        Measurement       2    
                               
    Output groups:             
          Name      Channels   
        Controls      1,2      
                               
    Continuous-time model.

参考

| |

関連するトピック