Reliability Engineering WS25/26: Unterschied zwischen den Versionen
Zur Navigation springen
Zur Suche springen
Keine Bearbeitungszusammenfassung |
|||
| Zeile 25: | Zeile 25: | ||
= Funktionaler Systementwurf / Technischer Systementwurf= | = Funktionaler Systementwurf / Technischer Systementwurf= | ||
= Komponentenspezifikation = | = Komponentenspezifikation = | ||
Eine Komponentenspezifikation ist im Ingenieurwesen und in der Elektronik eine detaillierte Beschreibung eines Bauteils, die festlegt, wie es aufgebaut ist, welche Eigenschaften es haben muss und wie es betrieben werden darf. Sie dient dazu, sicherzustellen, dass die Komponente für eine bestimmte Anwendung geeignet ist und zuverlässig funktioniert. | |||
== Zweck einer Software-Komponentenspezifikation == | |||
*Definiert Funktionalität: Welche Aufgaben erfüllt die Komponente? | |||
*Beschreibt Schnittstellen: Welche Inputs und Outputs gibt es? | |||
*Legt Nicht-Funktionale Anforderungen fest: Performance, Sicherheit, Zuverlässigkeit. | |||
*Hilft bei Entwurf, Implementierung und Test: Entwickler und Tester wissen genau, was erwartet wird. | |||
== Inhalte einer Komponentenspezifikation == | |||
# Allgemeine Beschreibung: Name der Komponente, Zweck/Ziel der Komponente, Zugehörigkeit zu einem System oder Modul | |||
# Funktionale Anforderungen: Welche Aufgaben die Komponente erfüllt, Algorithmen oder Logik, falls relevant | |||
# Schnittstellenbeschreibung: unktionen oder Methoden, die bereitgestellt werden, Input-Parameter und Rückgabewerte, Events, Nachrichten oder APIs | |||
# Nicht-funktionale Anforderungen: Performance (z. B. Reaktionszeit), Zuverlässigkeit, Fehlertoleranz, Speicher- oder Ressourcenverbrauch | |||
# Abhängigkeiten: Andere Software-Module oder Bibliotheken, die benötigt werden | |||
# Test- und Validierungshinweise: Welche Tests durchgeführt werden müssen, um die Spezifikation zu erfüllen | |||
# Versionierung und Änderungen: Wer hat die Spezifikation erstellt, Änderungen im Laufe der Zeit | |||
{| role="presentation" class="wikitable mw-collapsible mw-collapsed" | |||
| <strong>Beispiel einer Komponentenspezifikation </strong> | |||
|- | |||
| | |||
= Software-Komponentenspezifikation: Temperaturmessung = | |||
'''Version:''' 1.0 | |||
'''Autor:''' Max Mustermann | |||
'''Datum:''' 22.10.2025 | |||
'''System:''' Arduino-basiertes Sensormodul | |||
== 1. Allgemeine Beschreibung == | |||
* '''Zweck:''' Die Komponente liest periodisch die Temperatur eines Sensors aus und liefert einen kalibrierten Temperaturwert in Grad Celsius. | |||
* '''Zugehörigkeit:''' Teil des Sensor-Moduls für Umweltmessungen. | |||
== 2. Funktionale Anforderungen == | |||
{| class="wikitable" | |||
! Anforderung !! Beschreibung | |||
|- | |||
| F1 || Temperaturmessung am analogen Pin A0 | |||
|- | |||
| F2 || Rückgabe des Messwerts als float in °C | |||
|- | |||
| F3 || Abtastintervall: alle 500 ms | |||
|- | |||
| F4 || Kalibrierung: Offset-Korrektur ±2 °C möglich | |||
|} | |||
== 3. Schnittstellenbeschreibung (Interface) == | |||
{| class="wikitable" | |||
! Schnittstelle !! Typ !! Beschreibung | |||
|- | |||
| float readTemperature() || Methode || Gibt aktuellen Temperaturwert zurück | |||
|- | |||
| void setCalibrationOffset(float offset) || Methode || Setzt Offset zur Kalibrierung | |||
|- | |||
| Pin A0 || Hardware-Pin || Eingang für Sensorsignal | |||
|} | |||
'''Input:''' Analoger Wert vom Sensor | |||
'''Output:''' Temperaturwert als float | |||
== 4. Nicht-funktionale Anforderungen == | |||
{| class="wikitable" | |||
! Anforderung !! Wert / Beschreibung | |||
|- | |||
| Genauigkeit || ±0,5 °C | |||
|- | |||
| Reaktionszeit || max. 500 ms | |||
|- | |||
| Ressourcenverbrauch || max. 2 kB RAM, <5 % CPU bei 16 MHz Arduino | |||
|- | |||
| Zuverlässigkeit || Messungen stabil, keine Fehlwerte >0,1 % | |||
|} | |||
== 5. Abhängigkeiten == | |||
* Arduino Standard Libraries (`Arduino.h`) | |||
* Sensor-Treiber-Bibliothek (falls extern) | |||
* Stromversorgung stabil: 5 V ±5 % | |||
== 6. Test- und Validierungshinweise == | |||
# Funktionstest: Sensorwerte mit Referenzthermometer vergleichen. | |||
# Grenzwerttest: Prüfen bei extremen Temperaturen (-10 °C bis +50 °C). | |||
# Lasttest: Messung über 24 h prüfen, auf Stabilität und Drift. | |||
# Fehlerfall: Sensor ausgesteckt → Komponente gibt Fehlerwert oder NaN zurück. | |||
== 7. Änderungen / Versionierung == | |||
{| class="wikitable" | |||
! Version !! Datum !! Änderung !! Autor | |||
|- | |||
| 1.0 || 22.10.2025 || Erstversion || Max Mustermann | |||
|- | |||
| 1.1 || TBD || Hinzufügen Logging-Funktion || TBD | |||
|} | |||
|- | |||
|} | |||
= Programmierung = | = Programmierung = | ||
Version vom 22. Oktober 2025, 13:41 Uhr
| Dozent: | Prof. Dr.-Ing. Schneider |
| Modul | Systementwicklung (Wahlpflichtprofil „Systems Design Engineering“), Wintersemester |
| Modulbezeichnung: | MTR-B-2-7.09 |
| Modulverantwortung: | Mirek Göbel |
| Lehrveranstaltung: | Sensortechnik |
Beispielartikel
Die gewünschten Themenabschnitte sind:
Einleitung
- Autor
- Bild
Anforderungen
Funktionaler Systementwurf / Technischer Systementwurf
Komponentenspezifikation
Eine Komponentenspezifikation ist im Ingenieurwesen und in der Elektronik eine detaillierte Beschreibung eines Bauteils, die festlegt, wie es aufgebaut ist, welche Eigenschaften es haben muss und wie es betrieben werden darf. Sie dient dazu, sicherzustellen, dass die Komponente für eine bestimmte Anwendung geeignet ist und zuverlässig funktioniert.
Zweck einer Software-Komponentenspezifikation
- Definiert Funktionalität: Welche Aufgaben erfüllt die Komponente?
- Beschreibt Schnittstellen: Welche Inputs und Outputs gibt es?
- Legt Nicht-Funktionale Anforderungen fest: Performance, Sicherheit, Zuverlässigkeit.
- Hilft bei Entwurf, Implementierung und Test: Entwickler und Tester wissen genau, was erwartet wird.
Inhalte einer Komponentenspezifikation
- Allgemeine Beschreibung: Name der Komponente, Zweck/Ziel der Komponente, Zugehörigkeit zu einem System oder Modul
- Funktionale Anforderungen: Welche Aufgaben die Komponente erfüllt, Algorithmen oder Logik, falls relevant
- Schnittstellenbeschreibung: unktionen oder Methoden, die bereitgestellt werden, Input-Parameter und Rückgabewerte, Events, Nachrichten oder APIs
- Nicht-funktionale Anforderungen: Performance (z. B. Reaktionszeit), Zuverlässigkeit, Fehlertoleranz, Speicher- oder Ressourcenverbrauch
- Abhängigkeiten: Andere Software-Module oder Bibliotheken, die benötigt werden
- Test- und Validierungshinweise: Welche Tests durchgeführt werden müssen, um die Spezifikation zu erfüllen
- Versionierung und Änderungen: Wer hat die Spezifikation erstellt, Änderungen im Laufe der Zeit
| Beispiel einer Komponentenspezifikation | ||||||||||||||||||||||||||||||||||||||||||||
Software-Komponentenspezifikation: TemperaturmessungVersion: 1.0 Autor: Max Mustermann Datum: 22.10.2025 System: Arduino-basiertes Sensormodul 1. Allgemeine Beschreibung
2. Funktionale Anforderungen
3. Schnittstellenbeschreibung (Interface)
Input: Analoger Wert vom Sensor Output: Temperaturwert als float 4. Nicht-funktionale Anforderungen
5. Abhängigkeiten
6. Test- und Validierungshinweise
7. Änderungen / Versionierung
|
Programmierung
Komponententest
Zusammenfassung
Link zum Quelltext in SVN
Literaturverzeichnis
Aufgabe 1 - Artikel-Review
- Begutachten Sie einen fertigen Artikel.
- Geben Sie Feedback auf der Diskussionsseite.
- Wir besprechen das Feedback im Plenum.
Aufgabe 2 - Code Review
- Führen Sie das Review anhand der Vorlage durch und dokumentieren Sie es hier:
https://svn.hshl.de/svn/MTR_SDE_Praktikum/trunk/Testdokumente/CodeReviews/ - Optimieren Sie Ihren Quelltext anhand des Code Reviews.
- Besprechen Sie bis zur Deadline 20.12.19 das Ergebnis mit Prof. Schneider.
Tutorials
Aufgabe 3 - Modultest
| ID des Testfalls | Testfallname | Ersteller | Datum | ID der Anforderung | ID aus der Komponenntenspezifikation | Ausgangszustand | Aktion(en) | Erwartetes Ergebnis | Ergebnis | Bewertung | Test durchgeführt von | Test durchgeführt am | Bemerkung |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 01 | Stationären Endwert und damit den Verstärkungsfaktor prüfen | Prof. Schneider | 22.10.25 | 01 | 05 | PT1-Integratoren = 0, Eingang = 0 | Eingangssprung von 0 auf 1 bei t=0s | Stat. Endwert = 1 | xa(t=50s) = 1.4 | n.i.O. | Mustermann | 22.10.25 | Kp überprüfen |
| 02 | Beispiel | Beispiel | Beispiel | Beispiel | Beispiel | Beispiel | Beispiel | Beispiel | Beispiel | Beispiel | Beispiel | Beispiel | Beispiel |
| 03 | Beispiel | Beispiel | Beispiel | Beispiel | Beispiel | Beispiel | Beispiel | Beispiel | Beispiel | Beispiel | Beispiel | Beispiel | Beispiel |