| Control System Toolbox関数リファレンス |
feedback
表示
sys = feedback(sys1,sys2) sys = feedback(sys1,sys2,sign) sys = feedback(sys1,sys2,feedin,feedout,sign)
詳細
sys = feedback(sys1,sys2) は、負のフィードバック相互結合のLTIモデルsyssを出力します。

閉ループモデルsysは、入力ベクトルとして
、出力ベクトルとして
をもっています。LTIモデルsys1およびsys2は、共に連続系か、または、同じサンプル時間をもつ離散系でなければなりません。結果として得られるモデルタイプは、優先ルールに従って決定されます(マニュアルの"設定ルール "を参照)。
sys = feedback(sys1,sys2,+1)
を使用します。 デフォルトでは、feedback(sys1,sys2)は、負のフィードバックを仮定しており、feedback(sys1,sys2,-1)と等価です。
sys = feedback(sys1,sys2,feedin,feedout)
は、より一般的なフィードバックループに対する閉ループモデルsysを計算します。

ベクトルfeedinは、sys1の入力ベクトル
に対するインデックスを含み、どの入力がフィードバックループに関係しているかを設定します。同様に、feedoutは、
sys1のどの出力
がフィードバックに使用されるかを設定します。結果として得られるLTIモデルsysは、sys1と同じ入力および出力をもっています(それらの順序は保持されます)。前と同様、デフォルトでは負のフィードバックが適用され、正のフィードバックを適用するには、
sys = feedback(sys1,sys2,feedin,feedout,+1)
より複雑なフィードバック構造については、appendとconnectを使用してください。
注意事項
静的ゲインを正則行列として設定することができます。たとえば、つぎのような場合です。
sys = feedback(sys1,sys2)
ただし、sys1とsys2の2つの引数の少なくとも1つは、LTIオブジェクトでなければなりません。2つの静的ゲイン
k1、k2を含むフィードバックループの場合は、つぎのようにして行ないます。
sys = feedback(tf(k1),k2)
例題
G = tf([2 5 1],[1 2 3],'inputname','torque',... 'outputname','velocity'); H = zpk(-2,-10,5) Cloop = feedback(G,H)
Zero/pole/gain from input "torque" to output "velocity": 0.18182 (s+10) (s+2.281) (s+0.2192) ----------------------------------- (s+3.419) (s^2 + 1.763s + 1.064)
結果は、優先ルールから期待されるとおり零点-極-ゲインモデルになります。Cloopは、Gから入力名と出力名を受け継いでいることに注意してください。
5入力、4出力の状態空間プラントPと2入力、3出力の状態空間フィードバックコントローラKを考えます。プラントの出力1、3、および4をコントローラ入力に結合し、コントローラ出力をプラントの入力4および2に結合するためには、つぎのステートメントを使います。
feedin = [4 2]; feedout = [1 3 4]; Cloop = feedback(P,K,feedin,feedout)
Cloop = feedback(G,1) % 左図 Cloop = feedback(1,G) % 右図
制限
フィードバック結合は代数ループを含むことができません。
および
が、sys1およびsys2のフィードスルー行列の場合、このことは、つぎの条件と等価です。
参考
series直列結合
parallel並列結合
connectブロック線図の内部結合から状態空間モデルを抽出
| evalfr | filt |