Modelling Electrolysis and Hydrogen-based Generator

525 views
Skip to first unread message

Matthew Dumlao

unread,
Sep 26, 2021, 10:23:47 PM9/26/21
to pypsa
Dear everyone,

I would like to hear some of your thoughts regarding my attempt to model hydrogen using the fundamental components of PYPSA.

Following the suggestion of Fabian in this thread, I attempted to model a simple LNG + PV + PHES (daily storage) + hydrogen storage (seasonal storage) as shown in the Figure below.

simple_hydrogen_model.png
For the hydrogen, I am just assuming that it is converted and stored in MWh units similar to battery storage. So I followed the concept of using links and store for energy storage from the examples.

Since links have efficiency values, I used those to model the electrolyzer's conversion efficiency. The energy is then stored in store where the H2 leakage was modelled using standing_loss. The generation part is then modelled using another link with another efficiency value to reflect the efficiency of converting H2 back to electricity. 

For the buses:
  • B0 is the main bus that connects all the components. 
  • B1 is used to connect the generators and daily storage to the H2 tank. We wanted to connect the daily storage to increase the capacity factor of the electrolyzer since our preliminary calculation showed that using the solar energy alone leads to low capacity factor for the electrolyzer. 
  • B2 is used to isolate the PHES from the H2 tank to prevent feedback charging. I am not really sure if this is necessary but we added this as a precaution. 

I am not entirely sure if this is the appropriate way of using the fundamental components to model hydrogen storage; thus, I would like to hear any inputs. 

Thank you very much!

Matthew

Johannes Hampp

unread,
Sep 27, 2021, 4:00:16 AM9/27/21
to Matthew Dumlao, pypsa
Dear Matthew,

Yes, that's pretty much the appropriate way of using the fundamental
components.

Two remarks:
1. Your "H2 tank" store and "H2 Power Plant" will both need a dedicated
"H2" bus to attach to.
2. B0, B1, B2 are presumably electricity buses. They seem redundant and
the electricity components could be attached all to the same electricity
bus B0. (That is unless you are doing it intentionally to restrict flows
to prevent storage cycling/numerical destruction of electricity and
hydrogen).

Best,
Johannes


Am 27/09/2021 um 04:23 schrieb Matthew Dumlao:
> Dear everyone,
>
> I would like to hear some of your thoughts regarding my attempt to model
> hydrogen using the fundamental components of PYPSA.
>
> Following the suggestion of Fabian in this thread
> <https://groups.google.com/g/pypsa/c/7sqW0s73jiU/m/gqDe16UlAgAJ>, I
> attempted to model a simple LNG + PV + PHES (daily storage) + hydrogen
> storage (seasonal storage) as shown in the Figure below.
>
> simple_hydrogen_model.png
> For the hydrogen, I am just assuming that it is converted and stored in
> MWh units similar to battery storage. So I followed the concept of using
> links and store for energy storage from the examples
> <https://pypsa.org/examples/replace-generator-storage-units-with-store.html>.
>
> Since links have efficiency values, I used those to model the
> electrolyzer's conversion efficiency. The energy is then stored in store
> where the H2 leakage was modelled using standing_loss. The generation
> part is then modelled using another link with another efficiency value
> to reflect the efficiency of converting H2 back to electricity. 
>
> For the buses:
>
> * B0 is the main bus that connects all the components. 
> * B1 is used to connect the generators and daily storage to the H2
> tank. We wanted to connect the daily storage to increase the
> capacity factor of the electrolyzer since our preliminary
> calculation showed that using the solar energy alone leads to low
> capacity factor for the electrolyzer. 
> * B2 is used to isolate the PHES from the H2 tank to prevent feedback
> charging. I am not really sure if this is necessary but we added
> this as a precaution. 
>
>
> I am not entirely sure if this is the appropriate way of using the
> fundamental components to model hydrogen storage; thus, I would like to
> hear any inputs. 
>
> Thank you very much!
>
> Matthew
>
> --
> You received this message because you are subscribed to the Google
> Groups "pypsa" group.
> To unsubscribe from this group and stop receiving emails from it, send
> an email to pypsa+un...@googlegroups.com
> <mailto:pypsa+un...@googlegroups.com>.
> To view this discussion on the web, visit
> https://groups.google.com/d/msgid/pypsa/a379cc72-048b-4f2e-a27c-4c41b2d245aan%40googlegroups.com
> <https://groups.google.com/d/msgid/pypsa/a379cc72-048b-4f2e-a27c-4c41b2d245aan%40googlegroups.com?utm_medium=email&utm_source=footer>.

Matthew Dumlao

unread,
Sep 27, 2021, 4:36:22 AM9/27/21
to Johannes Hampp, pypsa
Dear Johannes,

Thank you for confirming my understanding of the fundamental components and for the added remarks.

1. Your "H2 tank" store and "H2 Power Plant" will both need a dedicated
"H2" bus to attach to.

