Simulink

Bewährte Praktiken für die Modellierung großer Systeme mit Simulink

Diese bewährten Praktiken umfassen Modellierungsmuster, Tools und Prozesse, die nachweislich effiziente, skalierbare und wartbare Simulink®-Modelle ermöglichen. Folgende Themen werden behandelt:

  • Modularisierung und Schnittstellen
  • Zusammenarbeit mit MATLAB® Projects
  • Datenverwaltung
  • Verbesserung der Simulationsleistung

Bewährte Praktiken für die Modellierung großer Systeme mit Simulink

Bewährte Verfahren für die Modellierung in großen Maßstäben: Architektur und Leistung

Einige Simulink-Funktionen sind für große Systeme besser geeignet als andere. Erfahren Sie, welche Muster Sie für die groß angelegte Modellierung mit Simulink verwenden können.

Die Modellierung großer Systeme umfasst in der Regel komplexe Systeme mit geschlossenem Regelkreis, die Streckenmodelle, Regler, mehrere Subsysteme und mitunter Hunderttausende oder sogar Millionen von Blöcken enthalten.

Zu den typischen Herausforderungen zählen eine schlechte Lesbarkeit der Modelle, eine erschwerte Zusammenarbeit, eine komplexe Datenverwaltung, langsame Simulationen und steigende Wartungskosten.

Die Modularisierung zerlegt Modelle in überschaubare Einheiten und verbessert dadurch Lesbarkeit, Tests, Wiederverwendung, Wartbarkeit und Zusammenarbeit.

Model-Based Design nutzt ausführbare Modelle, um komplexe Systeme über den gesamten Engineering-Lebenszyklus hinweg zu entwickeln, zu testen, zu verifizieren und zu validieren.

Modellarchitektur, Komponentenschnittstellen, Datenverwaltung, Workflows für die Zusammenarbeit und Simulationsleistung.

Durch den Einsatz von Modellreferenzen, Data Dictionarys, MATLAB-Projekten, Quellcodeverwaltung und klar definierten Schnittstellen.

Automobilindustrie, Luft- und Raumfahrt, Robotik, Industrieautomatisierung, Energiesysteme, Medizinprodukte und autonome Systeme.

Große Industriemodelle enthalten regelmäßig Hunderttausende von Blöcken, während einige Modelle im Unternehmensmaßstab mehr als eine Million Blöcke umfassen.

Verbesserte Entwicklungsproduktivität, Simulationseffizienz, Zusammenarbeit und Modellwiederverwendung sowie ein geringerer Wartungsaufwand.

Der Aufbau einer komponentisierten Architektur anstelle eines einzigen monolithischen Modells.

Bewährte Praktiken für die Modularisierung mit Simulink: Modellreferenzen, Bibliotheken und Schnittstellen

Simulink-Komponentenisierung: Modellreferenzen und Schnittstellen

Entwickeln Sie skalierbare Simulink-Architekturen mit Modellreferenzen, Bibliotheken und Subsystemen, um Wiederverwendbarkeit, Zusammenarbeit, Tests und Leistung zu verbessern.

Die Modularisierung unterteilt ein großes Modell in kleinere, wiederverwendbare Komponenten mit klar definierten Schnittstellen.

Modellreferenzen ermöglichen es, eigenständige Modelle in größere Systeme zu integrieren und dabei getrennte Entwicklungsworkflows beizubehalten.

Verwenden Sie Modellreferenzen, wenn Komponenten unabhängig entwickelt, simuliert, getestet, wiederverwendet oder beschleunigt werden müssen.

Bibliotheken werden typischerweise für wiederverwendbare Hilfskomponenten eingesetzt, während Modellreferenzen eigenständige Simulationen, Beschleunigung und inkrementelle Builds unterstützen.

Subsystemreferenzen eignen sich für gemeinsam genutzte Komponenten, Simscape-Workflows und bestimmte Szenarien der HDL-Entwicklung.

Busse fassen zusammengehörige Signale zu einer strukturierten Schnittstelle zusammen, die die Verbindungen in großen Modellen vereinfacht.

Busse verbessern die Lesbarkeit, sorgen für übersichtliche Diagramme und erleichtern die Wartung von Schnittstellen.

Bus-Element-Ports vereinfachen den Zugriff auf Signale innerhalb von Bussen und verringern den Bedarf an separaten Bus-Selector-Blöcken.

Verschiedene Ingenieure können an separaten Komponenten arbeiten, ohne ständig dieselbe Modelldatei ändern zu müssen.

Ja. Modularisierte Architekturen ermöglichen den Accelerator Mode, inkrementelle Builds, die Wiederverwendung des Caches und eine schnellere Initialisierung.

Gemeinsame Entwicklung in Simulink mit MATLAB Projects und Git

Gemeinsame Simulink-Entwicklung mit MATLAB Projects und Git

Nutzen Sie MATLAB Projects zur gemeinsamen Arbeit an Simulink-Modellen mit Versionsverwaltung, Abhängigkeitsanalyse, Tests, CI/CD und wartungsfreundlichen Workflows.

MATLAB Projects bieten Umgebungsverwaltung, Abhängigkeitsverwaltung, die Integration der Quellcodeverwaltung und Tools für die Zusammenarbeit.

MATLAB Projects helfen dabei, Einrichtungsaufgaben zu automatisieren, Umgebungen zu standardisieren und den manuellen Konfigurationsaufwand zu reduzieren.

