Why multiplied the -1*2^15 with IdEObsrv in the model of S12ZVM_FOC_Sensorless?

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Why multiplied the -1*2^15 with IdEObsrv in the model of S12ZVM_FOC_Sensorless?

Jump to solution
1,129 Views
edenli
Contributor V

Hi Daniel,

About the model of S12ZVM_FOC_Sensorless,shown as below, i wanna make sure the IdEObsrv(Part A shown) and IqEObsrv(Part B shown) is EMF or not ?  i  thought is EMF, my reason ,EMF contains the position and speed of rotor, to get the Postion of the rotor using the arctan() Function,namely Theat=arctan(EAlpha/EBeta),

and there is another doubt that the -1*2^15 in Part C,why we multiplied the -1*2^15 with IdEObsrv?

pastedImage_3.png

0 Kudos
1 Solution
963 Views
dumitru-daniel_
NXP Employee
NXP Employee

Hi Eden Li, 

I'm not the originator of this model but i'm going to try to explain as best i can.

For sensorless application there basically 2 types of rotor position/speed estimation methods:

- based on back-EMF that is produces in the stator windings

- based on magnetic saliency - a fancy way to say that Ld!=Lq

The method based on back-EMF is relatively simple but is has a major drawback: it does not work for low speeds - when the back-EMF generated is too small to be used for any digital acquisition. For mid-high range application it is ok and robust enough.

On the other hand, the magnetic saliency method can work at any speed but requires a much more complex mathematical apparatus and consequently processing power. Hopefully the NXP processor can deliver all the juice to employ such a method.

I made this introduction - just to explain the background and set the stage for the magnetic saliency algorithm.

The model implemented in the example is based on this method. The main equation that describes the method is.

pastedImage_4.png

The "-1" scaled in Q15 is a trick to optimize the math computations within Simulink Model.

Bottom line all that model implements something like this

pastedImage_5.png

Hope this clarify both questions.

Best regards,
Daniel

View solution in original post

0 Kudos
5 Replies
963 Views
edenli
Contributor V

Hi Daniel,

Firstly,Thank you for reply! what you said  above  that " The "-1" scaled in Q15 is a trick to optimize the math computations within Simulink Model. " if so,it can not  lead the error?

Best Regards!

Eden Li

0 Kudos
963 Views
dumitru-daniel_
NXP Employee
NXP Employee

Hi Eden Li, 

I should not lead to errors because basically it just change the sign of the estimated ID current sooner that leads to angle computation instead of changing the sign of the angle later on.

That's why i said is a "trick".

You can do it both ways.

Hope it helps!

Daniel

0 Kudos
963 Views
edenli
Contributor V

Hi Daniel,

multiplied the 2^15 is  not also lead the charging above the value  of Id,is this just a Datatype of Q15?

Best Regard!

Eden Li

0 Kudos
963 Views
dumitru-daniel_
NXP Employee
NXP Employee

Both inputs have the same data type. The result of the block is basically similar with this operation: (ID)x(-1)

0 Kudos
964 Views
dumitru-daniel_
NXP Employee
NXP Employee

Hi Eden Li, 

I'm not the originator of this model but i'm going to try to explain as best i can.

For sensorless application there basically 2 types of rotor position/speed estimation methods:

- based on back-EMF that is produces in the stator windings

- based on magnetic saliency - a fancy way to say that Ld!=Lq

The method based on back-EMF is relatively simple but is has a major drawback: it does not work for low speeds - when the back-EMF generated is too small to be used for any digital acquisition. For mid-high range application it is ok and robust enough.

On the other hand, the magnetic saliency method can work at any speed but requires a much more complex mathematical apparatus and consequently processing power. Hopefully the NXP processor can deliver all the juice to employ such a method.

I made this introduction - just to explain the background and set the stage for the magnetic saliency algorithm.

The model implemented in the example is based on this method. The main equation that describes the method is.

pastedImage_4.png

The "-1" scaled in Q15 is a trick to optimize the math computations within Simulink Model.

Bottom line all that model implements something like this

pastedImage_5.png

Hope this clarify both questions.

Best regards,
Daniel

0 Kudos