Set 37 — Solar PV Systems and MPPT
Every converter so far has drawn from a stiff source — a mains supply, a DC link, a battery — and delivered to a load that took what it was offered. The operating point was set by the load, and the converter's job was to reach it.
A photovoltaic module is not like that. It has exactly one operating point at which it delivers maximum power, and either side of it the available power falls away. The converter, not the load, chooses that point — and it must keep choosing it as the sun moves, the clouds pass and the panel heats up. Get it wrong and the energy is not stored for later; it is simply never collected.
The module is characterised by four numbers and their product relationships:
\[ P_{max} = V_{mp}I_{mp}, \qquad FF = \frac{V_{mp}I_{mp}}{V_{oc}I_{sc}}, \qquad \eta = \frac{P_{max}}{G\cdot A} \]Irradiance scales the current; temperature moves the voltage:
\[ I_{sc} \propto G, \qquad V_{oc}(G) = V_{oc,STC}+nN_sV_T\ln\frac{G}{G_{STC}} \]\[ \beta_{V_{oc}} \approx -0.29\%/^\circ\text{C}, \qquad \gamma_{P} \approx -0.38\%/^\circ\text{C} \]At the maximum power point the derivative vanishes:
\[ \frac{dP}{dV} = 0 \;\Longleftrightarrow\; \frac{dI}{dV} = -\frac{I}{V} \]Perturb-and-observe oscillates; the loss is second order:
\[ \frac{\Delta P}{P} \approx k\left(\frac{\Delta V}{V_{mp}}\right)^2 \]String sizing is governed by the extremes:
\[ N_{max} = \frac{V_{system}}{V_{oc}(T_{min})}, \qquad N_{min} = \frac{V_{in,min}}{V_{mp}(T_{max})} \]A transformerless inverter's leakage current follows the common-mode voltage:
\[ i_{leak} = C_{PV}\frac{dv_{cm}}{dt}, \qquad C_{PV} \approx 100\ \text{nF/kW} \]
A 72-cell PV module is rated at STC: \(V_{oc} = 45.0\) V, \(I_{sc} = 9.5\) A, \(V_{mp} = 37.0\) V, \(I_{mp} = 8.9\) A, area 1.95 m². Find the maximum power, fill factor and efficiency, the ratios that MPPT approximations exploit, and explain why the module behaves as neither a voltage nor a current source.
The maximum power and fill factor:
The fill factor measures how square the curve is — how close the module comes to delivering \(V_{oc}I_{sc}\). Values of 0.75–0.82 are typical for crystalline silicon; a low fill factor signals series resistance or shunt leakage, and it is the first thing to check on a suspect module.
The efficiency:
Defined at standard test conditions — 1000 W/m², 25°C cell temperature, AM1.5 spectrum — which never occur together in the field. Real modules run hotter than 25°C whenever the irradiance is high enough to matter, which Problem 2 quantifies.
The two ratios that matter for tracking:
Both are remarkably stable across irradiance and temperature — the voltage ratio sits between 0.76 and 0.82 for almost any silicon module in any condition. That stability is what makes the crude approximations of Problem 3 work at all.
Why the module is neither source type. The single-diode model explains the shape:
A photocurrent source in parallel with a diode. Below the knee the diode conducts negligibly and the module is a current source; above it the exponential takes over and the module becomes a voltage source. The 2.22 V thermal scale is what sets the sharpness of the transition — the knee is only a few volts wide out of forty-five.
What that means for the converter:
| Operating region | Module behaves as | Consequence |
|---|---|---|
| \(V \ll V_{mp}\) | current source | power \(\propto V\) — wasting voltage |
| \(V = V_{mp}\) | the corner | maximum power |
| \(V > V_{mp}\) | voltage source | power falls steeply — wasting current |
| \(V = V_{oc}\) | — | zero power |
A resistive load would sit wherever its own line crosses the curve, which is almost never the MPP and changes with every cloud. The converter's job is to impose the operating point — which it does by presenting whatever effective resistance is needed, through its duty ratio.
How a converter sets the operating point. A boost converter's input resistance is:
So adjusting \(D\) sweeps the effective load across the module's whole curve. That is the entire mechanism of maximum power point tracking: the algorithm decides which operating point is best, and the duty ratio delivers it.
For the same module, find the open-circuit voltage and maximum power at 500 W/m², and at a cell temperature of 65°C with coefficients \(\beta_{V_{oc}} = -0.29\%/^\circ\text{C}\), \(\alpha_{I_{sc}} = +0.05\%/^\circ\text{C}\) and \(\gamma_P = -0.38\%/^\circ\text{C}\). Also find \(V_{oc}\) at −10°C and explain why it matters.
Halving the irradiance. The photocurrent is proportional to the photon flux:
But the open-circuit voltage falls only logarithmically:
A 50% cut in sunlight gives a 48% cut in power — almost exactly proportional. The voltage barely moves, which is why a tracker's operating voltage stays roughly constant through passing clouds and why irradiance changes are the easy case.
Heating the module to 65°C:
And 65°C is an ordinary summer cell temperature for a roof-mounted module in full sun — the cell runs roughly 25–30°C above ambient. The tiny current gain is swamped by the voltage loss, which is why the power coefficient is negative and why module cooling and ventilation matter so much.
The MPP voltage moves with it:
Down from 37.0 — a 4.3 V shift on one module, which becomes 52 V on a twelve-module string. The converter's input voltage range must cover it, and Problem 5 sizes for exactly this.
Now the cold case, which sizes the insulation rather than the converter's range:
Ten per cent above the nameplate. On a cold clear morning, before any load is connected, every module in a string sits at its open-circuit voltage — and that is the worst case the whole DC system must withstand.
The two extremes and what each sizes:
| Condition | Value | Sizes |
|---|---|---|
| Coldest expected, open circuit | \(V_{oc} = 49.6\) V | maximum string length, system voltage class |
| Hottest expected, at MPP | \(V_{mp} = 32.7\) V | minimum string length, converter input range |
| STC | 37.0 V | nothing — a rating condition only |
The module's operating voltage spans a factor of 1.5 across the year, and the string must satisfy both ends simultaneously. That is the central constraint of PV system design, and it is why string sizing calculations start with the site's temperature extremes rather than its irradiance.
The consequence for energy yield:
| Effect | Typical annual impact |
|---|---|
| Temperature | −5 to −10% |
| Soiling | −2 to −5% |
| Mismatch and wiring | −2 to −3% |
| Inverter conversion | −2 to −3% |
| MPPT inefficiency | −0.5 to −2% |
| Shading | site-dependent — Problem 4 |
Note the ordering. Temperature costs several times more than the tracker's imperfection, so a designer who optimises the MPPT algorithm while mounting the modules flat against a roof has the priorities backwards.
Describe perturb-and-observe and incremental conductance tracking. For a 0.5 V perturbation step and a 10 ms sample interval, find the steady-state power loss and the time to acquire the MPP from open circuit. Compare with the two constant-ratio approximations.
Perturb and observe. The simplest possible hill-climb:
Four lines of code, two measurements, no model of the module at all. It cannot settle — on reaching the peak it steps past, sees a fall, steps back, and oscillates around the MPP indefinitely.
The cost of that oscillation is second order, because the peak is flat:
Less than a tenth of a per cent — negligible against the 15% that temperature costs. The oscillation looks alarming on an oscilloscope and is almost irrelevant to the energy yield.
The acquisition time:
A sixth of a second from open circuit — fast enough for sunrise, and this is where the real trade-off lies. A larger step acquires faster and oscillates more; a smaller one does the reverse. Variable-step implementations use a large step when \(\left|dP/dV\right|\) is large and shrink it near the peak, getting both.
Incremental conductance tests the MPP condition directly rather than inferring it from a change:
| Test | Meaning | Action |
|---|---|---|
| \(dI/dV > -I/V\) | left of the MPP | increase \(V\) |
| \(dI/dV = -I/V\) | at the MPP | hold — do not perturb |
| \(dI/dV < -I/V\) | right of the MPP | decrease \(V\) |
The middle row is the advantage: incremental conductance can recognise the MPP and stop, where P&O has no way to tell "at the peak" from "moving". In practice measurement noise means the equality is tested within a tolerance band, and some residual dither remains.
The case that separates them. Under rapidly rising irradiance:
P&O misattributes the improvement to its own perturbation and continues in what may be the wrong direction — and can walk steadily away from the MPP for as long as the irradiance keeps rising. Incremental conductance, testing a condition rather than a change, is immune. On a partly cloudy day that is worth 1–2% of yield.
The full comparison, including the crude methods:
| Method | Principle | Efficiency | Cost |
|---|---|---|---|
| Constant voltage | \(V = 0.76V_{oc}\), measured periodically | ~95% | trivial |
| Fractional \(I_{sc}\) | \(I = 0.9I_{sc}\) | ~95% | needs a shorting switch |
| Perturb and observe | hill climbing | ~98% | very low |
| Incremental conductance | test \(dP/dV = 0\) | ~99% | moderate |
| Variable-step P&O | adaptive step size | ~99% | low |
| Global scan + local | periodic full sweep | essential under shading | Problem 4 |
Note how narrow the spread is: even the crudest method captures 95%. The four percentage points between constant-voltage and incremental conductance are worth having in a commercial product, and they are smaller than the loss from a single dirty module.
Three modules are in series and one is shaded to 30% irradiance. With bypass diodes fitted, find the two local maxima and the global maximum, the loss against full sun, and the loss if the tracker settles on the wrong peak. Explain what bypass diodes prevent.
Why series shading is so damaging. Modules in series carry the same current:
Without bypass diodes the shaded module limits the entire string to its own current — two healthy modules producing a third of their capability because of one shadow. Worse, the healthy modules force current through the shaded one, driving it into reverse bias where it dissipates rather than generates. That is the hot-spot mechanism that destroys cells.
What the bypass diode does. Connected across each module (in practice across each sub-string of cells), it conducts when the module would otherwise be reverse biased:
The shaded module is removed from the circuit rather than being forced to absorb power. The string loses that module's voltage but keeps the other two at full current — and the shaded cell is protected.
Which creates two operating regimes and therefore two power peaks:
Two peaks, on the same curve, at very different voltages — and the higher-voltage one produces less than half the power of the other.
The losses:
| Case | Power | Against unshaded |
|---|---|---|
| All three unshaded | 987.9 W | — |
| Peak A (global) | 658.6 W | −33% |
| Peak B (local) | 296.4 W | −70% |
One shaded module in three costs a third of the array's output even with perfect tracking — and more than half again if the tracker settles on the wrong peak.
Why a naive tracker settles on the wrong one. P&O starts near open circuit and hill-climbs downward in voltage:
To its left the power falls before rising again to peak A, so a local hill-climber sees a decline, reverses, and stays trapped. It is behaving correctly by its own logic and is nonetheless losing more than half the available energy.
The remedies:
| Approach | Method | Cost |
|---|---|---|
| Periodic global sweep | scan the full range every few minutes | brief production loss during the sweep |
| Sweep on detection | trigger a scan when power drops unexpectedly | lower loss, needs a detector |
| Multiple MPPT inputs | separate trackers per string | more converter hardware |
| Module-level electronics | an optimiser or microinverter per module | highest cost, no shading interaction at all |
| Layout | group modules with similar shading | free — design effort |
The fourth row is why module-level power electronics exists as a product category. If every module has its own converter, one shadow costs exactly that module's output and nothing more — 33% becomes 23% here. On a roof with chimneys, dormers or trees, that difference pays for the hardware.
A string of these modules feeds a boost converter delivering a 700 V DC link, with site temperatures from −10°C to 65°C cell and a 1000 V system rating. Choose the string length, find the duty ratio range and power, and size the inductor and input capacitor at 20 kHz.
The upper limit comes from the cold open-circuit case, which is a safety limit rather than a performance one:
Exceeding it means the array can exceed its insulation rating on a cold morning — a code violation and a real hazard, since the condition occurs before anything is connected and cannot be prevented by control.
The lower limit comes from the hot MPP case and the boost converter's requirement:
Twelve modules keeps the string comfortably below the link at every condition — including cold open circuit, which matters because the boost's diode connects the string to the link even when the converter is not switching. If the cold \(V_{oc}\) exceeded 700 V the array would back-feed the link uncontrolled.
The duty ratio range:
| Condition | \(V_{in}\) | \(D\) |
|---|---|---|
| Hot (65°C), at MPP | 392 V | 0.439 |
| STC | 444 V | 0.366 |
| Cold, at MPP | ~475 V | 0.321 |
A comfortable duty range in the middle of the boost's capability — nowhere near the extreme duty ratios where Set 19's efficiency and right-half-plane zero problems appear.
The inductor, for 20% current ripple:
Large by switching-converter standards, because the input current is only 8.9 A — a high-voltage, low-current source. It is the mirror image of the battery converter in Set 39, which will need microhenries at hundreds of amps.
The input capacitor is sized by a requirement unique to PV:
The reason is the tracker. If the module's voltage ripples appreciably, the operating point sweeps back and forth across the curve and the average power falls below the peak — the same second-order loss as the P&O oscillation in Problem 3, but at 20 kHz and continuous. Holding the ripple to 1% keeps that loss below 0.05%.
The complete specification:
| Item | Value | Set by |
|---|---|---|
| String length | 12 modules | cold \(V_{oc} < 700\) V |
| Input range | 390–595 V | hot MPP to cold open circuit |
| Power | 3.95 kW | — |
| \(L\) | 4.6 mH | 20% ripple |
| \(C_{in}\) | 10 µF film | 1% PV voltage ripple |
| Switch and diode | 1200 V | 700 V link plus margin |
| Diode | SiC Schottky | no reverse recovery — Set 3 |
| String fuse | required for 3+ parallel strings | reverse current into a faulted string |
The last row is a PV-specific hazard. If one string faults, the others can drive reverse current into it — and a module's reverse-current rating is small. Fuses are mandatory once three or more strings are paralleled, because two strings cannot supply enough to exceed the rating but three can.
A 5 kW transformerless single-phase inverter connects the array to a 230 V grid. Estimate the leakage current with unipolar PWM given 100 nF/kW of array capacitance to earth, explain why it is unacceptable, describe the topologies that solve it, and compute the European weighted efficiency.
The problem unique to PV. A photovoltaic array is a large conductive surface mounted on an earthed structure:
Half a microfarad, rising with damp or dirty panels. In a transformer-isolated inverter that capacitance carries no current, because there is no galvanic path. Remove the transformer — as every modern inverter does, for efficiency and cost — and it becomes a direct path from the array to earth.
What drives current through it. Set 26 established that an inverter's common-mode voltage steps at the switching frequency:
Kiloamp impulses against a 300 milliamp limit. The impulses are nanoseconds long so the RMS is far lower, but it remains orders of magnitude over — and this is a shock-hazard limit, not a performance one, so it is absolute.
Why unipolar PWM is the culprit. Set 25 recommended it for halving the filter and doubling the effective frequency:
| Modulation | \(v_{cm}\) | Leakage | Efficiency |
|---|---|---|---|
| Bipolar | constant | negligible | poor — large filter, high ripple |
| Unipolar | steps at \(f_s\) | unacceptable | good |
An exact conflict. The modulation that gives the best waveform gives the worst leakage, and the one that eliminates leakage gives a large filter and several points of efficiency. Neither is acceptable in a product, which is why PV inverters use topologies that exist nowhere else.
The solution: decouple the array during the zero state.
| Topology | Method | Devices |
|---|---|---|
| H5 | a fifth switch in the DC+ rail | 5 |
| HERIC | an AC-side bypass pair | 6 |
| H6 | switches in both DC rails | 6 |
| NPC / T-type | the neutral point is clamped — Set 29 | 4–6 |
All four achieve the same thing: during the freewheeling interval the array floats, its potential is held by its own capacitance, and no common-mode step occurs. The result is unipolar waveform quality with bipolar leakage — and it is why H5 and HERIC are patented topologies with recognisable names.
The efficiency figure that is actually quoted. A PV inverter runs at partial load most of the time, so peak efficiency is nearly meaningless:
| Load | Weight | Efficiency |
|---|---|---|
| 5% | 0.03 | 90.0% |
| 10% | 0.06 | 94.0% |
| 20% | 0.13 | 96.5% |
| 30% | 0.10 | 97.2% |
| 50% | 0.48 | 97.8% |
| 100% | 0.20 | 97.5% |
Note the weighting: half the total sits at 50% load and only a fifth at full power. Optimising an inverter for peak efficiency at rated output — the instinct from every other converter in this book — optimises for the condition that contributes least. PV inverters are deliberately designed to peak near half load.
What else the grid interface must do:
| Requirement | Implementation |
|---|---|
| Anti-islanding | active frequency or impedance detection |
| Grid synchronisation | phase-locked loop |
| Current THD < 5% | LCL filter — Set 32 |
| DC injection < 0.5% | measure and null the mean output current |
| Reactive power on command | the inverter is a controlled current source |
| Voltage and frequency ride-through | stay connected through disturbances |
| Isolation monitoring | continuous, before and during operation |
Anti-islanding is the safety-critical one. If the grid disconnects, the inverter must stop within about two seconds — otherwise it energises a supposedly dead network with a maintenance crew working on it. Passive detection fails when local load happens to match generation, so active methods deliberately perturb the frequency and watch whether the grid resists.
Key Formulas
| Quantity | Relation | Notes |
|---|---|---|
| Maximum power | \(P_{max} = V_{mp}I_{mp}\) | 329.3 W |
| Fill factor | \(FF = \dfrac{V_{mp}I_{mp}}{V_{oc}I_{sc}}\) | 0.75–0.82 typical |
| Efficiency | \(\eta = P_{max}/(GA)\) | At STC |
| Single-diode model | \(I = I_{ph}-I_0\left[e^{(V+IR_s)/nN_sV_T}-1\right]-\frac{V+IR_s}{R_{sh}}\) | — |
| Thermal voltage | \(V_T = kT/q = 25.7\ \text{mV}\) | At 25°C |
| Irradiance on current | \(I_{sc} \propto G\) | Linear |
| Irradiance on voltage | \(V_{oc}+nN_sV_T\ln(G/G_0)\) | Logarithmic — weak |
| Temperature | \(\beta_{V_{oc}} = -0.29\%,\ \gamma_P = -0.38\%/^\circ\text{C}\) | −15.2% at +40°C |
| MPP condition | \(dI/dV = -I/V\) | IncCond test |
| P&O oscillation loss | \(\approx k(\Delta V/V_{mp})^2\) | 0.09% here |
| Constant-voltage MPPT | \(V \approx 0.76V_{oc}\) | ~95% effective |
| Max string length | \(V_{system}/V_{oc}(T_{min})\) | Cold, open circuit |
| Min string length | \(V_{in,min}/V_{mp}(T_{max})\) | Hot, at MPP |
| Boost duty | \(D = 1-V_{in}/V_{out}\) | 0.32–0.44 here |
| Input capacitor | \(C = \Delta I/(8f_s\Delta V)\) | 1% PV ripple |
| Leakage current | \(i_{leak} = C_{PV}\,dv_{cm}/dt\) | Limit 300 mA |
| European efficiency | weighted 3/6/13/10/48/20% | Half the weight at 50% load |
Common Mistakes
Treating a module as a current source at all voltages. Above the knee it is a voltage source — Problem 1.
Designing to STC. Those conditions never occur in the field — Problem 2.
Forgetting that \(V_{oc}\) rises when cold. Ten per cent above nameplate, and it sizes the insulation — Problems 2 and 5.
Optimising the MPPT algorithm before the mounting. Temperature costs 15% and tracking imperfection costs 1% — Problems 2 and 3.
Assuming P&O tracks correctly under rising irradiance. It misattributes the power increase to its own step — Problem 3.
Relying on local hill-climbing under partial shading. A trapped tracker loses 55% of the available power — Problem 4.
Omitting bypass diodes. The shaded module is driven into reverse bias and forms a hot spot — Problem 4.
Sizing a string by power rather than by temperature extremes. Both ends of the range must be satisfied — Problem 5.
Allowing large PV voltage ripple. The operating point sweeps the curve and the mean power falls — Problem 5.
Using unipolar PWM in a transformerless inverter. The common-mode step drives enormous leakage current — Problem 6.
Six problems on a source that chooses nothing for itself. The module's curve had one corner worth finding; irradiance moved it very little and temperature moved it a great deal, costing 15% of the rating on an ordinary summer day; hill-climbing found it to within 0.09% and could be trapped 55% away by a single shadow; and removing the isolation transformer created a leakage path that reshaped the inverter's topology entirely.
The same structure appears in the other great renewable source, with the variables changed. A wind turbine also has one operating point at which it extracts the most from what is available — a tip speed ratio rather than a voltage — and a converter that must hold it as the wind changes. But where a PV array's power scales linearly with irradiance, a turbine's scales with the cube of wind speed, and where a panel has no inertia at all, a 90-metre rotor has an enormous amount.
Next: Set 38 — Wind Energy Conversion Systems, where the Betz limit caps the extractable fraction at 59.3%, a 3 MW turbine's optimal tracking law turns out to be a cubic in rotor speed, the doubly-fed generator gets away with a converter rated at 23% of the machine, and fault ride-through demands a chopper because no capacitor bank could possibly absorb the energy.