Beim Öffnen eines Projekts werden Pfade, Variablen, Startskripte, Shortcuts und Projekteinstellungen automatisch konfiguriert.

Ja. MATLAB Projects lassen sich in Git integrieren und bieten Tools für Commit-, Pull-, Push-, Vergleichs- und Zusammenführungsvorgänge.

Der Dependency Analyzer ermittelt die Beziehungen zwischen Dateien, Modellen, Tests, Bibliotheken und Data Dictionarys.

Ja. Projects warnen vor verdeckten Dateien, nicht gespeicherten Änderungen, fehlenden Abhängigkeiten und Pfadkonflikten.

Projektreferenzen ermöglichen es, dass ein Projekt ein anderes Projekt nutzt und von diesem abhängt, wobei die Umgebungskonfiguration erhalten bleibt.

MATLAB enthält grafische Vergleichstools, die funktionale und nichtfunktionale Modelländerungen hervorheben.

MATLAB bietet visuelle Tools für Zusammenführungen, die speziell für Simulink-Dateien entwickelt wurden.

Ja. Projects funktionieren mit Jenkins, GitHub, GitLab, Azure DevOps und anderen Automatisierungsplattformen.

Ja. Projekt-Startskripte und APIs können Workflows für Tests, Berichterstellung und Codegenerierung automatisieren.

Simulink Data Dictionarys: Bewährte Praktiken für das Entwurfsdatenmanagement

Simulink Data Dictionaries: Bewährte Verfahren für das Entwurfs-Datenmanagement

Verwalten Sie Simulink-Entwurfsdaten mit Data Dictionaries, Modell-Workspaces, Argumenten und Werttypen für ein skalierbares, konsistentes Model-Based Design.

Zu den Entwurfsdaten gehören Parameter, Signale, Datentypen, Aufzählungen, Busse, Aliase und Konfigurationsinformationen, die von einem Modell verwendet werden.

Ein Simulink Data Dictionary ist eine dedizierte .sldd-Datei, in der Entwurfsdaten getrennt von den Modelldateien gespeichert werden.

Data Dictionarys verbessern Organisation, Persistenz, Änderungsverfolgung, Wiederverwendung und Zusammenarbeit.

Der Basis-Workspace ist global und sitzungsgebunden, während Data Dictionarys eine strukturierte, persistente Speicherung bieten.

Ja. Mehrere Modelle können auf dasselbe Data Dictionary verweisen.

Ja. Data Dictionarys unterstützen hierarchische Referenzen, sodass Unternehmen gemeinsame Definitionen miteinander teilen können.

Modellargumente ermöglichen die Verwendung unterschiedlicher Parameterwerte durch verschiedene Instanzen eines referenzierten Modells.

Wertetypen definieren wiederverwendbare Eigenschaften wie Datentyp, Einheiten, Wertebereiche und Dimensionen.

Die Migration kann schrittweise erfolgen. Simulink unterstützt die Verwendung von Data Dictionarys parallel zu vorhandenen Workspace-Variablen.

Ja. Sie unterstützen Änderungsverfolgung, Vergleichsworkflows und die Integration in Quellcodeverwaltungssysteme.

Eine Hierarchie von Data Dictionarys auf Komponentenebene, unterstützt durch gemeinsam genutzte Dictionarys für übergreifende Definitionen.

Simulink-Simulationen mit Fast Restart, Accelerator Mode und Parallel Computing beschleunigen

Simulink beschleunigen mit schnellem Neustart und Parallelverarbeitung

Beschleunigen Sie Simulink Simulationen durch Profiling, Beschleunigungsmodi, schnellen Neustart, paralleles Rechnen und bewährte Architekturverfahren.

Leistungsengpässe können durch Modellkomplexität, Solver-Einstellungen, eine ungünstige Architektur, übermäßige Datenprotokollierung oder ineffiziente Workflows entstehen.

Simulink Profiler, Solver Profiler, Performance Advisor und Simulationsmetadaten.

Der Simulink Profiler misst die Ausführungszeit über Blöcke und Subsysteme hinweg, um langsame Bereiche zu identifizieren.

Der Solver Profiler analysiert das Verhalten des Solvers und identifiziert Probleme wie übermäßig viele Nulldurchgänge und Solver-Resets.

Der Performance Advisor prüft automatisch auf häufige Leistungsprobleme und empfiehlt Verbesserungen.

Der Accelerator Mode generiert kompilierten Code für die Modellausführung und reduziert so den Simulations-Overhead.

Der Rapid Accelerator Mode generiert ein eigenständiges, ausführbares Simulationsziel und ermöglicht so noch größere Geschwindigkeitssteigerungen.

Fast Restart vermeidet die erneute Kompilierung zwischen Simulationsläufen, wenn sich nur Parameter ändern.

Cache-Dateien speichern kompilierte Artefakte und Simulationsziele zur Wiederverwendung über mehrere Simulationssitzungen hinweg.

Ja. Der Workflow „parsim“ ermöglicht die gleichzeitige Ausführung mehrerer Simulationen über mehrere CPU-Kerne hinweg.

Komponentisierte Modelle unterstützen inkrementelle Builds, selektive Beschleunigung, die Wiederverwendung des Caches und eine schnellere Initialisierung.

Nutzen Sie zunächst die Profiling-Tools, identifizieren Sie Engpässe, komponentisieren Sie das Modell, verwenden Sie die Accelerator Modes, aktivieren Sie Fast Restart und führen Sie mehrere Simulationen parallel aus.