System Identification Toolbox

 

System Identification Toolbox

Erstellen Sie lineare und nichtlineare dynamische Systemmodelle von Eingangs- und Ausgangsdaten

Die System Identification Toolbox vereint MATLAB-Funktionen, Simulink-Blöcke und eine App zur dynamischen Systemmodellierung, Zeitreihenanalyse und Vorhersage. So können Sie die dynamischen Beziehungen zwischen den gemessenen Variablen untersuchen, um Übertragungsfunktionen, Prozessmodelle und Zustandsraummodelle entweder zeitkontinuierlich oder zeitdiskret mithilfe von Daten aus dem Zeit- oder Frequenzbereich zu erstellen. Ebenso lassen sich Zeitreihen mithilfe von AR, ARMA und anderen linearen und nichtlinearen autoregressiven Modellierungstechniken prognostizieren.

Die Toolbox ermöglicht die Schätzung nichtlinearer Systemdynamiken mithilfe von Hammerstein-Wiener- und nichtlinearen ARX-Modellen mit Methoden des Machine Learning wie Gaußschen Prozessen (GP), Support Vector Machines (SVM) und anderen Darstellungen. Alternativ dazu besteht die Möglichkeit, mithilfe von Deep Learning neuronale Modelle für gewöhnliche Differentialgleichungen (ODE) zu erstellen, um nichtlineare Systemdynamiken zu erfassen. Mit der Toolbox können Sie ebenso eine Grey-Box-Systemidentifikation zur Abschätzung der Parameter eines benutzerdefinierten Modells durchführen. Die identifizierten Modelle können dann in Simulink integriert werden, um schnelle Simulationen für den Steuerungs- und Regelungsentwurf sowie für Diagnose- und Prognoseanwendungen vorzunehmen.

Mithilfe von erweiterten oder einfachen Kalman-Filtern und Partikelfiltern lassen sich Online-Parameter- und Zustandsschätzungen für adaptive Regelungen, zur Fehlerdetektion und für Soft-Sensing-Anwendungen durchführen. Diese Toolbox ermöglicht die Generierung von C/C++ Code für Online-Schätzalgorithmen auf Embedded Devices.

Systemidentifikations-App

Verwenden Sie die System Identification-App, um interaktiv lineare und nichtlineare Modelle Ihres Systems schätzen zu lassen. Sie können dafür Daten aus dem Zeit- und Frequenzbereich importieren und vorverarbeiten. Identifizieren und vergleichen Sie Ihre Modelle, analysieren Sie deren Eigenschaften und validieren Sie die Modelle anhand von Testdatensätzen.

Lineare Systemidentifikation

Schätzen Sie lineare Modelle aus gemessenen Daten im Zeit- oder Frequenzbereich für Anwendungen wie den Regelungsentwurf, die Systemsimulation und Vorhersagen. Erstellen Sie dabei Transferfunktionen, Prozessmodelle, Zustandsraummodelle und polynomiale Modelle in kontinuierlicher oder diskreter Zeit. Mithilfe der Spektralanalyse haben Sie darüber hinaus die Möglichkeit, Frequenzgang-Modelle zu schätzen. Die Auswirkungen von parameterbezogenen Unwägbarkeiten können ebenso berechnet und im Zeit- und Frequenzbereich dargestellt werden.

Nichtlineare Systemidentifikation

Schätzen Sie nichtlineare ARX- und Hammerstein-Wiener-Modelle, um die nichtlineare Dynamik Ihres Systems zu erfassen. Die Verwendung von nichtlinearen ARX-Modellen ermöglicht es Ihnen, autoregressive Modelle mit dynamischen Nichtlinearitäten zu kombinieren, die durch Wavelet-Netzwerke, Baumstrukturpartitionierung und sigmoide Netzwerke dargestellt werden. Zudem können Sie Regressoren angeben, um die Physik Ihres Systems zu erfassen, oder automatisch eine optimale Teilmenge von Regressoren für nichtlineare ARX-Modelle auswählen. Sie haben des Weiteren die Möglichkeit, anhand von Hammerstein-Wiener-Modellen die Eingangs- und Ausgangs-Nichtlinearitäten eines ansonsten linearen Systems zu schätzen.

