Retour à Blogue

Comment simuler des circuits électroniques de puissance sur un FPGA avec des pas de temps de l'ordre de la nanoseconde

Électronique de puissance

08 / 23 / 2026

Comment simuler des circuits électroniques de puissance sur un FPGA avec des pas de temps de l'ordre de la nanoseconde

Principaux enseignements

  • La précision d'un convertisseur rapide est déterminée par l'événement de commutation le plus court ; le choix du pas de temps dépend donc du temps de commutation.
  • Le fait de transférer l'étage de puissance à découpage vers un FPGA permet de récupérer la résolution perdue par un solveur CPU entre deux échantillons fixes.
  • Les meilleurs résultats s'obtiennent grâce à un partitionnement rigoureux, à une mise en correspondance précise des états, à une mise à l'échelle numérique minutieuse et à des contrôles de synchronisation en boucle fermée.

La simulation avec un pas de temps de l'ordre de la nanoseconde est importante, car un convertisseur rapide ne conserve sa précision en temps réel que si son étage de commutation fonctionne sur un FPGA plutôt que sur un processeur.

Les équipes d’électronique de puissance atteignent cette limite dès que la vitesse des composants augmente. Les ventes mondiales de voitures électriques ont atteint près de 14 millions d’unités en 2023, soit une hausse de 35 % par rapport à 2022, ce qui signifie que davantage d’onduleurs de traction, de chargeurs embarqués et d’étages CC/CC font désormais l’objet de boucles de validation serrées. Un solveur sur processeur fonctionne encore pour les modèles de système plus lents, mais le comportement des convertisseurs au niveau des commutateurs est perdu lorsque la commutation se produit entre des échantillons logiciels discrets. On récupère cette résolution perdue en implémentant l’étage de puissance sur une matrice FPGA et en maintenant la boucle de contrôle synchronisée en temps réel.

La commutation rapide définit le pas de temps que votre solveur doit respecter

Votre pas de temps doit être suffisamment court pour détecter chaque transition de commutation qui modifie l'état du circuit. Cette limite dépend de la fréquence de commutation, du temps mort et du positionnement des fronts. Un solveur dont la fréquence d'échantillonnage est inférieure à celle de ces événements les rendra flous et déformera la réponse du convertisseur. La précision d'un convertisseur de puissance dépend avant tout de la résolution temporelle, et non de la qualité moyenne de la forme d'onde.

Un onduleur à deux niveaux fonctionnant à 100 kHz ne dispose que de 10 microsecondes par période de commutation complète. Le temps mort au sein de cette période peut être réduit à quelques dizaines de nanosecondes, et le sens du courant peut s'inverser pendant ce court laps de temps. Vous ne détecterez pas ce changement si votre solveur ne vérifie le réseau que toutes les quelques microsecondes. La forme d'onde peut encore paraître régulière alors que l'événement de commutation est déjà erroné.

Les semi-conducteurs à large bande interdite accentuent encore cette pression, car ils peuvent commuter jusqu’à 10 fois plus vite que les dispositifs en silicium. Cela oblige à abandonner les modèles moyennés au profit d’une exécution tenant compte de chaque commutation lors de la validation des convertisseurs. On ne détermine plus la durée du pas de temps en fonction d’une onde sinusoïdale ou d’une estimation de l’ondulation de sortie. On la détermine en fonction de l’événement le plus court qui modifie les pertes, le courant ou la contrainte subie par le dispositif.

« La précision d'un convertisseur de puissance dépend avant tout de la résolution temporelle, et non de la qualité moyenne de la forme d'onde. »

Les solveurs CPU ne détectent pas les événements du convertisseur entre les points d'échantillonnage fixes

Un solveur CPU ne prend pas en compte les détails de commutation, car il évalue le modèle à des instants d'échantillonnage ordonnés plutôt qu'à chaque front matériel. Les événements qui se produisent entre ces instants sont reconstitués a posteriori. Cette reconstitution lisse les transitoires et masque les effets de commutation de courte durée. Votre contrôleur perçoit alors une installation qui réagit plus tardivement que ne le ferait le convertisseur physique.

