cancel
Showing results for 
Search instead for 
Did you mean: 

Is anyone able to drive a BLDC motor at low speeds? anything below 6 RPM?

msingh
Senior

I am using the X-NUCLEO-IHM08M1 as a power board and NUCLEO-F303RE as a control board. Using an incremental encoder of 1024CPT I was able to drive the motor as slow as 6RPM, even after several attempts I was unable to achieve any lower speeds. When I request any lower speeds the motor stops and goes into the "lock rotor" meaning the motor stops rotating but still draws current.

Thanks In advance

Manpreet

1 ACCEPTED SOLUTION

Accepted Solutions
msingh
Senior

Hi @Imen DAHMEN​ ,

I used position control instead of speed control which allowed to rotate slower than 6RPM, then adjusted PIDs to eliminate overshoots and vibrations, then I just had a bad connection and the motor simply stopped rotating ( I thought it was a firmware issue but it wasn't as it stopped working with the previous version of firmware) .

PID tuning is really a big issue. Personally I do not reccomend the Motor profiler as it is not usefull at all, the parameters should be used from the motor datasheet and PID tuning should be done manually.

View solution in original post

9 REPLIES 9
mscot.1
Associate III

Position control mode - AN5464 and set Duration to zero. It works.

msingh
Senior

Hi @mscot.1​ ,

Really appreciate your help. I will try this soon.

Kind Regards

Manpreet

Good morning mscot.1,

Thank you once again for your suggestion I have created a project using the AN5464 and the motor is able slower than 6RPM (I think) however I cannot use the "follow mode" as mentioned in the application note. When I set the duration to 0 it should start a continuous rotation if i keep updating the position however the rotor doesn't move at all. Is there any suggestion you have?

I would appreciate your help.

Kind Regards

Manpreet Singh

mscot.1
Associate III

Sorry, I have not got anything more to offer; I followed the App Note and achieved the motor moving between 2 positions. Then I set the duration to zero and advanced the angle in a loop and it worked. That is as far as I went.

Hi,

would you be kind enough to share the "loop" you have please?

I am able to move between 2 position however I cannot achieve any continuous movement, below is the code I am using.

0693W000003RnxwQAC.jpg

msingh
Senior

Actually I have identified the issue. THANK YOU VERY MUCH FOR YOUR HELP. MUCH APPRECIATED :)

Have a nice day.

Kind Regards

Manpreet Singh

Hello @msingh​ ,

Please, let us know how you solved your issue ?

Then, please select the post which is "Best Answer" or mark your post as answered the question.

Best Regards

Imen

When your question is answered, please close this topic by clicking "Accept as Solution".
Thanks
Imen
msingh
Senior

Hi @Imen DAHMEN​ ,

I used position control instead of speed control which allowed to rotate slower than 6RPM, then adjusted PIDs to eliminate overshoots and vibrations, then I just had a bad connection and the motor simply stopped rotating ( I thought it was a firmware issue but it wasn't as it stopped working with the previous version of firmware) .

PID tuning is really a big issue. Personally I do not reccomend the Motor profiler as it is not usefull at all, the parameters should be used from the motor datasheet and PID tuning should be done manually.