39 lines
1.3 KiB
Python
39 lines
1.3 KiB
Python
import pvlib
|
|
import pandas as pd
|
|
import matplotlib.pyplot as plt
|
|
from pvlib.modelchain import ModelChain
|
|
from pvlib.location import Location
|
|
from pvlib.pvsystem import PVSystem
|
|
from pvlib.temperature import TEMPERATURE_MODEL_PARAMETERS
|
|
|
|
latitude = 47.2675
|
|
longitude = 11.3910
|
|
tz = 'Europe/Vienna'
|
|
surface_tilt = 0
|
|
surface_azimuth = 180
|
|
|
|
database_module = pvlib.pvsystem.retrieve_sam('SandiaMod')
|
|
database_inverter = pvlib.pvsystem.retrieve_sam('CECInverter')
|
|
|
|
module = database_module['Canadian_Solar_CS5P_220M___2009_']
|
|
inverter = database_inverter['ABB__PVI_4_2_OUTD_US__208V_']
|
|
modules_per_string = 10
|
|
strings_per_inverter = 2
|
|
|
|
temperature_parameters = TEMPERATURE_MODEL_PARAMETERS['sapm']['open_rack_glass_glass']
|
|
|
|
location = Location(latitude, longitude, tz)
|
|
system = PVSystem(surface_tilt=surface_tilt, surface_azimuth=surface_azimuth, module_parameters=module,
|
|
inverter_parameters=inverter, temperature_model_parameters=temperature_parameters,
|
|
modules_per_string=modules_per_string, strings_per_inverter=strings_per_inverter)
|
|
|
|
modelchain = ModelChain(system, location)
|
|
|
|
times = pd.date_range(start='2021-07-01', end ='2021-07-07', freq='1min', tz=location.tz)
|
|
|
|
clear_sky = location.get_clearsky(times)
|
|
#clear_sky.plot(figsize=(16,9))
|
|
|
|
modelchain.run_model(clear_sky)
|
|
modelchain.results.ac.plot(figsize=(16,9))
|
|
plt.show() |