Aracı ve güç yönetimini kontrol etme

Araç Modu ve Güç Yönetimi (VPM) aracısı, aracın Yazılımla Tanımlanan Araç (SDV) ekosisteminin güç sistemini kontrol etmesine yardımcı olur.

VPM aracısı, araç ve güç modlarının SDV'deki SDV aracıları ve hizmet paketleri de dahil olmak üzere çeşitli yazılım bileşenleriyle iletişimini kolaylaştırır.

VPM aracısı, SDV bileşenlerinin aracın mevcut durumunu (ör. çalışma modu [park edilmiş veya sürüş] ve güç durumu [açık, askıya alınmış veya kapalı]) takip etmesini sağlar. Araç durumu, tüm araç yazılımlarında aynıdır ancak güç durumu, araçtaki her SDV VM'sine özeldir.

VPM aracısı, SDV sistem platformuna belirli güç modlarını başlatması için sinyal gönderir. Bu özellik, güç tüketimini optimize eder ve devam ettirme durumunda başlatma süresini kısaltır. Ayrıca SDV'nin çeşitli yazılım bileşenlerinin verimli çalışmasını sağlar.

Bu sayfada, VPM aracısıyla ilişkili temel koşullar, kısıtlamalar ve bağımlılıklar açıklanmaktadır. Bu dokümanda, VPM aracının özgün donanım üreticileri (OEM'ler) ve diğer SDV geliştiricileri için beklenen işlevselliği ve entegrasyon kuralları açıklanmaktadır.

Mimari

Şekil 1'de güç yönetimi mimarisi gösterilmektedir:

Güç yönetimi mimarisi

Şekil 1. Güç yönetimi mimarisi.

VPM aracısı, OEM'in güç yönetimi hizmetinden güç modu komutları (ör. kapatma ve askıya alma) alır.

VPM aracısı bu komutları uygun SDV aracılarına iletir ve aracıların bunları yürütmesini bekler. Bu koordineli yaklaşım, güç modları arasında sorunsuz ve güvenli bir geçiş yapılmasını sağlayarak veri kaybı veya sistem kararsızlığı riskini en aza indirir.

Tüm SDV aracıları güç geçişlerini tamamladıktan sonra VPM aracısı OEM'i bilgilendirir. Böylece OEM sistemleri gerekli işlemleri (ör. bir sonraki duruma geçme veya kapatma) yapabilir. Güç geçişleri engelleyici olduğundan geçiş yalnızca tüm SDV aracıları geçişi OEM tarafından tanımlanan bir zaman aşımı içinde gerçekleştirdiğinde gerçekleşir.

Güç yönetimi için durum makinesi aşağıdaki şemada gösterilmektedir:

Güç yönetimi durum makinesi

Şekil 2. Güç yönetimi durum makinesi.

VPM aracısı, SDV hizmet paketlerini güç modu güncellemeleri hakkında bilgilendirmek için düzenleme ve yaşam döngüsü yönetim sistemiyle birlikte çalışır. Bu sayede hizmet paketleri, güç geçişlerini yönetebilir ve operasyonlarında kesinti yaşanmasını önleyebilir. Güç yönetimi durumlarını hizmet paketleriyle kullanma ve SDV iletişimiyle ilgili ayrıntılar için Askıya alma ve devam ettirme işlemlerini yönetme başlıklı makaleyi inceleyin.

Güç durumları

SDV'de güç yönetimi için izin verilen durumlar şunlardır:

Eyalet Açıklama
REPORT_UNSPECIFIED Rapor belirtilmezse varsayılan değer.
POWER_OFF_EXIT Sanal makine soğuk başlatma ile başlatılıyor. SDV aracıları init.rc ile başlar.
SUSPEND_TO_RAM_EXIT Sanal makine, askıya alma durumundan RAM'e devam ediyor. SDV aracıları RAM'den devam eder ve güç durumu bildirimlerine abone olduysa güç güncellemesi hakkında bildirim alır.
ON Sanal makine normal şekilde çalışıyor.
POWER_OFF_ENTER Sanal makine kapatılmaya hazırlanıyor. Erken temizlenebilen OEM uygulamaları bu durumda temizlenmelidir. OEM uygulamaları, bu aşamada çalışan SDV aracılarına güvenmeye devam edebilir. OEM uygulamalarının hâlâ iletişim kurması gerekebileceğinden SDV aracıları bu aşamada askıya alınmamalı veya kapatılmamalıdır.
SUSPEND_TO_RAM_ENTER Sanal makine, RAM'e askıya alma işlemine hazırlanıyor. Erken temizlenebilen OEM uygulamaları bu durumda temizlenmelidir. OEM uygulamaları, bu aşamada çalışan SDV aracılarına güvenmeye devam edebilir. OEM uygulamalarının hâlâ iletişim kurması gerekebileceğinden SDV aracıları bu aşamada askıya alınmamalı veya kapatılmamalıdır.
WAIT_FOR_FINISH Sanal makine ilk temizliği tamamladı ve kapatma veya askıya alma işlemini tamamlamak ya da iptal etmek için OEM'den sinyal bekliyor.
SHUTDOWN_CANCELLED OEM, kapatma hazırlığı için iptal isteğinde bulundu. Bu istek en geç WAIT_FOR_FINISH tarihinde yapılabilir. OEM uygulamaları, yaşam döngüsü yöneticisi tarafından askıya alma veya kapatma hazırlığını geri almak için istenir.
POWER_OFF_POST_FINISH OEM'nin FINISH_SHUTDOWN isteği üzerine sanal makine son temizliği tamamlıyor ve temel platformu kapatıyor. SDV temsilcileri, kapatmadan önce temizlik yapmalıdır.
SUSPEND_TO_RAM_POST_FINISH Sanal makine, RAM'e askıya alınmak ve temel alınan platform, RAM'e askıya alınmak üzere. OEM uygulamaları, askıya alındıkları için şu anda SDV aracılarına güvenmemelidir. SDV temsilcileri, askıya alma işleminden önce temizliklerini yapmalıdır.

Araç durumuyla ilgili güncellemeler alma

VPM aracısı, OEM'nin araç kontrol hizmeti paketinden mevcut araç modlarıyla ilgili güncellemeler alır.

Ardından aracı, bu bilgileri standart SDV iletişim yığını aracılığıyla ilgili SDV bileşenlerine yönlendirir. Bu, aracın operasyonel durumu hakkında tüm SDV bileşenlerini bilgilendirir. Böylece bileşenler davranışlarını buna göre ayarlayabilir.

Araç durumlarıyla ilgili güncellemeler almak için hizmet paketinizde aşağıdaki VSIDL yapılandırmasını kullanın:

package: "com.sdv.google.vpm.vehicle.client.subscriber"

service_bundle {
    name: "VehicleStateSubscriber"
    //Subscriber to the vehicle state updates.
    subscriber {
        message: "com.sdv.google.vpm.vehicle.VehicleStateChange"
    }
}

Araç modları ve geçişleri, engellemeyen ve eşzamansızdır. Güç geçişlerinin aksine, durum makinesi zorunlu değildir.

SDV'deki bir araç için izin verilen durumlar şunlardır:

Eyalet Açıklama
VEHICLE_STATE_UNSPECIFIED Durum belirtilmemişse araç durumlarının varsayılan değeri.
LOW_POWER Araba, kullanıcı açısından kapalıdır ancak PCU, arabanın açık olduğunu algılamaya devam edebilir.
SOFTWARE_UPDATE Aracın bazı veya tüm parçalarında yazılım güncellemeleri devam ediyor. Bunlar, SDV ile ilgili olmayan yazılım güncellemeleridir.
PARK Bu etkinlik için müşteri olmadan birkaç ECU sağlanır.
LIFE_ON_BOARD Koltuk ısıtıcıları, kümeler ve merkezi paneller gibi konfor ECU'ları sağlanır ve kullanılabilir ya da müşteri etkinliği algılanır (ör. kapı açma veya araba kilidini açma).
VEHICLE_ON Motor ECU'ları sağlanır, motor çalışır durumdadır ve sürüş mümkün değildir.
TRACTION_ON Motor ECU'ları sağlanır, motor çalışır durumdadır ve sürüş mümkündür.

VPM aracısı ile araç ve güç yönetimini kontrol etme

SDV'deki güç durumu makinesini kontrol eden bir hizmet paketi uygulamak için aşağıdaki VSIDL tanımlarını kullanın:

package: "com.sdv.google.vpm.client"

service_bundle {
    name: "VpmSystemClient"

    //Client for VPM system interface.
    client {
        service: "com.sdv.google.vpm.VpmSystemService"
    }

    //Server to VPM notification interface.
    server {
        service: "com.sdv.google.vpm.client.PowerNotificationService"
    }
}

Paket uygulanıp VPM aracısına erişim kontrol listeleri eklendikten sonra paket, VPM aracısına RPC istekleri gönderebilir ve tanımlanan sunucuda güç durumu bildirimleri alabilir.