Reliability Engineering WS25/26 - Simulink Test

Aus HSHL Mechatronik
Zur Navigation springen Zur Suche springen
Dozent: Prof. Dr.-Ing. Schneider
Modul Mechatronik, Systementwicklung (Wahlpflichtprofil „Systems Design Engineering“), Wintersemester
Modulbezeichnung: MTR-B-2-7.09
Lehrveranstaltung: Reliability Engineering


Einleitung

Simulink® Test™ bietet Tools für die Erstellung, Verwaltung und Ausführung systematischer, simulationsbasierter Tests von Modellen, generiertem Code und simulierter oder physischer Hardware. Es umfasst Vorlagen für Simulations-, Basis- und Äquivalenztests, mit denen Sie Funktions-, Unit-, Regressions- und Back-to-Back-Tests im Software-in-the-Loop- (SIL), Processor-in-the-Loop- (PIL) und Echtzeit-Hardware-in-the-Loop-Modus (HIL) durchführen können.

Mit Simulink Test können Sie unaufdringliche Testrahmen erstellen, um die zu testende Komponente zu isolieren. Sie können anforderungsbasierte Bewertungen mithilfe einer textbasierten Sprache definieren und die Eingaben für Tests, erwartete Ausgaben und Toleranzen in einer Vielzahl von Formaten festlegen, darunter Microsoft® Excel®. Simulink Test umfasst einen Testsequenzblock, mit dem Sie komplexe Testsequenzen und Bewertungen erstellen können, sowie einen Test Manager für die Verwaltung und Ausführung von Tests. Mit Beobachterblöcken können Sie auf jedes Signal im Design zugreifen, ohne das Modell oder die Modellschnittstelle zu ändern. Umfangreiche Testsuiten können parallel oder auf kontinuierlichen Integrationssystemen organisiert und ausgeführt werden.

Sie können Tests zu Anforderungen zurückverfolgen (mit Requirements Toolbox™) und Berichte erstellen, die Informationen zur Testabdeckung aus Simulink Coverage™ enthalten.

Beispiel: Simulink Modultest eines Subsystems

Angenommen, wir haben ein Subsystem Tiefpass, das einen Eingang x verarbeitet und einen Ausgang xTP liefert.

1. Testrahmen (Engl. test harness) erstellen

Ein Test Harness isoliert das Subsystem und erlaubt das Einfügen von Testeingängen und Auswertung der Outputs.

  1. Rechtsklick auf das Subsystem → Test Harness > Create for Subsystem
  2. Typ: Model-In-The-Loop (MIL)
  3. Name: Tiefpass_Testrahmen
  4. Optional: Test Inputs hinzufügen (z. B. Sine Wave, Step, Random Signal)

2. Test Manager öffnen

  1. In MATLAB: Simulink TestTest Manager
  2. Neues Testprojekt → Test Suite erstellen
  3. Test Case hinzufügen:
  • Name: StepResponseTest
  • Beschreibung: Prüft das Subsystem auf Step-Eingang

3. Test Inputs definieren

  • Input: Step von 0 → 1 bei t=1s
  • Dauer: 5 s

4. Test Assessment (Überprüfung der Ergebnisse)

Mit Test Assessment Blocks oder MATLAB Expressions prüfen wir das Verhalten:

assert(max(y) < 10, 'Output y exceeds maximum allowed value');

Oder mit Simulink Check Blocks im Harness:

  • Assertion Block: Output muss kleiner 10 sein
  • Compare To Constant: Output == Sollwert

5. Test ausführen

  • Test Manager → Run Test
  • Ergebnis:
    • Pass: Test bestanden
    • Fail: Test nicht bestanden → detaillierte Logs

6. Automatisierung

Tests können über MATLAB-Skripte automatisiert werden:

import sltest.testmanager.*;
project = sltest.testmanager.TestProject.load('MyTestProject.mldatx');
suite = project.getTestSuite('MyTestSuite');
suite.run;
results = suite.getTestResults;
disp(results);

Zusammenfassung

  1. Test Harness für Subsystem erstellen
  2. Test Case im Test Manager anlegen
  3. Test Inputs definieren (Step, Sine, Random)
  4. Test Assessment (Assertions oder Compare-To-Constant)
  5. Test ausführen → Pass/Fail
  6. Optional: Automatisierung über MATLAB-Skript

Nützliche Links

PDF-Dokumentation für Simulink Test


→ zurück zum Hauptartikel: Reliability Engineering WS25/26