マルチレベル方式 NPC DC-ACインバータのPWM制御方法

投稿者: 中村 創一郎 投稿日:

DC-ACインバータについて、バイポーラ方式、ユニポーラ方式に続いてマルチレベル方式について説明していきます。

マルチレベル方式のインバータでは、スイッチング素子の耐圧を更に低耐圧のものにすること、リアクトルのリップルを更に小さくすることを目的に、様々な方法で実現しています。
この記事では、NPC方式について解説します。

DC-ACインバータについて、最も基本的な内容は、バイポーラ方式についての記事をご覧ください。

その他の方式については以下のリンクにまとまっていますので、ご覧ください。
https://www.smartenergy.co.jp/scideam_blog/tag/dcac/

NPC方式とは

マルチレベル方式では、どのように各スイッチに印加されるDC電圧を減らすことができるかということが焦点となります。

NPC方式は、Neutral Point Clamped、つまり中性点クランプ方式と呼ばれており、本記事でご紹介するのは、ダイオードを使ってクランプするので、特にダイオードクランプ型NPCとも呼ばれています。

回路図は大まかに以下の様になります。
ここでは単相2線式のDC-ACインバータを対象とします。

主回路中、DC側の電圧源から、電解コンデンサなどを用いて中性点を作り出し、この中性点を使って電圧を複数レベルにします。

スイッチのPWM駆動方法

スイッチのキャリア信号と、サイン波を出力させるための制御信号波を以下に示します。

2つのキャリア信号に対して、2つの制御信号を用いてQ1、Q2、Q3、Q4のゲート信号とQ5、Q6、Q7、Q8のゲート信号を作りだします。

このPWM動作によってa, b間に発生する電圧を、LCで平滑化することで、出力にサイン波を得ます。
この時、a, b間の取る電圧は、+E, +1/2E, 0, -1/2E, -Eとなります。

ダイオードクランプ型マルチレベルインバータ(DCMLI)は、最初に3レベルインバータとして発明された。
[中略]
その後、4レベル以上のマルチレベルインバータも含めて、DCMLIと呼ばれている。

パワーエレクトロニクスハンドブック p415

この時のシミュレーション波形は以下の様になります。

シミュレーション結果

詳細なスイッチの駆動方法については、アナログ回路での駆動が分かりやすいので、回路図をダウンロードいただき、実際にシミュレーションしていただければと思います。

3レベル NPC方式のメリット・デメリット

メリット

  • レベル数が上がるにつれて、スイッチ素子に係る電圧が少なくなっていくため、低耐圧のスイッチングデバイスを使用することが可能。
    低耐圧のスイッチングデバイスは、一般的に低損失、高速スイッチングであるため、スイッチング部での損失削減に有効。
  • Lの電流リップルが小さくなるため、バイポーラ方式のインバータと同等のリップル電流を許容するならばインダクタンスを小さくすることが可能。

デメリット

  • スイッチ駆動が複雑になる。
  • 部品点数が増える。

PWM駆動のシミュレーション

アナログ回路での駆動

アナログ回路モデル、スイッチの駆動方法については、是非モデルをダウンロードしてご確認ください。

ここで、回路モデル中、VS1などの絶縁アンプは、ハイサイドスイッチを同一信号で駆動するために便宜上使用しています。

シミュレーション結果は以下の通りです。
キャリア信号と制御信号、Vabに注意して、出力電圧を確認してください。

シミュレーションは、上部にある開始ボタンをクリックすることで、実行可能です。
Waveformモードにし、50msec実行した結果を確認しましょう。

スイッチングキャリアの設定方法などは、別途チュートリアルをご覧ください。
https://www.smartenergy.co.jp/support/ScideamArticles/help/tutorial/tutorial_circuit/tutorial_circuit/

デジタル制御による駆動

サイディームのスクリプト機能を使った、デジタル制御による駆動を以下に示します。

主回路は、スイッチ素子にSwitch、ゲート駆動にPulseという素子を使用しています。
このPulse素子は、PWMの時比率を直接入力できるイメージで使用できます。

