Étant totalement novice dans le domaine, je cherche une solution permettant de piloter en vitesse un moteur pas à pas et d'incrémenter/décrémenter la vitesse par une impulsion sur l'un ou l'autre des boutons.
Idéalement il faudrait pouvoir inverser le sens de rotation soit en appuyant sur le bouton permettant de diminuer la vitesse, soit avec un bouton d'inversion de sens.
#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);
}
}