Resolving 'Model Structurally Singular' Error in Simulink for Voltage and Current PID Control Circuit
조회 수: 9 (최근 30일)
이전 댓글 표시
Hello MATLAB Community,
I am working on a Simulink model that implements a PID-based voltage and current control circuit for a "Fast electrochemical impedance spectroscopy of lithium-ion batteries based on the large square wave excitation signal". I have attached both my Simulink model diagram and the corresponding schematic for reference. However, when I run the simulation, I encounter the following error:
"This model is structurally singular. Check the equations."
I have double-checked my model to ensure that all components and connections match the schematic, but the issue persists. Here are the steps I have already tried:
- Ensured that there are no algebraic loops.
- Verified the proper initialization of the integrators within the PID controllers.
- Checked for any redundant or missing connections in the Simulink model.
The schematic involves a nested PID controller setup for current and voltage control, with feedback loops for both voltage and current sensing. I suspect the error might be related to either feedback connections or an incorrect modeling of dependent components.
Could anyone guide me on how to debug this issue or identify what typically causes a "structurally singular" error in such models? Any tips on diagnosing singularity in Simulink models would be greatly appreciated!
Thank you in advance for your help!
Attachments:
- Simulink Model Screenshot
- Circuit Schematic Diagram


댓글 수: 0
채택된 답변
Kautuk Raj
2025년 1월 6일
As a troubleshooting step, I suggest to set the "Index Reduction Method" in the "Solver Configuration Block" to "None". This will bypass the structural singularity check to give more informative diagnostics ( warnings and errors). You can further work with this information (or share it here) to help resolve the issue.
댓글 수: 2
Alan
2025년 6월 5일
Hi Jyothiraditya,
My understanding is that the initial conditions do not satisfy physical constraints.
As you have guessed, the next step would be to modify the initial voltage of the 3 capacitors.
The next 2 steps to explore would be as follows:
1. Add a “powegui” block to experiment with various solver settings. For additional information, please refer to the following documentation: https://www.mathworks.com/help/sps/powersys/ref/powergui.html
2. Run “Model Advisor” to perform the following checks:
a. Simscape Electrical checks: https://www.mathworks.com/help/simscape/ref/simscape-model-advisor-checks.html#buy5ipt-1
b. Solver Configuration checks: https://www.mathworks.com/help/simscape/ref/simscape-model-advisor-checks.html#buv_vys-8
If you are still working on this project, I hope these steps will achieve your objectives.
Regards,
Alan
추가 답변 (0개)
참고 항목
카테고리
Help Center 및 File Exchange에서 Trimming and Linearization에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!