2018年04月21日

これまでに作ったものまとめ

これまでに作ったけどブログでは紹介していなかったもののまとめです。
本当は回路やプログラム載せてアレコレ解説したいのですが、文章に起こすのが結構めんd・・・大変なので画像とちょっとした紹介にとどめておきます。
このなかでやる気が出たものはもしかすると詳細記事を作るかもしれません。



2016年2月頃
コンデンサマイク用マイクアンプ
DSC_0012a
電源はUSBから5Vを取っています。USBの電源ラインはかなりノイズまみれでこのノイズの除去に苦労した思い出があります。結局低周波ノイズだけは取り切れずに出力に重畳してしまっています。
マイクラをボイチャしながらマルチプレイする時に重宝しましたが、現在マイクラ自体をほとんどプレイすることがなくなってしまったのでそれに伴ってこのマイクアンプの使用機会もなくなっていまいました。



2016年3月頃
汎用三相インバータをPC電源のケースに入れたもの
DSC_0077
AC100V、200V切り替え可能になっています。また外部にスイッチやボリュームを接続して始動停止、正逆転、速度調整ができるようになっています。
これはかなり使いやすく、現在でも小容量の三相誘導モータを回転させるときに重宝します。



2017年1月頃
降圧チョッパ式定電流レーザーダイオードドライバ
DSC_0541
降圧チョッパ式の定電流レーザーダイオードドライバは以前このブログで紹介しましたが、その後小型化してレーザーポインターに組み込めるようしたものを作成していました。
TPS5450を使用しており、電源は18650を2セル直列にしたものを想定しています。最大電流は2Aまで、表面実装の半固定抵抗で調整が可能です。
また、出力のONOFFはICのイネーブル機能を用いており、接点容量の小さいタクトスイッチでも問題なく使用出来ます。

DSC_0542
組み上げるとこのようになります。直径がちょうど18650と同じくらいになるようにしてあり、18650を使用する既製品のLEDライトを改造して組み込むことが出来ます。
実際にこれで1Wの445nmレーザーポインタを作成し、それ自体は現在でも存在していますが、そもそも用途がないので使用機会も無いです。



2017年4月頃
マイコンを使い始めた
DSC_0825
作成物ではないのですが、自分の中では結構大事件だったので載せます。
これまでは自分はマイコンは一切使用しない回路ばかり作っていました。それは何故かと言うと元々自分はプログラミングアレルギー持ちで、プログラムを目にすると目のかゆみやくしゃみ鼻水蕁麻疹が発生し、プログラムを書こうものならアナフィラキシーショックを起こしてしまうためプログラムに関わると命の危険さえありました。
というのは冗談ですが、それほどプログラミングが超苦手でなおかつ大嫌いでした。
自分がこれほどまでにプログラミングを嫌いになるのにはいろいろな出来事があったのですが、ここで書くようなことではないですね・・・
それほどまでに嫌っていたプログラミングを克服出来たのがこの事件になります。
克服出来たのにもいろいろな理由がありましたが、それもここで書くようなことではないかな・・・
ちなみに写真はATtiny2313Aを使ったただのカウンタです。

DSC_0925
その後PICに手を出しました。2017年5月頃です。これはPIC16F873かな?確か時計を作ってた気がします。
他にもPIC16F877を使ってPCに使用されるファンの回転速度をPIDを用いて一定に制御するとかしてました。

DSC_1048
RXマイコンにも触手を伸ばしました。2017年6月頃です。昔ながらの8bitマイコンからいきなり高性能な32bitマイコンに手を出し若干戸惑った記憶があります。写真はRX621でI2C接続のOLEDグラフィックディスプレイに数字を表示させてみています。

DSC_1736
マイコン工作ではおそらくもっとも有名なArduinoUnoも使ってみました。これは2018年2月なのでちょっと前のことです。Arduinoは確かにとっても簡単で頭に浮かんだ動作をマイコンのペリフェラルをあまり意識することなくすぐコーディング出来ます。しかしPWM出力の周波数や分解能が気になったりGPIOの操作速度が気になったりすると結局レジスタを直接叩くことになります。
写真はArdinoUNO(のパチモノ)で温度を測定しています。

