Solar Energy
# PV: Engineering and Advanced Concepts

Real MJ cells which use an optical device typically use dichroic mirrors rather than a prism to send photons of different energies to the different junctions. Dichroic mirrors are surfaces which reflect photons with certain energies while allowing other photons to be transmitted.

Whether dichroic mirrors or prisms are used, it is challenging to efficiently split up the solar spectrum into bands corresponding to different PV junctions. In these types of multi-junction PV systems, the optical device typically accounts for a significant portion of the overall losses.

While designing efficient optical devices for this type of multi-junction PV cell is challenging, the actual PV cell portion is simple, as each junction can be treated like a single junction cell. This means that fabrication of the cells is not necessarily more complicated than the fabrication of regular cells, and we already have all the tools we need to simulate their performance. In this case, you can treat each junction as its own single-junction cell, the only difference from previous approaches is that each cell is only illuminated by a certain band of the solar spectrum.

So how can we actually model the performance of a layered multi-junction PV cell? We can use a modified approach that borrows many of the equations we’ve used previously to model single-junction PV cells. In the approach we’ll use, the first step is to choose the PV materials that will go into our PV cell, the thickness of each layer, and the order of the layers (i.e., which material will go on the top of the cell, which material will go second, and so on). With the structure of the cell determined, we can use absorption data for each material, along with that layers’ thickness, with the detailed balance principle to determine the minimum required recombination rate of each layer at zero voltage.

\[R_{c0} = 2A\int_{E^*}^\infty \alpha(E) \frac{2 \pi E^2}{h^3 c^2} \frac{1}{e^{E/k_BT} - 1} dE\]

The recombination rate still has the same dependence on carrier density, so it varies with voltage based on the same dependence we found earlier.

\[R_c = R_{c0} e^{V/V_c} \]

We can then use the absorptance of each layer to determine the photogeneration rate of each layer. The first layer is exposed to the full solar spectrum, which absorbs some portion of that spectrum (exciting electron-hole pairs in the process). The remaining portion of the spectrum reaches the second layer, which absorbs a different portion of the spectrum, and this continues on through all the layers. This gives us the photogeneration rate in each layer.

\[G_s = AF \int_0^{\infty} \alpha(E) Q_{solar}(E) dE \]

With the photogeneration and recombination rates for each layer, we can determine the short-circuit current and open-circuit voltage for each layer:

\[I_{SC} = q(G_s - R_{c0})\] \[V_{OC} = V_c\ln(\frac{G_s}{R_{c0}})\]

With \(I_{SC}\) and \(V_{OC}\) for each layer, we can generate IV curves for each layer of our multi-junction PV cell. In each layer, the current-voltage relation is given by

\[I = q(G_s - R_{c0}e^{V/V_c}) \approx I_{SC} - qR_{c0}e^{V/V_c}\]

Finally, we can calculate the overall power output of the cell. The power output is given by the operating current of the cell times the sum of the voltage at each junction for that operating current. We can find the operating current which maximizes output power, and the efficiency of the multi-junction PV cell is simply given by this output power divided by the incident solar power. \[\eta = \frac{P_{PV}}{P_{inc}}\]

The code environment below is set up to model the efficiency of layered multi-junction cells using the approach described on the previous pane. The table below lists the materials that you can choose from, as well as their bandgap energies and a nominal thickness (how thick a layer of that material should be to absorb most photons above its bandgap energy).

Material | Name in python code | Bandgap [eV] | Nominal thickness [um] |

Gallium Phosphide | gap | 2.61 | 20 |

Indium Gallium Phosphide | ingap | 1.84 | 5 |

Cadmium Telluride | cdte | 1.5 | 2 |

Gallium Arsenide | gaas | 1.42 | 2 |

Amorphous Silicon | asi | 1.4 | 5 |

Indium Phosphide | inp | 1.27 | 20 |

Silicon | si | 1.1 | 200 |

Indium Gallium Arsenide | ingaas | 0.75 | 5 |

Germanium | ge | 0.67 | 20 |

To add a layer in the model, create a layer object, and define its material (this must follow the naming convention given in the table and is case sensitive) and thickness (in micrometers). Some layers have already been created in the default code, so you can follow the example given for those layers. You can also choose a recombination factor for each layer - a value of 1 corresponds to the minimum required recombination rate calculated from the detailed balance principle, and larger values correspond to more realistic recombination rates when non-radiative radiation is considered.

The multi-junction cell is arranged in the list “MJPVcell.” Be sure to include each layer in that list, and be sure that they are in the correct order: the layer you want on the top of the cell should be first in the list.

Finally, you can also change the temperature of the PV cell (the default value is \(\SI{300}{\kelvin}\)) and the concentration ratio of incident sunlight, if you’d like to explore the effects of those parameters.

Running the code will calculate the efficiency of your chosen multi-junction PV cell, as well as a pair of plots. The first plot shows the incident solar spectrum, as well as the spectrum after each layer in the cell. The second plot shows the IV curve of each layer, as well as the operating current (and corresponding voltage in each layer) that leads to the maximum power output.

[[codex-solar-energy-eaac-mjrealeff]]

You can use this code to explore some questions on your own, if they interest you: - Do thicker layers always lead to higher efficiencies, or are there cases where increasing layer thickness decreases efficiency? - Does adding a new layer always increase efficiency or does it ever lead to a decrease?

Note: the code is all written for you, so you only need to change the layers making up the PV cell to explore MJ PV cell efficiency. However, if you’re interested in looking at the specifics of the calculation, the code includes commenting and documentation, so you can see exactly how the program is written.

[Should it be noted that many of these combinations wouldn’t be possible in real life due to lattice mismatch?]

×

Problem Loading...

Note Loading...

Set Loading...