广告

神秘故障!系统为何每天凌晨2点崩溃?

2021-03-19 11:48:10 Curt Wilson 阅读:
装配线24小时三班不停地运作,白天一直正常,但是每到凌晨2点左右,在最困乏的午夜时分,都会意外停机。有经验的老同事说是模拟漂移引起的,但是用了恒温器,还是不行……

1980年代后期我加入了一家生产数字运动控制器的小公司,那时我还是一名年轻的工程师。当时数字技术已经足够成熟,也足够便宜,可以在许多应用中代替以前用的纯机械或模拟电子控制装置。此外,随着数字光电编码器这类位置传感器的成本不断降低,在以前只能使用模拟转速表进行速度控制的应用中,也可以采用位置控制。rQhednc

这是一个小公司,所以我必须是一个全能型选手,我的其中一个头衔是应用支持工程师,负责处理客户问题。那时候,一条带输送装置的装配线刚刚采用了我们的控制器,这条装配线用于生产最早的小荧光灯泡。搭建这条装配线的工程师对它的运行情况非常满意,因为这条装配线达到了前所未有的精度和速度。rQhednc

然而,当装配线全面投入使用时,出现了一个大问题。这是一条自动化装配线,本来应当24小时三班不停地运行。但是,当它这样连续工作时,从白天到晚上都非常正常,但是每天凌晨2点左右,在最困乏的午夜时分,装配线都会意外停机。由于这一时间段值班的工作人员很少,因此整个晚早剩下的时间这条装配线一直处于停工状态。等其他工程师上午8点左右上班以后,再重置系统,然后生产将重新开始。每天都是这样。rQhednc

当然了,由于公司损失了四分之一的生产时间,夜间停机这一问题很快就引起领导的重视,公司专门指派了经验丰富的技术人员来通宵监控系统,以便寻找问题的根源。有同事说他们以前曾遇到过这种情况,通常是由模拟漂移问题引起的。一开始,占上风的观点是认为工厂温度在夜间下降,导致一些模拟电路不能正常工作。(虽然系统中的放大器是由数字控制器驱动的,但它们仍然是模拟器件。)rQhednc

很多天过去了,寻找漂移问题没有任何结果。从模拟示波器的迹线来看,在系统崩溃之前,关键的信号并没有发生漂移。后来使用了恒温器,以便让夜间的温度与白天保持一样,并且通过单独测量进行确认,但是停机仍然每天晚上都发生。rQhednc

领导让我看一看从控制器可以获得什么样的信息,以找便找出问题所在。数字控制器有数据记录功能,我觉得这可能会有用。rQhednc

这个功能按现在的标准来看来确实比较原始,但在当时还是很先进的。一方面,那时的内存非常昂贵,因此,如果按发现问题所需的采样率来计算,它只能存储不到一分钟的数据。此外,这一功能是设计用来存储短时非连续性事件的,例如伺服调整动作。如果缓冲区满了,它就会停止工作。rQhednc

为了使用这一功能来解决我们遇到的问题,我不得不编写一些低级代码来欺骗缓冲区的状态位和存储指针。当缓冲区对关键运动寄存器的记录快到末尾时,我的代码会检查运动算法中是否有任何误差情况。如果没有错误,我会重写存储指针,它就会重新寻址到缓冲区的开始。如果发生误差,就让缓存停止记录。这样,缓存就可以记录下来系统停机前最后一分钟的数据。这就相当于为系统建立了一个黑盒记录仪。rQhednc

rQhednc

在系统运行良好时,我们运行了几次数据记录缓冲区,得到了一些参考图以进行比较,然后将其设置为连续运行一整夜。那天晚上,故障照常发生了,但是我们获得了可用于分析故障原因的有用数据。rQhednc

一大早我们就上传了记录的数据,并将这些数据绘制成图。一看到图,我们便恍然大悟,明白问题出在哪里了,懊恼自己“为什么以前没想到这一点”。rQhednc

这些图表明,系统在出现故障前一直都运行得很好。当传送带中的32位位置寄存器达到其最大正值并要翻转到最大负值时,故障发生了。传送带始终朝“正”方向移动,以它的运行速度,从零位置启动到故障发生的时刻,大约需要18个小时,这就是为什么它总是发生在深夜的原因,也是为什么在运行时间较短的装配线中从未见过这一故障的原因。rQhednc

我们在短短几分钟内就判断出问题的根源在于相关应用软件中的数学逻辑不能正确处理位置寄存器翻转。我们又花了几分钟时间,确定了如何修复,这个故障从此再也没有发生过。rQhednc

回过头来看这个问题,我发现那些老手(最初我完全服从他们的意见)虽然对不同类型的系统都很有经验,但经验主义往往会阻碍了他们找出问题。我们公司那些有经验的老同事非常关注模拟速度控制系统中发生的各种问题,而没有意识到数字定位系统可能会出现完全不同的问题。rQhednc

很幸运,这一经历使我在“千年虫问题”发生的十年前就知道存在“翻转失败”这样的软件问题,所以我很清楚什么会引起问题,什么不会引起问题。rQhednc

作者简介:rQhednc

Curt Wilson是工业控制公司Delta Tau Data Systems的工程和研究副总裁。他拥有斯坦福大学机械工程学士和硕士学位。rQhednc

