Next Article in Journal
A Coffee-Based Bioadsorbent for CO2 Capture from Flue Gas Using VSA: TG-Vacuum Tests
Previous Article in Journal
The Brain Behind the Grid: A Comprehensive Review on Advanced Control Strategies for Smart Energy Management Systems
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

A Discrete-Event Based Power Management System Framework for AC Microgrids

by
Paolo C. Erazo Huera
1,
Thamiris B. de Paula
2,
João M. T. do Amaral
1,
Thiago M. Tuxi
3,*,
Gustavo S. Viana
1,2,*,
Emanuel L. van Emmerik
1 and
Robson F. S. Dias
1,2,*
1
Electrical Engineering Program, COPPE/UFRJ, Federal University of Rio de Janeiro, Rio de Janeiro 21941-617, RJ, Brazil
2
Electrical Engineering Program, Poli/UFRJ, Federal University of Rio de Janeiro, Rio de Janeiro 21941-617, RJ, Brazil
3
Control and Automation Engineering Program, CEFET/RJ, Federal Center of Technological Education, Rio de Janeiro 20271-004, RJ, Brazil
*
Authors to whom correspondence should be addressed.
Energies 2025, 18(15), 3964; https://doi.org/10.3390/en18153964
Submission received: 29 April 2025 / Revised: 20 June 2025 / Accepted: 24 June 2025 / Published: 24 July 2025

Abstract

This paper presents a practical framework for the design and real-time implementation of a Power Management System (PMS) for microgrids based on Supervisory Control Theory (SCT) for discrete-event systems. A detailed step-by-step methodology is provided, which covers the entire process from defining discrete events, modeling microgrid components, synthesizing supervisory controllers, and realizing them in MATLAB (R2024b) Stateflow. This methodology is applied to a case study, where a decentralized supervisor controller is designed for a microgrid containing a Battery Energy Storage System (BESS), a generator set (Genset), a wind and a solar generation system, critical loads, and noncritical loads. Unlike previous works based on SCT, the proposed PMS addresses the following functionalities: ( i ) grid-connected and islanded operation; ( i i ) peak shaving; ( i i i ) voltage support; ( i v ) load shedding. Finally, a CHIL testing is employed to validate the synthesized SCT-based PMS.

1. Introduction

As energy consumption continues to grow and the energy matrix undergoes transformations, there is an increasing need for ways to integrate and control renewable energy sources [1]. Microgrids, which consist of interconnected distributed energy resources (DERs) such as photovoltaic (PV) systems, wind turbines, and Battery Energy Storage Systems (BESS), have emerged as a key solution for ensuring energy resilience, particularly in isolated or critical infrastructures [2,3]. However, the variable nature and complex interactions among DERs result in significant challenges for microgrid control, particularly in maintaining voltage and frequency stability and optimizing energy use [4].
Control functions in microgrids are typically divided into two complementary layers: energy management [5,6,7,8] and power management [9,10,11]. The Energy Management System (EMS) operates at a higher level and focuses on long-term planning tasks, such as minimizing operational costs or energy losses through optimization techniques, including Mixed Integer Linear Programming [12], Model Predictive Control [13,14], or heuristic-based economic algorithms [15]. In contrast, the Power Management System (PMS) operates on shorter timescales and is primarily concerned with maintaining system stability, ensuring adequate voltage and frequency levels and allowing for safe transitions between operational states [9,10,11].
PMS are categorized in two main paradigms: Continuous Power Management Systems (CPMS) [16,17] and Discrete-Event Power Management Systems (DPMS) [18,19,20,21,22,23]. CPMS are primarily designed to regulate the dynamic behavior of voltage and frequency under standard operating conditions. However, in the presence of discrete events that alter the operating mode of the system, such as critical state of charge (SOC) thresholds or abrupt disconnections, CPMS may be inadequate since they are not inherently structured to handle state transitions [9,10]. To overcome this limitation, DPMS are applied to define decision-making sequences activated by event-driven conditions, ensuring that technical constraints and system logic are systematically enforced during microgrid operation [24].
In order to model a DPMS, various approaches have been proposed in the literature [18,19,22,23,25,26]. In [18], rule sets (“ i f t h e n ” commands) are used to operate distributed energy resources such as storage and generation units, as well as loads in islanded microgrids. In [19,25], discrete-event approaches based on Finite State Machines (FSM) are presented to coordinate a PMS in a hybrid-source islanded microgrid and to implement a centralized control for a DC microgrid, respectively. In [26], a flowchart is proposed to manage the SOC of a BESS. In [22,23], Petri nets are used to model a PMS for DC microgrids. In both works, the entire microgrid, including all components and transitions, is modeled using a single Petri net structure, which may limit modularity and scalability. Although the aforementioned approaches are straightforward to implement and intuitive for small-scale systems, they suffer from critical limitations. Specifically, rule sets, Petri net-based DPMS, and FSM-based DPMS do not guarantee nonblocking behavior, are prone to deadlocks, and become increasingly difficult to scale as the microgrid architecture grows in complexity. They typically lack formal mathematical rigor in how control objectives are defined and enforced. Although there are tools available to check the logical consistency [27], they do not support systematic synthesis. Consequently, heuristic designs often face scalability limitations and offer no guarantees of handling the full range of discrete-event scenarios that may arise in practical applications. Furthermore, most DPMS implementations rely on empirical testing to validate correctness, which limits their reliability when transitioning to real-world operational environments [21].
Supervisory Control Theory (SCT), originally developed by Ramadge and Wonham in the 1980s [28], offers a formal framework for the synthesis of discrete-event controllers that are correct-by-construction [29,30]. SCT guarantees properties such as nonblocking behavior, safety, and strict adherence to system specifications, providing significant advantages over heuristic or rule-based approaches. In [31], SCT is applied to a custom power park (CPP) to manage power quality devices. Although the work employs formal synthesis and MATLAB Stateflow simulation, it focuses only on static fault-based switching and does not address broader operational specifications such as SOC management, peak shaving, or multi-mode operation. In addition, no real-time validation or practical guide is performed. In [32], SCT is used for HVDC transmission systems, which focus on the start-up procedure of point-to-point links using modular multilevel converters. However, the scope is limited to a predefined start-up sequence and does not cover broader operational scenarios common in microgrids. Validation in real-time environments is not proposed in [32]. In [33,34], the authors apply SCT to manage battery-enhanced DC Fast-Charging (DCFC) stations, focusing on power dispatch, SOC protection, and seamless transition to autonomous operation. Although these works present real-time validated solutions, their scope is restricted to the specific architecture of DCFC stations without addressing broader microgrid functionalities. In addition, a practical guide is not provided.
Despite some existing applications of SCT in power systems, its adoption in microgrid power management remains limited. The work of Ghasaei et al. (2021) [21] introduced a discrete event supervisory control system for islanded microgrids, demonstrating the application of SCT to ensure logically optimized nonblocking supervisory control. Although this approach represents an important step in applying SCT to PMS, it is limited to island mode operation and does not address critical functionalities such as voltage support, peak shaving, and transitions between grid-connected and islanded modes. In addition, the microgrid presented in [21] does not include wind power generation. Finally, no clear step-by-step methodology is provided for the implementation of SCT-based PMS.
This paper proposes an improved Power Management System (PMS) for microgrids based on Supervisory Control Theory (SCT) for discrete-event systems. Firstly, a step-by-step methodology is provided, covering the entire process from defining discrete events, modeling microgrid components, synthesizing decentralized supervisory controllers, and realizing the proposed PMS in MATLAB Stateflow. Secondly, this framework is applied to the following case study: a microgrid containing a BESS, a Genset, a wind and solar system, critical loads, and noncritical loads. The proposed PMS provides SOC management, grid-connected and islanded operation, peak shaving, voltage support, and load shedding. Finally, CHIL testing is used to validate the proposed methodology.
The novelty of this paper is summarized as follows:
  • Step-by-step implementation guide: a detailed step-by-step methodology is provided, which defines discrete events, microgrid component models, supervisory controller synthesis, and its realization in MATLAB Stateflow. This practical guide ensures that researchers and practitioners can replicate and adapt the proposed methodology to their specific microgrid configurations.
  • Development of an improved PMS based on SCT with the following new functionalities: (i) grid-connected and islanded operation; (ii) peak shaving; (iii) voltage support; (iv) load shedding function.
  • Integration of two types of renewable energy resources: a PV and a Wind power Plant operating simultaneously, controlled by an SCT-based PMS.
Table 1 presents a comparison of different DPMS methodologies reported in the literature, including the approach proposed in this work. To the best of the author’s knowledge, this is the first work that proposes the application of SCT to microgrids with multi-mode operation, providing scalable solutions and performing experimental validation while providing a step-by-step implementation guide.
The remainder of this paper is structured as follows. Section 2 introduces the fundamentals of DES and Supervisory Control Theory (SCT). Section 3 details the PMS framework and its application to AC microgrids, including modeling of DERs and control specifications. Section 4 details the CHIL experimental setup and presents the validation results that demonstrate the effectiveness of the proposed PMS in real-time operation. Section 5 concludes the paper with a discussion of practical implications and future directions.

2. Supervisory Control Theory for Discrete Event Systems

