Kursbeschreibung
- Entwickeln und Implementieren modularer Software mit Simulink-Subsystemen, -Bibliotheken und -Modellen.
- Verwalten der Rückverfolgbarkeit von Anforderungen, Architektur, Subsystemen, Tests und Code.
- Nutzung frühzeitiger Verifikation und Validierung während der Softwareentwicklung durch modellbasierte und codebasierte Tests.
- Festlegen und Durchsetzen von Softwarenormen in allen Schritten des Entwicklungsprozesses.
- Vereinfachung der Tool-Qualifizierung mit dem IEC Certification Kit (für ISO 26262 und IEC 61508).
Tag 1 von 5
ISO 26262 und Modellbasierte Entwicklung
Ziel: Erhalten eines Überblicks über die Norm ISO 26262 und ihre Rolle in der Automobilindustrie. Erörtern des Umfangs der Beteiligung und Unterstützung durch MathWorks im Rahmen dieses Standards.
- Die Norm ISO 26262
- Überblick über Model-Based Design
- Referenz-Workflow
Projektmanagement
Ziel: Ein Projekt (mit Modellen, Daten, Dokumentation usw.) effektiv organisieren. Kennenlernen der Projektumgebung.
- Einrichten des Projektes
- Verwenden von Shortcuts und Labeln
- Dateiabhängigkeiten und deren Auswirkungen
Erstellen eines Modells
Ziel: Erstellen und Simulieren eines Simulink-Modells für die Algorithmusentwicklung. Verwalten der Modelldaten mithilfe von Data Dictionaries.
- Einführung in die Simulink-Umgebung
- Zeitdiskrete Modelle
- Abtastzeit
- Simulieren des Systems und Analysieren der Ergebnisse
- Data Dictionary
- Auswahl des Solvers
Modellkonformität
Ziel: Modellierungsstandards einrichten und durchsetzen. Modelle auf häufige Modellierungsfehler überprüfen.
- Modellierungsstandards
- Überprüfen während der Bearbeitung
- Verwenden des Model Advisor
- Erstellen von Ergebnisberichten
Tag 2 von 5
Anforderungsmanagement
Ziel: Verknüpfen eines Simulink-Modells mit Softwareanforderungen.
- Erstellen von Requirement Sets
- Importieren von Anforderungen
- Verknüpfen von Anforderungen
Verifikation von Softwaremodulen
Ziel: Erstellen von zeit- und logikbasierten Testfällen für ein Simulink-Modell.
- Arten der Verifikation
- Aufdecken von Entwurfsfehlern
- Generieren von Testharnischen
- Importieren von Testeingaben
- Nutzen von Logik in Tests
- Testergebnisse anforderungsbasiert bewerten
Codegenerierung für ein Softwaremodul
Ziel: Generieren von Code für ein Softwaremodul. Anpassen des erzeugten Codes, um Datenspeicherung und Ausführung zu optimieren.
- Codegenerierung für den Modellalgorithmus
- Funktionsprototypen
- Optimieren der Datenspeicherung
- Datentypen und Speicherklassen
- Simulink-Datenobjekte
- Funktionstemplates
Tag 3 von 5
Subsysteme
Ziel: Erstellen funktionaler Partitionen in einem Softwaremodul mit Subsystemen. Wiederverwenden von Subsystemen mit Block-Bibliotheken Erstellen von Partitionen im erzeugten Code.
- Subsysteme
- Subsystem-Varianten
- Subsystem-Referenzen
- Maskieren von Subsystemen
- Bibliotheken
- Subsystem-Codegenerierung
Multiraten-Modellierung
Ziel: Modellierung für periodische und nicht-periodische Codeausführung Umgang mit Ratenübergängen.
- Ausführung von Blöcken
- Einzelraten-Systeme
- Multiraten-Systeme
- Ratenübergänge
- Nicht-periodische Funktionsmodelle
Modellierung der Systemarchitektur
Ziel: Systemarchitekturen entwerfen mit System Composer. Analysieren der Softwarearchitektur und Verknüpfen mit Verhaltensmodellen.
- Architekturmodell
- Profile und Stereotypen
- Interface Editor
- Ansichten
- Verknüpfen mit Verhaltensmodellen
Tag 4 von 5
Systemintegration
Ziel: Organisieren von Softwaremodulen in einem Integrationsmodell mittels Modellreferenzierung. Modelleinstellungen und Data Dictionaries so konfigurieren, dass sich diese in der Integrationsphase über mehrere Modelle hinweg teilen lassen.
- Aspekte von Systemkomponenten
- Modellreferenzen
- Referenzierte Data Dictionaries
- Referenzierte Konfigurationen
- Codegenerierung für das Integrationsmodell
- Modell-Workspace
In-The-Loop-Tests
Ziel: Verifikation des generierten Codes mithilfe von In-the-Loop-Tests.
- Software-in-the-Loop-Tests
- Analysieren der Laufzeit des generierten Codes
- Softwaretests für Modellreferenzen
- Processor-in-the-Loop-Tests
Automatisieren der Verifikation
Ziel: Erstellen von wiederholbaren Testgruppen und automatisiertes Generieren von Testberichten.
- Erstellen von Testdateien
- Modellabdeckung
- Codeabdeckung
- Automatisches Generieren von Tests
- Visualisieren und Dokumentieren von Testergebnissen
Tag 5 von 5
Codeanalyse
Ziel: Generierten Code statisch analysieren, um sicherzustellen, dass der Code mit MISRA C:2012 konform ist.
- Codeanalyse mit Polyspace Bug Finder
- Konformität der Software mit MISRA C:2012
- Analysieren von Codemetriken
Generieren von Berichten
Ziel: Berichte und Dokumentation für Simulink-Modelle auf verschiedene Weisen automatisch erstellen. Konfigurationsmanagement in die Projektumgebung integrieren.
- Model Testing Dashboard
- Webansichten
- Standardberichte
- Integration von Versionskontrolle
- Vergleichen von Dateiversionen
Qualifikation von MathWorks Tools
Ziel: Verwenden des IEC Certification Kit (for ISO 26262 and IEC 61508), um sicherzustellen, dass MathWorks-Tools mit ISO 26262 konform sind.
- Tool-Qualifikation
- IEC Certification Kit (for ISO 26262 and IEC 61508)
Fallstudie
Ziel: Durchlaufen des Refererenz-Workflows anhand der modellbasierten Entwicklung eines Regelungsalgorithmus.
Stufe: Fortgeschrittenenkurse
Voraussetzungen:
Dauer: 5 Tag
Sprachen: Deutsch, English, 中文