Problème de commande de moteur pas a pas

Bonjour,

J'utilise un Arduino Motor Shield Rev3 pour piloter un moteur pas à pas bipolaire.

Dans mon application le moteur doit tourner d'un certain angle (Dans les essais 45°)

Le départ de la rotation est commandé par un appui sur un bouton poussoir relié à une entrée logique de l'Arduino Uno

ça fonctionne, mais aussi bien à la mise sous tension qu'a la fin de la rotation le moteur est bloqué et il consomme.

J'aimerais que pour les deux positions extrêmes il n'y ait pas de consommation et que le rotor soit libre.

Puis-je faire cela avec la library "stepper" ?

Sinon quelle pourrait être la solution ?

Je vous remercie pour votre aide.

tu n a pas une entrée ENABLE sur ton drivers?

si oui tu l activera ou desactivera ici

en complément de vtec 35

sur l 'Arduino Motor Shield Rev3 ,enables A,B correspondant aux pattes 8 et 14 du l298n ,
elles mêmes câblés aux broches 3 et 11 ,(pwma et pwmb )

dans votre programme "en teorie..." vous devriez avoir du "digital write " vers les pin 3 et 11
c 'est cette valeur de Modulation de Largeur d' Impulsion qu 'il faudra mettre a 0 .

ps : vérifier en cas d'erreur datasheat l298 + schémas rev3 +schémas de v câblage moteur +v prog..

question que je pose ici, car j ai pas eu ma reponse ailleurs

comment on test l'etat du moteur pour savoir si il est en cours de mouvement ou non?

avec accell.stepper, j ai essayé plein de truc en vain

if (stepper1.isRunning())
if (!stepper1.isRunning())
if (stepper1.isRunning()==1)
if (stepper1.isRunning()==0)
if (stepper1.isRunning()==true)
if (stepper1.isRunning()==false)

rien ne marche

en cherchant bien dans un exemple rattaché a votre fonction isRunning ( )

de la librairie accell.stepper je découvre :

dans l 'exemple MotorShield.pde

"Adafruit Motor Shield et Arduino pin names for interface to 74HCT595 latch:"

je dirai donc que cette librairie ne fonctionnera pas avec votre carte .....
si non il vous faut comparer:

schemas de Adafruit Motor Shield et schemas de Arduino Motor Shield Rev3
et votre cablage . pour d' eventuelle coresp.... mais bon a vous de voir...

merci, alors dans mon cas j'ai un arduino mega ou uno

et là avec mon programme qui est fini a 99.99%, j'ai absolument besoin de tester le mouvement du moteur, sans cette fonction, impossible de faire boucler correctement

ou je sais pas on peut pas tester le pwm de ma sortie "pulse", et si elle est a 0 pendant un certain temps on considere le moteur comme arreter, sinon comme en mouvement?

c'est con , mais que c 'est rageant d' être a 0,01% de la réussite , non ?

vous pouvez vérifier de deux méthode

1°) 100 % software
effectivement "tester" le pwm de votre sortie , en partant de votre programme , qui est fini a 99,999% et qui est présent attendez je cherche post 1 ,2 , 3 , 4,5 ....
ben NON ...c' est balo ... votre programme est présent a 0,0000 %

alors vous pouvez faire plein de truc bidules avec votre programme dans le monde de la supputation , vous étes seul maitre , et vous pouvez vous faire la question et la réponce .
bien venu au pays des mytos...

2°) 99% hardware

le l298n pin2 et pin 19 (boitier PowerSO20) , datasheat l298 + schémas rev3
tous consultables sur le net , a l' exception ,bien sur , de votre schémas de câblage ...

bien venu dans le monde réel .

Bonjour,

Je suis arrivé a libérer le rotor en utilisant au bon moment dans le programme la commande de frein de la library "Stepper"