Pojazd definiowany przez oprogramowanie

Oprogramowanie SDV (Software Defined Vehicle) w systemie operacyjnym Android Automotive OS (AAOS) obsługuje szeroki zakres domen obliczeniowych w motoryzacji, nie tylko systemy multimedialne, ale też np. zestawy wskaźników, sterowanie nadwoziem i funkcje wspomagania kierowcy.

Omówienie AAOS

Infotainment (IVI)

System AAOS IVI zapewnia atrakcyjne i przydatne funkcje rozrywki i nawigacji w samochodzie.

Ujednolicony kokpit (IVI / SDV)

AAOS zapewnia ujednolicone rozwiązanie w zakresie kokpitu, które wykorzystuje dane z klastra, aby stworzyć kompleksowe rozwiązanie w zakresie kabiny na potrzeby systemu informacyjno-rozrywkowego i kokpitu.

Poza kokpitem (IVI / SDV)

AAOS obsługuje wiele obszarów w samochodzie, takich jak podwozie i nadwozie, a także integracja ADAS (QM), aby tworzyć spersonalizowane funkcje.

Rysunek 1. Kluczowe obszary SDV.

Platforma SDV rozwiązuje główne problemy związane z opracowywaniem nowoczesnych pojazdów. Zapewnia kompaktową, wydajną i skalowalną platformę oprogramowania opartą na wbudowanym stosie Androida bez interfejsu. Ten stos jest głęboko zintegrowany z architekturą pojazdu i zasila komponenty w całym pojeździe, w tym siłowniki foteli, zestawy wskaźników, klimatyzację, oświetlenie, kamery, lusterka i telemetrię.

Rdzeń AAOS SDV to lekki system operacyjny oparty na Androidzie, który zawiera niskopoziomowe, specyficzne dla motoryzacji struktury do komunikacji, diagnostyki i aktualizacji oprogramowania. Te platformy umożliwiają SDV w AAOS obsługę różnych kontrolerów pojazdu, takich jak podstawowe obliczenia, sterowanie nadwoziem i domeny klastra.

Platforma AAOS SDV obejmuje też strukturę Display Safety do wdrażania aplikacji na tablicy przyrządów, takich jak sygnały dźwiękowe, kamery wymagane przez przepisy i zaawansowana grafika, która płynnie łączy się z treściami IVI AAOS. Display Safety obejmuje zestaw narzędzi do projektowania zabezpieczeń i referencyjny monitor bezpieczeństwa, który umożliwia producentom OEM spełnianie wymagań dotyczących bezpieczeństwa funkcjonalnego dzięki wykorzystaniu różnorodnych mechanizmów bezpieczeństwa platformy w motoryzacyjnych układach SoC.

Wprowadzenie do AAOS SDV

AAOS SDV działa w środowisku z wieloma maszynami wirtualnymi na samochodowym systemie SoC, zwykle obok systemu IVI. AAOS SDV to instancja Androida bez interfejsu użytkownika, która korzysta z wirtualizacji ze sterownikami VirtIO. Ta architektura umożliwia uruchamianie tego samego obrazu systemu w wirtualnych środowiskach opartych na chmurze, takich jak Cuttlefish, lub na dowolnym hiperwizorze zgodnym z VirtIO na docelowym sprzęcie. AAOS SDV to ustandaryzowana, bezpieczna platforma z możliwością aktualizacji, która obsługuje funkcje pojazdu.

Środowisko AAOS

Rysunek 2. środowisku AAOS.

Najważniejsze funkcje

W tej sekcji opisujemy najważniejsze funkcje AAOS SDV.

Programowanie w chmurze (cyfrowy bliźniak)

AAOS SDV jest przeznaczony do uruchamiania na urządzeniu wirtualnym Cuttlefish, co umożliwia tworzenie cyfrowego bliźniaka środowisk obliczeniowych pojazdu w chmurze lub na maszynach lokalnych. Cyfrowy bliźniak umożliwia tworzenie i testowanie oprogramowania pojazdu (od poszczególnych usług po interakcje między wieloma maszynami wirtualnymi) jeszcze przed udostępnieniem fizycznego sprzętu, co przyspiesza czas wprowadzania na rynek.

Kluczowe komponenty:

  • Cuttlefish: emuluje środowisko SDV z wieloma maszynami wirtualnymi.
  • Android Studio for Platform (ASfP): udostępnia narzędzia do tworzenia i wdrażania w Cuttlefish usług opartych na języku Rust.

Grupa przyrządów i renderowanie o mieszanej krytyczności