In this paper, the methodology utilized in the proposed Power Management System is based on Supervisory Control Theory [30]. In the SCT framework, each component of the plant is modeled by automata, thereby avoiding the need to explicitly model the total behavior of the plant. The required system behavior is also modeled by automata, called specifications, which express the desired and/or forbidden sequences of events of the plant. With the system component models and the system specifications, SCT can synthesize a supervisor that will guarantee that plant behavior will not violate the required system behavior. In the context of microgrids, plant components can be PV systems, WTG systems, BESS, and other components. The required system behavior may be related to BESS SOC, voltage and frequency regulation, power exportation to the main grid, etc.

2.1. Background of Discrete-Event Systems

A Discrete-Event System is an event-driven system characterized by discrete states, where transitions between states occur in response to discrete asynchronous events over time [29]. In DES, events are associated with symbols in an alphabet Σ . Σ * denotes the set of all finite-length sequences of events formed by the juxtaposition and concatenation of symbols in Σ , plus the empty trace ε . Given traces s , t Σ * , s is said to be a prefix of t, denoted s t , if there exists a trace u Σ * such that s u = t . The dynamics of DES can be described through languages. A language over the alphabet Σ is defined as any subset of Σ * . The prefix closure of a language L Σ * is represented by L ¯ = { s Σ * : ( t L ) s t } . A language L is considered prefix-closed if it satisfies L = L ¯ .
A compact way to describe languages is by using automata. An automaton is a six-tuple G = ( X , Σ , δ , Γ , x 0 , X m ) , where Σ is the alphabet, X is the set of states, δ : X × Σ X is the transition function, Γ ( x ) = { σ Σ : δ ( x , σ ) ! } is the set of all events defined in state x, x 0 X is the initial state and X m X is the set of marked states. δ ( x , σ ) ! is used if a transition is defined for a state x and an event σ Σ . The transition function can be extended to the sequence of events in Σ * [29]. A pair of languages are associated with an automaton, the generated language L ( G ) = { s Σ * : δ ( x 0 , s ) ! } and the marked language L m ( G ) = { s Σ * : δ ( x , s ) X m } . The automaton is said to be nonblocking when L ( G ) = L m ( G ) ¯ . The accessible part of automaton G is given by A c ( G ) = ( X a c , Σ , δ a c , x 0 , X a c , m ) , where X a c = { x X : ( s Σ * ) [ δ ( x 0 , s ) = x ] } , X a c , m = X m X a c and δ a c : X a c × Σ X a c . In words, the accessible part operation removes all the states and transitions of the automaton G, which are not reachable from the initial state x 0 .
Let G 1 = ( X 1 , Σ 1 , δ 1 , Γ 1 , x 0 1 , X m 1 ) and G 2 = ( X 2 , Σ 2 , δ 2 , Γ 2 , x 0 2 , X m 2 ) be two automata, the parallel composition between G 1 and G 2 , as defined in [29], will be denoted as G 1 G 2 = A c ( X 1 × X 2 , Σ 1 Σ 2 , δ 1 2 , ( x 0 1 , x 0 2 ) , X m 1 × X m 2 ) , where δ 1 2 ( ( x 1 , x 2 ) , σ ) = ( δ 1 ( x 1 , σ ) , δ 2 ( x 2 , σ ) ) , if σ Γ 1 ( x 1 ) Γ 2 ( x 2 ) , δ 1 2 ( ( x 1 , x 2 ) , σ ) = ( δ 1 ( x 1 , σ ) , x 2 ) , if σ Γ 1 ( x 1 ) \ Σ 2 , δ 1 2 ( ( x 1 , x 2 ) , σ ) = ( x 1 , δ 2 ( x 2 , σ ) ) , if σ Γ 2 ( x 2 ) \ Σ 1 , and undefined otherwise. In other words, parallel composition synchronizes shared events between automata while allowing private events to proceed asynchronously, forming a combined system.

2.2. Supervisory Control Theory of DES

In classical control theory, a variety of control techniques can be used to synthesize controllers to regulate physical systems. Analogously, for DES, there exist control techniques that facilitate the synthesis of controllers to govern the behavior of DES. One of these techniques is SCT, which allows the synthesis of a control that possesses two principal attributes: (i) nonblocking, which means that the system will always be able to perform desired tasks; (ii) minimally restrictive plant behavior, which allows the system to meet desired control specifications with minimal impact on its inherent operation [30].
SCT considers a feedback control system that, through the action of a supervisor S : L ( G ) 2 Σ , observes the sequence of events s generated by the plant G and enables or disables events of G to have a closed-loop behavior that satisfies the control specifications, as shown in Figure 1.
The generated language of plant G, L ( G ) , represents the uncontrolled behavior of a DES. In addition, the plant is considered autonomous, generating its events spontaneously from Σ . Σ can be partitioned into two disjoint subsets: (i) set of controllable events, Σ c , events that can be disabled or avoided to occur, for example, a command to turn on a motor or to reduce the power generated by a photovoltaic unit; (ii) set of uncontrollable events, Σ u c , events that cannot be disabled, e.g., alarms generated by the plant, sensor feedback signals such as SOC level, voltage levels, etc. Generally, instead of directly modeling the behavior of the whole plant, which can be complex, each component of the plant G 1 , G 2 , , G n is modeled and composed to generate the model of the plant G = G 1 G 2 G n .
A language K L ( G ) is controllable when K ¯ Σ u c L ( G ) K ¯ . If K is not controllable, then the maximum controllable language sup C ( K ) K is used [30]. Generally, K = G E is called the target language and models the behavior of the plant that satisfies the specifications E = E 1 E n such that E 1 , , E n represent the desired behavior of the plant.
Formally, given a plant G, a target language K and a supervisor S, the language of the closed-loop system is L ( S / G ) = sup C ( K ) . In essence, the supervisor only restricts some behavior of the plant, without creating new ones. The marked language of the closed-loop system is given by L m ( S / G ) = M L m ( G ) , where M L m ( G ) denotes the marking indicated by the supervisor. A supervisor is nonblocking when L m ( S / G ) ¯ = L ( S / G ) .
A supervisor S can be realized by an automaton Z if L ( Z G ) = L ( S / G ) and L m ( Z G ) = L m ( S / G ) . In a nutshell, automata Z (From now on, we call Z the automaton representation of a supervisor S.) can be used as a supervisor if the closed-loop behavior S / G can be described by the synchronous composition Z G .
Typically, rather than directly implementing the automata realization of the supervisor S, its reduced form Z R is used. In this context, Z R represents the reduced automaton realization of supervisor S, formally Z = G Z R holds true [35].

2.3. Decentralized Supervisory Control

In supervisory control theory, the choice of control architecture is fundamental to the system’s performance, scalability, and reliability [29]. In Section 2.2, SCT is defined for centralized control as shown in Figure 1. However, this architecture is often impractical for larger or more complex systems due to significant drawbacks, such as scalability issues. As the system size increases, a centralized supervisor becomes computationally burdensome and difficult to manage.
In contrast, a decentralized control architecture distributes supervisory tasks among multiple local supervisors, each of which is responsible for a subset of events and states within a specific subsystem. These local supervisors operate in parallel, independently monitoring their designated parts of the system and making localized control decisions. In order to avoid the drawback of computing target language K, nonblocking supervisors S 1 and S 2 can be synthesized such that L m ( S 1 / G ) = K 1 and L m ( S 2 / G ) = K 2 , and thus build the decentralized control architecture where supervisor S 1 S 2 is obtained by computing the conjunction of S 1 and S 2 , i.e., for all s L ( G ) , S 1 S 2 ( s ) = S 1 ( s ) S 2 ( s ) , as shown in Figure 2. As a consequence, L m ( S 1 S 2 / G ) = K 1 K 2 . Moreover, supervisor S 1 S 2 is nonblocking if and only if languages K 1 and K 2 are nonconflicting, i.e., K 1 ¯ K 2 ¯ = K 1 K 2 ¯ . For simplicity, a decentralized supervisory control with two agents is shown in Figure 2, although as many supervisors as necessary can be used.
The main advantage is that it significantly enhances scalability, as each local supervisor manages only a smaller, manageable part of the system, making it easier to expand control as the main system grows. In addition, this setup minimizes the volume of data exchange, allowing faster response times and greater efficiency, especially in geographically distributed systems. The realization of a reduced supervisor S i R within a decentralized framework is feasible, in which each associated decentralized reduced supervisor Z i R can be computed from supervisor Z i and the plant G [35].

3. A Framework for PMS Design Based on Supervisory Control Theory

In this section, a framework for the design of a Power Management System utilizing SCT is presented. The main reasons for using SCT are as follows: (i) correctness, whereby the synthesized PMS is validated by design, ensuring accuracy and eliminating the risk of errors during logic programming; (ii) flexibility, as the synthesis of the PMS allows for seamless modifications in existing functionalities or the integration of new functionalities with minimal effort, merely requiring a reiteration of the synthesis process; (iii) scalability, as this framework facilitates computation for microgrids with varying numbers of Distributed Energy Resources (DERs), thereby enabling the generation of a PMS that is inherently more scalable. In essence, the proposed methodology for PMS design using SCT consists of five steps:
(i)
Define events for PMS modeling;
(ii)
Model microgrid components;
(iii)
Model microgrid requirements;
(iv)
Synthesis of PMS decentralized supervisors;
(v)
PMS supervisor realization in MATLAB Stateflow.
In the following subsections, each step will be explained in more detail.

3.1. Define Events for PMS Modeling