DSC_1748
で、現在はSTM32マイコンを使っています。STM32マイコンはおそらく世界中で最もスタンダードな組込み用CPUとなっているCortexCPUを搭載しており、またペリフェラルも非常に豊富で柔軟性が高く、高性能なのに価格が安いということで今後はこれを使っていきたいなと思っています。
ただ欠点は、日本語の情報が少ないことですかね。あとどうやらHALドライバにバグが多いようです。まぁなんとかなります。
ちなみに写真はADCしてDMA転送し、PWM出力をしています。



2017年5月頃
ブラシレスDCモータ用ドライバ回路(試作)
DSC_2008
確かこれが一番最初に作ったブラシレスモータードライバです。これ以前はブラシレスモータを回すのは何やらすごい難しいらしいという印象を持っており、ブラシレスモータを回すのに一種の憧れみたいなものがありました。しかし実際のところはホールセンサによってロータ磁界角度を検出する方法を用いて単純にモータを回すだけなら結構簡単にできるんですよね。
これはLB11620Tという専用のドライバICを使っています。



2017年8月頃
ブラシレスDCモータ用制御回路基板
DSC_1386
ブラシレスモータをもっと簡単に回せるように、また汎用性を持たせるためにドライバICと周辺回路をプリント基板に起こしたものです。ICはLB11697Vです。この回路にゲートドライバ回路と三相ブリッジ回路を追加するだけでブラシレスモータを回せるようになります。

DSC_1174
例えばこのような感じです。これはDC24Vくらいのモータを想定したパワー回路を接続しています。

DSC_2020
これは制御回路基板に汎用インバータのパワー回路部分を接続し、200Vの大型のブラシレスモータを回せるようにしたものです。写真のモータは外見がインダクションモータと同じですが中身はブラシレスモータです。
こんな感じで使用するモータに合わせてパワー回路部分を自由に設計することが出来ます。



2017年8月頃
15V4出力絶縁DCDCコンバータ
DSC_2015
UC3843を使用した絶縁コンバータです。
三相ブリッジのゲートドライバに電源を供給するために作成しました。一応1出力500mAは取れる設計ですが、出力の整流ダイオードにVfが1Vもあるダイオードを使ってしまったためにあまり効率はよろしくありません。
トランスの巻線には三層絶縁電線を使用しています。



2017年10月頃
282V出力アクティブPFC回路
DSC_2017
FAN6961を使用した電流臨界型力率改善回路です。出力電圧はDC282Vで確か350Wくらいで設計したと思います。
三相200Vで動作する機器をAC100Vで使用するために作成しました。




2018年1月頃
電池6V入力を想定した12V4A出力昇圧DCDCコンバータ回路
DSC_1681
NJM2360AD(MC34063互換)を使用した昇圧DCDCコンバータです。
実際に電池を電源にした時に最大負荷が取れるのかはさておき、設計上は12V4Aの出力が可能です。
効率はほとんどの負荷領域で85%以上、高いところでは90%くらいで割と優秀です。
負荷状況にもよりますが、一度昇圧を開始すると入力電圧1.2Vくらいまで下がっても出力電圧12Vを維持出来ます。



2018年2月頃
50WLED用12V入力昇圧定電流ドライバ回路
DSC_1715
UC3843を使用した昇圧タイプの50WLEDドライバ回路です。
外部からPWM信号を入力することでLEDの輝度を調整可能で、出力オープン時の過電圧保護回路も搭載しています。



2018年3月頃
高機能LEDチェッカー
DSC_1837
せっかくArduinoを買ったのだからなにか作って形にしたいということで出来上がったのがこれです。
出力電流を分解能1mAで最大60mAまで設定でき、LEDの順方向電流と順方向降下電圧を表示させることが出来ます。また、同時に設定した電源電圧で設定した電流を流すための抵抗値を計算して表示しています。抵抗値の表示を有効数字2桁でmΩ、Ω、kΩ、MΩ表記可能なのが小さいこだわりです。
また出力オープン時の過電圧保護と過電流保護機能も搭載しており、それぞれ設定可能になっています。

DSC_2024
定電流制御部分はArduinoではなくOPアンプで別に回路を組んでいます。Arduinoは遅いのでArduinoで定電流制御させようとすると多分安定動作しないと思います。

