Software-fejl i Dreamliner-fly kan slukke for al elektricitet

4. maj 2015 kl. 10:5012
Den amerikanske luftfartsmyndighed advarer flyselskaber om en software-fejl om bord på Boeing 787 Dreamliner, der får generatorerne til at gå i fejlsikret tilstand og afbryde. Fejlen skyldes tilsyneladende et heltalsoverløb.
Artiklen er ældre end 30 dage

Boeing 787 Dreamliner er født med en software-fejl, der tilsyneladende uden varsel kan koste al elektricitet om bord. Den amerikanske myndighed for civil luftfart (FAA) har advaret flyselskaberne mod den nyopdagede fejl, som opstår, når en generator har kørt uafbrudt i 248 dage.

Det skriver Ars Technica.

Meget tyder på, at fejlen skyldes et såkaldt heltalsoverløb, som opstår, når en regneoperation forsøger at skabe en numerisk værdi, der overstiger kapaciteten i hukommelsen. Når det sker, går flyets generatorer i fejlsikret tilstand og lukker ned, hvilket effektivt slukker for al strømmen om bord - også instrumenterne i cockpittet.

Fejlen opstår efter 2^31 centisekunder, eller godt 248 dage, hvilket har fået flere programmører på Twitter til at spekulere i, at fejlen må skyldes en begrænsning på 32-bit.

Artiklen fortsætter efter annoncen

Det var Boeing selv, der adviserede FAA om problemet, og FAA har efterfølgende udstedt et såkaldt ‘airworthiness directive’, der forpligter flyselskaberne til løbende at afbryde flyenes generatorer og sikre sig, at el-systemet er klar til flyvning, indtil Boeing er klar med en mere permanent løsning på problemet.

12 kommentarer.  Hop til debatten
Denne artikel er gratis...

...men det er dyrt at lave god journalistik. Derfor beder vi dig overveje at tegne abonnement på Version2.

Digitaliseringen buldrer derudaf, og it-folkene tegner fremtidens Danmark. Derfor er det vigtigere end nogensinde med et kvalificeret bud på, hvordan it bedst kan være med til at udvikle det danske samfund og erhvervsliv.

Og der har aldrig været mere akut brug for en kritisk vagthund, der råber op, når der tages forkerte it-beslutninger.

Den rolle har Version2 indtaget siden 2006 - og det bliver vi ved med.

Debatten
Log ind eller opret en bruger for at deltage i debatten.
settingsDebatindstillinger
12
5. maj 2015 kl. 07:31

I 2018 overskrider transaktionsnummeret på kortbetalinger et 32-bit heltal, i.flg. mine beregninger. Jeg har ikke fået svar fra DIBS om de starter forfra eller tæller videre, men jeg kan forestille mig at nogle webshops vælter.

10
4. maj 2015 kl. 20:32

Kan man overhovedet forestille sig en situation, hvor et flys elgenerator kører uafbrudt i 248 døgn?

Som jeg har forstået det er service intervallerne for motorer, og APU noget kortere end 248 døgn. Og når flyet er 'i kold tilstand' er computerne slukket. Men de fejlende generator controllere bliver startet op fra batteri sammen med resten af computerne. Batteriet kan ikke forsyne de elektriske systemer i ret lang tid (30 min. når flyet er i luften?) Men man kan tilslutte flyet til ground power, hvorved det i princippet er muligt at komme i denne situation.https://www.youtube.com/watch?v=uqKeSO6msDkhttps://www.youtube.com/watch?v=Mo7A3CuVb8g

6
4. maj 2015 kl. 15:21

Kan man overhovedet forestille sig en situation, hvor et flys elgenerator kører uafbrudt i 248 døgn? Skal et sådant fly ikke til regelmæssige eftersyn? Eftersyn, hvor motorer og generatorer slukkes? Hvis det er utænkeligt, at en Dreamliner's generator får lov at køre så længe for et fly, der er i tjeneste, så er risikoen jo også kun akademisk, og hvilke andre systemer i flyet kan så heller ikke klare 248 døgns uafbrudt gang?

7
4. maj 2015 kl. 17:41

Kan man overhovedet forestille sig en situation, hvor et flys elgenerator kører uafbrudt i 248 døgn?

Artiklen er lidt uklar, men jeg vil gætte på at generatoren har sin egen computer og at det er hér programfejlen ligger. Så, sålænge der er strøm på flyet, så "kører" generatoren også - uanset om rotoren i den drejer rundt.

Til sammenligning er det vel også de færreste der afmonterer batteriet på bilen inden den stilles i garage.

9
4. maj 2015 kl. 20:19

Kan man overhovedet forestille sig en situation, hvor et flys elgenerator kører uafbrudt i 248 døgn?</p>
<p>Artiklen er lidt uklar, men jeg vil gætte på at generatoren har sin egen computer og at det er hér programfejlen ligger. Så, sålænge der er strøm på flyet, så "kører" generatoren også - uanset om rotoren i den drejer rundt.</p>
<p><strong>Til sammenligning er det vel også de færreste der afmonterer batteriet på bilen inden den stilles i garage.</strong>

Nej ikke når den stilles i garage. Men der er adskillige vedligeholdelsesopgaver på en bil der netop kræver at man frakobler batteriet.

Og med de drifttimer/døgn et kommercielt fly skal have for at tjene penge. Har jeg svært ved at forestille mig at der ikke er service/inspektioner på en 787'er. Der kræver nedlukning af generatoren oftere end indenfor 248 døgn. Var risikoen større havde FAA nok grounded flyene straks indtil de havde været lukket ned. Og det havde vi nok hørt om andre steder end blot her.