The first step of the proposed methodology involves defining the necessary commands and feedback signals for the PMS, effectively establishing the plant alphabet Σ . Commands such as opening/closing breakers, turning on/off generators, and switching to Maximum Power Point Tracking (MPPT) or Curtailment modes are represented as controllable events Σ c . Feedback signals, including SOC, voltage, frequency, and active/reactive power levels, are typically continuous variables that, for the purposes of SCT, must be discretized into categories such as Normal (N), Low (L), High (H), Low Low (LL) and High High (HH), and are thereby abstracted as uncontrollable events. An example of such conversion is shown in Figure 3. The commands generate transitions in the operating modes of the internal PMS controllers to generate setpoints for plant DERs.

3.2. Model Microgrid Components

The second step of the methodology is to model the n plant components (DERs) as automata G i . Each operational mode is described as a state within the automaton that represents the DER. For example, the behavior of a BESS can be abstracted into operational modes corresponding to three distinct states: (i) Standby; (ii) Charging; (iii) Discharging as shown in Figure 4. Consider BESS starting in the Standby state. If an event S t a r t D i s c h a r g e occurs, the system reaches the Discharging state. If the BESS discharging is stopped (event S t o p D i s c h a r g e ), then the system goes back to Standby mode, and so on. Marked states represent desired states in the model; for the case of BESS, it is desired that the BESS can always return to standby mode. Finally, all the n components G i are composed using the synchronous composition, creating the model behavior of the plant G = G 1 G n .

3.3. Model Microgrid Requirements

The third step of the methodology involves translating a set of n requirements into formal specifications represented as automata. These specifications E 1 , , E n define the allowed behavior of the system. For example, the permissible behavior of the BESS includes the following: (i) charge mode can be reached only when the SOC is below threshold H; (ii) discharge mode can be reached only when the SOC exceeds threshold L. Figure 5 shows an automaton that models the specification related to the charging of BESS, considering the aforementioned events.

3.4. Synthesis of PMS Decentralized Supervisors

The fourth step of the methodology involves the computation of the target languages K i = G E i , i = 1 , , n , along with the synthesis of the associated supervisors S i . As discussed in Section 2, the target language K i delineates the desired closed-loop behavior of the system that a supervisor S i may impose on the system. For example, suppose that the following services are offered: ( i ) SOC coordination; ( i i ) voltage support; ( i i i )  peak shaving. Thus, three decentralized supervisors should be synthesized: Z 1 , Z 2 , and Z 3 . Then, a nonconflicting test has to be performed [30] to guarantee that all decentralized supervisors work correctly together. If they are nonconflicting, they can be applied to coordinate the system. Otherwise, a combination of one or more services should be tried. The final step is to compute the reduced decentralized supervisors Z i R [35].

3.5. PMS Supervisors Realization in MATLAB Stateflow

The final step of the methodology involves the creation of reduced decentralized supervisors Z i R , which are computed in the last step as state machines in MATLAB Stateflow. To this end, we consider as a hypothesis that uncontrollable events Σ u c have priority over controllable events Σ c .
Taking into account this hypothesis, the following procedure is presented to describe the construction process of the decentralized supervisor Z i R as a MATLAB Stateflow machine.
  • For each state x X of the reduced decentralized supervisor Z i R , a corresponding state state_x must be defined in a Stateflow state machine;
  • Define the initial state state_ x 0 in Stateflow state machine;
  • For each event σ Σ , if σ Σ u c define in MATLAB Stateflow an input variable u σ ; otherwise, define e v σ c and x σ c as input and output variables in MATLAB Stateflow, respectively.
  • For each state x 1 X , uncontrollable event σ u c Σ u c and state x 2 = δ ( x 1 , σ u c ) , define the transition state_ x 1   u σ u c = = 1  state_ x 2 ;
  • For each state x 1 X , controllable event σ c Σ c and and state x 2 = δ ( x 1 , σ c ) , define the transition state_ x 1   e v σ c = = 1  state_ x 2 ;
  • Let s L ( S i R / G ) , G be the plant model, x G a state of G and X S the set of states of Z i R . For each state x S = δ ( x 0 , s ) X S of the supervisor, the output of the state machine is defined as follows. Define x σ c = 1 for all σ c Γ ( x G ) S ( s ) ; x σ c = 0 for all events σ c Σ \ S ( x s ) Γ ( x G ) disabled by supervisor Z i R in state x, otherwise x σ c = x σ c (keeping the last value of the variable x σ c ).
Here, the output variables x σ with σ Σ are defined. These variables represent commands that will be issued by the PMS. The input variables u σ are associated with uncontrollable events. It is worth remarking that since MATLAB Stateflow machines have priorities in their transitions, as a hypothesis, uncontrollable events have priority over controllable ones. Therefore, transitions with uncontrollable events are defined in Step 4 (resp., controllable events in Step 5).
Figure 6 shows the implementation of supervisor Z i R in MATLAB Stateflow for plant G of Figure 4 and BESS specification of Figure 5. In Table 2, we show the disable events of supervisor S i R , which are used in Step 6 of the supervisor implementation procedure in MATLAB Stateflow.

4. Framework Application Case Study

In this section, the framework proposed in Section 3 is applied to design a PMS in a case study to validate its simplicity and effectiveness. First, the power plant topology of the case study is described, which is managed by the designed PMS. After that, each DER is discussed with respect to its modeling and functionalities. Then the requirements of the system are discussed and modeled as specifications. Finally, the PMS supervisors are synthesized.

4.1. Case Study Description

Figure 7 shows an AC microgrid used as the case study. In this work, the power sources are composed of a BESS, a Genset, and a wind and solar system, all connected at the Point Of Interconnection (POI). There is one critical load that cannot be disconnected, and another noncritical load connected to breaker 6 (BRK 6) that is applicable for load shedding in case of an emergency. The microgrid operates either in grid-connected or islanded mode. Table A2 in Appendix A summarizes the nominal apparent and active power of the sources and loads used in the development of the PMS for this specific microgrid; other values can be used accordingly.
As shown in Figure 7, the PMS operates in a secondary layer, sending control commands to each source to guarantee harmonious operation between the different sources and ensure reliability in supplying the connected loads. As a simplifying hypothesis, it is assumed that the PMS operates without fault scenarios and communication issues such as data package loss. The PMS receives measurements from the microgrid, such as grid power, P g r i d , shown in Figure 7, the RMS voltage at POI, and the SOC of the BESS. Based on SCT, the supervisors are synthesized and are responsible for observing the sequence of events in the plant and responding by sending commands to each source via their local controllers. Each local controller adjusts its operating mode according to these commands. The local controllers (LCs) are described next.

4.2. Local Controllers, Breaker and Measurement Description

A brief description of each DER controller and the events considered in the proposed PMS framework is provided. In addition to that, all the PMS events received by the LCs of each source, as well as the command to enable the BRK6 circuit breaker and the peak shaving commands, are summarized in Table 3.

4.2.1. PV System

The PV system model consists of a two-stage converter with a DC/DC boost converter [36], which is responsible for implementing the MPPT and curtailment algorithm, and a three-phase inverter to supply power to the grid, as shown in Figure 8. Inverter control is carried out in the dq reference frame [37], using two loops: an internal loop responsible for controlling the current injected into the grid and an external loop that controls the DC bus voltage.
The PV system can operate in two different modes: In normal operation, the converter works in MPPT by varying the duty cycle to generate the required voltage to extract maximum power from the PV system; the other mode is curtailment mode. In the event that the POI frequency is above normal operating conditions, it must inject less power to maintain the frequency balance [38]. The local controller of the PV system receives operational commands from the PMS to ensure grid stability and optimal power balance.
According to the first step of the methodology presented in Section 3, two events are defined for the P V system: ( i )   S t a r t P V c u r t a i l m e n t , which takes the PV system to the curtailment mode; ( i i )   S t a r t P V M P P T , which takes the PV system to MPPT mode.

4.2.2. BESS Model

The BESS contains a battery, a small DC capacitor to protect the battery against high DC voltage spikes, a Voltage Source Converter (VSC), RLC filter, a three-phase breaker, and voltage and current sensors, as shown in Figure 9. The BESS has three main operation modes: charging, discharging, and standby. The local control of the BESS is based on the Synchronverter control [39,40,41] and can form the grid, acting as a voltage reference, in the absence of the Genset. The BESS is capable of switching seamlessly between the charging and discharging modes. Therefore, a BESS can be considered as a load or source, thus being the only device that can receive power reference signals from the PMS for all four quadrants, since the PV and WT systems and the Genset do not absorb active power from the microgrid in steady state.
In addition to the active power drooping by frequency, the voltage reference is drooped by reactive power. However, there are two other reactive power modes available. These are voltage control without droop and reactive power control. Anyway, priority is given to the active power reference above the reactive power control.
The BESS contains a secondary frequency controller, since the BESS is normally connected to the microgrid. The output of this controller can be passed to the PMS, which can distribute this signal to other frequency drooped sources. In addition to this signal, the SOC value and its breaker status can also be sent to the PMS. In this paper, the SOC is used for the PMS framework. BESS can receive from the PMS the operation mode, reference values for reactive and active power, voltage, if it should operate in grid-forming, a command to open the breaker, command to synchronize the entire microgrid with the grid, grid voltage values, grid breaker status, and a secondary reference signal, in case this BESS has disabled the internal secondary frequency controller.
According to the first step of the methodology presented in Section 3, the defined events for the operation model of B E S S are as follows: ( i )   S t a r t B E S S c h a r g i n g , which takes the BESS to the charging mode; ( i i )   S t a r t B E S S d i s c h a r g i n g , which takes the BESS to the discharging mode; ( i i i )   S t o p B E S S c h a r g i n g ; ( i v )   S t o p B E S S d i s c h a r g i n g , where both events take the BESS to the standby mode.