そのため、アナログ回路の際に使用した制御信号は、単純に時比率という形でスクリプトから、Switch素子に指定しています。

以下、回路図です。

SineTarget1 = sin(50*2*PI*t);
SineTarget2 = -1 * sin(50*2*PI*t);

D1 = SineTarget1;
if(D1 < 0) D1 = 0;

D2 = SineTarget1 + 1;
if(D2 > 1) D2 = 1;

D3 = SineTarget2;
if(D3 < 0) D3 = 0;

D4 = SineTarget2 + 1;
if(D4 > 1) D4 = 1;

setoutvar(D1);
setoutvar(D2);
setoutvar(D3);
setoutvar(D4);

//三角波に変換
D10 = 0.5 - 0.5 * D1;
D11 = 0.5 + 0.5 * D1;
D20 = 0.5 - 0.5 * D2;
D21 = 0.5 + 0.5 * D2;
D30 = 0.5 - 0.5 * D3;
D31 = 0.5 + 0.5 * D3;
D40 = 0.5 - 0.5 * D4;
D41 = 0.5 + 0.5 * D4;

setparam("P1","T0",D10);
setparam("P1","T1",D11);
setparam("P2","T0",D20);
setparam("P2","T1",D21);
setparam("P3","T0",D10);
setparam("P3","T1",D11);
setparam("P4","T0",D20);
setparam("P4","T1",D21);
setparam("P5","T0",D30);
setparam("P5","T1",D31);
setparam("P6","T0",D40);
setparam("P6","T1",D41);
setparam("P7","T0",D30);
setparam("P7","T1",D31);
setparam("P8","T0",D40);
setparam("P8","T1",D41);

アナログ回路で駆動することに目的がなければ、シミュレータとしても高速に解析することが可能であるため、この方法をお勧めいたします。

ただし、マルチレベル回路の場合、三角波を用いて駆動することが重要であり、単純に時比率を設定してしまうとノコギリ波として出力している状態になってしまうため、Pulse素子に時比率を引き渡す段階で、三角波駆動するのと等価になるように時比率を変更しています。

詳しい使用方法は、チュートリアルをご覧ください。
[デジタルパレット チュートリアルリンク]
https://www.smartenergy.co.jp/support/ScideamArticles/help/tutorial/tutorial_digital_palette/tutorial_digital_palette/

[Pulse素子 チュートリアルリンク]
https://www.smartenergy.co.jp/support/ScideamArticles/help/scideam_help/parts/generator/pulse/pulse/

まとめ

  • 3レベルNPC方式のマルチレベルインバータにおけるPWM制御の方法について説明しました。
  • アナログ回路における実現方法をシミュレーションモデルで説明しました。
  • デジタル回路における実現方法をシミュレーションモデルで説明しました。

こちらの記事で使用した回路モデルは、本記事からダウンロード可能です。

シミュレーションモデルについて

本モデルは、電源パワエレ向け高速回路シミュレータScideam(サイディーム)で動作可能です。
本記事のモデルは以下からダウンロードしてください。

Scideamについて
もっと詳しく
機能や価格
30日間試用について
製品ページへ

お問合せ

参考文献

[1]パワーエレクトロニクスハンドブック編集委員会 編, “パワーエレクトロニクスハンドブック”, オーム社 (平成22年)


中村 創一郎

中村 創一郎

株式会社スマートエナジー研究所代表取締役 博士(工学)
モデルベース開発やシステムズエンジニアリングを用いて、 系統連系インバータや双方向コンバーターなどのデジタル制御電源開発を得意とする、エンジニア兼コンサルタント兼経営者

日々、シミュレーションの魅力を伝えられないか奮闘中

実績
大手電機メーカーへの開発支援、モデルベース支援
系統連系インバータの開発・認証取得支援
自動車メーカーへのシステムズエンジニアリング支援
宇宙航空研究開発機構との共同研究
など

会社創業以来10年以上、デジタル制御電源とモデルベース開発に従事