The usefulness of Hybrid Energy Storage Systems (HESSs) has been demonstrated across various application areas, including Charging Stations (CSs), grid services, and microgrids. HESSs combine two or more individual Energy Storage Systems (ESSs) to merge the advantages of each technology and enhance overall system performance. In this study, we introduce a novel power management controller, termed the Hybrid Controller, designed for efficient charging and discharging of the HESS while accounting for its State of Charge (SoC) and the fluctuating supply and load conditions. The Hybrid Controller improves HESS utilization by minimizing energy exchange with the grid, thereby prioritizing and maximizing the use of available Photovoltaic (PV) power. The effectiveness of the proposed approach was evaluated through simulations using several performance indicators, namely Autarky, charge/discharge cycles, and Self-Consumption (SC). For this purpose, we defined 24 scenarios across different locations in Germany.
Climate change and global warming represent, without doubt, the most pressing challenges of the 21st century. Dramatic shifts are taking place worldwide, such as record-breaking droughts, intense storms, and rising sea levels [1]. These phenomena stem from escalating Greenhouse Gas (GHG) emissions, largely driven by human activities such as deforestation and the combustion of fossil fuels for energy production. Fossil fuels continue to dominate global energy supply and account for the largest share of emissions. Consequently, decreasing dependence on fossil fuels is essential to protect the planet.
At the same time, energy demand continues to rise due to population growth, industrialization, and increasing automation. This underscores the importance of shifting from fossil fuels to Renewable Energy (RE) sources (such as sunlight, wind, water, and others) as a fundamental strategy to mitigate the climate crisis.
RE refers to clean energy produced from naturally replenished sources. Regarded as sustainable, environmentally friendly, and clean, RE is increasingly prioritized by nations aiming to expand its share in their energy mix, strengthen decarbonization initiatives, and reach GHG neutrality.
A substantial portion of GHG emissions originates from the transportation sector, particularly road vehicles (cars, trucks, and buses), which account for approximately 25 percent of total GHG emissions in Europe [2]. The majority of vehicles currently in use rely on internal combustion engines that burn fuel, thereby releasing greenhouse gases. Electric vehicles (EVs) have been developed to eliminate tailpipe emissions and are gaining widespread adoption globally. One key factor driving their popularity is their reduced environmental impact, especially when charged with renewable energy.
The growing number of EVs is driving demand for expanded charging infrastructure. Building a robust and widespread charging network is therefore vital to support greater EV uptake and achieve further reductions in greenhouse gas emissions. The key to efficient EV charging stations lies in incorporating an ESS, such as batteries and supercapacitors, to manage peak loads, enable rapid and reliable charging, and strengthen grid stability. In recent years, Hybrid Energy Storage Systems (HESSs)—which integrate multiple ESS types—have gained significant attention for leveraging complementary characteristics to surpass the capabilities of any single ESS [3, 4]. HESSs offer a promising solution for achieving optimal performance in EV charging stations.
Integrating a HESS into charging stations (CSs) delivers substantial benefits to the electric mobility sector, improving its efficiency, dependability, and sustainability. A HESS can alleviate grid peak demand by storing energy during low-demand periods and releasing it during high-demand periods, thereby reducing grid stress from concurrent EV charging. The synergy of fast response and high-capacity storage enables consistent power delivery and facilitates ultra-fast charging, reducing user wait times. Additionally, a HESS helps charging stations lower electricity expenses by minimizing demand charges and taking advantage of time-of-use pricing structures. When paired with renewable sources, it allows storage of surplus RE, further cutting operational costs. By boosting the efficiency and reliability of charging infrastructure, while simultaneously reducing costs and environmental footprints (including lower carbon emissions from energy production), HESS plays a pivotal role in accelerating the expansion of electric mobility.
One critical challenge in Hybrid Energy Storage Systems (HESS) is the effective management of power distribution among the individual Energy Storage Systems (ESSs) that constitute the HESS. This aspect has received limited attention in the existing literature, with most early and recent studies favoring a single ESS whenever available, for either charging or discharging [3]. In a study by Sinha and Bajpai [5], an adaptive fuzzy logic controller was developed to enhance the utilization of multiple ESSs within a HESS. That approach focused on power-sharing management in a microgrid context, accounting for total power demand, the State of Charge (SoC) of individual controlled ESSs, and the average SoC across all ESSs. The method improved energy utilization within the ESSs and extended battery lifespan by reducing charge–discharge cycles. However, the study relied on simulated data and employed only a limited set of evaluation metrics. In a study by Behera and Saikia [6], a control strategy was proposed for a HESS comprising a supercapacitor and a redox flow battery in a grid-connected Photovoltaic (PV) system. The strategy integrated a fractional-order tilt integral–derivative filter controller, an enhanced sparrow search algorithm, and an anti-windup mixed-order generalized integrator to achieve improved power stability, faster dynamic response, and reduced stress on the redox flow battery. The work concentrated particularly on power transitions between daytime and nighttime periods. Although these prior studies [5, 6] offer important contributions, several limitations must be recognized. For example, the HESS configurations examined incorporated multiple ESS types but did not include the most recent ESS technologies, which restricts their relevance to contemporary systems. Moreover, earlier research primarily presented straightforward power management algorithms. It evaluated them under a narrow set of test conditions, thereby limiting their robustness when applied to more complex, real-world situations. In addition, those investigations relied entirely on simulated data. They focused on specific performance indicators—such as SoC and battery aging—while overlooking other essential metrics, leaving important dimensions of system performance unaddressed [5, 6].
To overcome these shortcomings, the present study introduces a novel Hybrid Controller designed to manage power distribution within a HESS, with a specific focus on Electric Vehicle Charging Stations (EVCSs). The controller optimizes power allocation between two distinct ESS technologies, prioritizes renewable energy sources, such as Photovoltaic (PV), and reduces reliance on grid-supplied energy. Through extensive simulation-based validation across diverse scenarios, this work highlights the benefits of the proposed method in terms of energy efficiency, grid stability, and self-consumption.
The primary contributions and achievements of this research can be summarized as follows:
• Power flow management: development and implementation of sophisticated algorithms and control strategies—collectively termed the Hybrid Controller—to intelligently regulate power flow between the Redox Flow Battery (RFB) and the Lithium-ion (Li-ion) battery according to the SoC of each. These algorithms promote efficient energy consumption and storage, thereby enhancing the system’s overall stability and reliability.
• Optimal utilization of the HESS: the proposed Hybrid Controller maximizes the exploitation of the HESS while minimizing the volume of energy drawn from or fed back to the grid.
• Maximization of PV power utilization: our approach prioritizes the use of generated renewable energy, particularly PV power, thereby increasing the charging station’s ability to harness clean energy, reducing its carbon footprint, and decreasing dependence on traditional energy sources.
• System validation: the Hybrid Controller was rigorously evaluated using a variety of performance metrics and through multiple simulation scenarios grounded in real-world datasets, including a PV power dataset and a load profile dataset.
At the heart of the developed setup lies the Hybrid Energy Storage System (HESS), which combines a lithium-ion battery with a Redox Flow Battery (RFB). Three further elements are essential for its correct operation: the electrical grid, a fluctuating load, and Photovoltaic (PV) generation, as shown schematically in Figure 1. An Energy Management System (EMS) oversees and partially directs these elements. The EMS comprises multiple interconnected modules that perform a wide range of duties, including periodic execution of component routines and database interactions. It functions in fixed one-second intervals (“cycles”). At the beginning of each cycle, the system refreshes the active power setpoints for the grid, load, PV generation, and HESS, and recomputes the current stored energy in the HESS. Power setpoints follow a consistent sign convention: positive values indicate power delivery into the system, whereas negative values indicate power withdrawal from the system. For example, a negative setpoint for the HESS indicates it is absorbing energy (charging). By contrast, PV generation is constrained to non-negative setpoints because it can only inject power into the system.

