POSST

Simulating Transient Systems Based on Controlled-Oriented Models (COM), Mean Value Modeling (MVM), Lumped Parameter System (LPS)

Authors:

Florian Dennewitz (Maintainer)1,2, Leonora Kastrati (Maintainer)1, Niklas Nickig (Maintainer)2, Matthias Bahr (Contributor)2


Abstract

This open-source simulation software enables real-time simulation of fuel cell system components without the use of mathematical solvers. Based on the Mean-Value-Modelling approach for transient process modelling, this software is web-based and addresses common challenges of existing simulation programs, such as high costs and lack of interoperability.

Example of Cathode Path

Overview of Cathode Path

Results of Example

Cathode Load Profile Simulation

Here we provide a simulation environment on the Energy System Solutions Website: https://www.energy-system-solutions.de/simulation. Feel free to test the simulation and the integrated controller of the ZBT.


Keywords

  • Simulation
  • Open-source
  • Python
  • Black box modelling
  • Fuel cell system

Installation Guide

Installation with pip

NOT AVAILABLE YET!

Installation with GIT

If you prefer to install directly from the repository, follow these steps:

Clone the Repository:

git clone https://github.com/ZBT-Tools/POSST.git

Navigate to the Project Directory:

cd yourPath/POSST

Install Required Packages: Make sure you have a virtual environment set up (optional but recommended). Then install the required packages:

pip install -r requirements.txt

Create Your Process: Follow the documentation in the repository to set up your process model.

Simulate Process: Use the provided simulation tools to run your process model. Check the usage examples in the documentation for guidance.

Additional Notes

Ensure that you have Python installed (preferably Python 3.7 or higher).
If you encounter any issues, check the issues section of the repository for troubleshooting.

Feel free to reach out if you have any questions or need further assistance!


Contents

1. Modelling of Reservoirs

The reservoir model describes mass and enthalpy flow as well as temperature changes using ordinary differential equations.

Reservoir Inputs and Outputs

2. Modelling of Flows

Assuming incompressible flow between reservoirs, mass flow is calculated with adaptations for potential backflow.

3. Modelling of Mixed Media

To calculate specific heat capacity and other properties, the gas composition is determined.

4. Modelling of the Compressor

The compressor is simulated using the “rotating disk” model. A Python library generates the compressor characteristic diagram.

Compressor Model - Rotating Disk Approach

A Python library generates the compressor characteristic diagram:

Compressor Characteristic Diagram

5. Modelling of the Fuel Cell

To reduce a 2-D + 1-D spatially resolved fuel cell model to a voltage model, several simplifications are necessary. By focusing only on the voltage model and ignoring certain sub-models, the complexity of the simulation can be significantly reduced while maintaining core performance characteristics relevant to voltage output.


References

[1] Dipl.-Ing. Sebastian Zahn, "Arbeitsspielaufgelöste Modellbildung und Hardware-in-the-Loop-Simulation von Pkw-Dieselmotoren mit Abgasturboaufladung," Fachbereich Elektrotechnik und Informationstechnik, Technische Universität Darmstadt, Darmstadt, 2012.
[2] L. Guzzella und C. Onder, Introduction to Modeling and Control of Internal Combustion Engine Systems, 2. Aufl. Berlin, Heidelberg: Springer Berlin Heidelberg, 2009. Zugriff am: 29. Oktober 2024. [Online]. Verfügbar unter: https://link.springer.com/book/10.1007/978-3-642-10775-7
[3] P. Virtanen et al., "SciPy 1.0: Fundamental Algorithms for Scientific Computing in Python," Nature Methods, Jg. 17, S. 261–272, 2020, doi: 10.1038/s41592-019-0686-2.
[4] S. Gößling, "2-D + 1-D ortsaufgelöste Modellierung von PEM-Brennstoffzellen," Fakultät für Ingeneuirwissenschaften, Abteilung Maschienenbau und Verfahrenstechnik, Universität Duisburg Essen, Duisburg, 2019.


