# Science ouverte et collaborative pour l'élaboration d'un banc automatisé de caractérisation de pertes en commutation par opposition

Nicolas C. Rouger, Luiz Fernando Lavado Villa, Matthieu Masson, Pauline

Kergus, Joseph Kemdeng, Lorenzo Leijnen, Jean Alinei, Adrien Colomb, Ayoub Farah Hassan, Arnauld Biganzoli

<figure><img src="image_1.png" /></figure>

## ► To cite this version:

Nicolas C. Rouger, Luiz Fernando Lavado Villa, Matthieu Masson, Pauline Kergus, Joseph Kemdeng, et al.. Science ouverte et collaborative pour l'élaboration d'un banc automatisé de caractérisation de pertes en commutation par opposition. Symposium de Génie Électrique SGE 2025, Jul 2025, Toulouse, France. hal-05482102

HAL Id: hal-05482102

https://hal.science/hal-05482102v1

Submitted on 28 Jan 2026

HAL is a multi-disciplinary open access
archive for the deposit and dissemination of sci-
entific research documents, whether they are pub-
lished or not. The documents may come from
teaching and research institutions in France or
abroad, or from public or private research centers.

L'archive ouverte pluridisciplinaire HAL, est
destinée au dépôt et à la diffusion de documents
scientifiques de niveau recherche, publiés ou non,
émanant des établissements d'enseignement et de
recherche français ou étrangers, des laboratoires
publics ou privés.

<figure><img src="image_2.png" /></figure>
# Science ouverte et collaborative pour l'élaboration d'un banc automatisé de caractérisation de pertes en commutation par opposition

Nicolas ROUGER<fnref n="1" />, Luiz VILLA<fnref n="2" />,<fnref n="3" />, Matthieu MASSON<fnref n="1" />,<fnref n="4" />, Pauline KERGUS<fnref n="1" />, Joseph KEMDENG<fnref n="1" />, Lorenzo LEIJNEN<fnref n="1" />,<fnref n="4" />, Jean ALINEI<fnref n="3" />, Adrien COLOMB<fnref n="1" />, Ayoub FARAH-HASSAN <fnref n="2" />,<fnref n="3" />, Arnauld BIGANZOLI<fnref n="1" />

**RESUME** – La mesure des pertes en commutation des transistors de puissance s'effectue généralement par la mesure dite de double impulsion. La mesure par opposition de deux cellules de commutation constitue une méthode complémentaire, plus précise mais indirecte. Néanmoins, la mise en oeuvre de cette méthode peut être plus complexe, et nécessite des étapes de calibration et un pilotage complet, avec la problématique de la gestion thermique. Dans ce contexte, nous avons proposé d'aborder ce sujet par une action de science ouverte et collaborative, d'abord sous la forme d'un hackathon de 2 jours, puis des séances mensuelles ouvertes. Plus de 20 participant.e.s ont contribué sur les 2 jours du hackathon, suivi de séances mensuelles pour les personnes souhaitant poursuivre ensemble. Cela a permis de mettre en place un banc automatisé, en science ouverte, incluant la génération des ordres de commutation, la configuration et le pilotage des instruments de mesure, et la partie hardware. Nous présentons et partageons ici nos travaux et cette approche ouverte.

*Mots-clés – Caractérisation, pertes, commutation, instrumentation, automation, science ouverte.*

## 1. INTRODUCTION

Le verrou scientifique qui a été l'objet de cette science ouverte et collaborative est centré sur la mesure de pertes en commutation, son automatisation et sa précision, incluant les aspects hardware, de commande et d'instrumentation. A l'image des travaux passés tels que [1, 2, 3, 4], la mesure des pertes en commutation par la mise en opposition de deux cellules de commutation permet une mesure précise mais indirecte : les 2 cellules doivent fonctionner en régime permanent, avec la mesure de la puissance moyenne fournie par l'alimentation DC. Ceci induit un fonctionnement à point nominal, générateur de pertes et alors d'auto-échauffement des semiconducteurs. Il est donc indispensable d'effectuer cette mesure le plus rapidement possible, d'où l'idée d'une automatisation. D'autre part, les ordres de commutation doivent être synchronisés, précis, et avec une résolution qui tend à se réduire, particulièrement dans le cas de transistors de puissance SiC et GaN. La résolution temporelle pour les temps morts et la régulation éventuelle du courant lors de la mise en opposition doit être particulièrement réduite, par exemple à l'échelle de la nanoseconde.

