top of page

I veicoli virtuali di Google Cloud si estendono oltre AAOS fino ai controller più piccoli

58 minuti fa
Tempo di lettura: 12 min

Google Cloud sta estendendo il proprio approccio allo sviluppo di veicoli virtuali oltre l'abitacolo, puntando ai controller più piccoli che costringono i team software ad attendere l'hardware. L'annuncio del 20 ottobre descrive il collegamento tra Android Automotive OS, il sistema operativo per veicoli di Google, e reti veicolari simulate tramite RemotiveLabs. I veicoli virtuali di Google Cloud sono pensati per portare questi sistemi separati in una fase più precoce dei test di integrazione.

La tensione centrale è pratica: testare un cruscotto in modo indipendente non può dimostrare che scambi le informazioni corrette con il resto dell'auto. Un veicolo definito dal software, le cui funzioni dipendono in larga misura dal software, richiede comunque un comportamento coordinato tra i componenti. Google punta a colmare il divario tra i team software già in grado di testare da remoto e quelli il cui lavoro resta vincolato alle apparecchiature fisiche.

AWS ha già descritto componenti automobilistici virtuali interconnessi, offrendo un utile riferimento per l'approccio di Google. Per gli acquirenti, la domanda è quanto del comportamento di produzione questi ambienti rappresentino e quali ritardi nello sviluppo eliminino effettivamente. Questa distinzione conta più della capacità di una dimostrazione di mostrare un abitacolo virtuale convincente.

I veicoli virtuali di Google Cloud portano l'integrazione oltre l'abitacolo

L'annuncio sposta l'attenzione dall'esecuzione di singole applicazioni del veicolo al test delle connessioni tra i sistemi del veicolo.

L'architettura dei veicoli virtuali di Google combina l'ambiente di test virtuale di Android con RemotiveTopology, uno strumento per descrivere ed eseguire componenti veicolari connessi. L'ambizione dichiarata va dall'elaborazione nell'abitacolo alle unità microcontrollore, o MCU, ovvero computer compatti integrati nei sistemi di controllo.

Si tratta di una proposta di sviluppo, non dell'annuncio che l'hardware dei veicoli sia diventato superfluo. Riguarda inoltre il luogo in cui gli ingegneri sviluppano e testano il software. I lettori non dovrebbero interpretare lo sviluppo basato sul cloud come l'obbligo, per un veicolo in movimento, di dipendere da un server remoto.

Un'unità di controllo elettronico, o ECU, è un computer responsabile di specifiche funzioni del veicolo. La domanda fondamentale per l'integrazione è cosa accada quando i suoi output diventano gli input di un altro componente. Un componente può comportarsi come previsto dai suoi sviluppatori e tuttavia divergere dall'interpretazione di un segnale condiviso adottata da un altro team.

Si consideri un esempio illustrativo di cambio della modalità di guida. L'abitacolo potrebbe visualizzare la modalità richiesta mentre un altro componente continua a riportare lo stato precedente. Ogni applicazione potrebbe superare i controlli isolati, ma il loro comportamento combinato resterebbe incoerente. Testare l'interazione rende visibile tale disallineamento.

Questo esempio spiega anche perché un veicolo virtuale richieda più di schermate accattivanti. L'artefatto utile è una configurazione eseguibile di software, connessioni, input e risposte attese. Il suo valore dipende da quali quesiti ingegneristici quella configurazione può risolvere.

Un product manager che valuta un ambiente di questo tipo dovrebbe quindi chiedersi cosa sia cambiato nel processo di sviluppo. I team possono indagare su un disaccordo relativo a un'interfaccia prima dell'arrivo delle apparecchiature? Un altro ingegnere può riprodurre il guasto? Lo stesso scenario può essere eseguito dopo che un fornitore ha aggiornato il proprio software?

Queste domande trasformano un annuncio infrastrutturale di ampia portata in una proposta ingegneristica valutabile. Tracciano inoltre un confine attorno all'affermazione. Un ambiente che intercetta tempestivamente gli errori di comunicazione può essere utile senza riprodurre ogni proprietà fisica di un veicolo di produzione.

