{singhi}
🏷 journal
波音 737 事故,软件化要不要“背锅”?
🔗 🌙 💬 📅

事件回顾

3 月 10 日,埃塞俄比亚航空公司一架波音 737 MAX 8 客机在飞往肯尼亚途中坠毁。机上有 149 名乘客和 8 名机组成员,无人生还。

据报道,此次失事的是一架全新的波音飞机,四个月前才交付给该航空公司。这是波音 737 MAX 8 半年内出现的第二起严重事故。(第一起为 2018 年 10 月 29 日印尼狮航的坠落事件,189 人罹难)目前中国大陆共有 96 架该机型飞机正在运营,中国民航局今天表示,为确保中国民航飞行安全,囯内暂停该机型的商业运行。

一年多前,波音公司还是传统企业数字化转型的杰出代表,其软件化发展得到工业互联网领域的一致认可。但短短半年时间,同一机型两次空难,其中一次的失事原因已明确为软件设计缺陷。这样惨痛的后果,软件化是不是要“背锅”?更有人无奈戏言:波音真把自己当互联网企业了,让用户去试 bug。

波音的数字化转型,还有参考意义吗?

两次空难的技术原因分析

伤痛之余,我们仍需复盘两次坠机的原因。

回顾第一起坠落事件,调查人员发现,失事飞机的迎角传感器“数据错误”触发“防失速”自动操作,导致机头不断下压,飞行员多次手动拉升未果,飞机最终坠海。

这个自动控制下压机头的系统,名叫 MCAS,意为自动纠正失速系统。波音 737 MAX 在设计上配备了更粗大更省油的发动机,而这也使得飞机容易在大迎角飞行失速。为此,波音设计师就为 737 MAX 开发了 MCAS。这是波音 737 MAX 的一种操纵辅助系统,其设计初衷是,如果机身上的传感器检测到高速失速的情况,即使在没有飞行员输入信号的情况下,该系统将强制将飞机的机头向下推。

波音737 Max 机动特性增强系统(MCAS)
波音737 Max 机动特性增强系统(MCAS)

但在狮航空难事件中,该系统接收到了错误数据,导致飞机在正常情况下开始不断下压机头,飞行员在 11 分钟内连续手动拉升 20 余次终告失败,坠海罹难。

狮航空难发生后,国内资深机长陈建国表示:“狮航空难是飞机信号系统接收到一个假信号,信号显示飞机‘抬头’,所以控制系统持续给出了‘低头’的指令。机组与控制系统搏斗很长时间,最终发生事故。”

根据波音公司对飞行员的培训,发现该系统程序有 4 个特点:

  • 发现失速后,程序只相信主传感器,不与备份传感器核实。(同样的情况空客的飞机则会交给飞行员处理。- )
  • 一旦相信,不通知飞行员,直接操纵机翼。
  • 飞行员手动操作后,仍旧会每五秒自动执行,让飞行员不得不与飞机较劲。
  • 程序开关非常隐蔽。

业内人士指出:“因为 MCAS 系统,737 MAX 飞机可能在计算机控制下执行长达 10 秒的非指令性低头,单靠驾驶杆操作很难拉住。而如果飞行员并不清楚这一切,那么就可能变成飞机俯冲 - 人工向上配平 - 飞机继续俯冲的搏斗,飞行员的胜算并不大。”

空难发生后,波音公司更新了 737 MAX 飞行操作手册,指导飞行员如何应对“迎角传感器数据错误”,报导称波音考虑虑修改软件设置:自动系统触发后,一旦机组人员对设置作“反向”操作,即可关闭 MCAS 的“自动下压机头”功能。但这一“软件升级”并没有得到官方的确认。

本次埃塞俄比亚航空空难的具体官方报告还未公布,从目前已有的消息来看:这架飞机失事前,最大地速达到 383 海里每小时,超过了飞机正常的飞行速度。该机起飞经历后反反复复爬升下降,下降爬升的过程,高度 7000~8600 英尺之间,最大地速达到 383 海里每小时,超过了飞机正常的飞行速度。该数据与狮航的全球第一架 737MAX 空难有些相似,都可以归结为 LOC—空中失控。具体原因还需要更多的数据来分析。

回过头来再看看波音的软件化道路:它曾满载荣光,如今备受质疑。

波音的软件化之路

2012 年,由通用电气发起,思科、IBM、英特尔等 80 多家公司成立了工业互联网联盟,试图重新定义制造业的未来,这其中的一员,就有波音公司。

