ニコルス線図設計
ニコルス線図設計は、グラフィカルな対話式手法により補償器を変更し、特定の開ループ応答 (ループ整形) を達成する方法です。ボード線図設計とは異なり、ニコルス線図設計ではニコルス線図を使用して開ループ周波数応答を表示します。ニコルス線図ではゲインと位相の情報が 1 つのプロットにまとまっており、ゲイン余裕と位相余裕の仕様設計に便利です。ニコルス線図のグリッド ラインを使用して、閉ループ応答を推定することもできます (ngrid
を参照)。ニコルス線図の詳細については、nicholsplot
を参照してください。
ニコルス線図のグラフィカルな設計を使用した DC モーターの補償器の調整
この例では、ニコルス線図のグラフィカルな調整手法を使用して DC モーターの補償器を設計する方法を説明します。
プラント モデルと要件
SISO の例: DC モーターで説明している DC モーター プラントの伝達関数は次のとおりです。
この例の設計要件は次のとおりです。
立ち上がり時間が 0.5 秒未満
定常偏差が 5% 未満
オーバーシュートが 10% 未満
ゲイン余裕が 20dB より大きい
位相余裕が 40°より大きい
制御システム デザイナーを開く
MATLAB® コマンド ラインで、プラントの伝達関数モデルを作成し、[ニコルス エディター] 構成で制御システム デザイナーを開きます。
G = tf(1.5,[1 14 40.02]);
controlSystemDesigner('nichols',G);
アプリが開き、既定の制御アーキテクチャ [Configuration 1] のプラント モデルとして G
がインポートされます。
アプリで、次の応答プロットが開きます。
LoopTransfer_C
応答の開ループの [ニコルス エディター]。この応答は開ループ伝達関数 GC です。ここで、C は補償器、G はプラントです。IOTransfer_r2y
応答の [ステップ応答]。この応答は、閉ループ システム全体の入出力伝達関数です。
ヒント
制御システム デザイナーが既に開いているときに開ループの [ニコルス エディター] を開くには、[Control System] タブの [調整法] ドロップダウン リストで、[ニコルス エディター] を選択します。[編集する応答の選択] ダイアログ ボックスで、既存の応答を選択してプロットするか、[新規の開ループの応答]
を作成します。
アプリにより、[ニコルス エディター] と [ステップ応答] のプロットが並べて表示されます。
帯域幅の調整
設計では立ち上がり時間を 0.5 秒未満にする必要があるため、開ループ DC 交差周波数を約 3 rad/s に設定します。1 次近似まで、この交差周波数は 0.33 秒の時定数に対応します。
交差周波数を調整するには、補償器ゲインを増加させます。[ニコルス エディター] で、応答を上方向にドラッグします。これにより、補償器のゲインが増加します。
ニコルス線図をドラッグすると、アプリにより補償器のゲインが計算され、応答プロットが更新されます。
交差周波数が約 3 rad/s になるまでニコルス線図を上方向にドラッグします。
ステップ応答特性の表示
立ち上がり時間を [ステップ応答] プロットに追加するには、プロット領域を右クリックし、[特性] 、 [立ち上がり時間] を選択します。
立ち上がり時間を表示するには、カーソルを立ち上がり時間のインジケーターに移動させます。
立ち上がり時間は約 0.23 秒であり、設計要件を満たしています。
同様に、ピーク応答を [ステップ応答] プロットに追加するには、プロット領域を右クリックし、[特性] 、 [ピーク応答] を選択します。
ピークのオーバーシュートは約 3.5% です。
補償器への積分器の追加
5% の定常偏差の要件を満たすには、補償器に積分器を追加して閉ループ ステップ応答から定常偏差をなくします。[ニコルス エディター] でプロット領域を右クリックし、[極または零点を追加] 、 [積分器] を選択します。
積分器の追加により、定常偏差がゼロになります。ただし、補償器ダイナミクスを変更すると、交差周波数も変更され、立ち上がり時間が増加します。立ち上がり時間を減らすには、交差周波数を約 3 rad/s に増加させます。
補償器のゲインの調整
交差周波数を約 3 rad/s に戻すには、補償器のゲインをさらに増加させます。[ニコルス エディター] プロット領域を右クリックし、[補償器の編集] を選択します。
[補償器エディター] ダイアログ ボックスの [補償器] セクションで、99
のゲインを指定し、Enter キーを押します。
応答プロットは自動的に更新されます。
立ち上がり時間は約 0.4 秒であり、設計要件を満たしています。ただし、ピークのオーバーシュートは約 32% です。ゲインと積分器で構成される補償器は、設計要件を満たすためには不十分です。このため、補償器には追加のダイナミクスが必要です。
補償器へのリード ネットワークの追加
[ニコルス エディター] で、現在の補償器設計のゲイン余裕と位相余裕を確認します。設計では 20 dB を超えるゲイン余裕が必要であり、位相余裕は 40 度を超える必要があります。現在の設計はこれらの要件のいずれも満たしません。
安定余裕を増やすには、リード ネットワークを補償器に追加します。
[ニコルス エディター] で右クリックし、[極または零点を追加] 、 [リード] を選択します。
リード ネットワークの極の位置を指定するには、振幅応答をクリックします。アプリにより、実極 (赤色の X
) と実数零点 (赤色の O
) が補償器および [ニコルス エディター] プロットに追加されます。
[ニコルス エディター] で、極と零点をドラッグし、これらの位置を変更します。これらをドラッグすると、アプリにより極/零点の値が更新され、応答プロットが更新されます。
極または零点の振幅を小さくするには、左の方にドラッグします。極と零点は負の実数軸上にあるため、左にドラッグすると、複素平面内の原点の近くに移動します。
ヒント
極や零点をドラッグすると、その新しい値が右側のステータス バーに表示されます。
初期推定として、零点を -7
あたりの位置に、極を -11
あたりの位置にドラッグします。
位相余裕は設計要件を満たしていますが、ゲイン余裕はまだ低すぎます。
リード ネットワークの極と零点の編集
コントローラーの性能を改善するには、リード ネットワークのパラメーターを調整します。
[補償器エディター] ダイアログ ボックスの [ダイナミクス] セクションで、[リード] 行をクリックします。
[選択したダイナミクスの編集] セクションの [実数零点] テキスト ボックスで、-4.3
の位置を指定し、Enter キーを押します。この値は、DC モーター プラントの最も遅い (一番左にある) 極の近くです。
[実極] テキスト ボックスで、-28
の値を指定し、Enter キーを押します。
リード ネットワーク パラメーターを変更すると、[補償器] と応答プロットは自動的に更新されます。
アプリの [ニコルス エディター] で、20.5
のゲイン余裕はちょうど設計要件を満たしています。
システムのロバスト性を高めるには、[補償器エディター] ダイアログ ボックスで補償器のゲインを 84.5
まで下げ、Enter キーを押します。ゲイン余裕は 21.8
まで増加し、応答プロットが更新されます。
制御システム デザイナーの応答プロットで、システムの性能を設計要件と比較します。システムの性能特性は次のとおりです。
立ち上がり時間は 0.445 秒。
定常偏差はゼロ。
オーバーシュートは 3.39%。
ゲイン余裕は 21.8 dB。
位相余裕は 65.6 度。
システム応答は設計要件をすべて満たしています。