Loading [MathJax]/jax/output/HTML-CSS/jax.js

Introduction to IV Curves

Xuan Ma, Wei-Heng Huang

2021-04-14


An IV curve indicates the relationship between current and voltage for a solar cell or module. Thus for a single IV curve, the dataset usually consists of several data points of voltage V and the associated current I. As is shown in Figure 1, a standard IV curve has the shape of a concave curve with nearly no change of current at small voltage, and a sharp decrease of current at a certain voltage point.

Solar cell parameters in IV curves are important in evaluating the performance and degradation of PV modules. These performance parameters include the maximum power point Pmp, short-circuit current Isc, open-circuit voltage Voc, shunt resistance Rsh, series resistance Rs, and fill factor FF. The first five of these parameters are illustrated in Figure 1. Isc is defined as the current at zero voltage (the y-intercept of the IV curve), while Voc is the voltage at zero current (the x-intercept). Rsh is equivalent to the negative of inverse slope of the IV curve near Isc. Rs is equivalent to the negative of inverse slope of the IV curve near Voc. Pmp is the maximum product of current and voltage on the IV curve. FF is defined as the ratio of the maximum power from the solar cell to the product of Voc and Isc, it measures the “squareness” of the solar cell. FF is not shown in Figure 1 directly, but can be calculated with the equation

FF=PmaxIscVoc

Figure 1: A standard $I-V$ curve and $I-V$ features. $I-V$ curve shows the relationship between current($I$) and voltage ($V$). $I-V$ features are maximum power point ($P_{mp}$), short-circuit current ($I_{sc}$), open-circuit voltage ($V_{oc}$), shunt resistance ($R_{sh}$), series resistance ($R_s$), and fill factor ($FF$)

Figure 1: A standard IV curve and IV features. IV curve shows the relationship between current(I) and voltage (V). IV features are maximum power point (Pmp), short-circuit current (Isc), open-circuit voltage (Voc), shunt resistance (Rsh), series resistance (Rs), and fill factor (FF)

We define the in the IV curves as how many typical IV curve shapes appear in the current-voltage relationship. The standard IV curve shown in Figure 1 is said to have only one step. There are cases (e.g. when it is cloudy) where several steps are present in a single IV curve due to activation of the bypass diodes. An example of IV curves with steps is demonstrated in Figure 2. This IV curve looks like a combination of three standard IV curves. This pattern of IV curves is an indication of mismatch between different areas of the array of module under test. This may be caused by a partial shading of the PV array or damage of PV cells, causing bypass diodes to activate. If a step is caused by partially shaded array, then the step would be transient and disappear from future IV curves. However, if the PV cell is damaged, then the step would be permanent.

Figure 2: An example of IV curve that has three steps. The IV curve is a combination of three standard IV curves. There are three local maximum power point for each standard IV curves. Out of these three, one is the global maximum power point.

Load data and run code to extract IV features

library(ddiv)
## Use the example IV curve data that has two steps
## Load the IV curve data set
data(IV_step2)
IV2 <- data.frame(IV_step2)
#?IV_step2

## Calculate number of steps in IV curve
IVsteps(IV2$I,IV2$V,plot.option=FALSE)
## Warning in id.psi.in & id.psi.far: longer object length is not a multiple of
## shorter object length

## Warning in id.psi.in & id.psi.far: longer object length is not a multiple of
## shorter object length

## Warning in id.psi.in & id.psi.far: longer object length is not a multiple of
## shorter object length

## Warning in id.psi.in & id.psi.far: longer object length is not a multiple of
## shorter object length
## $step
## [1] 2
## 
## $xsep
##       V1
## 1 10.594
## Extract two sets of IV features for each sub IV curves
IVExtractResult(IV2,plot.option=FALSE)
## Warning in id.psi.in & id.psi.far: longer object length is not a multiple of
## shorter object length

## Warning in id.psi.in & id.psi.far: longer object length is not a multiple of
## shorter object length

## Warning in id.psi.in & id.psi.far: longer object length is not a multiple of
## shorter object length

## Warning in id.psi.in & id.psi.far: longer object length is not a multiple of
## shorter object length
##   step            Isc                Rsh              Voc              Rs
## 1    2 V1#1.732#1.917 V1#2732.708#46.831 V1#68.612#37.133 V1#34.319#1.082
##                Pmp            Imp              Vmp             FF    Cutoff
## 1 V1#17.841#55.137 V1#1.692#1.646 V1#10.544#33.489 V1#15.01#77.46 V1#10.594