It's been a couple years since I have used pvlib (and the progress is amazing) so forgive me if this has already been covered. Is there an implementation of inverters with multiple MPPTs?
@jhfatehi In a word, no. pvlib calculates system DC power by multiplying a module's DC output by number of modules per string and by strings per inverter. I'm sure one could find a way to use pvlib to model a multi-MPPT inverter, but it probably requires defining multiple systems and adding the results outside of pvlib.
Perhaps we could add an example to the documentation.
Also consider checking SAM/ssc. We could discuss reimplementing their solution, if available.
@jhfatehi Did you workaround this somehow? If so, can you share how you did that?
@wholmgren I am guessing there is no example in the documentation? :innocent:
No example, contribution welcome: python file in docs/examples renders to here
This was my workaround
dc_string1 = dc_string_out(string1_tilt, string1_azimuth, cec_module, string1_mods, solpos, dni_extra)
dc_string2 = dc_string_out(string2_tilt, string2_azimuth, cec_module, string2_mods, solpos, dni_extra)
dc_system = pd.DataFrame()
dc_system['p_mp'] = dc_string1.p_mp + dc_string2.p_mp
dc_system['v_mp'] = (dc_string1.p_mp * dc_string1.v_mp +
dc_string2.p_mp * dc_string2.v_mp) / dc_system.p_mp
acs = pd.DataFrame()
acs['power'] = pvlib.pvsystem.snlinverter(dc_system.v_mp, dc_system.p_mp, sapm_inverter)
@jhfatehi Thanks for sharing! :blush:
Out of curiosity, may I know the inverter you were using? To have a look at its specs in the database. I am wondering if there is information there about the number of MPPTs for example.
The inverter model is reducing power depending on the inverters voltage/power/efficiency curve. There is no MPPT happening at the inverter. The ideal Vmp and Imp are calculated in the diode model. The challenge with 2 MTTPs is what voltage to use. In my example where I have 2 strings I used a weighted average of Vmp of the 2 string where I weighted by Pmp of the string. I honestly have no clue if this is remotely accurate because I am not familiar with the topology of multiple MPPT inverters. Another way to do it would be to treat each MPPT as a separate inverter but I image this would be optimistic for AC production because you likely will be operating at a higher efficiency point because you have roughly same voltage but lower power in each inverter.
To answer your question I was using a SolarEdge inverter which operates at a fixed voltage in real life. The MPPT high and low voltage in the inverter models is for information only. It does not impact the inverter efficiency calculation.
I asked this question in Stack Exchange:
In case anyone can help answering it. :blush:
Some progress to report on this issue, which has emerged as a roadblock to #1067.
pvlib.inverter.sandia function. I don't think the pvlib.inverter.sandia signature should change, but the step that limits inverter output to maximum Pac needs to be done after the AC power from each MPPT are combined. The new function will use the refactored parts of sandia with at least one new parameter for the fraction of power handled by each MPPT (default is 1 / number of MPPT), and perhaps other new parameters.A proposed approach for modeling inverters with multiple MPPT. I welcome any feedback.
Proposal to model multiple MPPT inverter.pdf
The underlining indicates assumptions that I am working to verify.
@cwhanse Thanks for sharing! :blush: I will definitely have a look at it in 1-2 weeks!
Do you know if there is plan to include an MPPT count parameter in the CEC database? :stuck_out_tongue_winking_eye:
Do you know if there is plan to include an MPPT count parameter in the CEC database?
Unfortunately, no. That database is out of pvlib's control. The file of inverter model parameters is obtained from NREL's SAM, and NREL's database is generated by applying the inverter model fitting algorithm to data in the CEC equipment list.
The CEC doesn't request the MPPT count (or voltage/current limits, or many other inverter parameters) so that data aren't included in the database that lies behind the file of inverter parameters. See the Inverter tabs here for information on the CEC equipment lists.