# A New Open Loop Approach for Identifying the Initial Rotor Position of a Permanent Magnet Synchronous Motor

Authors: Qixin Zhu; Lei Xiong; Hongli Liu; Yonghong Zhu; Guoping Zhang
Journal: Journal of Control Science and Engineering
 (2017)

---

## Abstract

The precision of initial rotor position detection is critical for the start and running performance of permanent magnet synchronous motor (PMSM). This work describes a new open loop approach for identifying the initial position of a PMSM with an incremental encoder, even when a constant load torque is being applied. By giving a testing current with high frequency to the stator winding, the initial rotor position of a PMSM can be detected with reasonable accuracy. The rotor almost does not move during the process of identification. The FFT algorithms are used to remove the phase bias effects in identification. Our approach is quicker and simpler than the conventional approaches.


---

## Body

## 1. Introduction

Permanent magnet synchronous motor (PMSM) has the advantages of compact size, superior power density, high air-gap flux density, high torque/inertia ratio, high torque capability, high efficiency, and free maintenance, so it is widely used in high-performance applications such as industrial robot, semiconductor manufacturing equipment, and machine tools [1–5].The three main PMSM drive strategies are constant frequency ratio control (VVVF) [6, 7], field-oriented control (also called vector control (VC)) [8, 9], and direct-torque control (DTC) [10, 11]. These three drive strategies have their own advantages and disadvantages. With the development of a control theory, various alternative control methods, including switching control, feedback linearization, sliding mode variable structure, neural network control, adaptive control, and fuzzy control, have been used to control PMSM. Most of these control methods are based on the VC and DTC strategies. The PMSM control system exhibits improved performance when combined with these alternative control methods mentioned above [12–17].All high precision control methods for PMSM need the accurate information of motor position, which is usually acquired by position sensors, such as resolves, encoders, and potentiometers. Among these position sensors, incremental encoders are most widely used because they are relatively cheap and accurate. For a PMSM, maximum torque is generated when the internal magnetic field generated by the motor winding is at a right angle (90 degrees) with respect to the permanent magnet’s magnetic field. By controlling the magnitude and direction of the current flowing in the motor windings, the magnetic field generated by them can be made to rotate around the motor axis. The attraction between this rotating field and permanent magnet’s magnetic field is what causes motor shaft rotation. Therefore, unless the initial rotor position is known, it is impossible to start a PMSM with maximum torque.Over the past several decades, several methods for identifying the initial rotor position of a PMSM without the use of commutation signals have been proposed by some authors. Two basic approaches for initial position estimation are pulse signal injection and sinusoidal carrier-signal injection. The pulse signal injection approaches are often based on estimating the minimum inductance location [21]. An appropriate voltage pulse width signal is selected and applied to each phase winding of PMSM to partially saturate the stator iron to get the absolute position of the rotor at standstill in [22]. A search algorithm for an optimum voltage vector that uses effective magnetic saturation without rotating the rotor was introduced in [23]. Magnetic axis without polarity was estimated via an indirect flux detection by online reactance measurement and the polarity was detected by finding minimum inductance on the estimated magnetic axis in [24]. Injection of a high frequency, rotating, and/or pulsating sinusoidal carrier-signal has been widely used to estimate initial rotor position of PMSM using either voltage or current injection [25]. In [26], the Taylor series is used to describe the nonlinear magnetic saturation relationship between the current and the flux linkage in the d-axis rotor reference frame. The second-order term produces the second harmonic component of the carrier frequency, and the sign of its coefficient identifies the polarity of the rotor magnet being tracked. In [27], the dependence of inductance on rotor position in interior permanent magnet machines is used to estimate the position and the velocity of PMSM. The magnetic axis is identified from the current locus through rotating voltage injection and magnet polarity is detected by finding minimum inductance via square-wave voltage injection for an IPMSM in [28].However, on the one hand, some works above consider only the case of no-load condition [29] or make the rotor have a big movement [18]. On the other hand, including much of calculus, the identifying algorithms in some works above are very complex [16, 17, 21–28, 30]. In this paper, a new open loop approach is proposed to identify initial rotor position of a PMSM with current type driver, which can work well even when a constant load torque is being applied, and the identifying algorithm is very simple and quick. The rotor almost does not move during the process of identification. The FFT algorithms are used to remove the phase bias effects and sine curve fitting is used in our estimation. It does not need any additional circuits and sensors but can provide highly accurate absolute position information quickly.


## 2. Problem Formulation

In a PMSM, the fundamental torque generation equation is given by(1)Te=ktiacos⁡θr+ibcos⁡θr+2π3+iccos⁡θr-2π3,where Te denotes the generated electromagnetic torque, ia, ib, and ic denote the phase currents, kt is the phase torque constant, and θr denotes the rotor electrical angle. The phase currents can be described by the following formulas:(2)ia=Iqcos⁡θr′,ib=Iqcos⁡θr′+2π3,ic=Iqcos⁡θr′-2π3.Here Iq is the torque command current and θr′ is the measured rotor electrical angle by the controller. Substituting (2) into (1),(3)Te=32ktIqcos⁡θr′-θr.It is assumed that θr∈[0,2π), θr′∈0,2π. Obviously, Te gets the maximum value when θr′=θr. The electromagnetic torque Te is a positive value when |θr′-θr|<π/2, Te is zero when |θr′-θr|=π/2, and Te is a negative value when |θr′-θr|>π/2. The dynamic equation of a PMSM is described as follows:(4)Jθ¨r+Bθ˙r+TL=Te,where J, B, TL denote moment of inertia, viscous damping coefficient, and load torque, respectively. In real applications, compared to Te, the values of TL and Bθ˙r are very small [31]. When the load torque and part of viscous damping coefficient are omitted, (4) can be changed to(5)Jθ¨r≈Te.From (3) and (5), we can get(6)θ¨r≈3ktIqcos⁡θr′-θr2J.That is to say, the acceleration of the motor is proportional to the torque command current.


## 3. Identification Algorithms

Current type driver means that the command of the driver is the currents, and the current type driver is used in the overwhelming majority of servo system. The structure of the servo system is shown in Figure1. The digital value from the DSP controller is denoted as DAC; the DAC signal is connected to the input of D/A converter. The output of D/A converter is an analogy value denoting the command of the driver. So the DAC value determines the value of current command.Figure 1
The structure of the servo system.The identification can be divided into two steps; first step is to use a special high frequency current to excite the mechanical system at six stator flux vectors in open loop state and record the acceleration of the motor. The electrical angle of stator flux vectors is denoted byθs. The second step is to filter the data with Fast Fourier Transform (FFT) algorithm and identify the initial position of the rotor.


### 3.1. The Selection of Exciting Waveform

An approximate sinusoid current waveform is used to excite the mechanical system. On the one hand, we expect that the exciting time is as short as possible to decrease the moving distance of the motor, which needs the frequency of waveform to be as high as possible. On the other hand, we do not expect the frequency of exciting signal to drop into the resonance frequency of the mechanical system, which maybe causes the negative influence on the testing results.To make the motor have a minimum moving, the exciting signal (DAC signal, it is the torque command current) is designed as in Figure2. The waveform above the time axis is two sine half-waves with a period T1 and the waveform below the time axis is a sine half-wave with a period T2, where the two sine waves have the same amplitude and T1=5 ms, T2=10 ms. In continuous case, it can be evaluated that the motor will go back to the initial position when the motor is excited by the signal as in Figure 2 where “1” in y-axis denotes 500 LSB (Least Significant Bit). The acceleration waveform is similar to the waveform of DAC, so the acceleration, velocity, and the position waveforms of the motor are in Figures 3–5. The benefit of the selected waveform is that the absolute move of the motor is very small when exciting is over.Figure 2
The waveform of exciting DAC.Figure 3
The acceleration waveform of the system.Figure 4
The velocity waveform of PMSM in continuous case.Figure 5
The position waveform of PMSM in continuous case.But, in discrete case, the moving distance of a motor is not zero during one time of exciting when the two sine waves have the same amplitude. In our testing, there are 20 values of DAC in one time of exciting. The ratio of two amplitudes of sinusoid wave is 1.0256. The coefficient 1.0256 is set to make the total moving distance of the motor equal to zero. If there is no coefficient, the waveforms of the velocity and the position are in Figures6 and 7. That is to say, the motor cannot move back when exciting is over.Figure 6
The velocity waveform of PMSM in discrete case.Figure 7
The position waveform of PMSM in discrete case.


### 3.2. The Effects of the Phase Bias

When the driver of PMSM is well designed and adjusted, the driver has a low phase bias which cannot move the motor at all when the control system is closed. But in some cases the phase bias of the driver is big enough to move the motor when the control system is closed. The big moving of the motor will be negative to the test result of the initial position of the motor. The acceleration waveform of the DDR motor caused by the phase bias is in Figure8, where the count of a complete cycle is 2,000,000. This acceleration caused by the phase bias is a damped sinusoidal signal whose frequency is about 20 Hz. When the exciting signal is added to the motor, the acceleration waveform of this motor and the DAC waveform are in Figure 9. At this case, the signal of acceleration includes a low frequency signal which is caused by phase bias of the driver.Figure 8
The waveform of the acceleration caused by the phase bias.Figure 9
The waveforms of the acceleration and DAC.


### 3.3. The Identification of Initial Position of PMSM

To get accuracy analyzed result from the signal of the acceleration, the low frequency signal must be eliminated. Using FFT transform, the low frequency signal can be eliminated from the signal of acceleration. From Section3.1, we know the frequencies of exciting signal are 100 Hz and 200 Hz. The signal whose frequency is below 60 Hz should be eliminated. The waveforms of acceleration before FFT transform and after FFT transform are in Figure 10. The frequency distributed diagrams of the acceleration before FFT and after FFT are in Figures 11 and 12. From Figure 12, it is obvious that the amplitude of low frequency signal below 60 Hz is zero. The parameters of FFT transform are selected as follows. The sampling rate of the system is 2000 Hz, the number of dots in FFT is 256, and the frequency interval between two continuous dots is 2000/256 = 7.8125 Hz.Figure 10
The waveforms of the acceleration before FFT and after FFT.Figure 11
The frequency distributed diagram of acceleration before FFT.Figure 12
The frequency distributed diagram of acceleration after FFT.


### 3.4. The Sine Curve Fitting

Using the values of DAC and acceleration of the motor, we can make a correlative analysis.(7)bt=∫t=0Tdact×accelerationtdt.Here T=T1+T2/2=10 ms; then the values of b(t) should be sine waveform to six stators’ flux electrical angle. It is assumed that (8)bt=Bsin⁡θst+ϕ.Here B and ϕ are the amplitude and the phase of sine waveform. There are 20 values of DAC in completed exciting; and there are 20 values of acceleration in completed exciting. (9)bi=∑j=120dacj×accelerationj,i=1,2⋯6.In our testing of exciting, six stator flux electrical angles are π/2, 5π/6, 7π/6, 3π/2, 11π/6, and 13π/6, respectively. If we denote these six angles as θs(i), i=1,2,⋯6, then(10)a1=∑j=16bj×sin⁡θsj,a2=∑j=16bj×cos⁡θsj,k=∑j=16sin⁡θsj2=3.Then (11)B=1ka12+a22=13a12+a22,ϕ=arctga2a1,ifa1>0,π+arctga2a1,ifa1<0,π2,ifa1=0,a2>0,-π2,ifa1=0,a2<0.In our testing, a direct drive rotary (DDR) motor is used. The exciting amplitude of DAC is 500 LSB and the count of a complete cycle is 2,000,000; the six stator electrical angles of exciting and the values ofb(i) are in Table 1.Table 1
Stator electrical angle of exciting and the values ofb(i).
θ
s
(
i
)
b
(
i
)
1
π
/
2
31061.1
2
5
π
/
6
99409.5
3
7
π
/
6
95916.1
4
3
π
/
2
-
2473.3
5
11
π
/
6
-
99034.8
6
13
π
/
6
-
97396.6Then(12)a1=201522.2,a2=-275471.4,B=1ka12+a22=113771.6,ϕ=-0.939206,ci=Bsin⁡θsi+φ=113771.6sin⁡θsi-0.939206,i=1,2⋯6.The fitting error is (13)∑i=1611371.6sinθsi-0.939206-bi6B=6.92%.The initial rotor position of PMSM is φ=-0.9392.


### 3.5. The Selection of the Value of DAC

The value of amplitude of DAC in the system is very important in the process of testing. If the value of amplitude of DAC is too small, the signal of acceleration is submerged by the noises and the ratio of the signal and the noise is too small. If the amplitude of DAC is too large, on the one hand it is destructive to the mechanical system, and on the other hand the moving distance of the motor will increase, which is not allowed in many cases. In the testing, we can increase the value of DAC gradually. Normally, the value of fitting error will decline with the increase of the value of DAC. It is OK when the fitting error is below 10%.


### 3.6. The Testing of a Linear Motor

In another testing, a linear motor is used. A constant load is applied in this linear motor andmload=1 kg. The exciting amplitude of DAC is 3000 LSB and the count of a complete cycle is 27,200. When the exciting signal is added to the motor, the acceleration waveform of this motor and the DAC waveform are in Figure 13. For this linear motor, the phase bias of the motor is not big enough to move the motor when the controlled system is closed. That is to say, there is no low frequency signal caused by phase bias in the waveform of acceleration. As a result, there is no distinct difference between the waveform of the acceleration before FFT and that after FFT (Figure 14). Using the same process presented above, the initial rotor position of this linear motor is φ=0.9717 and the fitting error is 6.79%.Figure 13
The waveforms of the acceleration and DAC.Figure 14
The waveforms of the acceleration before FFT and after FFT.


### 3.7. The Estimation Error and Identification Time

The estimation error of this method is less than 8 electrical degrees and the total time taken for identification is less than 130 ms. The comparison between this method and other methods is illustrated in Table2. The identification times of the methods in [19, 20] are not given.Table 2
The comparison between this method and other methods.
The estimation error
Identification time
Method in [18]
5 electrical degrees
6 s
Method in [19]
6 electrical degrees
—
Method in [20]
7.4 electrical degrees
—
Method in this paper
8 electrical degrees
130 ms


## 3.1. The Selection of Exciting Waveform

An approximate sinusoid current waveform is used to excite the mechanical system. On the one hand, we expect that the exciting time is as short as possible to decrease the moving distance of the motor, which needs the frequency of waveform to be as high as possible. On the other hand, we do not expect the frequency of exciting signal to drop into the resonance frequency of the mechanical system, which maybe causes the negative influence on the testing results.To make the motor have a minimum moving, the exciting signal (DAC signal, it is the torque command current) is designed as in Figure2. The waveform above the time axis is two sine half-waves with a period T1 and the waveform below the time axis is a sine half-wave with a period T2, where the two sine waves have the same amplitude and T1=5 ms, T2=10 ms. In continuous case, it can be evaluated that the motor will go back to the initial position when the motor is excited by the signal as in Figure 2 where “1” in y-axis denotes 500 LSB (Least Significant Bit). The acceleration waveform is similar to the waveform of DAC, so the acceleration, velocity, and the position waveforms of the motor are in Figures 3–5. The benefit of the selected waveform is that the absolute move of the motor is very small when exciting is over.Figure 2
The waveform of exciting DAC.Figure 3
The acceleration waveform of the system.Figure 4
The velocity waveform of PMSM in continuous case.Figure 5
The position waveform of PMSM in continuous case.But, in discrete case, the moving distance of a motor is not zero during one time of exciting when the two sine waves have the same amplitude. In our testing, there are 20 values of DAC in one time of exciting. The ratio of two amplitudes of sinusoid wave is 1.0256. The coefficient 1.0256 is set to make the total moving distance of the motor equal to zero. If there is no coefficient, the waveforms of the velocity and the position are in Figures6 and 7. That is to say, the motor cannot move back when exciting is over.Figure 6
The velocity waveform of PMSM in discrete case.Figure 7
The position waveform of PMSM in discrete case.


## 3.2. The Effects of the Phase Bias

When the driver of PMSM is well designed and adjusted, the driver has a low phase bias which cannot move the motor at all when the control system is closed. But in some cases the phase bias of the driver is big enough to move the motor when the control system is closed. The big moving of the motor will be negative to the test result of the initial position of the motor. The acceleration waveform of the DDR motor caused by the phase bias is in Figure8, where the count of a complete cycle is 2,000,000. This acceleration caused by the phase bias is a damped sinusoidal signal whose frequency is about 20 Hz. When the exciting signal is added to the motor, the acceleration waveform of this motor and the DAC waveform are in Figure 9. At this case, the signal of acceleration includes a low frequency signal which is caused by phase bias of the driver.Figure 8
The waveform of the acceleration caused by the phase bias.Figure 9
The waveforms of the acceleration and DAC.


## 3.3. The Identification of Initial Position of PMSM

To get accuracy analyzed result from the signal of the acceleration, the low frequency signal must be eliminated. Using FFT transform, the low frequency signal can be eliminated from the signal of acceleration. From Section3.1, we know the frequencies of exciting signal are 100 Hz and 200 Hz. The signal whose frequency is below 60 Hz should be eliminated. The waveforms of acceleration before FFT transform and after FFT transform are in Figure 10. The frequency distributed diagrams of the acceleration before FFT and after FFT are in Figures 11 and 12. From Figure 12, it is obvious that the amplitude of low frequency signal below 60 Hz is zero. The parameters of FFT transform are selected as follows. The sampling rate of the system is 2000 Hz, the number of dots in FFT is 256, and the frequency interval between two continuous dots is 2000/256 = 7.8125 Hz.Figure 10
The waveforms of the acceleration before FFT and after FFT.Figure 11
The frequency distributed diagram of acceleration before FFT.Figure 12
The frequency distributed diagram of acceleration after FFT.


## 3.4. The Sine Curve Fitting

Using the values of DAC and acceleration of the motor, we can make a correlative analysis.(7)bt=∫t=0Tdact×accelerationtdt.Here T=T1+T2/2=10 ms; then the values of b(t) should be sine waveform to six stators’ flux electrical angle. It is assumed that (8)bt=Bsin⁡θst+ϕ.Here B and ϕ are the amplitude and the phase of sine waveform. There are 20 values of DAC in completed exciting; and there are 20 values of acceleration in completed exciting. (9)bi=∑j=120dacj×accelerationj,i=1,2⋯6.In our testing of exciting, six stator flux electrical angles are π/2, 5π/6, 7π/6, 3π/2, 11π/6, and 13π/6, respectively. If we denote these six angles as θs(i), i=1,2,⋯6, then(10)a1=∑j=16bj×sin⁡θsj,a2=∑j=16bj×cos⁡θsj,k=∑j=16sin⁡θsj2=3.Then (11)B=1ka12+a22=13a12+a22,ϕ=arctga2a1,ifa1>0,π+arctga2a1,ifa1<0,π2,ifa1=0,a2>0,-π2,ifa1=0,a2<0.In our testing, a direct drive rotary (DDR) motor is used. The exciting amplitude of DAC is 500 LSB and the count of a complete cycle is 2,000,000; the six stator electrical angles of exciting and the values ofb(i) are in Table 1.Table 1
Stator electrical angle of exciting and the values ofb(i).
θ
s
(
i
)
b
(
i
)
1
π
/
2
31061.1
2
5
π
/
6
99409.5
3
7
π
/
6
95916.1
4
3
π
/
2
-
2473.3
5
11
π
/
6
-
99034.8
6
13
π
/
6
-
97396.6Then(12)a1=201522.2,a2=-275471.4,B=1ka12+a22=113771.6,ϕ=-0.939206,ci=Bsin⁡θsi+φ=113771.6sin⁡θsi-0.939206,i=1,2⋯6.The fitting error is (13)∑i=1611371.6sinθsi-0.939206-bi6B=6.92%.The initial rotor position of PMSM is φ=-0.9392.


## 3.5. The Selection of the Value of DAC

The value of amplitude of DAC in the system is very important in the process of testing. If the value of amplitude of DAC is too small, the signal of acceleration is submerged by the noises and the ratio of the signal and the noise is too small. If the amplitude of DAC is too large, on the one hand it is destructive to the mechanical system, and on the other hand the moving distance of the motor will increase, which is not allowed in many cases. In the testing, we can increase the value of DAC gradually. Normally, the value of fitting error will decline with the increase of the value of DAC. It is OK when the fitting error is below 10%.


## 3.6. The Testing of a Linear Motor

In another testing, a linear motor is used. A constant load is applied in this linear motor andmload=1 kg. The exciting amplitude of DAC is 3000 LSB and the count of a complete cycle is 27,200. When the exciting signal is added to the motor, the acceleration waveform of this motor and the DAC waveform are in Figure 13. For this linear motor, the phase bias of the motor is not big enough to move the motor when the controlled system is closed. That is to say, there is no low frequency signal caused by phase bias in the waveform of acceleration. As a result, there is no distinct difference between the waveform of the acceleration before FFT and that after FFT (Figure 14). Using the same process presented above, the initial rotor position of this linear motor is φ=0.9717 and the fitting error is 6.79%.Figure 13
The waveforms of the acceleration and DAC.Figure 14
The waveforms of the acceleration before FFT and after FFT.


## 3.7. The Estimation Error and Identification Time

The estimation error of this method is less than 8 electrical degrees and the total time taken for identification is less than 130 ms. The comparison between this method and other methods is illustrated in Table2. The identification times of the methods in [19, 20] are not given.Table 2
The comparison between this method and other methods.
The estimation error
Identification time
Method in [18]
5 electrical degrees
6 s
Method in [19]
6 electrical degrees
—
Method in [20]
7.4 electrical degrees
—
Method in this paper
8 electrical degrees
130 ms


## 4. Conclusions

A novel approach to estimating the initial position of A PMSM is presented in this paper. The major merits of our identification algorithm are very simple and fast and the rotor almost does not move. It can identify the initial position of a PMSM with an incremental encoder more reliably. The more accurate closed loop identification algorithms will be investigated in the future.



---

*Source: 3720759-2017-11-26.xml*