Verwalten von Systemvariationen mit Simulink

Entwerfen, Konfigurieren und Analysieren von Varianten mit
Model-Based Design

Steuerungs- und Systemingenieure entwickeln mit MATLAB® und Simulink® Modelle, die für viele unterschiedliche Aufgaben und Anforderungen konfiguriert werden können. Ingenieure passen ihre Modelle an spezifische Designanforderungen an, indem sie einen vordefinierten Satz von Variabilitäten aktivieren, die integrale Bestandteile eines Modelldesigns sind. Mit Variantenfunktionen von Simulink können Sie flexible Modelle mit integrierten Variabilitäten erstellen, um Ihre Designs effizienter zu verwalten, zu konfigurieren und wiederzuverwenden.

Mit Simulink können Sie:

  • ein einziges Modell für mehrere Systeme entwerfen
  • ein Modell für verschiedene Anforderungen konfigurieren, indem Sie integrierte Variabilitäten aktivieren
  • die Variantenaktivierung für die Modellsimulation und Codegenerierung steuern
  • Variantenkonfigurationen visualisieren und analysieren
  • Varianten in allen Phasen von Model-Based Design nutzen, einschließlich Simulation, Tests und Codegenerierung
  • AUTOSAR-konforme Softwarekomponenten mit Variantenimplementierungen entwerfen

„Es wäre schrecklich komplex, ein maßstabsgetreues Modell unseres gesamten Systems für alle unterschiedlichen Varianten zu erstellen, die wir in der Entwurfsphase in Betracht gezogen haben. Mit Simulink haben wir virtuelle Prototypen erstellt, mit denen wir die Systemleistung unter verschiedenen Seebedingungen vorhersagen, Fehlerfälle simulieren und Lasten analysieren können, damit wir das beste Design auswählen und die Komponentenanforderungen an unsere Zulieferer genau spezifizieren können.“

Jonathan Fiévez, Carnegie Wave Energy

Verwenden von Simulink für den Entwurf von Variantensystemen

Erstellen von Modellen mit Variationen

Fügen Sie jedem gewünschten Aspekt Ihres Modells Variabilität hinzu. Implementieren Sie Variabilitäten in allen Bereichen, einschließlich Steuerungslogik, Zustandsautomaten, Flussdiagrammen und physikalischen Streckenmodellen. Entwerfen Sie Varianten in hierarchischen oder Inline-Topologien, um Variationen entweder in einer separaten Hierarchie zu kapseln oder alle Variationen auf derselben Ebene anzuzeigen.

Für Designs, die variable E/A-Schnittstellen zwischen Komponenten erfordern, können Sie Varianten verwenden, um Subsysteme mit flexiblen Schnittstellen zu erstellen, die dennoch der gemeinsamen Systemarchitektur entsprechen.

Um kontextabhängiges Systemverhalten zu erreichen, kombinieren Sie Varianten mit bedingt ausgeführten oder ereignisgesteuerten Funktionen, wie z.B. Initialisierungs-, Zurücksetz- und Terminierungsfunktionen oder getriggerten Subsystemen.


Definieren von Variabilitätsregionen

Erweitern Sie die Variabilitätssteuerung auf jede gewünschte Region Ihres Modells, indem Sie Variantenbedingungen automatisch von Variantenblöcken auf andere vor- und nachgelagerte Blöcke übertragen. Variantenbedingungen können über Signalleitungen, Busse und Funktionsaufrufe übertragen werden, um Blöcke in einem Modell zu erreichen, auf die die Variantenauswahl Auswirkungen hat. Steuern Sie, für welche Blöcke in Ihrem Modell Variationen möglich sind, indem Sie die Bedingungsübertragung auf vordefinierte Regionen Ihres Modells beschränken.


Konfigurieren von Modellvariationen

Definieren, steuern und visualisieren Sie Variantenkonfigurationen mit dem Variantenmanager. Konfigurieren Sie die zu steuernden Varianten mit namensbasierten Ausdrücken oder mit bedingter Logik. Erstellen Sie vordefinierte Variantenkonfigurationen, die leicht aktiviert und gewechselt werden können, um mehrere Variabilitäten gleichzeitig zu steuern. Definieren Sie Einschränkungen für Konfigurationen, um ungültige Variantenkombinationen zu verhindern. Sobald Variantenkonfigurationen definiert sind, können Sie sie mit entsprechenden Datenobjekten speichern, verteilen und wiederverwenden.