Per gli sviluppatori, l'opportunità immediata è un accesso anticipato ai sistemi adiacenti. Per i responsabili di programma, sono evidenze più precoci sulle ipotesi di integrazione. Questi benefici richiedono rappresentazioni utili dei componenti partecipanti, anziché semplicemente una maggiore capacità cloud disponibile.

Ecco perché l'enfasi di Google sui controller più piccoli è importante. Un ambiente di sviluppo diventa più rilevante man mano che raggiunge le dipendenze che ostacolano test significativi. Ampliare l'ambito aiuta solo, tuttavia, quando i componenti aggiunti rappresentano comportamenti che gli ingegneri devono effettivamente esaminare.

I fornitori subiscono pressioni per fornire prima comportamenti testabili

L'integrazione anticipata cambia ciò di cui una casa automobilistica ha bisogno dai fornitori, compreso il momento in cui tali informazioni devono diventare utilizzabili.

Secondo l'approccio descritto da Google, la milestone di sviluppo si sposta verso un contributo eseguibile in un ambiente condiviso. Tale contributo potrebbe contenere software di produzione o una rappresentazione limitata del comportamento atteso. In entrambi i casi, il suo ambito deve essere esplicito.

Per un fornitore, questo crea un ulteriore deliverable da negoziare. Fornire soltanto una descrizione della rete non risponde a ogni domanda su come un componente reagisca. Fornire software eseguibile solleva questioni distinte su accesso, manutenzione e usi consentiti di quel software.

La casa automobilistica ha una responsabilità corrispondente. Qualcuno deve decidere quali versioni dei componenti appartengano insieme, quali ipotesi restino provvisorie e quali guasti blocchino l'ulteriore sviluppo. Anticipare i test non assegna automaticamente la responsabilità.

È qui che la pressione sulle tempistiche diventa pressione organizzativa. Un ambiente virtuale può evidenziare un disaccordo prima dell'integrazione fisica, ma i team partecipanti necessitano comunque di un processo per risolverlo. Una questione di interfaccia senza risposta resta senza risposta ovunque venga eseguito il test.

Un criterio di accettazione utile identificherebbe il comportamento che il contributo di un fornitore deve supportare. Per esempio, un team potrebbe richiedere che un componente riporti una transizione di stato e gestisca una richiesta rifiutata. Questo è più operativo che richiedere una compatibilità generica con un veicolo virtuale.

La distinzione conta anche per i fornitori più piccoli. Gli acquirenti dovrebbero valutare lo sforzo necessario per produrre e mantenere un contributo virtuale utile. In caso contrario, il lavoro può spostarsi a monte senza un accordo chiaro su chi lo finanzi o lo mantenga aggiornato.

Anche le conoscenze ingegneristiche esistenti devono accompagnare l'ambiente eseguibile. I risultati dei test diventano difficili da interpretare quando le decisioni restano disperse tra messaggi, documenti di interfaccia e note delle riunioni. Un guasto riproducibile richiede comunque una spiegazione di ciò che i team partecipanti si aspettavano.

Una base di conoscenza ingegneristica ricercabile può aiutare i team a recuperare tali decisioni insieme alla documentazione tecnica. Svolge uno scopo diverso dall'ambiente di test: preservare il contesto necessario per comprendere e risolvere i risultati.

La pressione ricade quindi su più soggetti degli sviluppatori di software embedded. I team di architettura necessitano di definizioni coerenti, i team di procurement di deliverable chiari e i program manager di milestone legate a comportamenti osservabili. Una strategia di integrazione virtuale interessa ciascuna di queste responsabilità.

Per gli acquirenti enterprise, questo suggerisce un approccio di valutazione concreto. Selezionate una dipendenza di integrazione esistente e tracciate ciò che ciascun partecipante deve fornire. L'esercizio rivelerà se la piattaforma proposta elimina l'attesa o si limita a far emergere prima gli accordi mancanti.

