Sensorless Finite-Control Set Model Predictive Control for IPMSM Drives

This paper investigates the feasibility of a sensorless field-oriented control combined with a finite-control set model predictive current control (FCS-MPC) for an interior permanent-magnet synchronous motor. The use of an FCS-MPC makes the implementation of most of the existing sensorless techniques difficult due to the lack of a modulator. The proposed sensorless algorithm exploits the saliency of the motor and the intrinsic higher current ripple of the FCS-MPC to extract position and speed information using a model-based approach. This method does not require the injection of additional voltage vectors or the periodic interruption of the control algorithm and consequently it has no impact on the performance of the current control. The proposed algorithm has been tested in simulation and validated on an experimental setup, showing promising results.


I. INTRODUCTION
ERMANENT magnet synchronous motors (PMSMs), compared to other motor types like induction motors, offer several advantages in the field of variable-speed AC drives. They have higher efficiency, higher performance, compact construction, higher torque per volume ratio. In particular, interior permanent magnet synchronous motors (IPMSMs) provide an increased efficiency by taking advantage of the reluctance torque and of the constant-power operation mode obtainable by flux-weakening the machine. To achieve high performance, PMSMs are usually controlled with FOC; hence position and speed information are needed and typically measured with a position sensor such as an encoder. Additionally, IPMSMs allow simpler sensorless rotor position estimation using either back electromagnetic force (EMF) or the saliency effect. The possibility of avoiding the installation of a position sensor results in the elimination of a fragile component from the system and in a significant reduction of the overall drive cost and size. This explains the numerous attempts made to eliminate the position sensor.
Sensorless control techniques can be divided in two main groups. The first one is represented by the fundamental excitation techniques [1][2][3][4][5][6], which estimate the rotor speed and position exploiting the back electromotive force generated by the permanent magnet. The second one corresponds to the saliency tracking techniques [7][8][9][10][11][12][13][14], which, injecting a persistent highfrequency signal, exploit the rotor anisotropy to reconstruct its position. The former methods do not require any additional signal injection, but, in case of techniques based on the estimation of the back electromotive force (EMF), they hardly operate at low speeds and surely not at standstill due to the lack of useful information. The latter methods have the advantage of working also at standstill so avoiding the use of open loop control strategies for starting the motor, but require the injection of additional high-frequency signals leading to increased torque ripple, noise and losses. The INFORM method [5], for example, requires periodic interruptions of the modulation/control and the injection of a particular set of voltage vectors for generating a current transient sufficiently large to appreciate the inductance variation with position. Many of the previously described sensorless techniques cannot be immediately used in conjunction with a FCS-MPC as a consequence of its different way of operation with respect to a traditional linear controller and the absence of a modulator. FCS-MPC is a relatively new and powerful control approach that has received, in recent years, a great interest from the academic community [15][16][17][18][19][20]. It uses the model of the system to predict its future states subject to every possible control action. The best control action is then chosen by minimizing a cost function. This approach permits to remove the modulator, reduces the control sample time and decreases consequently the response time. This advantage becomes however a drawback if the drive has to be controlled without a position sensor. The absence of a modulator and consequently of a reference voltage signal makes the previously described sensorless methods difficult to be implemented without deep modifications to them and/or to FCS-MPC itself. For example, in [21] a back-EMF observer has been combined with a FCS-MPC. For estimating the rotor position and speed, a simple PLL-structure, derived from the motor mathematical model and which tracks the flux linkage vector, has been chosen to limit the computational burden and maintain the short sample time and the high bandwidth, which are contradistinctive features of the MPC. This paper investigates the feasibility of implementing a sensorless control for the whole motor speed range in conjunction with a FCS-MPC. The absence of a modulator in the FCS-MPC makes the injection or reconstruction of a continuous control input very difficult since the controller operates in the discrete space of the inverter states. For this reason, the implementation of sensorless techniques based on the injection of continuous (usually sinusoidal) signal is not straightforward in conjunction with FCS-MPC. A different approach is therefore proposed in this work, in order to combine FCS-MPC to a sensorless algorithm. It is based on the mathematical IPMSM model and allows the estimation of the rotor position starting from the current measurements, the knowledge of the voltages applied to the motor and its parameters. Although being a model-based method, the proposed approach allows the estimation of the rotor position at standstill by exploiting the higher current ripple which typically is considered a drawback of the FCS-MPC. Being the ripple amplitude approximately unaffected by the speed, the rotor position information extracted from the current ripple is also used at higher speeds. Moreover, due to the particular way the mathematical model is rearranged and used, the back-EMF is not considered at all for the rotor position estimation and so all the problems deriving from its large variation with temperature are eliminated. Since reference voltages are used in place of measured quantities to avoid the need for costly, bulky and fragile voltage sensors, an adequate knowledge of the voltage effectively applied to the motor is required. For this reason dead-time compensation has been also implemented to reduce the voltage distortion introduced by the inverter to acceptable levels. The main contribution of the proposed paper is investigating the feasibility of implementing the emerging FCS-MPC technique in a drive application without position sensor. The absence of a modulator makes the implementation of the standard sensorless control techniques a difficult task. For this reason a new sensorless algorithm that takes advantage of the bigger current ripple generated by FCS-MPC is proposed. The paper is organized as follows. Section II describes in details the proposed sensorless method, Section III presents the FCS-MPC algorithm used for the current control loop, Section IV and V show the obtained simulation and experimental results and finally section VI reports the conclusions.

