Aide Moteur PAP qui bouge à la mise sous tension

  • Auteur de la discussion Mcar
  • Date de début
M

Mcar

Compagnon
Bonjour à vous tous,
je suis confronté à un problème de mouvement d'un moteur pas à pas à sa mise sous tension
468701


Le pap actionne un pont tournant d'un réseau en HO. (voir photo ci dessus)
le moteur pap est un nema 17 42BYGH , 400 pas 2,4A
le driver un TB6600 est alimenté en 12v
j'utilise le micro stepping de 400x16= 6400 pas
le tout est piloté par un arduino. j'ai besoin de cette precision car un pas faisant 360/6400= 0,056 deg. soit sur la demi longueur du pont de 15 cm une precision de repositionnement de +-0,15 mm, precision suffisante pour ne pas faire dérailler la locomotive.

J'ai une procédure d'initialisation des positions de chaque voies où j’enregistre cette position dans la mémoire sauvegardée de l'arduino.
tant que je ne coupe pas l'alimentation le pont se repositionne sans problème en face de chaque voies.
lorsque je remets sous tension le système le pont bouge de environ 1 degré et decale d'autant toutes les positions d'arret en face des voies, ce qui m' oblige à chaque mise sous tension de réinitialiser les positions de voies.
existe t il une procédure (une programmation) pour que le pont ne bouge pas à sa mise sous tension ?

bon je sais ça n'a rien à voir avec l'usinage 8-) mais une aide sur mon probleme svp
 
S

speedjf37

Compagnon
Bonjour,

Soit un codeur absolu !
Soit un capteur de position ( comme un home machine ) à rechercher à chaque mise sous tension.

Sinon positionner avant la coupure d'alimentation le moteur sur une position reset/home du driver.

JF
 
B

biscotte74

Compagnon
Les micro pas n'améliorent en rien la précision, ils permettent seulement un déplacement plus fluide. les moteurs pas à pas ne possèdent en réalité que 2 positions stables , soit sur le pas entier, soit sur le demi pas. A la mise sous tension, le moteur se cale d'office sur le pas entier, "le plus proche "donc sur 360/400, soit environ 0.9° de précision, si ta position est sur le 1/2 pas, soit 0.45°, a chaque mise sous tension, tu vas avoir un décalage de 0.45°, soit en "avant" soit "en arrière", tu ne pourra rien y faire.
Sur une CN, à chaque mise sous tension, on refait le captage des limites machines, via un capteur, tu es obligé de faire pareil.
 
M

Mcar

Compagnon
Merci pour vos réponses, je m'en doutais un peu
je vais donc définir une position absolue avec un capteur avec une recherche de cette position à chaque mise sous tension .
 
V

vres

Compagnon
Vu que les bobines sont alimentées en sinus/cosinus le couple est quasi identique sur toute les positions. Il n'y a pas de position plus stables les une que les autres. En micropas c'est plus un moteur alternatif qu'un moteur pas à pas. En revanche le couple génère un décalage entre le flux magnétique du rotor et celui du stator, donc le décalage moyen reste le même.
Le moteur pas à pas a 50 pôles donc le calage a la mise sous tension peut aller jusqu'à +/-3.6°.

En complément la position Home dont parle JF, c'est donc tout les 7,2° soit tout les 4 pas entiers.
Pour ton problème soit tu t'arranges pour que le moteur soit sur une position Home où tu fait une reprise d'origine avec un capteur comme pour un changeur outil à carousel. C'est la solution la plus sûre.
 
Dernière édition:
P

petit_lulu

Compagnon
bonjour,
pour les specialistes des PAP, si lors de la coupure de l'alimentation on fait en sorte d'etre sur un pas "entier" a la place d'1/16 de pas, lors de la future mise sous tension le moteur ne devrait pas bouger en theorie ?
 
C

cr-_-

Compagnon
Bonjour,

oui et non, il faut que ton pas entier soit aussi le même que celui qui va être alimenté. Pour les moteurs pas à pas courant il y a quatre façons de l’alimenter en pas entier
 
P

petit_lulu

Compagnon
ba oui, je suis c.n
par contre on peut "theoriquement" mettre a 0 un compteur (a 2 bits) a l'alumage et compter les pas en + et en - afin d'arreter le moteur sur un pas qui donne 0 dans le compteur.
j'ai bien mis en "theorie", car ca deviens une usine a gaz a gerer.
 
M

Mcar

Compagnon
La solution la plus simple et la plus sur à la vue de toutes ces réponses me semble être le capteur de position qui définît un 0 angulaire.
je vais donc modifier mon programme C avec à la mise sous tension la recherche de ce "zero"

merci à vous tous pour votre aide,
 
S

speedjf37

Compagnon
ba oui, je suis c.n
par contre on peut "theoriquement" mettre a 0 un compteur (a 2 bits) a l'alumage et compter les pas en + et en - afin d'arreter le moteur sur un pas qui donne 0 dans le compteur.
j'ai bien mis en "theorie", car ca deviens une usine a gaz a gerer.

De nombreux drivers ont une sortie home qui permet de positionner le moteur dans une position stable.
exemple:
DRV8825 NO.nHOME pin 27

JF
 

Sujets similaires

P
Réponses
1
Affichages
1 120
leen
R
Réponses
5
Affichages
1 704
Robotquiflotte
R
M
Réponses
13
Affichages
7 831
moissan
M
Haut