help me to understand the following error in closed loop speed ctrl of BLDC motor

11 次查看(过去 30 天)
Jasaswini Mohanty
Jasaswini Mohanty2021-8-26
评论: Joel Van Sickel ,2022-2-15
  • ['BLDC_speed_loop/Solver Configuration']: Transient initialization at time 0.4, solving for consistent states and modes, failed to converge.
  • Nonlinear solver: Linear Algebra error. Failed to solve using iteration matrix.
  • Problems possible for transient initialization, as well as stepsize control for transient solve, due to equations (including nonlinear equations) of one or more components: all components involved'BLDC_speed_loop/BLDC'Equation locations are: 'C:\Program Files\MATLAB\R2021a\toolbox\physmod\elec\library\m\+ee\+electromech\+pmsm\+pm_rotor\+bldc\Xabc.sscp' (no line number info) 'C:\Program Files\MATLAB\R2021a\toolbox\physmod\elec\library\m\+ee\+electromech\+pmsm\+pm_rotor\+bldc\Xabc.sscp' (no line number info) 'C:\Program Files\MATLAB\R2021a\toolbox\physmod\elec\library\m\+ee\+electromech\+pmsm\+pm_rotor\+bldc\Xabc.sscp' (no line number info) 'C:\Program Files\MATLAB\R2021a\toolbox\physmod\elec\library\m\+ee\+electromech\+pmsm\+pm_rotor\+bldc\Xabc.sscp' (no line number info)

回答(1 个)

Joel Van Sickel
Joel Van Sickel 2021-8-30
Hello,
this type of error is unfortunately not very useful in debugging a model. It basically means that the solver couldn't handle the simscape portion of your model. This could be due to something in the model being unrealistic, or it could be issues with how the solver is set up. It would be helfpul if you shared you model. The most common cause of this is an unrealistic simulaiton. Examples would be accidentally leaving out free wheeling diodes on an inverter, or accidentally shorting some terminals or leaving something open circuit that shouldn't be. On the solver side, you should always start with ode23t for electrical simulations. The first thing you can do is tighten the tolerance to 1e-4 (not sure it will help with this though). Switching to a local solver with fixed step can often bypass issues like this but if you don't figure out what is wrong you will never be able to go back to variable step which is more accurate and should to be used to validate a fixed step size. Since it specifically happens at 0.4, there might be a switch or some change to the network happening specifically at that time which is causing the simscape network to be unsolvable. This might give you some hints as to what part of the model is causing the issue.
Regards,
Joel
  2 个评论
Joel Van Sickel
Joel Van Sickel 2022-2-15
It's probably the pure open cicuit on the motor. If you put a smaller resistance so that more current and go through, that could help. Start with something like 100 ohms and keep making it bigger. If it doesn't work with 100 ohms, then I am wrong and it's not the open circuit aspect of the motor. At that point I'd look at if the motor's parameters were realistic, because you can definitely run motors as generators in the simscape tool. Also, you can go to the fourth tab in the motor model, and set the bottom two variables to priority 'none'.

请先登录,再进行评论。

社区

更多回答在  Power Electronics Control

Community Treasure Hunt

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

Start Hunting!

Translated by