Simulating TVS diodes in LTSpice

Hi all,

I've added some TVS diodes into a circuit of mine in LTSpice, which did not behave as I expected - so I decided to simulate them by themselves to see if I'm doing something wrong.

I've just shunted a TVS across the supply (which is set as an exponential voltage pulse), with a TVS that has a maximum clamping voltage of 45.4V, yet the voltage still rises much higher than the max clamping voltage. Adding series resistance (1 ohm or so) to the voltage supply makes very little difference.

The TVS is conducting current, as you can see in the traces. Even if I delete the TVS, the output voltage remains the same. So, what am I doing wrong for this to happen? Simply using an unrealistic series resistance value?

Many thanks in advance.

A pure voltage source has zero impedance, nothing short of a short will affect its voltage, and it will
source any amount of current as required to hold that voltage up.

You must model the internal resistance of the supply before the TVS to get anything meaningful.

I thought that was the case - so say I was simulating an automotive supply line, the internal series resistance of a typical automative 12V battery is around 70mOhm at cranking current. Adding such series R hardly changes the sim, so I see perhaps only one issue - does the series R of the battery varies significantly depending on current draw?

How would I go about modelling a battery charged by an alternator then?

The series resistance of an alternator is widely accepted to be 0.5 - 4 ohms (can easily be calculated, 1.5ohms in my application), so would the total series resistance be? The parallel resistance of the alternator and battery combined? Or more just the alternators resistance? As say a 200A alternator supply 150A at 14.5V, clearly a battery couldn't supply 150A at 1.5V.

Also, what could be the reason for a simulation going from nearly instantaneous with series R of less than 100mOhm, to seemingly never ending with series R of around 1R?

jtw11:
I thought that was the case - so say I was simulating an automotive supply line, the internal series resistance of a typical automative 12V battery is around 70mOhm at cranking current. Adding such series R hardly changes the sim, so I see perhaps only one issue - does the series R of the battery varies significantly depending on current draw?

Yes a car battery has very low internal resistance, but that's not the source of a voltage transient, so
its not the right model. You need to find out about the characteristics of the alternator and regulator.

Often what happens with car batteries is corrosion of the terminal posts so that the effective internal
resistance rises and spikes from the alternator and other motors start to grow larger. Also the stray
resistance and inductance of the wiring harness will reduce the effectiveness of the battery in suppressing
spikes.

Removing transients from automotive supplies usually involves several measures, RFCs, LC filter, TVS...

Thanks for the reply - yes, I've had another thread open recently regarding my filtering - that deals with actively clamping positive and negative transients using the LT4356 IC and a host of BJTs, MOSFETs and diodes etc, but the input to the whole circuit just needs a TVS too to prevent the input going higher than 100V or lower than -60V, as these are the absolute max values of the LT4356 chip.

Simulating for load dumps would be just the series resistance of the alternator, which is easy to calculate - Infineon have a good app note about this. The other transients as you say seems to be the more difficult part to find the series R for, and of course parallel C as the harness is the culprit in this.

ISO7637 gives 5uH for series inductance, <5mA for internal resistance - and parallel harness resistance of 50R and .1uF capacitance - these numbers should be suitable for most of the transients - load dump exluded of course.