Reliability Engineering WS25/26 - Simulink Test: Unterschied zwischen den Versionen
Keine Bearbeitungszusammenfassung |
|||
| (5 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt) | |||
| Zeile 28: | Zeile 28: | ||
= Beispiel: Simulink Modultest eines Subsystems = | = Beispiel: Simulink Modultest eines Subsystems = | ||
Angenommen, wir haben ein Subsystem | Angenommen, wir haben ein Subsystem <code>Tiefpass</code>, das einen Eingang <code>x</code> verarbeitet und einen Ausgang <code>xTP</code> liefert. | ||
== 1. | == 1. Testrahmen (Engl. test harness) erstellen == | ||
Ein Test Harness isoliert das Subsystem und erlaubt das Einfügen von Testeingängen und Auswertung der Outputs. | Ein Test Harness isoliert das Subsystem und erlaubt das Einfügen von Testeingängen und Auswertung der Outputs. | ||
# Rechtsklick auf das Subsystem → | # Rechtsklick auf das Subsystem → <code>Test Harness > Create for Subsystem</code> | ||
# Typ: ''Model-In-The-Loop (MIL)'' | # Typ: ''Model-In-The-Loop (MIL)'' | ||
# Name: '' | # Name: ''Tiefpass_Testrahmen'' | ||
# Optional: Test Inputs hinzufügen (z. B. Sine Wave, Step, Random Signal) | # Optional: Test Inputs hinzufügen (z. B. Sine Wave, Step, Random Signal) | ||
| Zeile 86: | Zeile 86: | ||
# Optional: Automatisierung über MATLAB-Skript | # Optional: Automatisierung über MATLAB-Skript | ||
= Nützliche Links = | |||
* Link zum MATLAB<sup>®</sup> Artikel: [https://de.mathworks.com/help/sltest/index.html Simulink Test] | |||
* [https://de.mathworks.com/help/sltest/gs/create-a-test-harness.html MATLAB<sup>®</sup>: Erstellen eines Testrahmens] | |||
=== PDF-Dokumentation für Simulink Test === | |||
*[https://de.mathworks.com/help/pdf_doc/sltest/sltest_gs.pdf Simulink Test Getting Started Guide] | |||
* [https://de.mathworks.com/help/pdf_doc/sltest/sltest_ug.pdf Simulink Test User’s Guide] | |||
* [https://de.mathworks.com/help/pdf_doc/sltest/sltest_ref.pdf Simulink Test Reference] | |||
* [https://de.mathworks.com/help/pdf_doc/sltest/rn.pdf Simulink Test Release Notes] | |||
---- | ---- | ||
→ zurück zum Hauptartikel: [[Reliability_Engineering_WS25/26| | → zurück zum Hauptartikel: [[Reliability_Engineering_WS25/26|Reliability Engineering WS25/26]]<br> | ||
Aktuelle Version vom 4. Dezember 2025, 08:30 Uhr
| 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.
- Rechtsklick auf das Subsystem →
Test Harness > Create for Subsystem - Typ: Model-In-The-Loop (MIL)
- Name: Tiefpass_Testrahmen
- Optional: Test Inputs hinzufügen (z. B. Sine Wave, Step, Random Signal)
2. Test Manager öffnen
- In MATLAB: Simulink Test → Test Manager
- Neues Testprojekt → Test Suite erstellen
- 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
- Test Harness für Subsystem erstellen
- Test Case im Test Manager anlegen
- Test Inputs definieren (Step, Sine, Random)
- Test Assessment (Assertions oder Compare-To-Constant)
- Test ausführen → Pass/Fail
- Optional: Automatisierung über MATLAB-Skript
Nützliche Links
- Link zum MATLAB® Artikel: Simulink Test
- MATLAB®: Erstellen eines Testrahmens
PDF-Dokumentation für Simulink Test
- Simulink Test Getting Started Guide
- Simulink Test User’s Guide
- Simulink Test Reference
- Simulink Test Release Notes
→ zurück zum Hauptartikel: Reliability Engineering WS25/26