(原文刊登于Aspencore旗下EDN英文网站,参考链接:Looking for drift in all the wrong places,由Jenny Liao编译。)rQhednc

本文为电子技术设计原创文章,未经授权禁止转载。请尊重知识产权,违者本司保留追究责任的权利。
  • 智人是日出而作日落而息,大脑存储器也有翻转的智能,这一智慧要不要转交给机器人呢?
  • 还以为是半夜卫生阿姨拔电源充手机
  • 一个计数器从最大,一下翻到了最小。造成了所有的时间差API函数失败。所以基于时间的调度系统全部死掉了
  • 建议博主介绍详细些,寄存器计满32位后,为啥会翻转到最大负值?翻转后程序出现怎样的结果才是正常的?翻转后程序出现了什么异常?程序出现异常后控制器会怎么操作?是否会自动重启或者复位操作?异常后如何人工恢复,重新清零计数器还是重新上电?
  • 寄存器溢出
  • 看不懂
  • 微信扫一扫
    一键转发
  • 最前沿的电子设计资讯
    请关注“电子技术设计微信公众号”
  • 最新任正非内部讲话:“炸开”思想,华为要不拘一格获取优 华为心声社区9月4日发布了任正非的高端技术人才使用工作组对标会上的讲话。讲话中提到,华为要建立一个自己的高端人才储备库,不拘一格获取优秀人才。此外,任正非还表示:我们要建立一个高级专家交流平台,便于跨界交流。
  • 美国硅谷工程师年薪多少? 据EDN电子技术设计引援市场调查机构 Blind最新报告,亚马逊、谷歌和 Meta 三家公司入门级工程师支付的平均薪资,要高于苹果和微软。
  • 芯片工程师平均月薪2.6万元,持续处于高薪职业首位 近日,智联招聘发布2023年二季度《中国企业招聘薪酬报告》,展示国内38个核心城市企业的招聘薪酬水平。从行业招聘薪酬同比增速来看,电子技术/半导体/集成电路行业薪资进一步上涨,同比增长5.9%,增速最高。
  • 华为有望量产国产5G芯片,初期良品率可能低于50% 多家研究机构分析指出,华为可以利用自身在半导体设计工具方面的突破,通过与中芯国际合作量产5G芯片。华为将有可能采用中芯国际的N+1制造工艺,属于7nm级生产节点,不过,根据知情人士透露,由于生产初期良品率可能低于50%,出货量将受到一定限制。
  • 美国将缺少十万半导体技术人员 美国商务部长吉娜·雷蒙多 (Gina Raimondo) 日前表示,未来几年美国将缺少大约 100,000 名半导体技术人员,这是个大问题,这也是一个机会。
  • 中国台湾开抢半导体人才,向全球前500大顶尖大学招手 中国台湾地区经济部负责人王美花表示,中国台湾将向全球前 500 大大学毕业生招手,取消过去需两年工作经验等限制,无需工作经验就可申请来台。经济部表示,通过国外揽才、国内培训方式持续充实半导体人才,通过产学合作跟人才培育的条例,允许大学动用政府与民间经费设立半导体学院。预计 5 月底与 9 月还有两次东南亚揽才团出发。
  • 全球半导体行业人均收入27.5万美元,人才短缺是最大的挑 德勤最近发布了一份名为《全球半导体人才短缺》的报告,该报告审视了当今行业的现状,并确定了行业可以采取的行动来识别、招聘和培养必要的劳动力。
  • 硬件明明比软件更难,但为何硬件工程师的收入低于软件工 为何付出同样的努力,学习了诸如信号处理,模数电路等复杂且折磨人的专业知识,感觉比付出同样精力的软件同学通过考试更辛苦,最后就业收入远低于同学校甚至同院系的同学?硬件明明比软件更难,国内的硬件技术也不如软件,为什么硬件工程师待遇还不如软件?
  • 台积电、联电校招万人,业内人士:行业薪资达十年来最高水 近日,台积电、联电开启了校招活动,其中,台积电预计招募超过8000名新员工、联电预计招募 2000 名人才,硕士毕业工程师平均年薪上看200万新台币,约合人民币45万元。晶圆厂们大手笔扩招源于晶圆厂们2021年的“疯狂”扩产。
  • 研发转至FAE(现场应用工程师),是否远离技术了?有前途吗? 前几日,EDN小编在浏览知乎的时候,发现了一个有趣的话题《FAE有什么发展前景吗?》,被浏览次数接近九万次。小编总结了一下题主的提问:FAE是否远离技术了?未来是否有发展前景?
  • 种下硅林的泰克,更期待创造未来 有人说,如果你在硅林有一份高科技工作,那么你可以能要感谢泰克。
  • 硬件工程师应记住的10大软件技巧 嵌入式系统设计不仅需要了解硬件,还需了解软件是如何影响硬件并与硬件进行交互的。设计硬件所需的范式可能与设计软件完全相反。当从硬件设计转向包含软件的设计时,硬件工程师应牢记以下十个技巧。
广告
热门推荐
广告
广告
EE直播间
在线研讨会
广告
广告
面包芯语
广告
向右滑动:上一篇 向左滑动:下一篇 我知道了