Fahrzeugeigenschaften für das ADAS

Wir haben Android 14 die folgenden neuen ADAS-Attribute hinzugefügt:

Diese neuen Funktionen sind in der folgenden Abbildung dargestellt.

Unterstützte ADAS-Funktionen

Abbildung 1 : Unterstützte ADAS-Funktionen

Liste der Attribute

Zur Unterstützung dieser neuen Funktionen wurde Android 14 eine Liste von Attributen hinzugefügt. Diese sind unten aufgeführt.

Attribute
ADAPTIVE_CRUISE_CONTROL_TARGET_TIME_GAP
ADAPTIVE_CRUISE_CONTROL_LEAD_VEHICLE_DISTANCE

AUTOMATIC_EMERGENCY_BRAKING_ENABLED
AUTOMATIC_EMERGENCY_BRAKING_STATE

BLIND_SPOT_WARNING_ENABLED
BLIND_SPOT_WARNING_STATE

CRUISE_CONTROL_ENABLED
CRUISE_CONTROL_TYPE
CRUISE_CONTROL_STATE
CRUISE_CONTROL_COMMAND
CRUISE_CONTROL_TARGET_SPEED

EMERGENCY_LANE_KEEP_ASSIST_ENABLED
EMERGENCY_LANE_KEEP_ASSIST_STATE
FORWARD_COLLISION_WARNING_ENABLED
FORWARD_COLLISION_WARNING_STATE

HANDS_ON_DETECTION_ENABLED
HANDS_ON_DETECTION_DRIVER_STATE
HANDS_ON_DETECTION_WARNING

LANE_DEPARTURE_WARNING_ENABLED
LANE_DEPARTURE_WARNING_STATE

LANE_KEEP_ASSIST_ENABLED
LANE_KEEP_ASSIST_STATE

LANE_CENTERING_ASSIST_ENABLED
LANE_CENTERING_ASSIST_COMMAND
LANE_CENTERING_ASSIST_STATE

Designthemen

Die folgenden Designthemen werden auf neu hinzugefügte Attribute angewendet.

Attribut Beschreibung
AKTIVIERT
  • Attribute, die angeben, ob eine Funktion aktiviert oder deaktiviert ist.
  • Boolesche Attribute, bei denen true aktiviert und false deaktiviert ist.
  • Read und Write-Attribute, die als Read-only implementiert werden können.
STATE
  • Attribute, mit denen der Funktionsstatus über eine Liste vordefinierter Status kommuniziert wird.
  • Int32-Attribute mit definierten Enums.
  • OTHER-Feld zur Unterstützung der Abwärtskompatibilität.
  • Read-only-Attribute.
  • Spiegel- oder globale Bereichstypen.
  • Verwendet Werte, die in ErrorStates.aidl definiert sind.
  • Verwenden Sie die getSupportedEnumValues() API in AreaIdConfig.java.
Sonstiges
  • COMMAND-Attribute für Funktionen, bei denen eine Nutzereingabe erforderlich ist.
  • WARNING-Attribute, wenn der Status separat dargestellt werden kann.
  • Weitere Attribute zur Unterstützung:
    • Funktionsvarianten, falls zutreffend.
    • Funktionseinstellungen anpassen, falls zutreffend.

Beispiele für Zustandsdiagramme

In diesem Abschnitt finden Sie Zustandsdiagramme für eine Teilmenge der unterstützten ADAS-Funktionen, um zu veranschaulichen wie die enthaltenen Attribute zusammenarbeiten. Wir haben Beispiele für die folgenden Funktionen bereitgestellt.

  • Automatisches Notbremssystem (AEB)
  • Spurhalteassistent (LCA)
  • Hands-on Detection (HOD)

Automatisches Notbremssystem

Für das automatische Notbremssystem sind zwei Attribute definiert, wie in dieser Tabelle beschrieben.

Attribut Werte
AUTOMATIC_EMERGENCY_BRAKING_ENABLED VehiclePropertyType:BOOLEAN

AUTOMATIC_EMERGENCY_BRAKING_STATE

Definiert in AutomaticEmergencyBrakingState.aidl.

