热插拔步进电机后DRV8812停止工作,是属于什么性质的保护?能否屏蔽?
DRV8812,用检流电阻配合参考电压的方式细分驱动,正常运行没有问题,但是在接通电源的情况下,拔出电机后重新插上,电机没电。通过控制sleep线让其sleep后再唤醒,可正常重新工作。如果电机电阻很大,电感很小,也可直接热插拔,仍能保持运行状态,所以我估计,是热插拔时产生的瞬间感应电流让DRV8812产生过流保护了。
这种情况,本来也属正常,但是今天碰到个棘手的问题,一个客户,他原来用的步进电机和连接线本身就有接触问题,但是由于他们原先用的控制板估计没有任何保护,或者保护电流更大一点,所以完全支持热插拔,就算电机连接线有接触不良,配合其他措施,居然也能瞒天过海,让人觉察不到任何异常。而我们的板,用了8812,根本无法接受热插拔,客户也看到了,只要轻轻碰一下电线,电机就掉电了,明显是接触问题,可是客户认为,别人的板能容受这种情况,我们不能,是我们技术有问题。我们说这是美国大厂的芯片,做得仔细,提供了保护,他们说这样的保护没意义,别人不用保护也没事。
我们有泪不敢哭,只能答应客户尝试屏蔽这种保护。但是现在我也不敢保证是否真的是过流保护,如果是,我打算做个临时应急方案,给8812的输出端接个电阻,相当于给步进电机强行并联一个电机,这样相当于没有热插拔,但是有多大可行性,电阻大小如何选择才能保证不会引起热插拔,心里没底。
还有一个方案,只能以后改板再考虑,就是不停的扫描nfault线,如果扫描到某个8812保护了,就立即拉一下nsleep或者reset线让8812重新工作。
这个事情,各位大侠怎么看?我记得有一款步进电机驱动芯片是明文规定不可热插拔的,型号是A开头的,自己也试过,热插拔电机直接就烧芯片,所以这个事情应该不是那么容易处理的。当然不排除一种可能,就是客户故意贬低我们,或者他们自己也搞不清楚那些线是否同一批。
输出加肖特基二极管试试吧
你可以检测nfault线,看是否进入了保护。别人家做的应该也是有保护的,只是在检测到正常以后重新启动了。
你好。你的基本分析是对的。
另外,对于输出端接个电阻,如果是并联不一定有用,原因是过流主要发生在电机插上去一刻,电机的等效电路为V=BEMF+L*di/dt+R*I,这里V是加载线圈两端电压,BEMF是反电动势,电机刚插上去,反电动势为0,所以此时电流变化最大。
如果是串联在输出,相当于人为增加电机内阻,选取适当值会有用,但是牺牲了能量和效率,也需注意电阻功率。
最后,也可以考虑用DRV8813,DRV8813和DRV8812是脚对脚兼容的,就是电流更大,保护点大概3A左右。
大家的思路都挺对的,这里再提供一种可能的方案,就是在out1和out2之间靠近引脚处装一个0.1u或者再小一点的电容。
热插拔的保护有可能是热插拔出现火花后线路感抗造成的,这样的话就可以被这个电容吸收。
经常在实验室里也可以热插拔电机没有问题,但是不同电机这个热插拔火花能量差异很大。客户这个可能是个极品
在每个输出对地加也是可以的,一般情况下一定不要超过0.1u,也许0.01u就够了。
谢谢各位的回复! Chunjiang Wu 说的二极管,应该就是续流二极管吧,这个或许有用,但是成本太高,又占地方,也难以在已有的PCB上改造。
谢谢 Garrick Dai 的专业解释,如果能确认问题所在,心里也有底些,我找一个合适的电阻先改造一下试试。
Jason Shen 说的可能性不大,我查过其他厂家,用8812的都没利用到nfault引脚。我们客户说的那些不会掉电的板,用的芯片是12V的台湾产芯片,引脚只有10个,估计也没那么复杂有nfault之类的引脚,可能是保护点电流比较高吧。
Wilson Zuo 说的情况也有可能,一台设备有很多电机,其他基本没事,就其中两个串联在一起的电机最容易出事。加电容也有考虑过,但是因为电机的参数各不相同,我们的产品还要买给其他客户,参数可能又不同了,这样可能很难用一个电容参数来应对吧。而且现在的问题还不是热插拔那么简单,是接触不良,就是频繁高速的热插拔。
说到并联电容,想起一件事,以前做过试验,用PWM控制风扇转速,风扇转不起来,就并联一个电容,电容太小没用,只能用电解电容,风扇倒是转起来了,但是电容热得要命,从此对在输出端并联电容的做法感觉没什么意义。
你可以试试,热插拔火花问题和接触不良问题是类似,这样的电容只是降低寄生电感高压的尖峰,这个会干扰到内部的OCP检测。如果假设成立,确实是这个原因导致的报错,那就是会是立竿见影的效果,对不同电机都是适用的。这个和你说的风扇PWM不是一个问题,这个电容也不会引起明显的负载特性变化。
不行,我这是步进电机,128细分驱动的,试了一下,如果电容0.1u,直接就过热保护,应该相当于短路了。如果电容0.01u,根本不起任何作用。而且加了电容后,噪音也增加了。
哦,你是用外部PWM细分驱动这种方式,这样0.1u的电容是太大了。从PWM到电机电流应该是做开环的吧,这样有可能是是确实换了电机以后产生过流了。芯片的电流限制功能有没有用上,就是Vref到Rsense这套闭环有没有做,这样可以防止在电机端阻抗减小时,电流快速上涨产生过流。Decay推荐用mixed decay或者fast,slow decay可能出现针对直流电阻小的电机,电流得不到有效控制的问题。
就是用Vref和Rsense做细分驱动的,Rsense是2欧姆,理论上电流最大不会超过330mA,但是没用,手册上说,过流保护和Vref这个回路是独立的,具体我也无法理解。如果是独立的,那么和decay也没关了。