Initial commit: demo-epb v1.0 — Elektrische Parkbremse Demo
Vollstaendige Demo des slohmaier Dev Process anhand einer EPB-Steuergeraet- Software. Zeigt ASPICE 4.0 / ISO 26262-konforme Entwicklung im Monorepo. Inhalte: - 5 Plaene (PID, PM-, QA-, SWE-, Test-Plan) in Word, ausgefuellt mit EPB-spezifischen Inhalten - 10 System-Anforderungen + 25 Software-Anforderungen (Doorstop-MD) - 5 System-Architektur-Elemente + 10 Software-Architektur-Elemente mit PlantUML-Diagrammen und vollstaendigem Mapping - 3 implementierte Komponenten (Apply Controller D, Actuator Driver B, Switch Debouncer QM) plus 7 Header-Stubs - 28 Unit-Tests, alle gruen, mit Coverage- und MISRA-Build-Targets - Audit-Artefakte: 1 Review-Protokoll, 1 Non-Conformity, 1 MISRA-Record - Gitea-Actions-CI-Pipeline (validate.yml) - Doorstop-Konfiguration fuer bidirektionale Traceability - Generator-Skript fuer alle 50 Reqs/Arch-Elemente aus Strukturdaten - README mit gefuehrter Tour fuer Prospects
This commit is contained in:
@@ -0,0 +1,71 @@
|
||||
---
|
||||
active: true
|
||||
derived: false
|
||||
header: 'Safety Manager'
|
||||
level: 1.1
|
||||
normative: true
|
||||
reviewed: null
|
||||
links:
|
||||
- SWE-007
|
||||
- SWE-008
|
||||
- SWE-009
|
||||
- SWE-010
|
||||
asil: D
|
||||
---
|
||||
|
||||
# SWA-001: Safety Manager
|
||||
|
||||
## Verantwortung
|
||||
|
||||
Hoechste Sicherheitsschicht. Erkennt Motor-Aus, aktiviert Hill-Hold,
|
||||
triggert Auto-Apply. Lebenswichtige Logik mit redundanter Pruefung.
|
||||
|
||||
## Statische Sicht
|
||||
|
||||
```plantuml
|
||||
@startuml
|
||||
package "Safety Manager" {
|
||||
[Engine State Monitor]
|
||||
[Hill-Hold Logic]
|
||||
[Auto-Apply Logic]
|
||||
}
|
||||
[Safety Manager] ..> [Apply Controller] : Apply-Anforderung
|
||||
[Wheel Speed Plausi] --> [Safety Manager] : v_vehicle
|
||||
[Inclinometer Filter] --> [Safety Manager] : grade
|
||||
@enduml
|
||||
```
|
||||
|
||||
## Schnittstellen (Provided)
|
||||
|
||||
```c
|
||||
Status safety_mgr_init(void);
|
||||
void safety_mgr_step_50ms(const SafetyInputs* in);
|
||||
```
|
||||
|
||||
## Dynamisches Verhalten
|
||||
|
||||
```plantuml
|
||||
@startuml
|
||||
[*] --> Idle
|
||||
Idle --> HillHoldArmed : grade>5% & v=0 & brake
|
||||
HillHoldArmed --> HillHoldActive : brake released
|
||||
HillHoldActive --> Idle : v>2 km/h
|
||||
Idle --> AutoApplyArmed : engine_off & v=0
|
||||
AutoApplyArmed --> AutoApplyTriggered : t>=2s
|
||||
AutoApplyTriggered --> Idle : applied
|
||||
@enduml
|
||||
```
|
||||
|
||||
## Ressourcen
|
||||
|
||||
- Stack: <= 256 B
|
||||
- Worst-Case Timing: 200 us / Aufruf
|
||||
|
||||
## Mapping auf Anforderungen
|
||||
|
||||
| Anforderung | Wie abgedeckt |
|
||||
|-------------|---------------|
|
||||
| SWE-007 | engine_off + v<0.5 in step_50ms |
|
||||
| SWE-008 | 2s-Filter und Trigger |
|
||||
| SWE-009 | Hill-Hold-Aktivierung |
|
||||
| SWE-010 | Brake-Released-Detektion |
|
||||
Reference in New Issue
Block a user