LAUNCHXL-F28P55X: LAUNCHXL-F28P55X: Speed Control in BUILDLEVEL FCL_LEVEL4

Part Number: LAUNCHXL-F28P55X

Tool/software:

I'm using BoostXL3PhGaN with LAUNCHXL-F28P55X. The project is dual_axis_servo_drive with PMSM motor KBMS 43 H03 B11 model

1) Why when I increase IdRef the shape of the phase current of the motor (seen on oscilloscope) becomes much more sinusoidal (much nicer)

2) Why when I increase IdRef the amplitude of the phase current of the motor (seen on oscilloscope) becomes much higher?

3) Is it correct that being PMSM, I should leave IdRef = 0 ?

4) Does this overcurrent refer to excess current on the DC bus or on the motor phase?

  • Hi,

    You're running BUILDLEVEL FCL_LEVEL4 which is closed speed loop, correct? What speed are you running the motor at? It looks like 10Hz from the waveform, which is quite slow. Can you try a higher speed?

    1) Why when I increase IdRef the shape of the phase current of the motor (seen on oscilloscope) becomes much more sinusoidal (much nicer)

    Maybe your Speed PI isn't tuned for your motor. Increasing IqRef may have the same effect.

    2) Why when I increase IdRef the amplitude of the phase current of the motor (seen on oscilloscope) becomes much higher?

    The phase current amplitude increases because the total stator current is the vector sum of the d-axis and q-axis components:

    |Is| = √(Id² + Iq²)

    3) Is it correct that being PMSM, I should leave IdRef = 0 ?

    Yes, unless going into FWC region. This is because for PMSM, torque is primarily produced by the interaction between the permanent magnet field and the q-axis current.

    4) Does this overcurrent refer to excess current on the DC bus or on the motor phase?

    We typically just OC trip from phase current in our solutions. I don't think this one is any different.

    Best,

    Kevin

  • Thank you for your reply.

    4a) When I set these two limits:

    pMotor->voltageLimit = (float32_t)(M1_MAXIMUM_VOLTAGE); // V
    pMotor->currentLimit = (float32_t)(M1_MAXIMUM_CURRENT); // currently is set to 5A

    Are these maximum values RMS? Peak-to-peak?

    I ask because I often get over currents and I decided to take an oscilloscope screenshot of the motor phase when it happens:

    As you can see, overcurrent has tripped at an Iphase pk-pk of about 16A, seems a bit high to me .. maybe it was actually tripped earlier but the system needs time before interrupting pwm etc.?

    This is to say that, in theory, I would expect overcurrent to be triggered when the current on the phase exceeds M1_MAXIMUM_CURRENT .. but it doesn't seem to happen here.. reaches a value far greater than that limit..

    4b) I often have problems with overcurrent... there is a possibility of that happening because my bench power supply can supply a maximum of 100W... whereas BoostXL-3PhGaN with 48V and 10A can supply up to 480W. What do you think?