AUTOSAR_CP_SWS_DiagnosticEventManager
FIG-2a26f07f1664703a
835 × 524 px
2 Release(s)
Figure 9.2: Sequence diagram of Dem_ClearDTC
SHA-256 Inhalts-Fingerabdruck:
2a26f07f1664703a9b6940f3111ec4fb2b970c33d7beb7a9b93ffa8eda331db9
✦
KI-generierte Bildanalyse & technische Beschreibung
Modell: gemini-3.8-flash (via agy) · Rezept figure-series@1 · erstellt am 2026-10-08
1. Diagrammtyp & Architektur-Kontext
- Diagrammtyp: UML 2.x Sequenzdiagramm (Interaktionsdiagramm).
- Architektur-Kontext: AUTOSAR Classic Platform (ab Release R18-10 / R4.4.0), BSW Diagnostic Services Cluster (Service Layer).
- Technischer Zweck: Spezifikation des standardisierten Interaktionsablaufs zwischen externem Diagnose-Tester (Generic Scan Tool), dem Diagnostic Communication Manager (Dcm) und dem Diagnostic Event Manager (Dem) zur Ausführung des UDS-Dienstes 0x14 (ClearDiagnosticInformation). Das Diagramm visualisiert die zustandsbehaftete Entkopplung von Filter-/Zieldefinition (
Dem_SelectDTC), Abfrage des Selektionsergebnisses (Dem_GetDTCSelectionResultForClearDTC) und asynchroner Aktionsausführung (Dem_ClearDTCinnerhalb einer Schleife) über ein Client-Id-basiertes Schnittstellenmodell.
2. Komponenten, Entitäten & Schnittstellen
- Akteure & BSW-Module (Lifelines):
Generic Scan Tool: Externer UDS-Client / Diagnosetester gemäß ISO 14229-1 / ISO 15031-5.«module» Dcm: AUTOSAR BSW-Modul Diagnostic Communication Manager (enthält das UML-Subsystem-Symbol für Composite Structures/Decomposition). Verarbeitet das Transportprotokoll (DoIP/CanTp) und entpackt die UDS-Servicedaten.«module» Dem: AUTOSAR BSW-Modul Diagnostic Event Manager. Verwaltet den Fehlerspeicher (Primary, Mirror, UserDefined Memory) und steuert das Löschen der DTC-Statusbytes und Freeze Frames.
- Schnittstellen & Datenstrukturen:
- Diagnoseprotokoll-Ebene (Tester ↔ Dcm):
- Request:
ClearDTCInformation(DTC)– UDS Service 0x14 mit 3-Byte-DTC-Parameter (oder Gruppen-DTC, z. B.0xFFFFFFfür alle DTCs). - Response:
Positive or negative response()– UDS Service 0x54 (Positivquittung) bzw. 0x7F 0x14 [NRC] (Negativquittung).
- Request:
- BSW-Interne C-APIs (Dcm → Dem):
Dem_SelectDTC(Std_ReturnType, uint8, uint32, Dem_DTCFormatType, Dem_DTCOriginType):- Hinweis zum Tool-Rendering: Das Diagramm führt den C-Rückgabetyp (
Std_ReturnType) fälschlicherweise als ersten formalen Parameter auf. Normative C-Signatur:Std_ReturnType Dem_SelectDTC(uint8 ClientId, uint32 DTC, Dem_DTCFormatType DTCFormat, Dem_DTCOriginType DTCOrigin) - Typen:
ClientId(Referenz des aufrufenden Diagnose-Clients),DTC(32-Bit DTC-Code),Dem_DTCFormatType(DEM_DTC_FORMAT_UDS / DEM_DTC_FORMAT_OBD / etc.),Dem_DTCOriginType(z. B. DEM_DTC_ORIGIN_PRIMARY_MEMORY).
- Hinweis zum Tool-Rendering: Das Diagramm führt den C-Rückgabetyp (
Dem_GetDTCSelectionResultForClearDTC(Std_ReturnType, uint8):- Normative C-Signatur:
Std_ReturnType Dem_GetDTCSelectionResultForClearDTC(uint8 ClientId). - Zweck: Dient der Überprüfung des Selektionsstatus vor dem Auslösen des Löschvorgangs.
- Normative C-Signatur:
Dem_ClearDTC(Std_ReturnType, uint8):- Normative C-Signatur:
Std_ReturnType Dem_ClearDTC(uint8 ClientId).
- Normative C-Signatur:
- Diagnoseprotokoll-Ebene (Tester ↔ Dcm):
3. Dynamisches Verhalten & Sequenzablauf
- Diagnose-Trigger (
Request: ClearDTCInformation(DTC)):- Das Generic Scan Tool sendet den Löschauftrag über das Bussystem an das Dcm.
- Vorselektion des DTC (
Dem_SelectDTC):- Dcm ruft synchron die API
Dem_SelectDTC(...)auf dem Dem auf, um den zu löschenden DTC bzw. die DTC-Gruppe und den Ziel-Speicherursprung für die gegebeneClientIdzu konfigurieren. - Dem bestätigt den Empfang via Return-Message.
- Dcm ruft synchron die API
- Prüfung des Selektionsergebnisses (
Dem_GetDTCSelectionResultForClearDTC):- Dcm fragt synchron das Ergebnis der Selektion beim Dem ab (
Dem_GetDTCSelectionResultForClearDTC). - Dem quittiert mit dem Selektionsstatus (z. B.
DEM_DTC_OK).
- Dcm fragt synchron das Ergebnis der Selektion beim Dem ab (
- Asynchroner Löschvorgang in Polling-Schleife (
loop Dem_ClearDTC):- Dcm führt das UML-Interaktionsfragment
loopaus und ruft zyklischDem_ClearDTC(ClientId)auf. - Solange interne Bereinigungsschritte (z. B. RAM-Invalidierung und NvM-Schreiboperationen) laufen, meldet Dem
DEM_CLEAR_PENDING. - Die Schleife endet, sobald Dem
DEM_CLEAR_OKoder einen Fehlercode liefert.
- Dcm führt das UML-Interaktionsfragment
- UDS-Abschlussquittung (
Positive or negative response()):- Dcm übermittelt die abschließende Antwort an das Scan Tool (Positivquittung 0x54 bzw. NRC bei Fehlern).
4. Normative Relevanz & Entwickler-Hinweise
- Prüfpflicht des Selektionsstatus (ab R18-10 / R4.4.0):
- Vor dem Aufruf von
Dem_ClearDTCmuss das Dcm das Selektionsergebnis explizit überDem_GetDTCSelectionResultForClearDTCvalidieren. Nur bei erfolgreicher Selektion (DEM_DTC_OK) darf der Löschvorgang gestartet werden; andernfalls bricht Dcm ab und antwortet mit NRC 0x31 (RequestOutOfRange).
- Vor dem Aufruf von
- Polling-Architektur & Loop-Fragment:
- Das
loop-Fragment verdeutlicht die asynchrone Schnittstellenarchitektur vonDem_ClearDTC. Dcm muss die Funktion im Polling aufrufen, solangeDEM_CLEAR_PENDINGzurückgegeben wird, ohne die Ausführung blockierend anzuhalten.
- Das
- Multi-Client-Architektur:
- Vor jedem Löschvorgang muss zwingend
Dem_SelectDTCfür die zugewieseneClientIdaufgerufen werden. Die Zuordnung zwischen Dcm und Dem erfolgt über die konfigurierte ClientId.
- Vor jedem Löschvorgang muss zwingend
- Asynchrones NvM-Verhalten & P2-Timer:
- Während der
loop-Abarbeitung muss Dcm bei zeitaufwendigen NvM-Operationen NRC 0x78 (ResponsePending) senden, um P2/P2*-Timeout-Verletzungen am Tester zu verhindern.
- Während der
- Parallelzugriff & Sperrkonzepte:
- Konkurrierende Aufrufe während eines aktiven Löschvorgangs werden vom Dem mit
DEM_CLEAR_BUSYabgewiesen und vom Dcm auf NRC 0x21 (BusyRepeatRequest) abgebildet.
- Konkurrierende Aufrufe während eines aktiven Löschvorgangs werden vom Dem mit
Zugeordnete Anforderungen
Diese Angaben zeigt der Versions-Explorer.