Main Content

帯域幅近傍のプラントの周波数応答を使用した PID コントローラーの設計

この例では、線形化できないプラントに対する PID コントローラーの調整方法の 1 つについて説明します。ここでは周波数応答ベースの PID 調整器を使用して、制御帯域幅近傍での降圧コンバーターの周波数応答を自動的に特徴付けた後、PID コントローラーを調整します。

降圧コンバーター モデル

降圧コンバーターは、DC を DC に変換します。この例のモデルでは、スイッチング電源を使用して、DC 30 V の電源電圧を、制御された DC 電源電圧に変換します。このコンバーターは、理想的なスイッチではなく MOSFET を使用してモデル化することで、デバイスのオン抵抗が確実に正しく表現されるようにしています。このコンバーターの基準電圧から測定電圧までの応答は、これらの MOSFET スイッチを含んでいます。従来の PID 設計には "基準電圧" (コントローラー出力) から測定電圧へのシステムの線形モデルが必要です。しかし、このモデルにはスイッチがあるため、自動線形化によってゼロのシステムが得られます。モデルがゼロに線形化される場合、いくつかの代替方法を使用できます。

  • システムの再線形化。別の操作点またはシミュレーションのスナップショット時間でモデルを線形化します。

  • 新規プラントの同定。測定またはシミュレートされたデータを使用してプラント モデルを同定します (System Identification Toolbox™ ソフトウェアが必要です)。

  • 周波数応答ベースの調整。シミュレートされたデータを使用してプラントの周波数応答を取得します。

この例では周波数応答ベースの PID 調整器を使用して、システムの周波数応答を推定し、PID コントローラーを調整します。システム同定を使用してプラント モデルを同定する例については、シミュレートされた I/O データを使用した PID コントローラーの設計を参照してください。

降圧コンバーター モデルの作成の詳細については、降圧コンバーター (Simscape Electrical)を参照してください。

open_system('scdbuckconverter')

このモデルでは、0.004 秒で 15 V から 25 V に切り替わる基準電圧と、0.0025 秒から 0.005 秒まで有効な負荷電流を使用します。既定のゲインで初期化されたこのコントローラーでは、オーバーシュートが発生し、長い整定時間がかかっています。モデルをシミュレートすると、システムの不足減衰で低速な応答が示されます。

sim('scdbuckconverter')
open_system('scdbuckconverter/Scope 1')
open_system('scdbuckconverter/Scope 2')

この例では、周波数応答推定を使って PID ゲインを調整してシステムを特徴付けることで、システムの帯域幅と位相余裕を改善して性能を向上させます。PID コントローラーを調整する際は、降圧コンバーター システムの以下の特性を考慮してください。

  • システム プロセス ノイズまたはセンサー ノイズがない

  • コントローラー入力は PWM 信号である

  • PWM 信号は 0 ~ 1 の間に制限 (飽和) される

  • 定常状態のコントローラーの定格出力は 0.5 である

降圧コンバーター システムの場合、立ち上がり時間が短くオーバーシュートが低いシステムが望まれます。この例では、立ち上がり時間 250e-6 秒と、10% 未満のオーバーシュートを実現するコントローラーを調整します。

周波数応答ベースの PID 調整器を開く

Feedback controller サブシステムを開き、次に PID Controller ブロックのダイアログを開きます。[調整法の選択][周波数応答ベース] を選択して [調整] をクリックします。降圧コンバーター コントローラーの [周波数応答ベースの PID 調整器] が開きます。

[周波数応答ベースの PID 調整器] は、2 つのシミュレーションを使用してプラントの PID コントローラーを自動的に調整します。1 回目のシミュレーションでは、ベースライン応答を生成します。2 回目のシミュレーションでは、プラント入力でループを中断し、正弦信号とステップ信号でプラントに摂動を与えます。調整器は 2 つのシミュレーション応答間の差を取り、これによりモデルのすべての外乱の影響が取り除かれます。次に調整器は結果のデータを使ってプラントの周波数応答を推定します。最後に、推定された周波数応答を使用して PID ゲインを計算します。

[周波数応答ベースの PID 調整器] を開くと、調整器は PID Controller ブロックからパラメーターを読み取って PID コントローラーの構造を判定します。これらのパラメーターには次のものが含まれます。

  • PID コントローラーのタイプ (P、I、PI、PID など)

  • PID コントローラーの形式 (並列、理想)

  • 該当する場合は積分手法 (前進オイラー法、台形則など)

  • 該当する場合は微分フィルター手法 (前進オイラー法、台形則など)

  • 該当する場合はサンプル時間

実験設定の指定

調整を行う前に、プラントの周波数応答を推定するために調整器で行われる実験のパラメーターを指定します。

[開始時間] は、調整器がプラントに摂動信号を適用し始める時間 (秒単位) です。プラントが調整に使用する定格操作点にある開始時間を選択してください。この例では、降圧コンバーターの初期の過渡状態は 0.002 秒後に下がります。したがって、[開始時間] に 0.002 と入力します。

摂動実験の [持続時間] を指定します。実験の持続時間の保守的な推定値は 100 をターゲット帯域幅で除算した値です。ターゲット帯域幅は約 2/τ です。ここで τ は目的の立ち上がり時間です。この例では目的の立ち上がり時間が 250e-6 秒なので、ターゲット帯域幅は毎秒 8000 ラジアンとなります。この例の持続時間の保守的な推定値は 100/8000、つまり 0.0125 秒です。[持続時間] に 0.0125 秒を選択します。

実験中に調整器は 4 つの周波数 [1/3, 1, 3, 10] $\omega_c$ でプラントに正弦波信号を挿入します。ここで $\omega_c$ は調整に指定するターゲットの帯域幅です。挿入される正弦波の振幅を [正弦波振幅] フィールドに指定します。

システムのノイズ フロアより大きく、システムが飽和しない信号振幅を選択します。この例ではシステムに考慮すべきノイズがありません。ただし、コントローラー出力 (PWM のデューティ比) が [0 1] に制限され、コントローラーの定格出力は 0.5 で定常状態になります。これらの制限内に留まるためには 0.1 の正弦波振幅を指定します。スカラー値を指定すると、4 つの周波数すべてに同じ振幅が使用されます。

漸近的に安定なプラントの場合、調整器はプラントの DC ゲインを推定するためにステップ信号の挿入も行います。正弦波振幅の選択時と同じ考慮事項に基づいて、このステップ信号の振幅を選択します。この例では、[ステップ振幅] フィールドにも 0.1 を入力します。

設計目標の指定

最後に調整のターゲット帯域幅を指定します。前述のように、ターゲットの帯域幅は 8000 ラジアン/秒です。[帯域幅] フィールドに 8000 を入力します。既定のターゲット位相余裕 60 度は、約 10% またはそれ以上のオーバーシュートに対応します。

PID コントローラーの調整と結果の検証

[調整] をクリックして降圧コンバーターの 2 つのシミュレーションを開始し、PID コントローラーの調整を行います。

調整の手順が完了すると、[周波数応答ベースの PID 調整器] ダイアログの [調整結果] セクションに、調整されたゲイン、推定位相余裕、およびノミナル プラント入力が表示されます。推定位相余裕をチェックして、[ターゲットの位相余裕] に近いことを確認します。

結果を検証するには、調整後の PID ゲインを使ってモデルをシミュレートします。[PID ブロックの更新] をクリックし、調整後のゲインを PID Controller ブロックに書き込みます。次にモデルをシミュレートして、PID コントローラーの性能を確認します。

bdclose('scdbuckconverter')

参考

| | |

関連するトピック