DSC_1775
電流精度もそこそこです。




現在作成中
HUB75フルカラードットマトリクスLED用SPIインターフェース
DSC_2029
作成といっても、ハードウェア的な要素はほぼなく殆どがプログラムの作成となっています。
HUB75というフルカラードットマトリクスLEDを制御するための規格?があるのですが、これは単純なシフトレジスタなため表示させ続けるためには常にデータを送信し続けなければならず、また階調表現も出来ないためこれを制御するのは結構厄介です。
そこでSPI接続のグラフィックディスプレイのように簡単に制御できるようにしようというのが目的です。
今の所、4096色表現可能で90FPSくらい出せています。FPSが多少犠牲になりますがスクロール表示も可能です。
実際にはFPSは60固定にし、輝度を調整できるようにする必要があります。
ドットマトリクスLED側に使っているマイコンはSTM32F103C8T6です。ラズパイでHUB75を制御している例は結構よく見ますが、秋月で一番安いZero WHでも2160円もします。リソースはマイコンに比べると圧倒的ですがやはりこの値段でドットマトリクスLED専用に組み込むのはちょっと勿体無いですよね。そこでもっと安いSTM32F103C8T6でも出来ないかといろいろやっているというわけです。
STM32F103C8T6が載っているBluePillなどと呼ばれているマイコンボードはAmazonでは1個500円程度、Aliexpressでは1個200円程度で販売されており他の用途に流用することなく基板に直接はんだ付けするような使い方でも惜しくないほど安いです。
SPI送信側のマイコンは何でも良いのですが、写真ではSTM32F401REが載ったnucleoボードを使用しています。



最後に今後作りたいもの(あくまで予定)

オーディオスペクトラムアナライザ
STM32マイコンで音声信号をAD変換し、CMSIS-DSPを使ってFFTしてドットマトリクスLEDに表示させる
ドットマトリクスLEDのSPIインターフェース作ってるのはこのためです。

ブラシレスモータのセンサレスFOC
STから最近出たSTM32 PMSM FOC Software Development Kitを使ってブラシレスモータのセンサレスFOC(磁界方向制御)をする
面白そう(小並感)
そもそもブラシレスモータというのは回転子の永久磁石による磁界方向と固定子のコイルによる合成磁界方向が直角に交わっている時に最大のトルクを発生しますが、ホールセンサで固定子の磁極を120度おきに検出してコイル電流を切り替えていたのではどうしても回転子の磁界方向と固定子の合成磁界方向が直角ではない期間が発生します。そのため、あまり効率がよろしくない(超適当(よく分かっていない))のですが、回転子の磁界をもっと細かく検出し、固定子の合成磁界が回転子磁界と常に直角になるように制御するのがFOCです。(というのが自分の理解ですが間違ってるかもしれないです)
回転子の磁界方向を細かく検出する方法ですが、エンコーダを使用するとコストがかかるためモータに流れる電流を検出し回転子の磁界方向を推定するのが今のトレンドのようです。
自分にはさっぱり分からないですね・・・
というのが正直な感想ですが、STmicroが1ヶ月ちょっと前にSTM32 PMSM FOC Software Development Kitなどというものを発表しました。
モータ制御の設計を迅速化・簡略化する新しいSTM32ソフトウェア開発キットを発表
これを使って環境を構築し、パソコンからポチポチするだけで簡単にブラシレスモータのセンサレスFOCができるようです。
これはぜひとも試してみたいというわけです。

まぁあくまで予定ですけどね。

wata_net at 23:21コメント(0) この記事をクリップ!

2018年02月17日

ディスクリートで組むステッピングモータ定電流ドライバ回路

