ラピッドコントロールプロトタイピングにおけるソフトウェアインザループアプローチ
回路図エディタライブラリとSimulinkからのCコードインポートを使用したPIコントローラの2つのRCP実装のデモンストレーション
導入
ソフトウェア・イン・ザ・ループ(SIL)コンセプトは、仮想コントローラの初期シミュレーションと検証を可能にします。これにより、実際のコントローラをテストする際に伴うコストと複雑さを伴わずに、開発中のコントローラのコンセプトを検証できます。ラピッド・コントロール・プロトタイピング(RCP)は、エンジニアが制御戦略を迅速にテストし、反復的に検証できるプロセスです。RCPは、製品プロセスの早い段階で修正を可能にすることで開発時間を短縮します。設計プロセスの早い段階でエンジニアリング部門に製品を確認させることで、ミスを修正し、コストがまだ低いうちに変更を加えることができます。
RCPアプローチを用いることで、プロジェクトの早期段階で新規機器の動作をテスト・評価することが可能になります。この例は、SILを用いて昇圧コンバータの制御をテスト・検証することで、RCPを実現する方法を示しています。
モデルの説明
昇圧コンバータの電気モデルは、電圧源、内部抵抗を持つインダクタ、内部抵抗を持つコンデンサ、2種類の負荷、およびスイッチで構成されています。初期入力電圧は30V、出力電圧は50Vです。PWM変調器の搬送周波数は10kHzです。コントローラは2つの異なる方法で実装されています。1つは図1に示すように信号処理コンポーネントを使用する方法、もう1つは図2に示すようにC関数を使用する方法です。
SimulinkからCコードファイルを生成した後、「追加ソース」タブにディレクトリの場所が表示されます。インポートされたディレクトリは「名前」タブで確認できます。
スケマティックエディタに「コントローラ」関数を含めるには、シンプルな output_fcn 関数を使用します。以下の output_fcn() で、この関数の呼び出し方法を確認できます。
output_fnc(){
rtU.Vout = Vout_in;
rtU.Reference = Reference_in;
rtU.PWM_Enable = PWM_Enable_in;
boost_closed_loop_control_step();
Enable_out = rtY.enable;
Modulation_Signal_out = rtY.Modulation_Signal;
}
PIレギュレータは、void関数「boost_closed_loop_control_step」によって実装されます。この関数への入力は、 SCADA入力コンポーネント(Reference_in)から供給される基準電圧と出力電圧(Vout_in)です。この関数は、PWM変調器のデューティサイクル設定を出力します。
シミュレーション
このアプリケーションノートでは、PIコントローラの挙動を確認できます。また、Simulinkで作成したコントローラと信号処理コンポーネントを使用して実装したコントローラを比較することもできます。図4と図5は、コントローラが「オン」状態への単純な遷移時にどのように反応するかを示しています。これら2つのアプローチに違いがないことがわかります。どちらのシナリオでも出力電力は120Wです。


テスト自動化
この例のテスト自動化はまだありません。ご協力いただける場合はお知らせください。アプリケーションノートへの署名を喜んで承ります。
要件の例
表1は、モデルをリアルタイムで実行するためのファイルの場所とハードウェア要件に関する詳細情報と、この最小限のハードウェア構成でモデルを実行した場合のHILデバイスのリソース使用率を示しています。この情報は、モデルの実行とカスタマイズを必要に応じて行う際に役立ちます。
ファイル | |
---|---|
Typhoon HILファイル | 例\モデル\一般的なパワーエレクトロニクス\ブースト閉ループ* ブーストクローズドループ.tse ブーストクローズドループ.cus *信号処理の例のみ |
最小ハードウェア要件 | |
HILデバイス数 | 1 |
HILデバイスモデル | HIL402 |
デバイス構成 | 1 |
HILデバイスのリソース利用 | |
処理コア数 | 1 |
最大マトリックスメモリ使用率 | 1.93% |
最大時間枠利用率 | 62.5% |
シミュレーションステップ、電気 | 0.5マイクロ秒 |
実行率、信号処理 | 100マイクロ秒 |
著者
[1] シミサ・シミッチ