Slow speed control of gimbal motor


I would like to control a BLDC Motor (iPower GM110-8) position wise. As the motor comes with an as5048a I am using it’s SPI interface with the SimpleFOCShiled V2.0.3. I have managed to get the project running with an arduino Uno and some tweaks to the angle_control example.

The issue I am facing right now is that the motor tend to deviate from it’s position and come back from time to time.

I can also see that while the “motor.shaft_angle” value is stable, the “motor.shaft_velocity” seems noisy:


Can this be causing the deviation?

To avoid vibrations I have set the lowpass filtering values as such:
motor.LPF_velocity.Tf = 0.15;
motor.LPF_angle.Tf = 0.002;

Should I put them higher or lower to avoid the deviation?

Thanks and regards,


Thank you, it’s great to see people using SimpleFOC.

Recently there was another thread with similar content, you may benefit from reading this first.

It would be best if you tune the entire system until you get good results, not just the filtering.