Sensorfusion auf Basis maschinellen Lernens zur Bestimmung der Sperrschichttemperatur Forschungsarbeit Vorgelegt von Diego Kuderna Melgar aus Waiblingen am Institut für Robuste Leistungshalbleitersysteme der Universität Stuttgart Betreuer: Kevin Muñoz Barón, M. Sc. Prof. Dr.-Ing. Ingmar Kallfass Zeitraum: 16.10.2023 – 25.03.2024 Stuttgart, den 25.03.2024 Postanschrift: Institut für Robuste Leistungshalbleitersysteme Tel.: +49 (0) 711 685 68700 Pfaffenwaldring 47 Fax.: +49 (0) 711 685 58700 E-Mail: sekretariat@ilh.uni-stuttgart.de D-70569 Stuttgart Web: www.ilh.uni-stuttgart.de Überblick Arbeitstyp: Forschungsarbeit Deutscher Titel: Sensorfusion auf Basis maschinellen Lernens zur Bestimmung der Sperr- schichttemperatur Englischer Titel: Machine Learning Based Sensor Fusion for Junction Temperature Estimation Student: Diego Kuderna Melgar Betreuer: Kevin Muñoz Barón, M. Sc. Abgabe: 25.03.2024 i Eidesstattliche Erklärung Hiermit versichere ich, dass ich die vorliegende Arbeit selbständig und ohne unerlaubte Hilfsmittel unter Beachtung der Regeln zur Sicherung guter wissenschaftlicher Praxis an der Universität Stuttgart in ihrer aktuellen Form angefertigt habe. Ich habe keine anderen als die angegebenen Quellen und Hilfsmitteln benutzt und wörtlich oder inhaltlich übernommene Stellen als solche kenntlich gemacht. Stuttgart, den 25.03.2024 Diego Kuderna Melgar iii Zusammenfassung Die genaue Bestimmung der Sperrschichttemperatur TJ spielt eine elementare Rolle bei der Op- timierung der Leistungsfähigkeiten sowie der Zuverlässigkeit von SiC-Leistungsmodulen. Im Rah- men der indirekten Bestimmung der Sperrschichttemperatur lassen sich TSEPs einsetzen, die jedoch neben der Sperrschichttemperatur weitere Abhängigkeiten von elektrischen Größen auf- weisen. Dies kann zu einer ungenauen Schätzung der Sperrschichttemperatur führen, weshalb diese Bestimmung robuster gestaltet werden muss. Ein Ansatz, um dies zu erreichen, stellt die Kombination mehrerer TSEPs dar, die im Anschluss mithilfe einer KI auf einem Mikrocontroller verarbeitet werden. In dieser Arbeit werden zwei unterschiedliche Ansätze aufgezeigt, um anhand von maschinellen Lernens die Sperrschichttemperatur TJ eines MOSFETs auf Basis von TSEPs zu bestimmen. Hierzu werden die Werkzeuge NanoEdgeAI Studio sowie X-CUBE-AI eingesetzt, um die entwickelten Modelle auf einem STM32 Mikrocontroller zu implementieren. Ein Vergleich beider Ansätze zeigt, dass NanoEdgeAI Studio Modelle mit effizienterer Nutzung der Ressour- cen des Mikrocontrollers ermöglicht. Im Gegensatz dazu erreichen in Python entwickelte Modelle in Kombination mit X-CUBE-AI ohne Quantisierung höhere R2-Werte bei größerem Speicherbe- darf. Im Kontext der Arbeit werden diverse Untersuchungen durchgeführt, um die R2-Werte der betrachteten Modelle zu maximieren. Dazu gehören Ensemblebildung und Trainingsprozesse mit unterschiedlich großen Datensätzen sowie die Variation der Anzahl der Eingabesignale. So lässt sich zeigen, dass sich durch Bildung von Ensembles der R2-Wert bei gleichzeitiger Reduktion des maximalen Fehlers erhöhen lässt. Durch Vergrößerung des Datensatzes lässt sich dieser Wert ebenfalls anheben und eine Steigerung durch die Kombination von TSEPs ist beobachtbar. Die realisierten Algorithmen erzielen unabhängig von der Qualität der gemessenen Signale höhere R2- Werte als der traditionelle Ansatz, der lediglich einen elektrischen Parameter für die Schätzung der Sperrschichttemperatur einsetzt. Dieser beträgt 97,9 % und der maximale Fehler weist einen Wert von 14 K auf. So lässt sich durch die Kombination sämtlicher TSEPs ein Random Forest in NanoEdgeAI Studio entwickeln, der einen R2-Wert von 99,03 % erzielt, was einem Zuwachs von 1,13 Prozentpunkten entspricht. Überdies bemisst der maximale Fehler 8 K, was 6 K unter dem maximalen Fehlers des konventionellen Ansatzes liegt. Zusätzlich ermöglicht dieses Vorgehen die Bestimmung weiterer Parameter, exemplarisch lässt sich der Laststrom ID nennen. v Executive Abstract The precise determination of the junction temperature TJ plays a fundamental role in optimizing the performance and reliability of SiC power modules. As part of the indirect determination of the junction temperature, TSEPs can be used. However, they have other dependencies on electrical variables in addition to the junction temperature. Such dependencies can lead to an inaccurate estimation of the junction temperature, which is why this determination must be made more robust. One approach to achieve this is to combine several TSEPs, which are then processed using AI on a microcontroller. In this work, two different approaches are shown to determine the junction temperature TJ of a MOSFET based on TSEPs using machine learning. For this purpose, the tools NanoEdgeAI Studio and X-CUBE-AI are used to implement the developed models on an STM32 microcontroller. A comparison of both approaches shows that NanoEdgeAI Studio enables models with more efficient use of the microcontroller’s resources. In contrast, models developed in Python in combination with X-CUBE-AI without quantization achieve higher R2 values with larger memory requirements. In the context of the work, various investigations are carried out to maximize the R2 value of the models under consideration. This includes the formation of ensemble and training processes with data sets of different sizes as well as varying the number of input signals. It can be shown that the R2 value can be increased by forming ensembles while simultaneously reducing the maximum error. This value can also be increased by enlarging the data set and an increase can be observed by combining TSEPs. The realized algorithms achieve higher R2 values than the traditional approach, which only uses a single electrical parameter for estimating the junction temperature, regardless of the quality of the measured signals. The R2 is only 97.9 % and the maximum error has a value of 14 K. Thus, by combining all TSEPs, a Random Forest can be developed in NanoEdgeAI Studio that achieves an R2 value of 99.03 %, which corresponds to an increase of 1.13 percentage points. There is a need for 101 kB flash memory and the execution takes place in 52 µs. Furthermore, the maximum error is 8 K, which is 6 K below the maximum error of the conventional approach. In addition, this procedure enables the determination of further parameters, such as the load current ID. vii Inhaltsverzeichnis Überblick i Eidesstattliche Erklärung iii Zusammenfassung v Executive Abstract vii Abkürzungs- und Symbolverzeichnis xvii Abkürzungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xvii Symbole . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xix 1 Einführung 1 1.1 Motivation und Zielsetzung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 1.2 Stand der Technik . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 1.2.1 Bestimmung der Sperrschichttemperatur in der Literatur . . . . . . . . . . 2 1.2.2 Detektion von Anomalien in der Literatur . . . . . . . . . . . . . . . . . . 4 2 Grundlagen des maschinellen Lernens 7 2.1 Verfahren der Regression . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 2.1.1 Mehrlagiges Perzeptron . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 2.1.2 Random Forest . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 2.1.3 Ridge-Regression . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 2.2 Verfahren der Anomaliedetektion . . . . . . . . . . . . . . . . . . . . . . . . . . 9 2.2.1 Fast Incremental SVDD . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 2.3 Leistungsmetriken von Modellen des maschinellen Lernens . . . . . . . . . . . . . 10 2.3.1 R2-Wert . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 2.3.2 SMAPE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 2.3.3 MAE, RMSE und MSE . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 2.3.4 Recall . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 ix Inhaltsverzeichnis 3 Verwendete Technologien und Methoden 13 3.1 Eingesetzte Hardware . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 3.1.1 Messung der Ausführungsgeschwindigkeit . . . . . . . . . . . . . . . . . . 13 3.2 Eingesetzte Software . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 3.2.1 X-CUBE-AI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 3.2.2 NanoEdge AI Studio . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 4 Erfassung und Beschaffenheit der elektrischen Parameter 19 5 Implementierung von Algorithmen für die Bestimmung der Sperrschichttem- peratur 27 5.1 Aufbau von Modellen mit verrauschten Daten . . . . . . . . . . . . . . . . . . . . 27 5.1.1 Einfluss der Größe des Datensatzes auf die Modellgenauigkeit . . . . . . . 27 5.1.2 Betrachtung der Perfomanz auf dem Mikrocontroller . . . . . . . . . . . . 33 5.2 Entwicklung von Modellen auf Basis von Daten mit höherer Qualität . . . . . . . 38 5.2.1 Aufbau von Random Forest-Modellen in scikit-learn . . . . . . . . . . . . 39 5.2.2 Auswirkung der Nutzung unterschiedlicher Kombinationen von TSEPs auf Modelle aus NanoEdgeAI Studio . . . . . . . . . . . . . . . . . . . . . . 44 5.3 Realisierung von Modellen für die Bestimmung der Sperrschichttemperatur basie- rend auf weiterer Erhöhung der Signalqualität . . . . . . . . . . . . . . . . . . . . 46 5.3.1 Vergleich mit dem konventionellen Ansatz . . . . . . . . . . . . . . . . . 52 6 Weitere Verarbeitung der elektrischen Parameter 55 6.1 Bestimmung des Laststroms mithilfe maschinellen Lernens . . . . . . . . . . . . . 55 6.2 Aufbau von Modellen für die Detektion von Anomalien . . . . . . . . . . . . . . . 58 7 Fazit und Ausblick 61 Literaturverzeichnis 63 x Abbildungsverzeichnis 1.1 Abstrakte Darstellung der Zielsetzung der Arbeit. . . . . . . . . . . . . . . . . . . 2 2.1 Beispiel eines mehrlagigen Perzeptrons mit einer verdeckten Schicht aus drei Neu- ronen. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 2.2 Beispielhafter Ausschnitt eines Entscheidungsbaums für eine Regression. . . . . . . 9 3.1 Abstrakte Darstellung der Messung der Ausführungsdauer mithilfe einer Zählers. . 14 4.1 Blockschaltbild des Schaltungskonzepts für die Messung der TSEPs [Muñ+24]. . . 19 4.2 Zeitlicher Verlauf der Einschaltverzögerungszeit tvd,on (Daten mit starkem Rauschen). 20 4.3 Zeitlicher Verlauf der Ausschaltverzögerungszeit tvd,off . Dabei lässt sich eine Viel- zahl an Ausreißern erkennen. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20 4.4 Zeitlicher Verlauf der Einschaltschwellspannung Vvth,on. Hier sind ebenfalls Ausrei- ßer sichtbar. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 4.5 Zeitlicher Verlauf der Einschaltschwellspannung Vvth,off (Daten mit starkem Rau- schen). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 4.6 Zeitlicher Verlauf des Spitzenwerts der Spannung VRG,Peak. Einige Ausreißer sind erkennbar. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22 4.7 Zeitlicher Verlauf der Spannung VDS. Hier sind gleichermaßen Ausreißer sichtbar. . 22 4.8 Zeitlicher Verlauf der Ausschaltverzögerungszeit tvd,off nach der Filterung (Daten mit reduziertem Rauschen). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 4.9 Zeitlicher Verlauf der Einschaltverzögerungszeit tvd,on nach der Filterung (Daten mit reduziertem Rauschen). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 4.10 Verlauf der Einschaltschwellspannung Vvth,on nach der Filterung in Abhängigkeit der Zeit (Daten mit reduziertem Rauschen). . . . . . . . . . . . . . . . . . . . . 24 4.11 Verlauf der Ausschaltschwellspannung Vvth,off nach der Filterung in Abhängigkeit der Zeit (Daten mit reduziertem Rauschen). . . . . . . . . . . . . . . . . . . . . 24 4.12 Verlauf der Spannung VDS,on nach der Filterung in Abhängigkeit der Zeit (Daten mit reduziertem Rauschen). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 4.13 Verlauf der Zwischenkreisspannung VDC nach der Filterung in Abhängigkeit der Zeit. 25 4.14 Zeitlicher Verlauf der Sperrschichttemperatur TJ nach der Filterung (Daten mit reduziertem Rauschen). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26 xi Abbildungsverzeichnis 4.15 Verlauf des Peaks der Spannung VRG,Peak nach der Filterung in Abhängigkeit der Zeit. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26 5.1 Heatmap der Korrelationsmatrix zwischen den TSEPs und TJ der stark verrausch- ten Daten. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 5.2 Streudiagramm des Flash-Speichers und Anzahl der Parameter der Modelle des Datensatzes der Größe 100 000. . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 5.3 Streudiagramm des Flash-Speichers und der Ausführungsgeschwindigkeit der Mo- delle des Datensatzes der Größe 100 000. . . . . . . . . . . . . . . . . . . . . . . 30 5.4 Streudiagramm des benötigten Flash-Speichers und Anzahl der Parameter (200 000 Proben umfassender Datensatz). . . . . . . . . . . . . . . . . . . . . . . . . . . 31 5.5 Streudiagramm des Flash-Speichers und der Ausführungsgeschwindigkeit (200 000 Proben umfassender Datensatz). . . . . . . . . . . . . . . . . . . . . . . . . . . 32 5.6 Histogramm der Temperaturabweichungen während des Tests auf dem Mikrocon- troller (Modell mit dem höchsten R2-Wert des 200 000 Datenpunkte umfassenden Datensatzes). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 5.7 Histogramm des Fehlers des Ensembles aus zwei Random Forest-Modellen. . . . . 34 5.8 Histogramm des Fehlers des Ensembles aus drei Random Forest-Modellen. . . . . 35 5.9 Vergleich der bestimmten Sperrschichttemperaturwerte des Ensembles aus drei Random Forest-Modellen mit den realen Temperaturwerten. . . . . . . . . . . . . 36 5.10 Histogramm des Fehlers des scikit-learn-Modells, angewandt auf den verrauschten Datensatz. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37 5.11 Vergleich der realen sowie der bestimmten Sperrschichttemperatur des scikit-learn- Modells. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38 5.12 Feature Importance des scikit-learn-Modells, angewandt auf den verrauschten Da- tensatz. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39 5.13 Vergleich der Histogramme der Fehler der verschiedenen Random Forest-Modelle, angewandt auf die verrauschten Daten. . . . . . . . . . . . . . . . . . . . . . . . 40 5.14 Heatmap der Korrelationsmatrix zwischen den TSEPs und der Sperrschichttempe- ratur (Daten mit reduziertem Rauschen). . . . . . . . . . . . . . . . . . . . . . . 41 5.15 Feature Importance der Features des Random Forests mit standardisierten Einga- bedaten (Daten mit reduziertem Rauschen). . . . . . . . . . . . . . . . . . . . . 42 5.16 Histogramm des Fehlers des Random Forests auf dem PC (scikit-learn-Modell, angewandt auf den Datensatz mit reduziertem Rauschen). . . . . . . . . . . . . . 43 5.17 Vergleich der von dem scikit-learn-Modell bestimmten mit den realen Sperrschicht- temperaturwerten (Datensatz dem reduziertem Rauschen). . . . . . . . . . . . . . 44 xii Abbildungsverzeichnis 5.18 Heatmap der Korrelationsmatrix zwischen TSEPs und TJ (Daten mit weiter redu- ziertem Rauschen). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47 5.19 Bestimmte Temperaturwerte des Random Forests auf dem Mikrocontroller im Ver- gleich mit den realen Werten der Sperrschichttemperatur. . . . . . . . . . . . . . 48 5.20 Histogramm des Fehlers des RFR aus NEAI auf dem Mikrocontroller. . . . . . . . 49 5.21 Histogramm des absoluten Fehlers des scikit-learn-Modells RFR auf dem Mikro- controller. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50 5.22 Vergleich der von dem scikit-learn-Modell bestimmten Temperaturwerten mit den realen Werten von TJ (Daten mit weiter reduziertem Rauschen). . . . . . . . . . . 51 5.23 Wichtigkeit der einzelnen TSEPs für die Bestimmung der Sperrschichttemperatur (scikit-learn-Modell auf die Daten mit weiter reduziertem Rauschen angewandt). . 51 5.24 Temperatursensitivität der Einschaltschwellspannung Vvth,on. . . . . . . . . . . . . 52 5.25 Histogramm des Fehlers des Polynoms erster Ordnung. . . . . . . . . . . . . . . . 53 5.26 Vergleich der Histogramme der Fehler aller Methoden (Daten mit weiter reduzier- tem Rauschen). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54 6.1 Heatmap der Korrelationsmatrix zwischen den elektrischen Parametern sowie dem Laststrom ID (Daten mit weiter reduziertem Rauschen). . . . . . . . . . . . . . . 56 6.2 Abstrakte Darstellung der Architektur des neuronalen Netzes. Als Eingabe dienen sechs TSEPs und als Ausgabe TJ. . . . . . . . . . . . . . . . . . . . . . . . . . . 56 6.3 Histogramm des Fehlers des neuronalen Netzes bei der Bestimmung des Laststroms. 57 6.4 Vergleich der realen Werte des Laststroms mit den von dem neuronalen Netz bestimmten Werten. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58 6.5 Experimentelle Verifikation des neuronalen Netz. In lila ist der zeitliche Verlauf des realen Laststroms sichtbar. Die bestimmten Werte des Laststroms sind in grün abgebildet. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59 xiii Tabellenverzeichnis 5.1 Ressourcenanforderungen für Modelle, die mit dem Datensatz der Größe 200 000 erstellt wurden. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 5.2 Auswirkung verschiedener Größen des Datensatzes auf den R2-Wert. . . . . . . . 33 5.3 Einfluss der Bildung von Ensembles auf den R2-Wert. . . . . . . . . . . . . . . . 37 5.4 Statistische Kenngrößen der gemessenen elektrischen Parameter für die Normali- sierung und Standardisierung des gefilterten Datensatzes. . . . . . . . . . . . . . 41 5.5 Auswirkung der TSEPs auf den R2-Wert (Daten mit reduziertem Rauschen). . . . 46 5.6 Auswirkung unterschiedlicher Kombinationen von TSEPs auf den R2-Wert (Daten mit weiter reduziertem Rauschen). . . . . . . . . . . . . . . . . . . . . . . . . . . 49 xv Abkürzungs- und Symbolverzeichnis Abkürzungen Notation Beschreibung ADC analog-to-digital converter AI artificial intelligence CPU central processing unit DL deep learning DNN deep neural network DSP digital signal processor DWT data watchpoint and trace unit EMV Elektromagnetische Verträglichkeit FISVDD fast incremental support vector data description FPGA field programmable gate array FPU floating point unit IGBT insulated gate bipolar transistor KI Künstliche Intelligenz kNN k-nearest-neighbor LED light emitting diode LSTM long short-term memory LUT look up table MAE mean absolute error MCU microcontroller unit ML Machine Learning MLP multilayer perceptron MOSFET metal–oxide–semiconductor field-effect transistor MSE mean squared error NEAI NanoEdgeAI Studio ONNX Open Neural Network Exchange xvii Abkürzungen Notation Beschreibung OVMC ON-state voltage measurement circuit PC personal computer PWM pulse-width modulation RAM random-access memory ReLU rectified linear unit RFR random forest regressor RISC reduced instruction set computers RMSE root mean squared error S&H sample and hold SiC silicon carbide SMAPE Symmetric Mean Absolute Percentage Error SVDD support vector data description SVM support vector machine TDC time-to-digital converter TSEP temperature-sensitive electrical parameter VHDL very high speed integrated circuit hardware description lan- guage ZSM Z-score model xviii Symbole Symbole Symbol Beschreibung Einheit ID drain current A IG,Peak peak gate current A R2 coefficient of determination % RDS,on ON-state resistance Ω RG,ext external gate resistance Ω td,on turn-on delay ns TJ junction temperature K tvd,off virtual turn-off delay ns tvd,on virtual turn-on delay ns VDC DC-link voltage V VDS drain-source voltage V VDS,on ON-state voltage V VGE,th gate-emitter threshold voltage mV VGS gate-source voltage V VRG,Peak voltage peak over the external gate resistor V VS’S voltage drop over the parasitic inductance V Vvth,off virtual threshold-off voltage mV Vvth,on virtual threshold-on voltage mV xix 1 Einführung In diesem Kapitel wird zunächst im Unterkapitel 1.1 auf die Motivation sowie die Zielsetzung der Arbeit eingegangen. Darauf folgt im Unterkapitel 1.2 die Erläuterung des Stands der Technik. 1.1 Motivation und Zielsetzung Die Sensorik ist ein elementarer Bestandteil intelligenter Systeme und Objekte und nimmt bei- spielsweise in der Zustandsüberwachung im Kontext der vorausschauenden Wartung eine wichtige Rolle ein. Halbleiterbauelemente spielen eine Schlüsselrolle in der modernen Elektronik und fin- den exemplarisch Anwendung in Smartphones sowie im Automobil, wobei elektrische Schalter wie MOSFETs ein häufiger Grund für den Ausfall solcher Systeme sind [Wu+15]. Um lange Aus- fallzeiten des Gesamtsystems zu verhindern, lässt sich die Gesundheit dieser Bauelemente über- wachen, wobei die Sperrschichttemperatur TJ einen elementaren Indikator für die Alterung von metal–oxide–semiconductor field-effect transistors (MOSFETs) darstellt. Da sämtliche Ausfälle und Degradationen von Halbleiterkomponenten mit der Temperaturerhöhung in diesen Bauteilen zusammenhängen, ist eine genaue Temperaturüberwachung notwendig und wird als essenziell für zukünftige Generationen von Leistungsmodulen mit breitem Bandabstand betrachtet [Zha+16]. Zusätzlich verursachen Sperrschichttemperaturänderungen thermomechanischen Stress in den ver- schiedenen Schichten eines Leistungstransistors und beeinträchtigen somit die Leistung des Bau- teils [Rut+20]. In der Literatur lassen sich zwei Methoden für die Bestimmung der Sperrschicht- temperatur finden, wozu direkte und indirekte Methoden gehören. Bei der direkten Methode lassen sich Thermistoren oder Thermoelemente in der Nähe des Chips platzieren, was jedoch mit Her- ausforderungen in den Bereichen der EMV sowie der Spannungsisolierung einhergeht. Daneben existieren optische Methoden, die Infrarotsensoren für die Messung der Sperrschichttemperatur verwenden. Allerdings führen diese Sensoren zu einem sperrigen Aufbau und sind zusätzlich her- ausfordernd bei der Implementierung in Anwendungen [Rut+20; Sha+22]. Im Gegensatz dazu lässt sich mithilfe der Messung von temperature-sensitive electrical parameters (TSEPs) indirekt die Sperrschichttemperatur TJ bestimmen. Des Weiteren finden diese beispielsweise Anwendung in der Temperaturregelung [Rut+20] sowie bei Power Cycling [Muñ+20]. Diese Methode stellt eine kostengünstige Alternative dar, da hier spezifische Messschaltungen auf der Gate-Treiberplatine platziert werden können und somit keine Anpassungen des Designs notwendig sind. TSEPs sind 1 1 Einführung jedoch nicht nur von der Sperrschichttemperatur abhängig, sondern weisen zusätzlich Abhängig- keiten von weiteren physikalischen Größen auf, exemplarisch die Spannungen VDS,on und VDC sowie der Laststrom ID [Sha+22]. Dabei können Messfehler oder externe Störfaktoren zu einer unge- nauen Messung der Sperrschichttemperatur führen, weshalb sich look up tables (LUTs) einsetzen lassen, um TJ zu bestimmen. Um die Bestimmung der Sperrschichttemperatur robuster zu gestalten, lassen sich die Signale mehrerer Sensoren kombinieren und beispielsweise mithilfe von KI auf einem Mikrocontroller in Echtzeit verarbeiten. In dieser Arbeit soll untersucht werden, inwiefern sich verschiedene elektrische Parameter eines MOSFETs verknüpfen und mit Machine Learning (ML) verarbeiten lassen, um die Sperrschichttemperatur TJ möglichst präzise zu bestimmen. Außerdem soll analysiert werden, ob sich auf Basis dieser elektrischen Parameter weitere Größen wie beispielsweise der Laststrom ID bestimmen lassen. Zusätzlich lässt sich die Eignung der elektrischen Parameter zur Realisierung von Algorithmen für die Detektion von Anomalien überprüfen. Dabei liegt das Ziels stets darauf, eine möglichst hohe Präzision bei der Bestimmung der physikalischen Größen zu erreichen. Auf Abbildung 1.1 ist die Zielsetzung der Arbeit abstrakt dargestellt. Machine Learning on MCU Electrical parameters of MOSFET (f(T, V,…)) Estimation of Junction Temperature Estimation of Load Current Abbildung 1.1: Abstrakte Darstellung der Zielsetzung der Arbeit. 1.2 Stand der Technik In diesem Kapitel wird auf den Stand der Technik eingegangen, wozu eine Literaturrecherche durchgeführt und diese Arbeit entsprechend eingeordnet wird. Dazu wird in den Kapiteln 1.2.1 sowie 1.2.2 auf die Bestimmung der Sperrschichttemperatur sowie die Detektion von Anomalien in der Literatur eingegangen. 1.2.1 Bestimmung der Sperrschichttemperatur in der Literatur In der Literatur lassen sich bereits Veröffentlichungen finden, die mithilfe von KI und TSEPs die Sperrschichttemperatur TJ von Halbleiterbauelementen bestimmen. Im Folgenden werden einige Publikationen näher betrachtet und ihre Relevanz für diese Arbeit aufgezeigt. Im Jahr 2020 verwendeten Merenda et al. Spannungen und Ströme einer light emitting diode 2 1.2 Stand der Technik (LED) als TSEPs, um deren Sperrschichttemperatur TJ zu bestimmen. Hierbei lässt sich er- wähnen, dass die Sperrschichttemperatur von LEDs lediglich indirekt messbar ist [MPD20]. Die erfassten Spannungen und Ströme dienen im Anschluss als Eingabedaten eines deep neural net- works (DNNs), das mit dem Python-Frameworks TensorFlow entwickelt wurde. Schließlich lässt sich das DNN mithilfe des Tools X-CUBE-AI auf einem NUCLEO-F401RE-Entwicklungsboard in der Programmiersprache C implementieren. Der Fokus dieser Arbeit liegt auf einer möglichst ho- hen Genauigkeit des Modells in einem bestimmten Temperaturbereich der LED. Außerdem beträgt die Dauer der Inferenz auf dem Entwicklungsboard 2 ms und das Modell weist eine Genauigkeit von ±2 K auf [MPD20]. In [KBD20] wird ein alternativer Ansatz präsentiert, der die Elektrolumineszenz eines silicon carbi- de (SiC)-MOSFETs nutzt, um mithilfe eines neuronalen Netzes die Sperrschichttemperatur sowie den Laststrom zu ermitteln. Die Messung von TSEPs stellt gemäß [Kur+21] die vorherrschen- de Methodik für die indirekte Bestimmung der Sperrschichttemperatur TJ dar. Der Aufbau einer Einheit, die einerseits die Sperrschichttemperatur auf Basis von TSEPs bestimmt und zum ande- ren Anomalien erkennt, stellt das vorrangige Ziel dieser Arbeit dar. Dabei werden 18 TSEPs für insulated gate bipolar transistors (IGBTs) identifiziert, die sich wiederum in Online- sowie Offline- TSEPs kategorisieren lassen. Hierbei erfolgt die Messung von Online-TSEPs während des Betriebs des Leistungsmoduls. Im Gegensatz dazu lässt sich der IGBT aus der Anwendung entnehmen, um Offline-TSEPs in einem Labor zu erfassen. In [Kur+21] liegt der Fokus auf der Verwendung von Online-TSEPs, die sich während der Ein- sowie Ausschaltvorgänge und des eingeschalteten Zu- stands messen lassen. Die Schwellspannung VGE,th sowie die Schaltverzögerungszeit td,on während des Einschaltvorgangs stellen exemplarische TSEPs des IGBTs dar. Die durchgeführten Messungen erstrecken sich über einen Temperaturbereich von 25 ◦C bis 150 ◦C, wobei 25 ◦C-Intervalle zum Einsatz kommen. Schließlich lässt sich mithilfe der gemessenen Signale ein support vector data description (SVDD)-Modell entwickeln, das Anomalien detektiert. Hierbei lässt sich eine Testge- nauigkeit von 100 % bei einer Temperatur von 25 ◦C erreichen. Abschließend wurde das trainierte Modell erfolgreich auf einem field programmable gate array (FPGA) implementiert. Außerdem erfolgt die Implementierung auf der Hardware mithilfe der Hardwarebeschreibungssprache VHDL und nicht mit einem Framework [Kur+21]. Kim et al. präsentieren in ihrer Arbeit [KYY22] eine Möglichkeit, um mithilfe von TSEPs und einem DNN die Sperrschichttemperatur TJ von SiC-MOSFETs zu bestimmen. Als Eingabedaten dienen hier die TSEPs ID, VGS sowie RDS,on und das Modell wird im Anschluss auf einem digital signal processor (DSP) implementiert. Dabei beträgt die Dauer der Inferenz annähernd 9 ms, wobei sich die Sperrschichttemperatur nicht innerhalb weniger Millisekunden ändert. Aus diesem Grund ist das vorgestellte DNN in praktischen Anwendungen einsetzbar. In [Sha+22] wird ein Ansatz vorgestellt, um mithilfe von TSEPs die Sperrschichttemperatur TJ von 3 1 Einführung Leistungstransistoren präzise zu bestimmen. Die relevanten Parameter im Kontext dieser Unter- suchungen stellen die Schaltverzögerungszeiten sowie Schwellspannungen während des Einschalt- und Ausschaltvorgangs dar. Die erfassten Messwerte werden im Anschluss einem multilayer per- ceptron (MLP) zugeführt, wodurch sich der Messfehler erheblich reduzieren lässt [Sha+22]. Es sei jedoch angemerkt, dass eine Implementierung auf einer microcontroller unit (MCU) oder ähnlicher Hardware nicht stattfand. In [SAK23] wird ebenfalls ein Ansatz erläutert, um mithilfe von neuronalen Netzen und TSEPs die Sperrschichttemperatur TJ von Halbleiterbauelementen zu bestimmen. Hier wurde ebenfalls ein MLP eingesetzt, wobei als TSEPs unter anderem die Zwischenkreisspannung VDC sowie der Laststrom ID dienen. Das Hauptaugenmerk der Arbeit liegt auf der Erzielung einer möglichst hohen Genauigkeit, wobei der Fehler bei der Temperaturbestimmung stets zwischen ±2,5 K liegt. Dabei ist allerdings zu beachten, dass das entwickelte Modell nicht auf einem Mikrocontroller oder ähnlicher Hardware implementiert wurde. Die betrachteten Arbeiten zeigen, dass sich KI durchaus für die Verarbeitung von TSEPs im Zuge der Sperrschichttemperaturbestimmung einsetzen lässt. Hierfür findet im Großteil der Arbeiten ein neuronales Netz Anwendung, jedoch wurde lediglich ein Teil der Modelle auf Hardware implemen- tiert. Des Weiteren stellen die begrenzten zur Verfügung stehenden Ressourcen von beispielsweise Mikrocontrollern einen limitierenden Faktor dar, der stets bei der Wahl der Modellarchitektur Beachtung finden muss. Darüber hinaus lassen sich zwei Ansätze erkennen, um ML-Modelle auf einer STM32-MCU zu implementieren, wozu die Werkzeuge NanoEdgeAI Studio sowie X-CUBE- AI zählen. Auf diese Tools wird näher in Kapitel 3 eingegangen. 1.2.2 Detektion von Anomalien in der Literatur Neben der Bestimmung von Parametern wie der Sperrschichttemperatur soll ebenfalls die Er- kennung von Anomalien untersucht werden. Für die Detektion von Anomalien existieren in der Literatur zwei unterschiedliche Ansätze: Modell- sowie datengetriebene Methoden [Bak+23]. Mo- dellbasierte Vorgehensweisen benötigen ein Modell des Systems sowie die Schätzung bestimmter Systemparameter. Allerdings ist hier keine Beschaffung von Trainingsdaten notwendig, da dieser Ansatz in Kontrast zu dem modellbasierten Vorgehen keinen Trainingsprozess umfasst. Diese Me- thode nutzt die Physik der Ausfallmechanismen zur Entwicklung eines Modells zur Simulation, jedoch stellt der Neuaufbau des Modells bei Veränderungen des Systems einen entscheidenden Nachteil dar. Zusätzlich sind mit diesem Ansatz einige Herausforderungen wie beispielsweise das nichtlineare Schaltverhalten der Schaltungen sowie die Komplexität der Ausfälle verbunden. Daher ist die Erstellung eines mathematischen Modells dieser physikalischen Effekte äußerst kompliziert [Bah+19; Yan+22]. 4 1.2 Stand der Technik Der datengetriebene Ansatz eignet sich, wenn kein Systemmodell verfügbar ist und die Entwicklung eines Modells zu komplex ist. Allerdings muss beachtet werden, dass datengetriebene Ansätze einen Datensatz von erheblicher Größe benötigen und dabei die Möglichkeit bestehen muss, Kenngrö- ßen der Bauteile erfassen zu können. Die aufgenommenen Kenngrößen eines Alterungstests oder Simulationsdaten stellen hier eine geeignete Datenquelle für den Einsatz des datengetriebenen Ansatzes dar. In der Literatur lassen sich einige Beispiele für die datengetriebene Detektion von Anomalien im Bereich der Leistungselektronik auffinden. Dabei lässt sich die Detektion von Anomalien in die One-Class sowie n-Class Klassifikation unterteilen, die sich im Vorhandensein von Daten von feh- lerhaften Systemzuständen unterscheiden. Bei der One-Class Klassifikation stehen ausschließlich Daten des gesunden Systems zur Verfügung, weshalb lediglich eine Erkennung von Anomalien möglich ist. Allerdings lässt sich dabei nicht eindeutig identifizieren, um welchen Fehler es sich handelt. Im Kontrast dazu steht die n-Class Klassifikation, da sich hier genau die Art der Fehler bestimmen lässt. Chen et al. kategorisieren die Ausfälle von Feldeffekttransistoren in zwei Katego- rien: Extrinsisch sowie intrinsisch [Che+20]. Zu den extrinsischen Fehlern gehören beispielsweise die Metallisierungsrekonstruktion, Wire-Bonding sowie Lötverbindungsermüdungen [Yan+22]. Auf den anderen Seite gehören zu den intrinsischen Anomalien der Durchbruch von Dielektrika, heiße Ladungsträgerinjektion (HCI) sowie Elektromigration [Che+20; Yan+22]. Um Trainingsdaten zu generieren, lassen sich beispielsweise Power Cycling Tests für einen be- schleunigten Alterungsprozess durchführen [Che+20]. Während des Tests lassen sich einige Werte messen, die auf den Zustand der Bauteile schließen lassen. Für beispielhafte Testaufbauten zu be- schleunigten Alterungsprozessen lassen sich [Ert+19] sowie [HW20] heranziehen. Zunächst ist die n-Class Klassifizierung nicht relevant für diese Arbeit, da lediglich Daten des gesunden Systems zur Verfügung stehen. In der Literatur sind einige datengetriebene Ansätze für die Detektion von Anomalien aufzufin- den, wozu beispielsweise statistische Methoden wie der CUSUM-Algorithmus [Bor23; Yan+22] und rekurrente neuronale Netze wie das long short-term memory (LSTM) [Rad+22] zählen. Der in [Bor23] entwickelte Algorithmus wurde schließlich mithilfe von X-CUBE-AI auf einem Mi- krocontroller implementiert, während die in [Yan+22] vorgestellten Algorithmen auf einem DSP implementiert wurden. In diesem Kontext lässt sich ebenfalls deep learning (DL) anwenden, um Fehler von Multilevel Konvertern zu diagnostizieren. [QVA19]. Überdies wird in [JYP20] eine Möglichkeit aufgezeigt, mithilfe von Gaussian Process Regression und einem genetischen Algorithmus in Echtzeit An- omalien für Gleichspannungswandler zu erkennen. Dabei dient die Gaussian Process Regression der Abschätzung des normalen Ausgangsbereich verschiedener elektrischer Signale, während der genetische Algorithmus die Extremwerte von sieben Features bestimmt. Allerdings wurden dabei 5 1 Einführung keine Modelle auf einer MCU oder vergleichbarer Hardware implementiert. Zusätzlich lassen sich in der Literatur Ansätze für die Entwicklung von One-Class Klassifizierern finden. Diese Art von Modellen eignet sich, falls lediglich Daten einer Klasse vorhanden sind. Dazu gehört das Vorhandensein von nunmehr gesunden Systemdaten, wie es in dieser Arbeit der Fall ist. In [Mar+21] wird exemplarisch ein Deep SVDD in Python entwickelt, um Anomalien eines Wechselrichters zu erkennen. Darüber hinaus wird in [Eri23] das Tool NanoEdge AI Studio ver- wendet, um diverse Modelle für die Detektion von Anomalien zu realisieren. Zusätzlich werden unterschiedliche Projektarten aus dem Tool untersucht, wozu die One-Class sowie n-Class Klassi- fikation zählen. Das Ziel dieser Arbeit ist zunächst die Implementierung eines Fehlererkennungsal- gorithmus auf einem STM32 Mikrocontroller mit möglichst hoher Genauigkeit. Die Betrachtung der Literatur zeigt, dass eine Vielzahl an Möglichkeiten für die Erkennung von Anomalien existiert. In dieser Arbeit liegt der Fokus auf der Entwicklung eines One-Class Klassifizierers mithilfe des Tools NanoEdgeAI Studio (NEAI), um das Modell im Anschluss auf einer STM32-MCU laufen zu lassen. 6 2 Grundlagen des maschinellen Lernens In diesem Kapitel wird auf die Grundlagen des maschinellen Lernens eingegangen. Dazu werden in Kapitel 2.1 die eingesetzten Verfahren für die Lösung von Regressionsaufgaben präsentiert. In Kapitel 2.2 wird ein Algorithmus für die Detektion von Anomalien erläutert, bevor in Kapitel 2.3 ausgewählte Leistungsmetriken vorgestellt werden. 2.1 Verfahren der Regression Bei der Regression wird das Ziel verfolgt, einen Parameter aus dem Bereich der reellen Zahlen zu approximieren. Dazu lassen sich exemplarisch neuronale Netze, Random Forest oder die Ridge- Regression einsetzen, die in den folgenden Kapiteln thematisiert werden. 2.1.1 Mehrlagiges Perzeptron Das originale Perzeptron wurde 1957 von Frank Rosenblatt vorgestellt [Ros58] und dient bis heute als Grundlage neuronaler Netze. Bei einem MLP handelt es sich um ein künstliches neuro- nales Netz aus dem Bereich des überwachten Lernens. Das Netz besteht zum Mindesten aus drei Schichten: Eingabeschicht, mindestens eine verdeckte Schicht sowie eine Ausgabeschicht, wobei sämtliche Neuronen benachbarter Schichten miteinander verknüpft sind. Jede Verbindung ver- fügt über ein Gewicht, welches im Trainingsprozess angepasst wird und für jedes Neuron werden die Eingabewerte mit einem Gewicht multipliziert sowie mit einem Bias summiert. Im Anschluss lässt sich mithilfe einer nichtlinearen Aktivierungsfunktion ϕ der Ausgabewert des Neurons be- rechnen: y = ϕ(Wx + b). Dabei stellt x den Vektor der Eingabewerte des Neurons dar, W die Gewichtsmatrix und b den Vektor des Bias für jedes Neuron einer Schicht. Die Wahl der Aktivie- rungsfunktion hängt von der zu lösenden Aufgabe ab, wobei häufig die Sigmoidfunktion sowie die rectified linear unit (ReLU) und der Tangens hyperbolicus zum Einsatz kommen. Das Training des neuronalen Netzes erfolgt über den Backpropagation-Algorithmus, um die jeweiligen Gewichte zu optimieren. MLPs finden in einem breiten Gebiet Anwendung, wozu beispielsweise Regressions- und Klassifikationsaufgaben zählen. Auf Abbildung 2.1 ist ein exemplarisches MLP abgebildet. 7 2 Grundlagen des maschinellen Lernens Abbildung 2.1: Beispiel eines mehrlagigen Perzeptrons mit einer verdeckten Schicht aus drei Neu- ronen. Für weitere Informationen über das MLP sowie DL lässt sich [GBC18] zurate ziehen. 2.1.2 Random Forest Random Forest ist ein Verfahren des maschinellen Lernens, das sich für Klassifikations- sowie Re- gressionsverfahren einsetzen lässt. Das grundlegende Konzept stammt von Leo Breiman aus dem Jahr 2001 [Bre01]. Darin wird beschrieben, wie sich unkorrelierte Entscheidungsbäume realisieren lassen, die während des Trainings des Randon Forests erzeugt werden. Dabei ist hervorzuheben, dass sämtliche Bäume mit unterschiedlichen Teilmengen des Trainingsdatensatzes trainiert wer- den, um unkorrelierte Bäume zu erhalten. Jene Entscheidungsbäume lassen sich schließlich zu einem Ensemble zusammenführen, das abschließend das Ergebnis des Random Forests bildet. Bei der Klassifikation stellt die Klasse mit den meisten Stimmen der individuellen Entscheidungs- bäumen das Ergebnis dar. Im Kontrast dazu bildet bei Regressionsaufgaben der Mittelwert aller Vorhersagen der einzelnen Bäume die Entscheidung. Dieses Verfahren ist robust gegenüber Over- fitting, da die Wahrscheinlichkeit gleicher Fehler der Entscheidungsbäume gering ist. Zusätzliche Informationen über den Random Forest lassen sich in [Bre01] finden. Auf Abbildung 2.2 ist ein Ausschnitt eines Entscheidungsbaumes abgebildet. 8 2.2 Verfahren der Anomaliedetektion Vvth,on ≤ −0,077 TJ = 85,685 Vvth,on ≤ −1,342 TJ = 116,656 Vvth,on ≤ −0,51 TJ = 95,578 Vvth,on ≤ −1,558 TJ = 123,394 Vvth,on ≤ −0,707 TJ = 100,919 Vvth,on ≤ −0,3 TJ = 91,236 Vvth,on ≤ −1,149 TJ = 111,565 Abbildung 2.2: Beispielhafter Ausschnitt eines Entscheidungsbaums für eine Regression. 2.1.3 Ridge-Regression Bei der Ridge-Regression handelt es sich um ein Verfahren, das in der Statistik sowie im ma- schinellen Lernen Anwendung findet. Diese Technik wurde erstmals im Jahr 1970 von Hoerl in [HK70] präsentiert. Sie zielt darauf ab, durch den Einsatz von Regularisierung Rauschen in mehr- dimensionale Daten zu unterdrücken. Bei der Regularisierung handelt es sich um eine Technik, um die Komplexität von ML-Modellen zu reduzieren [GBC18]. Dabei wird der Kostenfunktion des Modells der folgende Regularisierungsterm hinzugefügt: Regularisierungsterm = λ p∑ i=1 β2 i . (2.1) λ ist dabei ein Hyperparameter, der die Stärke der Regularisierung steuert, und p die Anzahl der Prädiktoren. Außerdem stellt βi die Gewichtung des jeweiligen Eingabewerts dar. Des Weiteren eignet sich dieses Verfahren für Daten, die eine hohe Kollinearität aufweisen. 2.2 Verfahren der Anomaliedetektion In diesem Kapitel folgt die Erläuterung des Algorithmus, der in dieser Arbeit im Kontext der Detektion von Anomalien Anwendung findet. 9 2 Grundlagen des maschinellen Lernens 2.2.1 Fast Incremental SVDD Bei SVDD handelt es sich um eine Methode des maschinellen Lernens, die sich für die Detek- tion von Ausreißern und die One-Class Klassifizierung einsetzen lässt. Dabei soll eine Menge an Stützvektoren aufgefunden werden, die Daten voneinander abgrenzen [Jia+17]. Bei der fast in- cremental support vector data description (FISVDD) handelt es sich um eine Modifikation der support vector machine (SVM), die sich für den Einsatz in Echtzeitanwendungen eignet. Hansi et al. präsentierten diesen Algorithmus erstmals im Jahr 2017 in [Jia+17]. Dieser Algorithmus stützt sich dabei auf die Beobachtung, dass sämtliche Stützvektoren nach Anwendung des Gaußschen Kernels auf der Grenze einer mehrdimensionalen Hypersphäre den gleichen Abstand zum Zentrum der Hypersphäre aufweisen. Dabei lässt sich zeigen, dass sich dieser Algorithmus effizienter aus- führen lässt als der konventionelle Ansatz, weshalb er sich für den Einsatz auf Mikrocontrollern eignet. Für weitere Informationen über den Algorithmus lässt sich [Jia+17] empfehlen. 2.3 Leistungsmetriken von Modellen des maschinellen Lernens Das folgende Kapitel umfasst die Beschreibung der Leistungsmetriken, die in dieser Arbeit Anwen- dung finden. Metriken ermöglichen die Beurteilung der Güte eines Modells sowie die Vergleichbar- keit von Architekturen. Dazu gehören der R2-Wert sowie Symmetric Mean Absolute Percentage Error (SMAPE), mean absolute error (MAE), root mean squared error (RMSE) und mean squared error (MSE) für die Modelle aus dem Bereich der Regression. Daneben lässt sich für die Bewertung der Leistung von Algorithmen zur Anomaliedetektion der Recall einsetzen. 2.3.1 R2-Wert Der R2 stellt ein Maß dar, welches beschreibt, wie dicht die Daten an der bestimmten Regres- sionslinie liegen. Dieser nimmt dabei Werte zwischen 0 % und 100 % an und lässt sich wie folgt berechnen: R2 = 1 − ∑n i=1(yi − ŷi)2∑n i=1(yi − ȳ)2 . (2.2) Dabei stellt n die Anzahl der Datenpunkte dar, während yi die tatsächlichen Beobachtungen und ŷi die bestimmten Werte des Regressionsmodells bezeichnen. Darüber hinaus ist ȳ der Durchschnitt sämtlicher realer Beobachtungen. Überdies zeigt ein R2-Wert von 1 an, dass die Vorhersagen des Modells mit den realen Werten übereinstimmen, wohingegen ein Wert von 0 auf ein unbrauchbares 10 2.3 Leistungsmetriken von Modellen des maschinellen Lernens Modell schließen lässt. 2.3.2 SMAPE Als zusätzliche Leistungsmetrik lässt sich der SMAPE einsetzen: SMAPE = 100 n n∑ t=1 |Ft − At| (|At| + |Ft|)/2 , (2.3) wobei At der echte Wert und Ft der vorhergesagte Wert ist. Außerdem stellt n die Anzahl der Pro- ben innerhalb des Datensatzes dar. Hierbei wird der durchschnittliche prozentuale Fehler zwischen dem vorhergesagten und dem realen Wert errechnet. 2.3.3 MAE, RMSE und MSE Bei MAE und RMSE handelt es sich um Metriken, um die Genauigkeit von Regressionsproble- men zu bestimmen. Dabei berücksichtigen die Metriken die Abweichung des realen sowie des vorhergesagten Wertes. Der MAE misst die durchschnittliche Fehlergröße in einer Reihe von Vorhersagen ohne das Vorzei- chen zu berücksichtigen. Es handelt sich dabei um den Durchschnitt aller absoluten Abweichungen einer Testreihe, wobei sämtliche Differenzen zwischen den Vorhersagen (ŷi) sowie den realen Wer- ten (yi) gleich gewichtet sind. MAE = 1 n n∑ i=1 |yi − ŷi|. (2.4) Da diese Metrik die gleiche physikalische Einheit wie der ursprüngliche Datensatz aufweist, lässt er sich problemlos interpretieren. Dahingegen misst der RMSE den Fehler quadratisch, indem die Quadratwurzel des Durchschnitts sämtlicher quadratischer Fehler berechnet wird: RMSE = √√√√ 1 n n∑ i=1 (yi − ŷi)2. (2.5) Hierbei fallen größere Fehler stärker ins Gewicht, da sie quadratisch berücksichtigt werden. Für die Bewertung der Leistung von Regressionsmodellen lässt sich ebenfalls der MSE einsetzen, der die mittlere quadratische Abweichung zwischen den vorhergesagten Werten und den tatsächlichen Werten misst. Dieser lässt sich folgendermaßen bestimmen: 11 2 Grundlagen des maschinellen Lernens MSE = 1 n n∑ i=1 (yi − ŷi)2. (2.6) Außerdem sind die Metriken RMSE sowie MSE empfindlich gegenüber Ausreißern, da diese qua- dratisch gewichtet werden. 2.3.4 Recall Bei dem Recall handelt es sich um eine Metrik für Klassifizierer. Mithilfe einer Konfusionsmatrix lassen sich die Ergebnisse eines Modells für ein Klassifikationsproblem visualisieren. In diesem Kontext lassen sich vier unterschiedliche Ergebnisse des Modells betrachten: Korrekt positive Vor- hersagen (True Positive), falsch positive Vorhersagen (False Positive), falsch negative Vorhersagen (False Negative) und korrekt negative Vorhersagen (True Negative). Daraus lassen sich Metriken wie der Recall oder die Precision errechnen. Die Precision wird wie folgt bestimmt: Precision = True Positive True Positive + False Positive . (2.7) Diese Metrik eignet sich, wenn die Korrektheit der positiven Vorhersage im Vordergrund steht. Im Gegensatz dazu eignet sich der Recall, wenn möglichst viele positive Ergebnisse identifiziert werden sollen. Aus diesem Grund dient der Recall in dieser Arbeit als Metrik für die Bewertung der Leistung der realisierten Algorithmen für die Erkennung von Anomalien. Zusätzlich folgt die Berechnung des Recalls: Recall = True Positive True Positive + False Negative . (2.8) 12 3 Verwendete Technologien und Methoden In diesem Kapitel wird in Kapitel 3.1 auf die eingesetzte Hardware und in 3.2 auf die verwendete Software eingegangen. Dazu gehören die Tools NanoEdge AI Studio sowie X-CUBE-AI, um ML- Modelle auf dem eingesetzten STM32 Mikrocontroller zu implementieren. 3.1 Eingesetzte Hardware Eine zentrale Frage, die sich bei der Implementierung von KI stellt, ist die nach der geeigne- ten Hardware. Dabei ergibt die Literaturrecherche aus dem vorangegangen Kapitel 1.2, dass sich FPGAs, MCUs und DSPs für die Implementierung eignen. Mikrocontroller bieten dabei den Vorteil, dass sie äußerst kostengünstig sind. Außerdem existieren einige Frameworks, die die Implemen- tierung von ML-Modellen vereinfachen, wobei X-CUBE-AI sowie NanoEdge AI Studio Beispiele darstellen. In dieser Arbeit wurde das NUCLEO-H723ZG-Entwicklungboard mit einer STM32H723ZG-MCU eingesetzt. Aus der Dokumentation [STM23] geht hervor, dass die central processing unit (CPU) eine 32-Bit-ARM-Cortex-M7-RISC-Architektur aufweist. Zudem ist eine floating point unit (FPU) integriert und die Taktfrequenz beträgt 550 MHz, somit beläuft sich die Genauigkeit auf 1,8 ns. Der Flash-Speicher umfasst eine Größe von 1 MB, während die Größe des random-access memory (RAM) 564 kB beträgt. Hierbei soll die STM32H723ZG-MCU die Messdaten adäquat verarbeiten und basierend auf den elektrischen Parametern die Sperrschichttemperatur TJ sowie den Laststrom ID bestimmen. Des Weiteren soll auf der MCU ein Modell für die Detektion von Anomalien ausgeführt werden. Somit soll ein System für die Bestimmung mehrerer Parameter sowie für die Erkennung anomaler Systemzustände auf dem Mikrocontroller realisiert werden. Für weitere Informationen über die MCU lässt sich das Datenblatt [STM23] zurate ziehen. 3.1.1 Messung der Ausführungsgeschwindigkeit Die Ausführungsgeschwindigkeit stellt eine elementare Metrik für Realzeitprojekte dar. Das ein- gesetzte Entwicklungsboard verfügt über einen Timer, um die Ausführungsgeschwindigkeit zu messen. Zusätzlich verfügt es über ein Register namens data watchpoint and trace unit (DWT), in welchem die Anzahl der vergangenen Taktzyklen gespeichert wird. In der verwendeten Archi- 13 3 Verwendete Technologien und Methoden tektur wird das DWT-Register genutzt, um die Ausführungszeit von Codeabschnitten zu messen. Dabei existiert ein Zykluszähler, wobei es sich um ein Register handelt, das einen Zähler namens CYCCNT enthält. Dieser erfasst die vergangenen CPU-Zyklen seit der Initialisierung des Zählers. Darüber hinaus besteht die Möglichkeit, durch Befehle den Timer zu starten, zu stoppen und anschließend den Wert des Registers auszulesen. Zusätzlich ist dieses Vorgehen abstrakt auf der Abbildung 3.1 dargestellt. Run model inclusive preprocessing Start CYCCNT Stop CYCCNT Abbildung 3.1: Abstrakte Darstellung der Messung der Ausführungsdauer mithilfe einer Zählers. Schließlich lässt sich mithilfe der Taktfrequenz der CPU die Dauer der Ausführung errechnen. Für weitere Informationen über den Gebrauch dieses Registers lässt sich [Arm21] heranziehen. In dieser Arbeit wird dieses Register verwendet, um die Inferenzdauer der implementierten Modelle zu messen, die dabei sowohl die Vorverarbeitung der Daten sowie die Ausführung des Algorithmus umfasst. 3.2 Eingesetzte Software In der Literatur lassen sich zwei Ansätze finden, um ML-Modelle auf einer STM32-MCU zu imple- mentieren: X-CUBE-AI und NanoEdgeAI Studio [Yan+22]. In den sich anschließenden Kapiteln 3.2.1 und 3.2.2 wird auf diese Methoden eingegangen, um die in Kapitel 2 beschriebenen Verfahren auf einem Mikrocontroller mit begrenzen Ressourcen laufen zu lassen. 3.2.1 X-CUBE-AI Bei X-CUBE-AI handelt es sich um eine Erweiterung von STM32Cube des Unternehmens STMi- croelectronics. Zusätzlich ermöglicht das Tool die automatisierte Konvertierung von bereits trai- nierten Modellen aus dem Bereich des ML in C-Code. Darüber hinaus lassen sich die Algorithmen mithilfe des Tools auf dem personal computer (PC) sowie auf der STM32 MCU validieren. Über das Austauschformat Open Neural Network Exchange (ONNX) lassen sich Modelle aus MATLAB, PyTorch sowie scikit-learn in X-CUBE-AI importieren. Überdies unterstützt das Werkzeug Modelle aus TensorFlow sowie Keras, wobei es sich um Python-Bibliotheken für die Erstellung neuronaler 14 3.2 Eingesetzte Software Netze handelt. Im Rahmen dieser Arbeit wurde mit der Version 8.1.0 gearbeitet und für weitere Informationen bezüglich des Tools lässt die Dokumentation [STM24b] heranziehen. 3.2.2 NanoEdge AI Studio Eine Alternative zu X-CUBE-AI stellt NanoEdge AI Studio dar, das ebenfalls von STMicroelectro- nics stammt. Der Fokus dieser Arbeit liegt auf der Implementierung geeigneter Modelle mithilfe dieses Werkzeugs, wobei die Version 4.3.1 zum Einsatz kommt. Das Tool sucht basierend auf den Daten sowie der zugrunde liegenden Problemstellung geeignete Verfahren aus dem Bereich des maschinellen Lernens. Beispiele hierfür stellen Random Forest, das MLP sowie die Ridge-Regression dar. Innerhalb des Tools lassen sich die Modelle trainieren, evaluieren sowie anschließend der C-Code für die Implementierung auf der MCU generieren. Das Werkzeug ermöglicht die Erstellung vier unterschiedlicher Projektarten, auf die im Folgenden eingegangen wird: • Anomaly Detection: Als Eingabe werden normale und abnormale Daten genutzt. Das Modell ist dazu befähigt, Anomalien zu detektieren. • 1-Class Classification: Hierbei sind keine abnormalen Daten verfügbar, lediglich Daten eines gesunden Systems. Dabei handelt es sich um unüberwachtes Lernen mit sogenannten Pseu- dolabels, da jedes Trainingsbeispiel den gesunden Zustand des Systems repräsentiert. Die Ausgabe dieser Modelle ist dabei stets binär: Normal (0) oder abnormal (1). • n-Class Classification: Hiermit lässt sich der aktuelle Status des Systems abrufen. Dazu werden n Klassen definiert, die verschiedene Fehlerzustände abbilden können. • Extrapolation: Diese Projektart nutzt mathematische Regressionsmodelle, um einen Para- meter basierend auf bekannten Daten zu bestimmen. Diese Aufgabe unterschiedet sich von den anderen Projektarten, da hier ein kontinuierlicher Wert bestimmt wird. Dabei dienen unter anderem der R2- sowie der SMAPE-Wert als Bewertungskriterien. Zusätzlich zeich- nen sich diese Modelle durch hohe Ausführungsgeschwindigkeiten aus und sind in der Lage, Werte zu approximieren, die kein Teil des Trainingsdatensatzes sind. Das Werkzeug bestimmt automatisiert die Modellarchitektur auf Basis der eingegebenen Daten, welche sich auf unterschiedliche Arten und Weisen importieren lassen. Dazu gehören der Import aus einer Datei im CSV-Format, der Einsatz des Dataloggers oder seriell vom USB-Port. Die Daten müssen in einem bestimmten Format sein, das sich je nach vorliegender Aufgabe unterscheidet und im Folgenden thematisiert wird [STM24a]. Das Tool bietet die Möglichkeit, unterschiedliche Sensoren als Quelle einzusetzen, wobei sich hier die Aufbereitung der Daten unterscheidet. Um die Signale mehrerer Sensoren zu verarbeiten, 15 3 Verwendete Technologien und Methoden stehen drei unterschiedliche Ansätze zur Verfügung: • Generic Sensor • Multi-sensor • Multi library Für diese Arbeit ist lediglich der Ansatz basierend auf dem Multi-sensor relevant, weshalb die- ser näher betrachtet wird. Die Struktur des Datensatzes unterscheidet sich in Abhängigkeit der Problemstellung (Extrapolation, 1-Class Classification, ...) sowie der verwendeten Sensoren. Extra- polationsaufgaben setzen bei multisensorischen Daten exemplarisch das folgende Format voraus: Zielvariable1, Sensor1wert1, Sensor2wert1, ..., Sensor3wert1. Dabei befindet sich der zu approximierende Wert zu Beginn jeder Zeile, die eine Abtastung sämt- licher Signale repräsentiert. Auf der anderen Seite benötigen One-Class Klassifizierungsaufgaben kein Label und können schließlich in diesem Format gespeichert werden: Sensor1wert1, Sensor2wert1, ..., Sensor3wert1. NEAI findet basierend auf den Eingabedaten automatisiert eine geeignete Modellarchitektur in- klusive Parameter sowie eine adäquate Vorverarbeitung der Daten. Dieser Prozess lässt sich mit dem Import des Datensatzes anstoßen und das Ergebnis stellt eine so genannte NanoEdge AI Library dar, welche drei Komponenten umfasst. Im Einzelnen sind dies die Vorverarbeitung der Daten, die Modellarchitektur sowie die passenden Hyperparameter des Modells. Ersteres dient da- bei der Verarbeitung der Rohdaten, wozu beispielsweise Pooling, die Fouriertransformation oder die Standardisierung der Daten gehören. Dies führt zu einer Reduktion von Rauschen, steigert die Qualität der Signale und bewirkt, dass keine händische Vorverarbeitung der Daten auf der MCU notwendig ist. Bei der Modellarchitektur stehen klassische Verfahren des maschinellen Lernens wie beispielsweise k-nearest-neighbor (kNN), SVM oder neuronale Netze zur Verfügung. Ergänzend stehen von STMicroelectronics entwickelte Modelle zur Verfügung, die für den Einsatz auf Mi- krocontrollern optimiert wurden. Hierzu gehört exemplarisch das Z-score model (ZSM), welches vermutlich auf dem Altmannschen Z-Faktor basiert. Da das Tool ebenfalls die Hyperparameter der Modelle automatisiert optimiert, sind lediglich ein Trainings- sowie Testdatensatz notwendig [STM24a]. Dabei werden zusätzlich Leistungsmetriken für die Bewertung der Leistung der einzelnen Modelle während des Trainings und des Tests bestimmt. Dazu zählen exemplarisch der R2, der maximale Verbrauch von RAM- und Flash-Speicher, der SMAPE, MSE und RMSE. Auf diese Metriken wurde bereits im Kapitel 2.3 auf Seite 10 eingegangen. Das Tool bewertet jede Bibliothek individuell mit 16 3.2 Eingesetzte Software einem Score zwischen 0 % und 100 %, wobei die Leistungsmetriken sowie der Ressourcenverbrauch einbezogen werden. Überdies wird eine Kreuzvalidierung durchgeführt, was bedeutet, dass mit zehn verschiedenen Trainings- und Testdatensätzen die Leistung des einzelnen Modells bewertet wird. Dabei werden die zehn korrespondierenden R2-Werte (bei Extrapolation) inklusive Median, Durchschnitt, Minimum, Maximum sowie die Standardabweichung ausgegeben [STM24a]. Bei Extrapolations-, 1- sowie n-Class Classification-Projekten werden die Bibliotheken bereits auf dem PC trainiert, weshalb sich diese Modelle direkt auf der MCU implementieren lassen. Im Gegensatz dazu steht die Anomaly Detection, bei der das Training nicht auf dem PC, sondern auf dem Mikrocontroller vonstattengeht. Zusätzlich ermöglicht das Werkzeug die Emulation des Modells auf dem PC, um das Verhalten der Bibliothek auf dem Mikrocontroller zu bewerten. Im Anschluss daran erfolgt die Generierung des C-Codes für die Implementierung der Bibliothek auf dem Mikrocontroller. NanoEdge AI Studio ermöglicht bei der Generierung des C-Codes harte sowie softe Gleitkommazahlen, abhängig davon, ob eine FPU zur Verfügung steht. Für Mikro- controller mit einer FPU sollten harte verwendet werden, da sich diese schneller und effizienter verarbeiten lassen. Da die in dieser Arbeit verwendeten MCU über eine FPU verfügt, wird mit harten Gleitkommazahlen gearbeitet. Daneben existiert die Option, den Datentyp wchar_t auf eine Größe von zwei Bytes zu setzen, wobei dieser standardmäßig über eine Größe von vier Bytes verfügt. Durch diese Option lässt sich der Speicherbedarf reduzieren, jedoch ist dies mit Einbußen der Leistung verbunden. Optional lassen sich enums in der Größe variieren. Der Compiler wird hierbei versuchen, die kleinstmöglichen Datentypen in enums zu verwenden. wobei die standard- mäßige Größe eines Datentyps 32 Bit beträgt. Auch hier lässt sich der Speicherbedarf reduzieren, wohingegen die Genauigkeit des Modells abnimmt, weshalb diese Optionen bei Projekten mit ge- ringem verfügbaren Speicherplatz sinnvoll sind [STM24a]. Auf diese Möglichkeiten wird allerdings in dieser Arbeit verzichtet, da die eingesetzte MCU über ausreichend Speicherplatz verfügt (siehe Kapitel 3.1). Die Generierung erfolgt anschließend als C static library, wobei es sich um eine statische Biblio- thek handelt. Dies führt dazu, dass der Code nicht für den Menschen lesbar ist und die spezifi- sche Architektur des Modells unbekannt bleibt. Diese Bibliothek umfasst eine .a-Datei sowie eine Header-Datei (.h), die sich im Anschluss in die STM32 CubeIDE importieren lassen [STM24a]. 17 4 Erfassung und Beschaffenheit der elektrischen Parameter In diesem Kapitel wird auf die Aufnahme der TSEPs sowie auf die Beschaffenheit der aufgenom- menen Daten eingegangen. Dazu ist zunächst auf Abbildung 4.1 das Blockschaltbild der Schaltung für die Erfassung der TSEPs abgebildet. S&H Comp. peak detector OVMC PWM PWM Trigger VGS VS’S VRG,Peak VDS ADC 16-bit, 2 MSPS TDC tvd,on,tvd,off Vvth,on Vvth,off IG,Peak RDS,on START STOPS digital isolation digital isolation MCU 4 SPI 4 SPI 4 SPI 4 SPI Power GND Signal GND Abbildung 4.1: Blockschaltbild des Schaltungskonzepts für die Messung der TSEPs [Muñ+24]. Die Aufnahme der TSEPs erfolgt über unterschiedliche Schaltungen, denen ein ADC-Wandler, ein TDC und einer MCU zugrunde liegen. Dabei benötigen die unterschiedlichen Schaltungen verschiedene Eingangssignale, um eine Variable zu erzeugen, die in Form einer Temperatursensi- tivität Informationen über die Sperrschichttemperatur enthält. Der Fokus dieser Arbeit liegt auf der adäquaten Verarbeitung der elektrischen Parameter, weshalb nicht weiter auf die Erfassung eingegangen wird. Für weitere Informationen über das Schaltungskonzept lässt sich [Muñ+24] zurate ziehen. In dieser Arbeit kommen folgende TSEPs zum Einsatz: tvd,on, tvd,off , Vvth,on, Vvth,off , VDS,on und VRG,Peak. Als weiterer elektrischer Parameter lässt sich die Zwischenkreisspannung VDC nennen. Hierbei handelt es sich um statische und dynamische Charakteristiken bei Schaltvorgängen so- 19 4 Erfassung und Beschaffenheit der elektrischen Parameter wie im eingeschalteten Zustand. Die Schaltverzögerungszeiten tvd,on und tvd,off werden von einem TDC verarbeitet, während die restlichen vier Parameter von einem ADC-Wandler mit vier Kanälen und einer 32-Bit MCU ausgelesen werden. Außerdem wird die Sperrschichttemperatur als Referenz mithilfe eines optischen Sensors aufgenommen. Die virtuellen Schwellspannungen sowie Verzöge- rungszeiten lassen sich dabei mit einem „virtuellen“ Index versehen. Dieser signalisiert, dass diese elektrischen Parameter dieselben Informationen über die Temperatur besitzen wie die Parameter, auf denen sie basieren [Muñ+24]. Im Laufe der Arbeit standen Signale unterschiedlicher Qualität zur Verfügung. Um ein Verständnis für die Beschaffenheit der erfassten elektrischen Parameter zu erlangen, wird im Anschließenden auf deren zeitliche Verläufe eingegangen. Zunächst wurde mit stark verrauschten Messungen ge- arbeitet. Auf den folgenden Abbildungen 4.2 sowie 4.3 lassen sich die erfassten Verläufe der Schaltverzögerungszeiten in Abhängigkeit der Zeit sehen. 0 5 10 15 20 25 30 Time (s) 300 305 310 315 320 t v d ,o n ( n s ) Abbildung 4.2: Zeitlicher Verlauf der Einschaltverzögerungszeit tvd,on (Daten mit starkem Rau- schen). 0 5 10 15 20 25 30 Time (s) 400 500 600 700 t v d ,o ff ( n s ) Abbildung 4.3: Zeitlicher Verlauf der Ausschaltverzögerungszeit tvd,off . Dabei lässt sich eine Viel- zahl an Ausreißern erkennen. Hierbei lässt sich keine starke Veränderung der Einschaltverzögerungszeit tvd,on beobachten, wäh- rend die Ausschaltschwellspannung tvd,off einen periodischen Verlauf ähnelt. Dabei nimmt die Ein- schaltverzögerungszeit aufgrund der Ausreißer Werte zwischen 0 ns sowie 4 294 954 ns an, während 20 sich für die Ausschaltverzögerungszeit Werte zwischen 43 ns sowie 4 294 940 ns erkennen lassen. Zusätzlich lässt sich beobachten, dass die Messungen der TSEPs, die mit dem ADC-Wandler aufgenommen wurden, erheblich mehr Ausreißer besitzen, als die elektrischen Parameter, die mit dem TDC erfasst wurden. Dies lässt sich anhand der zeitlichen Verläufe der Schwellspannungen während des Ein- sowie Ausschaltvorgangs auf den Abbildungen 4.4 und 4.5 demonstrieren. 0 5 10 15 20 25 30 Time (s) 3000 4000 5000 6000 7000 8000 9000 V v th ,o n ( m V ) Abbildung 4.4: Zeitlicher Verlauf der Einschaltschwellspannung Vvth,on. Hier sind ebenfalls Ausrei- ßer sichtbar. 0 5 10 15 20 25 30 Time (s) -20000 -10000 0 10000 20000 V v th ,o ff ( m V ) Abbildung 4.5: Zeitlicher Verlauf der Einschaltschwellspannung Vvth,off (Daten mit starkem Rau- schen). Hier weist die Ausschaltschwellspannung Vvth,off einen vermeintlich periodischen Verlauf auf, wäh- rend die Einschaltschwellspannung Vvth,on nahezu konstant bleibt. Vvth,off nimmt dabei Werte aus dem Bereich von −17 487 mV bis 17 495 mV an und Vvth,on liegt stets zwischen −17 047 mV und 16 863 mV. Zusätzlich sind diese Verläufe mit denen der Schaltverzögerungszeiten konsistent. Die Verläufe des Spitzenwerts der Spannung VRG,Peak sowie der Spannung VDS,on sind auf den Abbildungen 4.6 und 4.7 sichtbar. VRG,Peak liegt stets zwischen −17 459 mV und 17 432 mV, wäh- rend VDS,on Werte aus dem Bereich von −17 282 mV und 17 463 mV annimmt. Dabei lassen sich im Laufe der Zeit lediglich vereinzelte Veränderungen der Einschaltschwellspannung identifizieren, während die Sperrschichttemperatur TJ zwischen 21 ◦C und 95 ◦C variiert. Bei Betrachtung der Extremwerte der elektrischen Parameter wird das Ausmaß des Rauschens deutlich. 21 4 Erfassung und Beschaffenheit der elektrischen Parameter 0 5 10 15 20 25 30 Time (s) -20000 -10000 0 10000 20000 V R G ,P e a k ( m V ) Abbildung 4.6: Zeitlicher Verlauf des Spitzenwerts der Spannung VRG,Peak. Einige Ausreißer sind erkennbar. 0 5 10 15 20 25 30 Time (s) -20000 -10000 0 10000 20000 V D S ,o n ( m V ) Abbildung 4.7: Zeitlicher Verlauf der Spannung VDS. Hier sind gleichermaßen Ausreißer sichtbar. Durch Variation des externen Gatewiderstandes RG,ext lässt sich das Rauschen bei der Aufnahme der TSEPs reduzieren, was sich im Laufe der Arbeit zwei Mal ereignete. Dies führt dazu, dass insgesamt drei Datensätze aus Messungen unterschiedlicher Qualität zur Verfügung stehen, auf die im Anschließenden eingegangen wird. In diesem Zuge lässt sich den Datensätzen die Zwischenkreisspannung VDC als eine weitere Kenn- größe hinzufügen. Somit stehen im zweiten Datensatz insgesamt sieben unterschiedliche elektrische Parameter zur Verfügung, die sich für die Bestimmung der Sperrschichttemperatur einsetzen las- sen. Im Folgenden werden die nach erster Erhöhung des Widerstands RG,ext erfassten elektrischen Parameter thematisiert, um die verbesserte Signalqualität zu demonstrieren. Dazu sind auf den Abbildungen 4.8 sowie 4.9 die erfassten zeitlichen Verläufe der Verzögerungszei- ten abgebildet. Dabei fällt auf, dass sich die Einschaltverzögerungszeit tvd,on im Vergleich mit der ersten Aufnahme stärker verändert, wobei der Verlauf von tvd,off Züge eines periodischen Verlaufs aufweist. 22 20 25 30 35 40 45 50 Time (s) 380 400 420 440 460 t v d ,o ff ( n s ) Abbildung 4.8: Zeitlicher Verlauf der Ausschaltverzögerungszeit tvd,off nach der Filterung (Daten mit reduziertem Rauschen). 20 25 30 35 40 45 50 Time (s) 304 306 308 310 t v d ,o n ( n s ) Abbildung 4.9: Zeitlicher Verlauf der Einschaltverzögerungszeit tvd,on nach der Filterung (Daten mit reduziertem Rauschen). Es lassen sich im Verlauf der Ausschaltverzögerungszeit tvd,off weiterhin Ausreißer erkennen, die sich nicht mithilfe eines Schwellwerts entfernen lassen. Dies liegt daran, dass sie im gültigen Bereich der Ausschaltverzögerungszeit liegen, weshalb dieser Datensatz über eine geringe Anzahl an Ausreißern verfügt. Somit nimmt die Ausschaltverzögerungszeit tvd,off Werte aus dem Bereich zwischen 90 ns und 460 ns an. Daneben liegen die Werte der Einschaltverzögerungszeit zwischen 53 ns und 309 ns. Im Vergleich zur vorherigen Messung lässt sich nun eine Veränderung der Spannung Vvth,on im Laufe der Zeit beobachten, während Vvth,off ein weiteres Mal einen vermeintlich periodischen Ver- lauf aufweist. Darüber hinaus lässt sich aus den Verläufen schließen, dass eine starke Korrelation mit den Schaltverzögerungszeiten tvd,on und tvd,off besteht, da sie ähnliche Charakteristiken besit- zen. Des Weiteren lässt sich eine negative Korrelation zwischen tvd,off und Vvth,off vermuten sowie eine positive zwischen tvd,on und Vvth,on. 23 4 Erfassung und Beschaffenheit der elektrischen Parameter 20 25 30 35 40 45 50 Time (s) 4600 4700 4800 4900 5000 V v th ,o n ( m V ) Abbildung 4.10: Verlauf der Einschaltschwellspannung Vvth,on nach der Filterung in Abhängigkeit der Zeit (Daten mit reduziertem Rauschen). 20 25 30 35 40 45 50 Time (s) 2000 3000 4000 5000 6000 V th ,o ff ( m V ) Abbildung 4.11: Verlauf der Ausschaltschwellspannung Vvth,off nach der Filterung in Abhängigkeit der Zeit (Daten mit reduziertem Rauschen). Des Weiteren lässt sich beobachten, dass die Einschaltschwellspannung Vvth,on nach der Filterung Werte zwischen 4300 mV und 5066 mV annimmt, während die Ausschaltschwellspannung Vvth,off zwischen 1537 mV und 5307 mV liegt. Zusätzlich lassen sich auf den Abbildungen 4.12 und 4.13 die zeitlichen Verläufe der Spannung VDS,on sowie der Zwischenkreisspannung VDC erkennen, wobei sich der Verlauf von Dreieckspan- nungen beobachten lässt. Hier nimmt die Spannung VDS,on Werte zwischen 28 mV und 2900 mV an. Außerdem lassen sich für die Zwischenkreisspannung VDC Werte aus dem Bereich von 99 V bis 200 V beobachten. 24 20 25 30 35 40 45 50 Time (s) 200 400 600 800 1000 1200 V D S ,o n ( m V ) Abbildung 4.12: Verlauf der Spannung VDS,on nach der Filterung in Abhängigkeit der Zeit (Daten mit reduziertem Rauschen). 20 25 30 35 40 45 50 Time (s) 100 120 140 160 180 200 V D C ( V ) Abbildung 4.13: Verlauf der Zwischenkreisspannung VDC nach der Filterung in Abhängigkeit der Zeit. Um ein Verständnis für den Verlauf der Sperrschichttemperatur zu erhalten, ist dieser auf der sich anschließenden Abbildung 4.14 abgebildet. Zunächst ist diese konstant und mit zunehmender Zeit beginnt sich die Sperrschichttemperatur zu erhöhen und wieder abzuklingen, wobei sie Werte zwischen 21 ◦C und 93 ◦C annimmt. Es lässt sich feststellen, dass durch Erhöhung des externen Gatewiderstandes RG,ext die Qualität der erfassten Signale ansteigt, was sich durch Betrachtung der zeitlichen Verläufe der TSEPs zeigen lässt. Des Weiteren lassen sich dabei einige Lücken erkennen, die auf eine Filterung vorhandener Ausreißer zurückzuführen sind. Vor dieser stehen insgesamt 180 203 Stichproben zur Verfügung, somit werden 54 723 Messwerte entfernt. Dies führt zu einer Datensatzgröße von 125 480 Messpunkten, was einer Reduktion von ungefähr 31 % entspricht. 25 4 Erfassung und Beschaffenheit der elektrischen Parameter 20 25 30 35 40 45 50 Time (s) 20 25 30 35 T J ( ° C ) Abbildung 4.14: Zeitlicher Verlauf der Sperrschichttemperatur TJ nach der Filterung (Daten mit reduziertem Rauschen). Überdies lässt sich der zeitliche Verlauf des Peaks der Spannung VRG,Peak betrachten, welcher auf Abbildung 4.15 sichtbar ist. Hierbei lässt sich keine starke Veränderung im Laufe der Zeit erkennen, was mit dem Ergebnis der ersten Messung übereinstimmt. Zusätzlich lassen sich Werte zwischen 10 816 mV sowie 13 964 mV beobachten. 20 25 30 35 40 45 50 Time (s) 10800 10850 10900 10950 11000 V R G ,P e a k ( m V ) Abbildung 4.15: Verlauf des Peaks der Spannung VRG,Peak nach der Filterung in Abhängigkeit der Zeit. Durch eine zweite Vergrößerung von RG,ext wurde eine weitere Reduktion des Rauschens erzielt, jedoch wird in diesem Kapitel nicht weiter auf die zeitlichen Verläufe eingegangen. Allerdings vari- iert die Sperrschichttemperatur TJ in einem Bereich von 24 ◦C bis 135 ◦C. Dabei stehen insgesamt 50 993 Stichproben vor der Filterung zur Verfügung. Nach Beseitigung der Schwellwerte umfasst der Datensatz 45 206 Messpunkte, somit sind 5787 Proben extreme Ausreißer. Dies entspricht einem Anteil von 11 % und somit lässt sich beobachten, dass sich durch Erhöhung des externen Gatewiderstandes RG,ext der prozentuale Anteil der extremen Ausreißer reduzieren lässt. 26 5 Implementierung von Algorithmen für die Bestimmung der Sperrschichttemperatur In diesem Kapitel wird der Aufbau von Modellen für die Sperrschichttemperaturbestimmung er- läutert. Dazu wird zunächst auf die Entwicklung von Algorithmen mithilfe der verrauschten Daten in Kapitel 5.1 eingegangen. Darauf folgt in den Kapiteln 5.2 und 5.3 die Beschreibung der Imple- mentierung von Modellen, die die verbesserten Signale als Eingabe nutzen. 5.1 Aufbau von Modellen mit verrauschten Daten In diesem Kapitel wird auf die Implementierung von Extrapolationsalgorithmen auf Basis der verrauschten Signalen eingegangen. Ziel ist dabei, durch Sensorfusion und KI auf einem Mikro- controller die Sperrschichttemperatur TJ eines MOSFETs zu bestimmen. Für die Implementierung wird zunächst das Tool NanoEdge AI Studio eingesetzt, welches basierend auf den Eingabedaten die Architekturen der jeweiligen Modelle, die sich für die Extrapolations- aufgabe eignen, ermittelt. In diesem Fall handelt es sich dabei um MLP, random forest regressor (RFR)-Modelle sowie die Ridge-Regression, auf die bereits in Kapitel 2 eingegangen wurde. Da- neben besteht die Möglichkeit, Modelle mithilfe der quelloffenen Python-Bibliothek scikit-learn auf einem PC zu realisieren und anschließend mit X-CUBE-AI auf einer MCU zu implementieren. Jene Bibliothek ermöglicht die Implementierung von Regressions- sowie Klassifikationsmodellen, beispielsweise lassen sich neuronale Netze oder Random Forest nennen. Für weitere Informationen über die Bibliothek lässt sich [sci24] heranziehen. 5.1.1 Einfluss der Größe des Datensatzes auf die Modellgenauigkeit Zu Beginn lässt sich der Einfluss der Größe des Datensatzes auf die Modellgenauigkeit untersu- chen. Insgesamt stehen 250 691 Messpunkte zur Verfügung, womit sich Datensätze unterschied- licher Größen erstellen lassen. Die Aufteilung erfolgt zunächst in 80 % Trainingsdaten und 20 % Testdaten. Außerdem besteht kein Bedarf eines Validierungsdatensatzes, da die Optimierung der Hyperparameter automatisiert in NanoEdgeAI Studio vorgenommen wird [STM24a]. Des Weite- ren werden zu Beginn Modelle auf Basis aller sechs zur Verfügung stehenden TSEPs entwickelt. 27 5 Implementierung von Algorithmen für die Bestimmung der Sperrschichttemperatur Hierbei besteht die Möglichkeit, für die Daten eine Korrelationsmatrix zu berechnen und zu vi- sualisieren. Dabei stellt ein Matrixeintrag den Korrelationskoeffizienten zwischen einem TSEP und TJ oder einem weiteren TSEP dar. Dieser nimmt Werte zwischen −1 und 1 an, wobei ein betragsmäßiger Wert von 1 eine starke Beziehung der verglichenen Parameter signalisiert, wohin- gegen ein Wert von 0 auf keinen vorhandenen Zusammenhang hinweist. Auf Abbildung 5.1 ist die Korrelationsmatrix des verrauschten Datensatzes abgebildet. T J V DS,o n V vth ,on V vth ,off V RG,P ea k t vd ,on t vd ,off T J V DS,o n V vth ,on V vth ,off V RG,P ea k t vd ,on t vd ,off 1 0.039 -0.16 -0.081 0.11 -0.019 -0.024 0.039 1 -0.083 -0.0094 0.1 0.00019 -6.2e-05 -0.16 -0.083 1 0.033 -0.12 0.0025 0.0051 -0.081 -0.0094 0.033 1 -0.049 0.00087 0.0026 0.11 0.1 -0.12 -0.049 1 -0.0045 -0.0063 -0.019 0.00019 0.0025 0.00087 -0.0045 1 0.73 -0.024 -6.2e-05 0.0051 0.0026 -0.0063 0.73 1 −1 −0.5 0 0.5 1 Abbildung 5.1: Heatmap der Korrelationsmatrix zwischen den TSEPs und TJ der stark verrausch- ten Daten. Durch das starke Rauschen bestehen lediglich schwache Beziehungen zwischen den einzelnen TSEPs und der Sperrschichttemperatur TJ. Die betragsmäßig größte Korrelation (−0,16) zwischen TJ und einem TSEP besteht mit der Einschaltschwellspannung Vvth,on. Bei 80 000 Datenpunkten erzielt das Modell mit der höchsten Bewertung einen R2 von 98,37 % im Training sowie 76,4 % im Test, was auf Overfitting hinweist. Eine Möglichkeit, dem entgegen- zuwirken, stellt das Training mit größeren Datensätzen dar, weshalb diese Modelle nicht weiter betrachtet und größere Datensätze für den Trainingsprozess eingesetzt werden. Die Größe des Trainingsdatensatzes lässt sich nun auf 100 000 Datenpunkte erhöhen, wobei das 28 5.1 Aufbau von Modellen mit verrauschten Daten Modell mit der höchsten Bewertung einen R2-Wert von 98,4 % und einen SMAPE von 1,24 % aufweist. Somit lässt sich eine Steigerung von 0,42 Prozentpunkten des R2-Werts im Vergleich zum vorherigen Durchlauf erkennen. Jenes Modell benötigt 0,1 kB RAM- und 96,5 kB Flash- Speicher auf dem Mikrocontroller und verfügt über 24 121 Parameter, wobei die Ausführungsdauer 21,4 µs beträgt. Mit dem 10 000 Punkte umfassenden Testdatensatz erzielt das Modell auf dem PC einen R2-Wert von 83,61 %, welcher ebenfalls nach der Implementierung auf dem Mikrocontroller erreicht wird. Die Modelle verhalten sich demnach identisch auf PC und Mikrocontroller, jedoch tritt hier ebenfalls Overfitting auf, weshalb eine weitere Erhöhung des Datensatzes notwendig ist. Daneben lässt sich der Zusammenhang zwischen dem benötigten Flash-Speicher sowie der Anzahl der Parameter für sämtliche mit diesem Datensatz aufgefundene RFR-Modelle untersucht. Da die spezifische Architektur der Modelle unbekannt ist, lässt sich die Anzahl der Parameter als Indikator für die Komplexität des Modells betrachten. Auf der folgenden Abbildung 5.2 ist das Streudiagramm des Flash-Speichers und der Anzahl der Parameter abgebildet: 0 10 000 20 000 30 000 40 000 50 000 60 000 70 0000 50 100 150 200 250 Anzahl der Parameter Fl as h- Sp eic he r( kB ) Speicherplatz Ausgleichsgerade Abbildung 5.2: Streudiagramm des Flash-Speichers und Anzahl der Parameter der Modelle des Datensatzes der Größe 100 000. Dabei lässt sich eine lineare Beziehung zwischen der Anzahl an Parametern sowie benötigtem Flash-Speicher erkennen, was darauf schließen lässt, dass sämtliche Parameter der Architektur über den gleichen Datentyp verfügen. Zusätzlich umfasst jeder Parameter 32 Bit, wobei es sich vermutlich um float-Variablen handelt und der Korrelationskoeffizient ρ beträgt 0,98. Dies lässt auf eine fast vollständige Korrelation des Flash-Speichers sowie der Anzahl der Parameter schließen. 29 5 Implementierung von Algorithmen für die Bestimmung der Sperrschichttemperatur Die Ausgleichsgerade lautet hier: Flash-Speicher = 0,0039 kB · Anzahl der Parameter + 1,79 kB. Im Kontrast dazu besteht kein simpler Zusammenhang zwischen benötigtem Flash-Speicher oder Anzahl der Parameter sowie der Ausführungsgeschwindigkeit auf der MCU. Abbildung 5.3 bildet das Streudiagramm der Ausführungsgeschwindigkeit sowie dem benötigten Flash-Speicher der Random Forest-Modelle ab. 0 20 40 60 80 100 120 140 160 180 200 220 2400 50 100 150 Flash-Speicher (kB) Au sfü hr un gs ge sc hw in di gk eit (µ s) Abbildung 5.3: Streudiagramm des Flash-Speichers und der Ausführungsgeschwindigkeit der Mo- delle des Datensatzes der Größe 100 000. Hierbei weist der Korrelationswert einen Wert von 0,6 auf, was auf eine schwache Beziehung der Ausführungsgeschwindigkeiten und der Anzahl der Parameter schließen lässt. Somit lässt sich observieren, dass Modelle mit hoher Komplexität nicht generell mehr Zeit für die Ausführung be- nötigen als Modelle geringerer Komplexität. Die realisierten Modelle unterscheiden sich in der Vor- verarbeitung der Eingabedaten, wodurch unterschiedliche Ausführungsgeschwindigkeiten zustande kommen können. Allerdings beträgt diese stets unter 200 µs, weshalb sich sämtliche Modelle für die Temperaturbestimmung in Echtzeit eignen. Es ist beachtlich, dass mit einem Datensatz der Größe von 175 000 Datenpunkten ebenfalls niedri- ge R2-Werte im Testprozess auftreten. Im Gegensatz dazu lässt sich mit dem gesamten Datensatz ein Modell realisieren, dass kein Overfitting aufweist, weshalb im Folgenden auf jene Trainingser- gebnisse eingegangen wird. In Tabelle 5.1 ist der Ressourcenbedarf der trainierten Modelle sichtbar, wobei die zehn Modelle mit den höchsten R2-Werten berücksichtigt werden. Dabei implementieren sämtliche Modelle 30 5.1 Aufbau von Modellen mit verrauschten Daten eine Random Forest-Architektur und alle Modelle benötigen 0,1 kB RAM-Speicher. Außerdem wurden die Modelle mit MLP- sowie Ridge-Architektur nicht betrachtet, da diese äußerst geringe R2-Werte von unter 70 % aufweisen. Tabelle 5.1: Ressourcenanforderungen für Modelle, die mit dem Datensatz der Größe 200 000 erstellt wurden. Anzahl der Parameter Ausführungsgeschwindigkeit (µs) Flash-Speicher (kB) 21 242 26,82 85 24 539 21,08 98,2 47 373 23,57 189,5 24 758 23,78 99,1 47 085 25,34 188,4 23 151 28,78 92,7 23 151 28,78 92,7 43 242 31,41 173 22 735 29,17 91 21 342 29,86 85,4 Hierbei lässt sich beobachten, dass das Modell mit der geringsten Komplexität über 21 242 Para- meter verfügt und dabei 85 kB Flash-Speicher benötigt. Allerdings stammt die niedrigste Ausfüh- rungsdauer von 21,08 µs nicht von diesem Modell. Überdies zeichnen sich die Modelle durch hohe Ausführungsgeschwindigkeiten aus, da keines über 32 µs benötigt. 20 000 25 000 30 000 35 000 40 000 45 000 50 00080 100 120 140 160 180 200 Anzahl der Parameter Fl as h- Sp eic he r( kB ) Speicherplatz Ausgleichsgerade Abbildung 5.4: Streudiagramm des benötigten Flash-Speichers und Anzahl der Parameter (200 000 Proben umfassender Datensatz). 31 5 Implementierung von Algorithmen für die Bestimmung der Sperrschichttemperatur Zusätzlich lässt sich der Zusammenhang zwischen der Anzahl der Parameter sowie benö- tigtem Flash-Speicher analysieren, wozu auf Abbildung 5.4 das dazugehörige Streudiagramm abgebildet ist. Außerdem lautet hier die Ausgleichsgerade: Flash-Speicher = 0,004 kB · Anzahl der Parameter + 0,086 kB. Dabei lässt sich erkennen, dass erneut ein linearer Zusam- menhang zwischen benötigtem Flash-Speicher und Anzahl der Parameter besteht, was mit den Ergebnissen aus den vorherigen Untersuchungen übereinstimmt. Zusätzlich lässt sich der Kor- relationskoeffizient ρ bestimmen, welcher hier den Wert 1 aufweist und somit die untersuchten Größen vollständig miteinander korrelieren. Im Kontrast dazu lässt sich auf Abbildung 5.5 das Streudiagramm zwischen Flash-Speicher und Ausführungsgeschwindigkeit sehen. Hier ist ebenfalls kein simpler Zusammenhang erkennbar, was wiederum an den unterschiedlichen Vorverarbeitungs- schritten der Modelle liegen kann. 80 90 100 110 120 130 140 150 160 170 180 190 20020 22 24 26 28 30 32 Flash-Speicher (kB) Au sfü hr un gs ge sc hw in di gk eit (µ s) Abbildung 5.5: Streudiagramm des Flash-Speichers und der Ausführungsgeschwindigkeit (200 000 Proben umfassender Datensatz). Außerdem beträgt hier der Korrelationskoeffizient ρ gleich −0,13, was auf einen schwachen negativ linearen Zusammenhang hinweist. Sämtliche Modelle verfügen über eine Ausführungsgeschwindig- keit von weniger als 35 µs, weshalb sich alle Modelle für die Sperrschichttemperaturbestimmung in Echtzeit eignen. Daneben ist eine effiziente Implementierung in Bezug auf Flash- und RAM- Speicher auf dem Mikrocontroller möglich. Des Weiteren zeigen die Untersuchungen, dass sich die Generalisierungsfähigkeit der realisierten Modelle mit zunehmender Datensatzgröße erhöhen lässt, was Tabelle 5.2 zeigt. Dieses Verhalten zeichnet sich durch den steigenden R2-Wert der Model- 32 5.1 Aufbau von Modellen mit verrauschten Daten le bei Anwendung auf den Testdatensatz observieren. Aus diesen Gründen wird für die weiteren Untersuchungen der Datensatz mit sämtlichen zur Verfügung stehenden Datenpunkten eingesetzt. Tabelle 5.2: Auswirkung verschiedener Größen des Datensatzes auf den R2-Wert. Trainingsdaten Testdaten R2 Trainingsdaten (%) R2 Testdaten (%) 80 000 20 000 98,37 76,4 100 000 25 000 98,4 80,55 175 000 43 750 98,70 86,14 200 553 50 138 95,56 94,25 5.1.2 Betrachtung der Perfomanz auf dem Mikrocontroller In diesem Kapitel wird erläutert, wie sich die Modellgenauigkeit auf dem Mikrocontroller erhöhen lässt. Zunächst werden die Modelle, die mit einem Datensatz aus 200 000 Datenpunkten sowie allen sechs TSEPs trainiert wurden, untersucht. Eingangs lässt sich das Modell mit dem höchsten R2-Wert betrachten. Dabei werden sowohl auf dem PC als auch auf dem Mikrocontroller ein R2-Wert von 94,25 % bei Anwendung auf die Testdaten erreicht, somit verhält es sich nach der Implementierung auf dem Mikrocontroller identisch. Des Weiteren beträgt der MAE 1,45 K, während RMSE und MSE 2,3 K beziehungsweise 5,3 K2 bemessen. Dabei benötigt es 85 kB Flash- und 0,1 kB RAM-Speicherplatz. −40 −30 −20 −10 0 10 20 30 40 50 60 70 800 2 4 6 8 10 12 14 Error (K) Pr ob ab ilit y (% ) Abbildung 5.6: Histogramm der Temperaturabweichungen während des Tests auf dem Mikrocon- troller (Modell mit dem höchsten R2-Wert des 200 000 Datenpunkte umfassenden Datensatzes). 33 5 Implementierung von Algorithmen für die Bestimmung der Sperrschichttemperatur Auf Abbildung 5.6 ist das Histogramm des Fehlers während des Tests des Modells auf der MCU abgebildet. Der Fehler ist hierbei als Differenz zwischen der realen Sperrschichttemperatur TJ sowie der bestimmten Temperatur des Modells definiert. Aus dem Histogramm lässt sich ableiten, dass der Fehler einer Normalverteilung mit Mittelwert µ = −0,22 und Standardabweichung σ = 2,29 folgt. Ebenfalls lassen sich extreme Abweichungen von 75,9 K erkennen, jedoch beträgt die Auftrittswahrscheinlichkeit ungefähr 0,02 % und ist somit äußerst gering. Um die Vorhersagen robuster zu gestalten, lässt sich die Ensemblemethode nutzen. Dabei handelt es sich um das zugrunde liegende Konzept des Random Forests, auf das in Kapitel 2.1.2 auf Seite 8 eingegangen wird. Folglich lassen sich mehrere, unterschiedliche Random Forest-Modelle kombinieren, um den Einfluss auf die Genauigkeit der bestimmten Sperrschichttemperatur zu analysieren. Zu Beginn lassen sich die zwei Random Forest-Modelle mit den höchsten R2-Werten wählen und betrachten. Auf Abbildung 5.7 ist das Histogramm des Fehlers des Ensembles aus zwei Random Forest-Modellen abgebildet. Dabei wird ersichtlich, dass der Fehler ebenfalls einer Normalvertei- lung folgt, allerdings mit einem Mittelwert µ = −0,35 sowie einer Standardabweichung σ = 2,17. Einträchtig erzielen beide Modelle einen erhöhten R2-Wert von 94,73 % und die maximale Abwei- chung lässt sich von 75,9 K auf 40 K reduzieren. Zusätzlich erzielt das Ensemble einen MAE von 1,41 K und einen RMSE von 2,3 K sowie einen MSE von 5,3 K2. −40 −30 −20 −10 0 10 20 30 400 2 4 6 8 10 12 14 Error (K) Pr ob ab ilit y (% ) Abbildung 5.7: Histogramm des Fehlers des Ensembles aus zwei Random Forest-Modellen. Dabei lässt sich beobachten, dass die Metriken im Vergleich zum einzelnen Modell verbessert 34 5.1 Aufbau von Modellen mit verrauschten Daten sind und darauf hindeuten, dass das Ensemble überlegen ist. Die Verbesserung der Genauigkeit sowie die Reduktion des maximalen Fehlers geht jedoch mit einer Zunahme des Ressourcenbedarfs einher, da sich die Ausführungsgeschwindigkeit auf der MCU sowie der Speicherbedarf addieren. So erhöht sich der R2 um 0,48 Prozentpunkte, während der Flash-Speicherbedarf um 98,2 kB und die Ausführungsgeschwindigkeit um 21,1 µs steigen. Mithilfe eines Ensembles aus drei Random Forest-Modellen lässt sich der R2-Wert um weitere 0,11 Prozentpunkte auf 94,81 % anheben und zusätzlich die maximalen Abweichungen auf ±20 K begrenzen. Daneben lässt sich der MAE um 0,05 K auf 1,4 K reduzieren, während der RMSE um 0,11 K auf 2,19 K verkleinert wird. Überdies lässt sich der MSE auf 4,78 K2 reduzieren, was einer Differenz von 0,52 K2 entspricht. Das Histogramm des Fehlers des Ensembles auf Abbil- dung 5.8 zeigt, dass der Fehler ebenfalls einer Normalverteilung mit Mittelwert µ = −0,46 und Standardabweichung σ = 2,14 folgt. −35 −30 −25 −20 −15 −10 −5 0 5 10 15 20 250 2 4 6 8 10 12 14 Error (K) Pr ob ab ilit y (% ) Abbildung 5.8: Histogramm des Fehlers des Ensembles aus drei Random Forest-Modellen. Zusätzlich lassen sich die bestimmten Werte der Sperrschichttemperatur mit den realen Wer- ten vergleichen, was auf Abbildung 5.9 zu sehen ist. Dabei sind einige Ausreißer zu erkennen, insbesondere bei einer Temperatur von ungefähr 25 ◦C, was auf Einschwingvorgänge zu Beginn der Messung zurückzuführen sein könnte. Darüber hinaus erhöht sich der Ressourcenbedarf um 189,5 kB Flash-Speicher und die Ausführungsgeschwindigkeit um 23,6 µs. Daneben besteht die Möglichkeit, mithilfe der Programmiersprache Python sowie der Bibliothek scikit-learn ein Random Forest-Modell zu realisieren. Im Kontrast zu NanoEdgeAI Studio ist hier 35 5 Implementierung von Algorithmen für die Bestimmung der Sperrschichttemperatur 25 30 35 40 45 50 55 T J,real (°C) 0 20 40 60 80 100 T J ,e s t ( ° C ) Predictions Fit Abbildung 5.9: Vergleich der bestimmten Sperrschichttemperaturwerte des Ensembles aus drei Random Forest-Modellen mit den realen Temperaturwerten. eine Vorverarbeitung der Signale notwendig. Aufgrund des Vorhandenseins von starkem Rauschen fällt die Wahl auf die Standardisierung, auf die in 5.2.1 näher eingegangen wird. Außerdem wurde die Reihenfolge der Proben zufällig neu angeordnet, während die Testdaten bei NanoEdgeAI Studio in ihrer realen gemessenen Reihenfolge verbleiben. So lässt sich ein Random Forest aus acht Entscheidungsbäumen realisieren, der einen R2-Wert von 98,9 % bei einem MAE von 1,3 K sowie einem MSE von 4,62 K2 erzielt. Der R2-Wert liegt somit 4,09 Prozentpunkte über dem R2 des drei Modelle umfassenden Ensembles, während der MSE 0,16 K2 geringer ist. Darüber hinaus weist dieses Modell einen 0,1 K geringeren MAE auf und ist den Modellen aus NEAI in sämtlichen Aspekten, die die Leistung betreffen, überlegen. Abbildung 5.10 zeigt das Histogramm des Fehlers des Python-Modells, nach Anwendung auf den Testdatendatz. Hier folgt der Fehler ebenfalls einer Normalverteilung, allerdings mit Mittelwert µ = 0,015 sowie Standardabweichung σ = 2,15. Des Weiteren beträgt die maximale Abweichung ungefähr 39 K, was einem Anstieg von 39 % im Vergleich zum Wert des Ensembles der Größe drei darstellt. Der Vergleich zwischen der bestimmten Sperrschichttemperaturen sowie den wahren Werten ist auf Abbildung 5.11 abgebildet. Hierbei lassen sich einige extreme Ausreißer observieren. Daneben besteht die Möglichkeit, die Feature Importance zu bestimmen, welche auf der folgenden 36 5.1 Aufbau von Modellen mit verrauschten Daten −30 −20 −10 0 10 20 30 400 5 10 15 20 Error (K) Pr ob ab ilit y (% ) Abbildung 5.10: Histogramm des Fehlers des scikit-learn-Modells, angewandt auf den verrauschten Datensatz. Abbildung sichtbar ist. Die Feature Importance ist ein Maß dafür, wie relevant ein Feature (hier: TSEP) für die Bestimmung der Zielvariablen (hier: TJ) ist. Es ist ersichtlich, dass die Parameter Vvth,on (0,77) sowie tvd,on (0,19) den größten Einfluss auf die Bestimmung der Sperrschichttemperatur TJ nehmen. Auf der folgenden Abbildung 5.13 ist der Vergleich zwischen den Histogrammen der Temperatur- fehler abgebildet. Hierbei lässt sich beobachten, dass das Python-Modell dem Ensemble wegen eines höherem R2 überlegen ist, jedoch besitzt es eine um 20 K größere maximale Abweichung. Tabelle 5.3 fasst die Leistungen der Ensembles der Modelle aus NanoEdgeAI Studio sowie des scikit-learn-Modells zusammen. Tabelle 5.3: Einfluss der Bildung von Ensembles auf den R2-Wert. Methode Größe des Ensembles Mittelwert µ Standardabweichung σ R2 (%) NEAI 1 −0,22 2,29 94,25 NEAI 2 −0,35 2,17 94,73 NEAI 3 −0,46 2,14 94,84 Scikit-learn 1 0,015 2,15 98,9 Dabei lässt sich beobachten, dass mit steigender Größe des Ensembles aus NEAI-Modellen die Standardabweichung reduziert wird und gleichzeitig der R2-Wert ansteigt. Die Untersuchungen 37 5 Implementierung von Algorithmen für die Bestimmung der Sperrschichttemperatur 25 30 35 40 45 50 55 T J,real (°C) 0 20 40 60 80 100 T J ,e s t ( ° C ) Predictions Fit Abbildung 5.11: Vergleich der realen sowie der bestimmten Sperrschichttemperatur des scikit- learn-Modells. zeigen, dass sich durch den Einsatz von Ensembles der R2-Wert gezielt bei gleichzeitiger Reduktion des maximalen Fehlers erhöhen lässt. Zusätzlich lässt sich eine Abnahme der Metriken MAE, MSE sowie RMSE mit zunehmender Ensemblegröße beobachten. Allerdings steigt dabei ebenfalls der Bedarf an Speicherplatz sowie die benötigte Dauer für die Ausführung der Inferenz. Im Vergleich dazu, lässt sich jedoch mit einem Modell aus scikit-learn ein R2-Wert von 98,9 % erzielen, der allerdings mit einem maximalen Fehler von ungefähr 40 K einhergeht. Somit eig- net sich bei stark verrauschten Daten der Einsatz des Python-Modells für die Bestimmung der Sperrschichttemperatur TJ. 5.2 Entwicklung von Modellen auf Basis von Daten mit höherer Qualität In diesem Kapitel wird auf die Realisierung von Modellen mithilfe der Daten mit reduziertem Rauschen eingegangen. Dazu wird zunächst in Kapitel 5.2.1 die Entwicklung von Algorithmen mithilfe von scikit-learn erläutert. Die Realisierung von Modellen in NanoEdgeAI Studio erfolgt in Kapitel 5.2.2, die ebenfalls eine Analyse der Auswirkungen unterschiedlicher Kombinationen von TSEPs auf die Modellgenauigkeit beinhaltet. 38 5.2 Entwicklung von Modellen auf Basis von Daten mit höherer Qualität V RG,P ea k t vd ,off V vth ,off V DS,o n V vth ,on t vd ,on 0 0.2 0.4 0.6 0.8 1 5. 96 ·1 0− 4 2. 14 ·1 0− 3 5. 63 ·1 0− 3 3. 24 ·1 0− 2 0. 19 0. 77 TSEP Fe at ur e Im po rta nc e Abbildung 5.12: Feature Importance des scikit-learn-Modells, angewandt auf den verrauschten Datensatz. 5.2.1 Aufbau von Random Forest-Modellen in scikit-learn Insgesamt stehen nach einer manuellen Filterung der Daten via Festlegung von Schwellwerten 125 480 Stichproben zur Verfügung, die sich zufälligerweise in 70 % Trainingsdaten sowie 30 % Testdaten aufteilen lassen. Als Eingabesignale fungieren zunächst sechs elektrische Parameter oh- ne den Peak des Gatestroms IG,Peak, der sich durch die Zwischenkreisspannung VDC austauschen lässt. Zu Beginn lässt sich die Korrelationsmatrix der einzelnen TSEPs und der Sperrschichttem- peratur errechnen sowie visualisieren. Dies ist auf der folgenden Abbildung 5.14 sichtbar. Dabei bestätigt die Korrelationsmatrix die starke Korrelation zwischen den Schwellspannungen sowie den Schaltverzögerungszeiten. Im Vergleich zur vorherigen Korrelationsmatrix (Abbildung 5.1 auf Seite 28) lässt sich nun eine starke Antikorrelation (−0,9) zwischen der Einschaltschwellspannung Vvth,on und der Sperrschicht- temperatur TJ erkennen. Zunächst wird der Einfluss unterschiedlicher Vorverarbeitungsschritte der Eingabedaten unter- sucht. Dazu wird als erstes lediglich die Filterung der Ausreißer via Schwellwerte betrachtet, wobei die Messdaten nicht normalisiert werden und somit ihre physikalischen Einheiten beibehalten. 39 5 Implementierung von Algorithmen für die Bestimmung der Sperrschichttemperatur −30 −20 −10 0 10 20 30 400 5 10 15 20 Error (K) Pr ob ab ilit y (% ) 1 model (Python) 3 models (NEAI) Abbildung 5.13: Vergleich der Histogramme der Fehler der verschiedenen Random Forest-Modelle, angewandt auf die verrauschten Daten. Die erste betrachte Architektur des Random Forests verfügt über fünf Entscheidungsbäume mit einer maximalen Tiefe von 25, um den Ressourcenverbrauch der MCU so minimal wie möglich zu halten. Dabei erzielt das Modell im Testprozess einen R2-Wert 98,3 %, einen MAE von 1,5 K, einen MSE von 4,31 K2 sowie einen RMSE von 2,08 K. Allerdings übersteigt der Speicherbedarf des Modells die verfügbaren Ressourcen, weshalb diese Realisierung nicht weiter in Betracht ge- zogen wird. Eine Möglichkeit, dem entgegenzuwirken, stellt die Quantisierung dar, die jedoch mit Verlusten der Genauigkeit einhergeht. Aus diesem Grund wird die Auswirkung durch Verringerung der maximalen Tiefe näher betrachtet. Daneben besteht die Möglichkeit, die Eingabedaten zu normalisieren oder zu standardisieren. Durch die Normalisierung der Werte weisen die Modelle keine Tendenz zu Features auf, die höhere numerische Werte annehmen. Die Python-Bibliothek scikit-klearn ermöglicht die Berechnung der Mittelwerte µ sowie der Standardabweichungen σ sämtlicher Features. Tabelle 5.4 stellt die statistischen Kenngrößen der sechs eingesetzten TSEPs und der Sperrschicht- temperatur sowie der Zwischenkreisspannung dar. Dabei bestehen zwei Möglichkeiten für die Vor- verarbeitung der Daten. Auf der einen Seite existiert die Standardisierung mit einem Mittelwert µ = 0 sowie der Standardabweichung σ = 1, wodurch sämtliche Features einer Standardnormalver- teilung folgen. Dabei erfolgt die Berechnung der standardisierten Datenpunkte folgendermaßen: z = x−µ σ . Daneben lässt sich ebenfalls die Min-Max-Skalierung einsetzen, welche sich solcherge- 40 5.2 Entwicklung von Modellen auf Basis von Daten mit höherer Qualität T J V DS,o n V vth ,on V vth ,off V DC I G,P ea k t vd ,on t vd ,off T J V DS,o n V vth ,on V vth ,off V DC I G,P ea k t vd ,on t vd ,off 1 0.17 -0.9 -0.31 -0.097 0.35 -0.64 0.18 0.17 1 -0.25 0.84 0.031 -0.13 -0.25 -0.66 -0.9 -0.25 1 0.23 -0.31 -0.16 0.82 -0.09 -0.31 0.84 0.23 1 0.0056 -0.27 0.14 -0.76 -0.097 0.031 -0.31 0.0056 1 -0.36 -0.45 -0.11 0.35 -0.13 -0.16 -0.27 -0.36 1 -0.036 0.23 -0.64 -0.25 0.82 0.14 -0.45 -0.036 1 -0.039 0.18 -0.66 -0.09 -0.76 -0.11 0.23 -0.039 1 −1 −0.5 0 0.5 1 Abbildung 5.14: Heatmap der Korrelationsmatrix zwischen den TSEPs und der Sperrschichttem- peratur (Daten mit reduziertem Rauschen). Tabelle 5.4: Statistische Kenngrößen der gemessenen elektrischen Parameter für die Normalisie- rung und Standardisierung des gefilterten Datensatzes. TSEP Mittelwert µ Standardabweichung σ Minimum Maximum TJ 56,6 15,73 21,68 192,98 VDC 146,26 28,64 99,02 199,87 VDS,on 724,86 242,1 28,84 1307,91 Vvth,on 4573,95 147,78 4300,23 5066,07 Vvth,off 4038,59 635,24 1537,02 5307,46 IG,Peak 2,33 0,01 2,3 2,97 tvd,on 305,24 1,58 53,34 309,36 tvd,off 418,58 17,25 90,2 460 stalt errechnen lässt: z = x−xmin xmax−xmin . Hierbei erfolgt die Normalisierung in einem Bereich zwischen 0 und 1. Im Folgenden wird mit der Standardisierung gearbeitet, da die Normalisierung stark von Ausreißern beeinflusst wird. Im Nachfolgenden wird der Aufbau eines Random Forests mithilfe von scikit-learn erläutert, wobei die standardisierten Eingabedaten zum Einsatz kommen. Die Struktur des Modells wird auf acht 41 5 Implementierung von Algorithmen für die Bestimmung der Sperrschichttemperatur Entscheidungsbäume mit einer maximalen Tiefe von zehn begrenzt, um Ressourcen der MCU einzusparen. Nach dem Training des Modells lässt sich die Feature Importance errechnen. t vd ,off t vd ,on V DS,o n V vth ,off V DC V vth ,on 0 0.2 0.4 0.6 0.8 1 1. 41 ·1 0− 3 2. 07 ·1 0− 3 2. 22 ·1 0− 3 8. 66 ·1 0− 3 0. 14 0. 85 TSEP Fe at ur e Im po rta nc e Abbildung 5.15: Feature Importance der Features des Random Forests mit standardisierten Ein- gabedaten (Daten mit reduziertem Rauschen). Aus Abbildung 5.15 lässt sich schlussfolgern, dass die Einschaltschwellspannung Vvth,on sowie die Zwischenkreisspannung VDC den größten Einfluss auf das Modell nehmen. Jedoch legt die Korrela- tionsmatrix nahe, dass neben der Vvth,on die Einschaltverzögerungsdauer tvd,on den größten Beitrag zur Bestimmung von TJ liefert. Das Ergebnis der Feature Importance lässt sich mit der Abhän- gigkeit der Einschaltverzögerungsdauer von der Zwischenkreisspannung VDC erklären [Zha+19]. Überdies bemisst der MSE des Testprozesses 7,36 K2, der MAE 2,19 K und der R2-Wert 97 %, womit dieser Wert 1,13 Prozentpunkte unter dem Wert der fünf Entscheidungsbäume umfassen- den Random Forests liegt. Dadurch lässt sich schlussfolgern, dass eine Erhöhung der maximalen Tiefe der Bäume zu Modellen mit höherem R2-Werten führt. Allerdings ist dies mit einer Er- höhung des Speicherbedarfs verbunden, der die zur Verfügung stehenden Ressourcen übersteigt. Dabei handelt es sich um das Verhalten des Modells auf dem PC und im Folgenden wird weiter auf die Leistung des Modells eingegangen. Auf der Abbildung 5.16 ist das Histogramm des Fehlers abgebildet. Dem Histogramm lässt sich entnehmen, dass der Fehler einer Normalverteilung mit Mittelwert µ = 0,022 und Standardabweichung σ = 2,72 folgt. Nun erfolgt die Implementierung des Modells mithilfe von X-CUBE-AI auf der MCU, um das Ver- halten darauf zu analysieren. Dazu lässt sich das Modell aus scikit-learn mithilfe des Austausch- 42 5.2 Entwicklung von Modellen auf Basis von Daten mit höherer Qualität −20 −15 −10 −5 0 5 10 15 200 2 4 6 8 Error (K) Pr ob ab ilit y (% ) Abbildung 5.16: Histogramm des Fehlers des Random Forests auf dem PC (scikit-learn-Modell, angewandt auf den Datensatz mit reduziertem Rauschen). formats ONNX repräsentieren und nach X-CUBE-AI ohne Quantisierung exportieren, um keine Verluste der Genauigkeit zu erleiden. Der Random Forest benötigt 1,55 kB RAM sowie 211,3 kB Flash-Speicher. In Kontrast zu NanoEdgeAI Studio, steht bei Verwendung von X-CUBE-AI eine Komplexitätsmetrik namens MACC zur Verfügung. Diese zeigt die Komplexität des Modells in Multiplikations- sowie Akkumulationsoperationen an und beträgt in diesem Fall 210. Überdies be- nötigt das Modell für die Ausführung 82,5 µs auf dem Mik