1. Introduction
Model-based predictive control (MBPC) has recently been favored by the research community as a versatile control technique for power converters. Its flexibility to consider different control criteria and constraints has spurred a large number of publications. Control strategies for the tracking of torque [
1], and speed [
2] have been implemented. In the realm of multi-phase drives, Finite State Model Predictive Stator Current Control (FSMPSCC) is arguably the most popular technique [
3]. It easily allows treating the extra number of phases considering torque production, losses and other factors pertinent for different applications [
4].
In most published reports, the design of FSMPSCC faces a trade-off between conflicting criteria [
5,
6,
7]. This fact comes from the use of a cost function (CF) with different terms. The instantaneous (discrete-time-wise) minimization of the cost function imprints in the drive of certain global behavior. However, figures of merit are related to each other. This means that using only CF tuning, it is not possible to reduce one figure of merit without increasing the others [
8]. The usual practice in MBPC for drives is to select a CF structure and then tune its parameters. The goal of the tuning phase is a compromise solution that is considered best globally [
9,
10].
One problem related to multi-phase drives is that of harmonic content [
11]. In this context, Virtual Voltage Vectors (VVV) have been proposed as a solution. The rationale of VVV is that harmonic content can be reduced by combining Voltage Vectors (VV) within a single sampling period. The basic VVV scheme combines two Voltage Source Inverter (VSI) configurations sharing the sampling period
. The combination is such that the average
voltage is zero. For example, a Medium-Large VV is applied during
seconds and a Large VV is applied for
seconds. In 5-phase and 6-phase systems
and
as explained in [
12].
Many variants of this concept have been presented in the multi-phase drives’ literature. Among these, the following are useful to put the contribution into context. In [
13], a nine-phase induction machine (IM) is considered. Several strategies are proposed using two and four VVs. In [
14], VVV are combined with modulated predictive current control considering space vector modulation. A bi-subspace predictive current control based on VVV is presented in [
15], where two groups of VVV are considered to regulate the fundamental and harmonic components, respectively. In this way, the
components due to non-linearities are regulated. Furthermore, different VVV sets are considered for the bi-subspace scheme. In [
16], VVV of two different magnitudes are used with a lookup table to exclude some combinations. CF tuning is avoided by transforming the torque and flux amplitude into an equivalent reference flux vector. The work in [
17] utilizes VVV that are synthesized using a transformation method to consider both flux and torque. In [
18], the increase in the predicted current caused by all VVs is divided into a combination of a group of basic VVs. In this way, the global optimization is converted into the optimization of just the basic voltage vector. In [
19], a group of four candidate VVs is generated based on a lookup table. The selection allows for just one commutation. The method is applied to an asymmetrical six-phase IM. Finally, additional auxiliary vectors of two different magnitudes are used in [
20] to reduce the torque ripple.
Regarding CF tuning, the usual practice is the use of Weighting Factors (WF) to give more relevance to some terms over others. Early publications use simulations and/or experiments to guide trial-and-error procedures for WF tuning, but more recently a Pareto analysis combined with a non-linear optimization method has been proposed in [
21], and similar approaches have been presented in [
8,
22], to tackle the complexity of WF and CF tuning in conventional (not VVV-based) FSMPSCC for six-phase IM drives.
In the previously cited literature, several figures of merit are considered. In this work, the objective is to minimize current tracking errors by keeping the switching frequency below limits. The criterion is relevant, as it leads to reduced losses without compromising dynamic performance. For a thorough assessment, the performance map analysis is carried out for a six-phase motor drive using FSMPSCC and considering all operating points, where the typical Medium-Large + Large VVV set is contemplated in conjunction with the Small + Medium-Large VVV set. The main contribution of our work is the proposal of a novel VVV structure that combines two VVV sets, where the optimal tuning for each VVV set is obtained for every operating point following the previous work in [
22].
In order to manage the continuous operating space, it is discretized by taking 12 sub-divisions of the load and 12 subdivisions of speed. Other choices are possible but this one gives a good trade-off between improved tuning and increased tuning effort. The proposal is then experimentally analyzed on a six-phase IM test rig. The analysis considers all operating points and possible tunings. This contribution is rarely encountered in the realm of FSMPSCC. It allows for a thorough assessment and also helps illustrate the obtained benefits.
The manuscript is organized as follows. The next section presents the scheme of FSMPSCC for a six-phase IM using VVV and introduces the experimental setup utilized for the evaluation and comparisons.
Section 3 details the performance maps for the two sets of VVV, while the proposed control structure, which combines both VVV sets, is introduced and experimentally analyzed in
Section 4. The conclusions are detailed in
Section 5.
2. FSMPSCC of a Six-Phase Induction Drive Using VVV
Figure 1 shows the FSMPSCC diagram of a VSI-driven 6 phase IM using a set of VVV. An outer loop, indicated as the PI controller in the diagram, is responsible for torque/speed regulation. The reference currents in the
plane are translated into the
subspace using the Park transformation given by the matrix
D as follows
where the flux position
is obtained as
. Flux and electrical torque are calculated using reference currents
and
. These quantities are set by the outer speed loop using typically a PI controller, although different control methods, such as MBPC, can be used [
23]. The electrical frequency can be found by considering the mechanical rotor speed and the slip frequency from
, where field orientation is assumed and
.
The measured phase currents
are converted to
using the Clarke transformation matrix
T based on power-invariant decoupling and defined as
At each discrete time k, the reference signal for the tracking of the stator current uses an amplitude calculated as . As a result, the references for stator currents are , , , . In this way, the FSMPSCC receives as input the reference currents , the actual currents and the sensed mechanical speed . With this information, the FSMPSCC obtains the optimal VVV to be applied during the next sampling period . This VVV is achieved by the appropriate selection of the VSI states S for their respective application times , over the duration of the sampling period . As a result, the stator currents of the IM, , evolve so that the components move to their reference values . The selection of the optimal VVV is made by exhaustive optimization over all possible control moves (elements of the VVV set). The procedure is repeated at each sampling period following the receding-horizon rule typical of predictive controllers.
In the present case, the multi-phase drive incorporates an asymmetrical six-phase IM. The machine has distributed windings where two independent and isolated neutral points are created. Two three-phase two-level VSIs are connected to a single DC link. The switching state of every VSI leg is associated with the can be defined using a binary variable
, being
if the lower switch is ON and the upper switch is OFF, and
if the opposite situation occurs. In
Figure 2, voltages are represented in
and
sub-spaces. To obtain those voltages aligned with the different phases. A decimal representation is used to identify the stator voltage in the
plane. Such a number is derived from the binary number corresponding to the switching state
S, where
, where the six phases have been numbered as
,
,
,
,
, and
.
The predictive model needed by the FSMPSCC is a discrete-time model for the evolution of
derived from the IM equations in the phase variables and from the VSI structure. The model uses the vector space decomposition approach to map the 6-phase space into sub-spaces
(energy conversion) and
(non-torque producing). The predictive model often is presented in state space. The state space vector
is obtained from measurements of phase stator currents. Control actions for the actual and next sampling periods
,
are the voltages corresponding to the VVV.
where matrix
A and vectors
,
are obtained as
,
,
. Matrices
and
are defined as
The coefficients used are: , , , , , , , , , , , , and , .
Vector
G accounts for the dynamics resulting from rotor currents that are usually not measured [
24]. Note that alternative methods can be found in the scientific literature [
25].
The selection of
in discrete time
k is made by minimizing CF, which can incorporate a number of different terms to convert a multi-objective optimization problem into a one with only one objective [
26]. The simplest CF penalizes the predicted control error
, where
represents the reference for the state space vector
i, and
the prediction two steps ahead. More complex objective functions can be used; in particular, penalization of VSI commutations is achieved by computing the number of the switch changes
produced in the VSI after configuration
is changed to
as
where
S is the state of the VSI switches. It must be taken into account that during a sampling period, there are different VSI states corresponding to the VVV in use. These are denoted as
for the first sub-period and
for the second sub-period. Recall from the introduction that each sub-period uses a fraction of the sampling period. In the present case, the lengths of each sub-period are
and
. With these considerations, the particular cost function
that will be used is defined as
where
denotes vector modulus and
is the WF that allows one to give more or less importance to the penalization of switching changes over the current tracking error.
The diagram in
Figure 1 can be used with different sets of VVV. Several possibilities can be applied, as explained below.
Figure 2 shows the voltage vectors, numbered from 0 to 63, for a six-phase VSI in the
and
planes. Four coronas (or dodecagons) are clearly visible. These are usually identified by the module of their voltage vectors in the
plane. For each VV, the attribute (S, M, ML or L) is derived from its modulus, comparing it to the modulus of all the other VVs. For example, the VVs receiving the attribute Small are those whose modulus is the smallest possible. Those lie in the innermost corona in the alpha-beta sub-space. Similarly, the medium (M), medium-large (ML), and large (L) attributes for VV are defined (see
Figure 2).
Similarly, VV combinations can be formed using S and ML vectors of the same angle. In this case, the sub-periods are for the S vector and for the ML vector. The set can be referred to as S + ML and again contains 12 elements. This set of VVV produces voltages that have on average less modulus than those of ML + L. This means that the DC link is not fully used and that some operating points may not be reachable despite the installed DC link voltage. Thus, the combination of S and ML voltage vectors has the potential to be used at low and medium load operating points. However, if one considers the set (S + ML) ∪ (ML + L) ∪ Z then 25 configurations are possible covering the whole operating interval.
With these definitions and observations, it is proposed to use the following sets:
Set 1. It contains 13 VVV obtained from the (ML + L) ∪ Z combinations.
Set 2. It contains 12 S + ML VVV in addition to the 13 VVV of the previous set, resulting in 25 VVV. It must be noted that set 2 contains set 1.
Table 1 summarizes the main aspects of the two VVV sets that will be used in this work, where C1 and C2 represent FSMPSCC using set 1 and set 2, respectively. Note that C1 and C2 need different computation times, resulting in different attainable sampling times. The sampling times depend on the hardware used, so the particular values of
Table 1 have been obtained from the multi-phase system presented below.
Multi-Phase System under Analysis
The proposal will be implemented in a multi-phase system based on an asymmetrical six-phase IM, whose parameters are shown in
Table 2. The electrical machine can be loaded independently of the speed, thanks to a coaxial DC machine that acts as a DC generator. A resistive variable load is connected to it. The DC link powers two three-phase Semikron VSI (SKS22F power converters), and the FSMPSCC technique using VVV is performed by a C program running on a TMS320F28335 DSP. Stator currents are measured using LEM LAH25-NP sensors, while mechanical speed is calculated using a GHM510296R/2500 digital encoder.
It is interesting to mention that identification plays a crucial role in this system. Model accuracy has a great impact on performance, as reported in several research articles [
27,
28]. Although model-free methods have been proposed [
29], an IM model is used here. To generate the performance maps for many different operating points and WF values, it is necessary first to correctly identify the machine model. In this case, different techniques have been used to derive the IM model, including the AC time domain, and stand still with inverter supply tests. Additionally, results for FSMPSCC with VVV, using different WF tunings, have been generated for assessment.
Figure 3 presents an example of the trajectories gathered in the experimental setup. The results correspond to
,
for a particular operating point with the C1 controller. From these trajectories, one can extract the values for the figures of merit that make up the performance maps.
After modeling and identification, a simulation environment is devised to be able to search for each operating point and WF value. This environment uses ODE solvers in MATLAB (R2017a version) for the continuous part of the dynamics, interacting with programs to emulate the controllers running at their specific sampling times. The computing time needed by the controller is carefully considered and tested against the Digital Signal Processor (DSP) used for the experiments.
3. FSMPSCC Assessment with Performance Maps
Two requirements are needed to use performance maps. First, a performance index or figure of merit must be defined, and second, a partition of the operating space must be provided. Regarding the performance index, in the case of FSMPSCC, the stator’s current tracking error and the switching rate at the VSI are usually considered. This would lead to several performance maps, one for each of the following variables:
,
,
,
, and
. However, the use of VVV takes care of the
components to a satisfactory level, and the number of performance maps can be reduced to three variables:
,
, and
. Furthermore, the components
and
should be quite similar for normal drive operation, so they can be merged in a single quantity taking the mean. In this way, we will use
, leaving the number of performance indices to two:
, and
. These quantities can be computed for each operating point by averaging over a time window
. The duration of this time window,
, should include some electrical cycles to be meaningful. In mathematical notation, one gets the following:
Regarding the partition of the operating space, for the particular case of FSMPSCC, the amplitude for the stator reference and the electrical frequency define the operating point. Depending on the physical characteristics of the system, these variables take values at certain intervals: , . The set of all operating points is included in the Cartesian product .
Optimal Tuning
As previously indicated, tuning in FSMPSCC consists of selecting the WF for the CF (
6). In [
22], the authors propose the use of a different tuning for each operating point of the system. In this way, the compromise between conflicting criteria is tackled independently for each operating point. This is in contrast with the traditional FSMPSCC setup, where the WF is computed considering the range of operation of the system as a whole [
9]. This method can be improved as it is realized that for different regions of operation, the terms present in (
6) take different relative values. In the case at hand, it will be assumed that the VSI limitations impose a limit
U on
. Then, the WF tuning should provide a
below the limit for all possible operating points, that is,
for all
. On the other hand, the tuning should provide the minimum tracking error in
for each operating point. This can be expressed as
As an example, the performance maps of
Figure 4 are presented. They correspond to controller C1 with
(left) and with an optimized
(right). The first tuning (
) provides a value of
kHz for all operating points using a single value of the WF for the whole operating space; this represents the standard method of tuning the FSMPS. It is interesting to compare this case with the optimized
(right), where a value of
kHz is also achieved. The values of
are clearly better for the optimized case. This kind of analysis is allowed by using performance maps since all operating points are easily visualized.
In the following, optimized tuning will always be considered. The criterion is that of Equation (
8). The method is the independent tuning of
for each VVV set and for each operating point. Since there is only one tuning parameter, almost any optimization method can be used [
30]. In our case, a first-order Newton-like method has been used. In order to manage the continuous operating space it is discretized by taking 12 sub-divisions of the load and 12 subdivisions of speed.
It must be stressed that in FSMPSCC, the controller configuration (selection of
) is not a trivial task, since the various performance indices (
,
) are affected by tuning in a way that depends on the particular operating point. As a result, some operating points might get a reduction in either index at the cost of an increase for other operating points. As an example, consider
Figure 5 where the optimal values of
are given for controller C1 for two scenarios: to attain
kHz (left) and to attain
kHz (right). A non-linear relationship between the optimal WF and the operating points is clearly visible. Please notice that for each operating point, there is a unique value for the WF. The existence of one or several peaks must not be interpreted as a choosing problem.
Performance maps can be used to compare different controllers even if they use different VVV sets. Using Equation (
9), the performance map of
Figure 6 is found. An optimal value of
is used for each operating point while keeping
(kHz), a value used for illustrative purposes. A comparison with previous methods is provided. Firstly, comparing the proposal to the previous case of
Figure 4, one gets a drastic reduction of
.
Table 3 supplements the graphical information by including the minimum, mean, and maximum values for each case. Of course, the reduction in
comes at the expense of an increase in
. It has been pointed out in previous publications that this must be the case [
8,
21]. However, it must be remarked that the merit of this tuning is not the simultaneous reduction of all indices, but an optimized solution considering the objectives.
Figure 6.
Performance map for the C2 controller, and each operating point, with an optimal value for (a) and values of (b).
Figure 6.
Performance map for the C2 controller, and each operating point, with an optimal value for (a) and values of (b).
Table 3.
Summary of Results for Comparison with Previous Methods.
Table 3.
Summary of Results for Comparison with Previous Methods.
| | (mA) | (kHz) |
---|
| Figure | min | mean | max | min | mean | max |
---|
C1 | Figure 4 | 47.4 | 55.0 | 58.3 | 0.98 | 6.0 | 12.4 |
C1 (opt.) | Figure 4 | 19.3 | 24.0 | 59.5 | 1.66 | 8.5 | 11 |
C2 (opt.) | Figure 6 | 15.8 | 23.3 | 44.3 | 2.51 | 10.0 | 11 |
C3 (opt.) | Figure 7 | 15.8 | 22.1 | 44.3 | 2.51 | 9.7 | 11 |
Figure 7.
Performance map for the proposed controller (C3) using the best set of VVV for each operating point.
Figure 7.
Performance map for the proposed controller (C3) using the best set of VVV for each operating point.
A similar procedure can be followed to assess the capabilities of C2. This controller uses a set of VVV composed of the S + ML and ML + L coronas, plus zero VV.
Figure 6 shows the performance map for the C2 controller,
and each operating point, with an optimal value for
.
These results are quite interesting and remarkable. First, it should be noted that most articles in the literature dealing with VVV focus on C1, and the C2 controller clearly reduces
at many points in the operating space. Second, one might argue that the C2 controller should always outperform C1, given the fact that it incorporates all the VVV that C1 uses plus the extra S + ML combinations. In other words, C2 has more degrees of freedom than C1. However, the reduced
is not verified for all operating spaces. The reason is that C2 has extra computations, compared to C1, and therefore cannot achieve the same sampling frequency, as shown in
Table 1.
4. FSMPSCC with Two VVV Sets
In view of the results of the previous section, it is natural to consider the possibility of using the best VVV set for each point of operation. In this section, the idea is shown to be feasible, and the regions assigned to each controller in the operating space are also stated to be easy to describe and use online.
The previously computed performance maps for C1 and C2 (
Figure 4 and
Figure 6) can be used to find the operating points where C2 outperforms C1. For these operating points, the optimal WF yields a lower value of
for C2, that is,
. The region, from now on named
, corresponds approximately to the operating points where
, as shown in
Figure 8. This allows an easy implementation of the proposed FSMPSCC with two VVV sets.
Figure 9 shows a diagram of the proposed FSMPSCC with the two VVV sets. The additions to the diagram in
Figure 1 are marked with a different color, to clarify the novelty and added complexity of our proposal. As stated previously, the outer controller is responsible for speed/torque regulation and usually operates on a larger time scale than the stator current control. This controller is responsible for issuing the reference values for the stator’s current control,
and
.
At this point, it is possible to check whether the actual pair belongs to simply by computing and comparing it with the limits indicated previously.
The extra operations needed to find the VVV set to be used at each sampling time are multiplication and two comparisons. These are easily implemented in any DSP. In addition, these additional computations impose a burden that is negligible compared to the rest of the operations: measurements, PI control, and optimization of the cost function. As a result, the proposed control scheme has almost the same computational load as the standard VVV method. For the particular hardware used in the experimental part (a TMS320F28335 DSP), the additional computational cost of the proposal is less thaN 0.5 s. Notice that the standard FSMPSCC algorithm takes on the order of 50 s. Furthermore, the operating point does not change every sampling period. This means that the outer controller can select which of the two constellations will be used.
Comparison with Previous Methods
The proposed controller using two VVV sets (from now on termed C3) will be compared with the help of performance maps. An optimal value for
will be used for each point of operation.
Figure 7 shows that C3 outperforms both C1 and C2. Furthermore, from
Table 3 one can see that C3 retains the positive traits of C2 with respect to the minimum and maximum values of
and a reduced mean value for said
. The switching frequency remains below the limits required by the objectives.
The proposed C3 controller is now compared to the C1 controller using the standard VVV set (set 1).
Figure 10 presents the trajectories for mechanical speed, stator currents on the
axes, and stator phase currents for a particular operating point that falls in
. The plot on the left corresponds to the standard C1 controller, and the plot on the right corresponds to C3. An improvement in current regulation is observed when using the proposal.
Regarding dynamic performance,
Figure 11 shows the experimental results for a speed ramp test. It can be seen that the proposed scheme is able to deal with transient states. During the test, the reference speed is changed from 200 (rpm) to 400 (rpm). The tracking of the reference speed is satisfactory (see the upper plot in
Figure 11), while stator phase currents perfectly evolve in the expected sinusoidal states.