cancel
Showing results for 
Search instead for 
Did you mean: 

3.2 FOC Lib STM3210B-MCKIT Encoder low speed

mailmail9114
Associate II
Posted on March 19, 2013 at 11:34

Hi,

i try to use the foc lib in a low speed application.

Im using the STM3210B-MCKIT Motor with encoder.

Do someone know which minimum motor speed i can achieve whith this motor lib 3.2 and the shinano 400 inc encoder?

i used the default pid setting and below 300rpm the motors rotation speed controller starts to oscillate .

do you have better params for low speed application?

thanks

3 REPLIES 3
hamidsani8
Associate
Posted on December 01, 2014 at 21:53

Hey there,

I am also interested in a similar application. Did you ever get the FOC and encoder to drive you BLDC at low speed? And if yes, then how much of a trouble was it? 

Thanks for your help 

mikemike9141
Associate III
Posted on March 13, 2015 at 11:54

Hi Sani,

I use the library in a servo application, where operation at standstill with external torque, change of direction, high acceleration and decelaration, generatoric operation, are all normal cases. I have not observed any problem at all, but you have to carefully tune all control feedback loops. What you have to consider is the following: the encoder generates, lets say, 400 increments per revolution. Because we also have the quadrature channel, this gives 800 ''updates'' pre revolution. When revolving at 600 rpm, this means 8000 updates per second. Taking the Nyquist theorem as a first approximation, the bandwidth of the speed feedback is then 4kHz. At low speeds, say 6 rpm, we only get 80 updates per second. This means the speed feedback bandwitdh is dramatically reduced to 40 Hertz. Consequently, the speed control loop must be designed such that it accepts this low bandwitdth, either by reducing the gains, or by implementing dynamic gain that varies with speed feedback bandwidth.

If this sounds dramatic, consider the much worse situtation for hall feedback, where you only get 6 updates per revolution, instead of 400 in my case. If ''stiff'' speed control is required, you can consider replacing the encoder with a ''finer'' version that has, e.g. 4000 steps per rev. But keep in mind the very high pulse frequency at high rpms...

Regards

Frank

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