Moon of Alabama: Boeing 737 Max aggiornato ma rischia di sovraccaricare il computer di bordo

L’aggiornamento software che dovrebbe risolvere i problemi del Boeing 737 Max rischia di sovraccaricare il computer di bordo

MOONOFALABAMA

Il Boeing 737 MAX continua a rivelarsi un aereo problematico.

Due incidenti capitati a velivoli di questo modello, che erano costati la vita a 346 persone, hanno portato alla luce tutta una serie di altri problemi, oltre a quello ormai noto riguardante l’insicuro sistema di incremento delle caratteristiche di manovrabilità (MCAS).

Infatti, si era poi scoperto che le trim wheel (ruote di assetto) manuali che Boeing consigliava di usare per contrastare gli effetti del MCAS sono impossibili da ruotare al momento del bisogno. Moon of Alabama aveva descritto a maggio l’esistenza di questa complicazione e, la settimana scorsa, il Wall Street Journal ha confermato il problema. Questo inconveniente riguarda anche il vecchio Boeing 737 NG.

Mentre questo problema non è stato ancora risolto, se ne è appena presentato uno nuovo.

Boeing aveva promesso di rilasciare una correzione software per l’MCAS entro aprile 2019. La cosa però si è rivelata più difficile del previsto. Tre mesi dopo il termine previsto non è ancora disponibile una soluzione definitiva. Nel frattempo, un nuovo problema, che sarà causa di ulteriori ritardi, è stato rivelato solo ieri:

La scorsa settimana, come hanno riferito due persone con conoscenza di causa, durante un test al simulatore di volo alcuni piloti della F.A.A. hanno provato a contrastare le impostazioni errate del software anti-stallo, quelle che fanno abbassare il muso del Max. Questo software, noto come MCAS, è ritenuto responsabile di due incidenti, che hanno causato la morte di 346 persone.

In almeno un caso, un pilota della F.A.A. non è stato in grado di eseguire rapidamente e con sicurezza le procedure di emergenza consigliate da Boeing che dovrebbero consentire di poter riprendere il controllo dell’aereo. Il pilota, come hanno riferito queste due persone, ha definito tale fallimento ‘catastrofico’ e questo vuol dire che , in condizioni reali,  avrebbe causate la perdita dell’aeromobile in volo.

pubblicità

Secondo i due esperti, il problema scoperto la scorsa settimana è legato alla velocità di elaborazione dati di uno specifico chip del computer per il controllo di volo. Durante la simulazione, il pilota della F.A.A. ha riscontrato ritardinell’esecuzione di un passaggio cruciale, necessario per la stabilizzazione dell’aeromobile.

Sembra che l’ulteriore elaborazione dei segnali [dei sensori esterni] e i calcoli necessari per la correzione del MCAS sovraccarichino il processore del computer per il controllo di volo [Flight Control Computer] (FCC) e ne ritardino la reazione.

Secondo un portavoce della società, sono otto mesi che Boeing sta sviluppando un aggiornamento software per il Max. Non è chiaro se la nuova imperfezione possa essere risolta riprogrammando il software o se sia necessaria una correzione hardware, che sarebbe più costosa e potrebbe richiedere molto più tempo.

Il 737 MAX ha, come le precedenti versioni 737 NG e Classic, due FCC che dispongono a loro volta di due unità di elaborazione centrale [Central Processing Units] (CPU).

Come l’ex ingegnere di controllo del volo della Boeing, Peter Lemme, aveva scritto l’anno scorso in una nota tecnica riguardante il problema:

Ciascuna FCC è composta da due processori, ciascuno dei quali lavora in modo indipendente.

Ogni FCC ha due CPU a 16 bit. I due processori hanno numeri di serie diversi, per assicurarsi che un eventuale problema di progettazione non sia presente in entrambi i processori. Le CPU elaborano comandi diversi . …

In un’altra nota Lemme aveva scritto:

L’installazione del FCC del 737 è una configurazione “dual-dual.” All’interno di ciascuno dei due computer del pilota automatico ci sono due processori diversi, ognuno programmato da persone diverse. Il pericolo più grave è un errore del software in modalità comune. Avere due diversi gruppi di programmatori che lavorano [in modo indipendente] partendo da una serie comune di requisiti è un modo per ridurre un errore in modalità comune.

