I am performing a PV integration hosting capacity penetration study for my college project. One of my friends recommended me to use InvControl volt var curve to automatically adjust the amount of active and reactive power injected/absorbed to stay within the voltage bounds. Since it is my first "serious" project on OpenDSS, I have hard time making InvControl work. Every time I include it into the code it messes up the system - I receive "Max Control Iteration Exceeded" error. When I try to remove the InvControl from the code, all voltages of the nodes are set to 0, for some reason.
I will post my files down below, with hope that someone who is more knowledgable than me can help me out. Thank you)
My PV System code with InvControl:
New PVSystem.PV1 phases=3 bus1=m1047303 kv=12.47 Pmpp=500 kVA=500 irradiance=1.0 conn=wye %Pmpp=100
In the case that you are trying to model, there are a lot of control actions occurring, including the actions due to the InvControl and the voltage regulator controls, for example.
With that in mind, and also the low deltaQ_factor (0.2) in the InvControl, I was able to get your files to simulate (solve) by setting the maximum control iterations to 50.
You might even set the maximum control iterations as high as 100. But going to a higher value than 100 usually doesn't help. If the controls haven't settled in 50 to 100 iterations, there is likely some oscillatory behavior going on. The eventlog is helpful in debugging those cases.
You can add the maxcontroliter (maximum control iterations) statement near your maxiterations (maximum solution iterations) like the following, in your run file.
clear
Compile (master.dss)
Set Maxiterations=20 ! Sometimes the solution takes more than the default 15 iterations
set maxcontroliter=50
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Hello,
I am performing a PV integration hosting capacity penetration study for my college project. One of my friends recommended me to use InvControl volt var curve to automatically adjust the amount of active and reactive power injected/absorbed to stay within the voltage bounds. Since it is my first "serious" project on OpenDSS, I have hard time making InvControl work. Every time I include it into the code it messes up the system - I receive "Max Control Iteration Exceeded" error. When I try to remove the InvControl from the code, all voltages of the nodes are set to 0, for some reason.
I will post my files down below, with hope that someone who is more knowledgable than me can help me out. Thank you)
My PV System code with InvControl:
New PVSystem.PV1 phases=3 bus1=m1047303 kv=12.47 Pmpp=500 kVA=500 irradiance=1.0 conn=wye %Pmpp=100
New XYcurve.generic npts=5 yarray=[1 1 0 -1 -1] xarray=[0.5 0.92 1.0 1.08 1.5]
New InvControl.VoltVar mode=VOLTVAR voltage_curvex_ref=rated vvc_curve1=generic
~ deltaQ_factor=0.2 RefReactivePower=VARMAX eventlog=yes
Hi,
In the case that you are trying to model, there are a lot of control actions occurring, including the actions due to the InvControl and the voltage regulator controls, for example.
With that in mind, and also the low deltaQ_factor (0.2) in the InvControl, I was able to get your files to simulate (solve) by setting the maximum control iterations to 50.
You might even set the maximum control iterations as high as 100. But going to a higher value than 100 usually doesn't help. If the controls haven't settled in 50 to 100 iterations, there is likely some oscillatory behavior going on. The eventlog is helpful in debugging those cases.
You can add the maxcontroliter (maximum control iterations) statement near your maxiterations (maximum solution iterations) like the following, in your run file.