1 Introduction

Interior permanent magnet synchronous motors (IPMSMs) feature a permanent magnet inside a rotor, which enables high efficiency and prevents losses during flux generation. Owing to their fast response and high torque density relative to their weight, IPMSMs have been widely employed in high-performance motor drives that require instantaneous torque control [1,2,3,4,5,6,7,8]. Instantaneous torque control in IPMSMs can be achieved using field-oriented control. However, this approach also requires information such as rotor position and speed. To obtain this information, conventionally, a position sensor, such as an encoder or a resolver, is mounted on the shaft of the motor. However, the use of such sensors requires additional expenses, space, and continuous maintenance of the system. Thus, several rotor position and speed estimation methods have been proposed to address these issues [9,10,11,12].

During medium-speed and high-speed operations of an IPMSM, an estimation method based on the extended back electromotive force (EMF) is typically used [13,14,15,16]. This sensorless method, which is based on the extended EMF, involves a simple estimation procedure and fewer calculations. However, at low speeds, the estimation accuracy afforded by this method decreases, since the EMF of the motor reduces proportionally to the speed of the rotor.

Various sensorless methods have been suggested to overcome this limitation of methods based on the extended EMF in low speed ranges. Among these, methods based on high-frequency signal injection are commonly used [17, 18]. In these methods, a high-frequency signal is injected into the output of the current controller. Then, position and speed information is estimated by processing the signal of the high-frequency component generated by the motor [19, 20]. This method achieves a higher estimation performance in low speed ranges, when compared to methods based on the extended EMF. However, the injection of high-frequency components causes ripples in the output current, which results in ripples in the output torque of the motor. The ripples in the output torque cause additional noise and high-frequency loss during operation [21]. To overcome this limitation, methods based on the zero-voltage vector were proposed in [22,23,24]. These methods estimate the position and speed information of the rotor under the application of a zero-voltage vector. During the application of this vector, the slope of the stator current is employed to calculate the rotor position.

This paper proposes a strategy for transitioning between two different sensorless methods. Sensorless control schemes based on an extended EMF and a zero-voltage vector are used for the operation of an IPMSM over its entire speed range. In low speed ranges, a method based on zero-voltage vectors is employed to estimate the rotor position. On the other hand, during medium-speed and high-speed operation, the rotor position is calculated using a method based on an extended EMF. A weight function is applied to the information estimated via each of the sensorless methods to ensure a smooth transition. To demonstrate the effectiveness of the proposed method, simulation and experiments have been conducted.

2 Sensorless control methods for IPMSMs

2.1 Basic modeling of an IPMSM

Figure 1 shows a space vector diagram of an IPMSM. The αβ axes, according to the stationary reference frame, are fixed to the stator. The dq axes form the synchronous reference frame, which is synchronized with the rotor position θr. The d axis corresponds to the north pole of the permanent magnet. The γδ frame, synchronized with the estimated rotor position, is the synchronous reference frame estimated using the extended EMF method. It has a position error of \(\tilde{\theta }_{EEMF}\) and \(\hat{\theta }_{EEMF}\) relative to the dq and the αβ axes, respectively.

Fig. 1
figure 1

Space vector diagram of an IPMSM

On rotating the reference frame of the dq axes, the voltage equation of an IPMSM is described as:

$$\left[ {\begin{array}{*{20}c} {v_{d} } \\ {v_{q} } \\ \end{array} } \right] = \left[ {\begin{array}{*{20}c} {R_{s} + pL_{d} } & { - \omega_{r} L_{q} } \\ {\omega_{r} L_{d} } & {R_{s} + pL_{q} } \\ \end{array} } \right]\left[ {\begin{array}{*{20}c} {i_{d} } \\ {i_{q} } \\ \end{array} } \right] + \left[ {\begin{array}{*{20}c} 0 \\ {\omega_{r} \phi_{f} } \\ \end{array} } \right]$$
(1)

where Ld and Lq are the inductances along the rotating dq axes, ωr is the rotor speed, and ϕf is the flux linkage. p and Rs represent the differential operator and the resistance of the stator, vd and vq are the stator input voltages along the rotating dq axes, and id and iq are the stator currents along the rotating dq axes. By transforming Eq. (1) from the rotating frame to the stationary frame, the voltage equation for the αβ axes can be expressed as:

