Propiedades del vehículo ADAS

Agregamos las siguientes nuevas propiedades ADAS a Android 14:

Estas nuevas capacidades se ilustran en la siguiente figura.

Funciones ADAS compatibles
Figura 1. Funciones ADAS compatibles.

Lista de propiedades

Para admitir estas nuevas funciones, se agrega una lista de propiedades a Android 14. Se enumeran a continuación.

Propiedades
ADAPTIVE_CRUISE_CONTROL_TARGET_TIME_GAP
ADAPTIVE_CRUISE_CONTROL_LEAD_VEHICLE_DISTANCE

AUTOMATIC_EMERGENCY_BRAKING_ENABLED
AUTOMATIC_EMERGENCY_BRAKING_STATE

BLIND_SPOT_WARNING_ENABLED
ESTADO_ADVERTENCIA_PUNTO_BLIND

CRUISE_CONTROL_ENABLED
CRUCERO_CONTROL_TYPE
CRUCERO_CONTROL_ESTADO
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
MANOS_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

Temas de diseño

Los siguientes temas de diseño se aplican a las propiedades recién agregadas.

Propiedad Descripción
ACTIVADO
  • Propiedades para indicar si una característica está habilitada o deshabilitada.
  • Propiedades booleanas en las que true está habilitado y false está deshabilitado.
  • Propiedades Read y Write que se pueden implementar como Read-only .
ESTADO
  • Propiedades para comunicar el estado de la característica a través de una lista de estados predefinidos.
  • Propiedades int32 con enumeraciones definidas.
  • OTHER campo para admitir compatibilidad con versiones anteriores.
  • Propiedades Read-only .
  • Tipos de área espejo o global.
  • Utiliza valores definidos en ErrorStates.aidl .
  • Utilice la API getSupportedEnumValues() en AreaIdConfig.java .
Misceláneas
  • Propiedades COMMAND para funciones cuando se requiere la entrada del usuario.
  • Propiedades WARNING para cuando el estado se puede representar por separado.
  • Otras propiedades a apoyar:
    • Variaciones de funciones cuando corresponda.
    • Ajuste la configuración de las funciones cuando corresponda.

Ejemplos de diagramas de estado

Esta sección proporciona diagramas de estado para un subconjunto de las funciones ADAS compatibles para demostrar cómo funcionan juntas las propiedades incluidas. Hemos proporcionado ejemplos de las siguientes características.

  • Frenado automático de emergencia (AEB)
  • Asistente de centrado de carril (LCA)
  • Detección práctica (HOD)

Frenado automático de emergencia

Se definen dos propiedades para AEB como se describe en esta tabla.

Propiedad Valores
AUTOMATIC_EMERGENCY_BRAKING_ENABLED Tipo de propiedad del vehículo: BOOLEAN

AUTOMATIC_EMERGENCY_BRAKING_STATE

Definido en AutomaticEmergencyBrakingState.aidl .

Tipo de propiedad del vehículo: INT32

  • OTRO
  • ACTIVADO
  • ACTIVADO
  • USUARIO_OVERRIDE
  • Estado de error
  • El siguiente diagrama de estado de muestra para AEB incluye los estados admitidos definidos en AutomaticEmergencyBrakingState.aidl .

    Estados AEB definidos en AutomaticEmergencyBrakingState.aidl
    Figura 2. Estados AEB definidos en AutomaticEmergencyBrakingState.aidl .

    Esta figura proporciona un ejemplo de AEB cuando no se admite el estado USER_OVERRIDE . Los estados admitidos deben especificarse a través de la API getSupportedEnumValues() en AreaIdConfig.java .

    AEB cuando el estado de anulación del usuario no es compatible
    Figura 3. AEB cuando no se admite el estado USER_OVERRIDE .

    En el ejemplo de AEB ilustrado en la Figura 4, se resalta el error que hace que AEB deje de estar disponible. Esto demuestra cómo se deben utilizar los valores definidos en ErrorState.aidl . Estos errores no dan como resultado una excepción lanzada por CarPropertyManager y, en cambio, se comparten con las aplicaciones de la misma manera que cualquier otro cambio en CarPropertyValue .

    El error hace que AEB deje de estar disponible
    Figura 4. El error hace que AEB deje de estar disponible.

    Asistente de centrado de carril

    El asistente de centrado de carril (LCA) proporciona tres propiedades asociadas y definidas.

    Propiedad Valores
    LANE_CENTERING_ASSIST_ENABLED Tipo de propiedad del vehículo: BOOLEAN

    LANE_CENTERING_ASSIST_STATE

    Definido en LaneCenteringAssistState.aidl

    Tipo de propiedad del vehículo: INT32

    • OTRO
    • ACTIVADO
    • ACTIVACIÓN_REQUESTED
    • ACTIVADO
    • USUARIO_OVERRIDE
    • FORCED_DEACTIVATION_WARNING
    • Estado de error

    LANE_CENTERING_ASSIST_COMMAND

    Definido en LaneCenteringAssistCommand.aidl

    Tipo de propiedad del vehículo: INT32

    • ACTIVAR
    • DESACTIVAR

    El siguiente diagrama de estado ilustra LCA cuando se admiten todos los estados definidos en LaneCenteringAssistState.aidl . Las líneas verdes pueden ser un comando iniciado desde LANE_CENTERING_ASSIST_COMMAND (cuando está implementado) o iniciado a través de otro mecanismo en el vehículo y reflejar un cambio de estado en el sistema operativo Android Automotive (AAOS).

    Estados de LCA definidos en LaneCenteringAssistState.aidl
    Figura 5. Estados de LCA definidos en LaneCenteringAssistState.aidl .

    Este ejemplo de LCA destaca un error que hace que LCA deje de estar disponible. Esto demuestra cómo utilizar los valores definidos en ErrorState.aidl . Estos errores no provocan que CarPropertyManager arroje un error y, en cambio, se comparten con las aplicaciones de la misma manera que se comparten otros cambios en CarPropertyValue .

    El error hace que LCA deje de estar disponible.
    Figura 6. El error hace que LCA deje de estar disponible.

    Detección práctica

    Estas tres propiedades asociadas se definen para la detección práctica (HOD).

    Propiedad Descripción
    HANDS_ON_DETECTION_ENABLED Tipo de propiedad del vehículo: BOOLEAN

    MANOS_EN_DETECCION_ESTADO

    Definido en HandsOnDetectionDriverState.aidl

    Tipo de propiedad del vehículo: INT32

    • OTRO
    • LAS MANOS EN
    • MANOS_OFF
    • Estado de error

    HANDS_ON_DETECTION_WARNING

    Definido en HandsOnDetectionWarning.aidl

    Tipo de propiedad del vehículo: INT32

    • OTRO
    • SIN ADVERTENCIA
    • ADVERTENCIA
    • Estado de error

    A continuación se ilustra un ejemplo de HOD, en el que se admiten todos los estados definidos en HandsOnDetectionDriverState.aidl .

    HOD cuando se admiten todos los estados definidos en HandsOnDetectionDriverState.aidl.
    Figura 7. HOD cuando se admiten todos los estados definidos en HandsOnDetectionDriverState.aidl .

    Además de la propiedad HANDS_ON_DETECTION_STATE , HOD también proporciona una propiedad de advertencia independiente, HANDS_ON_DETECTION_WARNING . El diagrama de estado para los valores de advertencia de HOD se ilustra en la Figura 8.

    Valores de advertencia HOD
    Figura 8. HOD cuando se admiten todos los valores definidos en HandsOnDetectionWarning.aidl .