Skip to main content
Akella
Associate
July 30, 2020
Solved

PLL vs CORDIC

  • July 30, 2020
  • 4 replies
  • 3958 views

Hello to all.

What are the advantages of one algorithm over another PLL vs CORDIS?

Is there a description of the methods for setting the coefficients.

This topic has been closed for replies.
Best answer by FouadB

​Hello,

Both sensor less algorithms Observer-PLL and Observer-CORDIC are used to provide an estimation of the electrical speed and angle.

PLL could be more dedicated to applications that not requiring a full torque at zero or very low speed (speed > 5% of nominal speed).

It means that it needs a minimum level of speed to work efficiently.

While it is not the case for the CORDIC, but it is more sensitive the level of noise presents in the estimated back EMF. 

Regarding the tuning:

All parameters of Observer are automatically computed by the MC Workbench according to the motor’s parameters (electrical and

mechanical params) used for the application.

For the Observer-PLL, there is no tuning required for PLL gains (P and I).

In both case, some tuning may be required for the Gain G2 (/2, /4, /8 according to the noise in the observed BEMF).

It can be set in Workbench GUI (open “Speed Sensing�? in manual editing mode).

Due to inherent noisiness of the CORDIC algorithm, the speed variance threshold parameter could be increased to avoid some “speed error feedback�?.

Best regards,

FB

4 replies

FouadB
FouadBAnswer
ST Employee
September 23, 2020

​Hello,

Both sensor less algorithms Observer-PLL and Observer-CORDIC are used to provide an estimation of the electrical speed and angle.

PLL could be more dedicated to applications that not requiring a full torque at zero or very low speed (speed > 5% of nominal speed).

It means that it needs a minimum level of speed to work efficiently.

While it is not the case for the CORDIC, but it is more sensitive the level of noise presents in the estimated back EMF. 

Regarding the tuning:

All parameters of Observer are automatically computed by the MC Workbench according to the motor’s parameters (electrical and

mechanical params) used for the application.

For the Observer-PLL, there is no tuning required for PLL gains (P and I).

In both case, some tuning may be required for the Gain G2 (/2, /4, /8 according to the noise in the observed BEMF).

It can be set in Workbench GUI (open “Speed Sensing�? in manual editing mode).

Due to inherent noisiness of the CORDIC algorithm, the speed variance threshold parameter could be increased to avoid some “speed error feedback�?.

Best regards,

FB

If you agree with my answer, please accept it by clicking on 'Accept as solution'.""
Onorm.1
Associate II
March 5, 2021

Hello, I try to run my BLDC motor in sensorless Mode Using Cordic or PLL. For the moment, none of them works, I was wondering if there was a tuning procedure that I can follow? my ST motor workbench is ver1.0.2.0.

Olivier

FouadB
ST Employee
March 5, 2021

May I suggest you to upgrade your version to latest MCSDK version 5.4.5.

When the update will be completed, could you please add more details about the issue encountered ?

Best regards,

FB

If you agree with my answer, please accept it by clicking on 'Accept as solution'.""
Onorm.1
Associate II
March 9, 2021

Hello Fouad, Actually this is firmware version 3.0 that I am using. I can't update, my project is all based on 3.0 library. I tried to tune PLL + Observer + PLL and Cordic. None of them give clean sensorless speed measurements. It remains unprecise ans unstable. So far, I'm stuck.