波音公司是全球最大的航天航空器造商。每天,数以千计的波音客机从全球各地机场起降,将旅客运送至目的地。举个例子,波音 787 梦想客机飞行一次就会产生多达 1TB 的数据,每年数百架 787 梦想客机飞行数千次,产生的数据使得波音公司坐拥了一座数据金矿。

面对如此海量的数据,这家 100 多年历史的公司意识到,需要重新思考软件方法,才能充分利用所有这些数据来改进各种职能。波音公司的核心竞争力并非工厂和生产线,而是其 7000 多种软件。波音研发设计涉及 8000 多款软件,其中 1000 多款为通用软件,可以通过市场购买获得,剩余的 7000 多种软件为波音自行开发,代表着其核心竞争力。

利用大数据预测飞行故障

波音与卡耐基梅隆大学合作建立了一个“航空数据分析实验室”,期望利用 AI 和大数据技术对波音飞机进行全面升级。这次合作的初衷是,让人类更好地理解和利用航空工业中每天产生的巨量数据,用机器学习的方法来优化波音飞机的运行,用大数据来指导设计、建造和运营。

一架飞机上往往有数千个传感器,每条航线每次飞行产生的海量数据,通过 AI、大数据技术快速锁定有效数据,让飞机在起飞前有能力预判潜在风险,从而得以进行定点检查和零部件替换,降低风险。

数字化转型的 3E 法则

2017 年 12 月,在 Pivotal 举办的的 SpringOne Platform 大会上,波音公司 CIO 办公室执行主任 Niki Allen,分享了她负责主导的波音公司软件开发方法转型的演讲。以下做简要摘录。

从传统企业到软件驱动,波音的数字化转型总结起来就是 3 个“E”法则:参与(Engagement)、卓越(Excellence)和支持(Enablement)。

参与:第一个挑战是让你的开发人员,IT 人员,业务领导人和高级管理人员 ,对转型过程和带来的成效感兴趣并激动不已。 如果没有积极参与,转型的效果就可能会大打折扣 ,这需要 IT 采用新的思维模式。除了内部新鲜血液,波音公司还与 Pivotal 等外部组织建立强大的合作关系,共同推进。

卓越:执行的质量。 实现卓越的执行要求团队的每个成员都致力于自己的工作,并与同事合作。鼓励团队成员倾听并相互学习,并与同事分享他们的知识。

支持:前两个 E 的执行会引出第三个 E:支持 (Enablement)。但要支持企业发展,还需要企业自身投入到转型工作中。否则,这些工作将无法产生预期的效果。

建立数字化转型环境

波音公司将其数字工厂称为 DTE(数字转型环境) 。DTE 包括应用程序开发和运行平台 Pivotal Cloud Foundry 以及平台运行的底层硬件,还包括开发团队的新工作流程,以充分利用平台的云原生能力。这些包括支持持续集成和开发,这使得波音的应用团队能够快速测试和部署新软件到生产环境,获得用户的反馈意见,并反复持续改进软件。

通过数字软件化转型,波音公司极大地提升了数据的利用率与生产效率。但这样的数字化转型带来的也不全是好消息,不断进化的智能化、自动化技术,也带来了一些思考和问题:当软件系统出现故障或者对于飞行状况判断失误时,如何规避风险?人工何时介入?

技术发展的数字化悖论

虽然现代汽车的自动驾驶系统仍然处在很初级的阶段,但在航空领域,自动驾驶系统早已大行其道,飞机的自动驾驶系统,会根据预先设定好的航路,全程驾驶飞机,甚至完成降落,飞行员反而成为了辅助存在。在这种情况下,很容易会造成一种“自动化悖论”:

自动化不但操作简单,而且可以自动纠错,哪怕操作者不够专业都能够正常工作很长时间,他的不足被自动化完美掩盖,很可能一辈子都不会被同行发现。

即便是老手,由于系统不需要他们手工作业,原有的操作技能也会因为疏于练习而退化。

自动化系统往往在异常情况下失效,或者以发生异常的形式失效,如果操作者技巧不够熟练是无法应付这些突发状况的。

这种悖论不仅发生在飞机自动驾驶系统里,也出现在如运维自动化、自动化港口、自动驾驶汽车等领域里,我们过去讨论的大多是如何提升自动化水平,甚至做到无人值守,但是,现在我们有必要严肃的讨论一下如何防止自动化悖论了。