Ainsi, la mise en œuvre d'un tel banc de mesure automatisé des pertes en commutations est une tâche complexe, nécessitant de nombreuses compétences. Il peut être difficile de maîtriser tous les aspects nécessaires à l'instrumentation, la commande, la métrologie, les topologies de convertisseurs statiques, l'automatisation. Ce constat est particulièrement avéré pour les doctorant.e.s, mais aussi pour les ingénieurs et chercheurs de domaines connexes. Le travail collaboratif en science ouverte

que nous avons mené nous a permis de rassembler un groupe de travail permettant de s'attaquer à ce problème. Ce travail a été initié par Nicolas Rouger et Luiz Villa qui, suite à des échanges préliminaires sur le sujet, ont préparé puis conduit 2 jours de hackathon au printemps 2024. Ces 2 jours ont regroupé plus de 20 participant.e.s (figure 1), et ont été suivis par des séances mensuelles pendant 8 mois, avec celles et ceux qui souhaitaient aller plus loin et finir les travaux.

<figure><img src="image_3.png" /><figcaption>FIG. 1. Une aventure humaine pour la science collaborative et ouverte.</figcaption></figure>

L'article est organisé comme suit : la section 2 décrit plus en détails le fonctionnement du banc automatisé mis en oeuvre pour la mesure de pertes en commutation par opposition. La section 3 présente quelques résultats expérimentaux qui ont d'ores et déjà pu être obtenus. Les conclusions et perspectives de ce travail sont données en section 5.

## 2. ENJEUX TECHNIQUES ET SCIENTIFIQUES

La figure 2 présente les 3 aspects considérés pour la mise en oeuvre du banc de mise en opposition et la mesure automatisée des pertes en commutation :

1. Superviseur et instrumentation,

2. Microcontrôleur et génération des ordres de commandes et des signaux de déclenchement,

3. Hardware de puissance, incluant les commandes rapprochées et leurs alimentations.

Ces différents volets sont détaillés dans les paragraphes suivants et fonctionnent ensemble comme indiqué sur la Figure 3. Un fishier de configuration définit les séquences de test. Chaque séquence correspond à un point de fonctionnement (défini par la tension $V_{DC}$), pour lequel un balayage sur le déphasage puis sur les rapports cycliques sera effectué. Un autre niveau de balayage a été fait sur la fréquence de commutation.

<footnote n="1">¹Laplace, CNRS, INPT, Université de Toulouse, Toulouse, France.</footnote>

<footnote n="2">²LAAS-CNRS, Toulouse, France.</footnote>

<footnote n="3">³Owntech fondation.</footnote>

<footnote n="4">⁴NXP Semiconductors, Toulouse, France.</footnote>
Lors du hackathon, nous avons défini un cahier des charges, avec les contraintes pré-identifiées, et les participant.e.s se sont répartis sur les 3 aspects scientifiques et techniques. La contrainte que nous nous sommes fixés était d'utiliser et dévlopper uniquement des outils en science ouverte, open source, à l'exception de l'utilisation de l'outil LTspice pour les simulations électriques.

<figure><img src="image_4.png" /><figcaption>FIG. 2. Schéma de principe de la méthode d'opposition, instruments et organes principaux associés. Les deux modes de pilotage sont présentés.</figcaption></figure>

<figure><img src="image_5.png" /><figcaption>FIG. 3. Fonctionnement du banc automatisé de mesure de pertes en commutation par opposition.</figcaption></figure>

## 2.1. Superviseur et contrôle automatique des appareils

Le superviseur en Python est en charge de la gestion complète et automatisée des essais. Il assure la configuration et pilotage des instruments en SCPI via PyVISA comme suit :

- **Source** : la source de tension DC est activée puis augmentée progressivement en rampe, stabilisée puis déchargée et coupée;

- **Mesures** : deux multimètres numériques servent à la mesure du courant moyen DC et de la tension moyenne DC (et par suite de la puissance moyenne), stockée dans leur mémoire pour réduire les temps de communication, et l'oscilloscope utilise sa mémoire segmentée afin d'acquérir rapidement chaque séquence d'essai.

Afin d'assurer la synchronisation des commandes et des mesures venant de multiples appareils, le superviseur ne fait que préparer la configuration de chaque instrument de façon séquentielle, sans déclencher les mesures. C'est un signal de synchronisation commun hardware qui déclenche l'acquisition des signaux à l'oscilloscope, les mesures, qui sont stockées de façon autonome dans les mémoires des appareils. A la fin de l'essai le contenu des mémoires est transférée de façon séquentielle et enregistré sous un format brut pour être traité.

