Otomotiv

Android araç HAL simgesi

Birçok araç alt sistemi, çeşitli veri yolu topolojileri aracılığıyla birbiriyle ve araç içi bilgi-eğlence (IVI) sistemi ile bağlantı kurar. Kesin veri yolu tipi ve protokolleri üreticiler arasında (ve hatta aynı markanın farklı araç modelleri arasında) büyük farklılıklar gösterir; Örnekler arasında Denetleyici Alan Ağı (CAN) veriyolu, Yerel Bağlantı Ağı (LIN) veriyolu, Ortama Yönelik Sistem Taşımacılığı (MOST) ve ayrıca BroadR-Reach gibi otomotiv sınıfı Ethernet ve TCP / IP ağları yer alır.

Android Automotive donanım soyutlama katmanı (HAL), fiziksel taşıma katmanından bağımsız olarak Android çerçevesi için tutarlı bir arayüz sağlar. Bu araç HAL, Android Otomotiv uygulamalarını geliştirmek için bir arayüzdür.

Sistem entegratörleri, işleve özgü platform HAL arabirimlerini (örneğin HVAC) teknolojiye özgü ağ arabirimleriyle (örneğin CAN veriyolu) bağlayarak bir araç HAL modülünü uygulayabilir. Tipik uygulamalar, Android Automotive çalıştıran CPU'ya seri bağlantı yoluyla bağlanabilen, CAN veriyolu erişimi veya benzeri için özel bir gerçek zamanlı işletim sistemi (RTOS) çalıştıran özel bir Mikroişlemci Birimi (MCU) içerebilir. Tahsis edilmiş bir MCU yerine, veri yolu erişimini sanallaştırılmış bir CPU olarak uygulamak da mümkün olabilir. Uygulama, araç HAL'si için arayüz gereksinimlerini karşıladığı sürece, donanıma uygun mimariyi seçmek her ortağa kalmıştır.

Mimari

Araç HALı, araç ile araç ağı hizmeti arasındaki arayüz tanımıdır:

Android araç HAL mimarisi

Şekil 1 . Araç HAL ve Android otomotiv mimarisi

  • Araba API'si . CarSensorManager dahil API'leri içerir. Desteklenen API'ler hakkında ayrıntılar için /platform/packages/services/Car/car-lib konusuna bakın.
  • CarService . /platform/packages/services/Car/ adresinde bulunur.
  • Araç HAL . OEM'lerin uygulayabileceği araç özelliklerini tanımlayan arayüz. Özellik meta verilerini içerir (örneğin, araç özelliğinin bir int olup olmadığı ve hangi değişiklik modlarına izin verildiği). hardware/libhardware/include/hardware/vehicle.h adresinde bulunur. Temel bir referans uygulaması için, hardware/libhardware/modules/vehicle/ bakın.

Daha fazla ayrıntı için bkz. Araç Özellikleri .

Güvenlik

Araç HAL, verilere erişirken bu güvenlik seviyelerini destekler:

  • İzin ile uygulamaya erişilebilir (araç servisi aracılığıyla).
  • İzinsiz erişilebilir (araç servisi aracılığıyla).

Araç özelliklerine doğrudan erişime yalnızca selinux erişim korumalı araç ağına sahip seçili sistem bileşenlerine izin verilir. Çoğu uygulama, araba servisi tarafından ek ağ geçidi korumasından geçer (örneğin, yalnızca sistem uygulamaları, yalnızca sistem uygulamalarına sistem izni verilmesini gerektirdiğinden, HVAC'yi kontrol edebilir).