Arduinoでスティッピングモーターを制御する


Arduinoを用いて、スティッピングモーターを制御するのに苦戦したのでメモしておきます。ドライバは、秋月のL6470使用 スティッピングモータードライブキットを使用しています。

Arduinoとは?

Arduinoは、オープンソースのハードウェアです。 Arduino IDEというプログラムの開発環境も無償で提供されており、手軽にマイコンデビューを果たすことができます。 1個3000円という低価格帯も大変魅力的です。

つくるもの

今回は、Arduino Unoを用いて、スティッピングモーターを制御していきたいと思います。

Arduino LeonardoといったUno以外のArduinoを用いる際は配線に注意してください。
対応するSPI通信のピンが異なる場合があります。 詳しくはこちら。

 

電源に繋ぐだけで作動するDCモーターとは異なり、スティッピングモーターを作動させるためには、パルス電力を供給(PWM駆動方式)する必要があります。

 

「Arduinoで直接モーターにパルス電力を供給して制御するのは難しい」とのことでしたので、秋月のL6470使用 ステッピングモータードライブキット」をドライバとして使用することとしました。

道具

 

ドライブキットは、次のようにハンダ付けしておきます。

回路図

回路図です。

回路図はバイポーラ型のスティッピングモーターを使用していますが、ユニポーラ型のモーターを代用することも可能です。

kairozu

マイコン接続端子対応関係

Arduino     –      L6470
10: SS        –      8: CS
11: MOSI   –      7: SDI
12: MISO   –      5: SDO
13: SCK     –      6: SCK
4: 5V          –      4: EXT
GND          –       3: GND

ロジック電源としてArduinoから5V電圧を供給しているので、電源設定ジャンパを以下のような感じで3、4番ピンをを埋めておきましょう。

忘れがちなので見落とさないように!!

コーディング

プログラムは「北の国から電子工作(仮)」大先生のコードを使わせていただきました。

こちらから、スケッチをダウンロードしてそのまま使わせていただきます。

動かしてみる

電源を入れて、ArduinoをPCに接続すれば動くはずです。

動かない時は、電源周りを疑った方が良さそうです。

自分の場合は、Arduino Uno とArduino LeonardでSPI通信が可能なピンの配置が異なっていることに気づかずUnoの配線の配置でLeonardを動かそうとしてしまったばかりにはまってしまいました。

細かい制御は、作成していただいたスケッチをみながら微調整しいきたいと思います。

それでは、今回はこの辺りで!!良いArduinoライフを!

comments powered by Disqus