4.2.3. Genset

The physical circuit of the Genset contains a synchronous machine model, an excitation circuit, turbine dynamics, an inertial (mechanical) model, brake resistors, a three-phase breaker, and voltage and current sensors, as shown in Figure 10. Control consists of a synchronization algorithm for synchronization of the Genset with the microgrid and an algorithm for the Genset to synchronize the entire microgrid with the utility grid, besides a speed reference generator, an Automatic Voltage Regulator (AVR), an optionally enabled secondary frequency controller (in case this one is disabled at BESS), fuel tank model and an algorithm to command the chopper. The governor dynamics contain power/frequency droop. The voltage is drooped with the inserted reactive power, measured at the generator terminals ( v a b c ).
The PMS sends commands to the Genset to operate in nominal or standby mode. These commands determine whether the Genset should inject nominal active power defined as the event S t a r t G e n s e t N o m i n a l , or switch to provide minimal power defined as the event S t a r t G e n s e t S t a n d b y .

4.2.4. Wind Turbine System

The Wind Turbine (WT) model is based on a simplified Type-4 WT [42], employing a VSC and a current source, as shown in Figure 11. The power circuit contains a VSC converter with an LC filter responsible for injecting power into the grid. In the DC stage, there is a capacitor C D C with high susceptance, and, therefore, a current source can be used to represent the wind turbine, electrical generator, and rectifier. The reference current is calculated with a generic power curve that has as input a wind speed signal, and the maximum power for that wind speed is calculated, thus enabling the MPPT operation.
For the VSC, the controller design follows the same procedure as the PV system, controlling v d c through a cascaded structure performed in the dq-frame. An inner loop controls the AC current, and consequently, the active and reactive powers. For the active power loop, an outer loop is responsible for controlling the DC-link voltage, which injects all the power received from the primary energy source, and for the reactive power loop, the model presents two types of outer loops. For normal operation, the converter can control its output Reactive Power, whereas the reference can be sent by the PMS. If requested, the PMS sends a command to switch the operation to voltage-droop mode, event S t a r t W T S u p p o r t , where the reactive power will change according to the voltage amplitude in the output of the LC filter. In normal operation, the WT operates with Constant Power Factor, event S t a r t W T C P F .

4.2.5. Noncritical Load Breaker

To maintain stability in the system and prevent blackouts during periods of high demand or low supply, the PMS must disconnect nonessential loads in isolated mode. This helps to reduce overall power demand and prevent overloading. The breaker (BRK6 in Figure 7) that disconnects nonessential loads is modeled with two states and two events. Here, state 1 is a noncritical load connected, and state 2 is a load disconnected.

4.2.6. SOC, Power and Voltage Measurements

The relevant measurements of the plant for the PMS are the battery SOC, the active power of the grid, and the voltage at the POI, which are continuous variables. The SOC and POI voltage values are discretized into four categories: Normal (N); Low (L); High (H); Low Low (LL). The grid power is discretized into three categories: N, L, and H. The associated events are in the form of M D where the letter M is the variable being measured, and D is the category in which the measure falls. For example, S O C L is an event, where M is the SOC measurement and D is the category Low, which means a low SOC level measurement. All measurement events are detailed in Table 4.
It is worth noting that the number of categories has been chosen as four or three categories; however, in case of necessity, more categories can be created depending on the control objectives or the plant.
Table 3. Description of the DERs automata model and peak shaving activation command shown in Figure 12.
Table 3. Description of the DERs automata model and peak shaving activation command shown in Figure 12.
ModelStateEventsDescription
G1: PV1: MPPT
2: Curtailment
X: S t a r t P V c u r t a i l m e n t
Y: S t a r t P V M P P T
The PV system can operate in MPPT mode (state 1) or in curtailment mode
(state 2). The events are enabled or disabled by the supervisors, depending on
the operation of the system.
G2: BESS Operation1: BESS Standby
2: BESS Charging
3: BESS Discharging
U: S t a r t B E S S c h a r g i n g
W1: S t o p B E S S c h a r g i n g
V: S t a r t B E S S d i s c h a r g i n g
W2: S t o p B E S S d i s c h a r g i n g
Operation mode of BESS is represented by a three-state automaton with four
events. The BESS operating model is designed for taking into account
charging, discharging and standby mode without power injection.
G3: Genset1: Genset at standby mode
2: Genset at nominal mode
X: S t a r t G e n s e t n o m i n a l
Y: S t a r t G e n s e t s t a n d b y
The Genset is modeled with two states and two events. Event
S t a r t G e n s e t n o m i n a l represents the injection of its nominal ative
power considering a power factor of 0.85 , while event S t a r t G e n s e t s t a n d b y
indicates that the generator have to inject its minimum power,
depending on the voltage and frequency of the grid.
G4: WT1: WT at Constant Power Factor
2: WT at Support voltage
X: S t a r t W T S u p p o r t
Y: S t a r t W T C P F
The WT system can operate as a P-Q bus (state 1) working in the
MPPT control, and as a P | V | providing voltage support function (state 2).
G5: Noncritical load Breaker1: Load connected
2:Load disconnected
X: S t a r t L o a d c o n n e c t e d
Y: S t a r t L o a d d i s c o n n e c t e d
The breaker that disconnects nonessential loads is modeled with two states
and two events. Where state 1 is noncritical load connected and state 2
load disconnected.
G6: Peak shaving command1: Disable Peak Shaving
2: Enable Peak Shaving
X: E n a b l e P e a k s h a v i n g
Y: D i s a b l e P e a k s h a v i n g
The peak shaving mode is activated or deactivated by command, to do
this, it is modeled with two states and two events.
Table 4. Description of the measurements of the microgrid in automata presented in Figure 13.
Table 4. Description of the measurements of the microgrid in automata presented in Figure 13.
ModelStateEventsDescription
G7: BMS1: S O C L < SOC < S O C H
2: SOC > S O C H
3: S O C L L < SOC < S O C L
4: SOC < S O C L L
X1,X2,X3: Initialization of BMS
U: S O C H
V: S O C N
W: S O C L
Y: S O C L L
Monitoring the maximum and minimum SOC of the BESS: When the SOC is above
S O C H , the PV goes into curtailment mode and when the SOC returns below S O C H ,
the PV returns into MPPT mode. If SOC is below S O C L , the noncritical load is
disconnected. When the SOC drops below S O C L L , the Genset must inject its
nominal power.
G8: Pgrid1: P g r i d L < P g r i d < P g r i d H
2: P g r i d P g r i d H
3: P g r i d P g r i d L
X1,X2: Initialization of Pgrid
U: P g r i d H
V: P g r i d N
W: P g r i d L
Monitoring the grid’s active power: The grid’s power must not exceed the contracted
value. If P g r i d > P g r i d H , the BESS goes into discharge mode. If P g r i d < P g r i d L ,
the BESS goes into charging mode. Otherwise, BESS is in stamdby mode.
G9: Vrms1: V r m s >   V L
2: V L L <   V r m s   < V L
3: V r m s < V L L
X 1 , X 2 : Initialization of V R M S
U: V H
V: V N
W: V L
V: V L L
Monitoring the POI’s RMS voltage: The voltage must not drop below V L L , as
required by the grid code. To ensure this, the WT and genset provide voltage support.
When the voltage (Vrms) at the POI is above V L , the WT remains in constant power
factor mode. If the voltage drops below V L , the WT switches to voltage support mode.
If the voltage drop persists, the Genset also comes into operation to provide additional
voltage support.

4.3. Discrete Event System Plant Modeling

As detailed in Section 3, the subsequent phase of the proposed framework involves modeling the relevant components of the plant, specifically those elements capable of influencing plant behavior, while taking into account the events delineated in the initial step of the methodology.
The automaton model of some DERs follows a pattern, where for each command σ c Σ c , the DER goes to a specific operation mode. Some DERs, such as PV, Genset, WT, breakers, and the peak shaving activation commands, follow a template of an automaton with two states and two events. A generic automaton model of this template is illustrated in Figure 12a. The generic events X and Y are detailed in Table 3. For example, X represents the event S t a r t P V C u r t a i l m e n t in the P V automaton model. In contrast, the BESS operation and its mode are modeled by automata with three states and four events, as illustrated in Figure 12b. The generic events U, V, W 1 and W 2 , are also detailed in Table 3.
The automata model of SOC, grid power, and voltage at POI measurements also follows a pattern. A generic automaton model of the grid power measurement with three states and four events is shown in Figure 13a. The generic events X 1 and X 2 represent commands to initiate the measurement, while events U and V represent the possible discrete categories of the measurement, for example if it is in L, H, or N level. On the other hand, the generic automaton model for the SOC and POI voltage measurements has four states and seven events. as shown in Figure 13b. The generic events, X 1 , X 2 , X 3 , represent commands to initiate the measurement, while events U, V, W, and Y represent the possible discrete categories of the measurement. All events related to measurements are shown in Table 4.
The specific values for defining the threshold values for each discrete category can be adapted for each specific PMS design, without interfering with the SCT synthesis process. The threshold values for the power and voltage of the grid at the POI can be determined on the basis of the utility’s grid codes. SOC levels can be determined on the basis of specific manufacturer recommendations. The specific values considered in this case study are shown in Table A1 in the Appendix A.
Following the second step of the proposed framework in Section 3, all components are composed to create an automaton G = G 1 G n that models every possible behavior of the microgrid plant. Automaton G has 3456 possible states and 43,488 transitions, and therefore its visual representation is omitted here. The plant G models all the possible behavior of the plant, including some forbidden ones that are desired to avoid by means of a supervisor. However, it is first necessary to define the requirements of the plant and translate them as formal specifications.

