FCSys is an free, open-source library of declarative, dynamic, and flexible models of proton exchange membrane fuel cells (PEMFCs) in the Modelica language. Chemical, electrical, fluid, and thermal phenomena are included. The implementation is highly modular and reconfigurable. There are options to adjust the assumptions, spatial discretization and dimensionality (1D, 2D, or 3D), and the present chemical species and material phases. The framework is generic and can be extended to other electrochemical devices like batteries.
A fuel cell is similar to a battery except that the reactants are externally stored or drawn from the environment. The electrochemical reactions of a PEMFC are
|2(H2||⇌||2e- + 2H+)||(anode)|
|4e- + 4H+ + O2||⇌||2H2O||(cathode)|
|2H2 + O2||⇌||2H2O||(total)|
Figure 1 shows the seven primary layers of a typical PEMFC. Fluid enters and exits the cell through channels in the flow plates (FPs). It spreads through the gas diffusion diffusion layers (GDLs) and reacts in the catalyst layers (CLs). The proton exchange membrane (PEM) prevents electronic transport; therefore, electrons must pass through an external load to sustain the net reaction. As shown in Figure 2, a PEMFC model is constructed from models of the same layers in FCSys. The model is modular; the gas diffusion and catalyst layers can be combined, or microporous layers can be inserted.
Figure 1: Layers and primary flows of a PEMFC.
Figure 2: Diagram of the PEMFC model.
The models are primarily based on first principles—the transport, exchange, and storage of
material, momentum, and energy. There are two modes of transport and exchange: diffusion and advection.
Both are important in fuel cells, and both are included in the model.
The model uses a method of upstream
discretization that reduces to the central difference scheme when the velocity is zero. This is
appropriate for pure diffusion (e.g., Fick's law, Newton's law of viscosity, or Fourier's law).
As the velocity becomes infinitely large (in either direction), the approach reduces to the upwind scheme.
The upwind scheme represents
pure advection such as through idealized pipes. It is the basis of
stream connectors (and previously the
In FCSys, however, the transition between diffusion
and advection is gradual. This has the added benefit that there is no discontinuity upon flow reversal.
Each layer of the cell may be subdivided in any direction for increased fidelity. Regions may be directly connected without producing nonlinear systems of equations, and species may be independently included in each region. This is different than Modelica.Media, where each media model contains a predefined set of species.
A cell may be simulated under specified boundary conditions or connected to Modelica.Fluid components using available adapters. Figure 3 shows a series of polarization curves generated from the FPtoFP model. Please see the sample results for more plots and the getting started page for more details about the library.
Licensed by the Georgia Tech Research Corporation under the Modelica License 2
Copyright 2007–2013, Georgia Tech Research Corporation.
This Modelica package is free software and the use is completely at your own risk; it can be redistributed and/or modified under the terms of the Modelica License 2. For license conditions (including the disclaimer of warranty) see FCSys.UsersGuide.License or visit http://www.modelica.org/licenses/ModelicaLicense2.Extends from Modelica.Icons.Package (Icon for standard packages).
|Blocks||Imperative models (inputs and outputs only)|
|Conditions||Models to specify and measure operating conditions|
|Assemblies||Combinations of regions (e.g., cells)|
|Regions||3D arrays of discrete, interconnected subregions|
|Subregions||Control volumes with multi-species transport, storage, and exchange|
|Phases||Mixtures of species|
|Species||Dynamic models of chemical species|
|Chemistry||Chemical reactions and related models|
|Characteristics||Data and functions to correlate physical properties|
|Connectors||Declarative and imperative interfaces|
|Units||Constants and units of physical measure|
|Quantities||Variables to represent physical properties|
|Utilities||General supporting functions|
|Icons||Icons to annotate and represent classes|