prod_energia | R Documentation |
Calcula la producción de energía de un generador fotovoltaico conectado a red a partir de datos de radiación solar global y temperatura media en el plano horizontal y de parámetros característicos de los paneles FV, inversor y otros componentes. Los datos de radiación pueden ser intradiarios, diarios o mensuales.
prod_energia(
G0,
int_entrada = "MENSUAL",
int_salida = "MENSUAL",
lon = -62.8,
lat = -32.9,
beta = 30,
alfa = 0,
Pn = 1.5,
iS = 2,
year = as.POSIXlt(Sys.Date())$year + 1900 - 1,
modulo = list(Vocn = 37.7, Iscn = 8.95, Vmn = 30.3, Imn = 8.58, Ncs = 60, Ncp = 1,
CoefVT = 0.00292, TONC = 45),
generador = list(Nms = 6, Nmp = 1),
inversor = list(Ki = c(0.0095, 0.015, 0.02), Pinv = 1500, Vmin = 160, Vmax = 500,
Gumb = 20),
rendimientos = list(ModQual = 3, ModDisp = 2, OhmDC = 1.5, OhmAC = 1.5, MPP = 1,
TrafoMT = 0, Disp = 0.5)
)
G0 |
xts con dos columnas: "G0" con radiación en el plano horizontal en kW/m² y
"Ta" con temperatura media en ºC. Para datos mensuales, el índice de fechas en formato yearmon.
Para datos intradiarios, el índice de fechas debe incluir el huso horario correspondiente.
Puede ser el resultado de |
int_entrada |
Cadena de caracteres: "MENSUAL", "DIARIO" o "INTRADIARIO" según corresponda a los datos de radiación y temperatura provistos en GO. |
int_salida |
Cadena de caracteres: "MENSUAL", "DIARIO" o "INTRADIARIO" según se prefieran los
datos de salida de la función. Para |
lon |
Numérico. Longitud de la ubicación del lugar en grados. Solo utilizado para datos de entrada intradiarios. |
lat |
Numérico. Latitud de la ubicación del lugar en grados. Negativo para hemisferio sur. |
beta |
Numérico. Inclinación del panel en grados. |
alfa |
Numérico. Azimuth en grados. Para hemisferio norte, el sur es cero, es negativo hacia el este y positivo hacia el oeste. El package solaR no especifica para el hemisferio sur, pero se verificó que el norte es cero. Tomar mismo criterio que para hemisferio norte para este y oeste. |
Pn |
Numérico. Potencia nominal del sistema en kWp. |
iS |
Numérico. Grado de suciedad. Su valor puede ser 0,1,2,3,4. iS=0 no considera el efecto de suciedad y reflexión. iS=1 a iS=4 tiene en cuenta el efecto de suciedad y reflexión, donde iS=1 corresponde a una superficie limpia e iS=4 corresponde a una superficie sucia. El valor por defecto es 2. |
year |
Numérico. Indicar año al que corresponden los datos. |
modulo |
Objeto "list". Datos según package solaR: Ver sección "Details" y
"Usage" para valores por defecto. Ver además argumento |
generador |
Objeto "list". Datos según package solaR. Ver sección "Details" y
"Usage" para valores por defecto. Ver además argumento |
inversor |
Objeto "list". Datos según package solaR. Ver sección "Details" y
"Usage" para valores por defecto. Ver además argumento |
rendimientos |
Objeto "list". Datos según package solaR. Ver sección "Details" y
"Usage" para valores por defecto. Ver además argumento |
Descripción adicional de parámetros. Elementos de los siguientes objetos "list".
modulo (valores por defecto para módulo LV Energy LVE60PS):
Vocn: open-circuit voltage of the module at Standard Test Conditions (V).
Iscn: short circuit current of the module at Standard Test Conditions (A).
Vmn: maximum power point voltage of the module at Standard Test Conditions (V).
Imn: Maximum power current of the module at Standard Test Conditions (A).
Ncs: number of cells in series inside the module.
Ncp: number of cells in parallel inside the module.
CoefVT: coefficient of decrement of voltage of each cell with the temperature (volts per celsius degree).
TONC: nominal operational cell temperature (ºC).
generador (valores por defecto para techos solares PRIER Armstrong):
Nms: number of modules in series.
Nmp: number of modules in parallel.
inversor (valores por defecto para inversor SMA SB 1.5):
Ki: vector of three values, coefficients of the efficiency curve of the inverter (default c(0.0095, 0.015, 0.02), SMA SB 1.5), or a matrix of nine values (3x3) if there is dependence with the voltage (see references solaR). Estos coeficientes corresponden a una función que modela el rendimiento de los inversores. Se pueden ajustar graficando en planilla de cálculos la tabla de valores que dá el fabricante en la hoja de datos del inversor y la dicha función modificando los coeficientes hasta que coincidan (es sencillo partiendo de los valores por defecto dados aquí). La función es: n=p0/(p0+k0+k1.p0+k2.p0), donde "n" es el rendimiento del inversor, p0 es la potencia de salida normalizada en por unidad (eje x de la gráfica) y k0, k1 y k2 son los tres coeficientes respectivamente (en los valores por defecto: k0=0.0095, k1=0.015 y k2=0.02). Se puede ver detalle en libro de O. Perpiñan (ver referencias).
Pinv: nominal inverter power (W).
Vmin, Vmax: minimum and maximum voltages of the MPP range of the inverter (V).
Gumb: minimum irradiance for the inverter to start (W/m²) (default value 20W/m²).
rendimientos (valores por defecto de package solaR ajustados con NREL):
ModQual: average tolerance of the set of modules (porciento), default value is 3.
ModDisp: module parameter disperssion losses (porciento), default value is 2.
OhmDC: Joule losses due to the DC wiring (porciento), default value is 1.5.
OhmAC: Joule losses due to the AC wiring (porciento), default value is 1.5.
MPP: average error of the MPP algorithm of the inverter (porciento), default value is 1.
TrafoMT: losses due to the MT transformer (porciento), default value is 0.
Disp: losses due to stops of the system (porciento), default value is 0.5.
Devuelve objeto xts con las columnas detalladas a continuación:
Para int_salida="MENSUAL": G0dm (kW/m²), Tadm (ºC), Gefdm (o Gdm si iS=0) (kW/m²), Eac_dm (energía producida en un día en kWh), Eac_m (energía producida en el mes en kWh) y PRdm (PR diario mensual del sistema calculado).
Para int_salida="DIARIO": G0d (kW/m²), Tad (ºC), Gefd (o Gd si iS=0) (kW/m²), Eac_d (energía producida en un día en kWh) y PRd (PR diario del sistema calculado).
Para int_salida="INTRADIARIO": G0 (kW/m²), Ta (ºC), Gef (o G si iS=0) (kW/m²), Pac (potencia producida en el intervalo de tiempo en kW) y PR (PR en el intervalo de tiempo del sistema calculado).
Daniel G. Paniagua
Perpiñán, O, Energía Solar Fotovoltaica, 2015. (http://oscarperpinan.github.io/esf/)
Perpiñán O (2012). “solaR: Solar Radiation and Photovoltaic Systems with R.” Journal of Statistical Software, 50(9), 1–32. http://www.jstatsoft.org/v50/i09/.
# #Calculo de las distintas combinaciones de intervalos de datos de entrada y salida.
#
# rad_intra <- importar_epw("ARG_MARCOS-JUAREZ-AERO_874670_IW2.EPW")
#
# rad_dia <- rad_nasa(intervalo = "DIARIO", lonlat = c(-62.15,-32.7),
# fechas = c("2019-01-01","2019-12-31"))
#
# rad_mes <- rad_nasa(intervalo = "MENSUAL", lonlat = c(-62.15,-32.7), fechas = 2019)
#
# ######1)DATOS DE ENTRADA INTRADIARIO######
#
# prod1_intra_intra_is0 <- prod_energia(G0=rad_intra, int_entrada="INTRADIARIO",
# int_salida="INTRADIARIO",
# lon=-62.15, lat=-32.7, beta=30, alfa=0, Pn=1.56, iS = 0,
# year=as.POSIXlt(Sys.Date())$year+1900-1)
#
# prod2_intra_intra_is2 <- prod_energia(G0=rad_intra, int_entrada="INTRADIARIO",
# int_salida="INTRADIARIO",
# lon=-62.15, lat=-32.7, beta=30, alfa=0, Pn=1.56, iS = 2,
# year=as.POSIXlt(Sys.Date())$year+1900-1)
#
# prod3_intra_dia_is0 <- prod_energia(G0=rad_intra, int_entrada="INTRADIARIO",
# int_salida="DIARIO",
# lon=-62.15, lat=-32.7, beta=30, alfa=0, Pn=1.56, iS = 0,
# year=as.POSIXlt(Sys.Date())$year+1900-1)
#
# prod4_intra_dia_is2 <- prod_energia(G0=rad_intra, int_entrada="INTRADIARIO",
# int_salida="DIARIO",
# lon=-62.15, lat=-32.7, beta=30, alfa=0, Pn=1.56, iS = 2,
# year=as.POSIXlt(Sys.Date())$year+1900-1)
#
# prod5_intra_mes_is0 <- prod_energia(G0=rad_intra, int_entrada="INTRADIARIO",
# int_salida="MENSUAL",
# lon=-62.15, lat=-32.7, beta=30, alfa=0, Pn=1.56, iS = 0,
# year=as.POSIXlt(Sys.Date())$year+1900-1)
#
# prod6_intra_mes_is2 <- prod_energia(G0=rad_intra, int_entrada="INTRADIARIO",
# int_salida="MENSUAL",
# lon=-62.15, lat=-32.7, beta=30, alfa=0, Pn=1.56, iS = 2,
# year=as.POSIXlt(Sys.Date())$year+1900-1)
#
# ######2)DATOS DE ENTRADA DIARIO######
#
# prod7_dia_intra_is0 <- prod_energia(G0=rad_dia, int_entrada="DIARIO", int_salida="INTRADIARIO",
# lon=-62.15, lat=-32.7, beta=30, alfa=0, Pn=1.56, iS = 0,
# year=as.POSIXlt(Sys.Date())$year+1900-1)
#
# prod8_dia_intra_is2 <- prod_energia(G0=rad_dia, int_entrada="DIARIO", int_salida="INTRADIARIO",
# lon=-62.15, lat=-32.7, beta=30, alfa=0, Pn=1.56, iS = 2,
# year=as.POSIXlt(Sys.Date())$year+1900-1)
#
# prod9_dia_dia_is0 <- prod_energia(G0=rad_dia, int_entrada="DIARIO", int_salida="DIARIO",
# lon=-62.15, lat=-32.7, beta=30, alfa=0, Pn=1.56, iS = 0,
# year=as.POSIXlt(Sys.Date())$year+1900-1)
#
# prod10_dia_dia_is2 <- prod_energia(G0=rad_dia, int_entrada="DIARIO", int_salida="DIARIO",
# lon=-62.15, lat=-32.7, beta=30, alfa=0, Pn=1.56, iS = 2,
# year=as.POSIXlt(Sys.Date())$year+1900-1)
#
# prod11_dia_mes_is0 <- prod_energia(G0=rad_dia, int_entrada="DIARIO", int_salida="MENSUAL",
# lon=-62.15, lat=-32.7, beta=30, alfa=0, Pn=1.56, iS = 0,
# year=as.POSIXlt(Sys.Date())$year+1900-1)
#
# prod12_dia_mes_is2 <- prod_energia(G0=rad_dia, int_entrada="DIARIO", int_salida="MENSUAL",
# lon=-62.15, lat=-32.7, beta=30, alfa=0, Pn=1.56, iS = 2,
# year=as.POSIXlt(Sys.Date())$year+1900-1)
#
#
# ######3)DATOS DE ENTRADA MENSUAL######
# prod13_mes_intra_is0 <- prod_energia(G0=rad_mes, int_entrada="MENSUAL",
# int_salida="INTRADIARIO",
# lon=-62.15, lat=-32.7, beta=30, alfa=0, Pn=1.56, iS = 0,
# year=as.POSIXlt(Sys.Date())$year+1900-1)
#
# prod14_mes_intra_is2 <- prod_energia(G0=rad_mes, int_entrada="MENSUAL",
# int_salida="INTRADIARIO",
# lon=-62.15, lat=-32.7, beta=30, alfa=0, Pn=1.56, iS = 2,
# year=as.POSIXlt(Sys.Date())$year+1900-1)
#
# prod15_mes_dia_is0 <- prod_energia(G0=rad_mes, int_entrada="MENSUAL", int_salida="DIARIO",
# lon=-62.15, lat=-32.7, beta=30, alfa=0, Pn=1.56, iS = 0,
# year=as.POSIXlt(Sys.Date())$year+1900-1)
#
# prod16_mes_dia_is2 <- prod_energia(G0=rad_mes, int_entrada="MENSUAL", int_salida="DIARIO",
# lon=-62.15, lat=-32.7, beta=30, alfa=0, Pn=1.56, iS = 2,
# year=as.POSIXlt(Sys.Date())$year+1900-1)
#
# prod17_mes_mes_is0 <- prod_energia(G0=rad_mes, int_entrada="MENSUAL", int_salida="MENSUAL",
# lon=-62.15, lat=-32.7, beta=30, alfa=0, Pn=1.56, iS = 0,
# year=as.POSIXlt(Sys.Date())$year+1900-1)
#
# prod18_mes_mes_is2 <- prod_energia(G0=rad_mes, int_entrada="MENSUAL", int_salida="MENSUAL",
# lon=-62.15, lat=-32.7, beta=30, alfa=0, Pn=1.56, iS = 2,
# year=as.POSIXlt(Sys.Date())$year+1900-1)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.