4.4. Modeling of Control Specifications

The fourth step of the proposed PMS design framework described in Section 3 is to model microgrid requirements as specifications. In this case study four requirements are modeled: (i) High SOC Management; (ii) Low SOC Management; (iii) Voltage Support function; (iv) Peak Shaving Function. Requirements (i) to (iii) consider that the microgrid is operating in islanded mode, while requirement (iv) considers grid-connected mode. The modeling of each requirement as a specification is described as follows.

4.4.1. Specification E 1 —High SOC Management

In addition, for the case where the microgrid is operating in islanded mode, if the SOC hits its high limit (H), then the PV system must enter curtailment mode. When the SOC returns within the normal range (N), the PV system can return to MPPT mode. Specification E 1 is shown in Figure 14, states 1 and 3 of E 1 include auto-loops, to enable the measurement of SOC, in order to allow the plant to perform other tasks and to avoid deadlocks.

4.4.2. Specification E 2 —Low SOC Management

If the SOC reaches its lower limit (L), then the noncritical load must be disconnected. If the SOC falls below the LL level, then Genset must inject nominal power into the microgrid to recharge the BESS. Since SOC returns to normal range, Genset is lead to Standby mode, where the load can be connected. Specification E 2 is shown in Figure 15, analogously to E 1 auto-loops are added to states 1 and 3, in order to perform other tasks and to avoid deadlocks.

4.4.3. Specification E 3 —POI Voltage Support Function

If the voltage at the POI falls within the low limit (L), the voltage Support function of the WT system must be activated, and the generator remains in standby mode. If the POI voltage drops below the Low Low Level (LL), the Genset must operate at its nominal mode to compensate with reactive power. Once the voltage returns to its normal level (N), the WT system and Genset must return to the constant power factor mode and Standby mode, respectively. Specification E 3 is shown in Figure 16.

4.4.4. Specification E 4 —Peak Shaving Function

When the user enables the peak shaving function, event E n a b l e P e a k s h a v i n g occurs, activating the peak shaving mode. As a consequence, the active power injected into the utility grid must be limited according to the contracted power with the electrical distribution companies. If the grid power, P g r i d (see Figure 7), is at a low level (L) of the contracted power, the BESS must start charging, taking advantage of the low load. When the grid power is at a high level (H) of the contracted power, the BESS must go to discharge mode. If the grid power is in the normal range (N) of the contracted power, the BESS must go to standby mode. The operator cannot deactivate the peak shaving function if the grid power is not in the normal range (N). Specification E 4 is shown in Figure 17.

4.5. PMS Supervisors Realization in MATLAB Stateflow

Given the synthesized plant model G and the specifications E 1 , , E n , the final steps of the proposed PMS design framework described in Section 3 is to synthesize a set of reduced decentralized supervisors S i R . For this case study, three reduced decentralized supervisors have been synthesized, each performing one of the following control tasks: (i) SOC management; (ii) POI voltage support function; (iii) Peak shaving function. Each of the reduced decentralized supervisors S i R is discussed next.
The first reduced supervisor S 1 R is the reduced version of supervisor S 1 = sup C ( K 1 ) , where K 1 = G E 1 E 2 , which performs the BESS SOC management. The second reduced supervisor S 2 R is the reduced version of supervisor S 2 = sup C ( K 2 ) , where K 2 = G E 3 , which performs the POI voltage support function. Finally, the third reduced supervisor S 3 R is the reduced version of supervisor S 3 = sup C ( K 3 ) , where K 3 = G E 4 , which performs the peak shaving function. All reduced decentralized supervisors S 1 R , S 2 R , S 3 R , are shown in Figure 18, Figure 19, and Figure 20, respectively.

5. Simulation Results and Discussions

To validate the proposed supervisory controller, HIL testing was employed. Two real-time simulators, OPAL-RT and OP5707 XG, are utilized to obtain experimental results that closely replicate real-world conditions without requiring the assembly of the physical system. This approach offers several advantages, such as the ability to test and validate the system in various scenarios prior to construction, leading to significant time and cost savings. In addition, it ensures the safe testing of high-power systems. The setup, shown in Figure 21, includes one simulator responsible for modeling the local controls and the microgrid, providing signals of SOC, RMS voltage, and frequency at the POI. The supervisory controller state machines are executed on a second simulator, which handles the command signals to change the operating state. Data communication between the simulators is carried out using the Modbus protocol, as shown in Figure 22. As mentioned in Section 4, communication issues such as delays and packet losses are not considered in this paper.
The load profile and the wind speed profile used to evaluate the PMS functions are illustrated in Figure 23 and Figure 24, respectively. These profiles are obtained from a distributed power resource management database [43]. In addition, the irradiation and temperature profiles of the PV system illustrated in Figure 25 are obtained from real data, which were used to demonstrate the functionality of the supervisory controller. The PMS functions are not dependent on these profiles; any other load, wind speed, irradiation, or temperature profile can be used.
The functionalities that are developed, implemented, and tested are:
  • Peak shaving: In this operating mode, the power supplied from the utility grid to the microgrid is restricted to the contracted power, without compromising the energy supplied to the loads. For this, the BESS is charged during low-demand periods, when electricity costs are lower. On the other hand, the BESS is discharged during periods of high demand.
  • Islanded Operation: The microgrid should have the capability to provide power to the loads in isolated mode, ensuring adequate voltage and frequency levels. The transition from grid-connected to islanded operation can occur as either a planned or unintended event. In the event of islanding, at least one source within the microgrid must regulate the voltage at POI to its nominal value and establish a reference frequency that matches the nominal frequency of the utility grid.
    Monitoring the voltage at the POI: The supervisors must ensure that the voltage is within the acceptable range of operation, sending operation commands to the different sources in the microgrid.
    Monitoring the SOC of the BESS: In order to prolong the life of the battery, it is important that it operates in a quasi-linear charge and discharge mode. To this end, the supervisors change the operating modes of the BESS.
Six scenarios were designed in order to test the PMS functionalities. (i) Grid connected with peak shaving function under normal renewable generation conditions; (ii) Grid connected with peak shaving function under low renewable generation conditions; (iii) Grid connected with peak shaving function under high renewable generation conditions; (iv) Islanded operation under low renewable generation; (v) Islanded operation under high renewable generation; (vi) Voltage support operation condition.

5.1. Grid-Connected OPERATION

5.1.1. Peak Shaving Under Normal Renewable Generation Conditions (Scenario (i))

The algorithm implemented for peak shaving consists of discharging the BESS during peak hours, as shown in Figure 26a. At time t = 193.41 s, the power absorbed by the microgrid is above 0.9 p.u. of the contracted power, P c o n t r a c t e d = 5000 kW (superior pink line). At this point, the Supervisor issues a command to discharge the BESS, as shown in Figure 27a, thus avoiding exceeding the contracted power limit and preventing possible penalties. At t = 217.37 s, the power of the grid remains within the range of 0.25 p.u. to 0.9 p.u., triggering a control signal for the BESS to transition to standby mode, during which it ceases power injection. During peak hours, the BESS injects power and limits the power grid to the contracted power. Figure 26a shows that the active power from the power grid (blue line) never exceeds the contracted power (superior pink line), without reducing the load (red line). Active power of BESS (black line) when negative indicates that the BESS is being charged when the demand for energy is low, and when positive indicates its discharge during peak hours. Figure 27b shows the SOC of the BESS, which varies between charge and discharge, respectively.
Figure 26b shows the active power of the wind power plant and PV farm in the connected mode of the MG. At t = 350 s, the RES’s energy generation is low, so the BESS enters discharge mode, avoiding to exceed the contracted power.

5.1.2. Peak Shaving Under Low Renewable Generation Conditions (Scenario (ii))

In this simulation scenario, the objective is to deliberately drive the Battery Energy Storage System (BESS) into Low and Low–Low SOC levels while the system remains grid-connected and engaged in peak shaving operations. To accomplish this, photovoltaic (PV) generation is intentionally reduced, leading the BESS to discharge and supply power to the grid, thus preventing it from recharging. Under conditions of low renewable generation, the Power Management System (PMS) is configured to perform load shedding when the SOC reaches the Low threshold. If this load reduction is insufficient to balance power generation and demand, the SOC continues to decrease. Once it reaches the Low–Low threshold, the PMS sets the standby genset’s power reference to its nominal value.
Figure 28 presents the BESS SOC and active power of MG components for Scenario (ii). As shown, the output of both the Wind Turbine Generator (WTG) and the PV system is reduced, forcing the BESS to deliver power to the grid and causing the SOC to drop. At time t 1 = 294.5 s , the SOC reaches the Low threshold of 40 % . After a delay of approximately 3.1 milliseconds, the PMS initiates the shedding of noncritical loads, thereby reducing overall demand and temporarily balancing generation and demand.
Subsequently, as demand gradually increases again, even after load shedding, the BESS resumes discharging to support the grid, leading to a further SOC reduction. At time t 2 = 571.7 s , the SOC falls to the Low–Low threshold of 30 % . After a communication delay of 2.6 milliseconds, the PMS sets the genset’s power reference to its nominal capacity, ensuring that the grid is supplied and that the BESS can be recharged with the surplus power. At time t 3 = 722.3 s , the SOC recovers to the normal operating range. After an additional delay of 5.6 milliseconds, the PMS commands the reconnection of noncritical loads and returns the genset to standby mode.

