Proprietà del veicolo ADAS

Abbiamo aggiunto le seguenti nuove proprietà ADAS ad Android 14:

Queste nuove funzionalità sono illustrate nella figura seguente.

Funzionalità ADAS supportate

Figura 1. Funzionalità ADAS supportate.

Elenco delle proprietà

Per supportare queste nuove funzionalità, ad Android 14 viene aggiunto un elenco di proprietà. Sono elencate di seguito.

Proprietà
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

Temi di progettazione

I seguenti temi di progettazione vengono applicati alle proprietà appena aggiunte.

Proprietà Descrizione
ABILITATO
  • Proprietà per indicare se una funzionalità è abilitata o disabilitata.
  • Proprietà booleane in cui true è abilitato e false è disabilitato.
  • Proprietà Read e Write che possono essere implementate come Read-only .
STATO
  • Proprietà per comunicare lo stato della funzionalità tramite un elenco di stati predefiniti.
  • Proprietà Int32 con enumerazioni definite.
  • OTHER campo per supportare la compatibilità con le versioni precedenti.
  • Proprietà Read-only .
  • Tipi di area speculare o globale.
  • Utilizza i valori definiti in ErrorStates.aidl .
  • Utilizza l'API getSupportedEnumValues() in AreaIdConfig.java .
Varie
  • Proprietà COMMAND per le funzionalità quando è richiesto l'input dell'utente.
  • Proprietà WARNING per quando lo stato può essere rappresentato separatamente.
  • Altri immobili da supportare:
    • Variazioni delle funzionalità quando applicabili.
    • Modifica le impostazioni delle funzionalità quando applicabile.

Esempi di diagrammi di stato

Questa sezione fornisce diagrammi di stato per un sottoinsieme delle funzionalità ADAS supportate per dimostrare come interagiscono le proprietà incluse. Abbiamo fornito esempi delle seguenti funzionalità.

  • Frenata automatica di emergenza (AEB)
  • Assistenza al centraggio della corsia (LCA)
  • Rilevamento pratico (HOD)

Frenata d'emergenza automatica

Per l'AEB sono definite due proprietà, come descritto in questa tabella.

Proprietà Valori
AUTOMATIC_EMERGENCY_BRAKING_ENABLED VehiclePropertyType:BOOLEAN

AUTOMATIC_EMERGENCY_BRAKING_STATE

Definito in AutomaticEmergencyBrakingState.aidl .

VehiclePropertyType:INT32

  • OTHER
  • ENABLED
  • ACTIVATED
  • USER_OVERRIDE
  • ErrorState
  • Il seguente diagramma di stato di esempio per AEB include gli stati supportati definiti in AutomaticEmergencyBrakingState.aidl .

    Stati AEB definiti in AutomaticEmergencyBrakingState.aidl

    Figura 2. Stati AEB definiti in AutomaticEmergencyBrakingState.aidl.

    Questa figura fornisce un esempio di AEB quando lo stato USER_OVERRIDE non è supportato. Gli stati supportati devono essere specificati tramite l'API getSupportedEnumValues() in AreaIdConfig.java .

    AEB quando lo stato di override dell'utente non è supportato

    Figura 3. AEB quando lo stato USER_OVERRIDE non è supportato.

    Nell'esempio AEB illustrato nella Figura 4, viene evidenziato l'errore che rende l'AEB non disponibile. Ciò dimostra come dovrebbero essere utilizzati i valori definiti in ErrorState.aidl . Questi errori non generano un'eccezione generata da CarPropertyManager e vengono invece condivisi con le app allo stesso modo di qualsiasi altra modifica a CarPropertyValue .

    L'errore rende l'AEB non disponibile

    Figura 4. L'errore rende l'AEB non disponibile.

    Assistente al centraggio della corsia

    L'assistenza al centraggio della corsia (LCA) fornisce tre proprietà associate e definite.

    Proprietà Valori
    LANE_CENTERING_ASSIST_ENABLED VehiclePropertyType:BOOLEAN

    LANE_CENTERING_ASSIST_STATE

    Definito in LaneCenteringAssistState.aidl

    VehiclePropertyType:INT32

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

    LANE_CENTERING_ASSIST_COMMAND

    Definito in LaneCenteringAssistCommand.aidl

    VehiclePropertyType:INT32

    • ACTIVATE
    • DEACTIVATE

    Il seguente diagramma di stato illustra l'LCA quando sono supportati tutti gli stati definiti in LaneCenteringAssistState.aidl . Le linee verdi possono essere un comando avviato da LANE_CENTERING_ASSIST_COMMAND (se implementato) o avviato tramite un altro meccanismo nel veicolo e riflettere un cambiamento di stato sul sistema operativo Android Automotive (AAOS).

    Stati LCA definiti in LaneCenteringAssistState.aidl

    Figura 5. Stati LCA definiti in LaneCenteringAssistState.aidl.

    Questo esempio di LCA evidenzia un errore che rende l'LCA non disponibile. Ciò dimostra come utilizzare i valori definiti in ErrorState.aidl . Questi errori non determinano la generazione di un errore da parte CarPropertyManager e vengono invece condivisi con le app nello stesso modo in cui vengono condivise altre modifiche alla modifica CarPropertyValue .

    L'errore rende l'LCA non disponibile.

    Figura 6. L'errore rende l'LCA non disponibile.

    Rilevamento pratico

    Queste tre proprietà associate sono definite per il rilevamento pratico (HOD).

    Proprietà Descrizione
    HANDS_ON_DETECTION_ENABLED VehiclePropertyType:BOOLEAN

    HANDS_ON_DETECTION_STATE

    Definito in HandsOnDetectionDriverState.aidl

    VehiclePropertyType:INT32

    • OTHER
    • HANDS_ON
    • HANDS_OFF
    • ErrorState

    HANDS_ON_DETECTION_WARNING

    Definito in HandsOnDetectionWarning.aidl

    VehiclePropertyType:INT32

    • OTHER
    • NO_WARNING
    • WARNING
    • ErrorState

    Di seguito è illustrato un esempio di HOD, in cui sono supportati tutti gli stati definiti in HandsOnDetectionDriverState.aidl .

    HOD quando sono supportati tutti gli stati definiti in HandsOnDetectionDriverState.aidl.

    Figura 7. HOD quando sono supportati tutti gli stati definiti in HandsOnDetectionDriverState.aidl.

    Oltre alla proprietà HANDS_ON_DETECTION_STATE , HOD fornisce anche una proprietà di avviso separata, HANDS_ON_DETECTION_WARNING . Il diagramma di stato per i valori di avviso HOD è illustrato nella Figura 8.

    Valori di avviso HOD

    Figura 8. HOD quando sono supportati tutti i valori definiti in HandsOnDetectionWarning.aidl.