Dois-je passer mon système d'asservissement de moteurs à balais à des moteurs sans balais?


13

J'ai un robot qui utilise des moteurs à balais dans son système d'asservissement. Ce sont des moteurs Maxon 3W, avec des réducteurs planétaires 131: 1. Les moteurs sont contrôlés par un microcontrôleur PIC, exécutant un contrôleur PID à 1 kHz. Les servos sont destinés à une application à couple élevé et à faible vitesse. Il y a un jeu important entre le capteur et le moteur.

Maxon propose des moteurs brushless 12W de même taille. Celles-ci sont meilleures à bien des égards: le double du couple, une meilleure dissipation thermique, une efficacité plus élevée.

Le problème, évidemment, est qu'ils nécessitent une électronique d'entraînement plus complexe. En outre, j'ai entendu quelques personnes mentionner que les moteurs à balais sont meilleurs pour les applications servo, bien qu'ils n'aient jamais expliqué pourquoi.

  • Quelqu'un d'autre a-t-il mis en place ce type de système?
  • Y a-t-il des problèmes lors de l'utilisation de moteurs à balais pour les servos?
  • Est-il possible de l'asservir à basse vitesse si je n'ai que les 3 capteurs Hall numériques intégrés et pas d'encodeur? (Je préférerais ne pas ajouter d'encodeur à cause de l'argent et du coût de l'espace)
  • Il ondulation de couple susceptible d'être un problème?

Réponses:


6

Les moteurs à balais sont plus faciles pour les systèmes d'asservissement, mais ne sont pas meilleurs. De nombreux systèmes d'asservissement haut de gamme sont sans balais / CA.

Il est possible de contrôler les moteurs à basse vitesse avec seulement 3 capteurs à effet Hall. Vous ne voulez vraiment pas de commutation trapézoïdale, en particulier à basse vitesse, vous pouvez donc ajouter un codeur ou estimer la position du rotor si nécessaire.

Il est possible d'estimer la position du rotor avec uniquement des capteurs à effet Hall / courant, mais s'il y a beaucoup de perturbations externes, cela ne fonctionnera pas très bien.

Il est peu probable que l'ondulation de couple soit un problème, cela dépend bien sûr de votre application. Des méthodes de commutation plus avancées (sinusoïdale ou vecteur de flux) éliminent essentiellement l'ondulation du couple.

Vous dites que votre application est à basse vitesse, mais vous utilisez également une boîte de vitesses 131: 1. Quel RPM le moteur voit-il normalement? Ce n'est pas vraiment une application à basse vitesse si le moteur tourne à 30% + de son régime nominal. Même les capteurs à effet Hall sont à très haute résolution après avoir subi autant de réduction, de sorte que vous n'avez peut-être pas vraiment besoin de performances à basse vitesse sur le moteur lui-même.

À mon humble avis, étant donné que votre système actuel a un jeu important entre le capteur et les moteurs, je ne peux pas imaginer un système sans balais faisant pire même avec des commutations halls / trapézoïdales.


Merci d'avoir répondu. La vitesse du moteur va de la pleine vitesse jusqu'à zéro. Parfois, le moteur devra effectuer de grands mouvements rapides, et parfois il devra effectuer des mouvements minuscules ou très lents.
Rocketmagnet

4

Dans l'industrie, il existe une forte préférence pour les moteurs sans balais à faible entretien par rapport aux moteurs à balais à entretien relativement élevé. Alors que le premier peut me coûter plus cher en termes de moteur lui-même et d'électronique d'entraînement, la réduction du coût à long terme de la maintenance dépasse généralement le coût en capital supplémentaire.

Comme le suggère user65 , vous devrez peut-être une commutation sinusoïdale pour éviter l'ondulation du couple à basse vitesse, selon précisément la façon dont vous concevez votre système et la précision de votre contrôle de la vitesse.

Le document A Comparison Study of the Commutation Methods for ... contient des méthodes intéressantes de commutation de l'information, qui pourraient être utiles.

En fin de compte, je pense qu'éviter d'utiliser des encodeurs est une fausse économie.

Contrairement aux halls, ils ont le net avantage de ne pas être liés à la rotation du moteur , c'est-à-dire qu'ils n'ont pas besoin d'aller sur l'arbre du moteur. Vous pouvez les placer du côté charge de la boîte de vitesses, ce qui vous permettra de quantifier les effets précis du jeu dans votre boîte de vitesses.

Cela vous permettrait d'effectuer une compensation de jeu dans le logiciel, d'exécuter deux boucles d'asservissement (une pour le suivi de position avec compensation de jeu et une autre pour un contrôle de vitesse plus immédiat) et de prendre généralement un contrôle beaucoup plus précis de votre système à des vitesses élevées et basses.


Concernant les encodeurs: ennuyeusement, notre système souffre d'un niveau élevé de jeu très variable. Elle peut varier entre 0% et 60% de la course de la charge! Nous ne pouvons pas faire grand-chose sans apporter de changements fondamentaux à la nature de notre robot.
Rocketmagnet

@Rocketmagnet - Vraisemblablement, la plupart de vos mouvements se font d'un bout à l'autre alors? Si vous effectuez moins de 60% des déplacements, je ne vois pas comment vous pouvez savoir où vous êtes. Au moins , si vous ajoutez un encodeur voulez savoir où vous êtes, même si vous ne savez pas combien vous devez tourner le moteur pour obtenir un autre. Avez-vous déjà publié quelque chose sur votre robot? Je serais intéressé à en savoir plus à ce sujet.
Mark Booth

Sur notre robot, nous avons des capteurs de position analogiques à la charge (après le jeu), donc je peux faire un contrôle de position raisonnable. Et nous avons des capteurs de couple à la sortie du moteur (avant le jeu) afin que je puisse au moins conduire le moteur rapidement jusqu'à ce qu'il ressente le jeu. Pourtant, je préférerais vraiment ne pas avoir de jeu.
Rocketmagnet

@Rocketmagnet - Ne serions-nous pas tous. * 8 ') C'est pourquoi j'aime travailler avec des moteurs linéaires à entraînement direct, là votre seul vrai problème est le cogging et qui peut être réglé. Soit dit en passant, avez-vous un seul moteur par axe, et avez-vous envisagé de doubler et d'avoir une paire de ces actionneurs à jeu élevé travaillant en opposition? Je suppose que c'est ainsi que vos muscles de l'air sont utilisés dans la main habile .
Mark Booth

Mon rêve est d'utiliser des moteurs à entraînement direct. Malheureusement, d'autres contraintes les excluent pour le moment. Nous avons un seul moteur par axe. Un moteur par tendon supprimerait le jeu, mais augmenterait massivement le poids, le coût et la taille.
Rocketmagnet
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.