1
4. maj 2015 kl. 13:45

Jeg vil ikke kommentere på, at programmørerne har lavet en fejl med heltalsoverløb; man skal jo ikke kaste med sten, når man selv ....

Men, jeg undrer mig såre over, at systemet er designet til at lukke ned ved en sådan fejl. Specielt undrer jeg mig over, at "fejlsikret tilstand" er lig med "nul spænding". Hvis det sker mens flyet er i luften, så er det ikke særligt "fejlsikret".

Hvordan kan sådan et design overhovedet godkendes til at lette fra Jorden?????

8
4. maj 2015 kl. 19:35

Men, jeg undrer mig såre over, at systemet er designet til at lukke ned ved en sådan fejl. Specielt undrer jeg mig over, at "fejlsikret tilstand" er lig med "nul spænding". Hvis det sker mens flyet er i luften, så er det ikke særligt "fejlsikret".

Det tilsyneladende noget mere komplex …

Man laver stort set altid således at sikker tilstand er off. Ellers vil systemet fejle forskelligt ifm. en spændings forsynings fejl, og en anden fejl.

Det er vigtigt at skelne mellem hvad der er sikker tilstand for systemet/processen, og hvad der er sikker tilstand for de enkelte del elementer.

Selv om systemet kræver 'fail operational', så vil det normalt være bygget af redundante delsystemer der er 'fail safe'. Det kræver så at der ikke er common-curse fejl mellem de parallelle systemer.

For at ungå common curse fejl, og sikre fault insulation bør delkomponenterne laves Fail-silent.http://en.wikipedia.org/wiki/Fail-silent_system

Ud fra blockdiagrammet:http://www.boeing.com/commercial/aeromagazine/articles/qtr_4_07/article_02_2.html

Der er 6 generatorer der drevet af de to hoved motorer og APU en (To i hver). Da motorer arbejder med variabel omdrejnings tal (360 til 800Hz) har de hver en frekvensomformer der konvertere det til fast 400Hz 235VAC.

Sådan en VFD kan ikke bare køre videre hvis der er en fejl, den kræver regulering der holder styr på koordinat systemer der rotere i forhold til hinanden.http://en.wikipedia.org/wiki/Vector_control_%28motor%29Det er simpelthen ikke muligt at køre videre ved at fryse outputs. Hvis der sker en kortslutning på udgangen af frekvensomformeren, skal systemet lukke ned inden for ca. 1us, ellers brænder IGBT'erne af. (Strømmen er kun begrænset af selvinduktionen i kortslutningskredsen) Hvis der f.eks. er målefejl på strøm/spændings signalerne vil PLL'en ryge ud af lås og når fasefejlen når 10-20% af en 400Hz periode vil systemet trippe på overstrøm.

Da der åbenbart er cross-ties mellem de 4 forsynings skinner, kræver det Differentielle beskyttelses relæer for at detektere hvilken del af bussen der er fejl på. (Kortslutning fase fase, eller til jord) Hvis dette system fejler, kan det bevirke at den defekte del ikke udkobles med blackout og band til følge. Et simpelt HPFI relæ kan ikke gøre det når der er flere generatorer er koblet sammen. Jeg vil tro at de differentiel beskyttelses funktion er implementeret i SW i samme enhed som styre VFD'en, det betyder at beskyttelsen nødvendigvis må bero på værdier der bliver kommunikeret rundt mellem de redundante systemer.

Fejlen i dette tilfælde er at der er en common course software fejl mellem de forskellige redudante kanaler.

Airbus har også haft en hændelse hvor det blev lidt mørkt i cockpittet:https://assets.digital.cabinet-office.gov.uk/media/548acdcded915d4c0d0002a5/S9-2006_Airbus_A319-11__G-EZAC_01-07.pdf

Fejlen i dette tilfælde var at GCU1 ikke var fault-silent, men påvirkede resten af systemet med sine fejlagtige målinger af strømme.

11
4. maj 2015 kl. 21:46

Tak for en grundig uddybning af en kompliceret problemstilling.

2
4. maj 2015 kl. 13:48

Men, jeg undrer mig såre over, at systemet er designet til at lukke ned ved en sådan fejl. Specielt undrer jeg mig over, at "fejlsikret tilstand" er lig med "nul spænding". Hvis det sker mens flyet er i luften, så er det ikke særligt "fejlsikret".

Hvad mener du er en passende reaktion når et system opdager at dets invarianter er brudt? En kontrolleret nedlukning virker som det mest fornuftige for mig - herfra har man i det mindste et kendt udgangspunkt til at rette op på situationen, hvilket ikke er tilfældet hvis man barer kører videre på et ukendt fundament.

3
4. maj 2015 kl. 13:53

Artiklen er lidt uklart på, præcis hvad der sker. Min kommentar var skrevet ud fra antagelsen om, at generatoren forbliver i fejlsikret tilstand, og dermed i en længere periode ikke leverer strøm. Det mener jeg er det værst tænkelige scenarie, hvis et fly er i luften.

Men du har ret, der er ikke nogen nem løsning. Jeg tror det må være en beslutning som tages i samarbejde med piloterne. De må kunne bidrage med svar på spørgsmål som f.eks. "Hvad er basale krav som SKAL virke, når flyet er i luften, dvs. som er nødvendige for at bringe flyet sikkert ned?" Som sagt, så antager jeg, at en total nedlukning af al spænding nok ikke er den mest hensigtsmæssige løsning.