广告

一个Bug,成了工程师除错的未解之谜……

2018-09-27 16:14:01 Bill Schweber 阅读:
除错是工程技能的一种,有部分来自于详细知识,其他元素还包括经验、指导、直觉、猜测功力还有运气...

我那辆2005年式Honda Accord的左侧煞车灯几天前烧坏了。这不是什么大不了的问题:很幸运地只要花几秒钟就能换好灯泡,不像是头灯或是现在某些其他车辆的车灯那么麻烦;就算是这样,让我感到困惑的是,两年前同一个位置的非LED白炽灯也烧坏过,在那之前的几年也发生过一次,现在又这样…(身为一个工程师,我总是会保留这类纪录)。LRTednc

这样的「巧合」让我非常好奇,特别是因为右侧的那个煞车灯灯泡从来没烧坏过。我的除错经验告诉我,这就只是一个巧合,就像是丢硬币会出现正面或反面的机率;当然这件事可以就这样简单换个灯泡就让它过去,但或许就是太方便轻松,我忍不住检查了灯泡插座──看起来很干净(没有锈蚀或烧熔的痕迹)──以及所有的关联线路。LRTednc

因为年份比较久,这辆车并没有连网,所有的线路都很基本,形成开关直流回路(switched DC loops),而这确实也能简化故障分析并减少可能的故障原因。于是我开始思索到底可能是哪里出问题...如果是为两侧煞车灯供电的开关高侧线路有一些过压(overvoltage)状况,那么两边的灯泡应该都会发生故障。LRTednc

考虑其低故障率与平均故障间隔时间(MTTF),或许另一侧的灯泡很快也会不亮了,但就是没有足够的数据可以判断。又或许左侧的灯泡有一些持续发生的微振动(microvibration),这会缩短灯泡的使用寿命…还是有一些我想不到的可能原因?LRTednc

我的另外一个想法是从其他角度来找原因。或许,第一颗灯泡与后来的那颗灯泡都烧坏,只因为它们是不合标准的产品(因为两颗灯泡是一起买的、在同一个包装里,如下图);所以灯泡烧坏跟车子与车内的电气系统无关,而是灯泡零件本身?这应该不是第一次发生的状况,在一连串的故障排除过程中,我们以为替换零件是好的,实际上并非如此。LRTednc

 LRTednc

EDNT180926_bulb_NT01P1LRTednc

两颗来自同一包装的煞车灯灯泡都发生故障,其中一颗是另外一颗的替换品…所以问题可能是来自灯泡并非车子本身?(来源:Bill Schweber)LRTednc

我将这类型情况称为「工程师的困境」(the engineer’s dilemma);无论是出自于我们的天性或是开发项目的必要项目,工程师们就是会除错。有时候这种除错很容易,但往往会让人感到沮丧,因为充斥着错误的路径、矛盾的证据、不相关的巧合,还有错误的希望。LRTednc

以我的案例来说,因为无法取得汽车制造商的数据库还有客服相关细节,说不定这个问题实际上在这个年份与型号的车款上并不罕见;同时出厂的车子有成千上万辆,基于「大数法则」(the law of large numbers),我的经验只是其中一个样本。此外,我做出任何更大的结论本质上都是怀疑,因为我的个案并不具代表性,可能只是一个特例。LRTednc

除错是工程技能的一种,有部分来自于详细知识,其他元素还包括经验、指导、直觉、猜测功力还有运气,特别是在硬件端。一旦发现微妙的电路问题,可能就会出现最后回想起来其实一切都是如此明显的「啊哈!」瞬间;但很多时候情况恰好相反,只会松口气、仍忍不住一直想:这是真正的问题根源吗?或者只是巧合的发现?真正的问题会接着浮现吗?LRTednc

虽然有很多针对特定除错问题以及其解答的案例研究(case studies)与「战争故事」(war stories),但基于许多理由,通常关于如何除错的教材非常少;因为那些一般性说明与准则往往不适用。尽管如此,有一本很棒的书可供参考:《除错:找出最难以捉摸软硬件问题的9个必要原则》(Debugging: The 9 Indispensable Rules For Finding Even the Most Elusive Software and Hardware Problems),作者是David J. Agans。这本书不是纸上谈兵,而来自实战经验的指南。LRTednc

EDNT180926_bulb_NT01P2LRTednc

这本教你如何掌握除错诀窍的好书,无论对新手或老手工程师都会很有帮助(来源:Amazon)LRTednc

在此同时,我已经决定不再烦恼我的煞车灯泡问题;因为我的「直觉」告诉我,找出这种问题根源的机率非常小。毕竟这是每隔几年才会发生一次的情况,我还有很多别的事要做。你也曾经遇过让你非常困扰的除错问题,而且因为缺乏数据、故障案例数量不足、MTTF太长或是因为现实世界的一些限制而无法解决吗?欢迎分享!LRTednc

(原文发表于ASPENCORE旗下EDN美国版,参考链接:The burned-out bulb mystery,)LRTednc

 LRTednc

本文为电子技术设计原创文章,未经授权禁止转载。请尊重知识产权,违者本司保留追究责任的权利。
  • 原文里有地址的:http://www.amacombooks.org/book.cfm?isbn=9780814474570
  • 上Amazon找找看,因为文章图片来源是Amazon
  • 这本书哪有卖
Bill Schweber
EE Times/EDN/Planet Analog资深技术编辑。Bill Schweber是一名电子工程师,他撰写了三本关于电子通信系统的教科书,以及数百篇技术文章、意见专栏和产品功能介绍。在过去的职业生涯中,他曾担任多个EE Times子网站的网站管理者以及EDN执行编辑和模拟技术编辑。他在ADI公司负责营销传播工作,因此他在技术公关职能的两个方面都很有经验,既能向媒体展示公司产品、故事和信息,也能作为这些信息的接收者。在担任ADI的marcom职位之前,Bill曾是一名备受尊敬的技术期刊副主编,并曾在其产品营销和应用工程团队工作。在担任这些职务之前,他曾在英斯特朗公司(Instron Corp., )实操模拟和电源电路设计以及用于材料测试机器控制的系统集成。他拥有哥伦比亚大学电子工程学士学位和马萨诸塞大学电子工程硕士学位,是注册专业工程师,并持有高级业余无线电执照。他还在计划编写和介绍了各种工程主题的在线课程,包括MOSFET基础知识,ADC选择和驱动LED。
  • 微信扫一扫
    一键转发
  • 最前沿的电子设计资讯
    请关注“电子技术设计微信公众号”
广告
热门推荐
广告
广告
广告
EE直播间
在线研讨会
广告
面包芯语
广告
向右滑动:上一篇 向左滑动:下一篇 我知道了