AAOS SDV obsługuje przypadki użycia, takie jak cyfrowe zestawy wskaźników, które wymagają renderowania o mieszanej krytyczności, czyli wyświetlania informacji o krytycznym znaczeniu dla bezpieczeństwa, takich jak kontrolki ostrzegawcze, obok bogatych treści graficznych. Ten rendering musi być dostępny na początku sekwencji uruchamiania pojazdu.

Kluczowe komponenty:

  • SDV Media: włącza funkcje graficzne i multimedialne na maszynie wirtualnej innej niż IVI.
  • Bezpieczeństwo wyświetlacza: zapewnia bezpieczne pod względem funkcjonalnym ścieżki renderowania w trybie wczesnego uruchamiania na potrzeby wyświetlania najważniejszych informacji i wskaźników.

Integracja i komunikacja usług motoryzacyjnych

Platforma ułatwia integrację z istniejącymi architekturami sieci pojazdów za pomocą architektury zorientowanej na usługi (SOA). Obejmuje to komunikację między maszynami wirtualnymi, zarządzanie cyklem życia usługi i komunikację z usługami na innych jednostkach ECU.

Kluczowe komponenty:

  • SDV Core OS: zapewnia instancję Androida bez interfejsu użytkownika na potrzeby usług podstawowych:
    • Komunikacja między maszynami wirtualnymi
    • Wykrywanie usług i zarządzanie nimi
    • Aktualizacje systemu i zarządzanie energią
    • Punkty integracji usług diagnostycznych, konfiguracyjnych i kalibracyjnych
  • Broker SOME/IP: obsługuje komunikację między usługami SDV a zewnętrznymi usługami ECU za pomocą skalowalnego oprogramowania pośredniczącego zorientowanego na usługi przez IP (SOME/IP).

Przetwarzanie danych na urządzeniu

AAOS SDV zawiera platformy do zbierania danych na urządzeniu i przetwarzania na brzegu sieci.

Kluczowe komponenty:

  • Telemetria SDV: ułatwia zbieranie danych na urządzeniu i przetwarzanie na brzegu sieci na potrzeby usług typu pojazd–chmura, z obsługą dynamicznej konfiguracji.

Poziom odniesienia wersji i macierz platform

W tabeli poniżej znajdziesz podsumowanie publicznej wersji bazowej projektu Android Open Source Project (AOSP), profili wykonawczych i zestawu technicznego AAOS SDV w Androidzie 17 (26Q2) i kolejnych aktualizacjach platformy:

Wymiar Platforma Publiczna specyfikacja podstawowa AOSP Główny punkt wejścia
Wartość bazowa wersji Android 17 (26Q2 wersja podstawowa AOSP, zgodna z przyszłymi kwartalnymi i rocznymi aktualizacjami platformy). Pierwsze kroki z pojazdem definiowanym przez oprogramowanie
Profile wykonania (maszyny wirtualne gościa) Architektura VirtIO z wieloma maszynami wirtualnymi, która obejmuje SDV Core(bezgłową maszynę wirtualną z Androidem bez JVM), SDV Media (grafikę kokpitu i Display Safety z uruchomionymi HAR i Safety Monitor) oraz SDV IVI (maszynę wirtualną z systemem informacyjno-rozrywkowym Android Automotive i DriverUI klastrem). Architektura systemu AAOS SDV
Interfejsy usług i generowanie kodu Deklaratywne schematy niezależne od transportu zdefiniowane w VSIDL (.vsidl) i buforach protokołów (.proto), kompilowane przez vsidlc do powiązań biblioteki klienta i oprogramowania pośredniczącego. VSIDL i oprogramowanie pośredniczące – omówienie
Transporty między maszynami wirtualnymi i między jednostkami ECU Komunikacja wewnętrzna SDV Comms przez gniazda VirtIO (vsock) lub Ethernet; komunikacja zewnętrzna z ECU przez protokoły takie jak SOME/IP (z użyciem interfejsu SOME/IP broker i ISomeIpStack Stable AIDL); łączenie IVI VHAL przez ISdvGateway. Omówienie integracji SOME/IP i korzystanie z bramy SDV w systemie IVI
Agenci pakowania i czasu działania Niezależnie aktualizowane pakiety usług .apex zarządzane na poziomie poszczególnych maszyn wirtualnych przez agentów Orchestrator, Service Discovery, Health Monitor, Update Manager i Vehicle Mode and Power Management (VPM). Architektura logiczna i terminologia oraz słowniczek AAOS SDV

Rozpocznij

Więcej informacji o konfigurowaniu środowiska programistycznego, instrukcjach kompilacji i przepływach pracy pakietu usług znajdziesz w artykule Pierwsze kroki z pojazdem definiowanym przez oprogramowanie.