Figure 1. Overall system architecture: HESS combines a lithium-ion battery and a Redox Flow Battery (RFB) to leverage their respective strengths. Photovoltaic (PV): delivers clean, renewable energy into the system. Load: stands for the power drawn by electric vehicle charging processes. Grid: acts as a flexible backup to maintain overall power balance.
The grid is modeled as an ideal, unbounded source and absorber of electrical power. Even so, a strict upper limit is imposed on the power exchanged with the HESS to avoid breaching predefined thresholds. This restriction corresponds to real-world contractual agreements that restrict average import or export levels. The grid is free to inject or withdraw power as required. Its fundamental purpose is to correct any remaining imbalance between generation and consumption after all other components have set their operating points. Its setpoint is therefore assigned reactively: once the power contributions (or demands) of the remaining elements are known, the grid automatically adjusts to supply or absorb precisely the difference needed to achieve equilibrium.
The variable load withdraws power, while PV generation injects power. Both determine their instantaneous power values from external, pre-recorded time-series datasets. As a result, their power setpoints are fully determined before the simulation begins and evolve independently of the states or decisions of other system parts. During each one-second cycle, a new value is read from the corresponding dataset and applied.
A Hybrid Energy Storage System integrates two or more dissimilar Energy Storage Systems (ESS) technologies that possess mutually complementary traits. The goal is to harness the best features of each while compensating for their inherent drawbacks [3]. In the present work, the HESS comprises a Redox Flow Battery (RFB) paired with a Lithium-ion (Li-ion) battery:
1. RFB — An electrochemical cell stores chemical energy in two distinct liquid electrolytes held in separate tanks and divided by an ion-selective membrane. Energy is converted through reversible redox processes, as the name indicates [3, 7]. While the electrolytes are continuously pumped through their respective flow paths, ions migrate across the membrane, producing an electrical current. Redox Flow Batteries rank among the most attractive solutions for utility-scale and long-duration storage. Typical use cases encompass peak shaving, smoothing output from renewable plants, off-grid power supply, and backup power provision during grid outages [3, 7]. A standout property is the ability to scale power rating and energy capacity independently. Further benefits encompass excellent safety characteristics, adaptable modular construction, extended calendar and cycle life, favorable economics at scale, and comparatively low upkeep requirements [3].
2. Li-ion batteries — This broad family of rechargeable cells relies on the shuttling of lithium ions between anode and cathode during discharge and the reverse process during charge [3, 8]. Compared with competing rechargeable technologies, Li-ion batteries stand out for their superior energy density, very low self-discharge, ability to withstand a large number of charge–discharge cycles, and elevated nominal voltage. Drawbacks include a relatively high cost, sensitivity to degradation mechanisms, and potential safety risks under abuse conditions. They dominate applications in portable consumer devices, cordless tools, electric mobility, and, increasingly, stationary storage installations such as residential systems and public EV charging infrastructure [9].
The Energy Management System (EMS) determines the operating setpoint for each of the two batteries. Every battery is represented using the characteristics listed in Table 1. The first four properties are dynamically recomputed and refreshed during every cycle, whereas the remaining twelve must be predefined as configuration parameters. The resulting Battery Storage System (BSS) model, built from these dynamic values and fixed parameters, is illustrated in Figure 2.

Figure 2. Schematic representation of the used battery model.
Table 1. Dynamic attributes and configurable parameters modeling a BSS.
Dynamic attributes | Description |
SoC | Current State of Charge of the battery in [%]. |
Current Power (𝑃𝑐) | Power setpoint for the current cycle in [W]. |
Upper Power Limit | Maximum feasible operating power of the battery in this cycle in [W]. |
Lower Power Limit | Minimum feasible operating power of the battery in this cycle in [W]. |
Configurable parameters | Description |
Capacity | Nominal capacity of the battery in [Wh]. |
Max. Possible Charge Power (P̅) | The maximum power with which this battery can be charged in [W]. |
Max. Possible Discharge Power (▁P) | The maximum power with which this battery can be discharged in [W]. |
Ramp Rate (𝑅𝑅) | Maximum allowable change in power between cycles in [W/Cycle]. |
Response Time (RT) | Delay between a power request and the start of power delivery in [s]. |
Inactivity Time (IT) | Duration in [s] at zero power output after which the response time must elapse again. |
Maximum SoC | Upper SoC limit in [%] up to which the battery may be charged. |
Minimum SoC | Lower SoC limit in [%] down to which the battery may be discharged. |
At the start of each cycle, the upper and lower power constraints for both batteries are calculated according to Eqs. 1 and 2:
(1)
(2)
If the response delay period has not yet completed, both the upper and lower limits are forced to zero, effectively deactivating the battery for that cycle. The response timer begins counting down as soon as a non-zero power request is issued. Once the battery maintains zero power output continuously for a duration equal to the Inactivity Time, the full response time must elapse again before the battery becomes eligible to charge or discharge. This mechanism models an idle/sleep-like condition along with the necessary wake-up latency. For batteries that do not exhibit such behavior in reality, the response time parameter can be set to zero.
At the conclusion of each cycle, the EMS assigns the final power operating point to the battery. Following this assignment, the updated State of Charge (SoC) is computed. The battery’s usable energy window is bounded by its maximum and minimum allowable SoCs. Once either of these thresholds is reached, further charging (at the upper limit) or discharging (at the lower limit) becomes impossible.
Depending on its current SoC, a battery can reside in one of three operational zones: RED, ORANGE, or GREEN. These zones are used to define the following threshold parameters:
• Lower bound RED–ORANGE: SoC threshold marking the transition from ORANGE into RED
• Upper bound RED–ORANGE: SoC threshold marking the transition from RED into ORANGE
• Lower bound ORANGE–GREEN: SoC threshold marking the transition from GREEN into ORANGE
• Upper bound ORANGE–GREEN: SoC threshold marking the transition from ORANGE into GREEN
These three states do not directly alter the battery’s intrinsic operation; instead, they serve as input signals that guide the Hybrid Controller’s decisions. The state-transition logic is visualized in Figure 3. Each boundary pair (e.g., RED ↔ ORANGE) consists of a lower and an upper threshold. A drop below the lower threshold triggers a downward state change, while a rise above the upper threshold triggers an upward state change. In the illustrative example shown in Figure 3, the RED–ORANGE boundaries are set at 15% and 20%, while the ORANGE–GREEN boundaries are set at 50% and 55%. Although the state machine permits direct jumps between RED and GREEN (and vice versa), such abrupt shifts are improbable under realistic conditions, as they would require extremely rapid transfer of large amounts of energy. These direct transitions are retained purely for model completeness.
Splitting each state boundary into separate lower and upper values prevents rapid oscillation (chattering) between adjacent states. Upon entering a new state, the battery remains in that state until the opposing threshold is crossed, introducing intentional hysteresis. No such hysteresis occurs when the lower and upper bounds of a transition are identical.

Figure 3. Diagram of the state machine that determines a battery’s state based on its SoC.
In addition, a SoC-dependent power derating mechanism has been incorporated. The maximum allowable charge and discharge power are scaled down based on the battery’s current SoC level. The specific derating factors applied are provided in Table 2. The complete sequence of operations performed by each BSS in every cycle is summarized in the flowchart presented in Figure 4.

