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.

TMS320F2800156-Q1: Question about the FAST FOC 's angle with delay compensation

Part Number: TMS320F2800156-Q1

Tool/software:

Hi

There is a question about the  angle compensation for F2800156-Q project with FAST estimator.

In the following picture, 

estOutputData.fm_lp_rps is the frequency ,not the the low pass filtered electric frequency whose unit  is Hz,not rad/sec.

angleDelayed_sf_sec is  (float32_t)0.5f  * USER_M1_CTRL_PERIOD_sec.

Pls check if there is something wrong with the setting. I think the following should be the correct fomula.

obj->angleDelta_rad =
            objUser->angleDelayed_sf_sec * obj->estOutputData.fm_lp_rps * 6.28f;

Regards

Arrow

  • Hi Arrow,

    "fm_lp_rps" should be rad/s, but you can modify the coefficient 0.5 in the angleDelayed_sf_sec.

    Thanks,

    Jiaxin

  • Hi Jiaxin

    Yes, fm_lp_rpm should be rad/s unit, but in fact I read the value in the watch window and it is the frequency with Hz unit.

    It should be multiplied with 2*pi.

    Demo project in motorcontrol_SDK_5_03 , tidm_02012_ecompressor.

    Regards

    Arrow

  • Hi Arrow,


    Please monitor motorVars_M1.speedEST_Hz in your watch window, which is the info of speed in Hz.

    "fm_lp_rps" should be equal 2*pi*motorVars_M1.speedEST. And this tells "fm_lp_rps" is rad/s, not Hz. Also, if your speed is 2000 rpm and pole pairs are 4, then frequency in Hz should be f=2000*4/60=133Hz, not 100 Hz.


    Thanks,
    Jiaxin

  • Hi Jiaxin

    1.' 2000rpm' is a mistake of discription,the real speed should be 1500rpm of 100Hz.

    2. The original intention of this thread is to show you the bug of the project, not argument with the definition of angular speed.I know what is electric speed and what is anglular speed.

    As you can see from the below picture, fe_Hz is almost 6.28 times of fm_lp_rps. fe_Hz is angular speed,while fm_lp_rps is not,however it  should be.

    For the project in motorcontrol_SDK_5_03 for F28004X, the fm_lp_rps signal is right.(I have checked)

    For the project in motorcontrol_SDK_5_03 for F280015X, the fm_lp_rps signal is wrong.

    If you test the demo project, you will find this bug too. But the 'fm_lp_rps is done in the fast library, I'm sure your colleagues can find the reason why this is wrong.

    Regards

    Arrow

  • BTW,the test project path is in MotorcontrolSDK_5_03

  • Hi Arrow,

    Thanks for your feedback. I will let my colleagues know about the bug. 

    Sincerely,

    Jiaxin