首先阐述一下这个问题的由来。
我们知道固态输出现在一般都有电流限制,我们很轻松的可以解决硬短路的问题。
硬短路是指负载电阻非常小的时候,表征直接短路的这种状态,这个时候无论是LSD还是HSD,内部都有电流检测单元,因此很容易的将这个保护启动了。
真正的麻烦在于软短路,软短路是所谓的过载。因此我们比如在考虑120%或者150%过载的时候,不可能采取硬件电流检测保护的手段,这里有两个原因
1.电流检测精度有限,容易将最大电流和过载电流混淆,特别是输出电压在变化的时候,我们知道很多负载的电流实质上是与电池电压相关的,因此如果做这个算法,硬件是很难完成的
2.瞬态电流的问题,这个问题在于。启动的时候灯负载和电机负载有瞬态电流,这个值很大,但是我们必须提供这个电流以保证负载的正常启动,否则就会出现操作中断的严重情况。
灯泡的瞬态与稳态电流
因此,我们的IC供应商在万般无奈之下,在内部采用了热保护。也就是
温度高于一定值=>关断=>温度低于一定值=>开启=>继续过载,温度上升
一般IC厂商能保证HSD/LSD在10000次~100000次的热保护状态下不坏,不同的厂家不同。不过如果没有额外的单片机处理并施加保护策略,可能不需要很长时间的过载,整个输出芯片就坏了。
以上的只是一种具体的概念,想要做到保护策略,LSD,HSD甚至是RELAY都可以。
我们的可以进行短路行为的认定
HSD/LSD有数字诊断和模拟诊断,这都没有关系,我们设定一个短路阈值和时间阈值,比如50ms内,做短路的判断处理:
数字短路就是用计数器,如果得到短路信息则计算器+,得到正常则计算器-,达到一定的情况就认为短路,将电流通过计算得出以后,判断是否过流,因为误差较大,因此需要设定一定的阈值。
在发现一次“真正的短路”以后,我们的软件则必须将输出关闭,这样就彻底的完成了输出保护,当然我们也要考虑一些额外的问题,短路保护以后,强制关闭对应的输出。如果“真正的短路”发生以后,是否需要考虑多次“真正的短路”是否对电子模块产生影响。
以我的了解,在考虑这个问题的时候
需要设定一个总数3N
在第一个N次数内,考虑一种复位方式,这时候一般是模块的使用前期。
在第二个N次数内,考虑更为苛刻的复位方式,这个时候模块工作时间往往较久,需要检测的东西较多。
在第三个N次数内,模块已经到了寿命的末期,需要确认是否模块的输出已经坏了。实质上,这个寿命是与IC的寿命息息相关的,如果选用好一些的IC,可能策略可以做得简单一些。如果成本压力大,还是需要细细去折腾的。