まえがき
オンラインとオフラインの資料からHブリッジの製作について学ぶことができますが、それらの資料の中には良いものもあれば、そうでないものもあります。
結局のところ、Hブリッジ回路はそれほど複雑ではありません。
しかし、Hブリッジ回路を扱い始めた時、私が得た経験の多くが文書化されておらず、私が学んだいくつかのことが既存の資料に欠けていることに気付きました。
そこで、私は学んだことを書き留め、その説明をわかりやすく包括的な構造に整理することにしました。
これらの資料は、μModule Hブリッジ回路の開発中に私が書いた3部作として始まりました。
現在の資料はその3部作に基づいていますが、多くの間違いを修正し、大幅に拡張及び更新されています。
読者のみなさんがHブリッジやモーターコントローラーに精通しているとは想定していませんが、基本的な電気への理解があることは前提とします。
したがって、抵抗、インダクタ、コンデンサについて理解していなかったり、時間領域や周波数領域における回路分析の基本を理解していない場合、この記事は適切ではありません。議論についていけない可能性があります。
しかし、あなたがモーター制御の背景知識に興味がある場合や、設計の根拠を理解したい場合、Hブリッジに関するより深い知識を得たい場合、議論に参加できるでしょう。
私の計画では、最終的にはこれらの記事をHブリッジだけでなく、制御回路や電気機械システムにも拡張する予定です。
基本
一般に、Hブリッジはかなり単純な回路で、4つのスイッチング素子があり、中央に負荷があるH型の構成になっています。
スイッチング素子は通常はバイポーラトランジスタかFETで、高電圧アプリケーションではIGBTの場合もあります。
スイッチング素子が集積されたモータードライバICも存在しますが、モータードライバICであるか、ディスクリート構成であるかは、この議題の大部分には無関係です。
ダイオード(D1~D4)はキャッチダイオードと呼ばれ、通常はショットキーバリアダイオードです。
(訳注:フリーホイールダイオードとも言います。)
ブリッジの上端は電源(バッテリーなど)に接続され、下端はグランドに接続されています。
一般に4つのスイッチング素子は独立にスイッチングできますが、いくつかの自明な制約はあります。
(訳注:制約=後述のショートスルーが起きるのでQ1,Q2もしくはQ3,Q4を同時にオンにできないこと)
Hブリッジの負荷は理論的には何でも構いませんが、ブラシ付きDCモーターやバイポーラステッピングモータ(2つのHブリッジが必要)が最も一般的です。
これ以降、ブラシ付きDCモータードライバ向けに集中します。
静的な動作
Hブリッジの基本的な動作はとても単純です。
Q1とQ4がオンになると、モーターの左側が電源に、右側がグランドに接続されます。モーターに電流が流れ、それによってモーターが順方向(もしくはその逆)に電気的に駆動され、モーターシャフトが回転しだします。
Q2とQ3がオンになると、逆の事が起き、モーターは逆方向に駆動され、軸は逆回転します。
Hブリッジでは、Q1とQ2、もしくはQ3とQ4の両方を同時にオンにしてはいけません。そうした場合、電源とグランドが非常に低い抵抗値で接続され、効果的に電源を短絡させるだけです。
この状態は「ショートスルー」と呼ばれ、Hブリッジか回路内の他のなにかを一瞬で破壊する確実な方法です。
(訳注:アーム短絡とも言います。)
Aサイドのアームには4つの状態を取れますが、この制限により、意味があるのは3つの状態[state]だけです。
Q1 | Q2 |
open | open |
close | open |
open | close |
Bサイドのアームについても同様です。
Q3 | Q4 |
open | open |
close | open |
open | close |
これらより、ブリッジ全体では9つの異なる状態を取ることができます。
Q1 | Q2 | Q3 | Q4 |
close | open | open | open |
close | open | open | close |
close | open | close | open |
open | close | open | open |
open | close | open | close |
open | close | close | open |
open | open | open | open |
open | open | open | close |
open | open | close | open |
もう少し詳しく説明する前に基本的な負荷であるDCモーターについて理解しましょう。
モーターモデル
DCモーターのモデリングは複雑なテーマで、ここで詳細に読むことができますが、この記事では非常に単純なモデルから始めましょう。
このモデルは、 機械誤差を電気的に補正するアプリケーションには使えません。
ここで紹介するモデルの前提として、システムの機械的時定数が電気的時定数よりも遥かに高いことがあります。つまり、解析では、回転数が一定であると考えることができます。
これはほぼすべてのケースに当てはまりますがその理由を理解するには、他の記事を読む必要があります。
今のところ、私の言葉を信じるしかありません。
DCモーターは、電気エネルギーを機械エネルギーに変換するエネルギー変換装置です。発電機として使用される場合は、逆に機械エネルギーを電気エネルギーに変換します。
この非常に単純なモーターモデルでは、機械的なパラメーターは完全に無視されます。電気的には、モーターは磁界の中で動く複数のインダクタ(コイル)を持っていると考えることができます。インダクタ自体には、インダクタンスと、ある程度の内部抵抗があります。インダクタが磁界の中で移動すると、誘導起電力と呼ばれる電圧を発生します。これをVgと表記します。
この説明から、以下のモデルを作ることができます。
多くの場合、インダクタの内部抵抗を無視できます。
電圧源とインダクタによる、さらに単純なモデルも使えます。
どちらのモデルでも全て直列になっているので、各要素に流れる電流は同じですが、電圧は当然異なります。
誘導起電力(Vg)は、インダクタが磁界の中を移動する速度、つまりモーターの回転数のみに依存します。
これらの電磁石(インダクタ)が発揮する力(DCモーターのように回転運動をする場合はトルク)は、インダクタに流れる電流に比例します。
駆動モード
これまでは静的な動作だけを考慮していましたが、最高速度未満の動きを求めるのであれば、スイッチング素子はPWM方式[PWM signal]で制御されます。
PWM信号にはオン時間[On-time]とオフ時間[Off-time]の2つの状態があります。以下の図にそれらを示します。
PWM方式は一定の周波数の周期的な信号です。
オン時間とオフ時間の比率によって、ブリッジの動作パラメーターを変更します。
オン時間とオフ時間それぞれのスイッチング状態は、駆動モードによって異なります。
モーターになにかに役立てたければ、電源に繋がなければなりません。
その際、Q1とQ4をオンにするか、Q2とQ3をオンにするか、2つの選択肢があります。
(訳注:ここのうまい和訳を思いついた人はこっそり教えてほしい)
しかし、オフ時間はどうするべきでしょうか。9つの状態の中から1つを選ばなければなりません。
Q1 | Q2 | Q3 | Q4 |
close | open | open | open |
close | open | open | close |
close | open | close | open |
open | close | open | open |
open | close | open | close |
open | close | close | open |
open | open | open | open |
open | open | open | close |
open | open | close | open |
モーターモデルを振り返ると、誘導性負荷であることがわかりますね。
インダクタには瞬時に流れる電流量を変えられない特性があります。したがって、モーターに電流が流れている時にブリッジの状態を変えても、何らかの形で電流が流れ続けることを理解しておかなければなりません。
通常、キャッチダイオードはオフ時間中の電流を流すためには使用されません。損失が大きくなりすぎるからです(後述)。もちろん例外も無いことは無いです。
オン時間中、モーターのインダクタは電源とグランドの間に接続されているので、インダクタに流れる電流は増え続けます。オン時間の状態からオフ時間の状態に変化するまで(スイッチング中)に電流が0になる可能性はほぼありえません。
インダクタ電流の電流経路を用意できるような、オフ時間の状態を選んだほうが良いでしょう。
そのためには、モーターの両側のスイッチを閉じる必要があります。これにより、オフ時間に取るべき状態が絞られます。
Q1 | Q2 | Q3 | Q4 |
close | open | open | close |
close | open | close | open |
open | close | open | close |
open | close | close | open |
これら4つの選択肢と、2つのオン時間の状態から、8つのマッピングが得られます。しかし、そのうち2つはオン時間とオフ時間が同じ状態なのでちょっと退屈ですね。ブリッジは静的に動きます。
これにより、6つのマッピングが残ります。これを以下にまとめます。
Mapping 1 | Q1 | Q2 | Q3 | Q4 |
on-time state | close | open | open | close |
off-time state | close | open | close | open |
Mapping 2 | Q1 | Q2 | Q3 | Q4 |
on-time state | close | open | open | close |
off-time state | open | close | open | close |
Mapping 3 | Q1 | Q2 | Q3 | Q4 |
on-time state | close | open | open | close |
off-time state | open | close | close | open |
Mapping 4 | Q1 | Q2 | Q3 | Q4 |
on-time state | open | close | close | open |
off-time state | close | open | open | close |
Mapping 5 | Q1 | Q2 | Q3 | Q4 |
on-time state | open | close | close | open |
off-time state | close | open | close | open |
Mapping 6 | Q1 | Q2 | Q3 | Q4 |
on-time state | open | close | close | open |
off-time state | open | close | open | close |
この表から面白い対称性を見出すことができるでしょう。
たとえば、マッピング3と4は両サイドをスイッチングしています。マッピング3のサイドAとBを交換すると、マッピング4と同じになります。逆も同様です。この2つのマッピングを"Lock anti-phase drive"と呼びましょう。
(訳注:lock"ed" anti-phaseと書かれる場合もある。LAPと略しがち)
他の4つのマッピング(1,2,5,6)はブリッジの片方をスイッチングするだけです。マッピング1と5は、マッピング3と4と同じように対称になっています。サイドAとサイドBを入れ替えることで、もう一方のマッピングになります。マッピング2と6にも同じことが当てはまります。
このタイプの操作を"phase-magnitude drive"と呼びましょう。
以後、この記事では両方の駆動モードについて詳しく説明します。
この駆動モードの簡単な分類は、ほとんどの場合有用ですが、完璧ではありません。特定の条件下ではより難解なドライブモードが有益なことがあります。
キャッチダイオード
上記のマッピングを見てわかるように、オン時間とオフ時間の両方で、ブリッジの左右で1つのスイッチング素子がオンになっています。
モーターの電流経路を確保するためにこのようにしましたが、それなら、キャッチダイオードの意味とはなんでしょうか?なくても良いのでしょうか?
答えはNOです。なぜなら、実際の回路では、ハイサイドとローサイドのスイッチング素子を同時にオン/オフすることが不可能だからです。
スイッチング素子は僅かに早いか遅いのです。ある場合は一瞬だけハイサイドとローサイドの両方がオンになり、そうでない場合は一瞬だけ両方がオフになります。
両方がオンになった場合、最悪なショートスルー状態が発生します。一時的であっても、電源の短絡は極力避けたいですよね。
実際のブリッジではそうはならないように、切り替え中は両方がオフになるように設計されています。
片側で両方のスイッチがオフになっていると、モーター電流はどこにも流れません。これは好ましいことではありません。モーターの端子間電圧は、電流が流れる経路を作るのに必要なだけ跳ね上がります。そのピーク電圧は、スイッチング素子のどれかを破壊し、破壊された半導体を経由する電流経路が形成されます。
ブリッジにとって嬉しいことではないので、何らかの保護が必要になります。キャッチダイオードの役割は、モーターの端子間電圧が過剰に高くならないように、スイッチング期間中の電流経路を確保することにあります。
いくつかの実装では、MOSFETのボディダイオードがキャッチダイオードとして使用されます。一方で、スイッチング素子がバイポーラトランジスタである場合、外付けダイオードは必須になります。
もう一つ議論するべきことは、オフ時間中の電流をダイオードに流してはいけない理由です。
答えは、主に放熱によるものです。
ダイオードとスイッチング素子、どちらが低損失ですか?
ほとんどのブリッジの仕様では、モーターに流れる平均電流に比べ、オン時間とオフ時間の間の電流変化は小さいので、以下の説明では電流が一定であると仮定します。
ダイオードとスイッチング素子の違い(動作原理は無関係)は、スイッチング素子が閉じている時、ほぼ一定の低抵抗になりますが、ダイオードはだいたい一定の電圧降下(順方向電圧,Vf)を生じます。
これは、スイッチング素子で消費される電力が電流の二乗に比例することを意味します。
Pswitch = Vswitch * I = Rswitch * I2
ダイオードの消費電力は電流に比例し直線的に変化します。
Pdiode = Vf * I
これから、電流がVf / Rswitchよりも小さい限り、オフ時間の電流をスイッチング素子に流すことをおすすめします。ほとんどのダイオードのVfは0.2~1.0Vの範囲ですが、Rswitchは普通は1Ω以下、一般に100mΩ以下です。放熱に問題がある場合は、VfよりもRswitchを下げるほうがはるかに容易で、Vfは電流とともに大きくなることも言うまでもありません。
オン抵抗が10mΩ以下のMOSFETを見つけ出すことは簡単です。モータードライブICでさえ、最近ではオン抵抗が25mΩ以下のFETを内蔵しています。例えば、このモータードライブICを例にすると、ボディダイオードの順方向電圧は0.8Vで、オン抵抗は23mΩです(これらは標準値です)。このパラメーターでは、分岐点は35Aであり、このICの定格30Aの電流制限を超えています。極めて大電流のアプリケーションを除いて、これは典型的です。
分岐点以下の電流でブリッジを扱う場合、スイッチング素子にオフ時間の電流を流すほうが、有利になります。
まとめ
この記事では、Hブリッジの基本的な構成を説明し、有用な動作モードの一覧を作成し、phase-magnitude driveとlock-anti-phase driveの2つの主な分類を得ました。
このシリーズでは、これらの2つの駆動モードについて詳しく説明していきます。
また、キャッチダイオードの役割と、必須である理由、不必要に電流を流すために使用しない理由についても説明しました。
これまでの議論が、ざっくりとした初歩的なものであると感じたとしても、心配しないでください。詳細はまだたっぷりあります。
************************************************************
この記事はModular Circuits "H-Bridges – the Basics"を、著者のAndras Tantos氏の許可と協力を得て和訳したものです。
技術的には正確に訳するように努めていますが、技術的でない部分については、可読性を優先していることがあります。
また、翻訳にあたって、Google翻訳とみらい翻訳のお試し翻訳を利用しています。
記事中のリンクはWikipediaのみ日本語版へ飛ぶようにしています。