Resolving 'Model Structurally Singular' Error in Simulink for Voltage and Current PID Control Circuit
13 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
Jyothiraditya Reddy
el 31 de Dic. de 2024
Comentada: Alan
el 5 de Jun. de 2025
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 comentarios
Respuesta aceptada
Kautuk Raj
el 6 de En. de 2025
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 comentarios
Alan
el 5 de Jun. de 2025
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
Más respuestas (0)
Ver también
Categorías
Más información sobre Trimming and Linearization en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!