KI-basierte nichtlineare Systemidentifikation

Kombinieren Sie Machine Learning und Deep Learning mit nichtlinearen ARX- und Hammerstein-Wiener-Modellen, um die nichtlineare Dynamik Ihres Systems zu beschreiben. Mit der Statistics and Machine Learning Toolbox sowie der Deep Learning Toolbox können Sie Support Vector Machines (SVM), Baum-Ensembles, Gaußsche Prozesse und Feedforward-Netze zur Darstellung von Nichtlinearitäten einbinden. Erstellen Sie außerdem auf Deep Learning basierende nichtlineare Zustandsraummodelle mithilfe neuronaler ODEs.

Lineares Grey-Box-Modell eines Gleichstrommotors.

Grey-Box-Systemidentifikation

Mithilfe von linearen oder nichtlinearen Differentialgleichungen, Differenzengleichungen oder einem Zustandsraumsystem haben Sie die Möglichkeit, Ihr System zu modellieren. Schätzen Sie in diesem Zusammenhang die spezifischen Parameter Ihres Grey-Box-Modells anhand gemessener Eingangs- und Ausgangsdaten, um die Dynamik Ihres Systems zu erfassen.

Ein Diagramm der prognostizierten Reaktion für ein Zeitreihenmodell eines Induktionsofens mit einem Konfidenzbereich für die Prognose.

Zeitreihenmodelle

Führen Sie Schätzungen Ihrer Zeitreihen- oder Signalmodelle durch, um sie an die gemessenen Daten Ihres Systems anzupassen. Mithilfe von linearen Modellen wie AR, ARMA, ARIMA und Zustandsraummodellen oder nichtlinearen Modellen wie dem nichtlinearen ARX werden so Zeitreihen prognostiziert.

Online-Schätzung

Schätzen Sie ein Modell Ihres Systems in Echtzeit mithilfe von rekursiven Algorithmen, die Modellparameter aktualisieren, sobald neue Daten verfügbar sind. Die Systemzustände lassen sich mithilfe von linearen, erweiterten oder einfachen Kalman-Filtern sowie Partikelfiltern schätzen.

Entwurf von Regelungssystemen und Simulink

Verwenden Sie Ihre geschätzten Modelle als Streckenmodelle für den Entwurf und die Optimierung von Regelungen mit der Control System Toolbox. Es ist hierbei möglich, geschätzte Modelle, Zustandsschätzer und rekursive Modelle in Simulink zu implementieren und mithilfe von integrierten Blöcken für die Systemanalyse, die Modellierung virtueller Sensoren, die Modellierung mit reduzierter Modellordnung (ROM) und den Regelungsentwurf zu verwenden.

Bereitstellung

Unter Verwendung der Codegenerierung können Sie geschätzte Modelle, Zustandsschätzer und rekursive Modelle für Anwendungen wie die Online-Fehlerdetektion, Reduced-Order-Modellierung (ROM) sowie zur Diagnostik und Prognostik einsetzen. Generieren Sie C/C++ Code und IEC 61131-3 Structured Text mithilfe des Simulink Coder und des Simulink PLC Coder für in Simulink implementierte Modelle. Zur Generierung von C/C++ Code in MATLAB empfehlen wir den MATLAB Coder. Alternativ können Sie auch den MATLAB Compiler verwenden, um eigenständig ausführbare Anwendungen zu erstellen.

„Durch die Verbesserung der Leistung unseres bestehenden AFR-Steuerungssystems mithilfe der Optimization Toolbox und der System Identification Toolbox konnten wir die Menge der erzeugten Abgase erheblich reduzieren. Im Rahmen einer Evaluierungsstudie mit einem in der Entwicklung befindlichen Motor haben wir festgestellt, dass unter bestimmten Bedingungen die NOx- und Kohlendioxid-Emissionen um die Hälfte oder sogar mehr gesenkt werden konnten.“