LoginSignup
3
1

More than 3 years have passed since last update.

Arduinoでステッピングモーター操作 

Last updated at Posted at 2019-10-26

Arduinoでステッピングモーターを動かす際のコードです。
コードとモーターの配線は以下のリンクを参考にしました。
https://makers.jpn.org/2018/06/30/post-926/

関数stepGo(回転方向,回転数,回転速度)にそれぞれ引数を入力し動かします。
引数HLは回転方向をbool型で指定して下さい。
引数revは回転数、です。

1.8度のステッピングモーターはrevが200で1回転するので、変数stepRotateを何倍するかで
回転数を指定できるようにしてあります。

const int ENEBLE = 6;
const int STEP = 5;
const int DIR = 4;

int stepRotate = 200; //1回転するステップ数

void setup() {
  pinMode(ENEBLE,OUTPUT); // Enable
  pinMode(STEP,OUTPUT); // Step
  pinMode(DIR,OUTPUT); // Dir
  digitalWrite(ENEBLE,LOW); // Set Enable low → Low状態でEnable

}

void loop() {
  //stepGo(回転方向,回転数,回転速度);
  stepGo(true,stepRotate*5,500); 
  delay(500);
  stepGo(false,stepRotate*5,500); 
  delay(500);
}

void stepGo(bool HL,int rev,int stepsecond){
  digitalWrite(DIR,HL);

  for(int i = 0; i < rev; i++)
  {
    digitalWrite(STEP,HIGH); 
    delayMicroseconds(stepsecond);
    digitalWrite(STEP,LOW);
    delayMicroseconds(stepsecond); 
  }

}
3
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
1