This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
Dear Sirs,
From manual (spruhj1e, Page 407-408), in order to decouple Q-axis PI controllers from D-axis, we must subcontract effect caused by Id. For example
iq (R +DLs ) = Vq - w(Lsid +Ke )
We can get Ls & Ke from motor idenfication. However, how could I get w (the electrical frequency) ?
Thanks in advance
Hi,
This line of code will give you omega (electrical) in radians per second:
float_t w_radps = _IQtoF(EST_getFe_pu(obj->estHandle)) * USER_IQ_FULL_SCALE_FREQ_Hz * MATH_TWO_PI;
EST_getFe_pu(obj->estHandle) returns the electrical frequency in per units, so to convert it to Hz, needs to be converted to float (using _IQtoF) and then multiplied by full scale frequency. Then, multiplying by 2pi gives you the radians per second value.
-Jorge
Jorge,
Thanks for your reply. It is a very helpful way for sensorless PMSM method with FAST.
If I want to use mechanical encoder to replace FAST. How to get omega (electrical) in radians per second ?
Thanks in advance.
If you use the encoder interface as used in lab 12b, then you can use a function that returns the angle in per units from the encoder:
ENC_getElecAngle(encHandle)
And in order to convert this into radians per second you would need to do this:
float_t gEng_Angle_rps = _IQtoF(ENC_getElecAngle(encHandle)) * USER_IQ_FULL_SCALE_FREQ_Hz * MATH_TWO_PI
-Jorge
Jorge,
Thanks for your quick response. This method can solve our problems.
Really appreciate.