Un des enjeux clés du superviseur est d'assurer une grande précision des mesures moyennes, tout en réduisant le temps

de fonctionnement du convertisseur, et donc la montée éventuelle en température des composants de puissance par autoéchauffement.

**Remarque (Création du fichier de configuration) :** Pour aider à préparer, automatiser et traiter les essais, un script dédié à la génération de fichiers de configuration JSON<fnref n="1" /> a été créé. Cela permet notamment la préparation d'un balayage sur plusieurs points de fonctionnement (valeur(s) de tension de bus DC, valeur(s) de courant max, valeur(s) de fréquence de commutation et autres paramètres tels que temps mort). Il est également possible de configurer un point de fonctionnement spécifique pour la validation des formes d'ondes avant l'essai automatique.

## 2.2. Génération automatique des signaux de commande

Pour chaque point de fonctionnement considéré dans le fichier de configuration, la séquence de test consiste à utiliser deux modes de pilotage pour extraire séparément les pertes de blocage et d'amorçage :

- Ecart de déphasage entre les deux cellules pour un rapport cyclique fixe et identique.

- Ecart de rapport cyclique entre les deux cellules pour un déphasage nul.

Dans le travail effectué, chaque test d'un écart (de déphasage ou de rapport cyclique) a une durée fixe durant laquelle plusieurs mesures sont effectuées. L'implémentation est réalisée grâce au contrôleur de puissance OwnTech (SPIN), qui permet de générer les signaux synchronisés sur la base d'une horloge de référence pouvant aller jusqu'à 5.4 GHz. Au début du hackathon, il n'était pas encore possible de piloter la génération de signaux par une interface unique en Python et utilisant la communication série déjà en place.

## 2.3. Aspects hardware

La figure 4 présente la mise en opposition de 2 cellules de commutation, initialement sans transistors de puissance ni alliements isolées des quatre commandes rapprochées (cartes d'évaluation de demi-pont).

<figure><img src="image_6.png" /><figcaption>FIG. 4. Photographie du banc mis en oeuvre.</figcaption></figure>

<footnote n="1">1. Le format JSON (JavaScript Object Notation) est un format structuré utilisé pour stocker des données. Il contient des paires clé-valeurs avec pour avantage d'être lisible par l'homme et par la machine, facilitant le traitement informatique.</footnote>
Afin de pouvoir être réalisable dans le cadre d'un hackathon initial sur 48 heures, nous ne pouvions envisager la réalisation complète d'un hardware de puissance. Cependant, nous avions jugé important d'aborder le choix des composants, leurs commandes, et la soudure de composants dans le cadre de ce travail. Aussi, nous avons retenu en amont une carte d'évaluation de puissance, pouvant fonctionner à haute tension (600 V) et fort courant (> 20 A). La carte d'évaluation est EVAL-1ED3122Mx12H (Infineon), incluant une cellule de commutation "half bridge", avec les drivers isolés, mais sans les composants de puissance (T0-247-3) ni les alimentations isolées. Ces cartes d'évaluation sont plutôt destinées à des essais de double impulsion et non pas de commutation. L'objet du hackathon a alors été dans un premier temps de souder les composants manquants et mettre en place une simulation de l'architecture sur LTspice. Le choix a été fait d'utiliser des MOSFET Si (200 V, 20 A), afin d'avoir des commutations rapides même pour des tensions de bus DC réduites à 48 V. Cependant, il est possible de remplacer les composants, et plus globalement, le hardware n'est ici qu'un outil pour la mise en place complète de l'approche générique. Par la suite, le banc a été amélioré lors des séances mensuelles, pour donner la figure 4.

# 3. RÉSULTATS EXPÉRIMENTAUX

A ce stade, nous avons pu valider le fonctionnement du hardware, ainsi que la génération automatique des plans d'expérience et leur post traitement. Les sous parties vont présenter quelques exemples de résultats, à titre d'illustration de notre approche et des enjeux.

## 3.1. Séquence d'essai

Une interface graphique simple mais efficace a été réalisée en Python, permettant de lire le fichier json de configuration, qui inclue des paramètres communs (e.g. adresses IP des appareils, paramètres de communication) et des paramètres spécifiques aux plans d'expériences à réaliser. La figure 5 présente une capture de cette interface graphique. Il est aussi possible, en préalable aux plans d'expérience automatisés, de tester un point de fonctionnement unique, ainsi que le pilotage de la source de tension DC.

<figure><img src="image_7.png" /><figcaption>FIG. 5. Vue de l'interface graphique qui permet de réaliser toutes les opérations</figcaption></figure>

La figure 6 présente une capture des signaux clés, pour un fonctionnement à 80 kHz, une tension de bus DC à 60 V et un courant crête proche de 3 A. Les transistors utilisés sont des MOSFETs Silicium 200 V.

Les pertes totales sont mesurées, et un soin particulier a été apporté à la synchronisation des mesures : la figure 7 présente un autre essai avec les résultats de mesure de courant et tension DC, pour un balayage de déphasage, et par suite de courant maximal commuté, ainsi que l'extraction des pertes totales. Ce profil d'essai peut ensuite être reproduit pour d'autres paramètres, tels que la tension de bus, la fréquence de commutation, la durée des temps morts. La cible est désormais de réaliser des mesures précises de tension et courant moyennés entre 1 ms et

20 ms, et faire le lien avec l'auto-échauffement associé lors de chacun des profils d'essais. La figure 8 présente l'extraction automatique des énergies de commutation au blocage.

<figure><img src="image_8.png" /><figcaption>FIG. 6. Essai sur un balayage à fréquence fixe, avec un balayage du courant, précédé d'une montée progressive de la tension de bus. a) capture de l'essai complet, sur large plage temporelle. b) Zoom sur un changement automatique de point de fonctionnement en courant.</figcaption></figure>

