Contrôle de moteur pas-à-pas avec bibliothèque stepper Arduino

Le programme précédent peut être considérablement simplifié en utilisant la bibliothèque stepper d’Arduino :

1
// charge une bibliothèque qui permet de piloter des moteurs pas à pas simplement
2
#include <Stepper.h>
3
 
4
// fixe le nombre de pas du moteur à 513 par tour
5
const int stepsPerRevolution = 513;  
6
7
// fixe la vitesse du moteur : 0 = min, 10 = max
8
int motorSpeed=10;
9
 
10
// initialise la bibliothèque en fonction des broches du driver
11
// dans le cas présent : (step,1N2,1N4,1N3,1N1)
12
Stepper myStepper(stepsPerRevolution, 9, 11, 10, 8);
13
14
void setup() 
15
{
16
  Serial.begin(9600);
17
}
18
 
19
void loop() 
20
{
21
  // définit de la vitesse de révolution du moteur
22
  myStepper.setSpeed(motorSpeed);
23
  Serial.print("Vitesse : ");
24
  Serial.println(motorSpeed);
25
26
  // fait tourner le moteur de 513 pas dans le sens trigonométrique
27
  Serial.println("Rotation en sens trigonométrique");
28
  myStepper.step(stepsPerRevolution);
29
  delay(1500);
30
31
  // fait tourner le moteur de 513 pas dans le sens horaire
32
  Serial.println("Rotation en sens horaire");
33
  myStepper.step(-stepsPerRevolution);
34
  delay(1500);
35
}

Question 1 : Téléversez le code, et constatez le fonctionnement.

Question 2 : Modifiez le programme pour demander à l'utilisateur le nombre de pas qu'il souhaite faire faire au moteur et à quelle vitesse pendant 2s. Limitez le programme à un seul sens de rotation.