1. Introduction
In recent years, microgrid has received great attention as an important solution to utilize renewable energy resources such as wind, solar, and tidal energy. Microgrid can effectively integrate distributed generations (DGs), converters, battery energy storage systems (BESSs), and loads. With the advent of more DC loads like electrical vehicles (EVs), DC microgrid has attracted extensive interest and related researches are developing rapidly. Compared to AC microgrid, DC microgrid has considerable advantages. For example, power loss is less without DC/AC converters, moreover, reactive power, frequency, and phase are not problems any more [
1,
2].
Hierarchical control has been generally accepted since it was put forward [
3]. Hierarchical control is composed of primary control, secondary control, and tertiary control. Primary control is the droop control that realizes reference voltage and power sharing. Secondary control eliminates the deviation of voltage and power sharing. Tertiary control is the energy dispatch. According to the configuration of the communication system, secondary control can be divided into 3 types: centralized control, decentralized control, and distributed control. For the centralized control, information like voltages and currents of all nodes including power generation nodes and energy storage (ES) nodes is delivered through network communication to the central controller, then PI controllers calculate droop correction terms based on the global information. The most critical disadvantage of the centralized control is that any fault of the network will cause breakdown of the whole secondary control. For the decentralized control, coordination strategy relies on local information without communication links, and its key is to find an appropriate control method to satisfy the requirements of voltage regulation and power sharing. Distributed control is based on multiagent system (MAS), where central controller is not needed anymore and every node only communicates with its adjacent nodes. Controller at every node collects local and neighbors’ information to estimate the global average voltage and other information across the whole microgrid by some consensus protocols [
4,
5].
To prevent any of ESs from over-charging or over-discharging, State-of-Charge (SoC) balancing is necessary. During the discharging process, the ES with higher SoC should supply more power than the others. While during the charging process, the ES with lower SoC should absorb more power than the others. Based on the hierarchical control, SoC balancing methods can be divided into 3 types: centralized, decentralized, and distributed. Through some modified droop control, SoC balancing can be realized in a decentralized way [
6,
7,
8,
9,
10,
11]. Reference [
6] proposed a decentralized control method with SoC balancing. In this method, the droop coefficients are proportional to
during the charging process but are inversely proportional to
during the discharging process. It is obvious that the speed of SoC balancing relies on the parameter
n. However, there are 3 drawbacks. First, the change ranges of the droop coefficients are too large, which will influence the system stability. Particularly, the system will be unstable when SoC is very small. In addition, the droop coefficients are still changing even after SoC balancing has been achieved. Finally, the method cannot work well when capacities of ESs are different. In Reference [
7], a global cost function is proposed based on the effective load and SoC. Then, an optimal droop surface is derived to determine the droop coefficients to balance SoC and optimize the global cost function. In Reference [
8], the reference frequency of the droop control is regulated in a linear way according to the changes of local SoC for an AC microgrid, but there will be still frequency deviation during the process of SoC balancing. In Reference [
9], the droop coefficients are proportional to
in the charging process but are inversely proportional to
in the discharging process to balance SoC for the DC microgrid. Reference [
10] compared various SoC balancing functions in the decentralized control and found that the power function
and the exponential function
were in fact the best choice to promote SoC equalization. Particularly, the power function exhibited the fast speed of SoC equalization and the lowest DC voltage deviation.
For the centralized control, most literatures focused on SoC balancing by regulating the droop parameters based on the average SoC, like regulating reference currents [
11], regulating droop coefficients [
12], regulating reference voltages [
13], and so on. Generally, control methods used in the centralized control can be also used in the distributed control with some modification. In References [
14,
15], the droop parameters are adjusted according to the discrepancy between local SoC and the global average SoC, and the latter can be estimated by the dynamic consensus protocol. Furthermore, the droop control can be also adjusted according to the discrepancies among local SoC and neighbors’ SoC in References [
16,
17]. Reference [
18] involved sliding mode control in the distributed control of DC microgrid to set the ES’s level of participation in the droop control for SoC balancing.
In this paper, a multiagent based distributed control method with voltage regulation and time-oriented SoC balancing for the islanded DC microgrid is proposed. In the novel SoC balancing method, direct control objective is charge/discharge time rather than SoC consensus. In fact, for the SoC balancing, there is no need to make SoCs reach a consensus too early, and it is enough to ensure that ESs charge or discharge completely at the same time. Hence, the charging and discharging time is used as the feedback signals in this paper. Compared to the conventional SoC balancing methods, the proposed time-oriented SoC balancing method can regulate ESs in a more progressive way, which can avoid the ESs with large charging or discharging currents, especially for the extremely unbalanced situations. In this way, the ESs with higher SoC or lower SoC can be protected from overcurrent, and the pressure on filter inductors to avoid saturation is alleviated. Besides, the novel method can work well in 3 extreme situations where fast discharging and charging is needed, capacities of ESs are different, and variations of line loads are high.
The rest of this paper is organized as follows. First, the preliminaries of MAS and graph theory are introduced in
Section 2. Then,
Section 3 discusses the global controller including voltage regulation and time-oriented SoC balancing. Besides,
Section 4 studies characteristics, global dynamic model, and steady-state analysis of the proposed controller. Furthermore,
Section 5 verifies the proposed controller by the islanded DC microgrid simulation. Finally, the paper is concluded in
Section 6.
3. Control Layout
Figure 1 shows the layout of proposed multiagent based distributed control in the DC microgrid, which consists of physical, cyber, and control layers. In the physical layer, there are nodes and remote loads connected to bus. A node consists of ES, power electronic converter including controller like DSP, local loads, and transmission line. In the cyber layer, there is a sparse communication network among all nodes where every node communicates directly to its neighbors. Note that the communication network is nothing to do with the topology of physical microgrid. Importantly, the communication network should be designed such that in case of any link failure, the remaining network is still connected. Ring-like network is a simple but useful example. Generally, links are undirected.
The control layer consists of primary control and secondary control including voltage regulation and time-oriented SoC balancing, which are based on local and neighbors’ data. Primary control is mainly composed by the droop control and its control law can be expressed as
where
and
mean the first voltage correction term and the second voltage correction term, and they are output of the PI controller
in voltage regulation and
in SoC balancing, respectively. Like common droop control,
,
,
, and
are local voltage setpoint, reference voltage, droop coefficient, and current, respectively.
3.1. Voltage Regulation
As shown in
Figure 1, controller at each node estimates the average voltage of the whole microgrid based on local dynamic voltage and neighbors’ estimated average voltage, then PI controller
calculates the first voltage correction term
according to the discrepancy between this estimate
and the global reference voltage
.
The protocol to estimate the average voltage is designed as
where
is the dynamic voltage at node
i.
and
denote the estimation of average voltage at node
j and node
i, respectively. By differentiating (2), it can be obtained that
Rewrite (3) in the matrix form, the following expression can be derived
where
is the dynamic voltage vector, and
denotes the estimated average voltage vector. The frequency-domain expression of (4) is
where
and
are the Laplace transformations of
and
, respectively. According to (2),
. Therefore
where
and
are identify matrix and transfer function from
to
, respectively. If
L is balanced, then all elements of
converge to a consensus value, which is the true average voltage, i.e., the average of all elements in
[
5]. In other words
where
is the averaging matrix, whose elements are all equal to
.
expresses the steady-state value of the column vector
.
represents the average of all elements in the column vector
.
is a column vector whose elements are all equal to one.
3.2. Time-Oriented SoC Balancing Method
As shown in
Figure 1, first, controller at each node estimates the average SoC among all nodes based on local SoC and neighbors’ estimated average SoC. According to whether the estimated average SoC is increasing or decreasing, controller operates in charging mode or discharging mode.
The protocol for estimation of average SoC is designed as
where
is the real-time SoC at node
i.
and
denote the estimate of global average SoC at node
j and node
i, respectively.
If is increasing, controller will operate in the charging mode, while if is decreasing, controller will operate in the discharging mode.
Generally, according to battery discharge characteristic, SoC of ES should be controlled between the lower limit of SoC (20%) and the upper limit of SoC (90%) .
3.2.1. Discharging Mode
First, the derivative of
can be calculated as
In discharging mode,
is negative. If
is constant, then the time for ES at node
i to discharge completely can be obtained
When , it means that ES at node i needs to be cut now.
If
, it shows that ES at node
i is supplying less power than that at node
j, and it will spend more time for ES at node
i to discharge completely. The average completely discharge time among all nodes can be calculated by the average consensus protocol, namely
Then
can represent the discrepancy of completely discharge time between node
i and ‘other nodes’. If
, it shows that ES at node
i is supplying less power than others, and the second voltage correction term
at node
i should increase. Therefore
where
and
are the proportional and integral gains, respectively, in the PI controller
.
However, in practice,
maybe very small and close to 0.
will be very large and may be out of limit. In order to use the reciprocal of
as the control objective, swap the numerator and denominator in (11) and remove absolute value sign considering
. Therefore, (11), (12), and (13) are replaced by
Note that when SoC is close to (20%), the denominator is close to 0. So, ES should be cut a little early, for example, when .
3.2.2. Charging Mode
Protocol in charging mode is very similar to that in discharging mode.
This can represent the time for ES at node
i to charge completely and
at that time. Then, the average complete charge time among all nodes can be calculated by the average consensus protocol
If
, it shows that ES at node
i is absorbing less power than others, and the second voltage correction term at node
i, i.e.,
, should decrease. Therefore
In practice, in order to use the reciprocal of
as the control objective, swap the numerator and denominator in (17) and remove absolute value sign considering
. Therefore, (17), (18), and (19) are replaced by
Note that when SoC is close to (90%), the denominator is close to 0. So, ES should be switched to floating charge mode a little early, for example, when .
The integral of integrator in PI controller remains unchanged when controller switches between discharging mode and charging mode, in other words, controller uses the same integrator in both modes. That is because ES with higher SoC always needs to supply more power or to absorb less power, and its is always bigger than that of ES with lower SoC. So, there is no need to clear the integral to zero when controller switches mode.
5. Simulation Results
An islanded 400V DC microgrid comprised of 8 ES nodes is simulated in MATLAB/Simulink to verify the effectiveness of proposed controller. Eight ES nodes and a remote load are connected in parallel with bus physically, and a communication network of 8 nodes is shown in
Figure 3. Battery at each node is connected to bus through bidirectional Buck-Boost converter. Transmission line impedances at both sides are identical. Public and private parameters of 8 ES nodes are shown in
Table 1 and
Table 2, respectively.
Communication weight
is chosen by an improved
Metropolis method [
20]
where
denotes the number of neighbors at node
i.
A total of 5 cases are simulated and results are analyzed. The first case is charging case, the second case is discharging case, the third case is switching case, the fourth case is fast discharging and charging case, and the last case is the comparative case using the conventional SoC balancing method proposed in Reference [
6].
Charging simulation is performed for 3000 s. The average voltage across the microgrid is shown in
Figure 4a. Dynamic voltages of 8 ES nodes are shown in
Figure 4b. SoCs of 8 ES nodes are shown in
Figure 4c. Output currents of 8 nodes are shown in
Figure 4d. At first, droop controller is implemented, remote load is
and an extra constant current source supplies 150A current. At
, proposed controller is performed. At
, remote load changes in step from
to
. At
, remote load changes in step from
to
.
It can be seen that SoCs of 8 ES nodes have been different until all SoCs are equal to 90%.
Discharging simulation is performed for 2900 s. The average voltage across the microgrid is shown in
Figure 5a. Dynamic voltages of 8 ES nodes are shown in
Figure 5b. SoCs of 8 ES nodes are shown in
Figure 5c. Output currents of 8 nodes are shown in
Figure 5d. At first, droop controller is implemented and remote load is
. At
, proposed controller is performed. At
, remote load changes in step from
to
. At
, remote load changes in step from
to
.
It can be seen that SoCs of 8 ES nodes have been different until all SoCs are equal to 20%.
Switching simulation is performed for 3800 s. The average voltage across the microgrid is shown in
Figure 6a. Dynamic voltages of 8 ES nodes are shown in
Figure 6b. SoCs of 8 ES nodes are shown in
Figure 6c. Output currents of 8 nodes are shown in
Figure 6d. At first, droop controller is implemented and remote load is
. Eight ES nodes are in discharging mode. At
, proposed controller is performed. At
, an extra constant current source is connected to bus and supplies 150 A current. Eight ES nodes are switched to charging mode according to the average SoC increasing at this time. At
, remote load changes in step from
to
. At
, remote load changes in step from
to
.
It can be seen that, according to whether the average SoC is increasing or decreasing, controllers switch between discharging mode and charging mode smoothly.
Fast discharging and charging simulation are performed for 425s. Compared to previous 3 cases, capacities of all ESs and event time are different in the case. The capacities of 8 ESs are shown in
Table 3. The average voltage across the microgrid is shown in
Figure 7a. Dynamic voltages of 8 ES nodes are shown in
Figure 7b. SoCs of 8 ES nodes are shown in
Figure 7c. Output currents of 8 nodes are shown in
Figure 7d. At first, droop controller is implemented and remote load is
. A total of 8 ES nodes are in discharging mode. At
, proposed controller is performed. At
, an extra constant current source is connected to bus and supplies 150 A current. Eight ES nodes are switched to charging mode according to the average SoC increasing at this time. At
, remote load changes in step from
to
. At
, remote load changes in step from
to
.
It can be seen that the time-oriented SoC balancing method can work well in fast discharging and charging situation.
The all basic parameters for simulation in the case are the same as case 4. The protocol for SoC balancing is chosen as
The voltage at the remote load is shown in
Figure 8a. Dynamic voltages of 8 ES nodes are shown in
Figure 8b. SoCs of 8 ES nodes are shown in
Figure 8c. Output currents of 8 nodes are shown in
Figure 8d.
It can be seen that the SoC balancing method proposed in Reference [
6] has 3 drawbacks. First, voltage fluctuates widely in the discharging process because the droop coefficients are too big, which is caused by
. Second, the speed of SoC balancing is too slow compared to time-oriented SoC balancing method, though
in
. This is because the conventional SoC balancing method cannot work well when the variations of line loads are very high. Third, the conventional SoC balancing method cannot work well when capacities of ESs are different.
Last but not least, if the speed of SoC balancing in the conventional method is faster than that in the time-oriented SoC balancing method, the peak currents in the conventional method will be higher.
Five cases can verify the effectiveness of the proposed controller very well. Apparently, voltage deviation between the reference voltage and the average voltage has been evidently eliminated after the proposed controller is performed. There are always differences among dynamic voltage of 8 ES nodes, but the average voltage across the microgrid is stabilized at reference voltage. Furthermore, all SoCs have been different until they are all equal to 90% in charging mode or 20% in discharging mode. Besides, proposed controllers switch between charging mode and discharging mode smoothly.
It can be seen that the time-oriented SoC balancing method can work well in 3 extreme situations where fast discharging and charging is needed, capacities of ESs are different, and variations of line loads are high.
It is worth mentioning that output currents are almost constant without step load change during SoC balancing. However, output currents will change when SoC balance is achieved in the conventional SoC balancing methods.