Is this a valid approach to determine if a TVS is working within spec? - Page 1
Forum section: electronics / projects

author: Psi
author_rank: Super Contributor
timestamp: December 12, 2022, 10:30:58 am
content: So I'm trying to find a way to determine if a TVS is appropriately sized without needing to actually measure the current going through the TVS. Since that is super hard to do without making a special PCB spin with I sense resistors and Isense amps on each TVS.Currently I'm using a TVS that I know is way to big.So my question is:Can you determine if a TVS is being used within spec if you know- The length of the pulse it has to absorb (and pulse repeat rate)- The max voltage seen across the TVS when clamping this spike (eg, to check it's under the max clamping voltage in DS)My assumption is that "if the pulse is short enough and doesn't hit the DS max clamp voltage then it must be within spec"But i don't know if my assumption is correct.

author: Berni
author_rank: Super Contributor
timestamp: December 12, 2022, 10:51:43 am
content: The easiest way is to design the circuit around it so that it is more predictable.Most of the time TVS diodes are protecting input or output signals. So extra series resistance can often be added to that line to limit the size of fault currents, yet not affecting the functionality of the circuit. As a bonus very large overloads will burn most of the surge energy inside the resistor, giving the diode (and the circuity it protects) a better chance of survival. Even better if there is also some series resistance between the TVS diode and the chip it is protecting, this ensures the chips internal diodes never experience a large surge.When it comes to power supply lines things are more difficult since any amount of extra resistance would cause voltage drop. For that i just tend to use the biggest TVS diode i can put in there.

author: jonpaul
author_rank: Super Contributor
timestamp: December 12, 2022, 10:54:15 am
content: TVS spec¿ application? schematic ?j

author: Psi
author_rank: Super Contributor
timestamp: December 12, 2022, 11:43:29 am
content: The TVS are directly across mosfets to protect them from inductive kickback over their max Vds.The kickback is from a 12V DC motor that gets disconnected by the mosfets at motorstall/overcurrent trip (which is around 150A)Currently there are 2x 3kW SMDJ20A TVS diodes across a bank of 3 mosfets.

author: jonpaul
author_rank: Super Contributor
timestamp: December 12, 2022, 12:48:41 pm
content: Rebonjour Cher monsieurWe worked with TVS mfg and broadcast equipment as as Furman Sound decades agoseveral specs, rated V for no current, max energy, power dissipating, clamping V at max I etcSélection is Depending upon the energy stored in the motor or load, and MOSFET spec, series inductance of TAZ, PCB, etc.Suggest you search the old app notes and papers from General Semiconductor and in power electronics magazines for TAZ care and feeding.My simple minded testCarefully place wideband 10X probe across FET DS. minimize ground clip loop LRun worst case, max load, max ambient, allowing unit to stabilize temp.( FET and TAZ will be temp dependent)See the FET peak in worst caseNow, turn off, immediately discharge if HV bus involved, temp check TAZ.IR probes not accurate, we used #36 AWG type K TC bonded to the TAZ.just the ramblings of an old retired EEBon chanceJon

author: mag_therm
author_rank: Frequent Contributor
timestamp: December 12, 2022, 01:51:26 pm
content: While not precise, you could get an approximation by measuring the stalled motor current and the voltage on the switch/TVS combo.The current has to go somewhere and the transfer to the TVS will be near its ON voltage, if the circuit inductance is low.Here is a similar example (snubber diode, not TVS).https://app.box.com/s/49fln6zqtxz5qqe92k82lh85ipmrd813Yellow voltage trace is IGBT switch off, and snubber diode conducting.Snubber diode is on for about 100 ns. I put the dotted cursor approximately where the diode takes over from the IGBTBlue Current trace I = 2.6 Amp and fallingRed Power trace is instantaneous power, about 30Watt pk at 14 nsAverage snubber power/pulse , just by eye, is about 15 Watt for 100 nsAccuracy could be improved by downloading a csv and integrating numerically in spreadsheet.

author: Siwastaja
author_rank: Super Contributor
timestamp: December 12, 2022, 02:51:21 pm
content: Quote from: Psi on December 12, 2022, 11:43:29 amNormally, freewheeling the motor is done using a diode (offering path for the current). Finally the TVS idea also offers path for the current, but at much higher voltage, which means much higher power loss.Is there some reason not to do it normally? I mean, freewheeling through a diode means the inductively stored energy is "dissipated" in the motor itself, and not just dissipated into heat, but used to sustain mechanical power generation (i.e., - current ramps to zero by slope dI/dt = V/L). TVS instead of normal diode just makes this slope faster.I can theoretically see how one would want to absolutely minimize the duration from a "stop" command to actually stopping generating torque, but it's still very short, even if you freewheel normally with a diode.In context of relays, one does want to avoid using a freewheeling diode and use a TVS instead, because the mechanical slow-down of even just one millisecond is enough to make contact arcing worse. But motors? I don't see the point, because any mechanical inertia is orders of magnitude larger than the "electrical inertia".And as any motor controller already must have a path for the current, i.e. the diode if not a synchronous design, nothing needs to be done.Seems like a classic X-Y problem. "I need to use a TVS", when the real problem is "I am designing a motor controller", no? Are you sure you are not just misidentifying the problem? The voltage spikes you see might be from the inductance of thelayout. Motor inductance is no issue because current is steered by the diodes (or body diodes of synchronous MOSFETs), but any layout inductance, while orders of magnitude less than motor inductance, needs to be handled by snubbers and/or clamps, but of course first make the layout tight and don't underestimate the importance of DC link capacitance. Maybe post a picture of the layout?

author: mag_therm
author_rank: Frequent Contributor
timestamp: December 12, 2022, 03:40:43 pm
content: See reply #3If Psi is disconnecting motor (ie switch OFF) with MOSFET during overload , the body diode won't conduct.

author: Berni
author_rank: Super Contributor
timestamp: December 12, 2022, 03:49:25 pm
content: This is indeed an unusual use of a TVS diode.As others have pointed out a freewheeling diode is more common on motor controllers. When PWM is used at large currents this diode is often replaced with a MOSFET too in order to reduce the voltage drop, turning into the typical half bridge output stage. That setup is also inherently safe if the bottom transistor does not turn on since in that case the low side MOSFETs internal body diode will work as a freewheeling diode.If you do want to estimate the amount of energy here you might measure the motor on an LCR meter like an inductor. Then use the values in a SPICE simulation of your motor controller to see what it does. Be sure to include the cables that connect the motor, since loose wires running long distances can have a lot of loop area and so have a fair bit of inductance themselves.

author: tszaboo
author_rank: Super Contributor
timestamp: December 12, 2022, 04:09:38 pm
content: First, select the standard that you want to pass. Like IEC 61000-4-2 discharge levels. Then use a mfg with some knowledge about these, like Littelfuse to select your approximate watts that the TVS needs to have for each level. Then you are free t select an alternative for those parts. I wouldn't worry about the current ratings TBH they are all made up anyway.

author: Siwastaja
author_rank: Super Contributor
timestamp: December 12, 2022, 05:19:50 pm
content: Quote from: mag_therm on December 12, 2022, 03:40:43 pmApparently he lacks another switch (diode, or another MOSFET with body diode); schematic-wise, across the motor terminals (although not physically at the motor, but forming a tight loop with another switch and DC link capacitance). This is the normal solution to the problem.Efficiency-wise, 12V motor controller benefits from synchronous design (two MOSFETs) even if regen braking is not needed. But if the thing is driven at high duty cycles most of the time, then normal diode is just fine, too.

author: Psi
author_rank: Super Contributor
timestamp: December 13, 2022, 10:09:01 am
content: Sorry, forgot to mention in previous post. This is an H bridge. The TVS diodes clamp each mosfet block from exceeding it's Vds but also shunt the kickback onto VCC / GND where other another TVS across VCC/GND clamps that to a safe voltage.In any case, the main issue i have is not knowing what the peak current through the TVS is. If I knew the peak current I could spec a TVS for it instead of over-specing.Any method I can come up with to measure the current, like soldering the TVS on the PCB with an Isense resistor in series, would reduce the current flow and not give me a true reading.

author: mag_therm
author_rank: Frequent Contributor
timestamp: December 13, 2022, 03:36:38 pm
content: Quote from: Psi on December 13, 2022, 10:09:01 amPut a current probe on the motor, then lock the rotor.The current in TVS can't be any more than the source current.

author: Berni
author_rank: Super Contributor
timestamp: December 13, 2022, 06:23:14 pm
content: When you have a MOSFET full/half bridge you already have TVS protection in the form of the transistors body diodes.The diodes happen to end up in a configuration that clamps the output voltage to be near the power supply rails. Activating this diode doesn't damage the transistor, it is just usually not desirable to use it since real diodes can be lower drop and faster switching. They even work like zenner diodes once you exceed the rated Vds, so the transistor won't just blow up, just start leaking lots of current and clamping down the voltage. It only gets damaged if this current is large enough to cook the transistors with heat.Even if you suddenly turn off all transistors during high current trough the motor the inductive kickback will turn the body diodes into effectively freewheeling diodes in there forward biased direction (so small power disipation). In the case of a full H bridge this would charge the DC bus capacitors slightly. So even if you have TVS diodes they would not actually reverse conduct, just act as rectification diode sometimes, a schottky diode performs that job better.To actually cause a failure you would need to grab the motors shaft and spin it up to multiple times its rated RPM. This would cause the motor to act as a generator and charge up the DC bus capacitors to a point where the supply voltage becomes large enough to start blowing stuff up. But if you select transistors with a high enough Vds you will actually cause the capacitors to explode, fry all the other electronics on the supply rail due to overvoltage. Perhaps in the process also damage the motors commutator and brushes or even make the rotor explode from centrifugal forces. Yet the transistors would still be alive.

author: thm_w
author_rank: Super Contributor
timestamp: December 13, 2022, 10:51:30 pm
content: Quote from: Psi on December 13, 2022, 10:09:01 amSolder in a tiny loop of wire and then use a current clamp or current transformer.Or sense resistor could work if its low enough, they make them down to 1mR or less.

author: T3sl4co1l
author_rank: Super Contributor
timestamp: December 13, 2022, 11:54:40 pm
content: Oh, is this the three(?) leg motor (winch? starter?) driver thingy again? The duty cycle is low because it's not PWM, it's strictly manual on-off, something like that?So flyback is clamped by the bridge into the supply rails, which then connects that inductance in parallel with whatever supply inductance is, between the module and wherever the low impedance source is (battery?).So, just some uH I guess?Yeah, use the inductance, current and clamping voltage (minus max source voltage) to determine pulse width, current and clamping voltage to determine peak power, and use the pulse rating or transient impedance curve to determine rating in this condition.There was a bunch of them effectively in parallel, right? But because they're local to the transistors? Mind that the loop inductance between them also matters, in the same way as the above parallel equivalent, but this time due to current (im)balance between transistors or switching legs, and the stray inductance of those (PCB layout sized) loops. The peak current there, may be harder to figure out (there's multiple loops, and current spreads out among them over time), and the initial imbalance may require higher ratings even though the total rating is more than sufficient.Tim

