ステッピングモーター(SPG20-332)をArduinoで動かす

秋月で売ってたヤツ(SPG20-332 24対1ユニポーラステッピングモーター)を動かしてみた。
※SPG20-1332が互換機として今はあるらしい。
http://akizukidenshi.com/download/ds/copal/SPG20_series.pdf


ピンアサイ
※V+がGNDでも動いてしまう
※V+は直繋ぎのときは5V、実働だと9-12Vっぽい。

X (白) : 1
Y (赤) : 2
V+(黒) : 3
V+(青) : 4
X-(黄) : 5
Y-(緑) : 6


コードは下記などを参考に。
http://fuzuki.blogspot.jp/2011/05/arduino.html
http://d.hatena.ne.jp/asudofu/20100806/1281078761

int pin[4] = {4,5,6,7};
//int pin[4] = {7,6,5,4};

void setup() {
  Serial.begin(19200);
  
  for(int i=0;i < 4;i++){
    pinMode(pin[i], OUTPUT);
  }
}

// 128
boolean state = true;
int cnt = 0;
void loop() {
  if (state == true) {
    int _pin[4] = {4,5,6,7};
    for(int i=0;i<4;i++){
      digitalWrite(_pin[i], HIGH);
      delay(20);
      digitalWrite(_pin[i], LOW);
      delay(20);
    }
    
    if (++cnt > 128) {
      state = false;
    }
  }
  else if (state == false) {
    int _pin[4] = {7,6,5,4};
    for(int i=0;i<4;i++){
      digitalWrite(_pin[i], HIGH);
      delay(20);
      digitalWrite(_pin[i], LOW);
      delay(20);
    }
    
    if (--cnt <= 0) {
      state = true;
    }
  }
}


ここでステッピングモータの使い方勉強できるらしい(未読)。
http://homepage1.nifty.com/rikiya/software/114stepping1.htm


※本当は下記のようにドライバIC等使ってちゃんとしたほうがいい。
http://eleclog.quitsq.com/2012/06/mp4401-spg20-332.html
http://akizukidenshi.com/catalog/g/gI-00419/


感想:割とパワフル