Carte DIY compatible MESA 5i20 "reglage pid emc2"

  • Auteur de la discussion biduleur34
  • Date de début
B
biduleur34
Compagnon
20 Mai 2009
1 154
  • Auteur de la discussion
  • #1
Bonjour,
depuis quelques temp j'essaye de metre au point des petites cartes "une carte par axe" pour accompagné ma mesa 5I20.

j'ai donc fait une carte d'interface puissance avec EMC2. voir le post dans la section electronique.

Sauf que maintenant j'ai un petit soucis, dans EMC2 je n'arrive pas a faire tourné mes moteur, non pas parceque ma carte ne fonctionne pas mais parce que dans Halmeter ou hal scope je ne voit rien sur la broche m5i20.pwmgen.00.value.

dans calibration je monte le gain, mais rien ne bouge, pourtant dans pncconf, le petit outil de calibration me permet de bouger mon moteur et la m5i20.pwmgen.00.value est different de 0.

j'ai pas encore eut le temp d'approfondir.

Tout est configuré avec pncconf et emc2 2.4.6
merci de vos lumieres.

++

léo
 
horsot
horsot
Compagnon
28 Mai 2009
768
Toulouse
Salut Leo,

Peux-tu poster un zip de ta config?

En commençant par le début : As-tu le retour de tes encodeurs fonctionnels? (à vérifier dans halscope en tournant le moteur à la main)

Ensuite remonte la piste, pas de moteur qui tourne : Est ce que tu commandes effectivement ton moteur ?=> regarde les différentes I/O du PID, c'est lui le centre de la boucle. Cad la position commandée, le retour de position, la sortie "output", la sortie "error". Tout ce beau monde devrait se mettre en branle à chaque rotation manuelle du moteur (ou couple appliqué) ou commande de déplacement gcode (ex G0 X50 f200). Le moteur est-il libre de tourner ou maintient-il sa position?

Pour vérifier la partie Liaison hardware-hal. Dans ton hal, déconnecte l'entrée "m5i20.pwmgen.00.value" et branche le directement à un slider pyvcp par exemple. Mais vu qu'avec pnconf ça marche je ne me fais pas de soucis de ce coté là.

Bon courage

Xavier
 
B
biduleur34
Compagnon
20 Mai 2009
1 154
  • Auteur de la discussion
  • #3
pour le reglage du PID finalement je pense m'en etre sortie, j'arivait a quelque chose de pas trop terrible mais en rajoutant 0.05 en D, ça a tout changé.

mes valeur actuelle sont:
P=5
I=12
D=0.05

c'est coeherent ?

je peu mieux faire c'est pas mal degrossie.
je precise que ce reglage est pour un servo tournant a vide.
 
horsot
horsot
Compagnon
28 Mai 2009
768
Toulouse
Ça l'est, un petit lien pour t'aider à affiner avec les FFx:
http://wiki.linuxcnc.org/cgi-bin/emcinfo.pl?PWM_Servo_Amplifiers

Ne passe pas trop de temps à régler ton PID à vide, tu devras le refaire avec ta machine.

Sinon je pense qu'il est intéressant d'optimiser non pas l'erreur à un échellon (mouvement) mais l'erreur avec une contrainte (force) extérieure changeante. C'est cette immunité qui rendra la machine précise.

Bon courage pour la suite

Xavier
 
Haut