diff options
Diffstat (limited to 'libraries/Stepper/examples/stepper_speedControl')
| -rw-r--r-- | libraries/Stepper/examples/stepper_speedControl/stepper_speedControl.ino | 48 | 
1 files changed, 48 insertions, 0 deletions
| diff --git a/libraries/Stepper/examples/stepper_speedControl/stepper_speedControl.ino b/libraries/Stepper/examples/stepper_speedControl/stepper_speedControl.ino new file mode 100644 index 0000000..1a67a55 --- /dev/null +++ b/libraries/Stepper/examples/stepper_speedControl/stepper_speedControl.ino @@ -0,0 +1,48 @@ + +/*  + Stepper Motor Control - speed control +  + This program drives a unipolar or bipolar stepper motor.  + The motor is attached to digital pins 8 - 11 of the Arduino. + A potentiometer is connected to analog input 0. +  + The motor will rotate in a clockwise direction. The higher the potentiometer value, + the faster the motor speed. Because setSpeed() sets the delay between steps,  + you may notice the motor is less responsive to changes in the sensor value at + low speeds. +  + Created 30 Nov. 2009 + Modified 28 Oct 2010 + by Tom Igoe +  + */ + +#include <Stepper.h> + +const int stepsPerRevolution = 200;  // change this to fit the number of steps per revolution +// for your motor + + +// initialize the stepper library on pins 8 through 11: +Stepper myStepper(stepsPerRevolution, 8,9,10,11);             + +int stepCount = 0;  // number of steps the motor has taken + +void setup() { +  // nothing to do inside the setup +} + +void loop() { +  // read the sensor value: +  int sensorReading = analogRead(A0); +  // map it to a range from 0 to 100: +  int motorSpeed = map(sensorReading, 0, 1023, 0, 100); +  // set the motor speed: +  if (motorSpeed > 0) { +    myStepper.setSpeed(motorSpeed); +    // step 1/100 of a revolution: +    myStepper.step(stepsPerRevolution/100); +  }  +} + + | 