Figure 4. Flowchart visualizing the task executed by each BSS each cycle.
Table 2. Used the derating factor based on the current SoC of the BSS.
SoC range | Derated charge power | Derated discharge power |
[min.SoC, 20] | 60% of the maximum charge power | 60% of maximum discharge power |
[21, 70] | 80% of the maximum charge power | 80% of maximum discharge power |
[70, max.SoC] | 60% of the maximum charge power | 100% of maximum discharge power |
Based on their respective technical characteristics, each of the two Battery Storage Systems (BSSs) forming the Hybrid Energy Storage System (HESS) is assigned a specific function. These functions are designated as main and support.
The main BSS is designed to accommodate a substantial energy capacity while featuring a comparatively modest rated power and a slower response (ramp) rate. Its primary responsibility is to deliver steady, sustained power to meet prolonged, relatively stable demand, commonly known as base load. In the configuration used here, the main battery is a Redox Flow Battery (RFB).
The support BSS, by contrast, offers high-rated power and a very rapid ramp rate. Its role is therefore to handle abrupt, short-duration fluctuations in demand—for instance, by injecting power during the time it takes the main BSS to reach its target operating point. Additionally, it steps in to supply any portion of the base load that the main BSS cannot fully cover on its own. Within this HESS, the support battery is the lithium-ion battery.
By combining these two BSSs, with contrasting performance profiles, into a unified HESS, the aim is to compensate for the limitations inherent in each technology. This approach, for example, enables full exploitation of the main BSS’s large energy reservoir without being constrained by its restricted power rating or sluggish dynamic response.
These performance disparities between the two BSSs arise directly from the distinct electrochemical technologies they employ.
The central purpose of the proposed Hybrid Controller is to maximize utilization of the HESS—meaning to reduce, as much as possible, the quantity of energy imported from or exported to the grid. This objective must be pursued while still ensuring that overall system supply and demand remain balanced at all times. Furthermore, the Hybrid Controller prioritizes the use of available Photovoltaic (PV) power and enforces strict compliance with the grid’s maximum allowable power exchange limit (¯P𝑔𝑟𝑖𝑑).
To accomplish these aims, the Hybrid Controller actively adjusts the power setpoints of the two BSSs—the main and the support . Determining the appropriate setpoints for both batteries involves two distinct procedures:
The first procedure calculates the aggregate power that the HESS as a whole should either discharge into the system or charge from the system at any given instant.
The second procedure decides how this total power should be allocated—i.e., which portion is assigned to (or drawn from) each of the two BSSs.
Both procedures are guided by the State of Charge (SoC) levels of the BSSs. Specifically, the Hybrid Controller uses the discrete state designations (RED, ORANGE, GREEN) described earlier (Figure 3) as key decision signals. Depending on whether a BSS resides in the RED, ORANGE, or GREEN zone, the controller adjusts its strategy accordingly.
Depending on the prevailing SoC conditions, the Hybrid Controller operates in one of two distinct modes:
The first is Normal Operation Mode, which applies when both BSSs are positioned above the RED region, and the combined stored energy across the two batteries exceeds a predefined minimum threshold.
The second is Energy Deficiency Mode, which is activated whenever at least one BSS enters the RED region, or the total currently stored energy 𝐸𝑠𝑡 falls below the required minimum energy threshold 𝐸𝑟𝑒𝑞.
During Normal Operation Mode, the Hybrid Controller continuously monitors the instantaneous load demand (𝑃𝑙𝑜𝑎𝑑) and the instantaneous PV generation (𝑃𝑝𝑣). When load exceeds generation, it draws supplementary power from the HESS; when generation exceeds load, it directs the surplus into charging the batteries. The net power assigned to the HESS (𝑃𝐻𝐸𝑆𝑆) is given by Eq. 3:
(3)
The sign of 𝑃𝐻𝐸𝑆𝑆 indicates the direction of energy flow: negative for charging the HESS, positive for discharging it. In Normal Operation Mode, charging occurs exclusively when excess PV power is available. Should the combined PV generation and HESS discharge prove insufficient to satisfy the load, the remaining shortfall is covered by the grid.
In Energy Deficiency Mode, however, the controller adopts a more conservative strategy and draws on grid power even when PV generation and HESS capacity could, in theory, meet the demand. For this mode, Eq. 3 is replaced by the modified form given in Eq. 4.
(4)
Completion of the first procedure—i.e., computation of the total power to be charged into or discharged from the HESS—is achieved by evaluating either Eq. 3 or Eq. 4, depending on which operating mode is currently active.
The aggregate power that the Hybrid Energy Storage System (HESS) must either charge or discharge is divided between its two Battery Storage Systems (BSSs). The allocation depends on each BSS’s assigned role (main or support) and its current State of Charge (SoC). The specific share of the total charge or discharge power assigned to each BSS is defined in the ChargeTable (Table 3) and the DischargeTable (Table 4). The primary purpose of these tables is to maintain roughly comparable SoC levels across both BSSs, thereby preventing one battery from becoming fully charged while the other remains nearly depleted.
Table 3. ChargeTable specifying the power distribution between the BSS main and support when charging.
Main | RED | ORANGE | GREEN | ||||
Support | |||||||
RED | 50% | 30% | 0% | ||||
50% | 70% | 100% | |||||
ORANGE | 70% | 70% | 20% | ||||
30% | 30% | 80% | |||||
GREEN | 100% | 20% | 50% | ||||
0% | 80% | 50% | |||||
Table 4. DischargeTable specifying the power distribution between the BSS main and support when discharging.
Main | RED | ORANGE | GREEN | ||||
Support | |||||||
RED | 50% | 70% | 100% | ||||
50% | 30% | 0% | |||||
ORANGE | 30% | 70% | 70% | ||||
70% | 30% | 30% | |||||
GREEN | 0% | 30% | 70% | ||||
100% | 70% | 30% | |||||
The ChargeTable is constructed symmetrically so that, whenever both BSSs reside in identical SoC zones, the available charging power is split equally. For example, in an ORANGE–RED combination, the support BSS receives 70% of the charging power while the main BSS receives 30%. This allocation is inverted for the RED–ORANGE combination. In general, charging priority is given to the BSS occupying the lower SoC zone, enabling it to recover its charge level more rapidly.
The distinction between main and support roles becomes relevant in the ORANGE–ORANGE case. Even though both BSSs are in the same zone, the main BSS is allocated a larger fraction of the charging power because it is also expected to handle a greater share of discharging duties.
The DischargeTable adheres to analogous principles. As a rule, the BSS located in the higher SoC zone is assigned the larger portion of the required discharge power. Nevertheless, in the ORANGE–ORANGE and GREEN–GREEN combinations, the main BSS supplies a larger percentage of the discharge power. The fraction allocated to the main BSS in both the ChargeTable and the DischargeTable is denoted by the parameter 𝜌.
To demonstrate how the Hybrid Controller operates, consider the following illustrative case with unequal initial charge levels:
• Initial state: The main BSS is at 45% SoC (ORANGE zone), while the support BSS is at 70% SoC (GREEN zone). The instantaneous load demand stands at 100 kW, and available PV generation is 50 kW.
• Controller decision: Since the objective is to minimize grid interaction and the demand can be covered by PV generation plus HESS discharge, no grid power is drawn. According to the DischargeTable, for a main BSS in ORANGE combined with a support BSS in GREEN, the main contributes 30%, and the support contributes 70% of the HESS discharge power.
(5)
• Outcome: The full 100 kW load is satisfied by 50 kW from PVs and 50 kW from the HESS. Of the HESS contribution, the main BSS supplies 15 kW, and the support BSS supplies 35 kW. Grid usage is completely avoided.
While the two tables serve as the foundation for power allocation, several supplementary rules have been incorporated to optimize HESS utilization further.
• During Normal Operation Mode, if the main BSS resides in the GREEN zone and the required HESS power (𝑃𝐻𝐸𝑆𝑆) is less than or equal to 80% of the main BSS’s maximum discharge capability, then the main BSS alone delivers the entire required power. However, should the main BSS’s SoC drop into the ORANGE zone or should the power demand exceed this 80% threshold, the standard DischargeTable allocation is reinstated.
• In Energy Deficiency Mode, additional priority rules apply. When only one BSS is in the RED zone, that BSS receives 100% of any available charging power (i.e., whenever 𝑃𝐻𝐸𝑆𝑆 < 0 per Eq. 4). During discharge, preference is given to the BSS that is not in RED; it is permitted to deliver up to its full rated power. Discharge from the RED-zone BSS is authorized only if the load demand still cannot be satisfied after the non-RED BSS has reached its limit. The precise power assigned to each BSS under these conditions is determined using Eqs. 6 and 7.
(6)
(7)
The function filter constrains the assigned power to remain within the permissible operating range of the respective BSS.
Should Eq. 7 yield any unallocated remainder (i.e., 𝑃𝐻𝐸𝑆𝑆 > 𝑃𝑚𝑎𝑖𝑛 + 𝑃𝑠𝑢𝑝𝑝𝑜𝑟𝑡), the largest possible additional amount is assigned to the main BSS. The grid must supply any residual shortfall beyond that.
The complete decision logic of the proposed Hybrid Controller, including all exceptions and priority rules, is visualized in the flowcharts presented in Figure 5.