Prenons l’exemple d’un demi-pont qui commute pendant un intervalle PWM d’une microseconde, alors que le solveur du système fonctionne à 5 microsecondes. L’état du commutateur change, le chemin de roue libre se déplace et la récupération de la diode commence avant que la mise à jour suivante du processeur n’arrive. Les pics de courant et les dépassements de tension sont alors regroupés en un seul résultat approximatif. Vous pouvez toujours boucler la boucle, mais vous ne pourrez pas vous fier au tableau des contraintes.

Cet écart est particulièrement important lors des commutations brusques, des tests de court-circuit et des sauts d’impulsions. Un processeur est tout à fait capable de modéliser avec précision les états thermiques lents, les charges mécaniques et la logique de supervision, mais il rencontre des difficultés lorsque l’état électrique change plusieurs fois au cours d’un même échantillon. C’est pourquoi les équipes observent souvent des courants moyens stables, mais des pics instantanés erronés. Ce décalage provient généralement de la résolution, et non d’une conception défaillante du système de contrôle.

L'exécution sur FPGA rétablit la résolution de commutation à des pas de temps de l'ordre de la nanoseconde

L'exécution sur FPGA rétablit la résolution de commutation à des pas de temps de l'ordre de la nanoseconde

L'exécution sur FPGA rétablit la résolution, car le réseau de commutation est évalué avec un parallélisme au niveau matériel à chaque impulsion d'horloge. Les mises à jour d'état s'effectuent de manière déterministe, sans attendre un thread logiciel. Des pas de temps de l'ordre de la nanoseconde deviennent ainsi réalisables pour l'étage électrique en conditions de boucle fermée. C'est la raison principale pour laquelle la simulation de l'électronique de puissance sur FPGA reste en phase avec la physique des convertisseurs rapides.

Un convertisseur triphasé illustre clairement ce gain. Chaque phase peut changer d’état pratiquement au même moment, et chaque voie influence les autres par le biais du bus de courant continu et des courants de la machine. Un processeur a tendance à exécuter ces calculs en série, tandis que la structure d’un FPGA traite plusieurs voies simultanément. On obtient ainsi une synchronisation qui correspond à la logique de commutation, plutôt qu’une synchronisation dictée par la planification du processeur.

C'est également là que la méthode de mise en œuvre prime sur le marketing technique. OPAL-RT eHS gère le réseau électronique de puissance sur le FPGA, ce qui permet de résoudre les événements de commutation en temps réel au lieu qu'ils soient lissés par la moyenne. Cela permet de maintenir le contrôleur en test en boucle fermée tout en garantissant que l'installation respecte le temps mort, la commutation des dispositifs et les changements d'état topologique. Une fois que le réseau de commutation est résolu à cette vitesse, il devient beaucoup plus facile de se fier au reste du modèle.

Placer l'étage de puissance à découpage sur la matrice FPGA

La meilleure répartition consiste à placer l'étage de puissance à commutation sur le FPGA et à laisser les sous-systèmes plus lents sur le processeur. La commutation électrique nécessite un pas de temps très fin, ce qui n'est pas le cas des états thermiques, des arbres mécaniques et de la logique de supervision. Une architecture mixte permet de placer chaque partie du modèle sur le matériel le mieux adapté à ses besoins en termes de synchronisation et à ses limites de latence.

Un modèle d'entraînement de moteur constitue un exemple utile. Le pont onduleur et le circuit intermédiaire à courant continu doivent être implémentés sur le FPGA, car ils réagissent à chaque front de signal. La dynamique magnétique du moteur peut être traitée par un solveur plus lent si sa bande passante est inférieure à celle des événements de commutation. Votre boucle de commande perçoit toujours une installation cohérente, car les domaines rapides et lents échangent des signaux à des limites fixes.