L’architettura dual-dual del 737 è davvero unica. La decisione di effettuare la regolazione della velocità del trim utilizzando un unico canale, con un singolo processore, risale al 737 classico. La funzione MCAS è solo un altro modulo software del FCC, che si comporta, a livello superiore, come quello che regola la velocità del trim, la cui architettura sarebbe stata quindi replicata.

Il 737 utilizza solo un FCC alla volta e il sistema Speed Trim System (STS), di cui MCAS è una parte, funziona solo su uno dei due processori interni del computer per il controllo di volo.

Sembra che i processori in questione siano CPU di tipo Intel 80286. La versione originale Intel di quella CPU, commercializzata tra il 1982 e il 1991, aveva un clock rate massimo di 4, 6 o 8 MHz. In seguito è stato prodotta da numerose altre aziende, tra cui AMD e la società aeronautica Harris, con un clock rate di 20 e 25 MHz. È probabile che l’FCC del Boeing 737 usi questi processori o tipi simili.

Questi vecchi processori sono molto affidabili e privi di errori. Ma hanno meno di un millesimo della capacità di calcolo di un moderno telefono cellulare. Secondo Lemme, una CPU nel computer di volo arriva ad eseguire fino ad undici processi diversi. Tutti devono ricevere l’input dei sensori esterni, eseguire i loro algoritmi e inviare un comando ai vari attuatori che controllano le superfici di volo mobili del velivolo. Il fatto che il pilota della FAA “abbia riscontrato ritardi nell’esecuzione di un’operazione cruciale” causati dal computer farebbe pensare ad un sovraccarico delle capacità dell’elaboratore.

Qualche decennio fa, il sottoscritto programmava driver di input speciali per Intel 80286 e sistemi similari. Il loro scopo era quello di registrare ed elaborare dati da sensori di lavorazioni industriali, spesso centinaia alla volta. I problemi di prestazioni e temporizzazione richiedevano che i driver di input per l’80286 fossero scritti in linguaggio assembler di basso livello. Ma anche con un codice ottimizzato al massimo, il sistema avrebbe finito per raggiungere i suoi limiti. La trasmissione ritardata dei dati da un sensore avrebbe inevitabilmente comportato ulteriori ritardi e, alla fine, il sistema avrebbe cessato di registrare ed elaborare. Il compito assegnato sarebbe semplicemente stato al di sopra delle sue limitazioni fisiche.

Il computer di controllo di volo fa girare software speciali con un sovraccarico minimo. Sono programmati in linguaggi di programmazione altamente efficienti. La progettazione e lo sviluppo dei software seguono un processo molto rigoroso e utilizzano strumenti specifici (per esempi vedere i prodotti Green Hills). Tutti questi software sono molto più efficienti di quello che usavo quando facevo il programmatore.

I programmi spefici per il controllo di volo sono già ottimizzati al massimo. Ottimizzarli ulteriormente “a mano” vorrebbe dire rompere il processo regolamentato richiesto dalla produzione di un simile software.

Boeing dice che può ancora modificare il software per evitare il problema appena riscontrato dalla FAA. Ho dei dubbi che ciò sarà possibile. Il carico del software è già al limite, se non già superiore alle capacità fisiche degli attuali computer per il controllo di volo. Il potenziale di ottimizzazione del software è probabilmente minimo.

Il MCAS era un cerotto. A causa della nuova posizione del motore, la versione 737 MAX ha un comportamento aerodinamico diverso rispetto alle vecchie versione del 737, anche se utilizza ancora la certificazione dei tipi precedenti. Il MCAS avrebbe dovuto correggerlo. Il software di correzione per il MCAS è un altro cerotto su un cerotto. La correzione per la correzione del software con cui Boeing ora promette di risolvere il problema riscontrato dal pilota della FAA sarebbe il terzo cerotto sulla stessa ferita. Non è affatto certo che fermerà il sanguinamento.

I computer di controllo di volo del 737 MAX e NG sono stati sviluppati nei primi anni ’90. Non ci sono soluzioni a pronta cassa che consentano prestazioni più elevate.

L’ultima scadenza annunciata da Boeing per riportare in volo i 737 MAX attualmente a terra è “metà dicembre.” In considerazione di questo nuovo problema verrebbe voglia di chiedere “di quale anno?

Moon of Alabama

Fonte: moonofalabama.org
Link: https://www.moonofalabama.org/2019/06/boeings-software-fix-for-the-737-max-problem-overwhelms-the-planes-computer.html#more
27.06.2019