feat(i18n): tools + landing page + doorstop generator in English
Validate / build-test (macos-latest) (push) Failing after 2s
Validate / build-test (windows-latest) (push) Failing after 16s
Validate / build-test (ubuntu-latest) (push) Successful in 18s
Validate / reports (push) Successful in 52s

Phase 1 of full English translation:
- generate_doorstop_items.py: all 55 items (SG/SYS/SWE/SA/SWA) rewritten in English
- generate_landing_page.py: full UI labels, KPI cards, section headings in English
- traceability.py: docstring, error messages, HTML headers in English
- generate_test_report.py: report content + table headers in English
- All 55 markdown items in safety/sg/, reqs/, arch/ regenerated in English

Still to come:
- demo-epb filled Word docs (PID, plans, safety, manuals, audit artefacts)
- Code comments + test names + CI workflow step names
- README + dev-process repo templates
This commit is contained in:
Stefan Lohmaier
2026-05-12 03:28:54 -07:00
parent 542a358abc
commit a47e0aed3e
61 changed files with 805 additions and 803 deletions
+30 -30
View File
@@ -21,28 +21,28 @@ asil: D
# SA-001: EPB ECU
## Verantwortung
## Responsibility
Zentrales Steuergeraet der elektrischen Parkbremse. Beinhaltet alle Software-
Komponenten und die elektronische Ansteuerung der Aktoren.
Central control unit of the electric parking brake. Contains all
software components and the electronic actuation of the actuators.
## System-Kontext
## System context
```plantuml
@startuml
node "EPB ECU" as ECU
node "Aktor links" as AL
node "Aktor rechts" as AR
node "Wheel Speed Sensoren (x4)" as WS
node "Actuator left" as AL
node "Actuator right" as AR
node "Wheel-speed sensors (x4)" as WS
node "Inclinometer" as IN
node "EPB-Schalter + LED" as SW
node "CAN-Bus" as CAN
node "Kombi-Display" as DI
node "OBD-Tester" as OBD
node "EPB switch + LED" as SW
node "CAN bus" as CAN
node "Instrument cluster" as DI
node "OBD tester" as OBD
ECU --> AL : PWM, I-Mess
ECU --> AR : PWM, I-Mess
WS --> ECU : Pulse
ECU --> AL : PWM, I-meas
ECU --> AR : PWM, I-meas
WS --> ECU : pulses
IN --> ECU : SPI
SW --> ECU : GPIO
ECU --> SW : LED
@@ -52,24 +52,24 @@ CAN <-> OBD
@enduml
```
## Schnittstellen
## Interfaces
| Schnittstelle | Typ | Richtung |
|---------------|----------------|----------|
| Aktor L/R | PWM + Shunt | I/O |
| Wheel Speed | Hall-Pulse | In |
| Inclinometer | SPI | In |
| Schalter | GPIO debounced | In |
| LED | GPIO | Out |
| CAN | ISO 11898 | I/O |
| Interface | Type | Direction |
|---------------|------------------|-----------|
| Actuator L/R | PWM + shunt | I/O |
| Wheel speed | Hall pulses | in |
| Inclinometer | SPI | in |
| Switch | GPIO debounced | in |
| LED | GPIO | out |
| CAN | ISO 11898 | I/O |
## Subkomponenten (Aufteilung auf SW)
## Subcomponents (allocated to software)
Realisiert in Software: alle SWA-Elemente SWA-001..SWA-010.
Realised in software: all SWA elements SWA-001..SWA-010.
## Nichtfunktionale Eigenschaften
## Non-functional properties
- Worst-Case Reaktionszeit (Schalter → Aktor-Bewegung): 250 ms
- Flash-Bedarf: < 256 KB
- RAM-Bedarf: < 32 KB
- Stromaufnahme: < 200 mA (Standby) / < 30 A (Aktor-Spitze)
- Worst-case reaction time (switch to actuator motion): 250 ms
- Flash demand: < 256 KB
- RAM demand: < 32 KB
- Current: < 200 mA (standby) / < 30 A (actuator peak)
+17 -17
View File
@@ -1,7 +1,7 @@
---
active: true
derived: false
header: 'Aktoren (Caliper-Motoren)'
header: 'Actuators (calliper motors)'
level: 1.2
normative: true
reviewed: null
@@ -13,25 +13,25 @@ links:
asil: D
---
# SA-002: Aktoren (Caliper-Motoren)
# SA-002: Actuators (calliper motors)
## Verantwortung
## Responsibility
Zwei elektromechanische Aktoren an den hinteren Bremssaetteln klemmen
und loesen die Bremsbelaege. Geliefert (Annahme): kommerzielles Bauteil
eines Tier-1-Lieferanten.
Two electromechanical actuators on the rear callipers clamp and
release the brake pads. Supplied (assumption): commercial component
from a Tier-1 supplier.
## Schnittstellen
## Interfaces
| Schnittstelle | Typ | Bemerkung |
|---------------|--------------|-----------------------------------|
| Power | 12 V, PWM | bidirektional fuer Apply/Release |
| Strom-Shunt | Analog | wird in der ECU abgegriffen |
| Interface | Type | Notes |
|---------------|--------------|---------------------------------|
| Power | 12 V, PWM | bidirectional for apply/release |
| Current shunt | analog | sampled inside the ECU |
## Nichtfunktionale Eigenschaften
## Non-functional properties
- Max. Klemmkraft: 20 kN
- Apply-Zeit (0 → max): 600 ms
- Strom (nominal): 4 A
- Strom (Spitze): 30 A (kurzzeitig)
- Temperaturbereich: -40°C bis +85°C
- Max clamping force: 20 kN
- Apply time (0 → max): 600 ms
- Nominal current: 4 A
- Peak current: 30 A (brief)
- Temperature range: -40 °C to +85 °C
+19 -19
View File
@@ -1,7 +1,7 @@
---
active: true
derived: false
header: 'Sensor-Cluster'
header: 'Sensor cluster'
level: 1.3
normative: true
reviewed: null
@@ -12,27 +12,27 @@ links:
asil: B
---
# SA-003: Sensor-Cluster
# SA-003: Sensor cluster
## Verantwortung
## Responsibility
Zusammenfassung aller fuer die EPB benoetigten Eingangssignale:
Wheel-Speed-Sensoren (4x), Inclinometer (1x), EPB-Schalter, Bremspedal-
Status, Gear-Position, Door-Open, Seat-Belt — die letzten vier per CAN.
Summary of all input signals required by the EPB: wheel-speed
sensors (4x), inclinometer (1x), EPB switch, brake-pedal status,
gear position, door open, seatbelt — the last four via CAN.
## Schnittstellen
## Interfaces
| Sensor | Typ | Quelle |
|-----------------|------------------|--------------|
| Wheel Speed x4 | Hall-Pulse | direkt |
| Inclinometer | SPI 1 kHz | direkt |
| EPB-Schalter | GPIO | direkt |
| Bremspedal | CAN 0x100 | aus BCM |
| Gear | CAN 0x110 | aus TCU |
| Door / Belt | CAN 0x120 | aus BCM |
| Sensor | Type | Source |
|-----------------|--------------|------------|
| Wheel speed x4 | Hall pulses | direct |
| Inclinometer | SPI 1 kHz | direct |
| EPB switch | GPIO | direct |
| Brake pedal | CAN 0x100 | from BCM |
| Gear | CAN 0x110 | from TCU |
| Door / belt | CAN 0x120 | from BCM |
## Nichtfunktionale Eigenschaften
## Non-functional properties
- Wheel-Speed-Genauigkeit: +/- 0.1 km/h ab 1 km/h
- Inclinometer-Genauigkeit: +/- 0.5°
- Sampling-Frequenz Inclinometer: 100 Hz
- Wheel-speed accuracy: +/- 0.1 km/h above 1 km/h
- Inclinometer accuracy: +/- 0.5°
- Inclinometer sampling rate: 100 Hz
+11 -11
View File
@@ -1,7 +1,7 @@
---
active: true
derived: false
header: 'HMI (Schalter, LED, Display)'
header: 'HMI (switch, LED, display)'
level: 1.4
normative: true
reviewed: null
@@ -11,17 +11,17 @@ links:
asil: QM
---
# SA-004: HMI (Schalter, LED, Display)
# SA-004: HMI (switch, LED, display)
## Verantwortung
## Responsibility
Fahrer-Interaktion und -Information: Tippschalter mit integrierter LED,
Statusanzeige im Kombi-Display via CAN.
Driver interaction and information: tap switch with integrated LED,
status display in the instrument cluster via CAN.
## Schnittstellen
## Interfaces
| Element | Typ | Verhalten |
|---------------|----------|--------------------------------------------|
| Tippschalter | GPIO | Apply-Richtung / Release-Richtung |
| LED | GPIO | aus / an / blink 2 Hz / blink 4 Hz |
| Display | CAN 0x3A0 | 50 Hz Status-Frame |
| Element | Type | Behaviour |
|---------------|----------|-------------------------------------------|
| Tap switch | GPIO | apply direction / release direction |
| LED | GPIO | off / on / blink 2 Hz / blink 4 Hz |
| Display | CAN 0x3A0| 50 Hz status frame |
+11 -10
View File
@@ -1,7 +1,7 @@
---
active: true
derived: false
header: 'CAN-Bus'
header: 'CAN bus'
level: 1.5
normative: true
reviewed: null
@@ -11,16 +11,17 @@ links:
asil: QM
---
# SA-005: CAN-Bus
# SA-005: CAN bus
## Verantwortung
## Responsibility
Kommunikations-Backbone fuer Eingangsdaten (Bremspedal, Gang, Tuer, Gurt),
Ausgabe (Status-Frame an Display) und Diagnose (UDS auf Tester-Adresse).
Communication backbone for input data (brake pedal, gear, door,
belt), output (status frame to the display) and diagnostics (UDS
on the tester address).
## Schnittstellen
## Interfaces
- Baudrate: 500 kbit/s, CAN 2.0B
- Empfangene Frames: 0x100 (Bremspedal), 0x110 (Gang), 0x120 (Door/Belt),
0x712 (UDS-Request)
- Gesendete Frames: 0x3A0 (Status 50 Hz), 0x71A (UDS-Response)
- Baud rate: 500 kbit/s, CAN 2.0B
- Received frames: 0x100 (brake pedal), 0x110 (gear),
0x120 (door/belt), 0x712 (UDS request)
- Sent frames: 0x3A0 (status 50 Hz), 0x71A (UDS response)