Contact

  1# -*- coding: utf-8 -*-
  2"""
  3
  4**Simulating Transient Systems Based on Controlled-Oriented Models (COM), Mean Value Modeling (MVM), Lumped Parameter System (LPS)**
  5
  6
  7### Authors:
  8Florian Dennewitz (Maintainer)<sup>1,2</sup>, Leonora Kastrati (Maintainer)<sup>1</sup>, Niklas Nickig (Maintainer)<sup>2</sup>, Matthias Bahr (Contributor)<sup>2</sup>
  9
 10---
 11
 12## Abstract
 13This open-source simulation software enables real-time simulation of fuel cell system components without the use of mathematical solvers. Based on the Mean-Value-Modelling approach for transient process modelling, this software is web-based and addresses common challenges of existing simulation programs, such as high costs and lack of interoperability.
 14
 15### Example of Cathode Path
 16<p align="center">
 17  <img src="https://zbt-tools.github.io/POSST/pic/figure1.png" alt="Overview of Cathode Path" width="500">
 18</p>
 19
 20### Results of Example
 21<p align="center">
 22  <img src="https://zbt-tools.github.io/POSST/pic/figure8.png" alt="Cathode Load Profile Simulation" width="800">
 23</p>
 24
 25### Link to Websimulation
 26Here we provide a simulation environment on the Energy System Solutions Website:
 27https://www.energy-system-solutions.de/simulation. Feel free to test the simulation and the integrated controller of the ZBT.
 28
 29---
 30
 31## Keywords
 32
 33- Simulation
 34- Open-source
 35- Python
 36- Black box modelling
 37- Fuel cell system
 38
 39---
 40
 41## Installation Guide
 42### Installation with pip
 43NOT AVAILABLE YET!
 44
 45
 46### Installation with GIT
 47
 48If you prefer to install directly from the repository, follow these steps:
 49
 50Clone the Repository:
 51
 52    git clone https://github.com/ZBT-Tools/POSST.git
 53
 54Navigate to the Project Directory:
 55
 56    cd yourPath/POSST
 57
 58Install Required Packages: Make sure you have a virtual environment set up (optional but recommended). Then install the required packages:
 59
 60    pip install -r requirements.txt
 61
 62Create Your Process: Follow the documentation in the repository to set up your process model.
 63
 64Simulate Process: Use the provided simulation tools to run your process model. Check the usage examples in the documentation for guidance.
 65
 66Additional Notes
 67
 68    Ensure that you have Python installed (preferably Python 3.7 or higher).
 69    If you encounter any issues, check the issues section of the repository for troubleshooting.
 70
 71Feel free to reach out if you have any questions or need further assistance!
 72
 73---
 74
 75## Contents
 76
 77### 1. Modelling of Reservoirs
 78The reservoir model describes mass and enthalpy flow as well as temperature changes using ordinary differential equations.
 79
 80<p align="center">
 81  <img src="https://zbt-tools.github.io/POSST/pic/figure2.png" alt="Reservoir Inputs and Outputs" width="500">
 82</p>
 83
 84### 2. Modelling of Flows
 85Assuming incompressible flow between reservoirs, mass flow is calculated with adaptations for potential backflow.
 86
 87### 3. Modelling of Mixed Media
 88To calculate specific heat capacity and other properties, the gas composition is determined.
 89
 90### 4. Modelling of the Compressor
 91The compressor is simulated using the “rotating disk” model. A Python library generates the compressor characteristic diagram.
 92
 93<p align="center">
 94  <img src="https://zbt-tools.github.io/POSST/pic/figure3.png" alt="Compressor Model - Rotating Disk Approach" width="500">
 95</p>
 96
 97A Python library generates the compressor characteristic diagram:
 98
 99<p align="center">
100  <img src="https://zbt-tools.github.io/POSST/pic/figure5.png" alt="Compressor Characteristic Diagram" width="500">
101</p>
102
103### 5. Modelling of the Fuel Cell
104To reduce a 2-D + 1-D spatially resolved fuel cell model to a voltage model, several simplifications are necessary. By focusing only on the voltage model and ignoring certain sub-models, the complexity of the simulation can be significantly reduced while maintaining core performance characteristics relevant to voltage output.
105
106---
107
108## References
109[1]	Dipl.-Ing. Sebastian Zahn, "Arbeitsspielaufgelöste Modellbildung und Hardware-in-the-Loop-Simulation von Pkw-Dieselmotoren mit Abgasturboaufladung," Fachbereich Elektrotechnik und Informationstechnik, Technische Universität Darmstadt, Darmstadt, 2012.<br>
110[2]	L. Guzzella und C. Onder, Introduction to Modeling and Control of Internal Combustion Engine Systems, 2. Aufl. Berlin, Heidelberg: Springer Berlin Heidelberg, 2009. Zugriff am: 29. Oktober 2024. [Online]. Verfügbar unter: https://link.springer.com/book/10.1007/978-3-642-10775-7<br>
111[3]	P. Virtanen et al., "SciPy 1.0: Fundamental Algorithms for Scientific Computing in Python," Nature Methods, Jg. 17, S. 261–272, 2020, doi: 10.1038/s41592-019-0686-2.<br>
112[4]	S. Gößling, "2-D + 1-D ortsaufgelöste Modellierung von PEM-Brennstoffzellen," Fakultät für Ingeneuirwissenschaften, Abteilung Maschienenbau und Verfahrenstechnik, Universität Duisburg Essen, Duisburg, 2019.<br>
113
114
115
116---
117
118### Contact
119- [Energy System Solutions (ESS), Bottrop, Germany](mailto:florian.dennewitz@unitybox.de)
120- [Hydrogen and Fuel Cell Center (ZBT), Duisburg, Germany](mailto:f.dennewitz@zbt.de)
121
122
123"""