Cannot undersant why motor-drive board short circuited

Thread Starter

Dan Gumeni

Joined Jun 18, 2019
9
I was using this motor-drive board (https://www.st.com/en/evaluation-tools/steval-ipm15b.html) to generate a single phase output between the U and V phases on a 24 ohms resistor load. Thus, I was also using only 2 pairs of IGBTs (A and B) out of the 3 available. Everything that was connected to the W phase (which I was not using) was left not connected

I was commanding the IGBTs via sinusoidal PWM signals generated by an Arduino Due board. I did this by separating the result of the PWM algorithm into 2 separate outputs , 1 for each half period (positive/negative) of the sinusoidal reference signal. A separate line of code was written to always ensure that both outputs are not 1 at the same time, since I saw that the inverter didn't have an interlocking function. Then, each output was connected to the corresponding pins of the STEVAL-IPM15B board (output 1 with PWM-1H and PWM-2L and output 2 with the reverse). I also connected the GND and the 3.3V pins. Everything else I did not use.

For both the DC supply, as well as the Vcc supply, I used a PC adapter of 15 V and 3 A. I'm aware that the DC supply technically requires a minimum of 125 V in order to function properly, but for the purpose of my project, in which I only needed to generate the single-phase voltage on the resistor load, 15 V were enough.

At this point, everything was working properly and I was able to view the desired voltage between U and V using an oscilloscope. I also attached pictures with this result, as well as the setup.Result.jpeg Board.jpeg Circuit.jpeg

Next, I wanted the resulting voltage to be able to synchronize with the frequency of the electrical grid. Using a 9 V instrument transformer connected to a normal power outlet, the micro-controller would read the analog values. Each time it would detect that the values would cross 0, from negative to positive, it would command that the sinusoidal signal used as reference to also be returned to 0 (using a variable which was 0 at the time), so that it may be in sync with the grid voltage. The algorithm still needed some work, but, nevertheless, my point is that the STEVAL-IPM15B board was still working fine at this point, still generating the desired single-phase output.

Then, the only change I made was that I changed the variable that controlled the sinusoidal signal to 90 degrees, so that now the output between U and V should be exactly the same, only 90 degrees out of phase with the grid voltage. As soon as I uploaded this change to the micro-controller board, while it still being connected to the STEVAL-IPM15B, as well as powered up from the 15 V supply, the STEVAL-IPM15B started smoking from somewhere near the inverter chip (couldn't see exactly where since it was underneath) and the chip burned, not working anymore. I unplugged it as soon as I could, but it was too late already.

It is clear that the board somehow short-circuited, but I cannot understand how. It was working properly with the last code before I changed that variable to 90 for somewhere between 2-3 hours. During this time, I checked regularly and the inverter chip wasn't getting hot almost at all, only the resistor load did. I also checked with the oscilloscope that the 2 PWM outputs would never overlap, so the interlocking protection that I wrote was also working properly. The power supply that I used had only 3 A and it also had short-circuit protection. The STEVAL-IPM15B board itself also has protection for something like this. I'm not ever sure that changing that 1 variable to 90 even had time to take effect, since the code has a written delay until the synchronization starts being verified, while the board started smoking immediately. So, I'm asking if there's something going on with how the board/inverter is working internally which I'm missing.

Thank you for your help!
 

Alec_t

Joined Sep 17, 2013
14,280
As soon as I uploaded this change to the micro-controller board, while it still being connected to the STEVAL-IPM15B, as well as powered up from the 15 V supply, the STEVAL-IPM15B started smoking
Perhaps at that point the micro was in a pre-initialisation state in which the outputs drove the IGBTs such that there was overlap/shoot-through? Immediately after programming, don't you have to reset the micro?
 

Sensacell

Joined Jun 19, 2012
3,432
Just looking at this from 50,000 feet up, connecting the ground lead of your scope to anything but system ground is problematic.

You are effectively shorting that point to ground- your photo shows shorting "V" to ground with the scope ground.

This 'might' not cause instant death, if the whole system is floating, but conntecting programmers and other devices introduces other paths to ground that could cause a direct short.
 

LesJones

Joined Jan 8, 2017
4,174
As you seem to be connecting the oscilloscope BETWEEN TWO phases you MUST have the power supply to the board floating. If the power to the board and the oscilloscope are both earthed you will be shorting out some of the IGBTs.

Les.
 

Thread Starter

Dan Gumeni

Joined Jun 18, 2019
9
Perhaps at that point the micro was in a pre-initialisation state in which the outputs drove the IGBTs such that there was overlap/shoot-through? Immediately after programming, don't you have to reset the micro?
I thought about that too at first, but I did the exact same thing a number of times before, when I was trying to make the synchronization work, and it was ok. Only when I made it to be 90 degrees out of phase did it short.
 

Thread Starter

Dan Gumeni

Joined Jun 18, 2019
9
As you seem to be connecting the oscilloscope BETWEEN TWO phases you MUST have the power supply to the board floating. If the power to the board and the oscilloscope are both earthed you will be shorting out some of the IGBTs.

Les.
Ok, I understand what you're saying and it make sense. However, this exact setup worked just fine for hours. I do not understand how it can do that and only after I induce a phase difference malfunction. Even if it was indeed just at the brink of a short-circuit, this phase difference is such a small change in it's algorithm that I do not understand how it could push it over the edge.
 

Thread Starter

Dan Gumeni

Joined Jun 18, 2019
9
Just looking at this from 50,000 feet up, connecting the ground lead of your scope to anything but system ground is problematic.

You are effectively shorting that point to ground- your photo shows shorting "V" to ground with the scope ground.

This 'might' not cause instant death, if the whole system is floating, but conntecting programmers and other devices introduces other paths to ground that could cause a direct short.
So, you're saying that the circuit in it's previous state was really close to failure and any change, no matter how small (in this case, the phase difference of 90 degrees) could have caused it to malfunction? It seems really weird, because I'm not even sure that change had time to take effect. As I said, the code is written in such a way that the phase correction start with a delay, which is only after the 100th analog value has been read from the power outlet. However, the board started smoking as soon as the code was finished uploading. I don't know if the micro-controller would have had time to reach the 100th value.
 
Top