cancel
Showing results for 
Search instead for 
Did you mean: 

Why the commutation delay doesn't work

Jason Jin
Associate II
Posted on August 14, 2017 at 07:31

Greetings,

I generate the project using 

0690X00000607qIQAQ.png

To control the bldc motor with hall sensors interface. The configuration is as below:

0690X00000607fWQAQ.png

Refer to TIM4, which is set as the hall sensor interface, the detail configuration is as below:

0690X00000607sEQAQ.png

Refer to TIM1, which is set as the PWM-generated interface, the detail configuration is as below:

0690X00000607rGQAQ.png

After my debug, the motor can be driven. But I found the commutation delay doesn't work at all. So can anyone explain what the commutation delay means? Which event would affected by this delay setting? Why this delay doesn't work? I measured between Hall sensor input and TIM1_TRG_COM_TIM11_IRQHandler(), and I also measured between 

TIM1_TRG_COM_TIM11_IRQHandler() and HAL_TIMEx_CommutationCallback(). No delay is related to this setting.

B.R.

Jason

#bldc-commutation-delay #stm32cube
1 ACCEPTED SOLUTION

Accepted Solutions
Posted on August 15, 2017 at 06:53

0690X00000607ruQAA.png 0690X00000607snQAA.png

View solution in original post

2 REPLIES 2
Jason Jin
Associate II
Posted on August 15, 2017 at 06:51

I would like to update the progress. I have found the root cause. It caused by STM32CubeMX tools. TIM1 shall be set as the slave timer while TIM4 shall be set as the master timer with OC2REF to TRGO. I wish ST guys would fix the bugs to let function of commutation delay go.

B.R.

Jason 

Posted on August 15, 2017 at 06:53

0690X00000607ruQAA.png 0690X00000607snQAA.png