DEENESPTFRRUARHIKOZHNL
AUTOSAR_AP_SWS_StateManagement FIG-a481fd2ca3509290 796 × 1326 px 2 Release(s)

Figure 7.36: Reset machine handling within StateMachine approach

SHA-256 Inhalts-Fingerabdruck: a481fd2ca35092909a51f47c45932ffbed6c829b38d19c8b8cd33bfafeeb338b
✦ 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-Sequenzdiagramm (Interaktionsdiagramm) mit Zustandswächtern (alt-Fragmente) und Systemzustandsübergängen über einen Maschinen-Reboot hinweg.
  • Architektur-Kontext: AUTOSAR Adaptive Platform (ARA), Spezifikation State Management (SWS StateManagement, Releases R24-11 / R25-11).
  • Funktionaler Zweck: Modellierung des kontrollierten ECU-/Maschinen-Resets im Rahmen eines Update-Vorgangs (UCM-Interaktion). Das Diagramm spezifiziert die koordinierte Interaktion zwischen dem Service-Interface UpdateRequest und der internen Steuerlogik des State Management (SM) sowie das Wiederaufnehmen der Update-Session nach dem Kalt-/Warmstart über das Execution Management (EM).

2. Komponenten, Entitäten & Schnittstellen

  • Akteure / Lebenslinien:
    • «Service» UpdateRequest: Service-Instanz bzw. ara::com-Schnittstelle (ara::sm::UpdateRequest), über die UCM (Update and Configuration Management) oder externe Update-Clients SM-Funktionen triggern und überwachen.
    • State Management: Kernkomponente der Adaptive Platform zur Orchestrierung von Funktionsgruppen (Function Groups) und Ausführungszuständen.
    • Implizit beteiligte Subsysteme: Execution Management (EM), Host-OS/Bootloader, persistenter Speicher für Session-Flags.
  • Schnittstellen-Elemente & Felder:
    • Methode: ResetMachine() – parameterloser Aufruf zur Einleitung des Shutdown- und Neustartzyklus der Maschine.
    • Field / Notifier: ResetMachineNotifier (Field mit Getter/Notifier) mit den Zustandswerten:
      • kIdle: Ruhezustand / Default nach Boot.
      • kSuccessful: Bestätigung des erfolgreichen Übergangs in den StateMachine-Zustand ContinueUpdate.
      • kFailed: Fehler beim Erreichen des Zustands ContinueUpdate.
  • Beziehungen & Abhängigkeiten:
    • SM steuert über EM die Function Group MachineFG (Transition MachineFG::Startup).
    • Zustandsbehaftete Persistenz: Der Indikator "active update session" muss über den Power-Cycle/Reboot hinweg nicht-flüchtig erhalten bleiben.

3. Dynamisches Verhalten & Sequenzablauf

  1. Vorbedingung: Eine Update-Session ist aktiv ("active update session" == true) und ResetMachineNotifier steht auf kIdle.
  2. Trigger: Client ruft synchron/asynchron ResetMachine() am UpdateRequest-Service auf.
  3. Shutdown-Vorbereitung ([SWS_SM_00658]): SM leitet den Übergang in den Zustand Restart des internen Zustandsautomaten ein; Function Groups werden deterministisch heruntergefahren.
  4. Maschinen-Reboot:
    • Plattform führt OS-Shutdown und Hardware-/Software-Reset durch.
    • Bootloader startet OS und Execution Management (EM).
    • EM aktiviert die Baseline-Funktionsgruppe MachineFG::Startup.
  5. Initialisierung nach Neustart ([SWS_SM_00212] & [SWS_SM_00204]):
    • SM initialisiert das Feld ResetMachineNotifier::Set(kIdle).
    • SM liest den persistenten Session-Status aus (check if active update session).
  6. Bedingte Verzweigung (alt):
    • Pfad A ("active update session" == true):
      • [SWS_SM_00657]: SM initiiert die Transition in den Zustand ContinueUpdate der StateMachine.
      • Sub-Pfad A1 ([transition to ContinueUpdate OK] / [SWS_SM_00662]): State Machine erreicht den Zustand fehlerfrei; ResetMachineNotifier wird via Set(kSuccessful) aktualisiert. Die Update-Session wird fortgesetzt, verbleibende Validierungsprozesse laufen an.
      • Sub-Pfad A2 ([transition to ContinueUpdate NOK] / [SWS_SM_00663]): Transition schlägt fehl (z. B. Timeout, Prozessstart-Fehler in EM); SM setzt ResetMachineNotifier::Set(kFailed).
    • Pfad B ("active update session" == false):
      • Regulärer Kaltstart; SM führt Standard-Startup durch und wechselt in den Initialzustand des Applikations-Controllers.

4. Normative Relevanz & Entwickler-Hinweise

  • Service-Design (UCM / Client): Der Aufrufer darf nach ResetMachine() keine sofortige synchrone Erfolgsmeldung erwarten, die den Abschluss des Updates quittiert. Der finale Status (kSuccessful / kFailed) wird nach dem Wiederanlauf der Plattform über das Field ResetMachineNotifier publiziert; Clients müssen dieses Field abonnieren (Subscribe) und nach dem Reconnect auswerten.
  • Persistenzanforderung: Der Status "active update session" unterliegt strikter Persistenzgarantie (z. B. via ara::per oder Early-NVRAM-Flags). Geht dieses Flag beim Reboot verloren, fällt SM unzulässig in den Pfad normal startup zurück, was zu unvollständigen Rollouts oder hängenden UCM-Transaktionen führt.
  • Execution Management & Timeout-Budget: Der Übergang nach ContinueUpdate erfordert, dass alle für den Update-Modus definierten Prozesse der jeweiligen Function Group innerhalb der in MachineFG konfigurierten Startup-Timeouts fehlerfrei starten. Schlägt ein einziger abhängiger Prozess fehl, greift zwingend SWS_SM_00663 (kFailed).
  • Fehlerbehandlung: Empfängt UCM kFailed, muss der Rollback-Mechanismus (z. B. Revert auf redundante A/B-Partition oder Aktivierung des vorherigen Software-Clusters) initiiert werden.

Zugeordnete Anforderungen

Diese Angaben zeigt der Versions-Explorer.

Vorkommen in AUTOSAR-Releases (2)

Release Dokument Seite Nr. Bildunterschrift im Dokument
R24-11 AUTOSAR_AP_SWS_StateManagement S. 74 7.30 Figure 7.30: Reset machine handling within StateMachine approach
R25-11 AUTOSAR_AP_SWS_StateManagement S. 92 7.36 Figure 7.36: Reset machine handling within StateMachine approach