Entrambi gli esiti forniscono informazioni. Una visibilità anticipata è utile, ma gli acquirenti dovrebbero distinguerla dalla risoluzione completata quando valutano le affermazioni di un fornitore sui progressi compiuti.

Vehicle-as-code rende le connessioni parte del software

Il meccanismo dipende dal rendere riproducibile la configurazione del sistema, insieme al software che viene eseguito al suo interno.

Vehicle-as-code significa esprimere l'architettura elettronica di un veicolo in file che gli strumenti possono interpretare ed eseguire. La descrizione architetturale diventa qualcosa che gli ingegneri possono revisionare, versionare e riutilizzare. Fornisce un riferimento comune per i componenti partecipanti.

I concetti di vehicle-as-code di RemotiveLabs distinguono una descrizione della piattaforma da un'istanza eseguibile. La piattaforma descrive i componenti disponibili e i loro percorsi di comunicazione. Un'istanza seleziona la configurazione specifica da eseguire.

Questa distinzione evita un importante malinteso. Descrivere un'architettura completa non significa che ogni componente di tale architettura venga eseguito in ogni test. Una configurazione mirata può rispondere a una domanda più circoscritta, purché i suoi confini restino visibili.

La documentazione distingue inoltre il software di produzione dai modelli comportamentali, che imitano il comportamento dei componenti, e dai mock, che forniscono risposte controllate dal test. Queste rappresentazioni hanno scopi diversi. La loro presenza dovrebbe influenzare il modo in cui gli ingegneri interpretano un risultato positivo.

Per esempio, un mock può fornire la risposta precisa necessaria per testare la gestione degli errori di un display. Questo risultato dice qualcosa di utile sul display. Dice meno sul fatto che il controller di produzione finale genererà quella risposta in condizioni equivalenti.

Il vantaggio analitico deriva dal tracciare queste distinzioni anziché nasconderle. Un ambiente di test dovrebbe rendere possibile identificare ciò che è stato effettivamente eseguito. Altrimenti, l'espressione “veicolo completo” rischia di oscurare le differenze tra la copertura dell'architettura e quella del software di produzione.

La coerenza della configurazione è un altro vincolo. Le descrizioni della piattaforma di RemotiveLabs possono incorporare file di rete automobilistici esistenti, inclusi i formati ARXML e DBC che descrivono informazioni di sistema o comunicazione. La documentazione richiede nomi, impostazioni e versioni compatibili quando si combinano file pertinenti.

Questo requisito merita attenzione perché importare file non riconcilia decisioni ingegneristiche contraddittorie. Se i team forniscono definizioni incompatibili, anche un ambiente automatizzato necessita di una risoluzione. La riproducibilità rende il disaccordo più facile da indagare; non decide quale definizione sia corretta.

Per i veicoli virtuali di Google Cloud, la promessa pratica è una relazione revisionabile tra il software e il sistema che lo circonda. Una modifica software può essere valutata rispetto a una configurazione nota. Allo stesso modo, una modifica dell'architettura può diventare una parte esplicita della revisione.

L'integrazione continua, la pratica di compilare e testare automaticamente le modifiche, fornisce il contesto per questa relazione. L'unità utile di evidenza diventa una revisione software testata all'interno di una configurazione identificata. Un risultato separato da tale configurazione è più difficile da considerare affidabile.

Questo cambia il modo in cui i team dovrebbero discutere la copertura. Contare i componenti connessi è insufficiente. Gli acquirenti devono sapere quali interazioni siano state esercitate, quali implementazioni abbiano partecipato e quali ipotesi abbiano fornito il comportamento restante.

La dimostrazione più solida mostrerebbe quindi un disaccordo ingegneristico che diventa riproducibile e viene poi risolto. Questo dice ai lettori più di un'ampia affermazione secondo cui un intero veicolo può avviarsi nel cloud.

I test virtuali di AAOS lasciano un confine hardware

