打印

困扰我好几年的小问题,还是没有解决。

[复制链接]
楼主: 262767472
手机看帖
扫描二维码
随时随地手机跟帖
21
cjseng| | 2013-5-16 14:38 | 只看该作者 回帖奖励 |倒序浏览
楼主的问题,我认为应该这么看:死机这个事已经发生了,要改变原有的设计估计不是一天两天的事,而且改了之后也不一定能确保改好,毕竟死机这个事情也不是容易观察到的。那么解决的办法就是死就死吧,另做个电路,只要能检测到死机,检测到死机之后就可以控制自动重启了。

使用特权

评论回复
22
liusensen| | 2013-5-16 14:50 | 只看该作者
各有各的办法啊 !

使用特权

评论回复
23
yewuyi| | 2013-5-16 15:07 | 只看该作者
cjseng 发表于 2013-5-16 11:33
我也遇到楼主说的这种问题,不过我的解决办法是:用另外一个单片机或其它硬件,监测主控单片机的运行,一旦 ...

做设计又不是玩接龙游戏,是不是第二个单片机死了,你还得再接第三个来监控啊?

使用特权

评论回复
24
yewuyi| | 2013-5-16 15:12 | 只看该作者
用开发式PC系统的易宕机来证明封闭性嵌入式系统容易宕机也是合理的,这显然是不确当的。

具体如何不恰当就不分析了,网络上应该大把的探讨。

使用特权

评论回复
25
logger| | 2013-5-16 15:12 | 只看该作者
要是不能直接找到原因,那只能猜了,楼上N多了,一切皆有可能

使用特权

评论回复
评论
wjsinian 2013-5-18 01:53 回复TA
高,其实大家都在猜, 
26
yewuyi| | 2013-5-16 15:42 | 只看该作者
俺在10楼已经列出了常见的几个原因,一般不外乎这几条,自己一条条排除找问题就是了。
1、复位不可靠。
判断办法:可以使用模拟复位的方式,加大样本数量,不断的模拟复位上电,看看有没有故障机器。
2、晶体振荡不稳定、容易停振
判断办法:测量晶体振荡电路的振荡波形是否正确?
3、软件有临界代码造成的‘代码黑洞’
判断办法:一般临界代码造成的故障现象往往有一定的规律性,但这显然需要大量的故障机故障现象统计才能便于分析,另一个办法就是进行代码审查,最好是付费找高手帮你审查,不审查详细功能,就只审查临界代码即可。
4、软硬件设计时未提供足够的EMC对抗措施,PC指针容易跑飞宕机。
判断办法:超出设计指标的强烈干扰导致的宕机现象一般都是随机的,你可以首先找高水平的硬件工程师给你审查原理图和布板图,然后使用电磁兼容设备做实际的电磁兼容指标检测,帮助你确定问题所在,如果是这个问题造成的,分析和找到问题往往都会比较麻烦。
一般的电磁兼容测试有快速脉冲群、浪涌雷击、静电放电、周波跌落等等,你可以自己查找IEC相关标准多学习一下。

使用特权

评论回复
27
cjseng| | 2013-5-16 15:54 | 只看该作者
本帖最后由 cjseng 于 2013-5-16 15:58 编辑
yewuyi 发表于 2013-5-16 15:07
做设计又不是玩接龙游戏,是不是第二个单片机死了,你还得再接第三个来监控啊? ...


主机跟从机是可以做成互相通讯的,主机也可以监控从机,同时死掉的几率是很小的。
我这不是帮楼主解决问题吗?在找不出死机原因的前提下,提供一种思路来把问题解决掉。

使用特权

评论回复
28
forrest11| | 2013-5-16 16:09 | 只看该作者
cjseng 发表于 2013-5-16 11:21
呵呵,我用的IBM笔记本也会死机,要重启才能恢复正常,难道IBM笔记本不是量产的产品? ...

用这两个相比,只能说明你没有起码的工程概念。
很多产品由于无人值守,或其它原因,不能停机或长时间停机。所以对单片机硬件抗干扰,软件可靠性都有很高的要求。对于部分暂时无法确知死机原因的,只能考虑硬件狗或者软件狗保证可恢复。这个是笔记本完全不一样的。
航天的东西要求就更高了,这个单片机也不能比了。可不能容忍火箭飞了一半,因为过热就复位执行。

使用特权

评论回复
29
cjseng| | 2013-5-16 16:14 | 只看该作者
yewuyi 发表于 2013-5-16 15:12
用开发式PC系统的易宕机来证明封闭性嵌入式系统容易宕机也是合理的,这显然是不确当的。

具体如何不恰当就 ...

