メインコンテンツ

このページの内容は最新ではありません。最新版の英語を参照するには、ここをクリックします。

Infineon AURIX マイクロコントローラーを使用した符号化器による BLDC のベクトル制御

この例では、三相ブラシレス DC (BLDC) モーターの速度を制御するためのベクトル制御 (FOC) 手法の実装方法を示します。この FOC アルゴリズムには回転子の位置フィードバックが必要であり、それをエンコーダー センサーを使用して取得します。FOC の詳細については、ベクトル制御 (FOC) (Motor Control Blockset)を参照してください。

三相ブラシレス DC (BLDC) モーターの速度とトルクの制御には閉ループ FOC アルゴリズムが使用されます。この例を使用することで、閉ループ FOC を使用して位置制御アプリケーションを実装できます。この例では速度値に達するまでモーターを駆動します。この例では、Embedded Coder® Support Package for Infineon® AURIX TC4x Microcontrollers の AURIX™ 周辺装置ブロックとMotor Control Blocksetの MCB ライブラリ ブロックを使用します。

前提条件

以下のチュートリアルを完了します。

必要なハードウェア

  • Infineon AURIX TC4x - TriBoards

  • AURIX TC3xx Motor Control Power Board

  • Nanotec DB42S02 電気モーター

  • WEDL5541-B14-KIT (5 mm) インクリメンタル エンコーダー

ハードウェアの接続

必要なハードウェアを次の図に示すように接続します。

利用可能なモデル

この例には tc4x_mcb_pmsm_foc_encoder モデルが含まれています。

このモデルはシミュレーションとコード生成の両方に使用できます。このモデルは TC4x TriBoards 用に構成されています。

特定のモーターに合わせてモデル パラメーターを変更できます。コントローラーのアルゴリズムにより、インバーター スイッチを駆動する空間ベクトル PWM 信号が生成されます。インバーターは、2 つのアナログ デジタル コンバーター (ADC) を使用してモーターの入力電流 (ia および ib) を測定し、測定値をプロセッサに送ります。

この例では、エンコーダー センサーを使用して回転子の位置を測定します。エンコーダー センサーは、電気位相角が 90 度ずれるようにコード化された 2 つのトラックまたはチャネルをもつディスクで構成されています。これにより、位相差が 90 度の 2 つのパルス (A と B) とインデックス パルス (I) が作成されます。チャネル A と B の間の位相関係とチャネル状態の遷移を使用して、コントローラーでモーターの回転の方向を特定します。

モデルの構成

1. tc4x_mcb_pmsm_foc_encoder モデルを開きます。

2. Ctrl+E を押して [コンフィギュレーション パラメーター] ダイアログ ボックスを開きます。左側のペインで [ハードウェア実行] をクリックします。[ハードウェア ボード][Infineon AURIX TC4x - TriBoards] に設定します。

3. [ハードウェア ボード設定][Target hardware resources] を展開します。[Series] パラメーターと [Package class] パラメーターをハードウェアに合わせて設定します。

周辺装置ブロックの構成

ハードウェア マッピング ツールを使用して、このモデルの周辺装置ブロックの構成を設定します。

1. Simulink ツールストリップの [ハードウェア] タブに移動し、[ハードウェア マッピング] をクリックします。

2. 次の図は、ハードウェア マッピング ツールでの PWM 周辺装置ブロックの構成を示しています。同様に、モデルは他の周辺装置に対しても構成されています。便宜的に事前構成済みのモデルが用意されています。

モデルのシミュレーション

次の手順に従ってモデルをシミュレートします。

1. tc4x_mcb_pmsm_foc_encoder モデルを開きます。

2. [シミュレーション] タブの [実行] をクリックして、モデルをシミュレートします。

3. [シミュレーション] タブの [データ インスペクター] をクリックし、シミュレーション結果を表示して解析します。

4. シミュレーションの実行時は、モデルを開ループで 1 秒間実行してから、pu 単位の速度が 0.25 と 0.9 の閉ループに切り替えて 20 秒間実行します。pu 単位の測定電流、および基準指定値に追従する速度フィードバックを観察します。

コードの生成とターゲット ハードウェアへのモデルの展開

次の手順に従ってコードを生成し、ターゲット ハードウェアで FOC アルゴリズムを実行します。

1. tc4x_mcb_pmsm_foc_encoder モデルを開きます。

2. [ハードウェア] タブの [ビルド、展開、起動] をクリックして、ターゲット モデルをハードウェアに展開します。

3. モデル キャンバスの下部に示されるリンクを使用して診断ビューアーを開き、ビルド プロセスに従います。モデルのトレーサビリティのためのコードを含むコード生成レポートを確認できます。Infineon AURIX により、ダウンロード ツールを使用してハードウェアにモデルが展開されます。

メモ: モデルをビルドするときのモデル アドバイザーの警告メッセージは無視してかまいません。

4. ハードウェアからの信号を監視するために、Infineon の One Eye ツールをダウンロードしてインストールします。One Eye ツールを使用する前に、必ず最新バージョンの TAS/DAS ツールをダウンロードしてインストールしてください。

5. One Eye ツールを開きます。One Eye ツールで [File][Load Configuration] をクリックして、この例に付属の tc4x_mcb_pmsm_foc_encoder.OneEye ファイルを読み込みます。

6. 手順 3 で生成された tc4x_mcb_pmsm_foc_encoder.elf ファイルを読み込み、測定電流 (Iab_fb_PU1, Iab_fb_PU0)、および基準指定値 (SpeedRef) に従う速度フィードバック (Speed_fb) を観察します。

既知の制限事項

このモデル例では、周辺装置ブロックに対するアクセラレータ モードとラピッド アクセラレータ モードのサポートがないため、それらのモードでのシミュレーションはサポートされません。

参考