programmable circuit breaker

Mar 05, 2025 Last reply: 1 year ago 23 Replies

We're designing a modular power system and figured we should have a relay module, and my PCB layout guy is fast so I decided to whip out a simple module.



Featuritus kicks in. We normally measure voltages and currents, so the next logical step is to make it a programmable circuit breaker too. That also protects my relays and PCB traces, to some extent.



So how might a user program a circuit breaker? Just RMS current with some time constant? Allow fast and slow trips?



Fuses are usually specified to trip at some I^2*T, but that can't be the whole story, because 1 mA is a lot of I^2*T in ten years.



And my current sensor saturates. If the module is specified for 7.5 amps, and the 10-amp Hall sensor saturates a bit past 12 amps, so a zillion amps looks like 12 so the I^2*T math doesn't work at, say, 30 amps.



Sine waves sort of work if they don't clip too hard. Luckily, sine waves are kinda flat on top.



So I need a trip algorithm. That will be executed in an FPGA that sees a fast ADC that is digitizing the Hall sensor output.


Aren’t fuses specified by minimum carrying current? So a 1A fuse is guaranteed to carry 1A forever and reacts I^2t only above that.

I guess your current sensor should remain monotonic upto the maximum possible current your supply can generate?

Nah, that’s way too normal and prudent. ;)

First off, obviously you want a conventional fuse sized to prevent the thing catching fire if something fails. Having an upstream switching supply kick off at about the right point helps a lot too.

You can certainly estimate the dissipation when the sensor rails, but it requires making some assumptions about the current waveform.

For a start, I might try identifying anomalous cases e. g. an overvolted transformer saturating, and cut those off when the sensor rails, regardless of I**2t.

If the load is linear- looking, it may be reasonable to assume the current is sinusoidal, and curve-fit the part that stays onscale.

I’ll also put in a plug for my second-favorite method for fast temperature measurement: cut out a little niche inside the thermal pour, right next to the active device. Put an 0603 thermistor with one end on the pour and the other on a skinny trace to whatever you’re measuring with.

If you avoid the temptation to something more convenient that looks similar, this trick will give you 100-ms thermal time constants, which is good enough for many interesting things. (Which possibly includes protecting power FETs from melting before the fuse blows.)

Cheers

Phil Hobbs

[...]

Automotive fuses are specified by blowing current (whatever that means) but domestic fuses in the UK are specified by continuous carrying current.

Then you have slow-blow types with extra thermal mass in the element or low-melting-point alloys with a spring to pull the components apart, quick-blow types and high-rupturing-capacity types (often filled with sand to quench the arc). Some industrial and telecomms fuses have indicators to show they have blown - usually a flag that flips up or a thinner fuse wire along the outside of the cartridge that can be seen to have melted. The flag can also close an alarm circuit.

Fuses ain't simple.

I'm a relay, and I can't control whatever a customer wants to switch. He might try to short a monster battery or something by mistake.

I figure that my electronics can open a relay faster than any fuse can respond, and a user won't have to replace a blown fuse.

Here's my circuit:

formatting link
Maybe I shouldn't diode clamp the relay coils. I'll have to test the dropout time.

Somebody should make a part with a resistor/current shunt and a temperature sensor inside, an electronic resettable fuse. I've used some IC e-fuses and they are flakey.

It seems essential to have enough headroom in Hall sensor(s) to see past the setpoint. Maybe two sensors, one for precise, long-duration control and a second for transients with lower resolution. If the first goes to zero, look at the second. If it's not zero too, trip.

One could also use dI/dT to anticipate things going wrong and using that as a sort of "pre-warning" signal. This invites nuisance trips, so it would require some amount of filtering.

bob prohaska

[...]

Put a resistor in series with the clamp diode, the value can be chosen to keep the inductive spike just below the maximum allowable voltage and that will give the fastest turn-off. By using higher voltage switching transistors you can have a higher voltage spike and a faster turn-off - but there is the risk that the spike might be capacitively coupled to somewhere vulnerable to damage.

I'm using

MONOLITHIC POWER MCS1802GS-10-Z

partly because we have them in stock. It's officially a 10 amp part and clips a bit above +-12 amps, so should be OK to protect a relay channel rated for 7.5 amps.

I'm thinking of doing two RMS current calculations. A fast, maybe 1 ms calc, with a fixed 10 amp trip. And a user-programmable trip, 1 amp to

8 amps, selectably fast or slow. Something like that.

Those little mosfets avalanche reliably. The only hazard would be rapid cycling causing too much power dissipation.

The resistor is a good idea. Or clamp to some giant shared TVS zener.

I guess I need to measure some relay dropout times.

The question seems to be how fast the current can rise to saturate the sensor. That would depend on the entire circuit. It might be predictable in your case and so adequate for your situation.

I'm not sure it'll recognize a fault induced by somebody probing the circuit and accidentally shorting something. That's when a dI/dT or other independent sensor would be helpful.

bob prohaska

I assume that a current overload will have zero risetime. A relay contact closing can actually generate picosecond edges.

I'll be digitizing each Hall sensor current at 50k samples/second, and probably doing some FPGA lowpass filtering. An RMS calculation inherently lowpass filters.

Don't do that.

formatting link

Or even just a resistor and no diode! The extra few percent current consumption is often not a problem and a resistor is very reliable, more durable than a diode.

It'd be interesting to know what the device does when exposed to a burst of out of band AC. Figure 9 implies a well-behaved rolloff, for which 50ksamples/sec is likely to reveal an overcurrent trend before saturation. If that's true the warning ought to be adequate.

8-)

If you're saying probe slips are beyond the scope of your design it's understood and accepted. Are you anticipating a manual reset?

bob prohaska

It will be a module that goes into this box:

formatting link
and operation will usually be from some computer. We'll also allow operation from the front panel, but that's mostly for setup and testing.

Either way, users can open and close relays, declare trip rules, measure voltage and currents, and reset trips.

I tried a BSS123 logic-level mosfet driving my 12-volt 33 mA relay coil. It avalanches at about 120 volts and runs cool at 20 Hz.

I'l let it run for a zillion cycles, but it's noisy.

formatting link

When I tried a similar experiment I found that there was no significant improvement in relay opening time once the flyback reached 5 times the operating voltage. Maybe a 50V mosfet that avalanches at about 60V would achieve the same benefit but with less noise. There are mosfets intended for automotive fuel injector drivers that are rated for repeated avalanche operation.

John

Ah, got it. Lab environment, skilled users. I was thinking production floor or worse yet, a consumer appliance 8-)

bob prohaska

On 3/4/2025 9:06 PM, john larkin wrote: ...

I've designed an electronic circuit breaker using Linear Technology (now Analog Devices) hot swap controllers. It looks like they offer some products with a programmable current limit.

I'm not sure if you can change the circuit breaker time delay though.

I used a TI e-fuse chip in one product. TPS26600. It liked to blow up. Being a nasty power-pad chip, it was very hard to replace.

AP22652 is cool. We use it to current limit the power into pulse generator output drivers.

On our relay board, we'll have a Hall effect current sensor driving a fast ADC, and the shutdown will be FPGA code, so we can do most anything.

or just diode to the 48V supply

Join the Discussion

Have something to add? Share your thoughts — no account required.

Didn't find your answer?

Ask the community — no account required