Attribute System

ジャンク奇行。 ときどき ラクガキ。

トランジスタとMOSFETのゲート駆動とブリッジ回路。

2016-08-29 18:30:02 | 研究&TIPS
 こんばんはヌキヲです。
今回はロボコン等で自作モータドライバーを作る方向けの資料です。

まずは前回までのあらすじです。

(1) トランジスタとMOSFETの駆動の仕方。

第一回目はトランジスタや MOSFET をスイッチとして使う際の考え方を解説しました。
結局スイッチを操作する部分が違うだけで、
どれも同じようにスイッチとして使えることがわかると思います

(2) トランジスタとMOSFETの極性と使い方。

第二回目は極性について解説しました。
電流吸い込みと型と電流吐出し型の説明とブリッジ回路の考え方まで突っ込みました。

(3) トランジスタとMOSFETのゲート駆動とブリッジ回路。

第三回目はいよいよトランジスタを実際に駆動する方法を解説します。
そして MOSFET によるブリッジ回路での例も紹介したいと思います。
乞うご期待!!


2024.02.01 追記
コメントで指摘いただいた通り、画像の MOSFET Pch のシンボル配線について、ソースとドレインを間違えていました。
図説に使ったデータが残っていなかったため、もう一度描き直す必要があり修正にお時間いただいております。

現在は古いデータを発掘できたので修正作業と画像の差し替えを済ませました。
また一部文章の見直しも行いました。

ご指摘ありがとうございました。またご迷惑ご心配おかけして申し訳ありません。
他にもおかしいところや、疑問点などありましたら是非コメントいただけますと幸いです。


目次


・トランジスタのベース駆動。
・MOSFET の ゲート駆動。
・ブリッジ回路
・ハイサイドに Nch MOSFET を使いたい。
・おわりに。


・トランジスタのベース駆動。



ではトランジスタの駆動方法から解説します。

(1) よりトランジスタのベースはダイオードでした。
ダイオードの駆動は LED の駆動とよく似ているので、
電子工作初心者でも割とわかる方が多いのではないでしょうか?

LED


電源電圧 Vcc を抵抗と Vf で分圧しました。
LED の例ではこのような図になりますよね。
それをそのままトランジスタのベースに突っ込みます。

トランジスタのベース駆動


つまり、LED が光る代わりにスイッチ(コレクタ-エミッタ)がオンになるのです。
トランジスタのベースにも Vf があり、これはおよそ 0.7V 程度と言われています。

あまり大きいトランジスタで、ベースに流す電流も大きいと Vf も大きい傾向になるので、
気になる方は個別のデータシートで確認してください。

では定数を入れてみます。

トランジスタのベース駆動


(5-0.7) / 1000 = 0.0043 [A]

ということで、ベースには 4.3mA の電流を流すことになります。
では、この時にコレクタ-エミッタに 150mA の電流を流したいとします。
するとベース比で 34.9倍 になり、この増幅率を hFE と呼びます。

このように小さい電力(4.3mA)で大きな電力(150mA)を駆動することを専門用語で増幅といいます。
増幅といっても、見ての通り動作はコピーに近いですね。

さて、今回の駆動に必要な Ib Ice hFE が求まりましたね!
データシートと見比べて、すべてが範囲内に収まるデバイスを探すことになります。
また、R を大きくすと hFE が上がりますが、Ib + Ice の合計値が減り、
省電力な回路になることがわかると思います。

トランジスタの増幅率は無限ではないので、hFE の限界はよく確認してください。
特にバッテリーの小さいハーフマウスなどでは省電力にしたくなるのでなおさらです。

トランジスタはベースのターンオフがターンオンに比べて遅い傾向にあり、
どうしてもスイッチングを高速化したい場合は R に並列に C を入れることがあります。
が、今度は追加した C の放電用ダイオードが必要になったりして部品点数が多くなることから
あまり使われません。素直に MOSFET を使う方が高速になるようです。



・MOSFET の ゲート駆動。



次は MOSFET のゲート駆動に行きたいと思います。

(1)より MOSFET のゲートは コンデンサ でした。
ゲート-ソースがコンデンサになっており、これを充電してあげればスイッチがオンします。

MOSFETのゲート駆動


しかしこの図の状態では問題が二つあります。
一つ目は突入電流が大きい(理論的には無限である)ことです。

