メインコンテンツに移動

ステッピングモータ

ステッピングモータ

ステッピングモータを制御をするためのライブラリです。使用する場合は、#include <Stepper.h>を記述してください。

Stepper()

概要
Stepperクラスのインスタンス生成用コンストラクタです。
文法
Stepper(steps, pin1, pin2)
Stepper(steps, pin1, pin2, pin3, pin4)
パラメータ
steps: 1回転(360度)のステップ数。100のとき1ステップは3.6度。(int型)
pin1~pin4: 接続するピン
戻り値
なし

setSpeed

概要
1分間あたり何回転するか設定する。
文法
setSpeed(long rpms)
パラメータ
rpms: 回転速度[rpm]
戻り値
なし

step

概要
モータを回転させる。
文法
step(int steps)
パラメータ
steps: モータが回転する量をステップ数により指定する。負の数を入力すると逆回転する。
戻り値
なし

サンプルプログラム


#include <Arduino.h>
#include <Stepper.h>
// change this to the number of steps on your motor
#define STEPS 100
 
// create an instance of the stepper class, specifying
// the number of steps of the motor and the pins it's
// attached to
Stepper stepper(STEPS, 8, 9, 10, 11);
 
// the previous reading from the analog input
int previous = 0;
 
void setup()
{
  // set the speed of the motor to 30 RPMs
  stepper.setSpeed(30);
}
 
void loop()
{
  // get the sensor value
  int val = analogRead(A0);
 
  // move a number of steps equal to the change in the
  // sensor reading
  stepper.step(val - previous);
 
  // remember the previous value of the sensor
  previous = val;
}