VisSim-/MATLAB-Integration
VisSim bietet einige benutzerfreundliche Features zur Integration von MATLAB-Dateien, -Variables und -Funktionen in die VisSim-Simulationsumgebung.
- MATLAB-Dateiimport: Die Standard-VisSim-Blöcke transferFunction und stateSpace können problemlos für den Import von MATLAB-M- und MAT-Dateien, die SISO (Single-Input Single-Output)-Übertragungsfunktionen bzw. MIMO (Multi-Input Multi-Output)-Zustandraumdarstellungen enthalten, konfiguriert werden.
- MatlabRead- und MatlabWrite-Blöcke: Im Lieferumfang von VisSim sind MatlabRead- und MatlabWrite-Blöcke enthalten, die einen dynamischen Variablenaustausch zwischen MATLAB und VisSim ermöglichen.
- Matlab Expression-Block: Im Lieferumfang von VisSim ist darüber hinaus ein Matlab Expression-Block enthalten, der das direkte Bearbeiten und Ausführen von MATLAB-Skripts in der VisSim-Umgebung ermöglicht.
Import von MATLAB-Systementwürfen
Systementwürfe mit einer oder mehreren SISO (Single-Input Single-Output)-Übertragungsfunktionen bzw. MIMO (Multi-Input Multi-Output)-Zustandraumdarstellungen, die in der MATLAB-Umgebung entwickelt wurden, können problemlos in VisSim verwendet werden. Unter Verwendung der Blöcke transferFunction bzw. stateSpace in VisSim können sowohl als kontinuierlich als auch als diskret spezifizierte Systeme in VisSim importiert werden. Beide Blöcke können so konfiguriert werden, dass eine M- oder MAT-Datei mit einer Spezifikation des Systementwurfs eingelesen, und dieser Entwurf in VisSim automatisch verwendet wird. Wird die Simulation nach dem Lesen der Datei ausgeführt, ist keine Verringerung der Systemleistung bemerkbar.
Eines der Standardverfahren beim Entwurf von Steuerungssystemen für komplexe nichtlineare Systeme verwendet beispielsweise den Ansatz des schrittweisen linearen Entwurfs, bei dem das System über mehrere benutzerdefinierte operative Bereiche linearisiert wird. Nach der Definition der operativen Bereiche werden jeweils unterschiedliche lineare Steuerungssysteme für die Verwendung in den einzelnen Bereichen entworfen. So kann beispielsweise ein Entwurf mit sechs operativen Bereichen in VisSim importiert werden, indem wie oben beschrieben sechs Blöcke verwendet werden. Anschließend werden diese mit booleschen Standard-VisSim-Blöcken verbunden und auf diese Weise wird festgelegt, welcher Controller für einen gegebenen Zeitpunkt aktiv ist.
ACHTUNG: In diesem Fall darf es sich bei der M- oder MAT-Datei ausschließlich um eine Spezifikation eines linearen Systems handeln. Es darf keine beliebige MATLAB-Funktion oder -Anweisung verwendet werden.
Austausch von Variablen mit MatlabRead- und MatlabWrite-Blöcken
Mithilfe der MatlabRead- und MatlabWrite-Blöcke kann in einer VisSim-Simulation auf beliebige in der MATLAB-Umgebung definierte Variablen interaktiv zugegriffen werden, und umgekehrt. Nach dem Start der Simulation ruft VisSim automatisch MATLAB auf und greift auf beliebige MATLAB-Variablen, die in einem VisSim-Modell verwendet werden, zu. Typische Beispiele für Variablen, die in MATLAB initialisiert werden, sind Koeffizienten des Steuerungssystems und andere Systemparameter. Beispiele für Variablen, die aus VisSim nach MATLAB exportiert werden, sind Simulationsergebnisse, die dort visualisiert oder auf andere Weise nachbearbeitet werden. Darüber hinaus können Benutzer in MATLAB Skriptdateien ausführen, um so Parameter für die VisSim-Systemsimulation zu initialisieren und VisSim über die MATLAB-Befehlszeile zu starten oder zu stoppen. Ein mögliches Einsatzgebiet für dieses Szenario liegt beispielsweise in der Automatisierung und Ausführung umfangreicher Monte Carlo-Simulationen.
Interaktive skriptbasierte Steuerung von MATLAB mit dem MATLAB Expression-Block
Der Matlab Expression-Block (siehe oben) ermöglicht Benutzern das direkte Bearbeiten und Ausführen von MATLAB-Skripts in der VisSim-Umgebung. Auf diese Weise wird das Hin- und Herwechseln zwischen den beiden Anwendungen beim Entwickeln und Ausführen interaktiver anwendungsübergreifender VisSim-/MATLAB-Simulationen überflüssig.
Beispiele für MATLAB-Ausdrücke, die mithilfe des MATLAB Expression-Blocks per Skript gesteuert werden sind u. a. die Berechnung der Eigenwerte über Systemmatrizen oder die Berechnung der optimalen Steuerkoeffizienten linearer quadratischer Regulatoren (LQR).
Newsletter
Melden Sie sich kostenlos an
- Produktnews, Support und Updates
- Online-Webinare und Live-Expertenschulungen
- Tipps und Tricks, um Ihre Software optimal zu nutzen
Sie möchten kaufen?
Was sagen unsere Kunden über uns?
I have now followed your (very clear!) instructions and am happy to report that my problem is solved. Magic! You have made me a much, much happier person!
CS, Reading, UKCourse was excellent, Bob was very thorough, covering a lot of ground. The content was just what was required. Very pleased!
[Bob] gave excellent unbiased information
I have always received excellent support with Bibliographic software from your team. Thanks a lot.
AM, London, UK