Data Book parameters

How to calculate the reasonable dead time?

What is dead time? PWM is pulse width modulation, in power electronics, the most commonly used is the rectifier and inverter. This requires the use of rectifier bridge and inverter bridge.

For three-phase power, three bridge arms are needed. Take two-level for example, each bridge arm has two power electronic devices, such as IGBT. It is roughly as shown in the figure below;

The two IGBTs can not conduct at the same time, otherwise there will be a short circuit, causing damage to the system.

Then why is there simultaneous conduction?

Because the switch components and the strict meaning is not the same.

Therefore, when driving the gate pole of a switch element, it is necessary to increase a time delay to ensure that the other switch tube is completely turned off before opening the switch element;

After the upper half bridge is closed, the lower half bridge is opened after a delay;

After the lower half bridge is closed, the upper half bridge is opened after a delay;

In this way, it will not conduct at the same time, so as to avoid the power component burning; Dead time control in the usual SCM equipped with PWM have such a function, the following will be further introduced.

Compared with PWM, the dead time is at the time of PWM output, the upper and lower tubes will not have output, of course, the waveform output will be interrupted, and the dead time generally accounts for only a few percent of the cycle. But when the duty cycle of PWM wave itself is small, the spare part is larger than the dead time, so the dead time will affect the output ripple, but it should not play a decisive role.

In addition, if the dead time setting is too small, but the upper and lower tubes are still conducting at the same time, because the conduction time is very short, the current does not become large enough to burn down the system, it will lead to serious heating of switch components at this time, so it is particularly important to choose the appropriate dead time, which is too large or too small.

For the parameters in the data book, please refer to the data book of irf540 of NXP. The gate switching time is shown below;

Typical parameters

: gate opening delay time

: gate turn off delay time

: Gate rise time

: Gate down time

The following is a data manual of IGBT;

Switch properties

How to calculate the reasonable dead time? The gate rise and fall time is usually much smaller than the delay time, so they can not be considered here. The dead time is satisfied;

: maximum turn off delay time;

: minimum opening delay time;

: maximum delay time of driving signal transmission;

: minimum delay time of driving signal transmission;

Among them and as mentioned above can be found in the data manual of components; And are generally given by the driver manufacturer;

If it is the IO driver of MCU, the rise time and fall time of IO need to be considered. In addition, the optocoupler is usually added for isolation. The switch delay of optocoupler also needs to be considered here.

STM32 is configured with dead time. The Tim advanced timer of STM32 supports complementary PWM waveform generation. At the same time, it supports the configuration of inserting dead time and braking.

Look directly at register timx in the reference manual_ Bdtr, which is the register to configure braking and dead time;

TIMx_ BDTR

You can see that the dead time DT is determined by * * UTG [7:0] *. What’s the other question here? At timx_ The register of CR1 can be known by timx_ CKD decision of CR1 register;

If 00 is configured here, the frequency is the same as that of the internal timer, which is 8m;

CKD

Combined with the code to do a calculation; The system frequency is 72m. The following is the configuration of time base unit;

#definePWM_ FREQ（（u16）16000）//inHz（N.b.：patterntypeiscenteraligned）#definePWM_ PRSC（（u8）0）#definePWM_ PERIOD（（u16）（CKTIM/（u32）（2*PWM_ FREQ*（PWM_ PRSC+1））））

TIM_ TimeBaseStructInit（&TIM1_ TimeBaseStructure）;/* TimeBaseconfiguration*/TIM1_ TimeBaseStructure.TIM_ Prescaler=0x0; TIM1_ TimeBaseStructure.TIM_ CounterMode=TIM_ CounterMode_ CenterAligned1; TIM1_ TimeBaseStructure.TIM_ Period=PWM_ PERIOD; TIM1_ TimeBaseStructure.TIM_ ClockDivision=TIM_ CKD_ DIV2;

The frequency of PWM is 16K. Note that the PWM here is in central alignment mode, so the configured clock frequency is 32K;

When braking and dead time are below, bdtr register is configured, so here’s CK_ The int is 32m