Un ambiente software fedele richiede comunque un confine chiaramente dichiarato attorno al comportamento dipendente dall'hardware.

Cuttlefish, il dispositivo virtuale configurabile di Android, è una componente consolidata di questa architettura. La documentazione di Google sui dispositivi Android virtuali descrive l'esecuzione locale o remota e sottolinea la fedeltà al comportamento del framework Android. Individua inoltre differenze legate alle implementazioni specifiche dell'hardware.

Questa precisazione è direttamente rilevante per l'annuncio. Android Automotive OS, comunemente abbreviato in AAOS, può partecipare a una più ampia configurazione di test senza rendere equivalenti tutte le interazioni hardware coinvolte. Estendere la portata dell'ambiente non elimina le distinzioni al suo interno.

Un livello di astrazione hardware è un software che collega un sistema operativo alle funzioni specifiche di un dispositivo. La documentazione di Cuttlefish identifica esplicitamente quest'area come una fonte di differenze rispetto ai dispositivi fisici. Gli acquirenti dovrebbero mantenere questa precisazione nell'interpretare affermazioni più ampie sui veicoli virtuali.

La stessa cautela vale per l'architettura di processore condivisa. Fondamenti di esecuzione simili possono sostenere una strategia di sviluppo, ma gli acquirenti hanno comunque bisogno di prove relative al target specifico. Un'affermazione sulla compatibilità software dovrebbe identificare il software, le ipotesi hardware e il comportamento messi a confronto.

Questo è particolarmente importante quando un titolo si estende dall'elaborazione in abitacolo al più piccolo MCU. Rappresentare i messaggi di un controller è diverso dall'eseguire il suo software di produzione. Eseguire quel software è diverso dal riprodurre ogni interazione con il suo contesto fisico.

Queste distinzioni non indeboliscono i test virtuali. Definiscono ciò che stabilisce un risultato. Un risultato circoscritto può essere molto utile quando le sue ipotesi corrispondono alla domanda a cui un ingegnere cerca di rispondere.

La preoccupazione emerge quando l'ambito si amplia nella narrazione successiva. Un test di interfaccia riuscito può trasformarsi in un'affermazione di equivalenza completa del sistema. Una dimostrazione cloud può diventare l'affermazione che il lavoro di validazione rimanente sia scomparso. Nessuna delle due conclusioni deriva automaticamente.

Google e RemotiveLabs riportano cicli di integrazione oltre 10 volte più rapidi nei primi coinvolgimenti con i clienti. L'annuncio non fornisce dettagli metodologici sufficienti per considerare questa cifra un benchmark generale. Prima di applicarla ai propri programmi, i lettori hanno bisogno della baseline, dell'attività misurata e del lavoro rimanente.

Una valutazione dovrebbe distinguere il tempo di attesa trascorso dallo sforzo ingegneristico. Eliminare una coda per le attrezzature sarebbe prezioso, ma misura qualcosa di diverso dalla riduzione del tempo di indagine sui difetti. Riunire questi risultati sotto un'unica cifra di accelerazione può nascondere il beneficio effettivo.

Gli acquirenti dovrebbero inoltre chiedersi se le evidenze resistano a un cambiamento dell'ambiente di test. Un problema identificato virtualmente si manifesta nelle condizioni fisiche previste? La correzione proposta affronta entrambe le configurazioni? Sono domande utili per valutare la rilevanza senza pretendere un'equivalenza universale.

Il giudizio risultante è più circoscritto e pratico dell'affermazione secondo cui l'hardware sia stato sostituito. I test virtuali AAOS possono sostenere un'integrazione più precoce mentre gli ingegneri continuano a stabilire quali conclusioni attraversino il confine dell'hardware.

AWS offre un precedente per componenti virtuali connessi

L'approccio di Google si inserisce in uno sforzo già avviato per rendere l'integrazione automobilistica meno dipendente dai target di sviluppo fisici.

