modulepvlib

Modelling CEC and Sandia modules in PVlib


I am using PVlib to model a range of PV facilities and I am using PVlib v0.9.0.

I've been thinking about the availability of modules from the Sandia and CEC databases. I am able to model both modules from both (for CEC by setting pre-setting some of the models in the ModelChain, as described for example here How to predict energy output using CECMods).

The results vary quite a lot, and I assume that isn't just because I set the aoi_model to 'no loss'.

I am torn between using the different databases, since there are of course many more models in the CEC database, but the analysis is not as accurate/in-depth. You can get around the issue by simply taking a model from Sandia with similar peak power and model that, but this of course isn't ideal either (especially with Sandia panels being quite old at this time). What does the Sandia modelling take into consideration that the CEC doesn't?

Is there a clear preference to using CEC or Sandia for the modules? Is there any way of recreating an estimate of the Sandia data for new panels without the hardware tests?

Furthermore, is there any more data for modules available except CEC and Sandia? These are getting quite old now and any tips for more recent databases would be very appreciated!


Solution

  • What does the Sandia modelling take into consideration that the CEC doesn't?

    The CEC PV module table contains parameters for calculating PV IV curves based on effective irradiance and cell temperature. The Sandia module table has parameters to calculate (the general shape of) IV curves from effective irradiance and cell temperature, plus parameters for modeling the module's IAM profile (the increase in reflection loss at large angle of incidence) and parameters for modeling a spectral correction factor based on airmass. This website from the PVPMC is a good reference for these models: https://pvpmc.sandia.gov/modeling-steps/2-dc-module-iv/point-value-models/sandia-pv-array-performance-model/

    Sandia's IAM model is one of several IAM models available in pvlib. Try setting aoi_model='physical' or aoi_model='ashrae' for example. These models don't require module-specific parameters and so can be used easily with CEC modules.

    Is there a clear preference to using CEC or Sandia for the modules? Furthermore, is there any more data for modules available except CEC and Sandia?

    My impression is that CEC is increasingly preferred due to the source being kept up to date as manufacturers release new modules. However, it is true that the copy of that table included in pvlib is getting a bit stale. If you need a newer module not included in pvlib's table, you can use the latest table from SAM like this (source):

    SAM_URL = 'https://github.com/NREL/SAM/raw/develop/deploy/libraries/CEC%20Modules.csv'
    df = pvlib.pvsystem.retrieve_sam(path=SAM_URL)
    

    P.S. I suggest posting any remaining questions to the pvlib google group (stackoverflow is more for code questions).