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.

LAUNCHXL-F280025C: Universal Motor control Lab example solution not working with LAUNCHXL-F280025C and BOOSTXL-3PHGANINV.

Part Number: LAUNCHXL-F280025C
Other Parts Discussed in Thread: BOOSTXL-3PHGANINV

Hi All,

Universal Motor control Lab example is not working for me. As per the lab guide if we run the project ISRCount will start incrementing, but in my case ISRCOunt value never increment. ISRCount value is always 0.

When I enable the flag motorVars_M1.flagEnableRunAndIdentity and motorVars_M1.flagRunIdentAndOnline, I can hear a low jerk coming from the motor and the motor stopped. So the motor never runs. Please find the attached screenshot of Expressions while debugging.

I am following the Universal Motor control Lab example (https://www.ti.com/lit/ug/spruj26/spruj26.pdf?ts=1646903130274&ref_url=https%253A%252F%252Fwww.google.com%252F).

Kindly help us in resolving this problem. 

Using the following setup.

Microcontroller: LAUNCHXL-F280025C

Three-Phase Inverter: BOOSTXL-3PHGANINV.

BLDC Motor: - A2212/10t 1400kv pole (https://www.electronicscomp.com/a2212-1400kv-bldc-brushless-motor-india?gclid=CjwKCAiA4KaRBhBdEiwAZi1zzmCG-O5QAFdqtUwTfEoxwtehzcsvtye4xoZ9V1RLIvtBmQe7jIeFgBoC3ZsQAvD_BwE)

Thanks & Regards,

Akash

  • Add a line code as below before the HAL_ackMtr1ADCInt() in motor1CtrlISR() or ignore this step.

        motorVars_M1.ISRCount++;

  • Thanks now after adding this, now ISRCount is getting incremented but when I set the flasg motorVars_M1.flagEnableRunAndIdentify to 1, motor is not running and I am getting a fault motorVars_M1.faultMtrUse.all unsigned int 16 0x0000C47A@Data.

    Please find the attached screanshot.

  • Hi Luo,

    Now I got BLDC motor running, but the motor is getting stopped after 3-4 sec or 4-5 rotations. Currently, I am trying to identify why it is happening.

    I am attaching the screenshot of expressions, when the motor is running and when the motor stopped 

    1) Motor is running

    2) Motor stopped automatically after 3-4 sec 

    Thanks & Regards,

    Akash

  • Please try to change/tune the following parameters according to the specification of your motor.

    #define USER_MOTOR1_RES_EST_CURRENT_A       (1.0f)            // A - 10-30% of rated current of the motor

    #define USER_MOTOR1_IND_EST_CURRENT_A       (-1.0f)            // A - 10-30% of rated current of the motor, just enough to enable rotation

    #define USER_MOTOR1_FLUX_EXC_FREQ_Hz          (40.0f)          // Hz - 10~30% rated frequency of the motor

     

    #define USER_MOTOR1_STARTUP_CURRENT_A     (3.0f)             // A - 30-100% of rated current of the motor

    #define USER_MOTOR1_MAX_CURRENT_A             (6.0f)              // A - 50-150% of rated current of the motor

    #define USER_MOTOR1_OVER_CURRENT_A           (6.5f)              // A - 50-150% of rated current of the motor