Propriétés du véhicule ADAS

Nous avons ajouté les nouvelles propriétés ADAS suivantes à Android 14 :

Ces nouvelles fonctionnalités sont illustrées dans la figure suivante.

Fonctionnalités ADAS prises en charge

Figure 1. Fonctionnalités ADAS prises en charge.

Liste des propriétés

Pour prendre en charge ces nouvelles fonctionnalités, une liste de propriétés est ajoutée à Android 14. Elles sont répertoriées ci-dessous.

Propriétés
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

Thèmes de conception

Les thèmes de conception suivants sont appliqués aux propriétés nouvellement ajoutées.

Propriété Description
ACTIVÉ
  • Propriétés pour indiquer si une fonctionnalité est activée ou désactivée.
  • Propriétés booléennes dans lesquelles true est activé et false est désactivé.
  • Propriétés Read et Write pouvant être implémentées en Read-only .
ÉTAT
  • Propriétés pour communiquer l’état des fonctionnalités via une liste d’états prédéfinis.
  • Propriétés Int32 avec des énumérations définies.
  • OTHER champ pour prendre en charge la compatibilité ascendante.
  • Propriétés Read-only .
  • Types de zones miroir ou globales.
  • Utilise les valeurs définies dans ErrorStates.aidl .
  • Utilisez l'API getSupportedEnumValues() dans AreaIdConfig.java .
Divers
  • Propriétés COMMAND pour les fonctionnalités lorsque la saisie de l'utilisateur est requise.
  • Propriétés WARNING pour quand l’état peut être représenté séparément.
  • Autres propriétés à prendre en charge :
    • Variations de fonctionnalités le cas échéant.
    • Ajustez les paramètres des fonctionnalités, le cas échéant.

Exemples de diagrammes d'état

Cette section fournit des diagrammes d'état pour un sous-ensemble des fonctionnalités ADAS prises en charge afin de démontrer comment les propriétés incluses fonctionnent ensemble. Nous avons fourni des exemples des fonctionnalités suivantes.

  • Freinage d'urgence automatique (AEB)
  • Assistance au centrage de voie (LCA)
  • Détection pratique (HOD)

Freinage d'urgence automatique

Deux propriétés sont définies pour l'AEB comme décrit dans ce tableau.

Propriété Valeurs
AUTOMATIC_EMERGENCY_BRAKING_ENABLED VehiclePropertyType:BOOLEAN

AUTOMATIC_EMERGENCY_BRAKING_STATE

Défini dans AutomaticEmergencyBrakingState.aidl .

VehiclePropertyType:INT32

  • OTHER
  • ENABLED
  • ACTIVATED
  • USER_OVERRIDE
  • ErrorState
  • L’exemple de diagramme d’état suivant pour AEB inclut les états pris en charge définis dans AutomaticEmergencyBrakingState.aidl .

    États AEB définis dans AutomaticEmergencyBrakingState.aidl

    Figure 2. États AEB définis dans AutomaticEmergencyBrakingState.aidl.

    Cette figure fournit un exemple d'AEB lorsque l'état USER_OVERRIDE n'est pas pris en charge. Les états pris en charge doivent être spécifiés via l'API getSupportedEnumValues() dans AreaIdConfig.java .

    AEB lorsque l'état de remplacement de l'utilisateur n'est pas pris en charge

    Figure 3. AEB lorsque l'état USER_OVERRIDE n'est pas pris en charge.

    Dans l’exemple AEB illustré à la figure 4, l’erreur qui rend l’AEB indisponible est mise en évidence. Cela montre comment les valeurs définies dans ErrorState.aidl doivent être utilisées. Ces erreurs n'entraînent pas d'exception levée par CarPropertyManager et sont partagées avec les applications de la même manière que toute autre modification apportée à CarPropertyValue .

    Une erreur rend l'AEB indisponible

    Figure 4. Une erreur entraîne l'indisponibilité de l'AEB.

    Assistance au centrage de voie

    L'assistance au centrage de voie (LCA) fournit trois propriétés associées et définies.

    Propriété Valeurs
    LANE_CENTERING_ASSIST_ENABLED VehiclePropertyType:BOOLEAN

    LANE_CENTERING_ASSIST_STATE

    Défini dans LaneCenteringAssistState.aidl

    VehiclePropertyType:INT32

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

    LANE_CENTERING_ASSIST_COMMAND

    Défini dans LaneCenteringAssistCommand.aidl

    VehiclePropertyType:INT32

    • ACTIVATE
    • DEACTIVATE

    Le diagramme d'état suivant illustre l'ACV lorsque tous les états définis dans LaneCenteringAssistState.aidl sont pris en charge. Les lignes vertes peuvent être soit une commande lancée à partir de LANE_CENTERING_ASSIST_COMMAND (lorsqu'elle est implémentée), soit initiée via un autre mécanisme dans le véhicule et refléter un changement d'état sur le système d'exploitation Android Automotive (AAOS).

    États LCA définis dans LaneCenteringAssistState.aidl

    Figure 5. États LCA définis dans LaneCenteringAssistState.aidl.

    Cet exemple LCA met en évidence une erreur qui rend LCA indisponible. Cela montre comment utiliser les valeurs définies dans ErrorState.aidl . Ces erreurs n'entraînent pas le lancement d'une erreur CarPropertyManager et sont plutôt partagées avec les applications de la même manière que les autres modifications apportées à CarPropertyValue sont partagées.

    Une erreur rend LCA indisponible.

    Figure 6. Une erreur entraîne l'indisponibilité de LCA.

    Détection pratique

    Ces trois propriétés associées sont définies pour la détection pratique (HOD).

    Propriété Description
    HANDS_ON_DETECTION_ENABLED VehiclePropertyType:BOOLEAN

    HANDS_ON_DETECTION_STATE

    Défini dans HandsOnDetectionDriverState.aidl

    VehiclePropertyType:INT32

    • OTHER
    • HANDS_ON
    • HANDS_OFF
    • ErrorState

    HANDS_ON_DETECTION_WARNING

    Défini dans HandsOnDetectionWarning.aidl

    VehiclePropertyType:INT32

    • OTHER
    • NO_WARNING
    • WARNING
    • ErrorState

    L'illustration ci-dessous est un exemple de HOD, dans lequel tous les états définis dans HandsOnDetectionDriverState.aidl sont pris en charge.

    HOD lorsque tous les états définis dans HandsOnDetectionDriverState.aidl sont pris en charge.

    Figure 7. HOD lorsque tous les états définis dans HandsOnDetectionDriverState.aidl sont pris en charge.

    En plus de la propriété HANDS_ON_DETECTION_STATE , HOD fournit également une propriété d'avertissement distincte, HANDS_ON_DETECTION_WARNING . Le diagramme d'état des valeurs d'avertissement HOD est illustré à la figure 8.

    Valeurs d'avertissement HOD

    Figure 8. HOD lorsque toutes les valeurs définies dans HandsOnDetectionWarning.aidl sont prises en charge.