Bonjour,
Voila, je vous explique ce que je souhaiterai réaliser (mon projet quoi…). Pour des initiés comme vous, je pense que cela ne doit pas être un soucis, et même voir tout bête car le projet ne comporte qu'une seule demande à un moteur et qu'il la répète en boucle indéfiniment… pour la stopper, bas je débranche ![]()
Le projet :
Demander à un moteur pas à pas, via un arduino, d'effectuer un tour complet et de le répéter indéfiniment (aucun stop entre chaque tour). La cadence que je souhaiterai imposer au moteur est de 1 tour en 3 minutes 20 secondes
Le matériel que je vais avoir pour ce projet :
- 1 arduino UNO
- 1 module interface de commande de moteur a base de L298N
- 1 moteur P.A.P. 1.8° (donc 200 pas / tour)
N'y connaissant strictement rien dans ce domaine (débutant que je suis, je n'y avais jamais encore mis les pieds dans ce domaine….), j'ai donc commencé par faire un petit tour (moi, pas le moteur
) sur le net où l'on trouve des millions de post à ce sujet. En faite, à force de lire, de lire, et de relire…. je m'y pomme !!!
Donc voilà, mon raisonnement. Est-il correct ?
Mon raisonnement :
- Mon moteur doit faire 1 tour en 3 minutes et 20 secondes.
- Mon moteur fait 1,8° à chaque pas, donc pour faire un tour, il doit faire 200 pas.
- petit calcul vite fait :
a. 1 tour = 200 pas
b. 1 tour = 3 minutes et 20 secondes
c. Donc le nombre de pas que le moteur doit faire en 1 minute doit être égal à (petite règle de 3):
• 3 minutes 20 sec. = 3,3333 minutes = 200 pas
• 1 minute = X pas
• X pas = 200*1 minute / 3,3333 minutes
• X pas = 60
d. Donc, la vitesse de mon moteur doit être fixée à 60 pas par minute
De là, pour l'arduino, je procède comme suit :
1 – Je déclare le nombre de pas pour 1 tour du moteur ainsi que la connectique de sortie sur l'arduino :
#include <Stepper.h>
Stepper moteur (200, 2, 3, 4, 5); // J'initialise le nbre de pas du moteur et les broches références de connexion sur l'arduino)
moteur.setSpeed(60); // Je fixe la vitesse du moteur à 60 pas par minutes
2 – La création de ma boucle :
void loop()
{
moteur.step(nbrepas360); // Effectue un tour complet dans un sens.
}
Suis-je dans le vrai où complètement à coté de la plaque ?
Merci pour votre aide ![]()