GMLC-1-4-2 / battery_interface

Implemenation of Device Models and their Battery Equivalent Interface
MIT License
5 stars 0 forks source link

Regulation Services and PV Response #108

Open DavidWiniarski-pnnl opened 5 years ago

DavidWiniarski-pnnl commented 5 years ago

@raselmahmud02

Rasel. I am thinking we may have a bug in the response from the PV array. I see this in the preliminary regulation services runs discussed below.

Dynamic_Regulation / PV Drive cycle file: 08 2017 Dynamic.csv Time: 08/01/2017 16:00 to 18:59 Sim Step: 2s Assigned Service KW: 187.5 MW (full scale variation over drive cycle)

This is what I am seeing. The dynamic regulation services is requesting service power varying from -187.5 MW to +187.5 MW over a~3 hour window in Aug.

20190507_August_2secnormsignals_Dynamic_PVInverterFleet

In looking at the results it seems that we may need to revise a response from the PV array.

The PV array during this period shows a gradually ramping 200 MW power production in the P_base. The request from the regulation service can vary from -187.5 to 187.5 MW in this example. A positive request for the service should try to increase the power over the P_base. However because it is a PV array that is not possible. A negative request should try to reduce the output from the PV array to the grid. Because the PV array cannot sink power, but only reduce power to 0, Pgrid should vary between 0 and Pbase. But the response calculation that is recorded in the graphic should be relative to Pbase. Hence a positive request from the service (additional power request above the base) should show I think only a 0 response. A negative request should result in a lowering of PV output, but no more than the negative of the original PV base power production. Can you check/correct how the PV_response is being calculated or returned.

Thanks

raselmahmud02 commented 5 years ago

working on the this, i'll let you know my response shortly

Hayden-Reeve commented 5 years ago

@DavidWiniarski-pnnl

As discussed today here is the code I used to update the plotting style (h/t to Ebony and Alejandro). I think it is a little easier to see what is going on and will ensure consistency in the final report. Example plot is below.

https://github.com/GMLC-1-4-2/battery_interface/blob/b2bef631e14fe380ef461616accc450899c69ce2/src/services/reserve_service/reserve_service.py#L96-L125

20190510_all_June_events_PVInverterFleet