$$\begin{gathered} \left[ {\begin{array}{*{20}c} {v_{\alpha } } \\ {v_{\beta } } \\ \end{array} } \right] = \left[ {\begin{array}{*{20}c} {R_{s} + p(L_{1} + L_{2} \cos 2\theta_{r} )} & {pL_{2} \sin 2\theta_{r} } \\ {pL_{2} \sin 2\theta_{r} } & {R_{s} + p(L_{2} - L_{1} \cos 2\theta_{r} )} \\ \end{array} } \right]\left[ {\begin{array}{*{20}c} {i_{\alpha } } \\ {i_{\beta } } \\ \end{array} } \right] \hfill \\ \,\,\,\,\,\,\,\,\,\,\, + \omega_{r} \phi_{f} \left[ {\begin{array}{*{20}c} { - \sin \theta_{r} } \\ {\cos \theta_{r} } \\ \end{array} } \right] \hfill \\ \end{gathered}$$
(2)

where vα and vβ are the voltages and iα and iβ are the currents along the αβ axes. In addition, L1 = (Ld + Lq) / 2, and L2 = (LdLq)/2.

2.2 Extended EMF method

The method based on an extended EMF calculates the rotor position and speed considering the direct proportionality between the EMF and the rotor speed. This method involves a simple procedure and fewer calculations, when compared to other estimation methods.

Assuming that the difference between Ld and Lq is sufficiently small, Eq. (1) can be described as:

$$\begin{gathered} \left[ {\begin{array}{*{20}c} {v_{d} } \\ {v_{q} } \\ \end{array} } \right] = \left[ {\begin{array}{*{20}c} {R_{s} + pL_{q} } & { - \omega_{r} L_{d} } \\ {\omega_{r} L_{d} } & {R_{s} + pL_{q} } \\ \end{array} } \right]\left[ {\begin{array}{*{20}c} {i_{d} } \\ {i_{q} } \\ \end{array} } \right] + \left[ {\begin{array}{*{20}c} 0 \\ {e_{EEMF} } \\ \end{array} } \right] \hfill \\ e_{EEMF} = \omega_{r} \left[ {\left( {L_{d} - L_{q} } \right)i_{d} + \phi_{f} } \right] - \left( {L_{d} - L_{q} } \right)pi_{q} \hfill \\ \end{gathered}$$
(3)

where eEEMF is an extended EMF represented on the dq axes.

When transforming Eq. (3) from the rotating reference dq frame to the estimated αβ frame, the voltage equation on the γδ frame is expressed as:

$$\begin{gathered} \left[ {\begin{array}{*{20}c} {v_{\gamma } } \\ {v_{\delta } } \\ \end{array} } \right] = \left[ {\begin{array}{*{20}c} {R_{s} + pL_{d} } & { - \omega_{r} L_{q} } \\ {\omega_{r} L_{q} } & {R_{s} + pL_{d} } \\ \end{array} } \right]\left[ {\begin{array}{*{20}c} {i_{\gamma } } \\ {i_{\delta } } \\ \end{array} } \right] + \left[ {\begin{array}{*{20}c} {e_{\gamma } } \\ {e_{\delta } } \\ \end{array} } \right] \\ \left[ {\begin{array}{*{20}c} {e_{\gamma } } \\ {e_{\delta } } \\ \end{array} } \right] = e_{EEMF} \left[ {\begin{array}{*{20}c} { - \sin \tilde{\theta }_{EEMF} } \\ {\cos \tilde{\theta }_{EEMF} } \\ \end{array} } \right]\left[ {\begin{array}{*{20}c} {i_{\gamma } } \\ {i_{\delta } } \\ \end{array} } \right] + \left( {\hat{\omega }_{EEMF} - \omega_{r} } \right)\left[ {\begin{array}{*{20}c} { - i_{\delta } } \\ {i_{\gamma } } \\ \end{array} } \right] \\ \end{gathered}$$
(4)

