一点心得:谈谈研发过程中的灵异现象

in #cn-stem6 years ago (edited)

作为中国大陆教育出来的科技从业者,特别是研发工程师,可能大部分都和我一样,是无神论者,因为整个教育的大环境就是那样的。

我坚信科技是第一生产力,相信科学研究和实验会拨开迷雾厘清问题,相信这个世界上没有无因的果。

可是,随着研发工作的持续和深入,慢慢的,会碰到越来越多的“灵异现象”。

在遭遇的当下,任凭怎么用心努力排除万难,你会发现问题犹如被一种看不见摸不着的不可控力所操纵,那些bug属于超自然的存在,反科学反理性,完全超出自己的认知。

这个时候,相信绝大多数从业者会对自己产生怀疑,会对这个世界产生怀疑——根本没有所谓的科学,科学的尽头是神学,不然牛顿怎么会到最后信了上帝呢?

所以,我们可以在网络上看到越来越多的程序员,在写完程序,实际运行之前,要烧香拜佛;有越来越多的RD,在项目实际面世前要请一些“大师”过来驱邪正气,以保证自己的工作不受鬼神打扰。这似乎逐渐成了一种风气,盲从者越来越多。

但是,作为一个有着十几年电子研发经验的工程师,我可以负责任地告诉你:或许在别的领域有超自然现象存在,但至少在我所处的嵌入式系统的研究领域,没有灵异现象。所有的异常,都有原因,也都能找到原因。

实际上,科学研究和内心信仰并不冲突,很多出色的科研人员,并不是唯物主义者。但是,这并不影响科学研究中认真地求证。

远的不说,就拿我这几天碰到的meter开机会RESET这件事来说。过程和解决方法在一个“优秀”研发工程师的苦——可能又是堆栈惹的祸一个“优秀”研发工程师的乐——原来是电源惹的祸有详细的叙述,如果你有兴趣的话,可以去看看,不看也可以,我简单描述一下现象,不影响这篇文章的阅读。

过程是这样的:

2019.1.2:

元旦放假回来第一天,我收到台湾同事(测试工程师)的消息,说我设计的一款meter在开机的时候不正常,有2种表现情况,并给我发了视频,看了不同的表现。而且几台meter表现都一样。

从视频可以判断出,异常的时候,meter复位了。于是我拿上手头的样品,这个样品和台湾测试的样品都是同一批试产出来的,而且台湾是几台都表现一样,可以排除个别差异。

可是,我试了几百次,异常现象根本无法重现。


2019.1.3:

忙了大半天,下午无意中继续测试meter,发现异常现象经常出现,且概率大于60%。


同样的meter,同样的人,同样的电池/同样的电源供应器,前后2天的结果截然不同。

说这是灵异现象似乎不为过:一定是出问题的时候,有怪力乱神出现,肯定不是设计问题,不然一整天测试几百次不出现怎么解释?!!!

这时,平庸的研发肯定会把锅甩给灵异现象,就此结案。但是,我不是“平庸”的RD啊!!最后我找到了原因,是电源的瞬态响应问题,使用的LDO(低压差线性稳压器)在瞬间电流变化时,会下跌,导致MCU复位。

本着打破砂锅问到底的精神,我仔细考虑了一下问题所在。

为什么2号测试不复位,3号测试一直复位???

所有的测试对象,人员,条件几乎都一样,但是结果不同。用科学的眼光来看,结果不同,一定过程不同,有差异。那么,这两天的差异到底在哪里呢?仔细回忆一下,差异在温度。

1.2号元旦后第一天上班,办公室4天没有进人,整个建筑物温度低,再加上空调不给力,到了中午室温只有10℃,我被冻得提前回家取暖了,下班前在京东下单买了个取暖器;

1.3号取暖器收到,加上空调的配合,室温在20℃以上。

我在上海,测试工程师在台湾,也有温度差异:台湾此时温度在20℃以上。

当然,温度不同,相对湿度也不同。有时候,湿度低的时候人体会有静电累积,操作仪表时会ESD放电,也会导致meter复位。不过在这个案例中,不是静电问题。

为什么温度不同会导致表现不同呢?

首先,在LDO输出电流变化的时候,输出电压是会波动的:

但是,没有不同温度下波动的影响。

根据meter的表现,可以推断温度越高,这个波动越大。但是datasheet里面并没有具体描述,但我们可以根据其他温度特性来推导。

我们来看看所使用的LDO的参数:

LDO的输出电压和温度有关,且温度系数有正有负。

不过,这个只和LDO的稳态输出有关,我们要看瞬态响应。

这个是LDO的Dropout Voltage vs Output Current关系:

从里面可以看出,温度越高,压降越大,这和电路内部的特性有关。稳态下是这样,瞬态响应也是差不多的,温度越高,压降越大。

再从LDO本身的功率消耗和不同温度下的关系:

