🛠 Commande de Moteur BLDC avec le HPM5100
Objectifs
Ce tutoriel vise à configurer le HPM5100 pour générer des signaux PWM triphasés destinés à la commande d'un moteur brushless (BLDC). Nous exploiterons la capacité native du microcontrôleur à intégrer la conversion analogique et la protection de puissance, réduisant ainsi le besoin de composants externes. L'objectif est de comprendre l'interaction entre le générateur PWM et les entrées analogiques dédiées.
Matériel nécessaire
- Carte de développement HPM5100 (boîtier QFN ou LQFP).
- Un moteur BLDC triphasé (ou une charge resistive équivalente pour les tests initiaux).
- Un pont de puissance triphasé compatible (MOSFETs ou IGBTs).
- Un oscilloscope pour visualiser les signaux.
- Alimentation externe pour le moteur (tension conforme au moteur).
- Câblage de puissance et de commande.
Étapes
- Configuration de l'environnement : Assurez-vous que le SDK HPMicro (version 1.13.0+) est installé et que le compilateur RISC-V est accessible.
- Initialisation du module PWM : Dans votre code, configurez les 6 canaux PWM principaux nécessaires à un pont triphasé (H1, H2, H3, L1, L2, L3). Le HPM5100 offre 32 canaux, ce qui permet une grande flexibilité. Configurez la fréquence de commutation (ex: 20 kHz) et le mode de génération de forme d'onde (centré ou bord). Utiliser les commandes bas-niveau du pilote PWM du SDK pour définir le registre de période et les registres de comparaison.
- Mise en place de la commutation : Implémentez une séquence de commutation logique (saut de secteur) pour alimenter les phases dans l'ordre correct. Vous pouvez utiliser la fonctionnalité de capture d'entrée si des capteurs de Hall sont présents, ou générer une commande à senseurless basée sur la force contre-électromotrice (BEMF).
- Utilisation des périphériques analogiques : Configurez un des quatre ADC SAR 16 bits pour lire le courant de phase ou la tension du bus DC. Le HPM5100 permet un échantillonnage à 2 MSPS, suffisant pour des boucles de régulation rapides. Activez un des amplificateurs opérationnels PGA pour amplifier le signal de shunt de courant avant l'ADC, éliminant ainsi le besoin d'un amplificateur externe.
- Protection et sécurité : Configurez les comparateurs analogiques intégrés pour surveiller les surcourants. Si la tension sur le shunt dépasse un seuil, le comparateur peut déclencher une interruption ou désactiver le PWM via le module de protection matériel, assurant la sécurité du moteur.
- Compilation et flash : Compilez le projet et transférez le binaire sur la carte HPM5100 via l'interface USB OTG ou JTAG.
Vérification
Ouvrez un oscilloscope et connectez les sondes aux sorties de commande des MOSFETs (H1 à L3). Vous devez observer des signaux PWM à 50% de rapport cyclique (ou selon votre configuration) avec un temps mort (dead-time) inséré automatiquement si configuré. Vérifiez que les signaux ne se chevauchent pas. Mesurez la tension de sortie du PGA sur l'entrée de l'ADC pour confirmer que le signal est bien amplifié et centré. Si le moteur tourne, mesurez le courant avec une pince ampèremétrique pour confirmer la régulation.
Pour aller plus loin
Explorez l'utilisation du CAN FD (8 Mbps) pour envoyer les données de télémétrie du moteur vers un PC. Intégrez FreeRTOS pour gérer la tâche de contrôle en temps réel parallèlement à la communication USB. Testez le mode haute performance (480 MHz) pour augmenter la fréquence de régulation de la boucle de courant.
Autres tutoriels pour cette carte
- HPM5100 : Premier branchement et mise en route
- Utiliser l'USB OTG comme stockage de masse
- HPM5100 : Premier branchement et mise en route
- Pilotage GPIO et Lecture Capteur Analogique sur HPM5100
- HPM5100 : Premier branchement et mise en route avancée
- HPM5100 : Maîtrise avancée des E/S GPIO et interfaces capteurs