where eγ and eδ denote the extended EMFs represented on the γδ axes, \(\hat{\omega }_{EEMF}\) is the estimated speed using the extended EMF method, and ωr is the speed of the rotor. The extended EMFs, eγ and eδ, are estimated by a least order observer. Assuming that the error between the estimated speed, \(\hat{\omega }_{EEMF}\), and the actual speed, ωr, is sufficiently small, the correlation between the estimated extended EMF and the position error of the γδ axes, \(\tilde{\theta }_{EEMF}\), can be described as:

$$\left[ {\begin{array}{*{20}c} {\hat{e}_{\gamma } } \\ {\hat{e}_{\delta } } \\ \end{array} } \right] = e_{EEMF} \left[ {\begin{array}{*{20}c} { - \sin \tilde{\theta }_{EEMF} } \\ {\cos \tilde{\theta }_{EEMF} } \\ \end{array} } \right],\,\tilde{\theta }_{EEMF} = \tan^{ - 1} \left( { - \frac{{\hat{e}_{\gamma } }}{{\hat{e}_{\delta } }}} \right).$$
(5)

The value of \(\tilde{\theta }_{EEMF}\), obtained from Eq. (5), is used to estimate the rotor position using the position-speed estimator. A proportional-integral (PI) controller is used to obtain the estimated speed, \(\hat{\omega }_{o}\). Then, by integrating this estimated value, the position of \(\hat{\theta }_{EEMF}\) is obtained. The estimated speed, \(\hat{\omega }_{EEMF}\), used for the actual control of the IPMSM is obtained by applying a low-pass filter to \(\hat{\omega }_{o}\). Figure 2 depicts a block diagram of the position and speed estimation algorithm based on an extended EMF.

Fig. 2
figure 2

Block diagram of a position and speed estimation algorithm based on an extended EMF

2.3 Zero-voltage vector method

A sensorless method based on a zero-voltage vector measures the slope of the stator current when the zero-voltage vector is applied to the stator. Under this condition, the implied voltage to the stator is null. Therefore, Eq. (2), with the voltage equation on the stationary reference frame, can be rewritten as:

$$\begin{gathered} M_{L} \cdot p\left[ {\begin{array}{*{20}c} {i_{\alpha } } \\ {i_{\beta } } \\ \end{array} } \right] = - R_s\left[ {\begin{array}{*{20}c} {i_{\alpha } } \\ {i_{\beta } } \\ \end{array} } \right] - \phi_{f} \omega_{r} \left[ {\begin{array}{*{20}c} { - \sin \theta_{r} } \\ {\cos\theta_{r} } \\ \end{array} } \right] \hfill \\ \,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\, - \omega_{r} \left[ {\begin{array}{*{20}c} { - 2L_{2} \sin 2\theta_{r} } & {2L_{2} \sin 2\theta_{r} } \\ {2L_{2} \cos 2\theta_{r} } & {2L_{2} \cos 2\theta_{r} } \\ \end{array} } \right]\left[ {\begin{array}{*{20}c} {i_{\alpha } } \\ {i_{\beta } } \\ \end{array} } \right] \hfill \\ \end{gathered}$$
(6)

Where the inductance matrix, ML, is represented in terms of the inductance and rotor position as:

$$M_{L} = \left[ {\begin{array}{*{20}c} {L_{1} + L_{2} \cos 2\theta_{r} } & {L_{2} \sin 2\theta_{r} } \\ {L_{2} \sin 2\theta_{r} } & {L_{1} - L_{2} \cos 2\theta_{r} } \\ \end{array} } \right]$$
(7)

By multiplying the inverse matrix of ML on both side of Eq. (6), the equation can be rewritten as:

