版權歸原作者所有,如有侵權,請聯(lián)系我們

“波音”事故不尋常,致命的BUG在哪里?

CCF計算機科普
由中國計算機學會主辦,提供優(yōu)質的計算機科普內容。
收藏

一、從埃航墜毀說起

小白:埃航墜毀了,這是什么情況?

大東:當?shù)貢r間3月10日早晨,載有149名乘客與8名機組人員的埃塞俄比亞航空 ET302 號航班從亞的斯亞貝巴飛往內羅畢途中墜毀。埃航稱,乘客來自33個國家,事故中沒有生還者,遇難者中有8名中國人。

埃塞俄比亞亞的斯亞貝巴Bishoftu附近墜機現(xiàn)場

小白:怎么會發(fā)生這樣的事呢?埃塞俄比亞航空不是非洲獲得贊譽最高的航空公司之一,擁有非常好的安全記錄以及非洲大陸上最新型的機型的嗎?

大東:這次的涉事飛機為一架波音737MAX8,是幾個月前才交付的新飛機。

小白:波音737MAX8?如果我沒記錯這不是和去年10月29日印尼獅航墜機事件中的機型相同。

大東:是的,同一機型,而且發(fā)生墜毀的時間都是起飛幾分鐘后。

小白:好嚇人,最近這飛機失事的新聞看多了,現(xiàn)在我都不敢坐飛機了,心里陰影面積太大。

二、大話始末

小白:兩次事故的涉事飛機都為波音737MAX機型,這怕不能是巧合吧,這個機型的安全問題是不是該引起人們的高度重視了。

大東:有分析認為,波音737MAX配備了自動防失速系統(tǒng),即“機動特性增強系統(tǒng)”是導致事故的原因。飛機飛行時機頭越高,攻角(氣流與機翼弦線之間夾角)越大,當攻角超出一定范圍時,飛機面臨失速風險。MAX 8配備的自動防失速系統(tǒng)一旦判斷飛機失速,可以無需飛行員介入即接管飛機控制,并使飛機低頭飛行,以改出失速。

獅航JT610遇難

小白:這看上去不是一個非常棒的系統(tǒng)嘛?

大東:波音公司對飛機失速保護的設想還是比較周全的,一方面可以通過飛行器失速保護系統(tǒng)中的處理器聯(lián)接到飛機飛行控制計算機,可以對失速時的飛機進行自動控制保護;另一方面也允許飛行員進行人工干預和手動駕駛,但是實際上這兩個環(huán)節(jié)可能都出現(xiàn)了漏洞。

小白:what?

大東:該飛行器失速保護系統(tǒng)在控制飛機下降時,雖然飛行員可以通過手動控制輸入指令來進行干預,但是由于事發(fā)過于突然,再加上缺乏事先專門培訓和警告,搞不清楚狀況的飛行員很難及時完成解除風險的正確操作,不知情的地面管理機構也無法提供正確的指引或處置建議。

小白:舉手,提問。失速保護系統(tǒng)觸發(fā)和控制飛機俯沖下降時,飛行員一直在進行人工干涉,此時失速保護系統(tǒng)會做出何種選擇?是飛行員輸入指令優(yōu)先?還是失速保護系統(tǒng)的控制軟件程序優(yōu)先?或是兩者并行?

大東:問得好。即使處于手動飛行模式,波音737MAX上的防失速系統(tǒng)也可能導致飛機急劇下降時間長達10秒。飛行員在這段時間內難以控制飛機,就算飛行員手動拉起機頭,5秒鐘后機頭又會自動重復下降過程。

小白:怎么又自動下降了呢?

大東:這就表明,在失事飛機俯沖下降時,即使是在飛行員手動飛行模式,飛機的防失速系統(tǒng)仍然處于激活狀態(tài),事故發(fā)生時,飛行員應該沒有獲得飛機的完全控制權。

小白:那么失速保護系統(tǒng)為何會堅持錯誤認為飛機處于“失速”狀態(tài)?失速保護系統(tǒng)為什么會無視飛行員手動操作指令?

大東:失事飛機上共設有3個攻角傳感器,波音失速自動保護系統(tǒng)的控制程序設計很奇怪,其邏輯是只要主傳感器認為飛機攻角過高(機頭抬得過高),飛機有失速危險,自動保護系統(tǒng)就可以被激活。

小白:如果只是這個主傳感器發(fā)生故障了不就會導致整個系統(tǒng)出錯。

三、致命的軟件設計缺陷

小白:就因為飛機系統(tǒng)設計缺陷犧牲了這么多無辜的性命,也讓無數(shù)家庭身處悲痛。

大東:你還記不記得2009年6月1日法航客機失蹤的新聞。

小白:十年前了,這個還真不記得了,求科普。

大東:因為測量飛機空速的皮托管結冰了,導致沒有空速讀數(shù),自動駕駛系統(tǒng)立即關閉了。

小白:那就需要飛行員來操作了。

大東:當時兩個飛行員很慌亂,配合出錯,并且沒有聽到飛機發(fā)出的失速警告,一個操縱飛機上升,一個操作飛機下降,飛機系統(tǒng)也沒有自動修正,最終導致了悲劇的發(fā)生。

