最終更新日
記事公開日

Arduinoで12Vステッピングモーターを動かす (SM-42BYG011/DRV8835)

Arduinoで12V仕様のステッピングモーターの回転を制御するためのサンプルコードです。

※5V仕様のステッピングモーターを動かしたときの記事はコチラ

スイッチを押している間、LEDが点灯し、12Vのステッピングモーターが回転

スイッチを押している間、LEDが点灯し、モーターが回転し続けます。

使用したもの

バイポーラ型ステッピングモーター「SM-42BYG011」の仕様
モータードライバー「DRV8835」の仕様
Arduino UNO R3 (CH340版)
鉛バッテリー LONG WP1.2-12

回路図・配線

12Vのステッピングモーターを動かすための回路図

12V仕様のステッピングモーターなので、電源は12Vの鉛バッテリーから給電。

Arudinoの電源は、USBケーブルを通ってパソコンから給電しています。

12Vステッピングモーターの動作配線写真(全体)
12Vステッピングモーターの動作配線写真(斜めアングル)
12Vステッピングモーターの動作配線写真(下アングル)

プログラム(Arduino言語)

Arduino標準ライブラリ『Stepper』を使用しています。

#include <Stepper.h>

// 1回転ステップ数(SM-42BYG011の場合)
int around_step = 200;

int sw_pin = 3;   // スイッチの入力Pin
int led_pin = 7;  // LEDの出力Pin
volatile int sw;  // SWの状態

// ボタン一回を押して進むステップ数
// 正転:10、反転:-10
int step = 10;

// 回転スピード(10:遅い、50:早い)
int speed =50;   

void sw_on(void);

// stepper インスタンス生成
Stepper stepper(around_step, 8,9,10,11);

void setup() {

  pinMode(sw_pin,INPUT);
  pinMode(led_pin,OUTPUT);

  // ボタンの変化で割り込み処理開始
  attachInterrupt(1,sw_on, CHANGE);

}

void loop() {

  // スイッチを長押し中かどうか
  sw = digitalRead(sw_pin);

  // スイッチがONのときのみモーターを回転
  if(sw == 1) {

    //ステップ数(正転)
    stepper.step(step);

    // 回転スピード
    stepper.setSpeed(speed);   

  }

}

// スイッチが押されたときの割り込み処理
void sw_on(void) {

  if(sw == 0) {
    sw = 1;
    digitalWrite(led_pin,HIGH);
  }
   else {
    digitalWrite(led_pin,LOW);
  }

}

技術解説

「モータードライバ(DRV8835)のモード」や「ステッピングモーターの励磁方式」など、詳しい解説は、5V仕様のステッピングモーターを動かしたときの記事をご覧ください↓

Arduinoで5Vステッピングモーターを動かす (ST-42BYH1004/DRV8835)

発熱について

47度まで発熱したステッピングモーターを非接触型温度計で計測

ステッピングモーターは、停止中でも今のポジションを維持するためのトルクが働いています。

よって、バッテリーを繋いだまま10分くらい経つと、ステッピングモーターが発熱し、手では触れないくらい熱くなります。

一応、100度くらいまでは大丈夫らしいです。

12V仕様のステッピングモーターを選んだ理由

以前、5V仕様のステッピングモーターを動かしてみたとき、トルク力が思ってる以上にの弱かったんです。

そこで、「12V仕様のステッピングモーターなら、トルク力アップが見込めるのでは?」との思いで、今回試してみました。

結果的には、5Vも12Vも大して変わりませんでした。

素直に、スペック表を見て、静止トルクの強いステッピングモーターを選べば良かったかもしれません。

しかし、トルクの強いモーターは、一気に値段が高くなるんですよね・・・

秋月電子で販売されているバイポーラ型ステッピングモーターの規格比較

秋月電子で販売されているバイポーラ型ステッピングモーター一覧
  1. SM-42BYG011(12V)1,380円 → 静止トルク:2.3kgf・cm
  2. ST-42BYH1004(5V)1,900円 → 静止トルク:4.4kgf・cm
  3. 42SHD4002-24B(12V)1,100円 → 静止トルク:3.0kgf・cm
  4. ST-57BYG076(12V)4,000円 → 静止トルク:13kgf・cm
  5. 42SHD4404-24(3.4V)1,650円 → 静止トルク:5.2kgf・cm
  6. ST-57BYG056-1004(3.3V)2,780円 → 静止トルク:12kgf・cm
この記事のURLをコピー

メールアドレスは公開されませんのでご安心ください。また、* が付いている欄は必須項目となります。

内容に問題なければ、下記の「コメントを送信する」ボタンを押してください。

関連情報

運営者プロフィール
コダマ

職業はIT系フリーランス。過去、電子配線業務の経験が10年ある為、はんだづけも得意です。宮崎県在住、30代・2児の父親。

カテゴリー