TMS320F28379D: TMS320F28379D: IPMSM motor speed being struck at 6000RPM

Part Number: TMS320F28379D

Hello Forums,

I am testing an IPMSM motor control setup using a 48V DC power supply.

Test configuration:

  • DC supply: 48V

  • Motor under test controlled in no load speed mode

  • Controller: TMS320F28379D-176ptpt

Observed behavior: 

  1. In No load Speed mode control the actual speed is increasing upto 6000RPM and after that it is getting struck at 6000 RPM inspite of further increasing the set speed. 
  2. I have checked the back emf issue, cross coupling issue and added feed forward terms, and Vd, Vq priority also, inspite of checking all these issues the speed is being struck at 6000RPM 
  3. My Look Up table provides id and iq values such that all the above (back emf, feild weakening ) issues are taken care of 

    I would like to understand:

    1. What could cause the Speed to struck at 6000 RPM inspite of taking care of all the issues like back emf and feild weakening etc ?

    2. Is there any software issue behind this speed being struck at 6000 RPM

    If any information required from my end let me know.

    Any guidance on debugging steps would be very helpful.

    Thank you.

  • Hi Sai,

    Are you running based on any TI reference designs/project?

    In No load Speed mode control the actual speed is increasing upto 6000RPM and after that it is getting struck at 6000 RPM inspite of further increasing the set speed.

    Do you mean if the speed command is under 6000RPM, motor speed can be regulated to the speed command without any issue? Is the output voltage enough to drive the motor above 6000RPM? 

    Thanks,

    Jiaxin

  • Hai Jiaxin, 

    Output voltage is enough to drive the motor above 6000 RPM we are sure about it, inspite of taking care about back emf issue, field weakening and feed forward compensation still  the speed is not increasing above 6000 RPM. 

  • Hi Sai,

    Just checking in to see if the issue is still open. You may check from the aspects below.

    1. DC voltage headroom (which we already discussed, but did you try to increase it a little bit for a test?)

    Theoretically, 48V can only output phase peak voltage at around 39V, if your peak BEMFx6000RPM approaches 39V, the current loop will saturate and speed will clamp at that point.

    2. Iq PI controller output saturation

    Could you please monitor your id and iq output in real-time at 6000RPM, and see if they are near the maximum settings?

    3. Max modulation index

    The maximum modulation index limits the total voltage output of the FOC inverter.

    4. LUT coverage at 6000RPM

    Since you are using a 2D LUT to provide Id, Iq references. You may:

    Verify the LUT's speed axis covers ≥ 6000 RPM — if the LUT only goes up to 6000 RPM (last column), the interpolation will output a clipped/constant value at and beyond that point.

    Check for boundary saturation in the index calculation — if your speed-based column index hits the last entry, no further FW current increase will be commanded.

    Thanks,

    Jiaxin

  • Hai Jiaxin 

    I have already checked the 

    1. DC voltage Headroom 

    2. Id and iq are given as per the LUT defined previously and the actual  id and iq are following the reference values 

    3. Modulation index limits are also watched and taken care of 

    4. The LUT is perfectly defined upto 9000RPM and there is no issue found in the LUT 

    Could you throw some light on minimum number of clock cycles the CPU requires for FOC based on the switching frequency and due to which the issue of High speed Phase Lag occurs limiting the torque and in turn the speed. 

    Thanks 

    Sai Chaitanya 

  • Hi Sai,

    The minimum CPU cycles required for FOC at a given switching frequency is around 150~200. When the ISR consumes a large fraction of the PWM period, the control law is applied later in the cycle, adding a delay to the current‑control loop. This delay reduces the loop bandwidth, causing the PI controllers to saturate earlier, increasing current ripple, and ultimately capping the torque that can be produced at high speed. You need to keep your motor control ISR execution <30% of the PWM period.

    Thanks,

    Jiaxin