Google se compromete a promover la equidad racial para las comunidades negras. Ver cómo.
Se usó la API de Cloud Translation para traducir esta página.
Switch to English

Automotor

Ícono HAL del vehículo Android

Muchos subsistemas de automóviles se interconectan entre sí y con el sistema de infoentretenimiento en el vehículo (IVI) a través de varias topologías de bus. El tipo exacto de bus y los protocolos varían ampliamente entre fabricantes (e incluso entre diferentes modelos de vehículos de la misma marca); los ejemplos incluyen bus de red de área de controlador (CAN), bus de red de interconexión local (LIN), transporte de sistemas orientados a medios (MOST), así como redes Ethernet y TCP / IP de grado automotriz como BroadR-Reach.

La capa de abstracción de hardware (HAL) de Android Automotive proporciona una interfaz coherente con el marco de Android, independientemente de la capa de transporte físico. Este vehículo HAL es la interfaz para desarrollar implementaciones de Android Automotive.

Los integradores de sistemas pueden implementar un módulo HAL del vehículo conectando interfaces HAL de plataforma específicas de función (por ejemplo, HVAC) con interfaces de red específicas de tecnología (por ejemplo, bus CAN). Las implementaciones típicas pueden incluir una unidad de microcontrolador (MCU) dedicada que ejecuta un sistema operativo propietario en tiempo real (RTOS) para el acceso al bus CAN o similar, que puede conectarse a través de un enlace en serie a la CPU que ejecuta Android Automotive. En lugar de una MCU dedicada, también es posible implementar el acceso al bus como una CPU virtualizada. Depende de cada socio elegir la arquitectura adecuada para el hardware siempre que la implementación cumpla con los requisitos de interfaz para el HAL del vehículo.

Arquitectura

La HAL del vehículo es la definición de interfaz entre el automóvil y el servicio de red del vehículo:

Arquitectura HAL del vehículo Android

Figura 1 Arquitectura automotriz HAL y Android para vehículos

  • Car API . Contiene las API como CarHvacManager y CarSensorManager. Para obtener detalles sobre las API compatibles, consulte /platform/packages/services/Car/car-lib .
  • CarService . Ubicado en /platform/packages/services/Car/ .
  • Vehículo HAL . Interfaz que define las propiedades del vehículo que los OEM pueden implementar. Contiene metadatos de propiedad (por ejemplo, si la propiedad del vehículo es un int y qué modos de cambio están permitidos). Ubicado en hardware/libhardware/include/hardware/vehicle.h . Para una implementación de referencia básica, consulte hardware/libhardware/modules/vehicle/ .

Para más detalles, vea Propiedades del vehículo .

Seguridad

El vehículo HAL admite tres niveles de seguridad para acceder a los datos:

  • Solo sistema (controlado por vns_policy.xml )
  • Accesible a la aplicación con permiso (a través del servicio de automóviles)
  • Accesible sin permiso (a través del servicio de automóviles)

El acceso directo a las propiedades del vehículo solo se permite a los componentes del sistema seleccionados con el servicio de red del vehículo que actúa como el portero. La mayoría de las aplicaciones pasan por un control adicional por el servicio del automóvil (por ejemplo, solo las aplicaciones del sistema pueden controlar HVAC, ya que requiere un permiso del sistema otorgado solo a las aplicaciones del sistema).

Validación

AOSP incluye los siguientes recursos de prueba para usar en el desarrollo:

  • hardware/libhardware/tests/vehicle/vehicle-hal-tool.c
    Herramienta nativa de línea de comandos para cargar HAL del vehículo y realizar operaciones simples. Útil para poner el sistema en funcionamiento en las primeras etapas de desarrollo.
  • packages/services/Car/tests/carservice_test/
    Contiene pruebas de servicio de automóviles con propiedades HAL de vehículos simulados. Para cada propiedad, el comportamiento esperado se implementa en la prueba. Este puede ser un buen punto de partida para comprender el comportamiento esperado.
  • hardware/libhardware/modules/vehicle/
    Una implementación de referencia básica.