打撈法航失事客機黑匣子時的情況

小白:這次飛機系統(tǒng)咋不爭奪飛機的控制權了。

大東:2002年1月1日,一架貨運飛機和一架俄羅斯飛機在德國領空處于相撞航線上,但地面管制人員并沒有發(fā)現(xiàn)這個情況。在空中,兩架飛機相距不到一分鐘的航程,這時飛機上的TCAS空中防撞系統(tǒng)發(fā)出警告。貨運飛機的TCAS系統(tǒng)指示飛行員下降,俄羅斯飛機的TCAS系統(tǒng)指示飛行員攀升。

小白:兩個空中防撞系統(tǒng)發(fā)出了相互協(xié)調的指令,這不正好可以避免了事故的發(fā)生嘛。

大東:但不幸的是,地面管制人員此時發(fā)現(xiàn)了兩架飛機即將相撞,他聯(lián)系上了俄羅斯飛機的機組人員,在不知道防撞系統(tǒng)已經發(fā)出攀升指令的情況下他向飛行員發(fā)出了相反的指令叫飛行員下降。俄羅斯飛行員最后還是遵從了航空管制的指令,開始下降。

小白:如果相信TCAS系統(tǒng),而不是這個管制員,也就不會出事了。

大東:這次事件之后全世界的飛行員都要優(yōu)先遵從空中防撞系統(tǒng)的指令,而不是航空管制發(fā)出的指令。

小白:目前的這些安全問題是因為軟件邏輯本身設計缺陷造成,屬于被動式安全,假設如果有黑客入侵飛機控制系統(tǒng),任何一個環(huán)節(jié)都可能造成重大事故。

大東:你這么一說我想起來,最近外媒報道了一位在越洋航班閑得無聊的“網安專家”一不小心玩壞了機載娛樂系統(tǒng)。他“不厭其煩”的在屏幕上復制粘貼一長串字符,其中還有像“fdkfdkfdkfdkfdhhhhhhhh”這樣的文字。不久之后,這個應用就卡住了。

飛機上的機載娛樂系統(tǒng)

小白:聽得我都嚇出一身冷汗,這樣狂虐娛樂系統(tǒng)萬一影響到正常飛行怎么辦。

大東:好在這波操作沒有帶來什么損傷,不過業(yè)內專家表示,研究確實是推動安全升級的好方法,但研究行為和黑客行為之間是有邊界的,即明知道自己的所作所為會產生什么樣的潛在后果卻沒有及時收手。

小白:即使真的要測試機載娛樂系統(tǒng)是否有漏洞,至少也要等到飛機上沒人的時候再做啊。

四、安全信息預警與啟示建議

小白:事件發(fā)生了,我們要學會從中總結經驗教訓,對此事件咱有啥防范措施不?

大東:對于飛行員來說,如果再次發(fā)生類似事故時,機組人員僅僅依操作手冊應對“攻角數(shù)據錯誤”很可能是不夠的,飛行員可能需要馬上關閉失速自動保護系統(tǒng),才能獲取飛機的完全控制權。

小白:平時對飛行員應該多加培訓,讓他們有處理這種風險的準備。

大東:另外,波音可能會對其737 MAX上失速自動保護系統(tǒng)進行系統(tǒng)更新時,解決傳感器安全余度和數(shù)據真實性驗證的設計缺陷,以及飛行員手動輸入指令優(yōu)先等問題。

小白:這個確實很重要。

大東:對于民機制造商要引以為戒,重視自動控制和自動失速保護系統(tǒng)的設計,避免出現(xiàn)安全隱患和軟件設計的邏輯漏洞。

小白:但從這幾次事件來看,飛行員什么時候該相信軟件,什么時候該獲取飛機控制權自己操控,讓人很困惑,稍有不慎代價慘重。

大東:沒錯,所以軟件在設計的時候最忌諱對非正常模式或者故障模式考慮不周全、不到位,與空客相比,波音在失速保護系統(tǒng)的控制程序設計方面存在軟件缺陷。

小白:軟件設計缺陷最為致命呀!

大東:波音公司發(fā)布了一份操作手冊公告:我們已經發(fā)現(xiàn)飛機存在設計缺陷了,目前暫時不知道怎么改,但也不需要停飛,我們已經發(fā)了故障操作手冊給飛行員了。

小白:這是什么鬼?我不要坐737MAX8型號的飛機了,太冒險了。

大東:那告訴你一個好消息,為確保飛行安全,民航局要求國內運輸航空公司于2019年3月11日18時前暫停波音737-8飛機的商業(yè)運行。

小白:太棒了,為中國民航局點贊。

評論
天津.諸葛
少師級
飛行系統(tǒng)的軟件設計應當非常嚴謹,稍有不慎就會付出慘重的代價。而飛行員也應該全面提升操作技術和應對風險的能力,保護好乘客的生命安全。
2023-09-28
追夢人C·hui
大學士級
飛機事故無小事,波音737-8飛機的發(fā)生的血的教訓,刻骨銘心,警鐘長鳴,停止商業(yè)運行是明智之舉。
2023-09-28
華科普
大學士級
任何一個BUG,在安全問題上都是致命,更何況是飛機!
2023-09-28