ArduinoUNO+RepRapA4988でバイポーラステッピングモータを動かす
いまだに重い腰を上げてArduinoのスケッチ例を試してArduinoの使い方を学んでみる。今回は昔買ったバイポーラステッピングモータドライバが床に転がっているのを見つけたので、Arduinoでステッピングモータを動かしてみる。
ステッピングモータとは
まず、ステッピングモータとは何かというと、モータ端にパルスを送った分だけ回転するモータのこと。例えば1パルス1.8 deg. 動くステッピングモータに100パルス送ると180 deg. モータ軸が回転する。ちなみに、パルスではなく電圧をかけ続けても回転しない上に回転しないように踏ん張る力が増す。
このような位置決めしやすい特性があるのでフィードフォワード制御で使うことができ、プリンターやDVDドライブ、廉価なCNC、3Dプリンター等の幅広い用途に使われている。
バイポーラとユニポーラの違い
ステッピングモータにはバイポーラステッピングモータとユニポーラステッピングモータの2種類がある。この2種類で使うステッピングモータドライバが違うので注意が必要。今回は詳しく説明しないが、簡単に違いを述べる。
- 見た目、ユニポーラから出ているモータ配線は6本、バイポーラから出ている配線は4本。
- 同サイズでトルク性能はバイポーラが優位。
- コントローラはユニポーラの方が製作が容易(ステッピングモータドライバを使うなら関係ない)
- ユニポーラはコイルに無駄が多い
ステッピングモータドライバ
今回使うステッピングモータドライバはAmazonで安く売っていたもの。pololuのステッピングモータドライバのコピー品だと思われる。使用されている、ICはA4988 で軽く諸元を下に示す。
- 動作電圧範囲 8~35 V
- 最大出力電流 2 A
- ON抵抗 320 mΩ
- バイポーラステッピングモータ用
ArduinoとA4988の配線
Arduinoでステッピングモータを動かすスケッチ
下に今回作成したスケッチを示す。
900msごとに回転方向が変わるスケッチでdelayで無理やりパルスを生成しているため、効率が悪いがまずステッピングモータを動かしてみるという用のスケッチ。そのため、今後の記事でもっと実用的なスケッチを上げる。
動かしてみた
実際に動かしてみた動画を下に示す。
8周遅れのArduino (ArduinoUNO + A4988でステッピングモータを動かす)