ステッピングモータのドライバ回路でググると、モータの巻線をトランジスタもしくはMOSFETで単純にマイコンの信号によってONOFFするだけの回路がほとんどのようです。
こういったステッピングモータの駆動方法を定電圧駆動と言います。
ステッピングモータは一般的によく知られているとおり、高速域ではトルクが減少し、脱調という現象が起こってほとんど回転しなくなります。
なぜならば、ステッピングモータの巻線には同然インダクタンス成分が存在し、これのお陰で電圧が一定の場合は電流上昇速度も一定なため、モータの回転数をあげようとしてパルス幅が短くなると電流がほとんど流れなくなり、結果的にトルクが減少するのです。
そこで、ステッピングモータにかなり高い電圧を掛け電流上昇を速くしつつ、過電流が流れないように電流を一定保つ制御方法が存在します。
これを定電流駆動といいます。定電流駆動をすることによって高速域のトルクがだいぶ改善できるらしいです。
また、低速域もしくは停止時も常に電流を一定に保つため、定電圧駆動と比較して消費電流が少なくなるようです。

適当にユニポーラのステッピングモータ定電流ドライバ回路を設計してLTSpiceでシミュレーションしてみました。
以下回路
1

以下シミュレーション波形
2
試しにハーフステップのパターンを入力してみました。

感想
素直に専用のドライバIC使ったほうが楽だし便利。
定電流駆動でマイクロステップ対応でセンサレス脱調検出できてI2CとかSPIとかで通信できるやつ。

wata_net at 14:18コメント(0) この記事をクリップ!

2017年10月14日

ACサーボモータを回してみる

さて、ACサーボモータとは何なんでしょうね?
普通、電子工作をしている人にとって、一般的にサーボモータと言われて思い浮かべるのはこっちの方ではないでしょうか?
DSC_1381
これはブラシ付きDCモータと角度検出用のボリュームとモータドライバ回路が一体型になっており、PWM信号を入力することで、PWMのパルス幅に応じた角度に回転してくれるというお手軽なものです。
もっと高性能で高価なものでは、コマンド方式サーボというシリアル通信で制御できるものとか、ブラシレスサーボという、モータにブラシレスDCモータを使ってたりするものがあります。

しかし、今回回すACサーボモータはこれらよりもでかい、主に産業用途で使われるものです。
DSC_1383

ACサーボモータというのは、構造的にはDCブラシレスモータと角度検出器(エンコーダ)とサーボアンプから成っています(電磁ブレーキがついているものもあります)。
DSC_1384

つまり、モータ自体はDCブラシレスモータなので、回すだけならDCブラシレスと同じように行けるのでは?!と、思い立ちました。
しかし、色々調べてみるとそう簡単には行かないようです。
ブラシレスモータはいわゆる同期電動機なので、巻線の通電切り替えタイミングをロータの磁極位置に同期させなければスムーズに回転しません。で、この磁極位置を検出する方法には幾つかあり、ホールセンサを用いる方法(センサ式)、未通電のコイルの起電力を測定する方法(センサレス、Back-EMF方式)、コイルの電流から磁極位置を推定する方法(センサレス、フィールドオリエンテッド制御)などがあります。
ACサーボモータの場合、光学式もしくは磁気式エンコーダがついており、これを使って磁極位置を検出しています。センサレス方式で駆動するならばエンコーダがあろうとなかろうと関係無いのですが、センサレスは難しいのでできればエンコーダの信号を使って磁極位置を検出したいところです。
ところが最近のACサーボモータのエンコーダは、出力信号がRS422/RS485のシリアル通信になっており、自分で通信内容を解析しないことにはどうにもなりそうにありません。(画像は三菱のHC-KFSシリーズのACサーボモータについているエンコーダのコネクタのピンアサインと信号名)
image03
また、最近のエンコーダは、光学式に限定するとアブソリュート式とインクリメンタル式を組み合わせたような仕組みになっているようです。つまりどういうことかというと、光の透過量が連続的に変化するスリットを使って、光量から絶対位置を検出しているようなのですが、精度と分解能を向上させるために1回転あたりの光の透過量が変化する周期が異なるスリットを幾つか組み合わせているようなのです。(画像は三菱のHC-KFSシリーズのACサーボモータについているエンコーダに使われていた光学スリット 分解能は1回転あたり131072パルス)
DSC_1385
そして、エンコーダの絶対位置からロータの磁極位置を検出している可能性が高く、信号の通信内容がわかったところでロータの磁極位置を検出するのは難しそうです。

