Contrôle moteur
Le contrôle moteur est le processus de régulation de la vitesse, du couple, de la position et d'autres caractéristiques visant à améliorer les performances et optimiser l'efficacité énergétique. Représentant environ 45 % de la consommation mondiale d'électricité, les moteurs électriques font partie intégrante des systèmes de traction, des transmissions industrielles, des installations de chauffage et de climatisation (HVAC) résidentielles et commerciales, ainsi que d'autres applications, ce qui fait du contrôle moteur une priorité.
Les algorithmes de contrôle de moteurs conventionnels servent de base au développement d'algorithmes de contrôle de moteurs électriques, notamment :
- Le contrôle scalaire : également appelée contrôle tension/fréquence, cette méthode de contrôle moteur en boucle ouverte maintient un rapport tension/fréquence constant dans les moteurs AC, assurant ainsi un contrôle de base de la vitesse.
- La commande vectorielle : cette technique de contrôle moteur en boucle fermée utilise la commande vectorielle. Elle s'appuie sur les transformées de Clarke et de Park pour isoler et gérer les composants magnétiques et de production de couple, des courants de moteur à courant alternatif, permettant ainsi un contrôle précis de la vitesse et du couple.
- Le contrôle direct du couple : cette technique facilite l'ajustement dynamique du couple et du flux, sans transformations complexes, ce qui la rend adaptée aux applications nécessitant une réponse rapide du couple.
Développement de systèmes de contrôle moteur avec MATLAB et Simulink
Avec MATLAB® et Simulink®, les ingénieurs en contrôle moteur conçoivent des algorithmes de contrôle moteur, simulent le comportement du système et affinent ses performances grâce à des tests temps réel. Cette approche leur permet de déterminer l'adéquation des designs de contrôleurs de moteurs électriques et de réduire le temps et le coût de développement des algorithmes avant de passer aux tests hardware onéreux.
Le développement de systèmes de contrôle moteur comprend plusieurs étapes, allant du design d'algorithmes de contrôle moteur à leur implémentation sur un microcontrôleur ou un FPGA.
Modélisation de systèmes physiques
La modélisation de moteurs et de composants d'électronique de puissance est une pratique d'ingénierie reconnue pour le développement de systèmes de contrôle moteur. Simscape Electrical™ supporte plusieurs niveaux de fidélité en matière de modélisation de moteurs, permettant aux ingénieurs d'utiliser des simulations pour sélectionner le niveau de détail approprié, pour diverses applications, telles que le dimensionnement de moteurs et le design de systèmes de contrôle de moteurs de véhicules électriques.
Développement d'algorithmes
Le design et l'affinement d'algorithmes de contrôle permet une gestion précise de la vitesse, du couple et de la consommation d'énergie dans les moteurs électriques. Motor Control Blockset propose des blocs prédéfinis optimisés et des exemples de référence pour accélérer le développement et le déploiement de techniques de contrôle moteur avec et sans capteur.
Réglage de contrôleurs
L'optimisation des paramètres du contrôleur permet d'obtenir le comportement souhaité du système. Simulink Control Design™ propose des outils tels que FOC Autotuner, le réglage PID automatique et l'estimation de la réponse en fréquence, facilitant l'efficacité du réglage ainsi que l'optimisation des performances de la réponse et de la stabilité du système.
Génération de code
La génération de code transforme les algorithmes de contrôle vérifiés en code exécutable pour le déploiement sur hardware. Vous pouvez exploiter le prototypage rapide des systèmes de contrôle et les simulations Hardware-in-the-Loop (HIL) sur une cible temps réel en générant du code C, C++ ou HDL pour les algorithmes de contrôle moteur afin de valider les contrôleurs de moteurs. Embedded Coder® génère du code C et C++ optimisé à partir de modèles Simulink, avec des Hardware Support Packages facilitant le déploiement automatique sur C2000, STM32, Infineon Aurix et d'autres MCU. Pour cibler les FPGA et les SoC, HDL Coder™ facilite la génération et le déploiement de code sur les dispositifs Intel, Xilinx et Microchip.
Applications de contrôle moteur
Les exemples de référence de Motor Control Blockset™ couvrent également les stratégies avancées de contrôle moteur telles que le contrôle prédictif, la commande par rejet actif de perturbations et le Reinforcement Learning, pour accélérer votre processus de développement.
Contrôle prédictif
Le contrôle prédictif (MPC) améliore la commande vectorielle par rapport au PID en gérant efficacement les contraintes telles que la saturation du couple et les limites de tension, tout en tenant compte du couplage croisé entre les boucles pour optimiser les objectifs de contrôle. Vous pouvez évaluer le contrôleur prédictif en le simulant en boucle fermée avec le système physique du moteur dans Simulink à l'aide de l'exemple de référence.

Intégration de contrôleurs prédictifs dans une commande vectorielle pour améliorer le contrôle moteur. (Consulter la documentation.)
Commande par rejet actif de perturbations
Afin d'améliorer la robustesse du système, vous pouvez utiliser la commande par rejet actif de perturbations (ADRC) pour compenser les perturbations et assurer la stabilité dans des conditions variables. Alors que le réglage PID nécessite un effort considérable, l'ADRC propose une solution de contrôle non linéaire qui offre de bonnes performances tout en étant plus simple à configurer et à ajuster. Le bloc Active Disturbance Rejection Control simplifie l'implémentation de l'ADRC, ce qui facilite l'application de la technique par les débutants.

Implémentation de la commande par rejet de perturbations (ADRC) dans Simulink Control Design pour optimiser le contrôle moteur. (Consulter la documentation.)
Reinforcement Learning
Le Reinforcement Learning offre une approche dynamique du contrôle en apprenant à partir des interactions avec l'environnement, ce qui en fait une alternative solide aux contrôleurs traditionnels tels que PID, en particulier lorsqu'il est difficile de caractériser les moteurs et leurs conditions de fonctionnement. Malgré son potentiel, le Reinforcement Learning nécessite des ressources de calcul et un temps d'apprentissage importants. Dans Simulink, le bloc Reinforcement Learning Agent facilite la configuration d'un contrôleur de Reinforcement Learning pour la commande vectorielle, permettant aux ingénieurs d’exploiter cette technique avancée.
En exploitant des blocs prédéfinis et des exemples de référence avec Simulink, les ingénieurs peuvent développer des stratégies de contrôle et des modèles de moteur précis pour relever efficacement les défis du développement de systèmes de contrôle moteur.
Vidéos
Exemples
Références logicielles
Voir aussi: entraînements moteur et moteurs à traction, contrôle de moteur BLDC, contrôle de la vitesse des moteurs à induction, méthode du vecteur spatial, Simulink Real-Time, Commande vectorielle