Is there a way to do deadtime compensation
Dear all,
I'm new to this forum, so apologies if I post this in the wrong category. I'm trying to find a way to implement a deadtime compensation mechanism using a STM32G4. I have a 3-level 3-phase VSI. The switching frequency is 50kHz, the deadtime is 200ns. I want to compensate for this deadtime, but during the phase currents zero crossings the polarity of the current changes every switching period, and even throughout a switching period. It is not really possible to determine the phase current polarity using my ADC at the switching frequency.
Does the MCU have a compensation mechanism built in? I thought of detecting the phase current polarity with an analog circuit, feed it to one of the input pins of the MCU and based on that delay or advance the switching instances so the output gets compensated for the deadtime. Is there some way to do this?
In my simulation I have implemented a deadtime compensation circuit as shown in the figure. You see the four gate pulses to the switches, on which the deadtime is already applied. The phase current polarity gets detected and based on that, with the help of some logic gates and pulse delays, compensated gate pulses are being output to the gates of the switches. It would be great to find a way to do this properly in my hardware.
Thanks in advance.