VehiclePropertyType:INT32

  • OTHER
  • ENABLED
  • ACTIVATED
  • USER_OVERRIDE
  • ErrorState
  • Das folgende Beispiel für ein Zustandsdiagramm für das automatische Notbremssystem enthält die unterstützten Status, die in AutomaticEmergencyBrakingState.aidl definiert sind.

    AEB-Zustände, die in AutomaticEmergencyBrakingState.aidl definiert sind

    Abbildung 2 : In AutomaticEmergencyBrakingState.aidl definierte Status des automatischen Notbremssystems

    Diese Abbildung zeigt ein Beispiel für das automatische Notbremssystem, wenn der USER_OVERRIDE Status nicht unterstützt wird. Unterstützte Status sollten über die getSupportedEnumValues() API in AreaIdConfig.java angegeben werden.

    AEB, wenn der Status der Nutzerüberschreibung nicht unterstützt wird

    Abbildung 3 : Automatisches Notbremssystem, wenn der Status USER_OVERRIDE nicht unterstützt wird

    Im in Abbildung 4 dargestellten Beispiel für das automatische Notbremssystem ist der Fehler hervorgehoben, der dazu führt, dass das automatische Notbremssystem nicht verfügbar ist. Dies zeigt, wie die in ErrorState.aidl definierten Werte verwendet werden sollten. Diese Fehler führen nicht dazu, dass von CarPropertyManager eine Ausnahme ausgelöst wird, sondern werden auf dieselbe Weise wie jede andere Änderung an CarPropertyValue an Apps weitergegeben.

    Fehlerursachen für die Nichtverfügbarkeit von AEB

    Abbildung 4 : Fehler führt dazu, dass das automatische Notbremssystem nicht verfügbar ist

    Spurhalteassistent

    Der Spurhalteassistent (LCA) bietet drei zugehörige und definierte Attribute.

    Attribut Werte
    LANE_CENTERING_ASSIST_ENABLED VehiclePropertyType:BOOLEAN

    LANE_CENTERING_ASSIST_STATE

    Definiert in LaneCenteringAssistState.aidl

    VehiclePropertyType:INT32

    • OTHER
    • ENABLED
    • ACTIVATION_REQUESTED
    • ACTIVATED
    • USER_OVERRIDE
    • FORCED_DEACTIVATION_WARNING
    • ErrorState

    LANE_CENTERING_ASSIST_COMMAND

    Definiert in LaneCenteringAssistCommand.aidl

    VehiclePropertyType:INT32

    • ACTIVATE
    • DEACTIVATE

    Das folgende Zustandsdiagramm veranschaulicht den Spurhalteassistenten, wenn alle in LaneCenteringAssistState.aidl definierten Status unterstützt werden. Grüne Linien können entweder ein Befehl sein, der von dem LANE_CENTERING_ASSIST_COMMAND initiiert wurde (falls implementiert), oder über einen anderen Mechanismus im Fahrzeug initiiert werden und eine Status änderung im Android Automotive OS (AAOS) widerspiegeln.

    LCA-Zustände, die in LaneCenteringAssistState.aidl definiert sind

    Abbildung 5 : In LaneCenteringAssistState.aidl definierte Status des Spurhalteassistenten

    In diesem Beispiel für den Spurhalteassistenten wird ein Fehler hervorgehoben, der dazu führt, dass der Spurhalteassistent nicht verfügbar ist. Dies zeigt, wie die in ErrorState.aidl definierten Werte verwendet werden. Diese Fehler führen nicht dazu, dass CarPropertyManager einen Fehler auslöst, sondern werden auf dieselbe Weise wie andere Änderungen an CarPropertyValue an Apps weitergegeben.

     Fehler führen dazu, dass LCA nicht mehr verfügbar ist.

    Abbildung 6 : Fehler führt dazu, dass der Spurhalteassistent nicht verfügbar ist

    Hands-on Detection

    Für die Hands-on Detection (HOD) sind diese drei zugehörigen Attribute definiert.

    Attribut Beschreibung
    HANDS_ON_DETECTION_ENABLED VehiclePropertyType:BOOLEAN

    HANDS_ON_DETECTION_STATE

    Definiert in HandsOnDetectionDriverState.aidl

    VehiclePropertyType:INT32

    • OTHER
    • HANDS_ON
    • HANDS_OFF
    • ErrorState

    HANDS_ON_DETECTION_WARNING

    Definiert in HandsOnDetectionWarning.aidl

    VehiclePropertyType:INT32

    • OTHER
    • NO_WARNING
    • WARNING
    • ErrorState

    Unten sehen Sie ein Beispiel für die Hands-on Detection, bei dem alle in HandsOnDetectionDriverState.aidl definierten Status unterstützt werden.

    HOD, wenn alle definierten Status in HandsOnDetectionDriverState.aidl unterstützt werden.

    Abbildung 7 : Hands-on Detection, wenn alle in HandsOnDetectionDriverState.aidl definierten Status unterstützt werden

    Neben dem Attribut HANDS_ON_DETECTION_STATE bietet die Hands-on Detection auch ein separates Warnattribut, HANDS_ON_DETECTION_WARNING. Das Zustandsdiagramm für die Warnwerte der Hands-on Detection ist dargestellt in Abbildung 8.

    HOD-Warnwerte

    Abbildung 8 : Hands-on Detection, wenn alle in HandsOnDetectionWarning.aidl definierten Werte unterstützt werden