手机属于嵌入式系统吗?不是照样死机?不过我发现我的诺基亚死机后过段时间自己能重启。
实际上我还遇到过海信电视机遥控死机的(电池正常,不能发射红外信号,拿掉电池重装一下又可以了),那是一个奇葩遥控器,居然是双面板的,上面还有个普通晶振,我给晶振上加了一个1.5M的电阻,之后就正常了。
还有电视机本身死机的(在通电瞬间按一下遥控器就死掉了),是台熊猫彩电,在宾馆住宿遇到的。
除此之外,我还遇到模拟摄像机死机的,是外置DC12V电源供电的,夏天时工作一段时间,没有视频信号输出了,断电后再通电恢复正常,过段时间再次死机。解决办法:加大12V电源散热器面积。测试发现:电源过热保护,输出电压降低,摄像机停止工作,电源再恢复正常时,摄像机保持死机状态,必须彻底断电再重启才能恢复正常。
至于PC机死机,在window98的年代,蓝屏是常有的事。不过,我遇到很多研华工控机死机的,主要倒不是软件的问题,原因很简单,过热引起,以至于后来研华工控机的主板上都自带了看门狗,死机后会自动重启。

使用特权

评论回复
30
yewuyi| | 2013-5-16 16:19 | 只看该作者
cjseng 发表于 2013-5-16 15:54
主机跟从机是可以做成互相通讯的,主机也可以监控从机,同时死掉的几率是很小的。
我这不是帮楼主解决问 ...

你的方法和楼主的问题其实不是同一个口径。

你的方法相当于系统的冗余设计,通过冗余设计来进一步提高设计的可靠性系数,而楼主的问题其实应该归结到设计不合格方面来谈。

俺提出不同意见也就是针对此而言:不应该用冗余方式来掩盖一个本身不合格设计的缺陷。

包括你后来的那个雷达等的例子都是如此,当然雷达的设计者已经找不到,只能只能临时对付过去,让用户用起来再说,但从设计雷达的角度来说,这本身属于不合格的设计,所以用这个例子会让楼主和年轻工程师误会。

使用特权

评论回复
31
cjseng| | 2013-5-16 16:24 | 只看该作者
forrest11 发表于 2013-5-16 16:09
用这两个相比,只能说明你没有起码的工程概念。
很多产品由于无人值守,或其它原因,不能停机或长时间停 ...

你说的跟我不是同一个意思吗?
我举例笔记本电脑,是因为前面有人说会死机的产品不是量产的产品。

你下面说的我完全赞同,不过我的意见是:一个产品设计好了,硬件软件都做得很好,各种测试下来没有发现问题,但这不一定代表真的没有问题。所以,我就假设这部分电路会出问题,我就要加上看门狗,要加上其它监控电路,防止意外发生没法复位。

我们所能做的就是尽量防止意外发生,而不能完全免除。所以火箭会掉下来,航天飞机照样掉,只是概率问题。

使用特权

评论回复
32
yewuyi| | 2013-5-16 16:26 | 只看该作者
cjseng 发表于 2013-5-16 16:14
手机属于嵌入式系统吗?不是照样死机?不过我发现我的诺基亚死机后过段时间自己能重启。
实际上我还遇到 ...

现在的智能手机已经不是封闭的嵌入式系统,你见过多少功能机动不动死机的?

而且手机类产品属于民用消费品,根据设计指标来说,偶尔出现死机不会产生重大的危害,这也就是民用电脑偶尔死机但还能被老百姓勉强接受的原因,但这不代表老百姓认为死机是无所谓的事情,其实每次死机的时候,使用电脑的人都是很恼火的。

使用特权

评论回复
33
From_the_UESTC| | 2013-5-16 16:29 | 只看该作者
gx_huang 发表于 2013-5-16 13:40
秀才遇到兵,有理说不清。
有些产品,必须可靠,比如工控,安全相关产品,无人值守的。
有些产品,要求可 ...

哪里有可以保证绝对不会出故障的产品?只能说出故障概率较低而已。

使用特权

评论回复
34
ayl439| | 2013-5-16 16:42 | 只看该作者
mark  

使用特权

评论回复
35
yewuyi| | 2013-5-16 16:43 | 只看该作者
From_the_UESTC 发表于 2013-5-16 16:29
哪里有可以保证绝对不会出故障的产品?只能说出故障概率较低而已。

这个概念就不要讨论了,如同本安,也不代表就一定不出问题一样。

主题贴应该如何查找故障解决问题,而不是为了证明100%可靠性,或者是因为不可能100%可靠,所以出现故障是可以忍受的。

