思いつきdeものづくり

3Dプリンターで新しいものづくりを。素人が工作に奮闘する製作記です。

ステッピングモーター制御について【A4988 & Arduino】

 

ども、オカラボです。今回はステッピングモーターの制御について話そうかな、と。

まずはステッピングモーターについての説明ですが、wikipediaではこうなっています。

 

ステッピングモーター(Stepper motor)は、パルス電力に同期して動作する同期電動機である。したがってパルスモーター(Pulse motor)とも言われる。簡単な回路構成で、正確な位置決め制御を実現できるので、装置の位置決めを行なう場合などによく使われる。

https://ja.wikipedia.org/wiki/ステッピングモーター より

 

ですが、一般的によく思い浮かべられるモーターはDCモーターです。

ちなみにDCはDirect Current の略。いわゆる直流ですね。(ACはAlternate Current)

 

f:id:okayamalabo:20181117234202j:plain

RS380(DCモーター)

 

ではDCモーターとステッピングモーターの違いは何か。

それは、電池をつなぐだけで回るかどうかです。

ざっくりと言ってしまいましたが、ぶっちゃけこれです。(工学系の人に怒られそう・・・)

また、角度をどこを基準にして決めるかの違いで、サーボモータというものもあります。

ステッピングモーター ⇒ 今の位置から○○度回れ!

サーボモーター ⇒ 基準点から○○度回れ!

 

制御プログラムは以下の記事で。

 

okayamalabo.hatenablog.com

 

 

f:id:okayamalabo:20181205222501j:plain

9gサーボ

 

ところで、DCモーターは乾電池をつなぐだけで回りますよね?

ですがステッピングモーターは電源を繋いでも回りません。(厳密にはほんの少し回るけど)

回すには、パルス制御が必要です。これについてはさんざん他のサイトで説明されているので省略。

今回は「回すにはどうすればよいか」というのを説明しますので、詳しい原理云々は触れません。

 

・必要なもの

 

ステッピングモーター

 

 

 

12/13現在売り切れてますね・・・同じスペックで一番安いのはこれでしょうか?

秋月電商も安いですから、気になる方はそちらをぜひ。

 

 

 

 

 

f:id:okayamalabo:20181205222507j:plain

12V 0.4A/相のものです

 

・A4988or互換品

 

 

f:id:okayamalabo:20181205222638j:plain

互換品のHR4988。でもボードにはA4988の文字が・・・?

 

・電源

 

 

f:id:okayamalabo:20181205222528j:plain

12V-2Aの怪しい電源。いつ買ったのかわかりません。

 

・接続と設定

 

まずは制御ボードのArduinoとドライバーであるA4988を接続。繋ぎ方は以下。

 

SLLEPとRESET ⇒ 両方のピン同士をメス‐メスのジャンパワイヤなどで接続。

VDD ⇒ Arduino5Vピンへ

GND ⇒ ArduinoのGNDピンへ

1B.1A.2B.2A ⇒ ステッピングモーターと接続

VMOT ⇒ モーター用電源のプラスと接続

GND(VMOTの隣) ⇒ モーター用電源のマイナスと接続

DIRECTION ⇒ Arduinoの任意のピンへ(後のプログラム次第で決まる)

STEP ⇒ Arduinoの任意のピンへ(後のプログラム次第で決まる)

 

※VMOTとGNDをArduinoのピンに接続したら最悪壊れます。

過電流でArduinoが壊れるので絶対にやっちゃだめですよ!

 

これで接続は完了です。まぁボードの表記を見れば大体わかるかと。

で、次にボードにある可変抵抗器を回して電流制限を設定します。

まずはテスターで可変抵抗器-GND間の電圧を測りましょう。

オススメはオーム電機のやつ。安くて最低限の機能があるので私はこれです。

 

A4988を使った際にモーターに流れる電流は以下の式で表されます。

電流[A]=可変抵抗器-GND間の電圧[V]×2.5

測定値が0.10Vなら0.25Aまで流れることができるってことですね。

ここでの電流というのは最大流れることのできる電流のことです。少し余裕を見て設定しておきましょう。

 

まぁ、ぶっちゃけやらなくても動きますけどね。

私も最初はこのことを知らなかったので何もしていませんでしたが、普通に動きました。

ですが安全のためにもしておきましょう。ドライバやArduinoも安くないし。

 

と、今回はここまで。次回はプログラムの説明をして、実際に動かしてみましょう。

 

 ※ステッピングモーターに関してですが、もし購入するときは12Vのものがお勧めです。

今回のA4988はとてもメジャーなドライバーなのですが、最大電流が2Aまでなのです。

5Vのものは電流値が2A以上なんてことも多いので、A4988ではドライブ(駆動)できません。

 

その場合は自分でFETなどを使って回路を組むか、数千円もするドライバーを購入する必要があります。

 

 

okayamalabo.hatenablog.com

 つづき