$$\begin{gathered} \frac{{di_{\alpha } }}{dt} = \frac{1}{{L_{d} L_{q} }}\left\{ {2L_{1} L_{2} \sin 2\theta_{r} - R_{s} \left( {L_{1} - L_{2} \cos 2\theta_{r} } \right)i_{\alpha } } \right\} \hfill \\ \,\,\,\,\,\,\,\,\,\,\,\, - \frac{{2L_{2} }}{{L_{d} L_{q} }}\left( {L_{1} \omega_{r} \cos 2\theta_{r} - 2L_{2} \omega_{r} - R_{s} \sin 2\theta_{r} } \right)i_{\beta } \hfill \\ \,\,\,\,\,\,\,\,\,\,\,\,\, + \frac{{\phi_{f} \omega_{r} }}{{L_{q} }}\sin \theta_{r} \hfill \\ \frac{{di_{\beta } }}{dt} = \frac{{2L_{2} }}{{L_{d} L_{q} }}\left\{ {\left( {R_{s} \sin 2\theta_{r} - L_{1} \omega_{r} \cos 2\theta_{r} - 2L_{2} \omega_{r} } \right)i_{\alpha } } \right\} \hfill \\ \,\,\,\,\,\,\,\,\,\,\,\, - \frac{1}{{L_{d} L_{q} }}\left\{ { - R_{s} \left( {L_{1} + L_{2} \cos 2\theta_{r} } \right) + 2L_{1} L_{2} \omega_{r} \sin 2\theta_{r} i_{\beta } } \right\} \hfill \\ \,\,\,\,\,\,\,\,\,\,\,\,\, - \frac{{\phi_{f} \omega_{r} }}{{L_{q} }}\cos \theta_{r} \hfill \\ \end{gathered}$$
(8)

Where \(\hat{\theta }_{z}\) is the estimated position calculated using the zero-voltage vector method. Multiply \(\sin \hat{\theta }_{z}\) with the terms reflected on the α axis, and multiply \(\cos \hat{\theta }_{z}\) with the terms reflected on the β axis. Then, the subtraction of these two equations yields:

$$\begin{gathered} \frac{{di_{\alpha } }}{dt}\sin \hat{\theta }_{z} - \frac{{di_{\beta } }}{dt}\cos \hat{\theta }_{z} \hfill \\ = \frac{1}{{L_{d} L_{q} }}\{ 2L_{1} L_{2} cos\left( {2\theta_{r} - \hat{\theta }_{z} } \right)i_{\alpha } - R_{s} \left( {L_{1} \sin \hat{\theta }_{z} + L_{2} \cos \left( {2\theta_{r} - \hat{\theta }_{z} } \right)} \right)i_{\alpha } \hfill \\ \,\,\,\,\, + R_{s} \left( {L_{1} \cos \hat{\theta }_{z} + L_{2} \sin \left( {2\theta_{r} - \hat{\theta }_{z} } \right)} \right)i_{\beta } + 2L_{1} L_{2} \omega_{r} \sin \left( {2\theta_{r} - \hat{\theta }_{z} } \right)i_{\beta } \hfill \\ \,\,\,\,\, + 2L_{2}^{2} \omega_{r} \left( {i_{\alpha } \cos \hat{\theta }_{z} + i_{\beta } \sin \hat{\theta }_{z} } \right)\} + \frac{{\phi_{f} \omega_{r} }}{{L_{q} }}\cos \left( {\theta_{r} - \hat{\theta }_{z} } \right). \hfill \\ \end{gathered}$$
(9)

Assuming that the position error of the estimated \(\widehat{d} - \widehat{q}\) axes is sufficiently small, according to the Taylor expansion, the following approximation is validated.

$$\begin{gathered} \cos \left( {\hat{\theta }_{z} + 2\tilde{\theta }_{z} } \right) = \cos \hat{\theta }_{z} - \frac{1}{2!}\left( {2\tilde{\theta }_{z} } \right)^{2} + o\left( {\tilde{\theta }^{2}_{z} } \right) \cong \cos \hat{\theta }_{z} \hfill \\ \sin \left( {\hat{\theta }_{z} + 2\tilde{\theta }_{z} } \right) = \sin \hat{\theta }_{z} + 2\tilde{\theta }_{z} + o\left( {\tilde{\theta }_{z} } \right) \cong \sin \hat{\theta }_{z} \hfill \\ \end{gathered}$$
(10)

where \(\tilde{\theta }_{z}\) is the position error between the actual position \(\theta_{r}\) and the estimated position \(\hat{\theta }_{z}\).

By applying the approximation of Eq. (10), Eq. (9) is rewritten as:

