PMSM Flux weakning model

10 views (last 30 days)
Vara Prasanna Y
Vara Prasanna Y on 18 Mar 2022
Answered: Dakai Hu on 28 Apr 2022
Dear Math Works Support Team,
I have been working on motor control - MATLAB, since 2017. I learned motor control techniques and algorithms from MATLAB examples and documents.
Now I' am looking in-to an example "ee_pmsm_field_weakening_control" here as you mentioned -----> ""This example shows how to control the rotor angular velocity above the nominal velocity in a permanent magnet synchronous machine (PMSM) based electrical-traction drive. A high-voltage battery feeds the PMSM through a controlled three-phase converter.""<--------
My questions are ?
1. what is the value of Torque constant used in this example?
------->> When I calculated I got Torque constant as 0.516, so our given Nominal voltage is 325V and Nominal velocity is 6000 approx..<-------
(So why we are using flux weakening for even 3000 speed it is drawing -30amps of Id Current).
Thank You and Waiting for your Reply...…
  2 Comments
Vara Prasanna Y
Vara Prasanna Y on 18 Mar 2022
yvprasanna55@gmail.com
mobile number :+91 9160660672

Sign in to comment.

Answers (1)

Dakai Hu
Dakai Hu on 28 Apr 2022
Hi Vara,
Thanks for your question.
One way to understand why flux weakening is needed is to check if the voltage source supplied from the inverter is sufficient to provide the modulation voltage required by the motor. To check that, you need to do 2 things:
  1. Calculate the required modulation voltage for the motor under exisiting load. This is done by calculating sqrt(Vd^2+Vq^2). Vdq are the dq-axis voltages calculated by current control loop.
  2. Compared the above modulation voltage with the instantaneous DC bus voltage. Because SVPWM is used in the model, you will have to compare sqrt(Vd^2+Vq^2) vs. (Vdc/sqrt(3))
After you finish doing the above, you can plot them together with speed on the same axis to understand why flux weakening kicked in at close to 3,000 rpm. Notice in my attached plot that sqrt(Vd^2+Vq^2) (ModulationV) is approaching the available supply voltage (AvailableV) at close to 3,000 rpm.
Hope this clarifies your question.

Products


Release

R2021b

Community Treasure Hunt

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

Start Hunting!

Translated by