IGBT burnout while run simplefoc for BLDC Motor

Hello everyone,

We are in the process of setting up a BLDC motor and using a 12-volt (50 A) car battery to drive it. For the 3 Phase Inverter circuit, we are employing three dual IGBTs(Infineon FF300R12KT4), each forming a branch of the inverter circuit. To drive these IGBTs, we’re utilizing 6 dedicated IGBT Drive boards (works at 9kHz for switching), converting PWM output from the microcontroller to -10 to 20 volts output for IGBT switching. The power supply for these driver boards is separate. For motor position feedback, we’re using an AS5048A sensor.

We’re generating PWM signals using the Simplefoc library in SpaceVector mode with stm32f103 and observing the waveform provided in the documentation (img below) using an oscilloscope at the microcontroller output.

After adjusting a few parameters of the IGBTs and drivers, suddenly one phase burns out, and we’re unsure of the reason behind this failure.

Diode testing reveals that one of the IGBTs in a phase is the one experiencing burnout.

Upon inspecting the driver boards, it appears that there’s excessive current flowing into the driver from the gate side, which is flowing from the IGBT towards the driver, not from the power supply of the drivers.

We have two possible scenarios:

Adjusting parameter P in the PID controller may be causing PWM generation in a way that leads to current flowing back from the IGBT towards the driver.

We haven’t thoroughly examined the DC link connected to the collector of IGBT_H and emitter of IGBT_L. In some of the web-based investigations we’ve conducted, spikes in the DC link seem to be a potential cause for IGBT failures.

One additional point to note is that before the IGBT failure, the motor was operational, but it seemed to lack uniform motion. It exhibited irregularities in its movement, characterized by occasional jerks and horizontal vibrations at different speeds.

What are your thoughts? Is there any other issue that might be causing this problem?

Hello @Ali_Mohajeri

Welcome to the board.

It is difficult to debug your issue without your PCB design. What you are describing is not a SimpleFOC library issue but a schematics and/or PCB design issue unelated to code.

Please post your schematics, pictures of the drivers, the motor as well as your code to get good feedback.