II. SENSORLESS ALGORITHM
The machine inductances in a stationary reference frame are dependent from the rotor position due to the magnetic saliency. This feature is exploited in the proposed algorithm in order to estimate the rotor position θ from the measurements of electrical quantities. The mathematical model for an IPMSM in the α-β reference frame is: where (2 ) ] are the motor voltages, , the machine currents and , the flux linkages. θ is the rotor electrical position, is the peak flux linkage established by the magnets, is the stator resistance and , are q-axis and d-axis inductance in the rotor reference frame. The model in (2) has been discretized using the Euler discretization method. The discretization around a generic time instant k leads to the following equations: where ∈ ℜ 2 2 and ∈ ℜ 2 2 are terms dependent on , , , cos(2θ k ), (2 ), the system sample time and the electrical speed , as better described in the Appendix, while the subscript k denotes the time instant.
Applying a time shift of one sample ahead to (3) +1 ∈ ℜ 2 2 and +1 ∈ ℜ 2 2 have the same expression of and but are dependent on (2 +1 ) and (2 +1 ) where +1 = + . Subtracting (3) and (4), assuming = +1 and rearranging the equations the following system is obtained where +2 ∈ ℜ 2 1 and +2 ∈ ℜ 2 1 are dependent on the parameters of the system , , , , on the rotor speed and on measurements , . FCS-MPC generates a lower average switching frequency compared to the controller sampling frequency (4 to 20 times smaller in the proposed control scheme, depending on the motor speed). For this reason it is possible to assume the term ω k T s sufficiently small, being typically few tens of microseconds. Terms 1 and 2 can be therefore neglected without compromising the model accuracy. With this simplification and applying a time shift of two sample, (5) reduces to From (5) it can be noticed that vector +2 is the result of the rotation of vector +2 by 2 . At each control step it is then possible to compute an estimation of the vector K as where ̂− 2 is the estimated rotor position. Defining −2 as the error between the estimated electrical rotor position and the real one, it is possible to note from Fig. 1 that 2 −2 is also the angle between the vectors and ̂.
The cross product between and ̂ can be expressed as follows However it can also be expressed in the i, j, k coordinate notations has Equating the right side of (10) and (11) It is therefore possible to compute the sine of the angle between and ̂ solving (12) for It is worth to note that terms and depend on system inputs (voltages) and outputs (currents) at different sampling time. Analyzing their structure it can be noted that, in a perfect steady state condition where both inputs and outputs do not change, these terms are equal to zeros and the estimation is no longer possible. This is coherent with equation (5) , which has been derived from the subtraction of system equation at different sampling time, and reflects the persistent excitation principle [22]. Fortunately, systems controlled with commutated inverters never reach a complete steady state condition: the discontinuous voltage generated by the inverter creates a current ripple with variable amplitude depending on different system parameters. Using a PWM modulation technique however, steady state current variation is very small, especially at low speed. This results in a small absolute value of parameters and that cause a very noisy and often unusable position estimation. For this reason a signal injection is usually adopted for position estimation at low or zero speed in order to increase the current variation. FCS-MPC produce a bigger current ripple at low speed compared to PWM modulation techniques in favor of a lower switching frequency. This ripple results in bigger and modules permitting therefore a more accurate position estimation without the need of a signal injection. To estimate the rotor speed and position using the information of (13), an observer of the mechanical system has been implemented [23]. The observer used in this paper is in the form J is the system inertia, ̂ is the estimation of the electrical speed, is the electromagnetic torque and , = 1,2,3, are the observer gains. The observer has been extended [24] to estimate also ̂, that is the estimation of the load torque applied to the motor shaft. It should be noted that the observer described by (15) is nonlinear due to the sinusoidal correction term (2 −2 ); the asymptotic stability of this observer has been however demonstrated in [25].
The algorithm can be summarized as follows: 1. At k th time instant the new currents are measured and the vectors and are computed 2. The vector ̂ is computed according to (8) 3. The sine of the position error is computed as shown in (13) 4. The new observer state is updated according to (15) III. FIELD ORIENTED CONTROL WITH FCS-MPC Power converters have an intrinsic finite number of states, depending on the power devices on-off combinations, each corresponding to a different possible control action. FCS-MPC takes advantage of this propriety to predict the behavior of the controlled system for every possible converter configurations over a few sample time instants. The optimal control actions are chosen minimizing a cost function that depends on both the predicted state and the reference signals. Only the first optimal control action is applied and at the next sample instant the procedure is repeated. FCS-MPC is a very powerful control strategy that permits to regulate different system variables with a single control action simply designing conveniently the cost function. Fig. 2 shows the flow chart of the FCS-MPC utilized in this paper. At the beginning of each sample time, the motor currents and DC bus voltage are sampled. Subsequently the new speed and position are estimated as explained in section II. The short sampling period and the high computational cost required by the FCS-MPC imply that the new control action is available to be applied only at the beginning of the next sampling instant. This generates a sample delay in the control loop that must be compensated. To accomplish this task the system state at the (k+1) th sampling period has been predicted using the optimal control action obtained at the (k-1) th sampling period [26]. The system state at the (k+2) th sampling period is then predicted for each of the 8 possible control actions. The system has been modelled in the synchronous reference frame by the following equations The system has been subsequently discretized resulting in The objective in a FOC control of a PMSM is to control the and currents to their reference values. For this reason the following cost function has been chosen where * and * are the reference currents. The cost function (20) is computed 8 times, once for each of the 8 predictions previously described. The cost function with minimum value is selected as optimal and the related inverter state is then chosen and applied during the next sampling period. Analytical stability analysis of systems based on FCS-MPC is a challenging task due to the intrinsic discontinuity of the controller and therefore is still an open topic in literature. In the presented work however, system stability has been verified empirically trough simulative and experimental tests. As it will be shown in the next sections, the complete control loop demonstrates good and stable behaviors in both low and high speed working condition.

