Modelling a fuse in PSIM is an extension of modelling a variable resistor. We use can use a controlled current source and Ohm’s Law, V = IR, or V/R = I. In this way we just need to define R = f(x,y,z, etc). For a fuse R will either be a nominal on resistance or an open circuit modelled by a very large impedance. For our fuse model the complexity is to figure how long until the fuse blows given an overcurrent condition. Lets have a look at these fuses from littlefuse, this is a link to the 466 series of fuses. This figure shows us what we need to model.

This portion of the model is modeling the variable impedance of the fuse, we are measuring the voltage across the current source then using the math block to do V/R = I. The two inputs to the math block are voltage and resistance.

Don’t forget to define the partial derivatives. You can see the output of the math block directly maps back to the current source. Lets now understand how R is developed.

The resistance of the fuse is modelled by this math block you can see that it is an conditional logic if else statement. If the input “x” is >= 1 then, the output “R” is 1Mega Ohm, else R = 0.019 Ohms or the nominal on state resistance, in this case of the 3A fuse.

In this model the fuse can have two possible states: blown or nominal. The fuse will blow is a fault current is applied for long enough, that time to blow also needs to dynamically change if the fault current changes during the fault event. There is an elegant way of dealing with this, if we integrate “1” we get the value of 1 in 1 second, if we integrate 1/500m we get “1” in 500ms, 1/100m in 100ms. Shown by the simple demo below.

The integrals have a time constant of 1 and a limit of 0,1.

So we can use this with 1/(time to blow) and we will get a dynamic adjustment of the blow time to changing fault current.

The lookup table is the curve I vs time from the datasheet, add negative current values or use an abs on the input as the fuse is bidirectional. You can easily trace the curve with our curve import wizard. This math block has conditional logic the outputs a “1” or “-1” based on the overcurrent value for the 3A fuse of 5.1359 Amps. If we are in overcurrent the output is 1 and nominal is -1. Notice the use of the abs(x) for the bidirectional nature of the fuse.

We take the 1 or -1 to the next math block and we can see if we are in a fault the output of this math block is 1/(time to blow) if we are not in a fault current the output is -1/(time to blow). This output goes to the integrator, the integrator has limits of 0,10. The upper limit is arbitrary, it just needs to be above 1. The lower limit of 0 is how we are implementing a soft reset or cool down of the fuse when a fault current was applied and then releases. During fault it is accumulating when it is not in fault, we have a negative number on the input so it will slowly go back to 0, the lower limit.

This last part of the circuit is a latch to latch the fuse “blown”

You might also be interested in: