tunablePID2
調整可能な 2 自由度の PID コントローラー
説明
調整可能な 2 自由度の PID コントローラーを作成するためのモデル オブジェクト。
tunablePID2
では、調整可能な 2 自由度の SISO PID コントローラーをパラメーター化できます。このパラメーター化されたコントローラーは、パラメーターの調査や、systune
や looptune
などの調整コマンド、Robust Control Toolbox™ コマンド hinfstruct
による自動調整に使用できます。
tunablePID2
はパラメトリックな制御設計ブロック ファミリの一部です。他のパラメトリックな制御設計ブロックには、tunableGain
、tunableSS
および tunableTF
があります。
作成
説明
は、次の方程式で記述される 2 自由度の連続時間 PID コントローラーを作成します。blk
= tunablePID2(name
,type
)
次の図で示すように、r は設定点コマンド、y はその設定点に対する測定された応答、u は制御信号です。
ブロックの調整可能なパラメーターは次のとおりです。
スカラー ゲイン
Kp
、Ki
およびKd
フィルター時定数
Tf
スカラーの重み
b
およびc
type
引数はこれらの値のいくつかを 0 に固定することによってコントローラーのタイプを設定します。
は、サンプル時間 blk
= tunablePID2(name
,type
,Ts
)Ts
をもつ離散時間 PID コントローラーを作成します。このコントローラーは次の方程式で記述されます。
IF(z) と DF(z) は、それぞれ、積分項と微分項に対する離散積分器の式です。IFormula
と DFormula
のプロパティの値が離散積分器の式を設定します。
は、動的システム モデル blk
= tunablePID2(name
,sys
)sys
を使用して、サンプル時間 Ts
およびすべての調整可能なパラメーターの初期値を設定します。モデル sys
は、2 自由度の PID コントローラーの方程式に対応していなければなりません。
入力引数
プロパティ
オブジェクト関数
例
固定パラメーターをもつ調整可能な 2 自由度のコントローラー
固定パラメーターをもつ調整可能な 2 自由度のコントローラー
調整可能な 2 自由度の PD コントローラーを作成します。次に、パラメーター値を初期化してフィルターの時定数を固定します。
blk = tunablePID2('pdblock','PD'); blk.b.Value = 1; blk.c.Value = 0.5; blk.Tf.Value = 0.01; blk.Tf.Free = false; blk
blk = Parametric continuous-time 2-DOF PID controller "pdblock" with equation: s u = Kp (b*r-y) + Kd -------- (c*r-y) Tf*s+1 where r,y are the controller inputs and Kp, Kd, b, c are tunable gains. Type "showBlockValue(blk)" to see the current value and "get(blk)" to see all properties.
動的システム モデルで初期化したコントローラー
動的システム モデルで初期化したコントローラー
調整可能な 2 自由度の PI コントローラーを作成します。2 入力 1 出力の tf
モデルを使用して、パラメーターと他のプロパティを初期化します。
s = tf('s'); Kp = 10; Ki = 0.1; b = 0.7; sys = [(b*Kp + Ki/s), (-Kp - Ki/s)]; blk = tunablePID2('PI2dof',sys)
blk = Parametric continuous-time 2-DOF PID controller "PI2dof" with equation: 1 u = Kp (b*r-y) + Ki --- (r-y) s where r,y are the controller inputs and Kp, Ki, b are tunable gains. Type "showBlockValue(blk)" to see the current value and "get(blk)" to see all properties.
blk
は sys
から初期パラメーター値を取得します。
sys
が離散時間システムの場合、blk
は Ts
や IFormula
などのプロパティの値を sys
から取得します。
名前の付いた入力と出力をもつコントローラー
名前の付いた入力と出力をもつコントローラー
調整可能な PID コントローラーを作成して、名前を入力と出力に割り当てます。
blk = tunablePID2('pidblock','pid'); blk.InputName = {'reference','measurement'}; blk.OutputName = {'control'};
2 自由度の PID コントローラーには 2 つの入力があるため、blk.InputName
は 2 つの名前を含む cell 配列です。
ヒント
バージョン履歴
R2016a で導入参考
tunablePID
| tunableGain
| tunableTF
| tunableSS
| systune
| looptune
| genss
| hinfstruct
(Robust Control Toolbox)