応答データからプラント パラメーターを対話的に推定
この例では、PID 調整器を使用して、測定された SISO 応答データに線形モデルを近似させる方法を説明します。
System Identification Toolbox™ ソフトウェアがある場合は、PID 調整器を使用して、システムから測定された時間領域の応答データに基づいて線形プラント モデルのパラメーターを推定できます。次に、PID 調整器により結果の推定モデルの PID コントローラーが調整されます。PID 調整器では、応答データに一致するよう推定モデルを調整する手段として、グラフィカル、手動または自動の手法がいくつか用意されています。この例ではこれらの手法の一部を説明します。
この例では、測定された応答データをデータ ファイルから、プラントを LTI モデルとして表す MATLAB® ワークスペースに読み込みます。Simulink® モデルからのシミュレーション データの生成の詳細については、測定またはシミュレーションで得られた応答データから対話的にプラントを推定 (Simulink Control Design)を参照してください。
測定された応答データの読み込み
この例で測定された応答データを MATLAB® ワークスペースに読み込みます。
load PIDPlantMeasuredIOData
PID 調整器に応答データをインポートすると、測定データは、負のフィードバック ループによって PID コントローラーに接続されているプラントを表現していると想定されます。つまり、PID 調整器はシステムについて以下の構造を仮定します。ここに示すように、PID 調整器は、ステップ信号がプラント入力 u で加えられ、システム応答が y で測定されたものと仮定します。
この例のサンプル データ ファイルには 3 つの変数が含まれ、それぞれが 501 行 1 列の配列です。inputu
は、応答データを取得するために u
で加えられた単位ステップ関数です。outputy
は、y
で測定されたシステムの応答です。時間ベクトル t
は、0 秒~ 50 秒までサンプル時間 0.1 秒で実行されます。inputu
を t と比較することにより、ステップが t
= 5 秒で発生することがわかります。
この例にあるような数値配列、timeseries
オブジェクトまたは iddata
オブジェクトとして保存された応答データをインポートできます。
同定のための応答データのインポート
PID 調整器を開きます。
pidTuner(tf(1),'PI')
PID 調整器の [Plant] メニューで、
[新規プラントの同定]
を選択します。[プラントの同定] タブで、 [I/O データの取得] をクリックして [ステップ応答] を選択します。[ステップ応答のインポート] ダイアログ ボックスが開きます。
応答データに関する情報を入力します。出力信号は、測定されたシステム応答
outputy
です。入力ステップ信号はダイアログ ボックス内の図に示されるようにパラメーター化されています。ここで、[オンセット ラグ] には5
、[サンプル時間] には0.1
を入力します。次に [インポート] をクリックします。[プラントの同定] プロットに、応答データと初期の推定プラントの応答が表示されます。
データの前処理
応答データの品質と特徴によっては、プラントの推定結果を改善するためにデータに前処理を実行するとよい場合があります。PID 調整器には、応答データを前処理するためのいくつかのオプションがあります。たとえば、オフセットの削除、フィルター処理、データのサブセットの抽出などがあります。この例では、応答データにはオフセットがあります。良好な同定結果を得るためには、データのオフセットを削除することが重要です。[前処理] メニューを使用してこれを行います。(その他のデータ前処理オプションについては、データの前処理を参照してください)。
[プラントの同定] タブで、 [前処理] をクリックして
[オフセットの削除]
を選択します。[オフセットの削除] タブが開き、応答データと対応する入力信号の時間プロットが表示されます。[信号からオフセットを削除] を選択して応答
Output (y)
を選択します。[削除するオフセット] テキスト ボックスで、–2
の値を指定します。信号の初期値または信号の平均値を選択したり、数値を入力したりすることもできます。プロットが追加のトレースで更新され、オフセットが適用された信号が表示されます。[適用] をクリックして、信号に対する変更を保存します。 [オフセットの削除の終了] をクリックして [プラントの同定] タブに戻ります。
PID 調整器は自動的にプラント パラメーターを調整して、前処理された応答信号に基づいてプラントの新しい初期推定を作成します。
プラントの構造とパラメーターの調整
PID 調整器を使用すると、[1 つの極]、[不足減衰ペア] または [状態空間モデル] などのプラントの構造を指定できます。[構造] メニューで、応答に最も適したプラントの構造を選択します。伝達遅延、零点または積分器をプラントに追加することもできます。この例では、1 つの極の構造が定性的に正しい応答を示します。プラントの構造とパラメーターの値をさらに調整し、推定システムの応答が測定応答データにより良く一致するようにできます。
PID 調整器では、プラントのパラメーターを調整する方法がいくつかあります。
プロット上のアジャスターをドラッグして、推定されたシステムの応答をグラフィカルに調整する。この例では、赤い
x
をドラッグして推定されたプラント時定数を調整します。このようにすると、PID 調整器がシステム パラメーターを再計算します。推定されるシステムの応答を変更すると、t
= 5 秒でのステップ入力の適用と、そのステップ入力に対するシステムの応答との間にむだ時間があることが明らかになります。このタブの [プラントの構造] セクションで、[遅延] をオンにして伝達遅延を推定されたプラント モデルに追加します。プロットに縦線が現れ、現在の遅延の値が示されます。線を左右にドラッグして遅延を変更し、赤い
x
をドラッグしてシステム応答をさらに調整します。ゲイン、時定数、むだ時間などのシステム パラメーターの数値を調整する。システム パラメーターの値を数値的に調整するには、 [パラメーターの編集] をクリックします。
この例では、システムの伝達遅延が 1.5 秒であることが別の測定からわかっているとします。[プラントのパラメーター] ダイアログ ボックスで、τ に 1.5 を入力します。[固定] をオンにしてこのパラメーター値を固定します。パラメーターの [固定] をオンにすると、グラフィカルに、または自動で推定プラント モデルを調整しても、そのパラメーターの値は影響を受けません。
測定された応答データに一致するようにシステム パラメーターを自動的に最適化する。 [自動推定] をクリックし、現在の値を初期推定として推定システムのパラメーターを更新します。
これらの方法を繰り返し使用して、推定されたシステムの応答が測定された応答に適切に一致するまで、プラントの構造とパラメーター値を調整できます。
プラントの保存と PID コントローラーの調整
満足のいく近似が得られたら、 [適用] をクリックします。これにより、推定されたプラント Plant1
が PID 調整器ワークスペースに保存されます。PID 調整器により、Plant1
の PI コントローラーが自動的に設計されて、[ステップ プロット: 設定値追従] プロットには、新しい閉ループ応答が表示されます。[プラント リスト] 表では、現在のコントローラー設計に Plant1
が選択されていることが反映されます。
ヒント
PID 調整器のワークスペースに格納されている変数を調べるには、[プラント リスト] を表示します。
PID 調整器ツールを使用して、推定されたプラントのコントローラー設計を改良し、調整されたシステム応答を調べることができます。
また、同定されたプラントを PID 調整器ワークスペースから MATLAB ワークスペースにエクスポートしてさらに解析を行うこともできます。[PID 調整器] タブで、 [エクスポート] をクリックします。MATLAB ワークスペースにエクスポートするプラント モデルをオンにします。この例では、応答データから同定したプラント Plant1
をエクスポートします。調整した PID コントローラーもエクスポートできます。 [OK] をクリックします。選択したモデルが MATLAB ワークスペースに保存されます。
同定されたプラント モデルは、idproc
(System Identification Toolbox) または idss
(System Identification Toolbox) などの同定された LTI モデルとして保存されます。
ヒント
あるいは、[データ ブラウザー] でプラントを右クリックして調整用に選択するか、MATLAB ワークスペースにエクスポートします。