I forgot that we need to add a bus to connect the store. In my head, I see it this way. 
storage_model.png
I modified the diagram based on your comment. Since I want to control the charge and discharge for daily storage, I also use the store component. 

hydrogen_model_v2.png

2. B0, B1, B2 are presumably electricity buses. They seem redundant and
the electricity components could be attached all to the same electricity
bus B0. (That is unless you are doing it intentionally to restrict flows
to prevent storage cycling/numerical destruction of electricity and
hydrogen).

I am not sure if this is the proper way to do it. However, as you mentioned, my intention is to restrict the flow. B2 prevents H2 from charging PHES. Looking at it now, I think B1 is unnecessary. It was there to prevent other generators that are connected to B0 from charging the H2. 

Again, thank you for your response. If you have any further comments, I would be glad to hear them.

Matthew

Matthew Dumlao

unread,
Nov 10, 2021, 12:58:56 AM11/10/21
to pypsa
Dear Everyone,

I am reviving this thread for a related question. Following the previous discussion on modeling hydrogen power plant using a store and links, I was wondering if there is a way to introduce the idea of the ramp rate with the links as well? I checked the documentation for link and I think it is not an attribute of the component. I am not sure where to add this restriction or if it is even possible. 

Any thoughts regarding this matter?

Thank you very much!

Matthew

Fabian Neumann

unread,
Nov 10, 2021, 4:20:52 AM11/10/21
to Matthew Dumlao, pypsa
Hi Matthew,

there are currently no committable links in PyPSA.

You could have a look at the implementation for generators and mirror
that for links. We would welcome such a pull request.

Best wishes,

Fabian N

On 10.11.21 06:58, Matthew Dumlao wrote:
> Dear Everyone,
>
> I am reviving this thread for a related question. Following the previous
> discussion on modeling hydrogen power plant using a store and links, I
> was wondering if there is a way to introduce the idea of the ramp rate
> with the links as well? I checked the documentation for link
> <https://pypsa.readthedocs.io/en/latest/components.html#link>and I think
> it is not an attribute of the component. I am not sure where to add this
> restriction or if it is even possible.
>
> Any thoughts regarding this matter?
>
> Thank you very much!
>
> Matthew
>
> On Monday, September 27, 2021 at 5:36:22 PM UTC+9 Matthew Dumlao wrote:
>
> Dear Johannes,
>
> Thank you for confirming my understanding of the fundamental
> components and for the added remarks.
>
> 1. Your "H2 tank" store and "H2 Power Plant" will both need a
> dedicated
> "H2" bus to attach to.
>
>
> I forgot that we need to add a bus to connect the store. In my head,
> I see it this way.
> storage_model.png
> I modified the diagram based on your comment. Since I want to
> control the charge and discharge for daily storage, I also use the
> store component.
>
> hydrogen_model_v2.png
>
> 2. B0, B1, B2 are presumably electricity buses. They seem
> redundant and
> the electricity components could be attached all to the same
> electricity
> bus B0. (That is unless you are doing it intentionally to
> restrict flows
> to prevent storage cycling/numerical destruction of electricity and
> hydrogen).
>
>
> I am not sure if this is the proper way to do it. However, as you
> mentioned, my intention is to restrict the flow. B2 prevents H2 from
> charging PHES. Looking at it now, I think B1 is unnecessary. It was
> there to prevent other generators that are connected to B0 from
> charging the H2.
>
> Again, thank you for your response. If you have any further
> comments, I would be glad to hear them.
>
> Matthew
>
> --
> You received this message because you are subscribed to the Google
> Groups "pypsa" group.
> To unsubscribe from this group and stop receiving emails from it, send
> an email to pypsa+un...@googlegroups.com
> <mailto:pypsa+un...@googlegroups.com>.
> To view this discussion on the web, visit
> https://groups.google.com/d/msgid/pypsa/7484b8e7-441b-480d-9626-14983065e5f2n%40googlegroups.com
> <https://groups.google.com/d/msgid/pypsa/7484b8e7-441b-480d-9626-14983065e5f2n%40googlegroups.com?utm_medium=email&utm_source=footer>.

--
Fabian Neumann (he/him)
Postdoctoral Researcher

Department of Digital Transformation in Energy Systems
Institute of Energy Technology
Technische Universität Berlin

Group website: https://tub-ensys.github.io
Personal website: https://neumann.fyi

Visitor Address:
Einsteinufer 25 (TA 8)
10587 Berlin

Matthew Dumlao

unread,
Nov 11, 2021, 7:30:59 AM11/11/21
to pypsa
Dear Fabian,

Thank you for clarifying the limitations of the links component. I had the feeling that this was the case. 

I will try to look at the code and attempt to mirror the implementation for the generators. 

Thank you very much!

Matthew

Reply all
Reply to author
Forward
0 new messages