Simulating NEC Voltage and Current Values

The 2017 edition of the National Electrical Code introduces alternative methods for deriving maximum voltage and current values for PV power systems. Specifically, new language in sections 690.7 and 690.8 allows licensed professional engineers to use simulation programs to determine these values for PV systems with a generating capacity of 100 kW or greater. In this article, I review the new subsections, provide a detailed case study and consider the potential benefits of calculating maximum voltage or current values based on simulation program results.

Maximum Voltage

The voltage from a PV power source is inversely proportional to temperature, meaning that maximum system voltage is a function of the lowest expected ambient temperature. To account for temperature dependency, since NEC 1999 section 690.7 has included a table with voltage correction factors for crystalline and monocrystalline silicon modules. Since this table is not module specific, its correction factors are inherently conservative.

To better represent module-specific temperature effects, the Code-making panel introduced an allowance in NEC 2008 allowing for maximum voltage calculations based on manufacturer-provided temperature coefficients. Since the minimum expected ambient temperature for most locations occurs before sunrise, this calculation method is also inherently conservative. (See “Array Voltage Considerations,” SolarPro, October/November 2010.)

NEC 2017 includes both of these well-known methods: 690.7(A)(1) details the temperature coefficient–based calculation allowance, and 690.7(A)(2) details the table-based correction factor calculation allowance. What is new is the allowance in 690.7(A)(3): “For PV systems with a generating capacity of 100 kW or greater, a documented and stamped PV system design, using an industry-standard method and provided by a licensed professional electrical engineer, shall be permitted.”

An informational note directs supervising engineers to Sandia National Laboratories’ Photovoltaic Array Performance Model. Simulation programs that include Sandia’s industry-standard calculation method can calculate maximum voltage while accounting for product-specific temperature coefficients as well as site-specific meteorological data. Engineering calculations based on these modeled results should provide a good representation of the maximum voltage in the fielded array.

Maximum Current

PV source- and output-circuit current are both directly proportional to irradiance, meaning that short-circuit current increases or decreases linearly according to changes in irradiance. To account for the effects of high-irradiance conditions, the Code-making panel responsible for NEC 1999 introduced a 125% solar enhancement multiplier for maximum PV source- and output-circuit calculations. This multiplier is very conservative given that elevated irradiance conditions associated with edge-of-cloud or similar effects are unlikely to continue for 3 hours.

While five subsequent Code editions mandated the use of the 125% irradiance multiplier, NEC 2017 allows for two maximum current calculation methods. 690.8(A)(1)(1) details the traditional method, based on a 125% multiplier, to account for high- irradiance conditions. Alternatively, 690.8(A)(1)(2) allows licensed professional engineers to simulate this value for PV systems with a generating capacity of 100 kW or greater. In the latter case, it says: “The calculated maximum current value shall be based on the highest 3-hour current average resulting from the simulated local irradiance on the PV array accounting for elevation and irradiance. The current value used by this method shall not be less than 70 percent of the value calculated using 690.8(A)(1)(1).”

An informational note directs supervising engineers to the Photovoltaic Array Performance Model and notes that the System Advisor Model (SAM) from the National Renewable Energy Laboratory (NREL) uses Sandia’s model. Calculating maximum current values based on simulation program results accounts for system-specific installation variables as well as location-specific weather data. These modeled and averaged results should provide an accurate representation of the actual 3-hour maximum current values in a fielded PV array.

Case Study

Table 1 provides system and component specifications required for calculating maximum voltage and current based on simulation program results. Figure 1 provides a high-level overview of the basic calculation process. As this flowchart illustrates, I start by entering project data into a system design model. I then select specific model data for post-processing to calculate maximum voltage and current values.

The calculations recommended in this example are appropriate for standard non-concentrating crystalline silicon PV modules, but may not be appropriate for all module technologies. The Code specifically requires that a licensed professional electrical engineer document and stamp these calculations. I recommend further that supervising engineers have training and experience relevant to PV power systems and hold an AHJ-accepted state license.

