Advanced PV
This feature is only available to certain customers. If you are interested in using this feature, please contact Zepben for more information.
Advanced PV (also referred to as Volt-Var) lets PV inverters actively regulate voltage by controlling reactive (Volt-VAr) and/or active (Volt-Watt) power output, instead of being modelled as simple generators.
It is configured via inverterControlConfig (HcInverterControlConfigInput), which assigns an inverter control profile to PV systems based on a cut-off commissioning date. Profiles themselves are defined in the inverter_control_profiles table, and support VOLTVAR, VOLTWATT, or combined VV_VW modes.
For forecast (scenario-allocated) PV systems, the commissionedDate used against the cut-off defaults to January 1st of the forecast year, as noted in Scenarios.
Advanced PV applies to both existing PV in the base model and scenario-allocated PV, on LV equipment only (base voltage below 1000V). Advanced PV is currently only supported with loadPlacement = PER_USAGE_POINT (the default); contact Zepben for more details. See the notes under Inverter Control Config for how each PV system is assigned a profile.
How it works in the model
Each PV system that receives a profile is translated into an OpenDSS PV system with an inverter controller, instead of a fixed-output generator. The controller responds to the voltage at the inverter: volt-var changes the reactive power it absorbs or injects, and volt-watt reduces its active power as the voltage rises, following the curves in the profile (inverter_mode selects volt-var, volt-watt or both). PV systems without a profile are translated as regular generators.
Because the voltage depends on what the inverters do, each interval is solved repeatedly until the controls settle: the inverters respond, the voltage moves, and they respond again. Each step is limited by delta_q_factor and stops once the changes fall below the profile's tolerances. Advanced PV runs therefore take noticeably longer than runs with plain generators, and the number of control iterations allowed per interval is set by maxControlIter in the Solve Config.
Reactive power has priority over active power: when an inverter reaches its apparent power limit, its active power is reduced first, as AS/NZS 4777.2 requires.
Each inverter switches on when the PV array output reaches 1% of its kVA rating and off when it falls below that, and exports no active power while off. This 1% cut-in is fixed and not configurable.
Existing PV in the base model is sized from its customer's metered export, so a system's capacity, and therefore its reactive power capability, is based on its peak export rounded up and not on its inverter rating. A customer who uses much of their generation on site has a larger real inverter than the model has, so the model understates that capability. Scenario-allocated PV uses the inverter capacity from its PV profile.
Before you run
- Set
maxControlIterabove the default of 20, for example to 100. Advanced PV needs more control iterations than plain generators, and some feeders need well over 20 in busy intervals. - Check the commissioning dates in your source data. PV without a
commissionedDateis treated as installed before the cut-off (see Inverter Control Config), so if dates are missing, most existing PV may be modelled as plain generators instead of receiving theafterCutOffProfile. - Check your profile curves include the end points described in the notes under
inverter_control_profiles, otherwise the curves can extrapolate to nonsensical values at high voltage.
Common problems
- Error 485 (Max Control Iterations Exceeded): see troubleshooting. If it persists on one feeder even with a high
maxControlIter, look at where that feeder's largest PV is connected in the network data. A large PV at the end of a long run of thin LV mains is a very weak connection and the controls can oscillate there. A PV attached to the wrong transformer in the source data looks exactly like this. - Results differ from a run with plain generators: expected. Because the inverters curtail their output at high voltage and absorb reactive power, the PV energy and over-voltage results of an Advanced PV run are lower than those of the same network with plain generators.
Generation voltage metrics with Advanced PV
The generation voltage metrics (for example gen_overvoltage_kwh, gen_exceeding_normal_voltage_kwh and their _cecv and _co2 versions) estimate curtailed energy by scaling the generation recorded in each interval by how far the zone voltage is outside its normal limits (zero at the first threshold, one at the outer threshold). They assume the generation in the model has not been curtailed. With Advanced PV the model has already limited PV output (volt-watt, and reactive power priority under volt-var) and lowered voltage (volt-var), so the energy the inverters curtailed is not in the results, and the scaling is applied to the generation that remains. In testing, the energy curtailed by the inverters was about 5 to 8% of PV energy. Treat these metrics as an estimate of voltage-driven curtailment that is not comparable with runs that do not use Advanced PV: compare Advanced PV runs only with other Advanced PV runs.
Advanced PV limitations
- Inverter over-voltage disconnection is not modelled. AS/NZS 4777.2 requires inverters to trip on sustained over-voltage (and on over-voltage events), and real inverters will disconnect above about 258 V. The model instead holds a PV at its volt-watt floor at any voltage above the curve, so results at those voltages (voltage extremes and energy) do not include trips.
- A PV connection that exports reactive power only (no active generation) is modelled as a placeholder PV system with a negligible rating and does not export reactive power. In testing this had no material effect on voltages.