Quote:
Originally Posted by MPaulHolmes
I just checked the datasheet:
http://www.pwrx.com/pwrx/docs/cm600dy_12nf.pdf
So, a JUNCTION (inside the IGBT) temperature of 150degC max. The IGBTs are 0.11degC/Watt from junction to case. So, 100watt burning up inside one of the IGBTs (high or low side) means the junction is 11 degrees hotter than the case. So, we could figure out the junction temperature if we know the base plate temp and the amount of heat being generated inside.

I think that, after I load the new firmware, it would be good if I checked that:
1 save works
2 logging works
3 regen stops turning the motor when the motor reaches 0 rpm
When those are successful, I can do the motoring/regen test that I had described, to verify when the motor is taking power out of the high voltage pack, and when it switches to generating power into the pack.
After that, I'll limit the test to 200 AC amps to begin with, and run it for a few minutes to check on the measured temperature. Then I'll shut off the DC motor and let the AC controller keep logging so that I can see what the temperature ends up rising to (if it keeps rising at all)

So this is some rambling, talking things through and making some simplifications so I can do backoftheenvelope calculations. Please point out any errors!
/Begin Ramble
Worstcase Voltage drop from Collector to Emitter Vce = 2.2V
Worstcase on switching time . I think .. 300 rise time
Worstcase off switching time ... 300 ns fall
I'll simplify the voltage to 100V instead of 125V
and I'll simplify the switching speed to 10 Khz instead of .. was it 8?
300 ns * 100V * I = rising loss
300 ns * 100V * I = falling loss
Let's say 100 amps per IGBT for argument's sake (and simpler numbers)
rising loss = 300 ns * 100V * 100 amps = 3 mw (is that the right units?)
falling loss = 300 ns * 100V * 100 amps = 3 mw
So 6 mw per cycle * 10,000 times per second = 60W
10 Khz waveform takes 100 ms per cycle. Max duty cycle .. 90% ?
.. so 100 amps * 2.2V drop * 90 ms * 10000 cycles/second = 198W. Worst case.
Total power dissipation at 90% duty cycle = 60 + 198 = 260W per 100A of current
Paul, I think you said that your hardware overcurrent is set to 450 amps per IGBT. I'm not sure if that is RMS or peak. * root 3 for three phase (to count the other two phases .. just a formula) = 780 amps if it was RMS, or 550 amps if it was peak.
I'll be lucky if my test rig will stand up to that current. So using 450 amps per IGBT, that is 4.5X what I have calculated above for 100 amps, 4.5 * 260W = 1170W. Per IGBT. That's a 3500W heater!
1170W * 0.11C/W = 128C .. is that right? The junction temp can be 128C higher than the case temperatures!??!?!?
150C  128C = 22C with no safety factor .. that's just not practical! Keeping the heat spreader plate at 22C would require the heat spreader to be sitting in ice water ...
Paul, where is the temperature sensor .. exactly? Any idea what is realistic to use as a shutdown temp?
My last test ended at 75C measured by the controller .. but I shut down the controller so I was not able to continue logging the temperatures to see if it climbed after the test ended. I think I will have to keep the AC controller online and logging, just shut down the DC motor? Or maybe shut down both and turn the AC controller back on and continue logging? Not sure.
I think I'm using worst case on everything .. but the simplifications are skewing everything so there is no safety factor. Maybe that's why the datasheet posts the curves instead of using the simplifications that I'm using!
As for maximums  the IGBTs are rated for 1130W each max dissipation. So it looks like maybe 450 amps per IGBT at 100V is too much? Perhaps your 450A is a realistic maximum for a short period of time (like maybe 15 seconds).
/End Ramble