TMS320F2800157: Overcurrent Fault at RPM > 2000 in Torque Mode (Current control mode)

Part Number: TMS320F2800157

Tool/software:

  1. Hello,

I am working on implementing torque mode (current control mode) using the TMS320F2800157 microcontroller and a 48V encoder-based mid-drive motor (5 pole pairs). I am modifying the Universal Motor Controller Code to achieve the required torque in BL4 by controlling Id and Iq. 

Currently, I can achieve stable torque (21 Nm) up to 2000 RPM, but beyond that, I am encountering a module overcurrent fault. For RPM value such as 2250 RPM (max torque required is 18Nm), I’m setting Id = -30, Iq= 120. As I start applying load, I’m increasing the Iq current gradually. I’ve observed that when the load is applied beyond 5 Nm, the motor is fault stopping due to module over current fault. Iq current was increased upto 150A. Below are the key settings and observations:

  • USER_MAX_VS_MAG_PU = 0.75
  • USER_MOTOR_MAX_CURRENT = 190A
  • DC Bus Voltage = 48V
  • PI Gains for Current Control (Kp, Ki) are tuned based on initial testing
  • Overcurrent fault occurs as speed increases beyond 2000 RPM

Questions:

  1. What would be the possible reason for module over current fault and what motor parameters are required to consider to avoid this fault.
  2. Would increasing USER_MAX_VS_MAG_PU to 0.8 or 0.85 help avoid overcurrent issues at higher RPMs?
  3. Should I adjust field weakening (Id reference) dynamically beyond 2000 RPM to maintain torque control? Right now I’m decreasing Id reference from -10 to -40, setting Iq reference value between 95-110 A
  4. Are there other parameters in Universal Motor Controller Code that I should consider modifying to prevent overcurrent faults?

Any insights or suggestion would be of great help.

Best Regards,

Prabhakaran CP.

  • Hi Prabhakara,

    What is the max rated speed of your motor? It should have a speed / torque profile with inverse relationship too.

    Have you tried running with speed loop so that you don't have to control the torque command directly?

    Should I adjust field weakening (Id reference) dynamically beyond 2000 RPM to maintain torque control? Right now I’m decreasing Id reference from -10 to -40, setting Iq reference value between 95-110 A

    Field weakening is intended to achieve higher speeds but with lower torque output.

    Overcurrent fault occurs as speed increases beyond 2000 RPM

    I suggest using a current probe and collecting waveforms when the OC condition occurs to debug the issue further.

    Best,

    Kevin