可以看出,在VIN相同的情况下,温度越高,消耗的功率越大,也就是输出的电压越低(更多的功率消耗在LDO本身)。

从以上曲线关系来看,LDO的特性都是温度越高,输出特性越差,所以可以肯定瞬态响应性能也会变差。

哈哈,在我几乎放弃进一步研究的时候,发现了一个算是有直接关系的图表,负载瞬态响应和温度依赖性:

可以看出,温度越高,下跌越大。

那么,除了减小瞬间电流突变幅度以外,有没有别的办法来解决这个因为LDO瞬间响应特性差得问题呢?

有的。我们来看看负载电容的特性:

可以看出,负载电容越大,输出特性越稳定。

这个电容有一个要求,就是ESR(等效电阻)要小,否则在低温状态下可能引起震荡。当然,根据经验,也不可能非常大,比如放个2200uF,输出肯定能稳,但是上电瞬间充电电流过大,极有可能损坏LDO本身。

下面这幅图是原来CL只有20uF时,没有修改程序,同时大电流输出的瞬间下跌,跌幅接近2V:

如果把负载电容改为220uF,则跌幅只有0.2V,改善还是非常大的。所以,在成本允许的情况下,增大滤波电容也能显著改善问题,这就要看整个产品的性价比定位了。


好了,看了以上这些,你还相信在电子研发的过程中,真的有灵异现象存在吗?

作为一个合格的RD,必须详细研究所用元件的datasheet,对元件特性了如指掌,这样才能拨开迷雾见月明,让那些所谓的“灵异现象”统统破灭!!

科技改变生活,科技消除研发过程中的牛鬼蛇神,哈哈~~


参考文献:Seiko Instruments Inc. S801XX datasheet

Posted using Partiko iOS

Sort:  




This post has been voted on by the SteemSTEM curation team and voting trail in collaboration with @utopian-io and @curie.

If you appreciate the work we are doing then consider voting all three projects for witness by selecting stem.witness, utopian-io and curie!

For additional information please join us on the SteemSTEM discord and to get to know the rest of the community!

恭喜你!您的这篇文章入选 @justyy 今日 (2019-01-06) 榜单 【优秀的文章】, 回复本条评论24小时内领赏,点赞本评论将支持 @dailychina 并增加将来您的奖赏。

Congratulations! This post has been selected by @justyy as today's (2019-01-06) 【Good Posts】, Steem On! Reply to this message in 24 hours to get rewards. Upvote this comment to support the @dailychina and increase your future rewards! ^_^

Thank you for using CryptoSicko!

Well done and thank you for joining and supporting my subscription based upvoting bot that provides you with daily upvotes in exchange for your spare STEEM POWER.
Delegation links for CryptoSicko
100SP 250SP500SP

这个不赞不行!太专业了。台湾的习俗是要在机器旁边摆放“乖乖”,就会平安无事。哈哈哈哈哈😄

Posted using Partiko Android

哈哈哈,下次我去台湾看看同事桌上有没有放“乖乖”😁

Posted using Partiko iOS

Congratulations! This post has been upvoted from the communal account, @minnowsupport, by killer from the Minnow Support Project. It's a witness project run by aggroed, ausbitbank, teamsteem, someguy123, neoxian, followbtcnews, and netuoso. The goal is to help Steemit grow by supporting Minnows. Please find us at the Peace, Abundance, and Liberty Network (PALnet) Discord Channel. It's a completely public and open space to all members of the Steemit community who voluntarily choose to be there.

If you would like to delegate to the Minnow Support Project you can do so by clicking on the following links: 50SP, 100SP, 250SP, 500SP, 1000SP, 5000SP.
Be sure to leave at least 50SP undelegated on your account.

😄,很多時候都是人為的因素影響。
很多的東西信就好不要迷信😎

Posted using Partiko Android

人吓人,吓死人啊😂

Posted using Partiko iOS

牛机机。

阿兰牛,很快要成牛鼻子老道了

Posted using Partiko iOS

This post has received a 3.13 % upvote from @drotto thanks to: @sbi-booster.

你那里天气如何?你好!家中可愛的寵物照想要跟大家分享嗎?或是出去玩拍到一些可愛的動物,別忘了到@dpet分享,可以得到@dpet的獎勵喔!假如我的留言打扰到你,请回复“取消”。

Hi @julian2013!

Your post was upvoted by Utopian.io in cooperation with @steemstem - supporting knowledge, innovation and technological advancement on the Steem Blockchain.

Contribute to Open Source with utopian.io

Learn how to contribute on our website and join the new open source economy.

Want to chat? Join the Utopian Community on Discord https://discord.gg/h52nFrV

Coin Marketplace

STEEM 0.17
TRX 0.13
JST 0.027
BTC 59026.89
ETH 2655.48
USDT 1.00
SBD 2.50