Étape 10 : BONUS : exemple de moteur pas à pas
En prime, ce bouclier peut également contrôler un moteur pas à pas unique tout le chemin jusqu'à 5 volts. Un moteur pas à pas vous donne la possibilité de contrôler la position précise sans la complexité des capteurs de position et contrôleur de boucle fermée coûteux. Le fichier zip ci-dessus contient également un exemple de code pour contrôler un moteur pas à pas.
L’exemple de code ci-dessous utilise un intégré dans la bibliothèque de l’Arduino Stepper pour contrôler les étapes du moteur (à la première ligne dans le code). Nous commençons par définir le nombre d’étapes, que notre moteur a chaque tour, dans notre cas, c’est 1,8 degrés par étape, donc 200 pas par tour.
Ensuite, nous initialiser la classe de moteurs pas à pas avec l’étape par la révolution, ainsi que les deux broches permettant de contrôler la direction des sorties. Les deux dernières lignes avant l’installation doivent définir les broches PWM, à l’instar de notre dernier programme.
La première ligne dans notre routine de configuration définit la vitesse à laquelle nous voulons déplacer le stepper. La vitesse maximale est limitée par le type de moteur pas à pas, vous utilisez (des tensions plus élevées signifient généralement plus élevés de tr/mn). Pour nos moteurs pas à pas, nous avons pu obtenir environ 60 t/mn, par le moteur d’entraînement à ses cotés 5 volts.
Ensuite, nous devons mettre nos broches PWM haute. Nous pouvons le faire en utilisant la fonction analogWrite, ou la fonction digitalWrite . En définissant les broches PWM à 255, les deux chaînes sont toujours sur et activé. De cette ligne, le moteur sera juste contrôlé en utilisant les broches des deux sens. Le port série est juste utilisé pour afficher des messages sur l’ordinateur et est facultatif.
Enfin, nous arrivons à la boucle. La boucle tourne le moteur pas à pas un tour complet, faire une pause pendant une demi-seconde et puis un tour complet le dans l’autre sens. Vous pouvez utiliser la fonction myStepper.step() , à l’étape du moteur dans toutes les directions.