找回密码
 注册会员
更新自动建库工具PCB Footprint Expert 2024.04 Pro / Library Expert 破解版

(转帖)一分钱的疏忽造成数万元的损失

[复制链接]
admin 发表于 2012-9-4 18:45:21 | 显示全部楼层 |阅读模式

本文包含原理图、PCB、源代码、封装库、中英文PDF等资源

您需要 登录 才可以下载或查看,没有账号?注册会员

×
小弟去年给外面公司设计了一台智能型阀门伺服控制器,在本地几个小站现场工作都没问题,今年开始投入生产。上个月,突然接到公司电话,第一批发给烟台、青岛等外地十几台全部不能正常工作! 吓出一身冷汗,这一批要是都有问题,损失可是将近10万阿! 现场的工程师反映回来的问题是:在实验室测试没有任何问题,一接到现场的控制线上,立刻死机,无任何动作,复位后程序正常运行,却无法接收控制信号的变化。因为实验都没问题,我怀疑是抗干扰的问题,但是不能很肯定,因为现场人员说只要出过一次死机问题的控制器,即使回到实验室也无法正常工作,这应该是又元器件损坏的表现,当然也有可能是程序跑飞后将EEPROM里面存储的校准参数冲掉了造成故障。
焦急的等待了一个星期,等到报废的一批产品寄回西安。
控制信号是4-20mA信号,用于控制阀门从全关到全开。CPU用的是C8051F005。因为内带了12bit ADC,外围的电路十分简单。见图1:
4-20mA信号通过R1(100欧),变成0.4-2V信号,可以被ADC直接采样。C1的作用是滤波。实验中采样非常稳定,加上我做了一个具有50Hz零点的数字滤波算法,对工频干扰抑制效果相当好。

样品终于回来了,立刻拆开检查,把仿真机接上,重新下载代码,故障依旧,读取EEPROM数据,正常。松了一口气,不像干扰造成死机。
加10mA信号测量100欧姆两端电压,只有0.13V!拆下R1,测得100.1欧姆正常。
再测ADC输入引脚,居然对地短路!!
因为有100欧姆电阻接地,不可能是静电或者串电烧坏的,猜测必然有大电流灌入。而100欧姆电阻是一个贴片,大电流应该烧毁阿!十几台设备的R1不仅都没有烧毁,连发黑的痕迹都没有。现场工程师反复测量过现场控制信号,完全正常,而且接入老式设备可以正常工作。

想了很久,终于想起来一个被忽略的细节! 因为许多设备不能停机,现场的控制信号是不允许断电的,也就是说,4-20mA控制信号在接入控制器的插座之前就是一直带电的。
我想到了电流信号开路,将会有比较高的电压,(一般会限制在24V)而现场控制线有200~500米长,上面的电容也不小了。插头相当于一个开关,接入前断开R1回路,接入后接通R1回路。见图2的等效电路
那么,在现场信号接入控制器的瞬间,相当于一个充满24V电压的电容通过100欧姆电阻放电!波形如图3,必然存在24V的瞬间尖峰。这个电压将被直接加在MCU的ADC输入口上。这么高的电压会引起IO口内部的泻放回路得导通。而泻放回路只能承受几十毫安的电流,于是这个尖峰电压将IO口的泻放电路烧毁,对地呈现短路。这一次冲击,引起MCU内部错误,所以表现出第一次加信号死机。ADC输入口烧毁,所以以后无法正确读取控制信号的值。
虽然滤波电容C1能起到一定的缓冲作用,但毕竟是一个独石电容,高频内阻很大,对尖峰削弱作用不是很明显。
在西安做实验为了方便,现场选的离控制室很近,十米不到,所以这个问题没有被发现。而发往外地的一批设备都离控制室很远。所以无一例外的全部烧毁。




改进后的电路如图4,增加了一个47K的电阻R2,即使存在尖峰,也被R2C2吸收了。即使仍有残留电压,有R2限流,单片机IO口的泻放回路也是完全可以承受的

因为少加了一只1分钱的电阻,造成了数万元的损失。虽然公司没有追究我的责任,但是,这一教训却让我感受深刻:作为一个电子工程师,严谨的设计思路和丰富的现场经验都是必不可少的。很多决定设计成败的地方并不是技术含量,而是细节!


15_3_9b655fed17430dc.gif
*滑块验证:
您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

QQ|手机版|MCU资讯论坛 ( 京ICP备18035221号-2 )|网站地图

GMT+8, 2024-11-23 07:50 , Processed in 0.064491 second(s), 12 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表