Page 1 sur 1

Controler 2 moteur brushless

Posté : dim. 4 oct. 2015 17:32
par Zenip
Bonjour à tous,

Pour un projet d'école je dois faire tourner 2 moteurs brushless à la même vitesse. J'arrive à les faire tourner via un générateur de fréquence, mais du fait de la mauvaise qualité des moteurs, je n'ai pas exactement le même nombre de spire sur chaque moteur.. Résultat, j'en ai un qui tourne plus vite que l'autre pour une fréquence donnée.

J'ai pensé à utilisé le arduino avec la librairie servo. mais je ne pense pas que ça résoudrai mon problème.

Est ce que vous connaissez un moyen de les faire tourner à la même vitesse ?

Une carte de drone qui détecterai un moteur qui tourne moins vite et qui ralentirai l’autre pour qu'ils aient la même vitesse ?

Comment la vitesse des moteurs est géré par une carte de drone quand il fait du stationnaire par exemple ? Il capte la force électro motrice du moteur ?

Cordialement.

Re: Controler 2 moteur brushless

Posté : dim. 4 oct. 2015 20:40
par Jean des Biolles
Une carte de drone comme tu dit (Flight Contrôleur ou FC) contrôle la vitesse angulaire du modèle grâce aux gyroscope et l'angle du modèle par rapport à l'horizon grâce aux accéléromètres. La FC ne connait pas vraiment la vitesse réel des moteurs. Mais l'angle du drone doit être corrigée la FC donne l'ordre aux moteur d'aller plus ou moins vite . Sur un multi mal équilibré, il garde son angle avec des moteurs qui peuvent tourner à des vitesses très différentes. De même si un moteur est grippé, la FC ne va rien en savoir.
Pour contrôler la vitesse exacte des moteurs il faut regarder du côté des ESC. Il me semble que avec blheli il y a des paramètres pour contrôler au plus juste la vitesse des moteurs.

Re: Controler 2 moteur brushless

Posté : lun. 5 oct. 2015 14:30
par Zenip
Merci pour les infos sur comment la FC controle les moteurs. Je ne connais pas blheli.. c'est un programme pour flashé les esc ? On peut flashé n'importe quel ESC ?

Re: Controler 2 moteur brushless

Posté : lun. 5 oct. 2015 15:58
par CoyotteDundee
Hello,

Comment pilotes-tu les moteurs ? Passes-tu par deux contrôleurs (ESC) ?
Quels sont tes moyens pour faire varier la vitesse d'un des moteurs ?
Est-ce que ces moteurs sont fixés mécaniquement à quelque chose de rotatif ? (Une roue, une hélice, un engrenage, ...)

En fonction de tes réponses, il serait peut-être possible de détecter le battement entre les deux moteurs optiquement (différence de temps de passage d'une hélice devant une source de lumière ), mécaniquement (passage d'un aimant devant un transistor à effet hall), voire même détecter le battement sonore entre les deux moteurs...(C'est comme cela que pratiquaient les mécaniciens à bord de bombardiers ...)
Une carte Arduino pourrait très certainement aider en ce sens...

Coyotte

Re: Controler 2 moteur brushless

Posté : lun. 5 oct. 2015 16:00
par furynick
Il y a deux catégories principales d'ESC, ceux équipés de contrôleurs Atmel (en général fonctionnant avec un firmware SimonK) et ceux équipés de contrôleurs SiLabs (en général fonctionnant avec un fimware BlHeli).
Il me semble que cette séparation tend à disparaitre au moins côté BlHeli qui peut, il me semble, s'installer sur certains Atmel.

Quoi qu'il en soit, pour ne pas t'embêter il te faut effectivement piloter tes moteurs à travers des ESC que tu pilotera grâce à la bibliothèque PWM de ton Arduino.

Re: Controler 2 moteur brushless

Posté : lun. 5 oct. 2015 19:43
par Zenip
Pour le moment je pilote les moteurs via un ESC (qui controle les 2) qui est piloté par un générateur de fréquence. Je fais varier la fréquence pour faire varier la vitesse des moteurs.

Les deux moteurs entrainent une roue(1 de chaque coté de la roue). C'est la raison pour laquelle quand un moteur tourne moins vite l'autre "résiste" et à tendance a créer un balourd dans la roue.. Il faudrait un système qui lit la valeur de chaque moteur et que la carte adapte la vitesse des 2 moteurs pour qu'ils soient parfaitement synchronisés.

Le capteur a effet hall je ne peux pas l'utiliser dans les conditions de mon projet, pourquoi pas faire un système avec une barrière lumineuse.

Re: Controler 2 moteur brushless

Posté : ven. 23 oct. 2015 10:29
par Zenip
Bonjour,

J'ai pensé racheter 2 moteurs équipés de capteur intégré dans le moteur et d'acheter un ESC gérant cette fonction. Est ce que quelqu'un connais cela ? Est ce que je vais avoir la possibilité de gérer les 2 moteurs de façon précise et synchrone ?

-m-

Re: Controler 2 moteur brushless

Posté : ven. 23 oct. 2015 12:19
par opossome64
Yop !

Pour les moteur brushless avec capteur il faut regardé du coté des moteurs pour les voitures électrique et leur ESC dédié .
Par contre contrôler 2 moteur avec 1 ESC , c'est une TRES mauvaise idée : 1 moteur = 1 ESC
Avec 2 ESC + l'activation du mode "governor" tu devrais déjà contrôler bien plus précisément des 2 moteurs .

++

Re: Controler 2 moteur brushless

Posté : ven. 23 oct. 2015 16:33
par Zenip
Ok je vais regardé du coté des moteurs de voiture. J'ai déjà l'ESC (2in1) qui permet de contrôler les 2 moteurs. Je vais voir si je trouve un moteur dans mes cotes dont j'ai besoin.

Re: Controler 2 moteur brushless

Posté : ven. 23 oct. 2015 20:26
par opossome64
Tu dois pouvoir faire du governor avec tes ESC alors , c'est quoi ton 2 en 1 ?

Re: Controler 2 moteur brushless

Posté : dim. 1 nov. 2015 13:13
par Zenip
Oui je viens de découvrir cette fonction de mon ESC. Je n'ai pas bien compris le principe.. J'ai UN esc qui permet de controler 2 moteurs brushless en fait. Avec le mode governor je peux donner une vitesse au moteur à respecter quelque soit la charge qu’il doit supporter ?

Re: Controler 2 moteur brushless

Posté : dim. 1 nov. 2015 16:48
par opossome64
Yep , c'est ça . On se sert par exemple du mode governor en hélicoptère RC pour garder le régime moteur constant malgré les changement de pas des pales .

Re: Controler 2 moteur brushless

Posté : dim. 1 nov. 2015 18:06
par Zenip
Ca peut être intéressant du coup ce mode. Je vais essayé de programmer ca sur mes deux moteurs et regarder s'ils tournent bien au même régime. J'espère que ce n'est pas trop dur à mettre en place. Je vous tiens au courant !

Re: Controler 2 moteur brushless

Posté : sam. 7 nov. 2015 19:04
par Zenip
Bon je n'arrive toujours pas à faire tourner correctement ces deux moteurs.. Je pense me tourner vers une solution mécanique ( couplé les 2 arbres ).

Est ce que quelqu'un parmis vous a deja programmé des ESC à partir d'un signal PPM généré grâce à Labview ? J aimerais remplacer mon générateur de fréquence par labview mais je n'ai pas beaucoup de connaissance de ce programme.

Re: Controler 2 moteur brushless

Posté : jeu. 14 janv. 2016 21:46
par Zenip
Bonjour, je reviens vers vous.. Je n'arrive toujours pas à faire tourner ces 2 moteurs synchrone et pourtant ca a l'air simple avec de bonne connaissance en programmation/électricité.
Est ce que une fonction "Mapping" avec arduino pourrait m'aider ?
Connaissez vous des modes d'ESC qui pourrait m'aider ?
Est ce que ma différence de vitesse peut venir d'un mauvais calibrage du ESC ? Si oui je dois le calibrer comme je le fais pour mon quad ?

Merci !

Re: Controler 2 moteur brushless

Posté : jeu. 14 janv. 2016 22:16
par Zenip
Je viens de découvrir le elogger V4 de Eagle Tree, j'ai vu qu'il existait des capteur tachymétrique optique. Avec le programme fourni est-il possible de régler une vitesse de rotation ? Ou c'est juste de la télémétrie ou on ne pas pas agir sur le dispositif ?

Re: Controler 2 moteur brushless

Posté : lun. 15 févr. 2016 14:55
par Zenip
J'ai réussi a faire fonctionner un moteur sur labview avec LINX. J'ai commandé le module de Eagle tree qui se branche sur l'ESC, je pense pouvoir récupérer une valeur grace à ce module (quelqu'un a deja fait ca) et la renvoyé dans un régulateur PID qui renvoye sa valeur sur le 2 eme moteur.

Re: Controler 2 moteur brushless

Posté : dim. 30 juin 2019 13:04
par Tchapset
:155:

Re: Controler 2 moteur brushless

Posté : dim. 3 janv. 2021 14:51
par sylvainmahe
Bonjour à vous :)

Désolé pour le déterrage de sujet mais, vu que de base il s'étend sur plusieurs années je me suis dit...


La première chose c'est que la vitesse des moteurs dans le monde des multi-coptères, à priori n'a aucune importance. Comme dit par d'autres, ce qui compte c'est que la centrale inertielle détecte du mouvement, données envoyées à un calculateur, qui dispose de consignes de vol, et fait tout pour respecter les consignes, autrement-dit envoie les bons ordres pour rétablir en permanence l'assiette de l'hélicoptère.

La deuxième chose est votre projet d'école, qui vu la date doit être terminé depuis longtemps. Mais je pense qu'il est intéressant d'en parler.

Un contrôleur de moteur sans charbons est en fait contrôlé par le moteur. En effet c'est le moteur qui par sa rotation envoie sur ses broches U, V, ou W laissées en l'air à l'instant T un signal qui permet au contrôleur de déterminer les prochaines phases U, V, ou W à commuter en les tirant vers la masse et/ou le pôle positif de la source d'alimentation via 6 transistors de puissance (MOSFET généralement).

La séquence de démarrage d'un moteur sans charbon consiste en la commutation suivant une séquence ou de façon plus ou moins aléatoire les phases UVW afin d'initier une première rotation. Si c'est réussi, le moteur retourne au contrôleur un signal EMF plus ou moins stable qui permet comme dit de commuter les bonnes phases à l'instant T (vitesse de rotation du moteur, position angulaire exacte), et du coup arriver au ralenti moteur, puis effectuer le maintient de la consigne utilisateur (via cette boucle BEMF -> algoritme -> commutation des phases), consigne souvent obtenue à partir d'un signal PWM d'un récepteur R/C ou d'un BUS spécifique (mais peu importe).

Forcément comme indiqué par d'autres, même si ça semble fonctionner plus ou moins bien, un controleur de moteur sans charbons doit être connecté à un seul moteur sans charbons.

Le contrôleur de moteur fait varier la vitesse du moteur, par exemple accélérer, uniquement en envoyant une largeur d'impulsion PWM plus grande sur les transistors MOSFET connectés aux phases UVW, et c'est le rotor du moteur qui du coup arrive plus vite à la prochaine position angulaire du fait du courant plus important, qui envoie au contrôleur sa nouvelle position via le signal EMF, qui "demande" au contrôleur d'effectuer une nouvelle commutation des phases, ... et ainsi de suite. C'est une boucle d'asservissement qui certaines fois est ouverte, ou fermée.


Dans tous les cas, le contrôleur de moteur sait exactement la position du rotor.


Mais, on peut faire tourner un moteur brushless sans tout ça, en commutant bêtement les phases suivant une séquence. Mais vous ne pourrez en tirer quasiment aucune puissance puisque le moteur décrochera dès qu'il y aurra une charge sur le rotor.


Si vous souhaitez des infos j'avais commencé à fabriquer un prototype de contrôleur de moteur sans charbon il y a quelques années, j'ai pas eu trop de temps pour poursuivre son développement mais ça peut aider comme base :
Image
Image

Si vous souhaitez des infos ça peut éventuellement vous aider afin d'asservir vos moteurs ?