離散時間比例-積分-微分 (PID) コントローラー
PID コントローラー オブジェクト タイプ pid
、pidstd
、pid2
および pidstd2
のすべてで、離散時間の PID コントローラーを表現できます。
離散時間 PID コントローラーの表現
離散時間 PID コントローラーは、次の式で表現されます。
形式 | 式 |
---|---|
並列 (pid ) |
ここで、
|
標準 (pidstd ) |
ここで、
|
2-DOF 並列 (pid2 ) | 2-DOF コントローラーの出力 (u) とその 2 つの入力 (r および y) との関係は、次のとおりです。 この表現では以下のとおりです。
|
2-DOF 標準 (pidstd2 オブジェクト) |
この表現では以下のとおりです。
|
これらすべての表現において、IF(z) と DF(z) は、それぞれ積分器フィルターと微分フィルターに用いる離散積分器の式です。コントローラー オブジェクトの IFormula
プロパティと DFormula
プロパティを使用して、式 IF(z) と式 DF(z) を設定します。次の表は IF(z) と DF(z) で利用可能な式を示します。Ts はサンプル時間です。
IFormula または DFormula | IF(z) または DF(z) |
---|---|
ForwardEuler (既定値) |
|
BackwardEuler |
|
Trapezoidal |
|
コントローラー オブジェクトを作成する際、IFormula
または DFormula
のどちらか、または両方に対して値を指定しない場合は ForwardEuler
が既定により使用されます。離散積分器の式の設定および変更についての詳細は、コントローラー オブジェクト pid
、pidstd
、pid2
および 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')
このコマンドは、 および で pidstd
モデルを作成します。
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 コントローラーが指定されます。表示からわかるように、N
と c
の値はこのコントローラーでは使用されません。表示からは、積分器に台形公式が使用されていることもわかります。