PMSM torque control is not estimating desired torque.

5 次查看(过去 30 天)
In the above example, the fixed values of inputs were fed.
I replaced those inputs using a different approach as follows.
Drive cycle(input)-----> Throttle position and Brake output.
Throttle position (input) -----> Torque setpoints as output.
Torque setpoints as input and a matlab function which calculates torque request and this is an input to MCU.
Following issues were noticed:
  1. Desired torque not achieved.
  2. The model is only running for first 20s and it gets frozen afterwards.
  3. Ultimately, vehicle speed is not following drive cycle.
It would be really nice, if, anyone from this community help me to resolve this issue. I have attached my model for reference.
Thanks!

采纳的回答

Sabin
Sabin 2023-1-3
First, there is an algebraic loop in your model. Most likely the Solver is running into difficulties because of this and looks like is doing nothing after 20 seconds. Another issue with the model is using a fundamental sample time of 0.01 seconds and 10 Hz for generating PWM signals. That’s way too unrealistic (for EV applications I expect about 10000 Hz switching frequency). I believe you did this to speed up the simulation and allow for long simulation (100 seconds in the model). A better solution would be to use an Average-Value Voltage Source Converter (Three-Phase) and feed modulation waveforms that can be obtained using a PWM Timing and Waveform Generator (Three-phase, Two-level) block. Continuous controllers and simulation would also speed up the simulation in this case.
If you don’t need inner current control loops you can replace the inverter with a Controlled Current Source (Three-Phase) as in IPMSM Outer Loop Controller Evaluation example, feeding the reference currents to the system.
  3 个评论
Rohit Pujari
Rohit Pujari 2023-1-5
@Sabin Did you find any solution? Would be really greatful if you could help me out here. Thanks!
Sabin
Sabin 2023-1-5
From what I see you are mixing continuous and discrete simulation in a way taht might create issues. There are some controllers that are discrete and some are continuous. Then, there are unit delays used to break algebraic loops but if continuous variable step simulation is used is better to use transfer functions to break algebraic loops. Better to break the model in smaller functionalities and work from there. For example I would first figure out the electric drive torque control by using an Ideal Angular Velocity Source. When everything is working you can add the vehicle dynamics and control. This way is easy to debug and find problems.

请先登录,再进行评论。

更多回答(0 个)

Community Treasure Hunt

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

Start Hunting!

Translated by