PMLSM Controller Over Active

5 views (last 30 days)
John
John on 7 Aug 2025
Commented: John on 11 Aug 2025
I started with the three phase PMLSM example: https://www.mathworks.com/help/sps/ug/three-phase-pmlsm-drive.html . I modified the outer control loop so that it regulates to a velocity set point instead of tracking position. The output scope capture shows that after some initial overshoot and undershoot it is able to maintain 0.5 m/s and then 0 m/s when a step change in the setpoint changes. However, the controller appears to be over active and the thrust and phase currents appear extremely noisy. Can someone give me some tips are troubleshooting steps to determine how to smooth out the control effort? Thank you.

Accepted Answer

Sabin
Sabin on 8 Aug 2025
There are a few things you can try.
  1. Increase the inverter switching frequency (in the example 2 kHz is used) and reduce the fundamental sample time. This will slow down the simulation, but we should see less ripple from the discretization. Controllers will need retuning as well.
  2. Re-tune the controllers so that they meet your specific requirements. Check this example if you’re considering using the PID autotuner block: https://www.mathworks.com/help/slcontrol/ug/tune-field-oriented-controllers-for-a-pmsm-using-closed-loop-pid-autotuner-block.html
  1 Comment
John
John on 11 Aug 2025
Thanks for your suggestion. Increasing the PWM switching frequency did help. Also, I noticed the main problem was I had modeled the stator inductance to be significantly lower than the actual motor. Once the model parameters were corrected the phase currents became a lot smoother.

Sign in to comment.

More Answers (0)

Products


Release

R2024b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!