Skip to main content

Stepping Motor

Stepping Motor (Stepper Class)

This library enables control of stepping motors connected to the GR-SAKURA board. To use, specify #include <stepper.h>.

Stepper ()

Description
This constructor creates Stepper Class instances.
Syntax
Stepper(steps, pin1, pin2)
Stepper(steps, pin1, pin2, pin3, pin4)
Parameters
steps: The number of steps in one revolution (360 degrees) of the motor. 100 indicates 3.6 degrees per step.(int)
pins 1 - 4: Pins for connection to a motor.
Returns
None

setSpeed

Description
Sets the motor speed in rotations per minute (RPMs).
Syntax
setSpeed(long rpms)
Parameters
rpms: The speed at which the motor should turn in rotations per minute [rpm].
Returns
None

step

Description
Turns the motor a specific number of steps.
Syntax
step(int steps)
Parameters
steps: The number of steps to turn the motor - positive to turn one direction, negative to turn the other.
Returns
None

Sample Program


#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;
}