Unable to run simulation for a PV microgrid

15 Ansichten (letzte 30 Tage)
Ajibola Adeleke
Ajibola Adeleke am 27 Jul. 2021
Verschoben: DGM am 25 Dez. 2022
I keep getting the error below when running my simulation for a PV microgrid:
An error occurred while running the simulation and the simulation was terminated
Caused by:
Derivative of state '1' in block 'untitled_real/PV Array/Diode Rsh/Transfer Fcn' at time 0.01 is not finite. The simulation will be stopped. There may be a singularity in the solution. If not, try reducing the step size (either by reducing the fixed step size or by tightening the error tolerances)
  2 Kommentare
Kamran Awan
Kamran Awan am 5 Jul. 2022
Verschoben: DGM am 25 Dez. 2022
were you able to solve this issue?
Pratyush Das
Pratyush Das am 25 Dez. 2022
How was it solved?

Melden Sie sich an, um zu kommentieren.

Antworten (1)

Kiran Felix Robert
Kiran Felix Robert am 24 Sep. 2021
Bearbeitet: Kiran Felix Robert am 24 Sep. 2021
Hi Ajibola,
This message may be caused by a singularity in your system. One situation where this may occur is if the values of your states differ by a large magnitude. If this is the case, the Simulink solver will have a hard time resolving your step size within the error tolerance as it attempts to "bounce" back and forth between the states.
To check if this is the case:
1. Return the states of your system as follows:
a) In the model editor go to Simulation-> Configuration Parameters
b) Select Data Import/Export, in the 'Save to Workspace' field, check 'States' to log the states as output
2. Run the simulation.
3. Plot:
plot(tout,xout)
You can see if one of the states is changing over a wide range compared to the others.
There are a couple of things you can do to try to correct this situation.
If possible, you may want to rescale the model so that the states are within a couple of orders of magnitude of one another.
Also, you can set specific error tolerances for the integrator blocks (if any) in your system.
For more information, please refer to 'Specifying the Absolute Tolerance for the Block's Outputs' section in the Integrator block documentation by entering
doc integrator
at the MATLAB command prompt.
To Resolve these, you may also try the following:
Use a stiff solver (e.g. ode15s)
Decrease initial step size, maximum step size, and relative tolerance

Produkte


Version

R2021a

Community Treasure Hunt

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

Start Hunting!

Translated by