しかし、昔の古いACサーボモータでなおかつ、エンコーダがインクリメンタル式のものにはシリアル通信ではなく、A相B相Z相と、ロータの磁極位置信号であるU相V相W相がラインドライバ出力(ノイズ耐性を高めるため正相と逆相の信号を出力するもの)になっているものがありました。(画像は三菱のHA-FEシリーズのACサーボモータについているエンコーダのコネクタのピンアサインと信号名)
image01
よってこのタイプのACサーボモータを使えばブラシレスと同じように回すことができそうです。

磁極位置信号と三相ブリッジのゲート信号の関係はこの画像のようになります(120度通電方式)。IN1、IN2、IN3が磁極位置信号、UH、VH、WHが三相ブリッジのハイサイドのスイッチング素子のゲート信号、UL、VL、WLが三相ブリッジのローサイドのスイッチング素子のゲート信号になっています。
image04

このように割りと単純なので、別にマイコンを使って磁極位置信号から三相ブリッジのゲート信号を生成しても良かったのですが、プログラムをミスってスイッチング素子を飛ばすのが嫌だったのでLB11697Vという三相ブラシレスモータ用の専用ドライバICを使いました。
で、表面実装だったのでプリント基板も作ってしまいました。
専用ICなのでデータシートの回路図通りやれば何の問題もありませんでした。楽でいいですね。
DSC_1386

そしてこいつにつなげる三相ブリッジ回路が必要になりますが、正直自作するのが面倒だったので、今回は既製品のインバータをバラし、パワー回路部分を流用しました。
DSC_1199

こちらがパワー回路部分です。IPMの各相にフォトカプラがつながっています。ゲートドライバ用の絶縁電源も内蔵してるので、フォトカプラのLEDに電流を流してやるだけでOKです。
DSC_1200

そして、それぞれの回路をサクッと接続します。一番左のはDC282Vを作るための倍圧整流回路です。接続されているモーターは三菱電機のHA-FE13、100Wのものです。
DSC_1387

こちらが実際に回してみた動画です。モータが安川電機のUSAREM-01DN2Xに変わってますがあまり気にしないでください。


とりあえずこれでACサーボモータを単純に回すことだけはできました。
しかし、トルク制御、速度制御、位置制御ができないとサーボモータとは言え無いでしょう。
そこで、サーボモータとして使うには、エンコーダのA相B相Z相信号と、インバータから流用したパワー回路に内蔵されている電流センサの信号をマイコンに取り込んで色々制御する必要がありますが、それはもはやサーボアンプの自作ということにってしまいます。
ちなみに三菱電機のMR-J2S Aシリーズのサーボアンプの機能ブロック図はこんな感じになっています。
image05

正直なところ今の自分にはそこまでできる知識も頭脳もやる気もなかったので、普通に既製品を使いました。それがこちら、MR-J2S-40Aです。
DSC_1388

三菱のサーボアンプにはSSCNET接続タイプと、パルス列アナログ電圧入力タイプと、位置決め機能内蔵タイプなどがありますが、マイコンなどを接続して制御するにはパルス列アナログ電圧入力タイプでなければなりません。また、サーボアンプとサーボモータの対応もきちんと調べておく必要があります。さらに厄介なのが、パラメータの変更などをするセットアップソフトウェアが有料である可能性があります(大抵高い)。MR-J2S以前のサーボアンプ用のセットアップソフトウェアは無料ですが、MR-J3以降だと29000円します。

とりあえず配線してみました。モータはHC-KFS43Kという400W出力のものです。実はこのコネクタ類がまたなにげに高かったりするのですが、頑張って安いのを探しました。配線については、MR-J2S-Aの技術資料集に懇切丁寧に書いてあったりするので別にいいでしょう。
DSC_1389

本来ならば、マイコンなどからパルスを入力して回すのですが、このサーボアンプにはRS232Cでパソコンと接続してテスト運転できる機能がついているので、それを使ってみます。
image06

こんな感じで、グラフ表示もできたりします。
image11

このセットアップソフトウェア、なにげに高性能で、機械系の共振点を測定したり、シミュレーションしたりできるみたいです。
image12

実際に90度ずつテスト運転で回転させてみた時の動画がこちらです。


