Solar Module I-V Curve

2D twin of the 3D PV laboratory: a lamp, a tilted 12-cell module, a variable load and the live I-V curve.

Presets

Playback

Lamp, module and load

Turn the load from a short circuit to an open circuit and the operating point slides along the curve; the maximum power sits at the knee.

Load sweep

Model checks

The science

What is modelled

A photovoltaic module is modelled as a current source (photocurrent proportional to light) in parallel with a diode and a shunt resistance, followed by a series resistance. A resistive load fixes the operating point where the load line V = I R crosses the module curve; the maximum power point is the knee of that curve.

Equations

  • One-diode model I = Iph - I0 (e(V + I Rs)/a - 1) - (V + I Rs)/Rsh, a = n N k T / q.
  • Photocurrent Iph ∝ G cosθ (1 + α(T - Tref)); saturation current I0 ∝ T3 exp(-q Eg/(n k T)) relative to 25 C.
  • Fill factor FF = Pmax / (Isc Voc), efficiency η = Pmax / (G A).
  • Temperature drift dVoc/dT ≈ (Voc - 3a - N Eg/q) / T.

Checks run in the page

  • The diode equation solved by library bisection and by an independent Newton iteration.
  • Open-circuit voltage satisfies its own closed form.
  • Golden-section maximum power point against a brute-force scan.
  • dVoc/dT against the analytic estimate.

Honest simplifications

A single-diode, lumped model with illustrative parameters: no second diode, no reverse breakdown, no partial shading or bypass diodes, no spectral response, and the cell temperature is set by hand instead of from a heat balance. Tilt only reduces irradiance by the cosine, without reflection losses at large angles.

What to try
  • Press Sweep the load and watch the orange points trace the whole curve from Isc to Voc.
  • Choose Hot module: the current barely changes but the voltage and the power fall.
  • Choose Poor module: the knee rounds off and the fill factor drops.
Current against voltage with load line
Power against voltage
I-V curves at several irradiances
Maximum power against cell temperature
Made with 🤖 ChatGPT