Simulator Suite
Kurzfassung
Simulation und Auswertung von Modellen
Die Simulator Suite ermöglicht unseren Kunden eine effiziente Auswertung von Modellen, die auf dem Functional Mock-up Interface-Standard (FMI) oder kompiliertem Dymola-Code basieren. Mit unserem Softwarepaket können Modelle sowohl in bekannten Anwendungen wie Excel oder LabVIEW simuliert als auch über SDKs in C/C++ und Python genutzt werden. Weitreichende Konfigurationsmöglichkeiten sowie spezialisierte Lösertechnik erlauben die performante Auswertung komplexer thermodynamischer Systeme.
Das Softwarepaket
Aufbau und Inhalt
Die Simulator Suite ermöglicht, Modelle in verschiedenen Anwendungsprogrammen zu simulieren. Darüber hinaus kann der Simulationskern über vorhandene SDKs ("Software Development Kit"), die wahlweise auf C/C++ oder Python basieren, in eigene Software integriert werden.
Integrationen des Simulationskerns sind für folgende Anwendungen verfügbar:
- TLK-Simulator für Excel
- TLK-Simulator für LabVIEW
- TLK-Simulator für TISC
- TLK-Simulator für TRNSYS
Simulator SDKs:
- TLK-Simulator für Python
- TLK-Simulator für C/C++
Der Simulationskern der Simulation Suite ist auch in unsere Softwareprodukte ModelFitter und Optimization Suite eingebunden. Ebenso kann er über unser Softwareprodukt MoBA Automation in unterschiedlichste Arbeitsabläufe integriert werden.
Simulationskern
Berechnung von Modellen
Der Simulationskern kann über die SDKs direkt angesprochen werden. Folgende Modelltypen werden unterstützt:
- FMI (1.0/2.0/3.0, ModelExchange und Co-Simulation)
- Dymola Modell ("dymosim.exe")
- System Structure and Parametrization (SSP)
- TISC (Simulatorkopplung)
Weitere Modelltypen in Form von hybriden Algebro-Differentialgleichungssystemen können über eine Plugin-API hinzugefügt werden. Für eine Simulation können die Modelle parametriert und mit transienten Inputs (bspw. aus einer CSV-Datei) versehen werden.
Zur Auswertung der Modelle stehen verschiedene Löser-Algorithmen zur Verfügung:
- ODE-Löser: CVode, ARKode, Expliziter Euler
- Ereignis-Iteration: Superdense Time
- Mehrdimensionale Nullstellensuche (KINSOL, Newton-Raphson)
Die Leistungsfähigkeit des Simulationskerns wird durch die Ergebnisse der FMI-CrossChecks belegt, an denen sich TLK beteiligt. Das FMI-CrossCheck-Verfahren wird dazu verwendet, die mit der Simulator Suite erzeugten Simulationsergebnisse mit den Referenzergebnissen der FMU-exportierenden Programme zu vergleichen. Hierbei wird eine maximale Abweichung von 0,2% toleriert. Die CrossCheck-Ergebnisse werden regelmäßig auf www.fmi-standard.org aktualisiert. Die hohe Zahl der erfolgreichen CrossChecks zeigt, dass Simulationen mit der Simulator Suite zu zuverlässigen Ergebnissen führen.
Abbildung 1: CrossCheck-Ergebnisse der Simulator Suite
Die Simulator Suite stellt dem Anwender hilfreiche Modellinformationen über das simulierte System zur Verfügung, wodurch das Modellverständnis verbessert und die Fehlerbehebung unterstützt wird. Darüber hinaus bietet die Simulator Suite diverse Möglichkeiten, um die Simulation im Detail anzupassen, beispielsweise durch Auswahl und Einstellung des Lösers (z.B. Sundials CVODE, Sundials ARKODE, Expliziter Euler). Die vorhandenen Löser sind explizit im Hinblick auf die Lösung komplexer thermodynamischer Systeme ausgewählt.
Abbildung 2: Der „Model Information“-Dialog unterstützt den Nutzer bei der Simulation
Excel Schnittstelle
TLK-Simulator für Excel: FMU und Dymola-Simulation
Der TLK-Simulator für Excel ermöglicht das Importieren, Analysieren und Simulieren von FMUs und kompilierten Dymola-Modellen (dymosim.exe) in Excel. Ein großer Vorteil des TLK-Simulators für Excel besteht darin, dass unsere Kunden auch ohne detailliertes Vorwissen Modelle simulieren und anschließend die Ergebnisse in der gewohnten Excel-Oberfläche visualisieren und bewerten kann.
Der TLK-Simulator für Excel bietet darüber hinaus die Möglichkeit, auch Parameterstudien intuitiv auf der Excel-Oberfläche durchzuführen. Mittels Visual Basic for Applications (VBA) kann die Funktionalität dieses Werkzeugs flexibel erweitert und nutzerspezifisch angepasst werden.
Weiterführende Informationen können Sie unserem Einführungsvideo entnehmen.
Abbildung 3: „Parameter Variation“-Oberfläche des TLK-Simulators für Excel
LabVIEW Schnittstelle
TLK-Simulator für LabVIEW: Einbindung von FMUs
Der TLK-Simulator für LabVIEW stellt dem Nutzer eine einfache Schnittstelle zur Einbindung von FMUs in LabVIEW bereit.
Abbildung 4: Integration einer FMU in ein LabVIEW Blockdiagramm
Mittels verschiedener VIs können kompatible Modelle komfortabel innerhalb von LabVIEW verschaltet und simuliert werden. Dies ermöglicht die direkte Verknüpfung von FMUs mit einem Prüfstand.
Abbildung 5: Simulationsinterface für obiges Blockdiagramm. Inputs können in Echtzeit über z.B. die dargestellten Schieberegler variiert werden
TISC Schnittstelle
TLK-Simulator für TISC: FMUs als Co-Simulationselement
Mit Hilfe des TLK-Simulators für TISC können kompatible Modelle in eine TISC-Simulation integriert werden, so dass sie als Co-Simulationselement für die Simulatorkopplung zur Verfügung stehen.
Weitere Informationen finden Sie auf der Produktseite unserer TISC Suite.
TRNSYS Schnittstelle
TLK-Simulator für TRNSYS: Simulationserweiterung mit FMUs
Der TLK-Simulator für TRNSYS ermöglicht den Import und die Parametrierung einer FMU als TRNSYS-Modell. Dadurch können Modelle auf FMI-Basis mit TRNSYS-Modellen gekoppelt und simuliert werden.
Bitte treten Sie mit uns in Kontakt, wenn Sie Interesse an einer verfügbaren Beta-Version haben. Wir helfen Ihnen gerne weiter.
Python Schnittstelle
TLK-Simulator für Python: Integration in Software und Werkzeugketten
Der TLK-Simulator für Python bietet dem Nutzer eine Schnittstelle, die alle Simulationswerkzeuge zur Verfügung stellt und gleichzeitig für eine individuelle Einbindung in die eigene Werkzeugkette geeignet ist. So können z.B. Parametrierung, Simulation und Auswertung mittels Skript vollständig automatisiert werden. Der TLK-Simulator für Python, welcher auch in der MoBA Automation verwendet wird, lässt sich sehr flexibel in eigene Funktionen implementieren und bringt damit ein Höchstmaß an Individualisierbarkeit mit sich.
Neben verschiedenen Analysefunktionen kann der TLK-Simulator für Python auch Linearisierungen durchführen und Sensitivitäten erfassen. Die dazugehörige Schnittstelle lässt sich einfach installieren. Mit dem TLK-Simulator für Python bieten wir unseren Kunden eine konsistente und robuste Basis für die eigene Simulation und Softwareentwicklung.
Weiterführende Informationen können Sie unserem Einführungsvideo entnehmen.
Abbildung 6: Beispielhafte Nutzung des TLK-Simulators für Python
C/C++ Schnittstelle
TLK-Simulator für C/C++: Integration in Software
Der TLK-Simulator für C/C++ stellt dem Nutzer eine leicht verständliche Schnittstelle für die Durchführung einer FMU-Simulation zur Verfügung. Diese ermöglicht den Einsatz von FMU-basierten Modellen als High-Level-Klasse in einem C/C++ Projekt.
Abbildung 7: Beispielhafte Nutzung des TLK-Simulators für C/C++