最後に、マイコンからACサーボモータを回してみました。
使用したマイコンはPIC16F877Aです。なんでこんな骨董品を使っているのかというと、たまたまたくさん持ってるからです。スイッチ2つで回転と停止、正転と逆転を切り替えるようにしました。単純にパルスを出したりするだけなのでプログラムをわざわざ公開するまでもないです。本当はティーチング機能とかつけてそれぞれのポイントに移動とかできれば良いのですが、まぁそれはそのうちということで。
DSC_1390

こちらが動作中の動画です。正転逆転のスイッチを連打しまくってますが、全然余裕っぽいです。天使の3Pを見ながら動画取ってたので音声が入り込んでますが、あまり気にしないでください(撮り直すのが面倒くさい)。


おまけ
ACサーボモータでひなこのーとOPを演奏してみた


wata_net at 21:21コメント(0) この記事をクリップ!

2017年08月02日

汎用部品のみで作れるハイサイドゲートドライバ回路

NチャネルのMOSFETだけでハーフブリッジやフルブリッジを構成する時、ハイサイドNchMOSFETのゲートドライブをどうしようか悩んだことはないでしょうか?
MOSFETをONにさせるためには、ゲートとソースの間に15V程度を印加する必要があるのは周知の事実であると思いますが、もしハイサイドのNchMOSFETだった場合、ソースの電位が一定ではありませんので、ソース基準の電位にできるようような何らかのゲートを駆動するための電源が必要になってくるのがわかると思います。
まぁPchMOSFETをつかえば解決できるのですが、Pchは値段が高い、Nchに比べて性能低い、品種もあんまり無い、パワー素子は1種類のみで済ませたいなどといった理由でブリッジをすべてNchで構成することは多いと思います。

ハイサイドNchMOSFETのゲートを駆動するための電源の確保方法としては主に以下のようなものがあります(というか自分が見たり考えたりした例です)。
‥澱
低周波トランスによる絶縁電源
スイッチング式絶縁電源
ぅ僖襯好肇薀鵐
ゥ船磧璽献櫂鵐

,砲弔い討蓮⇔石に実際に既製品で採用されてる例を知りません。電池だと無くなっちゃいますからね。
△發△泙蠍たことはありませんが、要するに電源トランスでゲートドライブ用の絶縁された電源を作っちゃおうということです。50/60Hzの商用電源がないとこの手は使えません。
は絶縁スイッチング電源でゲートドライブ用の電源を作ろうというものです。絶縁スイッチング電源の設計を変えれば様々な入力電源で使用することができ、おそらく最も自由度が高い方法ですが設計が厄介なのと回路がどうしても大規模になってしまいます。ちなみに工業用の汎用インバータはほとんどこの方法を採用しています。
い魯僖襯好肇薀鵐垢縫押璽閥酘闇鳩舛鯑力しその出力でスイッチング素子のゲートを直接駆動するというものです。この方法はスイッチング電源でよく見る気がします。ちなみにDRSSTCなんかで作るゲートドライブトランスがこの方法に当たります。この方法はとても簡単で良いのですが、低周波だと必然的にトランスが大きくなってしまうのと、ゲート駆動波形のデューティ比が大きいとパルストランスのコアが偏磁するため、使用可能なデューティ比に制限があるのが欠点です。
イ魯灰鵐妊鵐気縫押璽閥酘依僂療轍戮鮹澆┐討き、スイッチング素子をONするときはコンデンサに蓄えられた電荷を使うというものです。お手軽な専用ICがたくさんあり、デューティ比の制限もあまりないということでモータドライバでよく使うことがあります。ただし、この方法ではハイサイド、ローサイド間のゲートドライバ回路を絶縁することはできません。あとおそらく、ハイサイドのソースの電位が0付近になる瞬間が必ず必要になると思います。

もし、DRSSTCなどのデューティ比が50%より大きくならないような用途ならい諒法で良いでしょう。
しかし、モータドライバのようなデューティ比が50%を超える用途であればそれ以外の方法を取らざるを得ません。
もちろん,狼儔爾任垢、△眈ν囘展擦必要になるので採用はしにくいでしょう。はおそらくどんな状況にも対応できる最強の方法ですが、絶縁DCDCコンバータモジュールは1個あたりが非常に高価ですし、かと言ってスイッチング式のACアダプタを使うのでは結局△畔僂錣蠅△蠅泙擦鵝自作するのも(UC3843などを使えばそんなに難しくはないと思いますが)スイッチングトランスを手巻きする必要がありますし、お手軽とは程遠いと思います。