5.1.3. Peak Shaving Under High Renewable Generation Conditions (Scenario (iii))

In this simulation scenario, the objective is to deliberately drive the Battery Energy Storage System (BESS) into High SOC level while the system remains grid-connected and engaged in peak shaving operations. To accomplish this, photovoltaic (PV) generation is intentionally increased, leading the BESS to charge from the surplus power of the grid. Under conditions of high renewable generation, the Power Management System (PMS) is configured to perform curtailment of PV when the SOC reaches the High threshold.
Figure 29 presents the results for Scenario (iii). As shown, the output of both the Wind Turbine Generator (WTG) and the PV system is increased, allowing the BESS to absorb power from the grid and causing the SOC to increase. At time t 1 = 450.3 s , the SOC reaches the High threshold of 80 % . After a delay of approximately 3.1 milliseconds, the PMS initiates the curtailment of PV, thereby reducing PV generation and reducing the BESS charging power.
Subsequently, as the load demand gradually increases, the BESS begin to discharge to support the grid, leading to a SOC reduction. At time t 2 = 589.9 s , the SOC falls to the High threshold of 80 % . After a communication delay of 4.2 milliseconds, the PMS sets the PV back to MPPT mode.

5.2. Islanded Operation

The microgrid must be able to supply power to the loads in isolated mode, guaranteeing the appropriate voltage and frequency levels. The transition from grid-connected to islanded operation can occur as either a planned or unintended event. In the event of islanding, at least one source within the microgrid must regulate the voltage at POI to its nominal value and establish a reference frequency that matches the nominal frequency of the utility grid.

5.2.1. Low Renewable Generation Conditions (Scenario (iv))

In this simulation scenario, as in scenario (ii), the objective is to deliberately drive the Battery Energy Storage System (BESS) into Low and Low–Low SOC levels while the system remains in islanded operation. To accomplish this, photovoltaic (PV) generation is intentionally reduced to prevent the BESS from recharging. As in the grid-connected operation, the PMS is configured to perform load shedding when the SOC reaches the Low threshold. In case the SOC decreases even further, reaching the Low–Low threshold, the PMS sets the standby genset’s power reference to its nominal value.
Figure 30 presents the results for Scenario (iv). As shown, the output of both the WTG and the PV system is reduced, and the BESS is continuously supporting the grid, causing the SOC to drop. At time t 1 = 157.9 s , the SOC reaches the Low threshold of 40 % . After a delay of approximately 6 milliseconds, the PMS initiates the shedding of noncritical loads, thereby reducing overall demand and temporarily balancing generation and demand.
Subsequently, the BESS keeps supporting the grid without charging, leading to a further SOC reduction. At time t 2 = 318.6 s , the SOC falls to the Low–Low threshold of 30 % . After a communication delay of 4.7 milliseconds, the PMS sets the genset’s power reference to its nominal capacity, ensuring that the grid is supplied and that the BESS can be recharged with the surplus power. At time t 3 = 376 s , the SOC recovers to the normal operating range. After an additional delay of 2.6 milliseconds, the PMS commands the reconnection of noncritical loads and returns the genset power reference to standby mode. Later, at time t 4 = 574.6 s , the SOC falls to the Low threshold of 40 % again. The PMS initiates again the shedding of noncritical loads after 3.8 milliseconds of communication delay. The load shedding is effective and at time t 5 = 628.1 s , the SOC returns to normal range and the noncritical load is reconnected.

5.2.2. High Renewable Generation Conditions (Scenario (v))

In this simulation scenario, the objective is to deliberately drive the Battery Energy Storage System (BESS) into High SOC level while the system remains in islanded operation. To accomplish this, photovoltaic (PV) generation is intentionally increased, leading the BESS to charge from the surplus power of the grid. As discussed before, the PMS is designed to perform curtailment of PV when the SOC reaches the High threshold.
Figure 31 presents the results for Scenario (iv). As shown, the output of both the Wind Turbine Generator (WTG) and the PV system is increased, leading the BESS to absorb power to support the grid and causing the SOC to increase. At time t 1 = 493.8 s , the SOC reaches the High threshold of 80 % . After a delay of approximately 6 milliseconds, the PMS initiates the curtailment of PV, thereby reducing PV generation and stopping the BESS charging.
Subsequently, as the load demand gradually increases, the BESS begins to discharge to support the grid, leading to a SOC reduction. At time t 2 = 674.5 s , the SOC falls to the normal range and the PMS sets the PV back to MPPT mode.

5.2.3. Voltage Support Operation Condition Scenario (vi)

As shown in Figure 32a, when the voltage decreases to 0.92 p.u. (with a base voltage of 13.8 kV) at time t = 1009 s, the supervisor activates the voltage support function of the WT system, as shown in Figure 32c. Consequently, there is a noticeable increase in reactive power (Figure 32b), demonstrating its role in providing voltage support functionality.
Figure 33a shows that when Supervisor 2, which is responsible for monitoring and controlling voltage sags, is not in operation, the system collapses at t = 745 s. The voltage at the POI drops drastically, and the MG becomes unstable. After the voltage drops below 0.5 p.u., the sources should disconnect to prevent the system from collapsing [44]. However, with the activation of the supervisor, it is evident in Figure 33 that both the WT system and Genset contribute to this support, preventing the system from collapsing.

6. Conclusions

This paper presented a discrete-event based framework for the design and implementation of Power Management Systems in AC microgrids by using Supervisory Control Theory. A step-by-step implementation guide was provided, making this work applicable and reproducible in real-world microgrid projects. The proposed methodology enables systematic modeling of DERs and control specifications, allowing for the synthesis of decentralized supervisors that ensure logically correct and nonblocking behavior. Unlike previous approaches limited to static transitions or specific applications, this framework integrates multiple DERs—including PV, wind, BESS, and genset—under a unified SCT-based structure, supporting functionalities such as peak shaving, SOC management, voltage support, and multi-mode operation. A practical case study was developed and validated in a Controller Hardware-in-the-Loop (CHIL) platform, demonstrating the real-time feasibility and effectiveness of the proposed PMS.Future investigations aim to remove the assumption that the system operates without faults and communication issues such as data package loss. The supervisory system’s ability to perform real-time reconfiguration will be explored if a system change is required during unknown events.

Author Contributions

Conceptualization, G.S.V., T.M.T. and R.F.S.D.; methodology, G.S.V. and T.M.T.; software, P.C.E.H. and T.M.T.; validation, G.S.V., E.L.v.E. and T.M.T.; formal analysis, G.S.V. and T.M.T.; investigation, P.C.E.H., T.B.d.P. and J.M.T.d.A.; resources, P.C.E.H. and J.M.T.d.A.; data curation, P.C.E.H., T.B.d.P. and J.M.T.d.A.; writing—original draft preparation, P.C.E.H., T.B.d.P. and J.M.T.d.A., G.S.V.; writing—review and editing, P.C.E.H., T.B.d.P., J.M.T.d.A., G.S.V., E.L.v.E. and T.M.T.; visualization, P.C.E.H., T.B.d.P. and J.M.T.d.A.; supervision, G.S.V., E.L.v.E. and T.M.T.; project administration, R.F.S.D.; funding acquisition, R.F.S.D. All authors have read and agreed to the published version of the manuscript.

Funding

This study was financed in part by the Coordenação de Aperfeiçoamento de Pessoal de Nível Superior—Brasil (CAPES)—Finance Code 001, ANP PRH17.1/ANP-FINEP (FINEP No. 01.19.0220.00), Instituto Nacional de Ciência e Tecnologia em Energia Elétrica (INERGE), and TotalEnergies EP Brasil in accordance with ANP Resolution 918/2023.

Data Availability Statement

Data are contained within the article.

Acknowledgments

The authors would like to thank LAMCE for providing the necessary data for simulations. This study was financed in part by the Coordenação de Aperfeiçoamento de Pessoal de Nível Superior—Brasil (CAPES)—Finance Code 001, ANP PRH17.1/ANP-FINEP (FINEP No. 01.19.0220.00), Instituto Nacional de Ciência e Tecnologia em Energia Elétrica (INERGE), and TotalEnergies EP Brasil in accordance with ANP Resolution 918/2023.

Conflicts of Interest

The authors declare no conflicts of interest.

Appendix A. Values Used to Compare PMS Signals

The values selected are considered specifically for this project; other values can be used, and the PMS will respond in the same way.
Table A1. Description of values considered for event-triggered.
Table A1. Description of values considered for event-triggered.
VariableValueBase
P g r i d H 0.9 p.u.5000 [kW]
P g r i d L 0.25 p.u.5000 [kW]
V L 0.92 p.u.13.8 [kV]
V L L 0.85 p.u.13.8 [kV]
S O C H 80%
S O C L 40%
S O C L L 30%
Nominal apparent and active power of the sources and loads used in the development of the PMS.
Table A2. Technical data of microgrid components.
Table A2. Technical data of microgrid components.
Components S nom (kVA) P nom (kW)
PV system4800.04800.0
Wind system5700.05415.0
BESS8400.08400.0
Genset5960.05364.0
Total Generation Power24,860.023,979.0
Load S nom  (kVA) P nom  (kW)
Critical maximum5420.04607.0
Critical minimum1591.01352.0
Critical average1000.0850.0
Noncritical2000.02000.0