Figure 5. Flowcharts illustrating the control strategy of the proposed hybrid controller.
Consider a case in which the main Battery Storage System (BSS) has a maximum discharge capability of ¯Pmain = 100 kW, while the support BSS is capable of discharging up to ¯Psupport = 200 kW. In this situation, the main BSS resides in the GREEN zone, whereas the support BSS is located in the RED zone (Figure 5b). Using the following parameter values,
(8)
We assess whether the available energy sources are sufficient to satisfy the load requirements.
First, we determine whether the combined output from the grid and the Photovoltaic (PV) system alone can cover the entire load. As this proves insufficient,
(9)
We then evaluate whether adding discharge from the main BSS, together with the grid and PV, resolves the shortfall. This combination, however, still falls short of meeting the demand.
(10)
Consequently, the remaining deficit is covered by drawing power from the support BSS, even though it is in the RED zone:
(11)
Thus, because the grid, PV generation, and the main BSS together cannot fully satisfy the load, the controller activates the support BSS and draws 30 kW from it despite its RED state.
The system behavior was implemented using the Open Source Energy Management System (OpenEMS) version 2023.6.0. OpenEMS is a freely available, Java-based energy management platform that provides a comprehensive, ready-to-use EMS framework with extensive built-in features.
Its principal benefit for this work lies in its ability to build directly on its established architecture, allowing the focus to remain on developing the Hybrid Energy Storage System (HESS) model and designing the proposed Hybrid Controller. Both the HESS model and the Hybrid Controller presented here are built on the OpenEMS foundation.
Furthermore, the modular design of OpenEMS facilitates straightforward future enhancements and extensions of the implemented features. A comprehensive introduction and full documentation for OpenEMS are available on the official website at https://openems.io (accessed on 29 October 2024).
Although OpenEMS supplies fundamental capabilities for conducting real-time simulations, this method fell short of meeting the specific needs of the present study. Consequently, a dedicated simulation environment was developed in Python. This custom framework delivers accelerated execution, maintains a uniform one-second cycle duration, and facilitates straightforward handling and analysis of output data through the Pandas library for data processing. These improvements are realized while retaining the greatest possible portion of the original OpenEMS codebase.
To achieve this compatibility, the Hybrid Controller and the Battery Storage System (BSS) models, originally written in Java, can be directly incorporated into the Python-based simulation without modification. By invoking the existing Java classes directly, the simulation produces behavior identical to what would occur in a future real-world deployment of the same code. Access to the Java implementation is enabled through the pyjnius library, which bridges Python and Java environments. Further performance gains were obtained by applying Cython optimization, reducing the runtime for a full month of simulated time to only a few minutes.
To run the simulations, all components must be appropriately parameterized. For the two BSSs that form the Hybrid Energy Storage System (HESS), the final eight attributes listed in Table 1 require explicit values. The specific settings adopted for the main and support BSSs are provided in Table 5.
Table 5. Values modeling the main and support BSSs during the real-time simulation.
Attribute | Main (RFB) | Support (Li-Ion) |
Capacity | 400 kWh | 220 kWh |
Maximum Discharge Power | 90 kW | 276 kW |
Maximum Charge Power | 78 kW | 276 kW |
Ramp Rate | 1200 W/Cycle | 100 kW/Cycle |
Response Time | 10 s | 2 s |
Inactivity Time | 10 s | 10 s |
Minimum SoC | 10% | 5% |
Maximum SoC | 90% | 95% |
Lower Bound RED–ORANGE | 17% | 17% |
Upper Bound RED–ORANGE | 20% | 20% |
Lower Bound ORANGE–GREEN | 70% | 50% |
Upper Bound ORANGE–GREEN | 70% | 50% |
Both BSSs initialize the simulation at a State of Charge (SoC) of 50%. For both batteries, the RED–ORANGE state transition is defined by thresholds of 17% and 20%. The presence or absence of a BSS in the RED zone significantly influences the Hybrid Controller’s decision logic. Introducing a 3% hysteresis band between these bounds prevents excessive switching between control strategies. This margin strikes an effective balance between minimizing unnecessary grid power usage and avoiding overly rapid mode transitions.
In contrast, the ORANGE–GREEN boundary does not require hysteresis because it affects only power-sharing ratios rather than fundamental control-mode changes. Consequently, the upper and lower bounds for this transition are set equal for each BSS. For the main BSS, the ORANGE zone spans a wider interval of [20%, 70%]. This broader range allows the main BSS to benefit from ORANGE-state prioritization over a longer portion of its SoC operating window.
For the grid component, the only configurable parameter is the maximum permissible power exchange (import or export) with the system. To investigate performance under varying grid connection constraints, simulations were conducted for two distinct cases:
• Low grid power limit: 100 kW
• High grid power limit: 200 kW
The variable load and Photovoltaic (PV) generation profiles are driven by real, pre-recorded time-series datasets.
The PV generation profile is derived from actual power output measurements recorded at an operational photovoltaic installation in Germany. The measurements span five full years (2016 to 2022) and were collected at 15-minute resolution. From this extensive record, two specific one-month periods were extracted to serve as the foundation for two distinct input datasets:
1. The first period runs from 1 January 2022 at 11:00 to 31 January 2022 at 23:45. This winter interval was deliberately chosen to evaluate HESS performance under conditions of limited PV output typical of the colder months. The corresponding dataset is designated as the Winter Data Source.
2. The second period covers 9 July 2022 at 11:00 to 31 July 2022 at 23:45. This summer interval was selected to assess the Hybrid Controller’s behavior during periods of elevated PV generation. To amplify the effect and better stress-test the system, all power values in this interval were scaled by a factor of twenty. The resulting dataset is referred to as the Summer Data Source.
No additional metadata is available concerning the exact site conditions, orientation, or environmental factors during the original data collection.
Key statistical properties of these two PV data sources are summarised in Table 6.
Table 6. Characteristic values for the PV dataset.
Attribute | Winter | Summer |
Number of entries | 2836 | 2836 |
Number of non-zero entries | 957 | 1837 |
Mean power | 37.36 W | 6.73 kW |
Mean power of non-zero entries | 110.72 W | 10.34 kW |
Maximum power | 934.40 W | 28.80 kW |
Total energy produced | 26.39 kWh | 4.77 MWh |
The variable load profiles are constructed from actual power consumption measurements recorded at Electric Vehicle Charging Stations (EVCSs). From these real-world measurements, two distinct input datasets for the variable load were created.
The first dataset, designated D1, is based on power consumption readings in Watts [W] taken from three different charging interfaces (Type 2 and Combined Charging System (CCS)). Measurements were collected at 30-second intervals throughout April 2022. For simulation purposes, the selected period runs from 1 April 2022 at 11:00 to 30 April 2022 at 23:59. At each time step, the power drawn by the three charging connectors is aggregated to obtain the total station consumption. To achieve a consistent one-minute resolution, every second data point was discarded, yielding a final dataset containing 42,540 entries.
Key statistical properties of the load dataset D1 are summarised in Table 7.
Table 7. Characteristics of the first used load dataset D1.
Attribute | Value |
Number of entries | 42,540 |
Count of non-zero entries | 9,326 |
Total energy consumed | 1.99 MWh |
Mean Power | 2.80 kW |
Mean Power of non-zero entries | 12.79 kW |
Max. Power | 40 kW |
Median Power | 0 W |
The second dataset, labeled D2, originates from log files generated by multiple EVCS installations. These logs cover various location types (such as “Near Highway” or “Country Side”) and include several charging stations per site. Consumption is recorded per charger as the total energy delivered (in kWh) over the entire charging session. Because this cumulative energy format is incompatible with the time-step-based simulation framework, the data must be transformed into an instantaneous power profile.
The preprocessing steps for each site are as follows:
• Convert the energy-based records into average power per time step by dividing the total energy consumed by the charging session duration.
• Assign this constant power value to every one-minute time step falling within the charging period.
• Sum the power contributions from all individual chargers at each time step to determine the total station load.
• To eliminate abrupt power jumps introduced by the constant-power approximation, a linear ramping mechanism was applied: power increases gradually over the five time steps preceding a rise from zero to the target setpoint (incrementing by one-fifth of the setpoint per step), and decreases symmetrically over five steps when returning to zero.
This procedure produces five separate datasets, each corresponding to a specific site category: Country Side (D2 CS), Highway (D2 H), Near the Highway (D2 NH), in the City (D2 C), and Outside the City (D2 OC). Consistent with D1, the time window for all D2 datasets spans 1 April 2022 at 11:00 to 30 April 2022 at 23:59, with a one-minute resolution, yielding 42,540 entries per dataset.
Selected statistical characteristics of the second dataset (family D2) are presented in Table 8.
Table 8. Characteristics of the second used load dataset D2 (CS: Country Side, H: Highway, NH: Near the Highway, C: in the City, OC: Outside the City).
Attribute | CS | H | NH | C | OC |
Number of entries | 42,540 | 42,540 | 42,540 | 42,540 | 42,540 |
Number of non-zero entries | 9,861 | 15,201 | 4,115 | 14,317 | 3,344 |
Total energy consumed | 9.61 MWh | 19.92 MWh | 3.76 MWh | 14.11 MWh | 2.30 MWh |
Mean power | 13.55 kW | 28.10 kW | 5.30 kW | 19.90 kW | 3.24 kW |
Mean power of non-zero entries | 58.44 kW | 78.63 kW | 54.83 kW | 59.12 kW | 41.20 kW |
Max. power | 217 kW | 421 kW | 149 kW | 276 kW | 140 kW |
Median power | 0 W | 0 W | 0 W | 0 W | 0 W |
By considering the operational states of the components specifically, whether each supplies power to the system (P > 0) or draws power from it (P ≤ 0)—a total of 16 distinct scenarios can be defined, as summarised in Table 9. These scenarios were established based on the following two fundamental assumptions:
Table 9. Sixteen scenarios were derived based on implemented functionality.
Scenario | 𝑷𝐠𝐫𝐢𝐝 > 𝟎 | 𝑷𝐩𝐯 > 𝟎 | 𝑷𝐇𝐄𝐒𝐒 < 𝟎 | 𝑷𝐥𝐨𝐚𝐝 < 𝟎 |
1 (NP) | × | × | ✓ | ✓ |
2 (NP) | × | × | ✓ | × |
3 | × | × | × | ✓ |
4 | × | × | × | × |
5 | × | ✓ | ✓ | ✓ |
6 | × | ✓ | ✓ | × |
7 | × | ✓ | × | ✓ |
8 | × | ✓ | × | × |
9 | ✓ | × | ✓ | ✓ |
10 | ✓ | × | ✓ | × |
11 | ✓ | × | × | ✓ |
12 (NP) | ✓ | × | × | × |
13 | ✓ | ✓ | ✓ | ✓ |
14 | ✓ | ✓ | ✓ | × |
15 | ✓ | ✓ | × | ✓ |
16 (NP) | ✓ | ✓ | × | × |
NP: Not Possible Scenario, ×: No Power Available, ✓: Power Available
- When the Hybrid Energy Storage System (HESS) is not in charging mode, it can either deliver zero power (P = 0) or discharge power (P > 0). Likewise, when the grid is not supplying power, it can either contribute zero power (P = 0) or absorb power (P < 0).
- Photovoltaic (PV) generation can only inject power into the system, whereas the load can only withdraw power.
It should be noted that Scenarios 1, 2, 12, and 16 are included for completeness but are physically impossible within the implemented system. Scenarios 1 and 2 would require serving a load in the complete absence of any power source. At the same time, Scenarios 12 and 16 would involve power generation with no load to consume it and no possibility of exporting surplus to the grid.
The other twelve scenarios are feasible. Their occurrence was confirmed through simulation results, verifying that the proposed Hybrid Controller successfully handles all expected operating conditions. The first eight scenarios, which do not involve the grid, are explained below:
- Scenario 3: The entire load is supplied solely by the HESS. This situation arises in Normal Operation Mode when the demand can be fully covered by the HESS alone, i.e., P_load ≤ P_main + P_support. In this case, the required power is provided exclusively by the HESS.
- Scenario 4: The system remains idle. The grid or PVs supply no power, no load is present, and the HESS neither charges nor discharges. This state is expected when the Hybrid Controller is not in Energy Deficiency Mode (thus, no grid charging is needed) and neither PV production nor load consumption occurs.
- Scenario 5: PV generation exceeds the load demand, and the Hybrid Controller operates in Normal Operation Mode. According to Eq. 3, P_HESS becomes negative, leading to charging of the HESS with the surplus PV power.
- Scenario 6: PV power is available, there is no load, and the system is in Normal Operation Mode. All generated PV power is directed to charge the HESS.
- Scenario 7: This extends Scenario 3 by including PV contribution. The load is met jointly by PV generation and the HESS, i.e., Pload <= Ppv + Pmain + Psupport.
- Scenario 8: No load is present, and the HESS is already fully charged. In this case, any available PV power is exported to the grid.
The remaining scenarios all involve grid utilization. Given that the primary objective of the Hybrid Controller is to minimize grid dependency, grid interaction should occur only when unavoidable—either because the system is in Energy Deficiency Mode or because the load demand exceeds the combined capacity of PV generation and HESS discharge.
- Scenarios 9 and 13: The Hybrid Controller is in Energy Deficiency Mode, and grid power alone is sufficient to satisfy the load. Eq. 4 yields PHESS < 0, so the HESS charges using grid energy. In Scenario 13, surplus PV power is also available and contributes to charging. In both cases, the HESS receives the net remainder after accounting for + −.
- Scenarios 10 and 14: No load exists, so all available grid power is used to charge the HESS. Scenario 14 additionally includes PV generation, which further supports charging.
- Scenarios 11 and 15: Grid power is insufficient to cover the load on its own. Consequently, the HESS must discharge—even while in Energy Deficiency Mode—to help meet demand. Scenario 15 also incorporates PV contribution. These scenarios can also occur in Normal Operation Mode when the load exceeds the combined maximum output of the HESS and PVs. In such cases, the grid supplies the remaining shortfall.
All described scenarios were systematically tested and validated through the conducted simulations.
The primary objective of the Hybrid Controller is to maximize exploitation of the available Photovoltaic (PV) power while minimizing dependence on the electrical grid. To enable a thorough and multifaceted evaluation of system performance, a set of carefully selected performance indicators was adopted, including Autarky, Self-Consumption (SC), and battery cycle counts. Each metric was chosen to highlight distinct dimensions of the system’s behavior, ranging from energy self-sufficiency to operational effectiveness and long-term component durability. Collectively, these indicators clearly demonstrate the system’s capability to deliver dependable, environmentally sustainable energy storage solutions.
The aggregate energy demand and total PV energy production are not outcomes of the simulation; rather, they are fixed inputs determined. Consequently, these values remain independent of the Hybrid Controller’s performance. Nevertheless, when considered together with the metrics Energy Drawn from Grid and Energy Discharged to Grid, they establish a theoretical reference point for the best possible simulation outcome. In cases where total PV generation equals or exceeds total consumption, an ideal Hybrid Controller should be able to operate without drawing any grid power. Conversely, limited PV output can help explain frequent grid utilization. While this basic comparison offers a high-level perspective, a deeper understanding requires more targeted performance indicators.
The metric Energy Drawn from Grid quantifies the cumulative energy imported from the grid across the entire simulation period. Its value is fundamentally influenced by the predefined total consumption and total PV generation provided by the input datasets. An optimal outcome for this metric would approximate the difference between consumption and generation whenever demand exceeds supply, and approach zero whenever generation surpasses demand.
Analogous to Energy Drawn from Grid, the metric Energy Discharged to Grid measures the total energy exported from the system to the grid over the full simulation duration. A desirable result is a value near zero when consumption outstrips generation, and approximately equal to the surplus (generation minus consumption) when PV production exceeds demand.
This indicator records the number of instances in which the Hybrid Controller was unable to constrain the power exchanged with the grid (either imported or exported) below the specified grid limit. A limit violation occurs only when the average power flow—calculated over a 15-minute (quarter-hour) interval—exceeds the predefined threshold. Brief, momentary power spikes lasting only a few seconds are therefore generally not registered as violations.
Autarky is the fraction of instantaneous power demand satisfied by PV generation and/or the Hybrid Energy Storage System (HESS) at any given time step t, relative to the portion drawn from the grid. This relationship is formally defined by Eq. 12 for each discrete time step.
(12)
Whereas the cumulative metrics Energy Drawn from Grid and Energy Discharged to Grid reflect overall grid dependency in terms of total energy over the simulation period, Autarky captures instantaneous power-level reliance at each time step. It should be emphasized that this metric does not distinguish the source of energy stored in the HESS—whether it was previously charged from PV surplus or from grid power.
It indicates the share of PV power that is self-consumed relative to the total PV power produced at each time step t. This SC metric is given by Eq. 13.
(13)
While the earlier evaluation metrics primarily address the HESS’s energy-buffering role, the battery cycle metrics focus on the system’s actual operational behavior. In this study, a battery cycle is defined as the sequence of time steps between two instants at which the battery power output equals zero. In other words, during one battery cycle, the power output moves from zero to at least one non-zero operating point and returns to zero. Positive operating points correspond to a discharge cycle, whereas negative values define a charge cycle. If the battery changes directly from charging to discharging (or vice versa) without passing through 0 W, the current cycle is terminated, and a new cycle starts immediately. These cycles are determined independently for the main and the support batteries.
For every charge–discharge cycle, four key metrics are recorded:
• Cycle duration: the length of the cycle.
• Cycle energy: the total energy charged or discharged during that cycle.
• Cycle mean power: the average power discharged over the cycle.
• Ratio cycle energy/total BSS capacity: the ratio between the charged or discharged energy and the total battery capacity.
For result analysis, these metrics are first averaged across all charge–discharge cycles. In addition, overall averages are computed over all battery cycles to obtain the complete cycle metrics. Figures 6 and 7 present an overview of the outcomes for the H-Summer-High-Grid and CS-Summer-High-Grid simulations. The detailed evaluation metrics are provided in Tables 10-15.