Cette répartition permet également de concentrer les ressources du FPGA sur la partie qui en tire le meilleur parti. Tenter de transférer toutes les équations du modèle sur le FPGA peut entraîner un gaspillage de logique et de mémoire sans pour autant améliorer le résultat. Il est préférable de consacrer les ressources matérielles aux états des commutateurs, aux mises à jour du réseau et aux E/S à faible latence. Le reste doit être traité là où la flexibilité du modèle est plus facile à préserver.

Mapper les états discrets des commutateurs en logique compatible FPGA

Les modèles d'électronique de puissance fonctionnent bien sur un FPGA lorsque les positions des commutateurs sont exprimées sous forme d'états discrets avec des règles de mise à jour déterministes. Chaque front de porte doit sélectionner immédiatement un chemin de circuit valide. Une logique de commutation ambiguë entraîne des dérives de synchronisation et des états illégaux lors de la commutation. C'est grâce à un mappage clair des états qu'un schéma peut être transformé en un solveur matériel fiable.

Un simple pied de pont illustre cette méthode. Le dispositif supérieur, le dispositif inférieur, le temps mort et la conduction de la diode doivent être représentés sous forme de conditions explicites, et non sous forme d’indicateurs logiciels dont la synchronisation est approximative. Lorsque des commandes de grille arrivent, la machine à états évalue leur validité, et la conductance du réseau est mise à jour lors du cycle matériel suivant. Cette séquence garantit la cohérence de la protection contre le « shoot-through » et des chemins de roue libre.

Le comportement en cas de défaut requiert la même rigueur. Les déclenchements par désaturation, les portes bloquées et les conditions de circuit ouvert doivent être intégrés dans la logique sous forme de changements d'état directs avec une latence connue. On ne peut pas confier ces cas à un cycle de supervision lent si l'objectif est une simulation à pas de temps de l'ordre de la nanoseconde. Le modèle inspire confiance lorsque chaque événement discret entraîne une conséquence électrique claire.

L'arithmétique en virgule fixe définit la précision sur le FPGA

L'arithmétique en virgule fixe détermine la précision des FPGA, car chaque signal utilise une longueur de mot limitée et un choix de mise à l'échelle. Une mauvaise mise à l'échelle peut entraîner l'écrêtage des pics ou masquer de petites ondulations lors de la quantification. Une bonne mise à l'échelle préserve les événements importants pour le contrôle et la protection sur toute la plage de fonctionnement. Il est nécessaire d'élaborer un plan numérique avant d'évaluer la fidélité des formes d'onde.

Une boucle de courant dotée d’un bus de 1 200 V CC et d’une détection de l’ordre du milliampère ne peut pas se contenter d’une seule échelle choisie à la va-vite. La tension du bus nécessite une marge, tandis que l’erreur de courant requiert une résolution fine à proximité de zéro. En général, on commence par ajuster les longueurs de mot en fonction des variables internes les plus sensibles. Cette brève liste de contrôle permet d’aborder cette tâche de manière rigoureuse.

  • Définir les plages en fonction des transitoires les plus défavorables plutôt qu'en fonction des conditions nominales en régime permanent.
  • Marge de réserve pour les dépassements, les défauts et le décalage des capteurs.
  • Utilisez davantage de bits lorsque l'erreur de courant influe sur l'action de régulation.
  • Vérifier l'augmentation de la charge dans les filtres et les intégrateurs.
  • Comparer les résultats en virgule fixe à une référence de haute précision.

Ces vérifications sont importantes car les erreurs de quantification se cachent dans des zones qui semblent stables. Un convertisseur peut satisfaire aux tests de puissance moyenne tout en faussant les franchissements de seuil dans la logique de protection. Il s’agit de valider autant la synchronisation des fronts que l’amplitude. Le format numérique fait partie intégrante du modèle de l’installation ; il mérite donc la même attention que la topologie et le pas de temps.

Choisissez une carte FPGA adaptée à la taille du modèle

La carte FPGA idéale est celle qui respecte largement les contraintes de synchronisation, de logique, de mémoire et d’E/S de votre modèle. La vitesse du dispositif est importante, mais les ressources exploitables le sont davantage. Un petit modèle sur une grande carte représente un gaspillage de budget. À l’inverse, un modèle surchargé sur une petite carte ne permettra pas de respecter les contraintes de synchronisation une fois que la logique de commutation et les interfaces auront été compilées.