これは電流制限用の抵抗をつけてあげれば解決です。
あまり大きいと充電スピードが制限され、スイッチのオンが遅れてしまいます。
RCフィルターによる遅延回路になってしまうので想像できると思います。
MOSFET の大きさにもよりますが 10~100Ω くらいが一般的じゃないでしょうか?

二つ目は C の放電も考えないといけないことです。
ここがトランジスタとちょっと違うところなので、気を付けてください。

コップに水を注いだと考えてみましょう。
注ぐのを止めても、コップの水は減りませんよね?
コップの水をどうにかして捨てないとスイッチがオフしてくれないのです。
電気も同じで放置しても理論的には減りません。
ま、実際には数秒もすればなくなりますが、モータや LED の駆動でオフに数秒もかけていたら遅すぎるというわけです。

実際は、マイコンや FPGA などの IO ピンで駆動することが多いと思います。
この IO はよくできていて、電流の吐出し、吸い込みの両方ができるようになっています。

充電と放電


このような IO を CMOS といいますが、動作的にはハーフブリッジと一緒です。
図のようにハイサイド駆動でゲートの充電を、ローサイド駆動でゲートの放電をします。
例ではNchしか示しませんでしたが、Pchではどのようになるか考えてみてください。

蛇足になりますが、マイコンやデジタルICから見た名称でハイサイド駆動をソース(吐き出し)、
ローサイド駆動をシンク(吸い込み)と呼ぶこともあります。
とくにトランジスタアレイなんかは片方しかできなかったりするので注意が必要です。

というわけで、マイコンからの制御はとても楽なのですが注意点もあります。
マイコンはリセット時リセット中ともに IO が入力モード、すなわちハイインピーダンスです。
ゲートのコンデンサは充放電されませんので、後述するハーフ・ブリッジ、フル・ブリッジ回路で
問題が起きる(燃える)こともあります。

プルダウンを足す


図のようにプルダウン・プルアップ抵抗を足しましょう。



・ブリッジ回路。



いよいよ MOSFET でブリッジ回路を組みます。

ブリッジ回路


まず避けたいのが、上段下段の MOSFET が同時にオンしてしまうことです。
電源の短絡(ショート)と同じ状態になり MOSFET は当然燃えますが、
回路やバッテリーにまで影響することもあります。

貫通電流


図はオンオフの交差の波形です。
MOSFET のオン・オフは理想通りとはいかず、台形な波形になります。
上下を同時に切り替えたのでは図のように重なる部分が出てきますよね。
これが貫通電流で、MOSFET が燃えたり、熱くなったりします。

そこで出てくるのがデットタイムです。

デットタイムを足した


図のように上下段の切り替わりの際にどちらもオフの状態を作ります。
古くは ロジックIC と RCフィルタ で作られることが多かったように思います。
最近はマイコンの PWM にこの機能がついてることも増えましたね。

私はまだ RCフィルタ を使っています。
ここが知りたい方も多いみたいなので掘り下げます。

RCフィルタ


図に示すのが RCフィルタ による遅延回路です。
よく言う時定数というのは R と C の値をかけたもので、
充電量でいうと 36% 程度のことらしいです。
コンデンサをフル充電するにはさらに 2π (約6.28倍)が必要です。
入力から出力への信号が 2πCR [秒] だけ遅延する…ということになります。

このまま ロジックIC + RCフィルタ で組んでもいいのですが、
部品点数が多くて小さくするのが難しいですよね?
そこで私は MOSFET のゲート容量 Ciss に注目しました。

すでに C があり、どうせ電流制限のために R もつける必要があります。
これでデットタイムを作れないだろうか?

デットタイムの実験


まだ問題があります。そう放電です。
このままではオフの時も遅延してしまい、貫通電流を減らせません。

ダイオード追加


オフの時は遅延する必要がないのでダイオードでバイパスさせます。
するとどうでしょう?
これなら OFF してから次の ON …というように、タイミングをずらすことができそうです。

というわけで、私のハーフブリッジ回路を載せます。

ハーフブリッジ


電圧シフトと電流増幅をかけてゲート駆動としました。
電流増幅のトランジスタはデジトラでもできます。

では定数を決めましょう。
といっても決めなきゃいけないのは R だけですね。
私の現在のデバイスである IRFU5505PBF + IRLU3410PBF で解説します。

データシートより、Ciss と tOFF を読みます。
Ciss はゲートのコンデンサ容量で、tOFF はターンオフにかかる時間です。

IRFU5505PBF 650pF 20ns
IRLU3410PBF 800pF 30ns