呵呵,ISO9000的精神是持续改善,做产品设计也是如此,要用持续改善的眼光来看待每一个设计。

使用特权

评论回复
36
cjseng| | 2013-5-16 16:44 | 只看该作者
yewuyi 发表于 2013-5-16 16:19
你的方法和楼主的问题其实不是同一个口径。

你的方法相当于系统的冗余设计,通过冗余设计来进一步提高设 ...

呃,这可能就是我跟你的区别吧!
我在实际工作中经常会遇到各种问题,很多设备根本不知道原始设计人是谁,用户也用了很长一段时间了,甚至供货商也找不到了,设备出现问题了,要如何解决问题?

我倾向于如何解决现场问题,我认为楼主说的情况,要找出问题的根源是很难的,甚至不可能找出问题,一年发生个一两回,要故障重现很难。而且,要老板支持做这个排查工作也基本不可能,因为时间可能是遥遥无期。所以我解决这个问题的方法是监控设备运行状态,死机后自动重启。

现在很多做工程的,在设备上加了GPRS模块或GSM模块,其中一个重要的作用就是远程升级、远程重启。实际上这是一种市场行为,短期内推出不是很成熟的产品,先占领市场,之后不断升级优化。

至于雷达,只能说在很长一段时间内,市场上这个雷达是性能最好的。有问题,但你必须用它。不可能改变原有设计,只能用外围电路来适应它了。而我认为,这也是一种设计,这种设计是基于整个系统的设计,不是产品级的设计。设计本来就是一种妥协、平衡的技术。设计的最终目的是满足用户的需求,至于用了什么方法,那就各显神通了。

使用特权

评论回复
37
cjseng| | 2013-5-16 16:50 | 只看该作者
yewuyi 发表于 2013-5-16 16:19
你的方法和楼主的问题其实不是同一个口径。

你的方法相当于系统的冗余设计,通过冗余设计来进一步提高设 ...

不应该用冗余方式来掩盖一个本身不合格设计的缺陷。

呵呵,有时候事情就是这样,不合格的设计是经常有的,绕不开的。如果用冗余的方法能解决问题,甚至很有可能是最快的方法,那就不妨用它吧!

使用特权

评论回复
38
From_the_UESTC| | 2013-5-16 16:53 | 只看该作者
yewuyi 发表于 2013-5-16 16:43
这个概念就不要讨论了,如同本安,也不代表就一定不出问题一样。

主题贴应该如何查找故障解决问题,而不 ...

但是有时候也要看改善值不值得啊,比如说就是一个空调遥控器,偶尔死一次机,抠了电池又可以用,就没有必要去改善啊,因为查找故障啊什么的,即便不增加硬件成本也会增加时间和人力成本。

使用特权

评论回复
39
yewuyi| | 2013-5-16 17:04 | 只看该作者
cjseng 发表于 2013-5-16 16:44
呃,这可能就是我跟你的区别吧!
我在实际工作中经常会遇到各种问题,很多设备根本不知道原始设计人是谁 ...

呵呵,这再次证明一个道理:不是基于同一个出发点的讨论,基本都是不会有结果的。

但我一向认为:不能从本质上去考虑如何解决问题的设计,不管是何种形式的产品,都是将就对付着的,我们为了短期的市场需要而无奈选择了该种临时对策,但这不应该成为工程师追求根本解决之道的障碍,从技术的角度来看,工程师还是应该力求找到问题的本质,从而发现自己的不足,提高自己的能力,从企业经营的角度看,临时解决过去也是可以说得通的。

设计是一种妥协、平衡的艺术行为,呵呵,这也是俺一向的口头禅,但这不能让我们忽视问题存在的事实,工程师能力的提升的一个重要途径,就是在不断的自我否定和自我肯定中前进,找到问题的本质实质是一种自我否定并提升设计能力的重要一环,只有那种通悉全盘的各个细节的妥协和平衡,才能保证工程师持续推出优秀而稳定的设计。

呵呵,这个楼歪的太厉害了,都已经变成了讨论设计理念的话题了。

使用特权

评论回复
40
yewuyi| | 2013-5-16 17:06 | 只看该作者
cjseng 发表于 2013-5-16 16:50
不应该用冗余方式来掩盖一个本身不合格设计的缺陷。

呵呵,有时候事情就是这样,不合格的设计是经常有的 ...

可以用。

而且从企业经营的角度看,这么临时对付先保证用户的使用,是完全可行和确当的方法。

但工程师还是应该努力设法找到问题,并通过这个过程提升能力,即使不修改当前设计,也能保证以后不再翻这个错误,这才是最重要的。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则