■Stepper:step関数
Stepper:step関数は、setSpeed関数で設定された速度(直近の値)で、モータを指定したステップ数だけ回転させます。
この関数は、モーターが止まる迄次のプログラムへ移行しません。
たとえば、速度を1rpmに設定し、100ステップのモーターでstep(100)を実行すると、この命令が終了するには1分程の時間が掛かります。
より良いコントロールのためには、速度を高く設定し、細かくstep関数を実行します。
※詳細については、Tom Igoeのステッパーに関するノートを参照してください。
■使用例
ArduinoIDEで使用するStepper:step関数の使い方は以下の通りです。
このプログラムはArduinoのデジタルピン8・9と接続されたユニポーラまたはバイポーラステッピングモーターを駆動します。
試しにこのプログラムをArduinoUNOで実行すると、Stepper関数でmystepperと言う名前(任意)で初期化した接続を作成します。
作成した接続の回転数をsetSpeed関数で60rpmに設定します。
以上の設定条件を適用した接続について、step関数でステッピングモーターを正方向に100ステップ分回転し、次は逆方向に100ステップ分回転します。
#include <Stepper.h> #define motorSteps 200//モータの1回転あたりのステップ数に応じて変更する #define motorPin1 8 #define motorPin2 9 #define ledPin 13 // Stepperライブラリの初期化 Stepper myStepper(motorSteps, motorPin1, motorPin2); void setup() { //60RPM でモータ速度を設定します。 myStepper.setSpeed(60); // シリアルポートを初期化します Serial.begin(9600); } void loop() { // ステップを100ステップ進める Serial.println("Forward"); myStepper.step(100); delay(500); // ステップを100ステップ戻す Serial.println("Backward"); myStepper.step(-100); delay(500); }
図1:プログラム例
■構文
Stepper:step(steps)
■パラメータ
steps:モーターをオンにするステップの数、正の数で正転、負の数で逆転(int)
■戻り値
特に有りません。
励みになりますのでよければクリック下さい(^o^)/