AUTOSAR_AP_EXP_SWArchitecture
FIG-ae15044d532e78bf
279 × 372 px
1 Release(s)
Figure 9.113: Interfaces for ECU Reset
SHA-256 Inhalts-Fingerabdruck:
ae15044d532e78bfeaa8c06513317ab84db6cc8573a9c63e226e8acbf2a240a0
✦
KI-generierte Bildanalyse & technische Beschreibung
Modell: gemini-3.8-flash (via agy) · Rezept figure-description@2 · erstellt am 2026-10-07
1. Diagrammtyp & Architektur-Kontext
- Klassifikation: UML-Klassendiagramm / Schnittstellenspezifikation mit AUTOSAR-Adaptive-Stereotypen (AUTOSAR AP Metamodell-Erweiterung).
- Technischer Zweck: Spezifikation der Interprozess- und Framework-Schnittstelle zwischen dem daemon-basierten Plattform-Cluster Diagnostic Management (
DM) und einer Adaptive Application (typischerweise State Management oder ein dedizierter System-/Reset-Handler) zur Abwicklung von Diagnose-Resets (UDS Service0x11 ECUResetgemäß ISO 14229-1). - Architektur-Kontext: AUTOSAR Adaptive Platform (R25-11), funktionale Schnittstellenabstraktion im Kontext von
ara::diag.
2. Komponenten, Entitäten & Schnittstellen
- Entitäten:
Adaptive Application(«Component»): Applikationsprozess im POSIX User Space, der die anwendungsspezifische Reset-Logik vorhält und Hardware-/System-Zustände vor dem Neustart absichert.Diagnostic Management daemon-based(«aapFunctionalCluster»,«Component»): Zentraler Plattform-Daemon, der UDS-Transportschichten (DoIP) terminiert, Diagnostic Sessions/Security Access verwaltet und UDS-Service-Requests dispatcht.EcuResetRequest(«aapPortInterface, aapPlatformExtension»): Plattform-Erweiterungs-Portinterface, das Lebenszyklus- und Callback-Methoden für Reset-Operationen kapselt.
- Schnittstellenmethoden & Stereotypen:
- Synchron/Lifecycle (Applikation → Daemon):
+ Offer(): Registriert den Reset-Handler der Applikation am Diagnostic Management Daemon.+ StopOffer(): Deregistriert den Handler; nachfolgende UDS0x11-Anfragen werden vom Daemon abgelehnt.
«aapCallbackMethod»(Daemon → Applikation):+ RequestReset(): Prüft die Zulässigkeit des angeforderten Resets anhand applikativer Vorbedingungen.+ ExecuteReset(): Löst den tatsächlichen physischen bzw. logischen Neustart aus.+ EnableRapidShutdown(): Signalisiert den Übergang in den energiesparenden Schnellabschalt-Modus (UDS SubfunctionrapidPowerDown).
- Synchron/Lifecycle (Applikation → Daemon):
- Beziehungen:
Adaptive Application→EcuResetRequest: Abhängigkeit über«use»und«aapRequiredPort». Die Applikation konsumiert das Interface zur Bereitstellung der Callbacks und zur Steuerung der Service-Verfügbarkeit.Diagnostic Management daemon-based→EcuResetRequest: Realisierungsbeziehung (gestrichelte Linie mit geschlossener, nicht ausgefüllter Pfeilspitze). Der Daemon implementiert die Schnittstelleninfrastruktur und ruft die registrierten Callbacks auf.
3. Dynamisches Verhalten & Sequenzablauf
- Service-Registrierung:
- Nach dem Start bindet die
Adaptive Applicationden Required Port und meldet ihre Bereitschaft überOffer()an den DM-Daemon.
- Nach dem Start bindet die
- UDS Service 0x11 Trigger:
- Ein Diagnosetester sendet eine
0x11 <ResetType>-PDU via DoIP an das Fahrzeug/HPC. - Der DM-Daemon validiert Diagnostic Session, Security Level und Adressierung.
- Ein Diagnosetester sendet eine
- Validierungsphase (
RequestReset):- Der Daemon triggert
RequestReset()via IPC an der Applikation. - Die Applikation prüft lokale Sicherheitszustände (z. B. Fahrzeugstillstand, laufende Flash-/Schreibzyklen) und liefert
kPositiveResponseoder einen UDS NRC (z. B.0x22 ConditionsNotCorrect).
- Der Daemon triggert
- Quittierung & UDS-Timing:
- Bei Freigabe sendet der Daemon die positive UDS-Antwort (
0x51 <ResetType>) an den Tester, um das UDS-Timing (P2 / P2^* Timeout) einzuhalten.
- Bei Freigabe sendet der Daemon die positive UDS-Antwort (
- Ausführungsphase (
ExecuteReset/EnableRapidShutdown):- Unmittelbar nach Bestätigung der Tx-Übertragung der UDS-Antwort triggert der Daemon
ExecuteReset()(bzw.EnableRapidShutdown()). - Die Applikation initiiert den geregelten Shutdown über das Execution Management (
ara::exec/ara::sm) oder stößt den Hardware-Watchdog/PMIC-Reset an.
- Unmittelbar nach Bestätigung der Tx-Übertragung der UDS-Antwort triggert der Daemon
- Deregistrierung:
- Vor Termination ruft die Applikation
StopOffer().
- Vor Termination ruft die Applikation
4. Normative Relevanz & Entwickler-Hinweise
- UDS-Protokollkonformität (ISO 14229-1): Die strikte Trennung zwischen
RequestReset()undExecuteReset()garantiert, dass der Reset erst erfolgt, nachdem die positive Response vollständig übertragen wurde.ExecuteReset()darf niemals synchron innerhalb vonRequestReset()blockierend aufgerufen werden. - Non-Blocking Callback Execution: Die Methoden
RequestReset(),ExecuteReset()undEnableRapidShutdown()müssen reentrant bzw. asynchron ausgelegt sein (Rückgabe vonara::core::Future/ Result-Typen im C++-Binding), um den IPC-Dispatcher des Daemons nicht zu blockieren. - Interaktion mit State Management: Eine reguläre
Adaptive Applicationdarf selten direkt einen Kernel-Reboot (sys_reboot) initiieren. DieExecuteReset()-Implementierung muss mit dem State Management (ara::sm) interagieren, um alle running Applications via Execution Management sauber in den Zielzustand zu überführen. - ARXML-Modellierung: Im Software Component Description Manifest muss ein
RPortPrototypemit Verweis auf dasPortInterfaceEcuResetRequestkonfiguriert werden; der DM-Daemon benötigt das korrespondierende Gegenstück zur Instanziierung des Kommunikationskanals.
Zugeordnete Anforderungen
Diese Angaben zeigt der Versions-Explorer.