Generating capacity. The dc side of the example PV system integrates 380 Yingli polycrystalline PV modules, rated 330 W each, into 19-module source circuits; the 20 source circuits are split evenly across four 30 kW–rated 3-phase string inverters, with five source circuits per inverter. A new definition in Article 690 defines the generating capacity of a PV power system as “the sum of the parallel-connected inverter maximum continuous output power at 40°C in kilowatts.” The example PV system has a generating capacity of 120 kW (4 x 30 kW), which exceeds the ≥100 kW threshold in 690.7(A)(3) and 690.8(A)(1)(1). Therefore, the Code allows a licensed professional electrical engineer to calculate maximum voltage and current based on simulation program results.

Weather data. Reliable calculations require high-quality data, especially for weather. The example PV system connects directly to the local utility grid in Morrisville, North Carolina, home to the Raleigh-Durham (RDU) International Airport. The National Solar Radiation Data Base categorizes the typical meteorological year 3 (TMY3) data for RDU International (site number 723060) as a Class I dataset, which is the most certain weather data classification. While TMY3 weather data selection is outside the scope of this article, Class II datasets are relatively less certain, and Class III datasets are incomplete. (See “PV Performance Modeling: Assessing Variability, Uncertainty and Sensitivity,” SolarPro, September/October 2015.)

