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.

CCS/TMS320F28054F: Rs online oscillating

Part Number: TMS320F28054F
Other Parts Discussed in Thread: TMS320F28054

Tool/software: Code Composer Studio

Hi,

On the basis of the lab7, I’m trying to estimate the Rs online, working with my own HW and TMS320F28054 microcontroller.

When I set the Flag_enableSys and Flag_Run_identify, the motor identification starts, and the Rs estimated is quite accurate (real value à 1,35 homs, estimated value à 1,6 ohms, the motor is a little bit heated). But, after that, the Rs online is oscillating (see picture below). The RsOnLineCurrent_A=0.4, and USER_MOTOR_MAX_CURRENT=8.

 

 In this situation, the motor doesn’t spin smoothly, so the current is under control (see picture below).

 

The measure the Rs online, I followed the lab7 (copy and paste runRsOnLine function.

  • 1. Change EST_setRsOnLine_pu(obj->estHandle, _IQ(0.0)); to EST_setRsOnLine_pu(obj->estHandle, EST_getRs_pu(obj->estHandle)); in runRsOnLine(), and only enable runRsOnLine() intervally as you need.
    2. Set the RsOnline current to a >5% of the motor rated current, not the maximum current.
  • Hi Yanming,

    First of all, thank you for your answer. Sorry, but I don’t have clear if I need a RsOnline estimation or RsOffline. Let me explain how application works:

    1. The motor is stopped.
    2. Next, the motor is spinning around 3 seconds in one direction.
    3. After that, the motor speed=0, and a low torque is applied.
    4. Now, the motor is spinning around 3 seconds in the other direction.

    This sequence is in a loop, but the time between steps 1 and 4 can be from a few seconds to a few days.

    So far, I was working with the RsOnline estimation, in the way that when the speed references is not zero, I run the runRsOnLine( ) function. Maybe, I should work with a RsOffline estimation, just before running the step 1. Do you have any advice? Where can I find a function for RsOffline similar to runRsOnLine( )?

     

    Thank you in advance.

  • Hi Yamming,

     

    Sorry, but I have already solved how to get the Rs offline recalibration (just setting the flag for EST_setFlag_enableRsRecalc( ) before step 1). But now I’m getting other weird behavior. Sometimes, just after Rs recalibration, the phase motor current is really unusual, and the motor doesn’t spin smoothly. To clarify, I show you some pictures:

     

    • Picture 1. The current in a motor phase when the motor spins fine, just before the Rs recalibration.
    • Picture 2.  The same motor current after Rs recalibration. In this case the motor doesn’t spin.

     

    Any change has been done between picture 1 and 2.

     

    Any help would be appreciate. Thank you in advance.