Un onduleur raccordé au réseau doté de quelques canaux PWM présente des exigences très différentes de celles d'un banc d'essai à convertisseurs multiples équipé de nombreux capteurs, d'entrées de défaut et de sorties à faible latence. Avant de choisir le matériel, vous devez estimer le nombre de commutateurs, la complexité de la mise à jour des états, l'utilisation de la mémoire et le débit d'E/S. La liste de contrôle ci-dessous permet d'orienter votre choix de manière concrète plutôt que vague.

Contrôle de sélection Ce que cela vous apprend
Fréquence de commutation prévue et temps mort Cela permet de définir l'objectif de synchronisation minimal et d'indiquer la marge d'horloge dont votre carte a besoin.
Nombre de dispositifs à semi-conducteurs dans la topologie Ce chiffre indique la quantité de logique que le réseau de commutation consommera une fois que chaque état aura été explicitement mappé.
Mémoire nécessaire pour les paramètres et l'historique des états Cela permet de déterminer si la mémoire intégrée est suffisante ou si la conception mettra à rude épreuve les ressources de stockage.
Nombre d'E/S et latence pour les capteurs et la synchronisation Cela permet de vérifier si la carte est capable de maintenir la synchronisation du contrôleur sans introduire de retard qui masquerait les transitoires.
Marge de croissance du modèle pendant la validation Cela vous permet d’éviter de concevoir une carte adaptée au test d’aujourd’hui, mais qui empêcherait de détecter le prochain cas de défaillance ou de prendre en charge une branche de convertisseur supplémentaire.

Le choix de la carte est avant tout un choix de budget en termes de synchronisation. Vous achetez suffisamment de matériel déterministe pour conserver les événements électriques avec la résolution requise par votre convertisseur. Si vous dimensionnez uniquement pour un fonctionnement nominal, le premier cas de défaillance supplémentaire mettra en évidence cette lacune. Un bon dimensionnement laisse une marge pour la fermeture temporelle, et pas seulement pour la compilation du modèle.

Vérifier la précision de la synchronisation à l'aide de tests matériels en boucle fermée

La fidélité temporelle est vérifiée lorsque le convertisseur simulé réagit aux commandes du contrôleur en respectant le même séquencement et la même latence que ceux attendus d'un matériel. Les tests en boucle fermée permettent de détecter rapidement les fronts manqués, les mises à jour d'état retardées et les problèmes de mise à l'échelle numérique. Cette étape transforme un modèle rapide en un instrument de test fiable. Vous vérifiez la causalité, et pas seulement la forme de la courbe.

Un test pratique commence avec une branche PWM, une mesure de courant et un circuit de protection. Vous comparez la synchronisation des grilles, la réponse en courant et le comportement de déclenchement à un modèle de référence ou à une capture matérielle mesurée. La gigue, un retard à la coupure ou l'absence d'effet de temps mort apparaîtront immédiatement dans ce petit montage. En commençant à petite échelle, le débogage reste centré sur un seul circuit électrique bien défini.

Cette approche s'adapte mieux que la recherche de jolis graphiques issus d'un grand modèle intégré. Une fois que l'étage rapide se comporte correctement, le reste de l'installation peut être ajouté en toute confiance, car les fondements de la commutation sont solides. OPAL-RT convient parfaitement à ce type de travail lorsque vous avez besoin que le FPGA gère l'étage de puissance avec des pas de temps de l'ordre de la nanoseconde, tandis que le test global reste en boucle fermée et déterministe. Une bonne simulation de convertisseur repose moins sur la puissance de calcul brute que sur la capacité à maintenir chaque événement de commutation critique là où la physique le prévoit.

« Une bonne simulation de convertisseur ne repose pas tant sur la puissance de calcul brute que sur la capacité à replacer chaque événement de commutation critique à l’endroit où la physique lui attribue sa place. »