Figure 6. Consumption, grid, and production curves, as well as the SoC of the two BSSs for simulation H-Summer-High-Grid from 06.04.2022 at 00:00 until 13.04.2022 at 00:00.

Figure 7. Consumption, grid, and production curves, as well as the SoC of the two BSSs for simulation CS-Summer-High-Grid from 04.04.2022 at 00:00 until 11.04.2022 at 00:00.
Table 10. Simulation results for the highway location.
Metric | Summer–High grid | Summer–Low grid | Winter–High grid | Winter–Low grid |
Total Energy Consumption | 19.92 MWh | 19.92 MWh | 19.92 MWh | 19.92 MWh |
PV Energy Generated | 4.77 MWh | 4.77 MWh | 26.39 kWh | 26.39 kWh |
Energy Drawn from Grid | 14.96 MWh | 14.96 MWh | 19.70 MWh | 19.71 MWh |
Energy Discharged to Grid | 2.25 kWh | 1.81 kWh | 1.28 kWh | 0.37 kWh |
Energy Charged to Main | 4.02 MWh | 3.77 MWh | 3.31 MWh | 2.98 MWh |
Energy Discharged by the Main | 4.14 MWh | 3.89 MWh | 3.43 MWh | 3.10 MWh |
Energy Charged to Support | 1.71 MWh | 2.21 MWh | 1.47 MWh | 2.02 MWh |
Energy Discharged by Support | 1.78 MWh | 2.28 MWh | 1.54 MWh | 2.09 MWh |
Grid Limit Exceeded | 11 | 129 | 16 | 186 |
Average Autarky | 71% | 70% | 47% | 44% |
Average Self-Consumption | 100% | 100% | 98% | 99% |
Average Charge Cycle Duration | 23.60 min | 35.25 min | 13.82 min | 26.01 min |
Average Charge Cycle Energy | 5.92 kWh | 6.40 kWh | 6.07 kWh | 6.77 kWh |
Average Charge Cycle Mean Power | 44.20 kW | 16.79 kW | 58.68 kW | 23.151 kW |
Average Ratio Charge Cycle Energy/Total BSS Capacity | 0.0198 | 0.0209 | 0.0207 | 0.0225 |
Average Discharge Cycle Duration | 8.6 min | 12.67 min | 7.21 min | 12.18 min |
Average Discharge Cycle Energy | 4.23 kWh | 5.34 kWh | 3.70 kWh | 4.88 kWh |
Average Discharge Cycle Mean Power | 32.10 kW | 21.41 kW | 36.47 kW | 23.97 kW |
Average Ratio Discharge Cycle Energy/Total BSS Capacity | 0.0141 | 0.0175 | 0.0126 | 0.0162 |
Average Overall Cycle Duration | 14.8 min | 22.80 min | 9.68 min | 17.87 min |
Average Overall Cycle Energy | 4.93 kWh | 5.82 kWh | 4.58 kWh | 5.66 kWh |
Average Overall Cycle Mean Power | 37.08 kW | 19.33 kW | 44.76 kW | 23.63 kW |
Average Ratio Overall Cycle Energy/Total BSS Capacity | 0.0165 | 0.0190 | 0.0156 | 0.0188 |
Table 11. Simulation results for the countryside location.
Metric | Summer–high grid | Summer–Low grid | Winter–High grid | Winter–Low grid |
Total Energy Consumption | 9.61 MWh | 9.61 MWh | 9.61 MWh | 9.61 MWh |
PV Energy Generated | 4.77 MWh | 4.77 MWh | 26.39 kWh | 26.39 kWh |
Energy Drawn from Grid | 4.65 MWh | 4.65 MWh | 9.40 MWh | 9.40 MWh |
Energy Discharged to Grid | 2.65 kWh | 2.43 kWh | 1.06 kWh | 0.65 kWh |
Energy Charged to Main | 2.91 MWh | 2.69 MWh | 2.16 MWh | 1.73 MWh |
Energy Discharged by the Main | 3.03 MWh | 2.81 MWh | 2.28 MWh | 1.85 MWh |
Energy Charged to Support | 1.26 MWh | 1.28 MWh | 0.92 MWh | 0.95 MWh |
Energy Discharged by Support | 1.33 MWh | 1.35 MWh | 0.98 MWh | 1.01 MWh |
Grid Limit Exceeded | 1 | 22 | 0 | 44 |
Average Autarky | 87% | 87% | 62% | 59% |
Average Self-Consumption | 100% | 100% | 97% | 98% |
Average Charge Cycle Duration | 37.50 min | 45.50 min | 21.38 min | 32.45 min |
Average Charge Cycle Energy | 5.18 kWh | 5.19 kWh | 5.50 kWh | 5.10 kWh |
Average Charge Cycle Mean Power | 27.99 kW | 11.06 kW | 56.30 kW | 21.45 kW |
Average Ratio Charge Cycle Energy/Total BSS Capacity | 0.0167 | 0.0165 | 0.0183 | 0.0165 |
Average Discharge Cycle Duration | 11.64 min | 14.27 min | 8.44 min | 11.73 min |
Average Discharge Cycle Energy | 4.47 kWh | 4.96 kWh | 3.52 kWh | 3.75 kWh |
Average Discharge Cycle Mean Power | 22.27 kW | 16.24 kW | 31.20 kW | 20.85 kW |
Average Ratio Discharge Cycle Energy/Total BSS Capacity | 0.0144 | 0.0158 | 0.0117 | 0.0121 |
Average Overall Cycle Duration | 23.41 min | 29.24 min | 13.39 min | 20.24 min |
Average Overall Cycle Energy | 4.79 kWh | 5.07 kWh | 4.28 kWh | 20.24 kWh |
Average Overall Cycle Mean Power | 24.87 kW | 13.76 kW | 40.79 kW | 21.10 kW |
Average Ratio Overall Cycle Energy/Total BSS Capacity | 0.0155 | 0.0161 | 0.0142 | 0.0139 |
Table 12. Simulation results for the outside-the-city location.
Metric | Summer–High grid | Summer–Low grid | Winter–High grid | Winter–Low grid |
Total Energy Consumption | 2.30 MWh | 2.30 MWh | 2.30 MWh | 2.30 MWh |
PV Energy Generated | 4.77 MWh | 4.77 MWh | 26.39 kWh | 26.39 kWh |
Energy Drawn from Grid | 1.17 kWh | 1.17 kWh | 2.08 MWh | 2.09 MWh |
Energy Discharged to Grid | 2.22 MWh | 2.22 MWh | 0.49 kWh | 0.29 kWh |
Energy Charged to Main | 1.63 MWh | 1.63 MWh | 0.66 MWh | 0.56 MWh |
Energy Discharged by the Main | 1.47 MWh | 1.47 MWh | 0.78 MWh | 0.68 MWh |
Energy Charged to Support | 0.20 MWh | 0.20 MWh | 0.26 MWh | 0.26 MWh |
Energy Discharged by Support | 0.10 MWh | 0.10 MWh | 0.33 MWh | 0.32 MWh |
Grid Limit Exceeded | 0 | 0 | 0 | 2 |
Average Autarky | 98% | 98% | 85% | 84% |
Average Self-Consumption | 60% | 60% | 99% | 99% |
Average Charge Cycle Duration | 41.31 min | 41.31 min | 70.46 min | 81.04 min |
Average Charge Cycle Energy | 4.60 kWh | 4.60 kWh | 3.93 kWh | 3.44 kWh |
Average Charge Cycle Mean Power | 4.66 kW | 4.66 kW | 41.05 kW | 17.04 kW |
Average Ratio Charge Cycle Energy/Total BSS Capacity | 0.0125 | 0.0125 | 0.0126 | 0.0109 |
Average Discharge Cycle Duration | 6.53 min | 6.53 min | 10.56 min | 11.43 min |
Average Discharge Cycle Energy | 3.17 kWh | 3.17 kWh | 3.37 kWh | 3.28 kWh |
Average Discharge Cycle Mean Power | 6.88 kW | 6.88 kW | 21.56 kW | 17.42 kW |
Average Ratio Discharge Cycle Energy/Total BSS Capacity | 0.00835 | 0.00835 | 0.0108 | 0.0104 |
Average Overall Cycle Duration | 21.97 min | 21.97 min | 36.40 min | 42.71 min |
Average Overall Cycle Energy | 3.81 kWh | 3.81 kWh | 3.61 kWh | 3.35 kWh |
Average Overall Cycle Mean Power | 5.89 kW | 5.89 kW | 29.96 kW | 17.25 kW |
Average Ratio Overall Cycle Energy/Total BSS Capacity | 0.0102 | 0.0102 | 0.0116 | 0.0106 |
Table 13. Simulation results for the highway location.
Metric | Summer high grid | Summer low grid | Winter high grid | Winter low grid |
Total Energy Consumption | 3.76 MWh | 3.76 MWh | 3.76 MWh | 3.76 MWh |
PV Energy Production | 4.77 MWh | 4.77 MWh | 26.39 kWh | 26.39 kWh |
Energy Imported from Grid | 3.53 kWh | 3.53 kWh | 3.55 MWh | 3.55 kWh |
Energy Exported/Fed to Grid | 1.02 MWh | 1.02 MWh | 0.64 kWh | 0.39 kWh |
Energy Charged into Main Battery | 1.98 MWh | 1.98 MWh | 0.87 MWh | 0.77 MWh |
Energy Discharged from Main Battery | 1.96 MWh | 1.96 MWh | 0.98 MWh | 0.89 MWh |
Energy Charged into Support Battery | 0.96 MWh | 0.96 MWh | 0.36 MWh | 0.39 MWh |
Energy Discharged from Support Battery | 0.98 MWh | 0.98 MWh | 0.43 MWh | 0.45 MWh |
Number of Times Grid Limit Was Exceeded | 0 | 0 | 0 | 8 |
Average Autarky Level | 98% | 98% | 80% | 78% |
Average Self-Consumption Rate | 83% | 83% | 99% | 99% |
Average Duration per Charging Cycle | 73.98 min | 73.98 min | 50.93 min | 70.75 min |
Average Energy per Charging Cycle | 6.45 kWh | 6.45 kWh | 4.27 kWh | 4.10 kWh |
Average Mean Power during Charging Cycles | 4.33 kW | 4.33 kW | 43.32 kW | 17.40 kW |
Avg. Ratio: Charge Energy/Total BSS Capacity | 0.0204 | 0.0204 | 0.0141 | 0.0132 |
Average Duration per Discharging Cycle | 9.45 min | 9.45 min | 8.12 min | 10.73 min |
Average Energy per Discharging Cycle | 5.00 kWh | 5.00 kWh | 3.32 kWh | 3.64 kWh |
Average Mean Power during Discharging Cycles | 11.56 kW | 11.56 kW | 28.03 kW | 21.05 kW |
Avg. Ratio: Discharge Energy/Total BSS Capacity | 0.0159 | 0.0159 | 0.0110 | 0.0118 |
Average Duration per Full Cycle (Chg+Dischg) | 37.63 min | 37.63 min | 25.94 min | 37.21 min |
Average Energy per Full Cycle | 5.64 kWh | 5.64 kWh | 3.71 kWh | 3.84 kWh |
Average Mean Power across Full Cycles | 8.40 kW | 8.40 kW | 34.39 kW | 19.44 kW |
Avg. Ratio: Overall Cycle Energy/Total BSS Capacity | 0.0178 | 0.0178 | 0.0123 | 0.0124 |
Table 14. Simulation results for the city location.
Metric | Summer high grid | Summer low grid | Winter high grid | Winter low grid |
Total Energy Consumption | 14.11 MWh | 14.11 MWh | 14.11 MWh | 14.11 MWh |
PV Energy Production | 4.77 MWh | 4.77 MWh | 26.39 kWh | 26.39 kWh |
Energy Imported from Grid | 9.15 MWh | 9.16 MWh | 13.89 MWh | 13.90 MWh |
Energy Exported/Fed to Grid | 2.45 MWh | 2.13 kWh | 1.16 kWh | 0.72 kWh |
Energy Charged into Main Battery | 3.18 MWh | 3.11 MWh | 2.78 MWh | 2.63 MWh |
Energy Discharged from Main Battery | 3.31 MWh | 3.22 MWh | 2.91 MWh | 2.74 MWh |
Energy Charged into Support Battery | 1.39 MWh | 1.72 MWh | 1.23 MWh | 1.58 MWh |
Energy Discharged from Support Battery | 1.45 MWh | 1.78 MWh | 1.29 MWh | 1.65 MWh |
Number of Times Grid Limit Was Exceeded | 4 | 57 | 5 | 91 |
Average Autarky Level | 79% | 77% | 52% | 50% |
Average Self-Consumption Rate | 100% | 100% | 97% | 98% |
Average Duration per Charging Cycle | 25.21 min | 33.72 min | 13.48 min | 21.66 min |
Average Energy per Charging Cycle | 4.89 kWh | 5.29 kWh | 5.67 kWh | 6.04 kWh |
Average Mean Power during Charging Cycles | 34.73 kW | 15.27 kW | 57.86 kW | 25.91 kW |
Avg. Ratio: Charge Energy/Total BSS Capacity | 0.0162 | 0.0171 | 0.0191 | 0.0199 |
Average Duration per Discharging Cycle | 10.31 min | 13.84 min | 9.36 min | 13.50 min |
Average Energy per Discharging Cycle | 3.85 kWh | 4.61 kWh | 3.53 kWh | 4.22 kWh |
Average Mean Power during Discharging Cycles | 26.04 kW | 17.52 kW | 31.63 kW | 20.99 kW |
Avg. Ratio: Discharge Energy/Total BSS Capacity | 0.0127 | 0.0149 | 0.0118 | 0.0138 |
Average Duration per Full Cycle (Chg+Dischg) | 16.78 min | 22.94 min | 10.91 min | 16.78 min |
Average Energy per Full Cycle | 4.30 kWh | 4.92 kWh | 4.34 kWh | 4.95 kWh |
Average Mean Power across Full Cycles | 29.81 kW | 16.49 kW | 41.52 kW | 22.97 kW |
Avg. Ratio: Overall Cycle Energy/Total BSS Capacity | 0.0142 | 0.0159 | 0.0145 | 0.0162 |
Table 15. Simulation results for dataset D1 (country-side).
Metric | Summer high grid | Summer low grid | Winter high grid | Winter low grid |
Total Energy Consumption | 1.99 MWh | 1.99 MWh | 1.99 MWh | 1.99 MWh |
PV Energy Production | 4.77 MWh | 4.77 MWh | 26.39 kWh | 26.39 kWh |
Energy Imported from Grid | 0.36 MWh | 0.36 MWh | 1.77 MWh | 1.78 MWh |
Energy Exported/Fed to Grid | 3.03 MWh | 3.03 MWh | 0.07 kWh | 0.07 kWh |
Energy Charged into Main Battery | 0.91 MWh | 0.91 MWh | 0.78 MWh | 0.74 MWh |
Energy Discharged from Main Battery | 0.81 MWh | 0.81 MWh | 0.90 MWh | 0.86 MWh |
Energy Charged into Support Battery | 0.42 MWh | 0.42 MWh | 0.36 MWh | 0.35 MWh |
Energy Discharged from Support Battery | 0.40 MWh | 0.40 MWh | 0.43 MWh | 0.42 MWh |
Number of Times Grid Limit Was Exceeded | 0 | 0 | 0 | 0 |
Average Autarky Level | 96% | 96% | 85% | 85% |
Average Self-Consumption Rate | 44% | 44% | 99% | 99% |
Average Duration per Charging Cycle | 104.95 min | 104.95 min | 91.19 min | 93.53 min |
Average Energy per Charging Cycle | 10.09 kWh | 10.03 kWh | 6.25 kWh | 6.02 kWh |
Average Mean Power during Charging Cycles | 30.02 kW | 19.53 kW | 74.97 kW | 44.15 kW |
Avg. Ratio: Charge Energy/Total BSS Capacity | 0.0317 | 0.0316 | 0.0197 | 0.0191 |
Average Duration per Discharging Cycle | 52.87 min | 52.40 min | 46.66 min | 46.81 min |
Average Energy per Discharging Cycle | 7.66 kWh | 7.60 kWh | 4.65 kWh | 4.54 kWh |
Average Mean Power during Discharging Cycles | 6.49 kW | 6.30 kW | 11.12 kW | 10.69 kW |
Avg. Ratio: Discharge Energy/Total BSS Capacity | 0.0242 | 0.0241 | 0.0147 | 0.0143 |
Average Duration per Full Cycle (Chg+Dischg) | 76.43 min | 76.17 min | 64.35 min | 65.47 min |
Average Energy per Full Cycle | 8.76 kWh | 8.70 kWh | 5.29 kWh | 5.13 kWh |
Average Mean Power across Full Cycles | 17.13 kW | 12.28 kW | 36.49 kW | 24.05 kW |
Avg. Ratio: Overall Cycle Energy/Total BSS Capacity | 0.0276 | 0.0275 | 0.0167 | 0.0163 |
Drawing on the information presented in Tables 10-15, many key insights emerge from the simulation outcomes. The results can be clearly separated into two categories: Group One, where Total Energy Consumption exceeds PV-Energy Consumption, and Group Two, where Total Energy Consumption remains below PV-Energy Consumption.
Every winter simulation, along with the summer runs for locations H, CS, and C, belongs to this group (Tables 10-15). These scenarios consistently show strong SC figures and Autarky values approaching 100%. Such outcomes confirm that the system successfully exploits the energy from the PV array and substantially reduces its dependence on the external grid. Achieving near-complete Autarky strengthens the setup’s resilience, allowing it to function autonomously during power outages or in off-grid environments while maintaining a stable energy supply.
On the generation side, PV output must be substantially increased across all cases, especially at the high-demand sites H and C. The current generation capacity falls short of meeting the requirements imposed by EVCS installations. Consequently, the average SoC of the HESS stays in the bottom quartile. For example, the mean SoC recorded for H-Summer-High-Grid is only 20%. This low level makes it difficult to evaluate whether the chosen battery size is truly adequate for the site’s needs.
The Grid Limit Exceeded indicator offers a useful way to assess whether the installed HESS power rating is sufficient. In the majority of Group One simulations, this limit is breached at least once. The few exceptions are CS-Winter-High-Grid, OC-Winter-High-Grid, NH-Winter-High-Grid, and both D1 winter cases. Exceedances occur most frequently in the low-grid scenarios at sites H and C. This pattern is understandable, given that these locations exhibit both the highest peak and average power demand (Table 8). Even then, the amount by which the limit is surpassed rarely exceeds one kilowatt. To fully meet demand at these sites, either the grid power cap or the HESS maximum output would need to be raised.
Running the simulations without HESS results in a clear increase in the number of grid limit violations (Tables 16-18). Once more, CS-Winter-High-Grid, OC-Winter-High-Grid, and NH-Winter-High-Grid record no exceedances at all. Interestingly, CS-Summer-High-Grid shows zero violations when the HESS is removed. For the other cases, the increase is most noticeable under low-grid conditions. For instance, C-Summer-Low-Grid sees the count double from 57 to 107 occurrences, while H-Winter-Low-Grid jumps from 186 to 254. These comparisons highlight that the Hybrid Controller, combined with the HESS’s ability to supply additional power independently of the grid for limited periods, effectively helps restrain grid demand. Nevertheless, when a strict 100 kW grid limit is paired with the intense consumption seen at sites H and C, the system still cannot eliminate all exceedances.
Table 16. Simulation results for the Highway location (no HESS).
Metric | Summer high grid | Summer low grid | Winter high grid | Winter low grid |
Energy Imported from Grid | 17.19 MWh | 17.19 MWh | 19.90 MWh | 19.90 MWh |
Energy Exported/Fed to Grid | 2.04 MWh | 2.04 MWh | 9.51 kWh | 9.51 kWh |
Number of Times Grid Limit Was Exceeded | 15 | 195 | 19 | 254 |
Average Autarky Level | 25% | 25% | 0% | 0% |
Average Self-Consumption Rate | 51% | 51% | 63% | 63% |
Table 17. Simulation results for the outside-the-city location (No HESS).
Metric | Summer | Winter | ||
High grid | Low grid | High grid | Low grid | |
Electricity is imported from the grid | 1.54 MWh | 1.54 MWh | 2.29 MWh | 2.29 MWh |
Electricity is exported to the grid | 4.02 MWh | 4.02 MWh | 21.5 kWh | 21.5 kWh |
Number of times the grid limit exceeded | 0 | 1 | 0 | 4 |
Average energy autarky | 50% | 41% | 1% | 0% |
Average self-consumption rate | 13% | 13% | 19% | 19% |
Table 18. Simulation results for the country side location (No HESS).
Metric | Summer | Winter | ||
High grid | Low grid | High grid | Low grid | |
Electricity is imported from the grid | 7.42 MWh | 7.42 MWh | 9.59 MWh | 9.59 MWh |
Electricity is exported to the grid | 2.59 MWh | 2.59 MWh | 11.93 kWh | 11.93 kWh |
Number of times the grid limit exceeded | 0 | 46 | 0 | 76 |
Average energy autarky | 39% | 39% | 1% | 1% |
Average self-consumption rate | 38% | 38% | 51% | 51% |
A typical reason for minor grid-limit violations is that the main BSS is still in charging mode when a sudden surge in load occurs. In these moments, the main battery must first reduce its charging power before it can begin increasing discharge power. Because its ramp rate is relatively modest (Table 5), this shift generally takes one to two minutes. Throughout that period, the grid and the support BSS must cover the power gap, which can cause the grid limit to be briefly exceeded depending on the demand size. One way to prevent this would be to raise the ramp rate of the main battery, increase the maximum power capability of the support battery, or enlarge the grid limit itself. Alternatively, issuing an advance control command to start ramping down the main battery earlier could also minimize such occurrences.
In contrast, major exceedances of the grid limit are typically triggered by brief but intense demand peaks lasting several minutes. Even when the entire HESS delivers its combined maximum output, the additional power required still surpasses the permitted grid threshold.
For every simulation in Group One, the Energy drawn from the grid corresponds roughly to the difference between Total Energy Consumption and PV energy generated. The Energy discharged to the grid remains negligible, differing by only a few kWh. This is consistent with the very high SC values, which reach or approach 100%. Results change noticeably when the HESS is removed. For instance, Total Energy Consumption in H-Summer-High-Grid without the HESS equals 17 MWh, resulting in more than 2 MWh being fed unused into the grid. This is also evident in the SC metric, which falls to an average of 51% — almost half the original value. The same trend appears across the other simulations. Looking at the energy flows into and out of each BSS shows that the batteries are mainly charged using surplus PV power and, in some situations, grid power, then later discharged to meet demand.
In addition, the main battery charges and discharges approximately twice as much energy as the support battery. This may result from the different roles assigned to each unit or simply from the fact that the main battery (RFB) has nearly twice the storage capacity of the support battery (Li-ion) (Table 5). Detailed examination of the Cycle Energy/Total BSS Capacity ratio in the H-Summer-High-Grid case supports the capacity explanation. The main battery records 483 charge cycles and charges an average of 2.75% of its total capacity per cycle, with each cycle lasting 39 min on average. By comparison, the support battery completes 1055 charge cycles, charges 1.62% of its capacity each time, and lasts 17 min on average. The gap narrows for discharge cycles: the main battery performs 841 discharge cycles, releasing 1.62% of its capacity over an average duration of 11 min, while the support battery carries out 1356 discharge cycles at 1.29% of capacity, each lasting 7 min on average. Overall, the main battery utilizes a larger share of its capacity per cycle and runs longer cycles, whereas the support battery experiences a much higher total number of cycles. This behavior matches the roles. A comparable pattern is found in the remaining Group One simulations. Taken together, these outcomes highlight the critical role of the HESS’s energy-buffering function in ensuring reliable EVCS operation at the simulated sites.
The two OC winter simulations represent a clear outlier. Their average charge-cycle duration is considerably longer than in other winter cases and their own summer runs. Charge cycles typically exceed one hour, operating at 41 kW and 17 kW respectively. Although the average and peak charge powers are high, the actual energy transferred per cycle stays relatively low. The review of the raw data explains why: these simulations feature low overall consumption interspersed with long idle periods (Table 8). In winter, PV generation is weak, so the HESS charges slowly from the panels. When demand occurs, the system is rarely fully charged and quickly enters the RED state, prompting fast recharging from the grid at high power. This creates two distinct populations of charge cycles — short, high-power ones and long, low-power ones. In OC-Winter-High-Grid, roughly half the cycles last about 11 min at an average power of 70 kW thanks to rapid grid charging. In contrast, the other half range from 30 minutes to nearly 7 hours, with average charge power below 300 W. This split behavior is absent in the other Group One simulations because consumption there is both higher and far more frequent.
Group Two is the smaller category. It includes both OC summer simulations, both NH summer simulations, and both D1 summer simulations. As anticipated, these runs exhibit higher Autarky levels and lower SC values than Group One. PV production is ample to cover all demand. Very little energy is drawn from the grid, and surplus PV output is mostly exported, reflected in Autarky figures near 100%. As a result, the grid limit is never exceeded in any Group Two simulation. This can partly be attributed to the load profiles used in these cases having lower peak power demands than those in Group One (Tables 7 and 8). When these simulations are repeated without a HESS, the value of the storage system for buffering both energy and power becomes evident. Without the HESS, OC-Summer-High-Grid draws more than 1.5 MWh from the grid while using only 752 kWh of PV energy. More than 80% of the generated PV energy is exported unused. The NH and D1 simulations show nearly identical results.
One well-known example of an existing controller is the “Balancing Controller” developed within the OpenEMS project. Its operating principle is to equalize power supply and demand using Eq. 14.
(14)
𝑃𝐸𝑆𝑆 and 𝑃𝑔𝑟𝑖𝑑 represent the instantaneous operating points of the ESS and the grid, respectively. The controller determines the required power as the exact amount the ESS must charge or discharge to bring the grid power to zero. It does not verify whether the ESS is physically capable of delivering 𝑃𝑟𝑒𝑞𝑢𝑖𝑟𝑒𝑑. Should this value exceed the ESS limits, the system operates at its maximum possible charge or discharge rate. Likewise, the controller ignores the ESS’s current SoC. Once the ESS is empty, it stops discharging; once fully charged, it stops charging. When applied to two separate ESS units, the controller divides 𝑃𝑟𝑒𝑞𝑢𝑖𝑟𝑒𝑑 equally between them. Any excess power that one unit cannot absorb or supply is not redirected and is therefore wasted. This method can work adequately when the two ESS units are identical or very similar in energy capacity, rated power, and ramp rates. However, when the two ESS units differ substantially, their combined resources and available power are often not utilized efficiently. A further limitation, particularly relevant for EV charging applications, is that the controller does not guarantee a minimum stored energy level and does not use the grid to recharge the batteries.
Compared with the “Balancing Controller” from OpenEMS, the controller developed in this work optimizes energy management across different storage technologies. It intelligently allocates power flows between the two batteries within the HESS, thereby improving overall system efficiency, lowering operating costs, and prolonging the service life of the storage components.
In conclusion, deploying the proposed system carries important practical implications for both operational performance and long-term sustainability. The main benefits and considerations are as follows:
• Increased energy reliability and stability: The developed controller improves the dependability of EV charging stations through effective balancing of supply and demand. It decreases reliance on the grid, lowers the risk of power disruptions, and ensures uninterrupted charging service.
• Optimized energy costs: By prioritizing PV generation and storing surplus energy, the controller reduces peak power charges and improves overall energy utilization. Time-of-use shifting further cuts operational expenses, rendering EV charging more economical for operators and customers alike.
• Enhanced grid integration: The Hybrid Controller smooths out power fluctuations, easing the burden on the grid during high-demand periods. This contributes to greater grid stability and facilitates wider adoption of renewable energy sources.
• Fast charging capabilities: The system supports high-power delivery for rapid charging, which enhances user satisfaction and shortens waiting times at charging stations.
• Reduced environmental impact: Combining PV generation with efficient hybrid storage lowers the carbon footprint of EV charging stations, supporting global sustainability targets and advancing cleaner mobility.
• Scalability and flexibility: The modular design allows the system to be expanded or adapted to different demand levels, making it appropriate for a wide variety of charging sites ranging from small city installations to major highway facilities.
• Initial investment and maintenance considerations: Although the HESS solution reduces long-term running costs, the upfront capital expenditure for hybrid storage systems can be substantial. Furthermore, maintaining multiple storage technologies demands qualified technicians and ongoing monitoring to sustain optimal performance and durability.
This study introduces a new algorithm, the Hybrid Controller, that optimizes power sharing within an HESS comprising an RFB and a Li-ion battery. The Hybrid Controller fully exploits the potential of the HESS by determining the precise charging and discharging power for each battery, prioritizing PV-generated energy for battery charging while simultaneously satisfying the load demand, and minimizing overall grid energy consumption. The proposed algorithm was implemented and thoroughly evaluated through simulations based on real-world data. In total, 24 scenarios were examined, covering six locations, summer and winter seasons, and low and high grid limits. Performance was assessed using Autarky and SC metrics.
The simulation outcomes reveal two primary findings. First, equipping EV charging stations with a HESS is essential to accommodate growing charging demand and to decrease grid power consumption by supplying the storage system with renewable energy. Second, PV-generated electricity plays a vital role in reducing the total energy drawn from the grid by delivering a clean, renewable power source. This contribution reduces reliance on grid electricity, lowers operational expenses, and reduces carbon emissions. When benchmarked against other sustainable charging options such as wind energy, PV generation offers greater predictability during daylight hours and simpler deployment in both urban and remote settings. Nevertheless, in certain high-traffic locations, such as highways, the PV power produced remains insufficient to meet load demand fully. Therefore, adopting a hybrid renewable strategy that integrates PV with additional sources such as wind or hydropower can improve reliability and achieve higher overall sustainability across varied conditions.
The results provide important insights into the behavior of the hybrid system’s controller, highlighting several critical aspects. They confirm the controller’s ability to effectively regulate the charging and discharging cycles of both the main and support batteries, thereby ensuring efficient energy use and avoiding problems such as overcharging or deep discharging. In addition, the findings show that the controller adapts well to a wide range of operating conditions, making it suitable for applications from small residential setups to large-scale grid stabilization.
Although OpenEMS-based simulations of the proposed system provide useful information, they also have limitations. Firstly, any simulation necessarily simplifies real-world dynamics, meaning that aspects such as weather changes, component aging, and sudden load variations may not be entirely represented. Secondly, the model assumes ideal system behavior and may therefore neglect practical inefficiencies or hardware inaccuracies. Finally, the accuracy of OpenEMS results depends heavily on the quality and resolution of the input data, including PV generation profiles and load demand patterns, which do not always match actual field conditions.
Future research could usefully investigate methods for predicting the optimal charging times for HESS, with the dual goals of maximizing renewable energy utilization and reducing costs.
HESS | Hybrid Energy Storage System |
BSS | Battery Storage System |
BSS | Battery Storage Systems |
SoC | State of Charge |
PV | Photovoltaic |
RE | Renewable Energy |
RES | Renewable Energy Source |
EMS | Energy Management System |
OpenEMS | Open Source Energy Management System |
EVCS | Electric Vehicle Charging Station |
RFB | Redox Flow Battery |
SC | Self-Consumption |
ESS | Energy Storage System |
Li-ion | Lithium-ion |
GHG | greenhouse gas |
EV | Electric Vehicle |
CS | Charging Station |
CCS | Combined Charging System |
We want to express our sincere gratitude to Jasper Herting for his valuable assistance in the writing and editing of this manuscript.
None
This research is funded by the German Federal Ministry for Digital and Transport with the Project OMEI (Open Mobility Elektro-Infrastruktur FK: 45KI10A011).
None
Open Access The author(s) retain copyright. This article is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. It may be shared and adapted for non-commercial purposes with appropriate attribution, an indication of changes, and distribution of adaptations under the same license. Third-party material may be subject to separate terms identified in its credit line. View the license at https://creativecommons.org/licenses/by-nc-sa/4.0/.