author: Siwastaja
author_rank: Super Contributor
timestamp: December 15, 2022, 12:00:29 pm
content: Quote from: Psi on December 13, 2022, 10:09:01 amDoesn't change anything; in a H bridge, there always is path for the motor winding current through the MOSFETs (if driven ON), or their body diodes (when driven OFF). Energy stored in the inductance of the motor is freewheeled by these diodes, it just happens for you, no need to do anything.Any "kickback" is from layout parasitics, not from the motor! This is why we need to see the layout to assess the problem.Between Vcc and GND, a TVS may be advisable because the stored energy goes there, through the diodes. Though, I have just always used enough bus capacitance to do the same. As you know the maximum motor current, and the winding inductance (if not rated, you can measure it), you can calculate stored energy per E = 1/2 * L * I^2. Then given the bus capacitance, you can calculate voltage rise by E = 1/2 * C * U^2, where U is the rise in voltage under worst case (disconnection of input battery/etc. at the moment of maximum motor current).Forget the concept of motor causing voltage kickbacks over the switches and you having to clamp them, it's totally wrong. Something else is going on, e.g. bad layout.Then there are two more relevant items:1) regen due to driving the MOSFETs actively - even at low RPMs, the thing can generate high voltages on the Vsupply, if there is nothing to consume it. Solution: measure input voltage and stop driving MOSFETs instantly when overvolting2) inadvert regen due to exceeding maximum design RPM. This happens even if the thing is powered down. A permanent magnet motor generates a voltage (back-EMF) linearly dependent on the RPM. Say if the motor runs at 3000 RPM at 12V with no load, this means it will also produce 12V when rotated externally at 3000RPM. If you apply external force to make it run at 6000 RPM, then it will produce 24V. Not only the MOSFETs, but everything connected to Vsupply sees this voltage (minus diode drops), as it is rectified by the body diodes.Inertia causes such "external" rotation, too, but obviously if your circuit made the motor run at X RPM, then if you only have inertia and no external forces, the RPM will ramp down and generated voltage can't exceed what you already had in your Vsupply.There is no easy solution for the latter; such external mechanical force can be so energetic that any reasonable bank of TVS won't cut it; you need to design an active clamping circuit, say with beefy resistor bank + TL431 or comparator driving it. Or, you can just overdimension all the relevant parts to, say, 30V and then specify "never run at over 5000rpm". Usually motor controllers are not designed to take whatever unlimited external rotation.QuoteIf choosing to not use DC link capacitace for the "input disconnect" worst case and letting TVS to handle most of it, peak current through TVS is simply the maximum motor current; current decays linearly by the slope dI/dt = V/L.For the TVSes over the MOSFETs, energy should be small because you are just clamping the parasitics of the layout, maybe in a few tens of nH, not hundreds unless colossally bad layout. Peak current is still the motor current, but pulse is very short, like 100ns or so. Also take a look at RC snubbers, it might be better fit, especially if your application is 0% vs. 100% duty cycle one as I understood from some other comments (so power dissipation in snubber is not a problem). But first and foremost, tight layout and don't forget bus capacitance.

author: Psi
author_rank: Super Contributor
timestamp: December 16, 2022, 04:05:24 am
content: Thanks everyone.hm.. I think I need to do more testing to understand exactly where the current is going and which TVS/Caps are required in the circuit vs what ones I added 'just in case'

author: Siwastaja
author_rank: Super Contributor
timestamp: December 16, 2022, 05:36:21 pm
content: Quote from: Psi on December 16, 2022, 04:05:24 amIt's pretty hard to test&measure! I went that route over a decade ago. All you see are ringing voltage waveforms; that ringing coupling to every node (so you don't know what's the actual culprit), circuit nodes where non-disruptive current measurement is hard to add, and so on.So definitely do more testing, but couple that with reading, and using your brain. Study the schematics. Motor current is simple: it always has a path in H bridge! Devil is in the details, however, like the diode forward and reverse recovery times, short circuit currents caused by reverse recovery, parasitic capacitances of the MOSFETs/diodes, and of course, parasitic inductance of the switching loop (capacitor - switch - switch - back to capacitor).Motor only sets the stage by offering a fairly stable current (a lot of inductance - current changes slowly) that is easy to control in triangular shape. Rest is parasitics.