$$\begin{gathered} L_{q} \left( {\frac{{di_{\alpha } }}{dt}\sin \hat{\theta }_{z} - \frac{{di_{\beta } }}{dt}\cos \hat{\theta }_{z} } \right) = R_{s} \left( {i_{\beta } \cos \hat{\theta }_{z} - i_{\alpha } \sin \hat{\theta }_{z} } \right) \hfill \\ \,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\, + 2L_{2} \left( {i_{\alpha } \cos \hat{\theta }_{z} + i_{\beta } \sin \hat{\theta }_{z} } \right)\omega_{r} \hfill \\ \,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\, + \phi_{r} \omega_{r} . \hfill \\ \end{gathered}$$
(11)

The second term on the right side can be approximately regarded as the current along the d axis, and the actual speed in the equation, ωr, can be replaced by the estimated speed, which is the derivative term of the estimated rotor position. Therefore, Eq. (11) can be simplified as:

$$\frac{{d\hat{\theta }_{z} }}{dt} = \frac{{L_{q} }}{{\phi_{f} }}\left\{ {\left( {\frac{{di_{\alpha } }}{dt} + \frac{R}{{L_{q} }}i_{\alpha } } \right)\sin \hat{\theta }_{z} - \left( {\frac{{di_{\beta } }}{dt} + \frac{R}{{L_{q} }}i_{\beta } } \right)\cos \hat{\theta }_{z} } \right\}.$$
(12)

Using Eq. (12), the estimated speed can be calculated, and the estimated position can be calculated by integrating the estimated speed. Figure 3 shows a block diagram of the position and speed estimation algorithm based on the zero-voltage vector.

Fig. 3
figure 3

Block diagram of a position and speed estimation algorithm based on a zero-voltage vector

3 Proposed transition method

A sensorless control method based on an extended EMF, owing to its simple calculation, is commonly used for the high-speed operation of IPMSMs. However, during low-speed operation, the EMF of the motor decreases with the speed. Therefore, the estimation accuracy of this method decreases. Similarly, a method based on a zero-voltage vector, which enables less audible noise than the high-frequency injection method, suffers from decreased estimation accuracy during the high-speed operation of IPMSMs, where the application time for the zero-voltage vector is reduced.

As stated previously, estimation methods based on an extended EMF and a zero-voltage vector have different rated regions. Considering this, in the proposed scheme, methods based on an extended EMF and a zero-voltage vector are used to complement each other. Thus, a strategy for the sensorless operation of IPMSMs over their entire speed range is presented.

To realize sensorless control over the entire speed range of an IPMSM, several methods for transitioning between two different rotor position estimation strategies have been proposed. Among these, a typical approach is to select a transition point based on the rotor position errors of the two sensorless schemes [25,26,27]. However, position errors can differ depending on variations in the parameters of the motor and the load. As a result, the transition region also varies. To address this, a weight function is proposed to ensure smooth transitions between the sensorless control methods. In previous transition schemes, a weight function was applied to either the position information or the speed information [28, 29]. However, when a transition occurs at a constant speed, the estimation accuracy decreases owing to the accumulation of position errors from both of the sensorless methods, due to the estimated speed applied in the transition region. Therefore, in the proposed transition strategy, the weight function is applied to the position information and the speed information from each of the sensorless methods. The combined position and speed information is then used to determine the transition region.

In the proposed strategy for transitioning between two sensorless control methods, the rotor position is calculated using each of the sensorless methods. Figure 4 shows the weight function for of the each sensorless methods depending on the rotor speed, where f (n) and 1-f (n) are the weight functions of methods based on an extended EMF and a zero-voltage vector, respectively. The weight function is applied to the position and speed information, which is represented as:

$$\begin{gathered} \hat{\theta }_{r} = \hat{\theta }_{z} \times \left\{ {1 - f\left( n \right)} \right\} + \hat{\theta }_{EEMF} \times f\left( n \right) \hfill \\ \hat{\omega }_{r} = \hat{\omega }_{z} \times \left\{ {1 - f\left( n \right)} \right\} + \hat{\omega }_{EEMF} \times f\left( n \right) \hfill \\ \end{gathered}$$
(13)
Fig. 4
figure 4

Weight function for each of the sensorless methods according to rotor speed


where \(\hat{\theta }_{r}\) and \(\hat{\omega }_{r}\) are the position and speed over the entire speed range of the motor, which are estimated by a combination of the sensorless methods. In Eq. (13), the weight function is applied to the position and speed information from each of the methods to obtain the estimated position and speed of the transition range. When the rotor speed increases from low to high speeds, the weight function of the extended EMF method f(n) has values of 0 and 1 before and after the transition region, respectively. Furthermore, the weight function of the zero-voltage vector method is represented by subtracting f(n) from 1. Therefore, during low-speed operation, the IPMSM is controlled by information calculated using the zero-voltage vector method. For transitioning to the second sensorless method during medium-speed operation, the transition region is determined based on speed.

To simplify the implementation and to prevent rapid fluctuations of the information used in the control, the value of the weight function is changed into a linear form with a constant slope within the transition region. When the rotor speed increases, the weight function of the extended EMF method increases linearly until it reaches the value of 1. Therefore, at the end of the transition region, the IPMSM is controlled by the method based on the extended EMF.

The point at which the transition of the control scheme begins to change is determined by considering the number of consecutive zero-voltage vectors applied. Figure 5 shows the minimum requirements for employing the method based on the zero-voltage vector. In the sensorless method based on the zero-voltage vector, the slope of the stator current can be calculated when at least two consecutive zero-voltage vectors are applied. This implies that the amount of time the zero-voltage vector is applied to the motor should be greater than twice the control period, Ts. As stated previously, the amount of time the zero-voltage vector is applied decreases when the speed of the IPMSM increases. The transition region should not include the range where the zero-voltage vector is applied less than two consecutive times. This point can vary according to the specifications of the sensor, the micro control unit, and the motor.

Fig. 5
figure 5

Minimum condition for operating a zero-voltage vector method

Figure 6 shows a block diagram of the application of the weight function, and displays the process of calculating the position and speed information.

Fig. 6
figure 6

Block diagram of the application of a weight function

Figure 7 presents a block diagram of the rotor position estimation method over the entire speed range of an IPMSM, i.e., the proposed transition strategy. The rotor position is calculated using each of the sensorless methods for the entire speed range. The estimated position used for the speed control of the IPMSM is obtained from sensorless algorithms based on the weight function.

Fig. 7
figure 7

Block diagram of the proposed transition method

4 Simulation results

The proposed transition strategy was verified using a simulation model. Table 1 lists the parameters of the IPMSM used in this simulation.

Table 1 IPMSM parameters

Figure 8 shows simulation results of rotor position estimation during low-speed operation. It also depicts the estimated position and speed calculated using the method based on the extended EMF and that based on the zero-voltage vector. The IPMSM is controlled by information obtained by sensor when the sensorless methods calculate the position of the rotor. The speed of the IPMSM was increased starting from 0 rpm. Figure 8a indicates the estimation performance of the method based on the extended EMF. When the EMF during low-speed operation is significantly weak, the estimation accuracy of this method is low. On the other hand, as shown in Fig. 8b, the zero-voltage vector method can precisely estimate the position and speed, owing to the high ratio of the zero-voltage vector applied to the IPMSM.

Fig. 8
figure 8

Simulation results of rotor position estimation during low-speed operation: a extended EMF method; b zero-voltage vector method

Figure 9 shows simulation results of the rotor position estimation during high-speed operation. Similar to Fig. 8, the rotor position and speed calculated via each of the sensorless methods are compared to the results obtained by the sensor. Figure 9a indicates the estimation accuracy of the method based on the extended EMF during high-speed operation, where the speed is increased from 500 rpm. When the rotor speed and EMF are sufficiently high, the estimation performance of the method remains stable. However, as shown in Fig. 9b, the performance of the method based on the zero-voltage vector decreases during high-speed operation, since the length of time the vector is applied decreases as the rotor speed increases.

Fig. 9
figure 9

Simulation results of rotor position estimation during high-speed operation: a extended EMF method; b zero-voltage vector method

Figure 10 shows simulation results of the proposed transition method. The speed of the IPMSM was changed from 200 to 600 rpm, under a 15% rated load torque. The estimation method was changed between 350 and 450 rpm. The weight function of the method based on the extended EMF increased from 0 to 1 when the speed of the rotor increased through the transition region. Simultaneously, the weight function of the method based on the zero-voltage vector was reduced from 1 to 0 during this transition range. Thus, through a transition between the control methods, the IPMSM could be operated from the low speed to medium speed ranges.

Fig. 10
figure 10

Simulation results of the proposed transition method

Figure 11 shows simulation results of the proposed position estimation strategy over the entire speed range. A torque load of 10 Nm was applied, which is 15% of the rated torque. The rotor speed was varied from 0 to 1700 rpm in order to verify the effectiveness of the proposed method in all speed ranges.

Fig. 11
figure 11

Simulation results of the proposed position estimation strategy over the entire speed range

5 Experimental results

The validity and performance of the proposed transition method for the sensorless operation of an IPMSM have been experimentally investigated. Figure 12 shows the experimental setup, which is composed of a two-level inverter, a control board, and an IPMSM with the load. A TMS320F28335 micro control unit was used in the control board, and the parameters of the IPMSM were the same as those used for the simulation.

Fig. 12
figure 12

Experimental setup

Figure 13 shows the flag of the zero-voltage vector condition. This flag has a value of 1 if the zero-voltage vector is applied; otherwise, its value is 0. It is evident that the zero-voltage vector is applied three consecutive times at 450 rpm, and only once at 600 rpm. In this study, the transition region was set as 350–450 rpm, considering the number of times the zero-voltage vector is consecutively applied. Although the rotor position can be calculated until the zero-voltage vector is consecutively applied twice, the transition region was limited to three consecutive applications of the vector to ensure the accuracy of the estimated information.

Fig. 13
figure 13

Flag of the zero-voltage vector condition

Figure 14 shows experimental results of the rotor position estimation depending on the speed of the IPMSM. Through current control of the IPMSM, the reference current of the q axis was fixed at 5 A. The actual position of the rotor, which is used for current control, is measured using an encoder. Figure 14a shows the estimation performance of each of the sensorless methods with respect to the actual value. The speed of the rotor was fixed at 90 rpm, where the estimation performance of the method based on the extended EMF was unstable due to a weak EMF. On the other hand, due to the sufficient application of a zero-voltage vector, the position estimation performance of the method based on the zero-voltage vector remained stable.

Fig. 14
figure 14

Experimental results of rotor position estimation depending on the speed of the IPMSM: a 90 rpm; b 600 rpm

Figure 14b shows experimental results for the case of medium-speed operation. The speed of the rotor was fixed at 600 rpm. In this figure, the reduced performance of the method based on the zero-voltage vector can be observed. However, the accuracy of the method based on the extended EMF increased, when compared to that during low-speed operation, due to the stronger EMF component.

Figure 15 shows experimental results of the proposed transition method. In this case, the motor speed was varied from 200 to 600 rpm, under the application of 15% of the rated load torque. The transition region was set as 350–450 rpm. In the transition region, the weight function of the extended EMF method, f (n), increased linearly from 0 to 1. By combining the sensorless methods, the control schemes can be smoothly changed. The zero-voltage and extended EMF methods were used for speed control before and after the transition region, respectively. Through the proposed transition method, the IPMSM can be operated in both the low and medium speed ranges.

Fig. 15
figure 15

Experimental results of the proposed transition method

Figure 16 shows experimental results of the proposed position estimation strategy over the entire speed range. The speed was changed from 0 to 1700 rpm to demonstrate the applicability of the proposed method over the entire speed range of the IPMSM, under the application of 15% of the rated load torque.

Fig. 16
figure 16

Experimental results of the proposed position estimation method over the entire speed range

6 Conclusion

This paper proposes a method for transitioning between two sensorless rotor position estimation methods. Through the proposed method, rotor position estimation over the entire speed range of an IPMSM can be achieved. For position estimation, methods based on the extended EMF and the zero-voltage vector were employed. The estimation method based on the zero-voltage vector was adopted during low-speed operation, while the method based on the extended EMF was adopted during high-speed operation. In the proposed transition method, a weight function was applied to the calculated information (i.e., the position and speed of the rotor) in order to ensure smooth transitions between the two methods. The validity of the proposed transition method was verified via simulations and experiments.