從獅航墜毀的737航班看系統操作理念

11月27日,印尼公佈了“獅航”失事波音737飛機的初步調查結果。調查顯示,飛機從起飛到失事的11分鐘內,最後兩分鐘裡,飛行員和飛機進行了不下二十次“搏鬥”,最後敗給了飛機。

事情是這樣的:最新款的波音737,也就是737 Max,安裝了名為“機動能力增強系統”(maneuvering characteristics augmentation system,簡稱M.C.A.S.)的系統。如果駕駛員操作不當,這套系統可以自動介入,修正飛行姿勢。不幸的是,這架飛機的攻角(angle-of-attack,即仰角)傳感器一直有問題,總是發出錯誤數據,雖然之前已經替換了一個,但也不是新的,而是經檢測“可用”的傳感器。

在本次飛行中,攻角傳感器持續發出錯誤數據,導致M.C.A.S.認為飛機攻角太大,必須壓低機頭——然而實際上並不需要這樣做,所以飛行員不斷拉動操縱桿,避免飛機進入俯衝姿勢。兩分鐘內,這種“博弈”進行了大約二十多次,最後飛行員敗給了系統,飛機以20度的俯衝角,一頭栽入大海。


從獅航墜毀的737航班看系統操作理念

獅航失事飛機的飛行記錄。來源:FlightRadar24

按道理說,如果飛行員發現系統異常,可以按動操作面板上的按鈕關掉M.C.A.S.系統,但是本次事故中飛行員有沒有這樣操作,目前還不知道。據波音的說法,此類問題的處理程序已經寫在新型號飛機的飛行手冊裡了,但飛行員們認為,起碼這一點是不清楚的,也沒有說明新型號波音737和老型號在處理攻角異常時的重要差別。

長期以來,波音和空客的飛行理念都有很大的不同。簡單說,波音更相信飛行員,而空客更相信系統。在波音飛機上,飛行員的操作都會獲得“傳統”的直接反饋,比如操作飛機左右轉彎,轉彎角度越大,反饋力越強,這和傳統飛機直接操作的感覺是一樣的——雖然如今這種反饋力是電子系統計算給出的阻力。而在空客飛機上,飛行員更像飛機的管家,轉彎時只要簡單發出指令“轉向xx度”,飛控系統就會自動完成,因此也被許多人認為飛起來沒有任何“手感”。有段子說,波音飛機最合適的是配德國機長,作風嚴謹,一絲不苟;空客飛機只要不配韓國機長就不會有大事,當然最好是再配一條狼狗,機長的責任就是餵狗,狗的責任就是當機長想自己動手的時候咬他。

在飛行中,到底是更相信人,還是更相信系統,一直以來是爭論不休的問題。波音出過的事故中,有明顯人為錯誤但系統無法修正的;空客出過的事故中,有明顯系統錯誤但飛行員無法介入的。從邏輯上說,單純靠人和靠系統都不放心:系統當然可能出故障,人也可能緊張誤操作,甚至幻視幻聽。奇特的是,從本次的事故來看,波音似乎扮演了空客的角色——系統出錯,但飛行員糾正失敗。

照道理說,現在機載計算機已經相當先進了。雖然其CPU運行頻率大概只相當於586的水平,但可靠性極高,事故概率已經可以降低到保證一架飛機7x24小時不停歇安全飛行15年。而且現在機載系統一般都採用“多餘度”設計,也就是說同時有N套系統在獨立工作,如果出現衝突,需要“民主投票”來決策。如果你留意波音777飛機的駕駛艙,會發現寶貴的面板空間“竟然”同時安排了三臺姿態指示儀,道理就在這裡——姿態指示儀對飛行至關重要,如果只有一臺,出了問題就完全抓瞎,如果有兩臺,仍然無所適從,有三臺就基本可以放心了。


從獅航墜毀的737航班看系統操作理念

波音777駕駛艙,標出了三處飛行姿態指示儀。 來源:Medium.com

但是,即便有這樣安全的系統,航空事故——尤其是機載系統引起的航空事故,仍然無法避免。這樣想起來,開發普通的程序還是挺“安全”的一件事。無論如何,哪怕出現再麻煩的情況,大不了斷網、關機,然後慢慢調試、修正。但是車載、機載系統可不是鬧著玩的,一出事就是大事。如果你留意,經常可以發現有人報告,新興的“互聯網品牌汽車”在路上遇到各種異常情況,雖然停車、重啟系統就恢復正常,但也足夠把人嚇得不輕。

當然,即使開發“安全”的程序,也不難遇到“人與系統搏鬥”的場景。我就不止一次看到,系統出現異常之後,程序員手工介入,或者不斷刪文件,或者不斷殺進程,但是如果找不出根本原因,這樣的手段也只能保得了一時而已——畢竟,系統的能力比人強大太多了,最後的結果往往是程序員被如潮的文件或進程所淹沒,系統崩潰,與本次的事故有幾分相似。

我有個朋友,大學學的是編程,畢業後去生產線看了一圈,發現一個小的程序錯誤就可能致殘致死,嚇得從此離開了這個行業——雖然這是特例,但也提醒我們,無論做什麼程序,都應當對技術有敬畏之心,都應當小心謹慎。哪怕在互聯網行業,簡單粗暴的“先開火再瞄準”也不是全無風險的。


分享到:


相關文章: