ステッピングモーターの実験(その2)

はじめに

実験(その2)では、PICマイコンとモータードライバーICを使って、ステッピングモーターを動かしてみます。マイコンから駆動パルスを付与するだけで正確に回転します。

内容

ステッピングモーターは、2相バイポーラ型 ST-42BYH1004(MERCURY MOTOR製)を使いました。下は、同モーターの外観と仕様です。

モータードライバーには、秋月電子通商から販売されている DRV8835(Texas Instruments社)モジュールを使いました。このICは、Hブリッジを2回路有し、1回路あたり1.5Aのドライブ能力があります。2相ステッピングモーターでは、1.5A/相の電流を流すことができます。下は、ICの絶対最大定格と推奨条件およびブロック・ダイヤグラムです。なお、ICは熱を持つため、放熱に配慮します。

方法

DRV8835はモード設定により、IN/INとPHASE/ENABLEの2種類の信号付与方式が選択できます。ここでは、PHASE/ENABLE(MODEピン:Hi)を使用します。下表は、PHASE/ENABLEのモーター動作に対する入出力一覧(x:A,B)です。

結果

ブレッドボードに下図の回路を組んで実験しました。回転状態を見やすくするため、モーターの軸にハブを付けています。

下は、ソースコードのメインループ部です。MCC自動生成関数を使用しています。
CW1/2/12およびCCW1/2/12は、それぞれ1相/2相/1-2相のCWとCCW回転の励磁関数です。前出のPHASE/ENABLE表を基に、モーターの xENABLE,xPHASEピンに励磁パターンのパルスを付与します。スイッチSW1/2がONの間、モーターはCW/CCW回転します。
Delay_Waitは、PIC内蔵ADCモジュールから電源電圧をリファレンスにポテンショメータでAD変換した値をループさせる関数で、パルス速度を調整します。添付画像は、同一AD変換値における各励磁関数のパルス波形です。

本実験の動画はこちら。2相励磁でパルス速度:10Hzと230Hzの各CW/CCW回転の様子です。低パルス速度では、注意深く見ると細かなステップで回転していることが分かります。回転軸を触った感じでは、指先では止められないくらい高トルクです。(無理に止めるのは危ないのでやめましょう) 動画はありませんが、1相,2相,1-2相励磁とも見た目には回転の様子に違いはありませんでした。(負荷をかければ違うかもしれません) また、パルス速度を230Hz以上にしていくと回転が不安定になり、ついには脱調して回らなくなりました。

まとめ

ステッピングモーターは、駆動パルスを付与するだけで高トルク且つ正確に回転することが産業機器等のアクチュエータに多用される所以です。一方のホビー用途は思い浮かびませんが、ユニークな使い道が見つかったら紹介したいと思います。

– 以上 –