IEEE TRANSACTIONS ON INDUSTRIAL ELECTRONICS
As opposed to standard SVM-based methods, FCS-MPC produces a variable switching frequency. It is however possible to introduce an average switching frequency (ASF) as the average number of turn-on and turn-off of a single inverter switch in a second. TABLE I shows the ASF and current Total Harmonic Distortion (THD) using FCS-MPC computed through a simulative model at different motor speeds. It is possible to notice from the table that the ASF increases in a proportional way with the motor speed. This behavior is also reflected on the current distortion resulting, as opposed to PWM-based techniques, in an almost constant ripple over the whole speed range.

IV. SIMULATION ANALYSIS
The proposed method has been firstly analyzed in simulation. Fig. 3 shows the overall control structure. The FCS-MPC block implements the controller described in the previous Section while the sensorless block implements the proposed algorithm for the estimation of the rotor position described in Section II. Different research works have appeared in literature proposing the speed loop embedded within the FCS-MPC [18,19,27,28]. However, the proposed sensorless position detection is not affected by the control strategy used to regulate the motor speed. Therefore, for the sake of clarity and simplicity, a standard proportional integral (PI) controller has been used for the speed loop. In this work, no current profiling technique like Maximum Torque Per Ampere (MTPA) has been implemented and the torque is generated using only , while is controlled to zero. The parameters used to simulate the model are reported in TABLE II. The observer gain Γ has been set placing the closed loop poles of the linearized system (15) in a Butterworth configuration. The frequency of such poles should be selected as a compromise choice between a fast transient response and a noisy estimation: a larger frequency results in a faster transient response, but also in a noisier estimation. In this work an observer bandwidth of about 10 Hz has been used. Fig. 4 shows the response of the proposed algorithm to a speed variation from 200 to -200 electrical rad/s. The current has been saturated to 10 A accordingly to the maximum RMS current of the motor used in the experimental set-up in order to have consistent results between simulation and experimental tests. It can be noticed how the error in the rotor position estimation increases during each transient, but remains limited so allowing a proper control of the machine.