Simulation model. The PV Performance Modeling Collaborative (PVPMC) is an excellent resource for identifying industry-standard calculation methods that meet the new Code requirements in 690.7(A)(3) and 690.8(A)(1)(2). For example, the PVPMC website ( clarifies that Sandia utilizes a point-value model that defines five points on an I-V curve and uses these to predict performance as a function of environmental variables. The industry-standard method I used for this example is a single diode–equivalent circuit model known as the De Soto model or the five-parameter module model. This model can define the entire I-V curve as a continuous function of cell temperature and total absorbed irradiance. The PVsyst module model is another industry-standard single diode– equivalent model.

Modeling tool. PVsyst ( is perhaps the industry’s best-known performance modeling tool , but it is a fee-based platform available only to licensed users. Therefore, I chose NREL’s free performance modeling tool for this example, specifically version 2017.9.5, 64 bits, revision 3. Interested parties can download SAM software via NREL’s website (

Model inputs. To input project data, I started a new detailed PV project without the optional financial model. The inputs to the model are organized by input page and include location and resource, module, inverter, system design, shading and snow, and losses. 

Location and resource: I specified the weather data by selecting the TMY3 dataset for RDU. In most cases, you will choose a location at or near your site from the solar resource library. If you have a custom weather file, you can upload these data via this input page.

Module: I selected “CEC performance model with user-entered specification” from the menu. This selection allows users to manually enter specific PV module data. The CEC performance model is an extension of the original De Soto five-parameter model, which uses a database of module parameters that the CEC maintains. As such, the CEC performance model meets the Code requirement for an industry-standard calculation method. I entered the module specification from the manufacturer’s datasheet. To simulate the ground-mounted array, I selected “ground or rack mounted” and “one story building height or lower.”

Inverter: I selected “inverter datasheet” from the menu. This allows users to manually enter inverter-specific data. While inverter data are not as important to the results as module data, I recommend using a model that is as accurate as possible. I entered inverter specifications from the manufacturer’s datasheet, and I left the inverter losses at the default settings.

System design: I specified an array design with 19 modules per string, 20 strings and four inverters. I modeled the system as a single dc array (subarray 1) with a fixed tilt of 25° and a 180° azimuth. I left the ground-coverage ratio at the default value.

Shading and snow: Since the intent of this exercise is to model the worst-case (maximum) voltage and current, the results should not take any shading or snow effects into account, so I turned all shading and snow input off. With self-shading turned off, factors such as row pitch and ground-coverage ratio are irrelevant to the results.

Losses: The same logic applies to system losses. I set all the loss values to 0%. Ignoring electrical losses and soiling losses ensures that the calculations will return the worst-case design values.

Having set all of the inputs, I saved the project settings, ran the simulation and collected the following data for each hour of the model year: weather file ambient temperature (°C), subarray 1 cell temperature (°C), subarray 1 POA total irradiance nominal (W/m2) and subarray 1 open-circuit voltage (V). In Figure 1, these are the values in the third row of the flowchart (boxed in green) derived by entering project specifications into a no-loss system design model. Additional data processing is required to arrive at the maximum voltage and current values.

Maximum voltage calculation. To calculate the maximum open-circuit voltage for each hour of operation, I used Equation 1 (see “Post-Processing Equations”), where Voc0 is the calculated open-circuit voltage at that hour, Vocm0 is the open-circuit voltage from the model for that hour, βVoc is the PV module temperature coefficient of Voc (in this case, 0.32%/C), Tamb0 is the weather file ambient temperature for that hour, and Tc0 is the PV module cell temperature from the model for that hour.

Equation 1 corrects modeled Voc values, which are based on module cell temperature, to a Voc based on ambient temperature, the worst-case condition for that hour. After processing the modeled Voc values, I sorted the data to identify the maximum open-circuit voltage for any hour of the year. In this case, the calculated maximum PV system voltage based on simulation program results is 967.5 V. By comparison, the maximum voltage based on the voltage correction factors in Table 690.7(A) is 981.9 V, assuming an extreme minimum temperature of -10.3 °C.

Maximum current calculation. To calculate the maximum short-circuit current for each hour of operation, I used Equation 2 (see “Post-Processing Equations”), where Isc0 is the calculated short-circuit current for that hour, Isc is the PV module nameplate short-circuit current at STC (in this case, 9.29 A), Ee0 is the POA total irradiance nominal from the model for that hour, ESTC is the STC irradiance (1,000 W/m2), αIsc is the PV module temperature coefficient of Isc (in this case, 0.05%/C), Tc0 is the PV module cell temperature from the model for that hour and TSTC is the STC cell temperature (25°C).

Equation 2 calculates the short-circuit value for a given hour based on the POA total irradiance and module cell temperature, which is the worst-case condition for that time. I then calculated 3-hour average short-circuit current values and found the maximum of those 3-hour averages. In this example, the maximum 3-hour current average is 9.95 A. By comparison, the traditional Isc value according to 690.8(A)(1)(1) is 11.61 A (9.29 A × 125%). It is important to remember that the 690.8(A)(1)(2) current value may not be less than 70% of the value calculated in 690.8(A)(1)(1). In this example, 9.95 A fulfills that criterion as it is greater than 8.12 A (11.61 A × 70%).

Validation. I used three basic techniques to validate the output of these maximum voltage and current calculations. First, I verified at each step that the results were reasonable. Second, I changed variables in both the performance model and the post-processing spreadsheet to verify that the outputs changed as expected. This is how I discovered that a no-loss system design model produces the worst-case maximum voltage and current values. Lastly, I used graphical techniques, such as the plots in Figure 2, to verify that the outputs were statistically significant.

Potential Benefits

The engineering analysis in the previous example lowered both the maximum voltage and current values compared to traditional methods. Does this provide any real benefit to the client or project developer? Do the potential benefits outweigh the additional engineering costs? Perhaps not in this simple string inverter–based example, but consider the implications in large-scale PV power systems deployed using central inverters.

In the case study, the new current calculation method reduced the maximum PV source-circuit current from 11.61 A to 9.95 A, which is a 14.3% reduction or a percentage difference or improvement of 15.4%. In a central inverter–based system, this lower current value could result in a design that requires fewer combiner boxes. In some scenarios, these reduced string-current values could produce cost savings for parallel circuit array harnesses and custom homerun harnesses. As systems scale, these balance of system cost savings add up and offset additional engineering costs.

There may be instances where the ability to add a module to a PV source circuit results in a design that improves overall system economics. However, from a financial performance perspective, improvements in source-circuit current values are likely a more interesting avenue of exploration and optimization. The maximum current comparison sidebar above illustrates how these improvements will vary predictably based on project location, weather data source and mounting details. These data will help project stakeholders identify opportunities for design optimization based on PV source-circuit current improvements.

Charles Ladd, PE / Ecoplexus / Durham, NC /

Article Discussion

Related Articles