I'm working on a project that is clearly showing me that power electronics is a completely different beast.

We have a 5HP motor running on a 120Vdc battery. The motor is installed about 100ft (30m), away with big cables. At the moment the motor turns on it peaks at about 180A, then is rests at about 44A. I'm looking for a way to limit the startup peak at about 70A.

Following my first idea, I've chosen a 150A IGBT and a magnetic loop current sensor, like this:

enter image description here

Close to the motor, I have a high current freewheeling diode, and on the IGBT I have a RCD snubber with 1uF capacitance (seems small to me but here, I see that the rule of thumb is 1uF per 100A...).

My control is simply to turn on until the current sensor rises to a top limit then turn it off for a fixed amount of time and repeat... At some point it will work on forever without tripping the top limit. The motor should remain on for only a few seconds and then go off, so things should not get too hot, hopefully.

While projecting and layout-ing the board for this "simple" project I've realized that a lot of things can go wrong.

Does someone see something I'm missing? I do not have boards yet, so never tested the circuit, but, after seeing a lot of people having problems with IGBT dealing with much smaller currents I am already thinking that I should stop and study more before going ahead with this approach.

Another new idea is to turn on the motor with a high power resistor in series to limit the current for a few mili-seconds and then short the resistor with an SCR. But I feel I'm simply changing monster's name (is an SCR simpler to tame than an IGBT? I don't know...)

Also found the CS8312, IC. Maybe replace its serie resistor current sensor by my loop current sensor?

And, no! I'm not asking for a ready solution, just like to hear a more experienced opinion on what I should study to have a reliable solution.

  • 1
    \$\begingroup\$ You need to figure out at what duty cycle and frequency your IGBT can switch with acceptable losses, and base the way you control it on that. If you try to let the circuit create its own hysteresis, you don't know what frequency you'll get and how it'll switch. What you want is for it to switch hard on and hard off very rapidly to reduce switching losses, and to keep your frequency low enough that the time it spends switching is insignificant to the time it spends conducting and not conducting. \$\endgroup\$
    – K H
    Jan 22, 2021 at 5:04
  • \$\begingroup\$ You probably mean 30 meters away from the battery and not 300? \$\endgroup\$ Jan 22, 2021 at 5:27
  • \$\begingroup\$ @LarsHankeln You are rights, thanks. \$\endgroup\$ Jan 22, 2021 at 5:46
  • \$\begingroup\$ @KH, agreed! Most formulas I see depends on load inductance plus wiring inductance... I do not have this information... and I believe it is not constant anyways. My IGBT have a Vce voltage of about 1.8V when saturated. This means about 80W! Seams too much even with fast transition time as your suggest. Not sure IGBT is the best choice here... \$\endgroup\$ Jan 22, 2021 at 5:59
  • \$\begingroup\$ Low voltage would allow the use of a mosfet rather than an IGBT. One of your best and most expensive options is a commercial VFD. There may be other benefits to using a commercial unit like not being sued, depending on where you live. \$\endgroup\$
    – K H
    Jan 22, 2021 at 6:04

3 Answers 3


You have the freewheel diode in the wrong place (or at least as greybeard points out in comments, you don't have a diode in the right place). One should be connected right at the IGBT and power supply, even if there's another one at the motor. The inductance of those leads to the motor could be significant. You want to protect the IGBT against current changing in the sum of the motor and lead inductance. The snubber is designed to protect the IGBT against current changes in only the incidental and unavoidable lengths of wire around it, that's why the capacitor is so small.

Note that the motor, and the leads to it, will maintain a more or less steady current, due to their inductance. When the IGBT is on, current flows through PSU, IGBT and their connecting wires into the long motor leads. When the IGBT is off, current flows through the freewheel diode into the long motor leads. It's the inductive voltage generated by the changing current in the PSU - IGBT- freewheelDiode - PSU loop that will damage your IGBT. First make this loop as small, or at least as low inductance, as possible. Second, put the snubber right on the IGBT to mop up the remaining voltage spike generated by this loop.

  • \$\begingroup\$ (First thing I thought seeing the schematic. That diode may may come with the motor as may suppression capacitors.) Just leave one diode with the motor (conductors may break), and be sure to have a low ESR capacitor and a 'fast' freewheeling diode close to the switch. \$\endgroup\$
    – greybeard
    Jan 22, 2021 at 6:56
  • \$\begingroup\$ Yes, totally agree with the diode in the wrong place (or missing one more diode). Thanks! \$\endgroup\$ Jan 22, 2021 at 21:51

There are two different types of IGBTs, those with integrated intrinsic diode and those without it. From your link of snubbers, the used IGBTs do have the intrinsic diode, while yours is depicted as without it. Further, the diode is has a wrong polarization as from the link.

For driving such large IGBT you would need an appropriate IGBT driver and a chopper circuit with current feedback.

I don't know if the snubber is necessary, you can add it at later time.

enter image description here

The photo represents a brake chooper, used in large power VFD. The square area with a part named Concept is the isolated gate driver. Big holes are contacts for a brick IGBT. The left blue part is probably the snubber, the right one could be a current sensor. The ON/OFF command comes from main control circuit by use of fiber optic.


Now measuring the current through shut as from you schematics won't help too much, you have to measure the current on the motor. So the copper now becomes more complex. You could use an isolated IGBT driver with DESAT protection and place the IGBT as high switch:


simulate this circuit – Schematic created using CircuitLab


TIDA-00638 :ISO IGBT driver with DESAT

enter image description here


enter image description here




simulate this circuit

  • \$\begingroup\$ For this application it will be difficult to read the current directly from the motor due to the distance. But, somehow, I like the idea of a high side switch (even it actually makes the circuity even more complex). \$\endgroup\$ Jan 22, 2021 at 21:56
  • \$\begingroup\$ @GustavoVargas The current of the motor is the same as from outputs if the freewheeling diode is placed into a cabinet. There are IGBT modules that already have this diode, made for choppers. \$\endgroup\$ Jan 23, 2021 at 9:41
  • \$\begingroup\$ Agree about the sensor placement. In my original idea I guess I've failed to make clear that I was more looking to protect the battery then the motor. That's why the sensor is in that position. I simple cut the motor for some time when the current get to a set trip point, and the actual motor current was not important. Now I'm going with a more controlled PWM, moving the freewheel to a better position and doing an actual motor current controller as suggested. Lets see how many IGBT I'll explode in the process... \$\endgroup\$ Jan 24, 2021 at 22:08
  • \$\begingroup\$ By the way, you've suggested to use a top side switch instead of a low side. There is any advantage despite looking more "natural"? \$\endgroup\$ Jan 24, 2021 at 22:10
  • \$\begingroup\$ @GustavoVargas The only benefit is that you don't have a "live" always connected on the motor. If you use a non-isolated gate driver, you should use it as low side switch, with isolated type you have both options. If this is an industrial thing and you seek for reliable solution, then you can buy a ready made combo IGBT+Driver. For exapmle Semikron SKHI 10/12 and SKM150GAR12T4 (or SKM200GAR12T4, or ..). The bad is that it's designed for 1200VDC bus voltage (so expensive) a good is that you don't have to make your own gate driiver, since it is rather delicate, here you can expect explosions. \$\endgroup\$ Jan 25, 2021 at 11:20

Use a pulse soft start with a pulse width that rises to an acceptable current then shut off and repeat.

Using a current sensor to can make it start with constant current by increasing the pulse repetition interval of acceleration to reach full speed at 100% duty cycle.

  • \$\begingroup\$ This seams a good approach, but, again, how to properly protect my IGBT? Is the simple snubber enough? Why do people always have IGBT failing? This is the kind of issues I'm trying to anticipate. \$\endgroup\$ Jan 22, 2021 at 5:49
  • \$\begingroup\$ From the control point of view, your control looks more reliable them mine, but then I have to introduce other thing I'm not familiar, a PID control! Or an micro-controller that is my thing, but a little overkill for this application... \$\endgroup\$ Jan 22, 2021 at 5:52
  • \$\begingroup\$ No need , just use a hysteresis half-bridge buck switch with current sensing to maintain average current. With L/R=T using say x% and y% thresholds of 70A for switching thresholds. The half bridge IGBT or FETS will handle the current with a designed thermal loss and heat sink. Choose dead time ~1u depending on energy during that time to be snubbed. \$\endgroup\$ Jan 22, 2021 at 14:15
  • \$\begingroup\$ Marco’s is similar except using IGBT and diode(NG) and hall sensor or buy a soft start motor controller with acceleration control (IMAX) \$\endgroup\$ Jan 22, 2021 at 14:19

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.