References

  1. Ritchie, H.; Roser, M.; Rosado, P. Electricity Production by Source, World. 2022. [Google Scholar]
  2. Hirsch, A.; Parag, Y.; Guerrero, J. Microgrids: A review of technologies, key drivers, and outstanding issues. Renew. Sustain. Energy Rev. 2018, 90, 402–411. [Google Scholar] [CrossRef]
  3. Cagnano, A.; De Tuglie, E.; Mancarella, P. Microgrids: Overview and guidelines for practical implementations and operation. Appl. Energy 2020, 258, 114039. [Google Scholar] [CrossRef]
  4. Olivares, D.E.; Mehrizi-Sani, A.; Etemadi, A.H.; Cañizares, C.A.; Iravani, R.; Kazerani, M.; Hajimiragha, A.H.; Gomis-Bellmunt, O.; Saeedifard, M.; Palma-Behnke, R.; et al. Trends in microgrid control. IEEE Trans. Smart Grid 2014, 5, 1905–1919. [Google Scholar] [CrossRef]
  5. Meng, L.; Sanseverino, E.R.; Luna, A.; Dragicevic, T.; Vasquez, J.C.; Guerrero, J.M. Microgrid supervisory controllers and energy management systems: A literature review. Renew. Sustain. Energy Rev. 2016, 60, 1263–1273. [Google Scholar] [CrossRef]
  6. Zahraoui, Y.; Alhamrouni, I.; Mekhilef, S.; Basir Khan, M.R.; Seyedmahmoudian, M.; Stojcevski, A.; Horan, B. Energy management system in microgrids: A comprehensive review. Sustainability 2021, 13, 10492. [Google Scholar] [CrossRef]
  7. Vuddanti, S.; Salkuti, S.R. Review of energy management system approaches in microgrids. Energies 2021, 14, 5459. [Google Scholar] [CrossRef]
  8. Ahmad, S.; Shafiullah, M.; Ahmed, C.B.; Alowaifeer, M. A review of microgrid energy management and control strategies. IEEE Access 2023, 11, 21729–21757. [Google Scholar] [CrossRef]
  9. Colson, C.M.; Nehrir, M.H. A review of challenges to real-time power management of microgrids. In Proceedings of the 2009 IEEE Power & Energy Society General Meeting, Calgary, AB, Canada, 26–30 July 2009; pp. 1–8. [Google Scholar]
  10. Yang, N.; Paire, D.; Gao, F.; Miraoui, A. Power management strategies for microgrid-A short review. In Proceedings of the 2013 IEEE Industry Applications Society Annual Meeting, Orlando, FL, USA, 6–11 October 2013; pp. 1–9. [Google Scholar]
  11. Jamal, S.; Tan, N.M.; Pasupuleti, J. A review of energy management and power management systems for microgrid and nanogrid applications. Sustainability 2021, 13, 10331. [Google Scholar] [CrossRef]
  12. El Barkouki, B.; Laamim, M.; Ouassaid, M.; Mahir, O.; Rochd, A. Real-time supervisory control strategy for a grid-connected microgrid using hardware-in-the-loop simulation. Comput. Electr. Eng. 2025, 124, 110419. [Google Scholar] [CrossRef]
  13. Garcia-Torres, F.; Zafra-Cabeza, A.; Silva, C.; Grieu, S.; Darure, T.; Estanqueiro, A. Model predictive control for microgrid functionalities: Review and future challenges. Energies 2021, 14, 1296. [Google Scholar] [CrossRef]
  14. Joshal, K.S.; Gupta, N. Microgrids with model predictive control: A critical review. Energies 2023, 16, 4851. [Google Scholar] [CrossRef]
  15. Meydani, A.; Shahinzadeh, H.; Nafisi, H.; Gharehpetian, G.B. Optimizing Microgrid Energy Management: Metaheuristic versus Conventional Techniques. In Proceedings of the 2024 11th Iranian Conference on Renewable Energy and Distribution Generation (ICREDG), Yazd, Iran, 6–7 March 2024; Volume 11, pp. 1–15. [Google Scholar]
  16. Farrokhabadi, M.; Solanki, B.V.; Canizares, C.A.; Bhattacharya, K.; Koenig, S.; Sauter, P.S.; Leibfried, T.; Hohmann, S. Energy Storage in Microgrids: Compensating for Generation and Demand Fluctuations While Providing Ancillary Services. IEEE Power Energy Mag. 2017, 15, 81–91. [Google Scholar] [CrossRef]
  17. Chen, M.; Xiao, X.; Guerrero, J.M. Secondary restoration control of islanded microgrids with a decentralized event-triggered strategy. IEEE Trans. Ind. Inform. 2017, 14, 3870–3880. [Google Scholar] [CrossRef]
  18. Diaz, N.L.; Luna, A.C.; Vasquez, J.C.; Guerrero, J.M. Centralized control architecture for coordination of distributed renewable generation and energy storage in islanded AC microgrids. IEEE Trans. Power Electron. 2016, 32, 5202–5213. [Google Scholar] [CrossRef]
  19. Karimi, Y.; Oraee, H.; Golsorkhi, M.S.; Guerrero, J.M. Decentralized method for load sharing and power management in a PV/battery hybrid source islanded microgrid. IEEE Trans. Power Electron. 2016, 32, 3525–3535. [Google Scholar] [CrossRef]
  20. Lu, X.; Zhou, M.; Ammari, A.C.; Ji, J. Hybrid Petri nets for modeling and analysis of microgrid systems. IEEE/CAA J. Autom. Sin. 2016, 3, 349–356. [Google Scholar] [CrossRef]
  21. Ghasaei, A.; Zhang, Z.J.; Wonham, W.M.; Iravani, R. A Discrete-Event Supervisory Control for the AC Microgrid. IEEE Trans. Power Deliv. 2020, 36, 663–675. [Google Scholar] [CrossRef]
  22. Liu, X.; Zhao, M.; Wei, Z.; Lu, M. The energy management and economic optimization scheduling of microgrid based on Colored Petri net and Quantum-PSO algorithm. Sustain. Energy Technol. Assess. 2022, 53, 102670. [Google Scholar] [CrossRef]
  23. Mishra, J.; Behera, P.K.; Pattnaik, M.; Babu, B.C. A multi-agent Petri net model power management strategy for wind–solar-battery driven DC microgrid. Sustain. Energy Technol. Assess. 2023, 55, 102859. [Google Scholar] [CrossRef]
  24. Jirdehi, M.A.; Tabar, V.S.; Ghassemzadeh, S.; Tohidi, S. Different aspects of microgrid management: A comprehensive review. J. Energy Storage 2020, 30, 101457. [Google Scholar] [CrossRef]
  25. Saleh, M.; Esa, Y.; Mohamed, A. Centralized control for DC microgrid using finite state machine. In Proceedings of the 2017 IEEE Power & Energy Society Innovative Smart Grid Technologies Conference (ISGT), Torino, Italy, 26–29 September 2017; pp. 1–5. [Google Scholar]
  26. Bhaduri, R.; Rahul Saravana, G.; Vaskar, C. Supervisory controller for power management of microgrid using hybrid technique. Trans. Electr. Electron. Mater. 2020, 21, 30–47. [Google Scholar] [CrossRef]
  27. Sugumar, G.; Selvamuthukumaran, R.; Novak, M.; Dragicevic, T. Supervisory energy-management systems for microgrids: Modeling and formal verification. IEEE Ind. Electron. Mag. 2019, 13, 26–37. [Google Scholar] [CrossRef]
  28. Ramadge, P.J.; Wonham, W.M. Supervisory control of a class of discrete event processes. SIAM J. Control Optim. 1987, 25, 206–230. [Google Scholar] [CrossRef]
  29. Cassandras, C.G.; Lafortune, S. Introduction to Discrete Event Systems; Springer: Berlin/Heidelberg, Germany, 2008. [Google Scholar]
  30. Wonham, W.M.; Cai, K. Supervisory Control of Discrete-Event Systems; Springer International Publishing: Berlin/Heidelberg, Germany, 2019. [Google Scholar]
  31. Kharrazi, A.; Mishra, Y.; Sreeram, V. Discrete-event systems supervisory control for a custom power park. IEEE Trans. Smart Grid 2017, 10, 483–492. [Google Scholar] [CrossRef]
  32. Romero-Rodríguez, M.; Delpoux, R.; Piétrac, L.; Dai, J.; Benchaib, A.; Niel, E. An implementation method for the supervisory control of time-driven systems applied to high-voltage direct current transmission grids. Control Eng. Pract. 2019, 82, 97–107. [Google Scholar] [CrossRef]
  33. Mahfouz, M.M.; Iravani, R. A supervisory control for resilient operation of the battery-enabled DC fast charging station and the grid. IEEE Trans. Power Deliv. 2020, 36, 2532–2541. [Google Scholar] [CrossRef]
  34. Mahfouz, M.; Iravani, R. Autonomous Operation of the DC Fast-Charging Station. IEEE Trans. Ind. Electron. 2021, 69, 3787–3797. [Google Scholar] [CrossRef]
  35. Su, R.; Wonham, W. Supervisor Reduction for Discrete-Event Systems. Discret. Event Dyn. Syst. 2004, 14, 31–53. [Google Scholar] [CrossRef]
  36. Manitoba Hydro International Ltd. Photovoltaic Example: Written for PSCAD v4.6; Revision 1; Manitoba Hydro International Ltd.: Winnipeg, MB, Canada, 2018. [Google Scholar]
  37. Yazdani, A.; Iravani, R. Voltage-Sourced Converters in Power Systems: Modeling, Control, and Applications; John Wiley & Sons: Hoboken, NJ, USA, 2010. [Google Scholar]
  38. Wu, D.; Tang, F.; Dragicevic, T.; Vasquez, J.C.; Guerrero, J.M. Autonomous Active Power Control for Islanded AC Microgrids With Photovoltaic Generation and Energy Storage System. IEEE Trans. Energy Convers. 2014, 29, 882–892. [Google Scholar] [CrossRef]
  39. Zhong, Q.C.; Weiss, G. Synchronverters: Inverters That Mimic Synchronous Generators. IEEE Trans. Ind. Electron. 2011, 58, 1259–1267. [Google Scholar] [CrossRef]
  40. Nguyen, P.L.; Zhong, Q.C.; Blaabjerg, F.; Guerrero, J.M. Synchronverter-based operation of STATCOM to Mimic Synchronous Condensers. In Proceedings of the 2012 7th IEEE Conference on Industrial Electronics and Applications (ICIEA), Singapore, 18–20 July 2012; pp. 942–947. [Google Scholar]
  41. Zhong, Q.C.; Nguyen, P.L.; Ma, Z.; Sheng, W. Self-Synchronized Synchronverters: Inverters Without a Dedicated Synchronization Unit. IEEE Trans. Power Electron. 2014, 29, 617–630. [Google Scholar] [CrossRef]
  42. Wang, Y.; Wen, M.; Chen, Y. A simplified model of Type-4 wind turbine for short-circuit currents simulation analysis. IET Gener. Transm. Distrib. 2022, 16, 3036–3049. [Google Scholar] [CrossRef]
  43. Hackathon—SEPOC 2021. Available online: https://2021.sepoc.com.br/hackathon/ (accessed on 11 June 2023).
  44. 1547-2018; IEEE Standard for Interconnection and Interoperability of Distributed Energy Resources with Associated Electric Power Systems Interfaces. IEEE: Piscataway, NJ, USA, 2018.
