R2dev.fr
R&R Developpements
en es

Driver de Brushless

Le driver "home made" nous permettra de piloter et d'asservir les 4 moteurs brushless qui propulserons le drone.

L'asservissement requiert une commande précise des moteurs, ainsi que la connaissance de leur vitesse de rotation. Ces deux choses sont impossibles avec des drivers du commerce. Nous partons donc sur une commande à base de microcontrôleur et sur une structure de ponts en H pour piloter les 3 phases qui composent un moteur brushless.

La carte supporte un dsPIC30F4011 et 3 drivers de MOSFETs MCP14628. Les MOSFETs de puissance choisis sont des IRFR3710 supportant une intensité de 42A en continu.

Pour le design de cette carte, nous sommes repartis d'une note d'application Microchip (AN901) intitulée Using the dsPIC30F for Sensorless BLDC Control. Cependant nous y avons apporté une amélioration nous dispensant de l'utilisation de 3 entrées analogiques sur le dsPIC. Je reviendrai sur ce point un peu plus tard.


                
Schéma de la carte V1


Après de multiples problèmes, nous avons finalement une carte driver de brushless en état de fonctionnement. Nous avons effectué les modifications suivantes :
  • l'ajout de résistances entre les sorties des drivers et les grilles des MOSFETs
  • l'ajout de fortes capacités au niveau du 5V des drivers, car les appels de courant sont très importants
  • l'ajout d'une très grosse capacité à proximité de la partie puissance afin d'être capable de fournir l'énergie nécessaire lors de l'alimentation d'un phase, mais aussi de récupérer  l'énergie fournie par l'inductance lors de l'ouverture des transistors.
Malgré l'effet extrêmement inductif du moteur, les diodes de roues libres dans les transistors suffisent à limiter la sur-tension. L'ajout d'autres diodes, même rapides, ne change que très peu le signal.

Nous travaillons actuellement sur la synchronisation de l'algorithme de génération des signaux de commande avec le moteur. Cet algorithme est synchronisé sur les signaux "Back EMF" du moteur, renvoyés lorsqu'un aimant passe devant une phase non pilotée.
La méthode proposée par Microchip consistait à récupérer les 3 signaux analogiques avec un ADC et scruter un passage par zéro. L'amélioration que nous y avons apporté consiste à mettre des AOP sur ces retours, lesquels ressortent un signal logique 0 ou 1 selon le signe de la tension.
Ces AOP sont reliés aux pattes "Change Notification" du PIC, ce qui nous permet de détecter par interruption un passage par zéro du signal "Back EMF".

Cette méthode fonctionne très bien pour la synchronisation de l'algorithme sur la vitesse du moteur, bien qu'il nous reste encore un peu de travail pour le démarrage du moteur (vitesse nulle, donc pas de signaux "Back EMF").




© R&R 2017