In many microcontroller projects we need to control loads such as relays, bulbs or motors. From microcontroller side we simply send signal that turns device on or off. Microcontroller normally don’t care whats going on further – is load switched on or is it failing. Of course we can build feedback and read voltage from sense resistor and then switch load off in case it draws too much of current. But sometimes relying on microcontroller to work reliable when it can hung due to overload conditions is not accepted. We need to use passive methods of protection. Few additional discrete components can make a big difference. Anthony suggests transistor based overload protection circuit which in normal conditions doesn’t doesn’t do anything. But once current exceed the limit, it shuts off switching MOSFET transistor immediately and thus probably saving the rest of circuit from frying.
One simple solution is to use NPN transistor which base is connected to load current sense resistor. It value is selected so that voltage drop on load threshold current would open transistor and thus tie main switching transistor gate to ground. Such circuit breaker responds pretty fast. Initial tests show that it takes less than 150ns to respond. The main downside of this circuit is that once shut it tries to switch load again and again even if it’s failed as long as control signal is “on” from microcontroller side. In this case Anthony suggests using latching circuit made of NPN and PNP transistor pair. In that case in order to restart load microcontroller needs to switch control signal to “off” and then to “on” to switch load again. If you feel that there is a chance of failing of load circuit – additional safety feature wouldn’t hurt.