Figure 1. Supervisory control scheme.
Figure 1. Supervisory control scheme.
Energies 18 03964 g001
Figure 2. Decentralized supervisory control with two agents.
Figure 2. Decentralized supervisory control with two agents.
Energies 18 03964 g002
Figure 3. Signal to events conversion example.
Figure 3. Signal to events conversion example.
Energies 18 03964 g003
Figure 4. A possible DES model for BESS.
Figure 4. A possible DES model for BESS.
Energies 18 03964 g004
Figure 5. BESS specification example.
Figure 5. BESS specification example.
Energies 18 03964 g005
Figure 6. Converting synthesized reduced supervisor Z i R to Simulink Stateflow state machine.
Figure 6. Converting synthesized reduced supervisor Z i R to Simulink Stateflow state machine.
Energies 18 03964 g006
Figure 7. AC microgrid, case study of SCT-based PMS implementation.
Figure 7. AC microgrid, case study of SCT-based PMS implementation.
Energies 18 03964 g007
Figure 8. Simulink model of PV system.
Figure 8. Simulink model of PV system.
Energies 18 03964 g008
Figure 9. Diagram of BESS.
Figure 9. Diagram of BESS.
Energies 18 03964 g009
Figure 10. Diagram of Genset.
Figure 10. Diagram of Genset.
Energies 18 03964 g010
Figure 11. Diagram of WT system.
Figure 11. Diagram of WT system.
Energies 18 03964 g011
Figure 12. LC modeling in DES.
Figure 12. LC modeling in DES.
Energies 18 03964 g012
Figure 13. Measurement modeling in DES.
Figure 13. Measurement modeling in DES.
Energies 18 03964 g013
Figure 14. Modeling of the specifications in DES for Specification 1—High SOC management.
Figure 14. Modeling of the specifications in DES for Specification 1—High SOC management.
Energies 18 03964 g014
Figure 15. Modeling of the specifications in DES for Specification 2—Low SOC management.
Figure 15. Modeling of the specifications in DES for Specification 2—Low SOC management.
Energies 18 03964 g015
Figure 16. Modeling of the specifications in DES for Specification 2—Voltage support.
Figure 16. Modeling of the specifications in DES for Specification 2—Voltage support.
Energies 18 03964 g016
Figure 17. Modeling of the specifications in DES for Specification 4—Peak shaving.
Figure 17. Modeling of the specifications in DES for Specification 4—Peak shaving.
Energies 18 03964 g017
Figure 18. Supervisor 1—High and Low SOC Management.
Figure 18. Supervisor 1—High and Low SOC Management.
Energies 18 03964 g018
Figure 19. Supervisor 2—POI voltage support function.
Figure 19. Supervisor 2—POI voltage support function.
Energies 18 03964 g019
Figure 20. Supervisor 3—Peak shaving function.
Figure 20. Supervisor 3—Peak shaving function.
Energies 18 03964 g020
Figure 21. Setup of the Hardware-in-the-Loop of the local controllers and supervisory control.
Figure 21. Setup of the Hardware-in-the-Loop of the local controllers and supervisory control.
Energies 18 03964 g021
Figure 22. Hardware-in-the-Loop testbed.
Figure 22. Hardware-in-the-Loop testbed.
Energies 18 03964 g022
Figure 23. Power consumption profile of critical and noncritical loads in the microgrid.
Figure 23. Power consumption profile of critical and noncritical loads in the microgrid.
Energies 18 03964 g023
Figure 24. Wind profile for wind generation system.
Figure 24. Wind profile for wind generation system.
Energies 18 03964 g024
Figure 25. Irradiance and temperature profile used for the PV system.
Figure 25. Irradiance and temperature profile used for the PV system.
Energies 18 03964 g025
Figure 26. Supervisor 1’s performance of peak shaving, active power of MG.
Figure 26. Supervisor 1’s performance of peak shaving, active power of MG.
Energies 18 03964 g026
Figure 27. Commands sent by PMS and state of charge of BESS.
Figure 27. Commands sent by PMS and state of charge of BESS.
Energies 18 03964 g027
Figure 28. Peak shaving under low renewable generation.
Figure 28. Peak shaving under low renewable generation.
Energies 18 03964 g028
Figure 29. Peak shaving under high renewable generation.
Figure 29. Peak shaving under high renewable generation.
Energies 18 03964 g029
Figure 30. Islanded operation under low renewable generation.
Figure 30. Islanded operation under low renewable generation.
Energies 18 03964 g030
Figure 31. Islanded operation under high renewable generation.
Figure 31. Islanded operation under high renewable generation.
Energies 18 03964 g031
Figure 32. Supervisor 3’s performance in managing the support voltage provided by the wind system.
Figure 32. Supervisor 3’s performance in managing the support voltage provided by the wind system.
Energies 18 03964 g032
Figure 33. Comparison between the operation of the system with the implementation of a supervisory control and the droop operation without its use.
Figure 33. Comparison between the operation of the system with the implementation of a supervisory control and the droop operation without its use.
Energies 18 03964 g033
Table 1. Comparison of DPMS design approaches in previous works.
Table 1. Comparison of DPMS design approaches in previous works.
StudyMethodologyMulti-Mode OperationScalabilityExperimental ValidationImplementation Guide
[18,26]Heuristic/Rule-BasedPartialLowNoNo
[19,22,23,25]Petri Nets/AutomataLimitedMediumNoPartial
[31]SCT (CPP)NoHighNoPartial
[32]SCT (HVDC)Not applicableHighNoLimited
[33,34]SCT (DCFC station)Not applicableHighYesNo
[21]SCT (microgrids)NoHighYesNo
This WorkSCT (microgrids)YesHighYesYes (step-by-step)
Table 2. Table of events that are disabled by Supervisor in each state.
Table 2. Table of events that are disabled by Supervisor in each state.
State:Disable Events
1: S t a r t D i s c h a r g e , S t a r t C h a r g e
2: S t a r t D i s c h a r g e , S t o p C h a r g e , M E A S S O C
3: S t o p C h a r g e
4: M E A S S O C
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content.

Share and Cite

MDPI and ACS Style

Erazo Huera, P.C.; de Paula, T.B.; do Amaral, J.M.T.; Tuxi, T.M.; Viana, G.S.; van Emmerik, E.L.; Dias, R.F.S. A Discrete-Event Based Power Management System Framework for AC Microgrids. Energies 2025, 18, 3964. https://doi.org/10.3390/en18153964

AMA Style

Erazo Huera PC, de Paula TB, do Amaral JMT, Tuxi TM, Viana GS, van Emmerik EL, Dias RFS. A Discrete-Event Based Power Management System Framework for AC Microgrids. Energies. 2025; 18(15):3964. https://doi.org/10.3390/en18153964

Chicago/Turabian Style

Erazo Huera, Paolo C., Thamiris B. de Paula, João M. T. do Amaral, Thiago M. Tuxi, Gustavo S. Viana, Emanuel L. van Emmerik, and Robson F. S. Dias. 2025. "A Discrete-Event Based Power Management System Framework for AC Microgrids" Energies 18, no. 15: 3964. https://doi.org/10.3390/en18153964

APA Style

Erazo Huera, P. C., de Paula, T. B., do Amaral, J. M. T., Tuxi, T. M., Viana, G. S., van Emmerik, E. L., & Dias, R. F. S. (2025). A Discrete-Event Based Power Management System Framework for AC Microgrids. Energies, 18(15), 3964. https://doi.org/10.3390/en18153964

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop