电脑屏幕上密密麻麻的数据曲线像一团乱麻,着已经是连续熬了第三个通宵。
“孙工,这是第七次极端联试失败的完整日志。”楚星河把平板推到我面前。
“所有传感器读数都在标称范围内,但制导系统就是莫名其妙报错。”
我感到一种莫名的紧张,“把历次故障前两小时的环境监控数据调出来,温湿度、振动、供电波纹,一个都别漏。”
这时梁卓如凑过来,指着屏幕一角:“孙工,第三次和第五次失败时,实验室日志显示有短暂温升,但波动没超限。”
“没超限不代表没问题。”我敲敲桌子,“把温升时间点和故障报错时间戳对齐,看延迟多少。”
楚星河皱眉操作着:“对齐了……温升发生后大概三分钟,系统开始报错。但其他几次失败没有温升记录。”
“所以不是主要原因。”我切换界面,“操作日志呢?每次试验员的操作序列完全一致吗?”
“绝对一致!”试验组长王柏忍不住插话,“我们按规程操作,连按键力度都训练过标准化。”
我盯着王柏发红的眼睛:“没怀疑你们。但机器认死理,可能有个百万分之一的巧合被我们撞上了。”
我转向楚星河,“把失败前5分钟的数据流,按毫秒级拆开!任何微小波动都可能是线索!”
楚星河苦笑:“孙工,这数据量太大了,毫秒级拆开要算到什么时候啊。”
“那就分头算!”我拉开白板,“王柏负责电源模块数据流,梁卓如盯惯性传感器,星河你跟振动记录。我查数据链交互日志。”
凌晨三点,梁卓如突然“咦”了一声:“孙工,第三次失败前两秒,有个陀螺仪信号毛刺,幅度就超了标称值百分之零点三。”
王柏凑过来看:“这误差太小了,以往型号都忽略的。”
“但雷霆-10是要列装我们的五代机的!”我放大曲线,“差之毫厘失之千里。把其他几次失败的陀螺仪数据重点查!”
楚星河突然拍桌子:“第五次!也有毛刺!比第三次还轻微,但时间点一模一样!”
“继续挖!”我感觉心跳加快,“查毛刺发生时的环境记录!”
王柏喊起来:“当时实验室正在切换备用电源!日志显示有毫秒级电压波动!”
“所以是电源切换干扰了陀螺仪?”王柏若有所思,“可我们屏蔽做得很好啊……”
我调出设计规范:“看看陀螺仪供应商的防护标准……找到了,他们承诺的抗干扰余量是百分之零点五。”
小梁倒吸凉气:“所以那零点三的毛刺其实在安全范围内?”
“但加上电源波动就可能临界!”我快速翻看记录,“其他几次失败时有没有电源切换?”
楚星河摇头:“没有,都是主电源稳定供电。”
“那为什么还失败?”王柏抓着头发,“难道有好几个故障源?”
我靠在椅背上揉着太阳穴:“可能我们太执着找‘唯一真凶’了。梁卓如,把七次失败的所有异常点列成表,不管多微小。”
一小时后白板上写了十几条:陀螺仪毛刺、温升、数据链校验码偶发错误。
楚星河看得头晕:“这哪是找线索,这是大海捞针。”
“那就用穷举法!”我打开仿真软件,“把这些异常随机组合模拟,看哪种组合会引发连锁反应。”
模拟结果令人沮丧:大多数组合无害,但有三组异常同时出现时,系统崩溃概率飙升到七成。
王柏看得目瞪口呆:“这些异常平时八竿子打不着,怎么会同时出现?”
我调出试验排期表:“看,七次失败分散在不同日期、不同班组、甚至不同实验室。”
“但都有个共同点,都是在大规模并行测试时发生的。”
楚星河恍然大悟:“所以是系统负载达到峰值时,各种边角料问题被放大成了致命组合?”
“就像人熬夜免疫力下降,小感冒也能放倒你。”我指着屏幕。
“雷霆-10的代码太复杂,某个模块可能没处理好这种极端并发压力。