【DRV8320HでBLDCを回したい】第2回:Teensy4.0を使用した強制転流(120度矩形波駆動)
はじめに
第1回は使用するBLDCドライバであるDRV8320Hのデータシートを読んで、簡単に動作確認を行いました。
第2回ではDRV8320HとTeensy4.0を使用して強制転流でモータを回すことができたのでそれについて書きます。
強制転流(120度矩形波駆動)
今回はフィードバックなどを行わず、とりあえず120度通電することでモータを回してみます。使用したモータは下記になります。
以下のサイトが強制転流を行うにあたって参考になった文献です。
強制転流(120度矩形波駆動)でモータを回場合、とりあえず下記の順番でインバータ回路を駆動させれば良さそうでした。
120度通電の際は下記のようにインバータのどこをPWM制御するかで種類があるようですが、自分は赤枠の手法で行いました。
プログラム
Teensy4.0で動かしたプログラムを下記に示します。電源電圧は7.4Vで動作させました。今回使用したモータだとPWMのDuty比をかなり小さくしないと過電流でモータドライバがFaultに落ちます。コメントアウトの形跡を見てもらうと分かりますが、最初は常にDuty100%で動かそうとしていましたが、過電流で動かなかったです。ここでしばらく嵌ってました。
Teensy4.0とDRV8320HでBLDCの強制転流を行うプログラム
強制転流(120度矩形波駆動)の様子
下記に強制転流の様子を示します。ゼロクロス検出とかやらずに転流しているので低速回転でもうるさいです。
強制転流時の波形を下記に示します。
今回はハイサイド側のFETをPWM駆動で、ローサイド側は普通にHIGH、LOW駆動となっています。
気になる点
TOSHIBAの資料と自分の強制転流波形の誘起電圧の上りと下りが逆になっているのが気になります。この波形でゼロクロス検出してよいのか?強制転流すると位相が反転するということ?この辺はまだ良くわからないです。
おわりに
今回はBLDCモータを強制転流(120度矩形波駆動)で回しました。今までもここまでは出来てたので問題はここからです。
次はBEMFを検出してゼロクロス検出したタイミングで転流させることに挑戦したいですが、PWM駆動で相電圧がパルス状になっているのでどうすればよいのやら...。もしアイデアが浮かばなかったらこの連載はここで終わると思う...。
BEMF検出一応できた?↓↓↓