そこで最後に残るのがイ離船磧璽献櫂鵐廚箸いΔ錣韻任后
この方法だと、IR社などがIR2110などの専用ICを出しており、それを使えばとても簡単にハイサイドスイッチング素子を駆動することができます。またこれらのIC以外にもTLP250などのフォトカプラゲートドライバICを使ってチャージポンプを構成しても良いと思います。
しかし、どっちにしろ専用ICが必要になります。ハーフブリッジゲートドライバICもフォトカプラゲートドライバICも大抵そこらに転がってるような部品ではなく、買ってこなければ手に入らないと思います。
そこで、どこにでも転がってるような部品のみで作れるハーフブリッジゲートドライバ回路を紹介します。

で、ようやくここからが本題なのですが、まず回路です。
image01
ご覧のように、抵抗、コンデンサ、ダイオード、トランジスタといった基本的な部品のみで構成されております。トランジスタの型番があれですが2SC1815と2SA1015に脳内変換してください。抵抗やコンデンサの値はある程度近ければ適当でも動くのでお手持ちのもので使えます。
この回路は主にレベルシフタとプッシュプルで構成されています。
V1はハーフブリッジの電源です。D1とQ6の耐圧でV1の電圧が制限されます。
V2はゲート駆動用の電源で、MOSFETが十分ONになる電圧にします。通常は12〜18Vです。
V3は入力信号の電圧レベルに合わせてください。例えば3.3V系ならばV3は3.3Vにします。
V4とV5は信号源です。
H_INとL_INが入力信号を表します。この回路ではどちらも正論理です。負論理にする場合は”トランジスタ レベルシフト”などで調べれればすぐにわかると思います(回路を別に書くのがめんどくさい)。
なお注意点
スイッチング周波数はあまり早くできません。100kHzくらいが限界のようでした。
またゲート電荷が大きいMOSFETは駆動できません。スイッチング周波数にもよりますが100kHzの場合は70nC程度にしておいたほうが良さそうです。
もしかするとD1とQ6を高耐圧のものに変えれば高電圧にも対応できるかもしれませんが、怖くてやりたくないです。
電源投入直後はチャージポンプ用のコンデンサの充電が間に合わず正常にスイッチングしない場合がもしかしたらあるかもしれません。
とまぁそんなところですか、あと問題があるとすればこの回路でトランジスタを6個も使うところですかね。ユニバーサル基板だとちょっと配線がめんどくさい。

シミュレーション波形がこちらになります。
image02
トランジスタの遅延のおかげでデッドタイムが挿入されています。

この回路とほぼ同じ回路でブラシレスモータ用の三相ブリッジを組んでみました。
DSC_1180
PWM周波数20kHz程度であれば特に問題なく動作します。抵抗値、すごい適当ですが動きます。

追記
もしMOSFETに大電流が流れたり、配線抵抗が大きい場合、電圧降下が大きくなりチャージポンプのコンデンサが充電されず、ハイサイドのMOSFETのゲートが十分ONされずに損失が大きくなり破壊する可能性があります。
参考までに損失を出した時のシミュレーション波形を載せておきます。赤色の波形がハイサイドの損失、青色がローサイドの損失波形、緑色がハイサイドの電流、ピンク色がローサイドの電流です。
1
あと色々シミュレーションしてみましたが、この回路ではやはり高電圧では用いるべきではないようです。MOSFETのゲート駆動能力が微妙なので間違いなくMOSFETがぶち壊れます。シミュレーションだと電源282V、負荷電流28AくらいでMOSFETのピーク損失が1kWを超えてました。

なお、素人が適当に書いてるので間違いがあれば指摘してくださればありがたいです。

wata_net at 01:19コメント(0) この記事をクリップ!
プロフィール

wata

Recent Comments
記事検索
アクセスカウンター
  • 今日:
  • 昨日:
  • 累計:

QRコード
QRコード
  • ライブドアブログ