<figure><img src="image_9.png" /><figcaption>FIG. 7. Mesures acquises pendant un profil d'essai automatisé et préliminaire.
a) Tension de bus (vert) et courant DC (bleu), b) Puissance moyenne dans la séquence utile de variation automatique de déphasage.</figcaption></figure>
<figure><img src="image_10.png" /><figcaption>FIG. 8. Résultats issus de 2 plans d'expérience automatisés pour l'extraction automatique des énergies dissipées au blocage : balayage de 3 tensions de bus (30,40,50V) et 5 niveaux de courants commutés (de 0.5 A à 1.5 A).</figcaption></figure>

## 3.2. Zoom sur un point de fonctionnement

Des exemples de signaux acquis à l'échelle de la fréquence de commutation sont présentés sur les figures 9 et 10. Ces signaux sont stockés dans la mémoire de l'oscilloscope, et les mesures sont automatiques et extraites après les essais, afin de comparaer les grandeurs mesurées aux valeurs pré définies dans le plan d'expérience (e.g. courant maximal ou courant moyen). L'utilisateur peut récupérer toutes les images automatiquement, ainsi que les fichiers de points et les mesures de l'oscilloscope, en complément des grandeurs nécessaires acquises dans les deux multimètres numériques.

<figure><img src="image_11.png" /><figcaption>FIG. 9. Signaux principaux en fonctionnement, sur une période de découpage (mode déphasage). Paramètres : 60 V de tension de bus, fréquence découpage de 80 kHz, inductance de 50 µH, déphasage de 150°, temps mort de 300 ns.</figcaption></figure>

<figure><img src="image_12.png" /><figcaption>FIG. 10. Signaux principaux en fonctionnement, sur une période de découpage (mode écart de rapport cyclique). Paramètres : tension de bus réduite à 30 V, fréquence découpage de 50 kHz, inductance de 50 µH, temps mort de 300 ns, écart de rapport cyclique de 0.8 %.</figcaption></figure>

## 4. SCIENCE OUVERTE ET COLLABORATIVE

La forge Github à l'adresse [5] regroupe les éléments utiles : le superviseur en python, ainsi que la configuration et pilotage du microcontrôleur, des instruments, et une partie du post-traitement des données et l'interface graphique (GPL v3). Les fonctions de génération des signaux de commande se sont apuyés sur les travaux déjà disponibles en science ouverte de la fondation OWNTECH, avec des développements supplémentaires sur la configuration par le superviseur Python des mode de fonctionnement et la génération du signal de déclenchement.

<figure><img src="image_13.png" /><figcaption>FIG. 11. Accès vers GITHUB. Actuellement, les branches "release candidate" et "clean up" sont les plus avancées, avant une release bientôt disponible sur la branche "master".</figcaption></figure>