Visualisieren und Analysieren von Variantenkonfigurationen

Verfolgen Sie Variantenbedingungen visuell direkt im Simulink-Bereich, und vergleichen Sie mehrere Variantenkonfigurationen einander gegenübergestellt in einer Tabelle. Validieren Sie Variantenkonfigurationen ganz einfach während der Bearbeitungsphase, um Probleme zu identifizieren, ohne Ihr Modell simulieren oder aktualisieren zu müssen. Analysieren Sie Variantenkonfigurationen, um Varianten zu identifizieren, die immer oder nie aktiv sind, und somit potenzielle Fehler oder Inkonsistenzen in Ihren Konfigurationen zu finden und zu diagnostizieren.


Steuern der Aktivierungszeit von Varianten

Entwerfen Sie Varianten, die vor der Simulation oder zur Code-Kompilierungszeit aktiviert werden können. Wählen Sie während der Codegenerierung aus, welche Variabilitäten in den generierten Code aufgenommen werden, und aktivieren Sie sie zur Vorkompilierungszeit entsprechend den Anforderungen und der Zielplattform. Überprüfen Sie ein Modell vor seiner Bereitstellung auf Inkompatibilitäten wie Datentyp- und Dimensionsabweichungen, indem Sie alle ausgewählten Varianten vor der Simulation oder Codegenerierung analysieren.


Bereitstellen von Variantenmodellen

Erzeugen Sie automatisch ein vereinfachtes Modell aus einem Satz von Variantenkonfigurationen oder anhand von angegebenen Steuerwerten zur Variantenkontrolle. Um Modelle zu verteilen und freizugeben, verwenden Sie die Modellvereinfachung zum Schutz geistigen Eigentums, indem Sie ungenutzte Varianten entfernen. Analysieren Sie das vereinfachte Modell in einem detaillierten Bericht, um auf fehlerhafte Modellabhängigkeiten zu prüfen und die Modellstruktur zu validieren.


Integrieren des Variantenentwurfs in den gesamten Entwicklungszyklus

Verwalten Sie Variationen in Ihren Modellen ganz leicht während des gesamten Entwicklungszyklus, von den Anforderungen bis zur Bereitstellung. Verwenden Sie Varianten, um für ein Modell zwischen Design-, Test- und Implementierungskontexten zu wechseln, indem Sie verschiedene Varianten aktivieren. Passen Sie ein Modell beispielsweise an, um während der Simulation Daten aus einer Datei zu lesen, nach Bereitstellung des Modells auf Hardware jedoch Signale von einem Sensor zu empfangen. Nehmen Sie Variabilitäten in generierten Code auf, um diesen Code für verschiedene Entwicklungsphasen wiederzuverwenden und zu konfigurieren, wie z. B. für das Testen verschiedener Implementierungen oder die Bereitstellung von multifunktionalem Code für Dritte.


Modellieren und Implementieren von AUTOSAR-Varianten

Verwenden Sie Simulink, um AUTOSAR-Softwarekomponenten zu entwerfen, die auf Motorsteuerungen verteilt und mit Softwaremodulen verschiedener Anbieter und OEM-Lieferanten integriert werden können. Nutzen Sie Variantenfunktionen von Simulink, um skalierbare AUTOSAR-Architekturen zu implementieren, die in Software für mehrere Fahrzeuglinien verwendet werden.

Modellieren Sie AUTOSAR-Softwarekomponenten mit Variationspunkten, um AUTOSAR-Schnittstellen oder -Implementierungen auf der Grundlage vordefinierter Steuerbedingungen zu ermöglichen. Importieren und exportieren Sie ARXML-Dateien mit AUTOSAR-Varianten, um Simulink in den gesamten AUTOSAR-Workflow zu integrieren. Nachdem Sie AUTOSAR-Designs in Simulink modelliert und getestet haben, generieren Sie aus Ihrem Modell effizienten Code, in dem Variationspunkte durch Präprozessor-Bedingungen implementiert sind.