Pch のデットタイムは、Nch の tOFF より大きくないといけないことがわかると思います。
逆に Nch のデットタイムは Pch の tOFF …と、相手の tOFF で判断します。
では実際に CRフィルタ の時定数をどのくらいに設定したらいいでしょうか?
私の感覚だと tOFF の 4倍~6倍程度 は必要なようです。
これは、フル充電に 2π かかることからも納得できます。

デットタイムは余裕をもって 300ns くらいに設定してみましょう。

Pch 470[Ω] * 650[pF] = 305.5[ns]
Nch 390[Ω] * 800[pF] = 312[ns]

完成


あとはプルアップ・プルダウンを適当に入れれば完成です!
私はこれを PWM 周波数 62.5KHz で使用しています。
62.5KHz は 16us ですね。
設定したデットタイム 300ns は 16us 中の 2% 未満です。
まだまだ上の周波数も行けそうですね。

部品点数を少なくできたので、秋月C基板に 4ch のフルブリッジ回路が入ってしまいますよ!?



こちらはその製作例です。
ロボットランサーに出場したマシンの基板で、左がモータードライバー基板、右がマイコン基板です。
さすがにもうユニバーサル基板とか配線したくないですね。

※この回路にはモータのフリー動作がなく、オン-ブレーキ動作のみです。
また、ハイサイドブレーキ、ローサイドブレーキどちらも動作可能です。


2024.02.01 追記
さて少し横道にそれますが、さらっと出てきて解説をしていなかった電流増幅部について
疑問に思っている方もいるようなので解説しておきます。

ここを省略できると部品点数を一気に減らせるので本当に必要なのか見ていきます。
画像 p3_h のレベルシフト部からゲート駆動部に直結したポイントに注目します。

このポイントがハイになるときにはプルアップ抵抗を通りますよね?
プルアップ抵抗が追加の電流制限抵抗として働いてしまうのです。
これではゲート駆動をせっかく計算して組んだのにがっかりです。

そしてローになるときには Nch MOSFET を通ります。
こちらは問題なく動作してしまいます。

ということで、ブリッジの動作タイミングが変わってしまうわけですね。
まぁ動くか動かないかでいえばとりあえず動くのですが、あまり良い状態とはいえませんし、
負荷が重くなった時(モータのロック時など)に不具合が出る可能性が高くなります。



・ハイサイドに Nch MOSFET を使いたい。



最後に将来への展望で、ハイサイド Nch の解説です。
(2)よりハイサイド Nch は駆動が安定しないことがわかっていますね。

別電源


しかし、これはVppより高い電圧があれば駆動できます。
別電源を用意できれば問題ないのですが、そうはいかない場合が多いですよね。
そこで、コンデンサを使います。

ブートストラップ回路


コンデンサをチャージポンプ動作で使います。
これをブートストラップ回路といいます。
毎回コンデンサの充電が必要なので、PWM duty 100% 付近を連続では使えません。
逆に言えば、三相交流を入れるブラシレスモーターのドライバーなんかには問題なく使えそうです。


・おわりに。



以上、このシリーズはこれにて完結です。
いつも通りトンデモ理論だったりする可能性があるので、ご使用は自己責任でお願いします。
また、ツッコミがある方はコメかメールでお願いします。

2024.02.01 追記
この記事は大変ご好評いただけているようでうれしく思います。
また逆に大事なところを間違っていたことで大変ご迷惑をおかけいたしました。

他記事やYoutubeなどで参考リンクを張っていただくこともあるようですが、
こちらの記事のコメント欄でもぜひご紹介いただけるとヌキヲが飛び跳ねて喜びます。
(※必須ではありません)

それでは、ご精読ありがとうございました。
コメント (2)    この記事についてブログを書く
  • Twitterでシェアする
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする
« 今日のお品。WZR-D1100H on D... | トップ | ruby-processing on windows »
最新の画像もっと見る

2 コメント

コメント日が  古い順  |   新しい順
Unknown (stynkid)
2021-09-22 12:59:50
出力段のpch fet、 drain と source の接続が逆じゃ無いですか?
このままだと、ボディダイオードで常に電流が流れてしまいますが。
Re : (ヌキヲ)
2021-09-22 20:13:28
ふぇっ!?
うわーー!!ホントだ!!

stynkidさん、ご指摘ありがとうございます。
自分の基板は問題なく動いているので、作図時のミスだと思われます。
なるはやで修正します!!

コメントを投稿

研究&TIPS」カテゴリの最新記事