Main Content

離散時間比例-積分-微分 (PID) コントローラー

PID コントローラー オブジェクト タイプ pidpidstdpid2 および pidstd2 のすべてで、離散時間の PID コントローラーを表現できます。

離散時間 PID コントローラーの表現

離散時間 PID コントローラーは、次の式で表現されます。

形式
並列 (pid)

C=Kp+KiIF(z)+KdTf+DF(z),

ここで、

  • Kp = 比例ゲイン

  • Ki = 積分ゲイン

  • Kd = 微分ゲイン

  • Tf = 微分フィルター時間

標準 (pidstd)

C=Kp(1+1TiIF(z)+TdTdN+DF(z)),

ここで、

  • Kp = 比例ゲイン

  • Ti = 積分時間

  • Td = 微分時間

  • N = 微分フィルター除数

2-DOF 並列 (pid2)

2-DOF コントローラーの出力 (u) とその 2 つの入力 (r および y) との関係は、次のとおりです。

u=Kp(bry)+KiIF(z)(ry)+KdTf+DF(z)(cry)

この表現では以下のとおりです。

  • Kp = 比例ゲイン

  • Ki = 積分ゲイン

  • Kd = 微分ゲイン

  • Tf = 微分フィルター時間

  • b = 比例項での設定点の重み

  • c = 微分項での設定点の重み

2-DOF 標準 (pidstd2 オブジェクト)

u=Kp[(bry)+1TiIF(z)(ry)+TdTdN+DF(z)(cry)]

この表現では以下のとおりです。

  • Kp = 比例ゲイン

  • Ti = 積分時間

  • Td = 微分時間

  • N = 微分フィルター除数

  • b = 比例項での設定点の重み

  • c = 微分項での設定点の重み

これらすべての表現において、IF(z) と DF(z) は、それぞれ積分器フィルターと微分フィルターに用いる離散積分器の式です。コントローラー オブジェクトの IFormula プロパティと DFormula プロパティを使用して、式 IF(z) と式 DF(z) を設定します。次の表は IF(z) と DF(z) で利用可能な式を示します。Ts はサンプル時間です。

IFormula または DFormulaIF(z) または DF(z)
ForwardEuler (既定値)

Tsz1

BackwardEuler

Tszz1

Trapezoidal

Ts2z+1z1

コントローラー オブジェクトを作成する際、IFormula または DFormula のどちらか、または両方に対して値を指定しない場合は ForwardEuler が既定により使用されます。離散積分器の式の設定および変更についての詳細は、コントローラー オブジェクト pidpidstdpid2 および pidstd2 のリファレンス ページを参照してください。

離散時間標準形式 PID コントローラーの作成

この例では、Kp = 29.5、Ti = 1.13、Td = 0.15 N = 2.3、およびサンプル時間 Ts 0.1 のある標準形式離散時間比例-積分-微分 (PID) コントローラーを作成する方法を示します。

C = pidstd(29.5,1.13,0.15,2.3,0.1,...
             'IFormula','Trapezoidal','DFormula','BackwardEuler')

このコマンドは、IF(z)=Ts2z+1z1 および DF(z)=Tszz1pidstd モデルを作成します。

pid を使用すると、並列形式コントローラー用の離散積分器の式を同様に設定できます。

標準形式の離散時間 2-DOF PI コントローラー

台形則による離散化式を使用し、離散時間 2-DOF PI コントローラーを標準形式で作成します。式は Name,Value 構文を使用して指定します。

Kp = 1;
Ti = 2.4;
Td = 0;    
N = Inf; 
b = 0.5;   
c = 0;      
Ts = 0.1;
C2 = pidstd2(Kp,Ti,Td,N,b,c,Ts,'IFormula','Trapezoidal')
C2 =
 
                       1     Ts*(z+1)
  u = Kp * [(b*r-y) + ---- * -------- * (r-y)]
                       Ti    2*(z-1) 

  with Kp = 1, Ti = 2.4, b = 0.5, Ts = 0.1
 
Sample time: 0.1 seconds
Discrete-time 2-DOF PI controller in standard form

Td = 0 と設定すると、微分項のない PI コントローラーが指定されます。表示からわかるように、Nc の値はこのコントローラーでは使用されません。表示からは、積分器に台形公式が使用されていることもわかります。

参考

| | |

関連する例

詳細