cancel
Showing results for 
Search instead for 
Did you mean: 

BLDC Motor Control [FOC] Speed ramps

Daniel Husztikd
Associate II
Posted on October 11, 2017 at 15:23

I use a BLDC motor with Hall-sensors and ST FOC 4.3 (STSPIN32F0).  Everything works fine, but when I want to use speed ramps, speed just do not change. The software indicates correct speed ramp, but instead, nothing happens. What is this issue? Which component should I use, to have correct speed ramps? Thank you. 

#stspin32f0 #speed-ramp #bldc #hall-sensors #brushless-motor
13 REPLIES 13
Posted on October 17, 2017 at 11:54

Thanks! It was the placement angle, which was wrong. But I came to an interesting problem. The whole setup works fine through the MC workbench, but when I port it to the application we are designing, the pid is unadjusted again. The WB and this are running on the same custom made PCB. What could be the issue? I did not touch the motor control part. Did you noticed something like this? 

Posted on October 17, 2017 at 12:47

I have investigated, and it is not unadjusted, but the originally if I set it to 3000 rpm, it was set to 3000rpm. Now this range is between 200 and 1000 rpm (so if I want to get  6500rpm I have to use a speed ramp to 1000rpm when starting the motor) I dont know how and why this slip was caused ( and also speed feedback is saying 1000rpm even tough it is 6500, and it worked previously) 

Sorry for writing so many posts!

Thanks in advance

Daniel

Posted on October 18, 2017 at 03:47

Dear Daniel

I'm sorry I reply you late for I ve just been back to office from biz trip. I studied your question, and I understood in your fW, there is no issue with reference rotor speed. But actual speed can not follow it, and current regulator output is constant - duty cycle of PWM signal is constant. Am I understanding correct?  If yes, would you let me know how is the constant of PWM duty cycle - It's very strange: if duty cycle is constant, how FOC works to spin the motor to the maximum speed?  To my understanding, PWM duty cycle you mentioned is modulation index for SVPWM, is it correct?

Let me suppose it's yes. Then if one of following conditions is satisfied, it caused PWM cycle be constant:

1. Modulation index reaches the maximum value set in WB.

2. Current regulator q-axis or d-axis becomes saturation

3. Speed regulator becomes saturation

If saturation happens, need to check

1.if position and speed feedback from Hall sensors are correct

2.motor current feedback value is correct compared with actual value detected by current probe?

3.If the maximum value of Modulation index set in WB is too small to limit the output from MCU?

I hope above is helpful for you.

Best regards,

Wang RD

Laurent Ca...
Lead II

The question has been moved from the "Motor Control Hardware" section to the "STM32 Motor Control" section (the question is about the STM32 MC SDK). 

Best regards