Comment optimiser les paramètres de contrôle d'un moteur pas à pas?


9

En tant que roboticien industriel, j'ai passé la plupart de mon temps à travailler avec des robots et des machines qui utilisaient des moteurs CC sans balais ou des moteurs linéaires, j'ai donc beaucoup d'expérience dans le réglage des paramètres PID pour ces moteurs.

Maintenant, je passe à la robotique de loisir à l'aide de moteurs pas à pas (je construis mon premier RepRap ), je me demande ce que je dois faire différemment.

Évidemment, sans rétroaction de l'encodeur, je dois être beaucoup plus conservateur dans les demandes adressées au moteur, en veillant à toujours rester dans les limites de ce qui est possible, mais comment savoir si mon réglage est optimal, sous-optimal ou (pire cas) légèrement instable?

Évidemment, pour une charge donnée (dans mon cas, la tête de l'extrudeuse), je dois générer des trains d'impulsions de pas qui provoquent une accélération et une vitesse demandées auxquelles le moteur peut faire face, sans manquer d'étapes.

Ma première pensée est de faire quelques séquences de test, par exemple:

  • Moteur domestique précisément sur son capteur domestique.
  • Éloignez lentement pas de chez vous.C
  • Move s'éloigne de la maison avec un profil de déménagement conservateur.M
  • Déplacez pas avec le profil d'accélération / vitesse de test.N
  • Déplacer revient au début du mouvement de test avec un profil de mouvement conservateur.N
  • Move revient à la maison avec un profil de déménagement conservateur.M
  • Déplacez lentement les pas vers le capteur d'origine, en vérifiant que le capteur est déclenché à la position correcte.C
  • Répétez l'opération pour une variété de , , profils d'accélération / vitesse et charge.NM

Cela devrait détecter de manière fiable les étapes manquées dans le déplacement du profil de test, mais cela semble être un espace terriblement vaste à tester, donc je me demande quelles techniques ont été développées pour optimiser les paramètres de contrôle du moteur pas à pas.


Dans le monde RepRap, le diagnostic est que l'impression est horrible. C'est la détection des étapes manquées, pour autant que je sache. Mais je pense que le courant utilisé par le stepper pourrait être utilisé comme rétroaction si le stepper était capable de faire le mouvement. Mais je n'ai pas entendu parler de quelqu'un qui fasse vraiment ça.
Lars Pötter

(Ces sujets deviennent populaires cette semaine. Cela doit être dû à cet article sur les armes à feu.) La meilleure façon / la plus simple est de faire les impressions de test telles que le test de torture thingiverse.com/thing:33902

Réponses:


1

Pour ce faire, la méthode "mathématique" consiste à générer une courbe vitesse / couple pour votre moteur pas à pas à sa tension donnée et à déterminer la force maximale qui sera appliquée à l'objet en mouvement (dans ce cas, la plus grande force est susceptible d'être accélération).

Notez que la plupart des imprimantes 3D hobby sont si fragiles que le cadre se pliant sous accélération nuira à la qualité d'impression bien avant de commencer des étapes manquantes. Dans ce cas, vous pouvez modéliser la déflexion du cadre sous charge.

D'après mon expérience, 90% des étapes manquées sont causées par des problèmes mécaniques ou logiciels tels que la liaison des axes ou les impulsions manquées. Essayez de tout déplacer à la main pour vérifier s'il est lisse.

Des vitesses et accélérations trop agressives devraient être visibles (et audibles) sur une imprimante 3D bien avant le décrochage des steppers.

En règle générale, une seule étape manquée entraînera également les prochaines étapes (car le moteur doit maintenant travailler encore plus dur pour rattraper son retard) et vous obtenez quelques secondes de bourdonnement au lieu de mouvement.

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.