Dans le cadre d'un bricolage d'une bobineuse pour rebobiner une bobine de flipper spécifique, j'ai fais un programme qui permet de :
Afficher le nombre de tours, via une cellule infra rouge
Afficher la vitesse de rotation (calculée sur le temps entre chaque passage devant la cellule IR, en jouant avec la fonction millis).
Ca marche plutôt pas mal et je pourrais m’arrêter là du fait que j'ai qu'une bobine à faire, je guiderais le fil à la main.
A titre expérimental, j'ai acheté un petit motoréducteur pas à pas avec la carte driver , 5e livré sur ebay.
J'arrive à faire tourner le moteur avec la librairie stepper.h .
Seulement voilà, si par exemple je veux faire tourner le moteur de x pas à chaque tour (on imagine que la sortie est reliée à une tige filetée qui permet de faire déplacer un guide fil), cela fausse ma mesure de vitesse.
J'ai l'impression que pendant que le moteur fait ses pas, le programme n'avance pas . Ce qui fait que ca rallonge la période mesurée et donc diminue la valeur de vitesse affichée.
J'ai vu un autre sujet d'un membre qui voulait faire tourner deux moteurs en même temps et non un après l'autre, et qu'i lavait reçu comme réponse qu'avec stepper.h , ce n'était pas possible, mais de s'orienter vers AccelStepper .
Je me suis dis que ca permettait que le programme fasse autre chose pendant que le moteur tourne avec cette librairie.
Je suis parvenu à faire tourner le moteur avec AccelStepper, bien que je n'ai pas trouvé la commande permettant de tourner de x pas, seulement des positions cibles, mais cela ne résout pas le problème de mesure de vitesse.
Je pense que la cause reste la même, le programme ne continue pas tant que le moteur fait ses pas.
Y a-t-il une possibilité de faire tourner un moteur pendant que le programme continue d'avancer ?
@Jambe : C'est aussi une idée, surtout qu'en effet, les autres opérations doivent être très rapide donc ca ne devrait pas être perceptibles. Il suffirait de rajouter une variable qui s’incrémente à chaque loop pour compter le nombre de 1 pas réalisés.
Bon ,j'espère ne pas devoir prendre de chewing gum lol
@pepe : Ok je vois mieux le truc déjà On joue sur les cycles d'exécution du programme.
@kayel : Le capteur sert à mesurer la rotation de la bobine (cet axe est entrainé par un moteur différent , genre perceuse sans fil pour le moment lol), le moteur pas à pas serait pour l'avance d'un guide fil à bobiner.
Evidement, si l'axe était entrainé par un autre moteur PAP, le capteur serait inutile.
Couin:
Evidement, si l'axe était entrainé par un autre moteur PAP, le capteur serait inutile.
Oui et non, tu pourrais faire une boucle fermée et vérifier que la rotation ai été correctement réalisée. En autres, tu pourrais détecter un éventuel saut de pas et/ou blocage du moteur