## 5. CONCLUSIONS ET PERSPECTIVES

Nous avons présenté dans les grandes lignes notre démarche de science ouverte et collaborative, afin de mettre en place un banc automatisé de mesure de pertes en commutation par opposition. Le banc est fonctionnel, ses codes sont ouverts et disponibles, et nous avons déjà commencé à communiquer sur ces travaux.

Les perspectives de ce travail porteront sur l'obtention de données (Si, SiC, GaN) et leur mise à disposition en accès ouvert via le même répertoire [5]. Une étape supplémentaire de calibration automatique sera également proposée pour déterminer les paramètres du circuit (ex : L et sa Rdc, RdsON MOS, Rac inductance). Cette étape de pré calibration nécessite par exemple l'utilisation d'une commande sans découpage, avec limitation du courant, afin d'extraire les résistance totale du système, ce qui est utile pour la bonne estimation des pertes en conduction. Le banc automatisé présenté ici sera également amélioré afin de repousser ses limitations, en particulier sur les aspects thermiques. La figure 12 montre les résultats des simulations électro-thermiques effectuées sur LTspice : l'élévation de la température de jonction à des échelons de pertes montre que les mesures effectuées dans le cadre de ce travail sont affectées. Il serait possible d'optimiser les séquences de test pour améliorer ce point, et/ou de prendre en compte l'auto-échauffement en compte lors du post-traitement.

La précision de mesure doit être aussi analysée, et comparée avec d'autres méthodes. Le compromis notamment sur la précision de la puissance moyenne et la réduction de la durée des paliers de point de fonctionnement doit être finement étudié.

Du point de vue des objectifs initiaux du hackathon, nous pensons les avoir atteint : un superviseur unique en Python est capable de piloter les instruments, générer les ordres de commande, récupérer les données et initier le post traitement. Un point important pour la suite : prévoir des mises en sécurité, notamment en cas de problème durant les plans d'expériences, tels que la perte de la communication avec l'alimentation, ainsi que l'automatisation du paramétrage des calibres (multimètres,
oscilloscopes), selon les données pré définies dans le plan d'ex-
expérience.

<figure><img src="image_14.png" /></figure>

<figure><img src="image_15.png" /></figure>

<figure><img src="image_16.png" /><figcaption>FIG. 12. Simulation électro-thermique en réponse à des échelons de pertes. a) schéma, b) impact de la durée du palier de pertes sur la température de jonction (2 ou 20 Watts, durées de 50,100 ou 200 ms). c) Evolution de la température de jonction lors de plusieurs séquences cumulées, de 0 à 20 W par pas de 4W et de durée de 200 ms.</figcaption></figure>

REMERCIEMENTS

Nous remercions tout·e·s les participant·e·s au hackathon et sa
suite mensuelle, "open power tuesday", ainsi que les personnes
ayant contribué aux niveaux techniques et logistiques, au La-
place, LAAS et au sein d'Owntech. Note sur l'utilisation de
l'IA générative : nous avons utilisé de façon ponctuelle l'aide
d'outils tels que Chat GPT et Mistral AI, afin d'avoir certaines
routines de base, ou pistes de correction, ainsi que sur certaines
briques de développement n'ayant pas de lien direct avec la mé-
thodologie présentée ici.

6. RÉFÉRENCES

[1] J. Brandelero, B. Cougo, T. Meynard, and N. Videau, "A non-intrusive method for measuring switching losses of gan power transistors," in IECON 2013, pp. 246-251.

[2] H. Sathler and B. Cougo, "Improvement of the modified opposition method used for accurate switching energy estimation of wbg transistors," in 2017 IEEE WiPDA, 2017. pp. 308-315.

[3] François Forest, Jean-Jacques Huselstein, Sébastien Faucher, Mohamed El-ghazouani, Philippe Ladoux, et al., "Use of the opposition Method in the Test of High Power Electronics Converters". IEEE Transactions on Industrial Electronics, 2006, 53 (2), pp.530-541. (10.1109/TIE.2006.870711). (hal-00327524)

[4] A. Nguyen Tien, M. Petit, D. Labrousse, G. Chaplier, S. Lefebvre, "Instrumentation pour estimer les pertes de semi-conducteur par la méthode d'opposition", Symposium de Génie Electrique (SGE 2023), Jul 2023, Lille, France.

[5] "Test Bench Code," [Github repo.]. https://github.com/owntech-foundation/test_bench_code, 2024.