DEENESPTFRRUARHIKOZHNL

namespace <RoutineInterface-Namespace>

User GuideKI-GENERIERT

Definiert standardisierte Schnittstellen für die Kapselung und Ausführung von Diagnoseroutinen in adaptiven Anwendungen.
KI-GENERIERT ungeprüft Modell: gemini-3.8-flash-medium · Aufwand: medium · Temperatur: nicht steuerbar · Prompt: 3d8f355dc636 Herkunft Offene Fragen (3)
KI-generiertgemini-3.8-flash-medium · 2026-10-13

Definiert standardisierte Schnittstellen für die Kapselung und Ausführung von Diagnoseroutinen in adaptiven Anwendungen.

Dieser Namespace stellt Schnittstellen zur Kapselung und Ausführung anwendungsspezifischer Diagnoseroutinen innerhalb des Moduls diag der Adaptive Platform bereit. Die primäre Aufgabe besteht vermutlich darin, eine Abstraktionsschicht für Routine-Operationen wie Starten, Stoppen und Ergebnisabfragen gegenüber dem Diagnosemanagementsystem anzubieten. Frage (offen) Die Steuerung der Routineausführung dürfte typischerweise an den Lebenszyklus des übergeordneten Diagnose-Stacks gekoppelt sein. Als wesentliche Randbedingung müssen Implementierungen die geforderte Thread-Sicherheit und ein deterministisches Verhalten bei asynchronen Aufrufen sicherstellen.

Kontext

Der Namespace namespace <RoutineInterface-Namespace> ist Teil des Funktionsclusters diag (Diagnostic Management) der AUTOSAR Adaptive Platform im Release R25-11. Innerhalb dieses Namespace ist die Schnittstellenklasse <RoutineInterface> als DiagnosticRoutineInterface definiert. Die primäre Rolle dieses Namespace besteht in der Bereitstellung eines standardisierten Rahmens zur Kapselung diagnostischer Routinen, die von Anwendungssoftwarekomponenten im Fahrzeug ausgeführt werden.

Die Klasse <RoutineInterface> dürfte als Abstraktionsschicht zwischen dem Diagnosemanagementsystem der Plattform und den fahrzeugspezifischen Routineabläufen dienen. Frage Q-03b9b94f9c2849b0 (offen) Das übergeordnete Diagnosemanagement verarbeitet externe Diagnoseanfragen (wie beispielsweise UDS RoutineControl nach ISO 14229-1) und leitet diese an die registrierte Anwendungsroutine weiter. Die Anwendung stellt über die Implementierung der Schnittstelle die eigentliche Steuerungs-, Test- und Prüflogik bereit, ohne direkte Abhängigkeiten zur Transportprotokollschicht oder zu Netzwerktopologien aufzuweisen.

Lebenszyklus

Der Lebenszyklus von Instanzen der Schnittstellenklasse <RoutineInterface> dürfte eng an den Bereitstellungszustand der zugehörigen Diagnosedienste gekoppelt sein. Frage Q-32a86efa16843445 (offen) Eine Instanziierung erfolgt typischerweise im Zuge der Initialisierungsphase der adaptiven Anwendung, bevor die Schnittstelle beim Diagnosemanager registriert und für externe Anfragen freigeschaltet wird. Die Anwendung übernimmt dabei die Verantwortung für die Objekterzeugung und die Bereitstellung der benötigten Ausführungskontexte.

Während der Betriebsphase verbleibt die Schnittstelleninstanz aktiv und nimmt eingehende Steuerbefehle entgegen. Da Diagnoseaufrufe durch externe Tester nebenläufig zu regulären Anwendungsaufgaben eintreffen können, müssen Implementierungen die geforderte Thread-Sicherheit gewährleisten. Bei Beendigung der Anwendung oder Deaktivierung des Dienstes ist eine geordnete Deregistrierung erforderlich, um sicherzustellen, dass keine laufenden Routinen in einem undefinierten Zustand verbleiben und zugewiesene Betriebsmittel deterministisch freigegeben werden.

Nutzungspfad

Ein typischer Nutzungspfad für eine Diagnoseroutine gliedert sich in eine strukturierte Abfolge von Interaktionsschritten zwischen dem Diagnosemanagementsystem und der Anwendungslogik. Der Ablauf dürfte vermutlich die folgenden Phasen umfassen: Frage Q-da2cd4e1ceb5b3b8 (offen)

  1. Initialisierung und Registrierung: Die Anwendung instanziiert die Klasse <RoutineInterface> und registriert das Schnittstellenobjekt bei der Diagnoseverwaltung des Moduls diag.
  2. Start der Routine: Beim Empfang einer entsprechenden Diagnoseanforderung ruft das System die Startmethode der Schnittstelle auf. Hierdurch wird die anwendungsspezifische Logik, beispielsweise ein Stellgliedtest, ein Kalibrierungsdurchlauf oder ein Berechnungszyklus, ausgelöst.
  3. Status- und Ergebnisabfrage: Während der Ausführung oder nach Abschluss der Operation können Zwischenstände oder das finale Ergebnis durch entsprechende Schnittstellenaufrufe abgefragt und an das Managementsystem übergeben werden.
  4. Beendigung oder vorzeitiger Abbruch: Die Routine wird entweder regulär nach erfolgreicher Abarbeitung beendet oder bei Bedarf durch eine explizite Stoppanforderung der Diagnoseinfrastruktur kontrolliert abgebrochen.

Fehlerszenarien

Im Rahmen der Routineausführung können diverse Fehlerbedingungen auftreten, die eine konsistente Fehlerbehandlung erfordern. Treten während der Ausführung einer Diagnoseroutine unvorhergesehene Betriebszustände auf – etwa unzureichende Versorgungsspannung, unzulässige Fahrzeugzustände oder Ressourcenengpässe –, muss die Schnittstelle dies signalisieren. Fehlerhafte Eingangsparameter oder Ausführungsabbrüche müssen über definierte Fehlercodes an das Diagnosemanagement zurückgemeldet werden. Dies versetzt die Plattform in die Lage, standardkonforme negative Antwortcodes (NRCs) an den externen Diagnosetester zu übermitteln und einen sicheren Fahrzeugzustand zu wahren.

Dieser Text wurde von einer KI auf Basis der AUTOSAR-Spezifikationsmetadaten für Release R25-11 generiert.

Klassen

DiagnosticRoutineInterface class

Klassendiagramm

Abgerundete Rahmen = Namespace- bzw. Klassen-Scopes; hohle Dreieckspfeile = Vererbung (zeigt zur Basisklasse); graue Boxen = namespace-fremde bzw. externe Basisklassen. Klicken öffnet die jeweilige Klassen- bzw. cppreference-Seite.

G cluster_ns <RoutineInterface-Namespace> cluster_c0 <RoutineInterface-Namespace>::<RoutineInterface> n_RoutineInterface_Namespace____RoutineInterface_ <RoutineInterface> n_RoutineInterface_Namespace____RoutineInterface____RoutineInterface6_StartOutput «struct» <RoutineInterface6>StartOutput n_RoutineInterface_Namespace____RoutineInterface____RoutineInterface9_StopOutput «struct» <RoutineInterface9>StopOutput n_RoutineInterface_Namespace____RoutineInterface____RoutineInterface_RequestResultOutput «struct» <RoutineInterface>RequestResultOutput