A. Robustness analysis
In order to verify the robustness of the proposed system to parameters uncertainties a simulative robustness analysis has been carried out. In a real application both the stator resistance and the inductance can vary. The first one is mainly affected by temperature with an uncertainty up to 30% while the latter  can change due to ferromagnetic saturation. The test, whose results are reported in Fig. 4, has been therefore performed again with a variation of the system parameters with respect to the ones used in the controller. Fig. 5 and Fig. 6 show a speed reversal test with a 30% resistance variation and 10% inductance variation, respectively. As it can be noticed from the figures, in these conditions the estimation becomes noisier. However, the system is still stable and the controller is able to regulate the system states as required.
The simulative analysis has also highlighted the need of compensating the voltage distortion introduced by the deadtime of the switches [29]. In fact, to ensure proper operation of the inverter, the bridge shoot through should be always avoided, since it will cause additional losses or even thermal runaway. As a result, failure of IGBT devices and even of the whole inverter is possible. In order to avoid bridge shoot through it is always recommended to add a "dead time" into the control scheme.Usually several micro seconds are required for the dead-time which are no longer ignorable in the inverter modelling. The proposed sensorless algorithm needs the real applied voltage by the inverter at each sample time. Neglecting a possible distortion introduced by the dead-time results in inaccurate and useless position estimation. For this reason, the dead-time compensation algorithm proposed in [30] has been used in both simulative and experimental results. Fig. 7 shows the state of the higher and lower gate signals of the j th inverter leg and the output phase voltage 0 of the inverter in the case of a positive phase current. When the upper IGBT turns-off the current continue to flow through the lower diode, delaying the change of the output voltage. As soon as the lower IGBT is turned on the output voltage switches to 2 . To obtain a good position estimation, the output voltage distortion is therefore compensated considering as applied voltage its mean value over a sample time. As the voltage error introduced by the dead-time is constant, if absolute voltage values are considered, its relative influence is lower at high speeds and higher at low speeds, being the voltage amplitude applied to motor terminals nearly proportional to the motor speed. Therefore dead-time compensation is needed especially at low speed operations.

V. EXPERIMENTAL RESULTS
The proposed method has been finally tested on an experimental set-up. It is composed by an IPMSM coupled with a DC motor as shown in Fig. 8. The IPMSM is fed by a two level IGBT converter. The control has been implemented on a C6713 Texas Instruments DSP coupled with a Microsemi A3P400 FPGA, with a sample time of 25 . The mechanical and electrical system parameters have been identified with the approach proposed in [31,32] and are shown in TABLE . The sensorless methods based on the rotor saliency can identify the   initial rotor electrical position with an uncertainty of 180 degree. Different initial rotor polarity estimation procedures have been proposed in literature [33,34]. They can be easily applied with the proposed sensorless algorithm without the necessity of any modification. For this reason the problem of identifying the initial rotor polarity is not addressed in this paper and it is assumed to be known. At system power up, the controller is started in only current closed loop and a value of current is injected to allow the estimator to lock to the rotor angle. Fig. 9 shows the transient of the error between rotor position estimation (arbitrary set equal to 0 at system start-up) and the real rotor position (in the proposed test equal to 60°). During the test the current has been set equal to 3 A. It is evident how the estimated electrical position rapidly converges to the actual one. The system is subsequently run in speed closed loop mode and is thereafter ready for operation. Fig. 10 shows a speed reversal from a speed of 50 rad/s to -50 rad/s where it is possible to note a good match between the real and estimated angle for the whole speed transient. To evaluate the robustness of the proposed method to higher speed, Fig. 11 shows the steady state behavior of the system at nominal speed, namely 150 rad/s. The system has been also tested at 5 rad/s to validate its reliability at low speed as shown in Fig. 12. Finally Fig. 13 and Fig. 14 show the rotor position estimation error with the machine rotating at a constant speed of 50 and 5 mechanical rad/s respectively, with the nominal load torque applied. This test is particularly useful to evaluate the  robustness of the proposed algorithm against inductance variation due to flux saturation. Even if a slight offset appears in the position estimation, this test demonstrates the robustness of the proposed method to inductance changes.

VI. CONCLUSION
This paper introduces a new model based algorithm to estimate the rotor position of an IPMSM using a FCS-MPC so to allow drive sensorless control. This new approach also exploits the characteristic current ripple naturally generated by FCS-MPC to estimate the rotor position in every load and speed condition without the necessity to superimpose any additional voltage or current signal. This work therefore demonstrates the feasibility of sensorless control even when using a Finite control set Model predictive drive control approach and without the use of a standard modulation system. The good simulation and experimental results show the potentiality of the proposed method.

APPENDIX
In the following the omitted terms of (3)-(5)are reported.