AWS ha descritto un'architettura correlata il 13 giugno 2024, utilizzando Panasonic Automotive vSkipGen ed ETAS RTA-VRTE StarterKit. I suoi target virtuali interconnessi collegavano ambienti di fornitori per supportare un'integrazione più precoce. La configurazione pubblicata affrontava inoltre la collaborazione senza richiedere ai partecipanti di esporre il proprio codice sorgente.

Questo precedente colloca l'annuncio attuale nella giusta prospettiva. Collegare componenti software automobilistici tramite infrastruttura cloud è una direzione consolidata. Il contributo di Google dovrebbe essere valutato attraverso il suo specifico percorso di integrazione, gli ambienti supportati e l'utilità per i team ingegneristici partecipanti.

Il confronto non stabilisce un vincitore. I materiali citati descrivono configurazioni diverse e non forniscono un benchmark condiviso. Le affermazioni sulla completezza o sulle prestazioni relative richiederebbero carichi di lavoro equivalenti e criteri di valutazione chiaramente corrispondenti.

Per i lettori che cercano una spiegazione dei veicoli virtuali Google in termini competitivi, il confronto utile riguarda le dipendenze di sviluppo. Quale approccio si adatta ai componenti già utilizzati da un programma? Quali contributi dei fornitori possono partecipare? Quale lavoro rimane prima che un test esistente possa essere eseguito?

Anche i confini di sicurezza meritano attenzione in questo confronto. I fornitori devono cooperare controllando al tempo stesso l'accesso al proprio lavoro. Un acquirente dovrebbe valutare se la configurazione proposta supporti la collaborazione richiesta e preservi i confini concordati tra i partecipanti.

Queste domande mantengono in primo piano la tensione principale: test condivisi più precoci contro un'integrazione che attende le attrezzature fisiche. La concorrenza tra fornitori cloud è un contesto di supporto. La decisione ingegneristica dipende dal fatto che una particolare configurazione modifichi tale dipendenza per un programma reale.

Un acquirente dovrebbe quindi resistere alla tentazione di considerare un marchio cloud un sostituto di un piano di integrazione. Le risorse di calcolo disponibili sono solo una parte della configurazione. Componenti, autorizzazioni, titolarità dei test e configurazioni riproducibili determinano se i team possano usare efficacemente tali risorse.

La portabilità è un'altra ragionevole domanda di valutazione, anziché un beneficio consolidato da presumere. I team dovrebbero identificare quali descrizioni, test e modelli possono riutilizzare altrove. Dovrebbero inoltre identificare le dipendenze che richiederebbero una sostituzione.

Questo conta perché gli investimenti ingegneristici si estendono oltre la dimostrazione iniziale. Un team che sviluppa scenari utili vorrà conservarli mentre i componenti cambiano. La valutazione dovrebbe esaminare questo percorso di manutenzione prima che una vasta raccolta di test ne dipenda.

Per la simulazione di veicoli Google Cloud, l'opportunità competitiva consiste nel rendere più facile estendere un flusso di sviluppo esistente oltre i confini del sistema. Gli acquirenti avranno bisogno di prove di questa compatibilità. Un confronto basato solo su dimostrazioni di cockpit virtuali lascerebbe senza risposta la domanda centrale sull'integrazione.

Il precedente AWS rafforza quindi la logica della categoria, elevando al contempo lo standard della differenziazione. L'approccio di Google deve dimostrare dove la sua specifica combinazione migliori il lavoro che gli ingegneri già svolgono.

Monitorare la copertura, i risultati misurati e gli esempi riproducibili

Le prossime prove dovrebbero rivelare cosa viene eseguito, cosa migliora e cosa altri team possono riprodurre.

Nei prossimi mesi, il primo segnale da osservare è una copertura dei componenti più esplicita. Divulgazioni utili distinguerebbero il software di produzione dai modelli comportamentali e dai sostituti controllati dai test. Identificherebbero inoltre gli ambienti operativi e le ipotesi sui target coinvolti.

