2

I can import the module from Sandia Module database using the script

sandia_modules = pvlib.pvsystem.retrieve_sam('SandiaMod')
module = sandia_modules['Canadian_Solar_CS6X_300M__2013_']

But I have a problem importing the module from CEC module database

cec_modules = pvlib.pvsystem.retrieve_sam('CECMod')
module = cec_modules['Canadian_Solar_Inc__CS6K_300MS']

While executing, gives KeyError: 'Canadian_Solar_Inc__CS6K_300MS'

I took the module from https://raw.githubusercontent.com/NREL/SAM/develop/deploy/libraries/CEC%20Modules.csv

I would like to know the naming convention for CEC modules.

Roshin Raphel
  • 2,612
  • 4
  • 22
  • 40

1 Answers1

1

Missing module

I can retrieve that module with latest pvlib. Could you be using an outdated version of pvlib?

With 0.7.2 I can confirm "Canadian_Solar_Inc__CS6K_300MS" is in the cecmod database.

Note that pvlib, as of today, has its own copy of SAM's CSV files, so sometimes the copy is outdated with respect to SAM's.

Naming conventions

The naming is not decided by pvlib. Although pvlib chose to replace all spaces and "special" characters with _ (hence the difference with respect to SAM's names), it just takes the original names in SAM's CSV files.

So, is SAM responsible for these names then? It seems not. They just process the names from the CEC database exactly as they record them.

So at the end it is the CEC, which collects module and inverter efficiency measurements for listing products to qualify for California's credits, the one responsible for the naming.

Unfortunately, a convention does not seem to exist yet, so CEC module names may change in the future.

Peque
  • 13,638
  • 11
  • 69
  • 105