Questo dettaglio rafforzerebbe il caso dei veicoli virtuali Google Cloud rendendone valutabile l'ambito. Ampi diagrammi architetturali senza dettagli di implementazione corrispondenti lascerebbero irrisolta l'incertezza centrale. I lettori dovrebbero cercare prove sui componenti partecipanti, anziché affermazioni più ampie sulla completezza.

La copertura deve anche essere collegata al lavoro ingegneristico effettivo. Un controller appena supportato conta quando sblocca un'interazione rilevante o rimuove una dipendenza. Gli annunci di supporto diventano più informativi quando includono lo scenario che gli ingegneri possono ora esaminare.

Il segnale successivo sono risultati misurati sui clienti con confini definiti. Un caso di studio utile identificherebbe il flusso di lavoro originale, l'attività che è cambiata e il lavoro ancora necessario in seguito. Separerebbe l'attesa delle attrezzature, l'esecuzione dei test e l'indagine sui difetti.

Tale rendicontazione aiuterebbe gli acquirenti a decidere se l'accelerazione riportata si applichi alle loro circostanze. Un risultato proveniente da un'attività di integrazione selezionata in modo circoscritto dovrebbe rimanere associato a tale attività. Ripetere un incremento di velocità senza il suo ambito di misurazione aggiungerebbe poche prove.

I lettori dovrebbero anche osservare risultati che complicano la storia iniziale. Un ambiente potrebbe ridurre i ritardi di accesso aumentando al contempo la manutenzione della configurazione. Potrebbe rilevare più difetti prima senza abbreviare immediatamente un programma. Questi risultati contribuirebbero comunque a spiegare dove l'approccio funziona.

Il segnale finale è un percorso più chiaro dagli esempi pubblici a una valutazione gestita nel tempo. Gli esempi di veicoli virtuali di RemotiveLabs offrono un punto di partenza concreto, incluso un esempio relativo ad Android. Il repository separa il proprio codice di esempio con licenza MIT dal software RemotiveLabs sottostante.

Questa distinzione è importante per chiunque pianifichi una valutazione. Esempi pubblicamente riutilizzabili non stabiliscono che ogni dipendenza richiesta abbia la stessa licenza. Gli acquirenti dovrebbero esaminare la configurazione completa del runtime e i requisiti di accesso prima di presumere un riutilizzo senza restrizioni.

La riproducibilità rafforzerebbe il valore pratico dell'annuncio. Un ingegnere dovrebbe poter identificare la versione dell'esempio, comprenderne le ipotesi e riconoscere quali questioni di produzione affronta. Una dimostrazione riuscita diventa più persuasiva quando un altro team può spiegarne i limiti.

Per i responsabili dell'ingegneria, l'azione immediata è scegliere una questione di integrazione irrisolta da un programma esistente. Chiedetevi se l'ambiente virtuale proposto possa rispondervi prima dell'arrivo delle attrezzature necessarie. Registrate quali componenti contengono software di produzione, quali usano sostituti e quali conclusioni richiedono ancora conferma fisica.

Mantenete la valutazione sufficientemente circoscritta da produrre un risultato interpretabile. Confrontate l'indagine con il processo attuale, compreso lo sforzo di configurazione e manutenzione. Conservate insieme le revisioni software, la configurazione, il comportamento previsto e il risultato osservato. Usate questi record per decidere se estendere l'ambiente eliminerebbe un'altra dipendenza. I veicoli virtuali Google Cloud saranno più utili dove tali prove sostengono decisioni ingegneristiche più precoci. Iniziate dall'interazione che il vostro team non può attualmente testare, quindi chiedetevi cosa stabilirebbe un risultato virtuale credibile.

 
 

Inizia gratis

Un assistente IA local-first con gestione della conoscenza personale

Per una migliore esperienza con l’IA,

al momento remio supporta solo Windows 10+ (x64) e M-Chip Macs.

Il tuo partner AI al lavoro
Fai di più con remio

Pianifica. Crea. Consegna.
Tutto in un unico posto.

bottom of page