This study proposes a classification and compensation algorithm of two nonideal output signals of a resolver to reduce position errors. Practically, a resolver generates position errors because of amplitude imbalance and quadrature imperfection between the two output signals of the resolver. In this study, a digital signal processor system based on a resolvertodigital converter is used to reconstruct the two output signals of the resolver. The two output signals, “sin” and “cos,” can be represented by a unit circle on the
xy
plot. The classification and compensation of the errors can be obtained by using the radius and area of the circle made by the resolver signals. The method computes the integration of the areas made by the two resolver output signals to classify and compensate the error. This system cannot be applied during transient response given that the area integration during the transient state causes an error in the proposed method. The proposed method does not need any additional hardware. The experimental results verify the effectiveness of the proposed algorithm.
I. INTRODUCTION
A resolver is a type of rotary electrical transformer used for measuring rotation degrees. It has also been used as position sensors to provide absolute position information in industrial applications for many years. One rotating reference winding and two stator windings make up the inside part of the resolver. The reference winding is fixed on the rotor and rotates jointly with the shaft. The two stator windings are configured at 90° from each other to generate sine and cosine signals
[1]

[4]
.
The output signals of the resolver contain the angular position information and can be converted to binary signal through the resolvertodigital converter (RDC), digital signal processor (DSP), or fieldprogrammable gate array
[5]

[8]
. A cheap DSP system based on RDC can be used for costeffective operations. C.C. Hou’s method is used for the implementation of RDC by using DSP
[8]
.
Fig. 1
shows the DSP system based on RDC.
Fig. 2
(a) shows the experimental waveforms, which are excitation signals by the PWM of the DSP, actual output signal of the resolver, and sampled data values of the output signal in the short term.
Fig. 2
(b) shows the two actual output signals of the resolver and the sampled signal by the DSP. The rotor position can be obtained by either the angle tracking observer (ATO) or the trigonometric method
[9]
.
DSP system based on RDC [3].
(a) The excitation signal and sin/cos output signals of the resolver. (b) The sin/cos outputs of the resolver [3].
The sampling limitation effect as a result of the highspeed operation of the machine produces a position error in the ATO or trigonometric method, even if the two output signals are ideal. Thus, ATO is used to obtain the rotor position with sufficient sampling. Moreover, highspeed operation is not considered in this study.
In a real system, the resolver output signals contain position errors in the resolver itself as well as in the resolver signal processing circuits
[10]

[14]
. As a result, the actual resolver output signals have nonideal characteristics, such as offset error, scale error, or phase error. Considering these nonideal characteristics of the resolver signals, position information can be considerably distorted.
To solve these problems, many compensation algorithms have already been proposed
[10]

[14]
. The methods proposed in
[10]
and
[11]
correct most of the nonideal characteristics, including the one originating in the RDC. However, these methods require significant labor and time, excessive computation burden, and hardware. The method proposed in
[12]
introduced the gain–phase–offset correction method only with a low computing effort. The proposed method in
[13]
was only presented to integrate the ideal rotor position and obtain the magnitude of the position error according to the distorted rotor position because of amplitude imbalance, without considering the variation of the rotor speed and bandwidth of the closedloop current control. A method to reduce torque ripple caused by amplitude imbalance is introduced in
[14]
. This method required an additional position sensor that has no distorted position information to reduce torque ripples. However, the effects of amplitude imbalance and quadrature imperfection must be simultaneously considered for accurate vector control of the permanent magnet synchronous motor (PMSM) using a resolver. S.H. Hwang proposed the compensation method of the scale and phase error in the PMSM drive system with the resolver
[15]
. The
d
axis current is directly used as the input signal of the compensator to estimate position errors by using integral operations according to the rotor position. However, this method can only be adapted in motor drive systems because position errors can be obtained from the
d
axis current. In
[16]
, the DC offset and scale compensation method is proposed without operating the motor. This method can be adapted in DSP systems based on RDC. However, in
[16]
, a mathematical approach was not employed and the method description was incomplete.
In this study, the classification and compensation methods for the DSP system based on RDC are proposed. In this case, two output signals of the resolver can be directly used by the DSP. Thus, the two output signals, “sin” and “cos,” can be adjusted to compensate the position error of the resolver. The classification method includes the offset error, scale error, and phase error. Only the offset and scale errors can be compensated. Classification and compensation can be achieved through the radius and area of the circle made by the resolver signals. This method computes the integration of the areas made by the resolver signals to classify and compensate the error. Thus, this system cannot be applied during transient response as area integration during the transient state causes an error in the proposed method. Therefore, operating the machine at steady state is necessary to adapt this method. The proposed method does not need any additional hardware. The experimental results verify the effectiveness of the proposed algorithm.
II. PROPOSED CLASSIFICATION METHOD OF RESOLVER ERRORS
The schematic diagrams of a resolver and the DSP system based on RDC is shown in
Fig. 1
. The output signals of the resolver
U
_{sin}
and
U
_{cos}
are mathematically represented as follows:
where
KE
is the excitation level of the resolver and
θ
is the angle of the resolver. Since
KE
has a different value according to the resolver characteristics and parameter of the RDC circuit, it should be converted to a unit value, such that the proposed method can be a generalized representation.
When the errors are included in the output signals, detecting the error is difficult because the two signals have instantaneous values. Thus, regionally integrating the output signals during one cycle is necessary to classify the error. Thus, the error can be expressed through a unit circle in the
xy
plot.
Fig. 3
shows the two output signals of the resolver on the angular domain and
xy
plot. The
x
 and
y
axes represent the cosine and sine values, respectively. The radius of the circle is the same as the root mean square value of the two output signals, as shown in
Fig. 3
(b). If the amplitude of the output sinusoidal signals is unity, then the radius can be represented by (3):
Two output signals (a) on the time domain and (b) on the xyplot.
The circle constructed by the two output signals can be divided into four quadrants. Given that the direction of rotation does not affect the proposed method, only the clockwise rotation (1→4→3→2) is considered in this study. The error can be classified by the radius and area of each quadrant of the circle. Considering that the radius of the circle is 1, the area of each quadrant of the circle is calculated to be “
π
/4” according to (4):
The feature of the circle for each resolver error type is shown in
Fig. 4
. The
x
intercept,
y
intercept, and areas of the four quadrants are changed according to the kinds of errors, such as DC offset error, scale error, and phase error. Therefore, detecting and classifying the error through the thresholds in the radius and area of the circle are possible.
Types of resolver errors: (a) DC offset error, (b) scale error, and (c) phase error.
Fig. 4
(a) shows the circle for a positive DC offset error in the sine output signal. The circle is moved on the
x
 and
y
axes according to the sine and cosine offset errors of the resolver, respectively.
Table I
(A) shows the classification for a DC offset error that occurred only in one output signal. For a sine offset error, the areas of quadrants 1 and 2 are the same as the areas of quadrants 4 and 3, respectively. In case of cosine offset errors, the areas of quadrants 2 and 3 are the same as the areas of quadrants 1 and 4, respectively. The polarity of the offset error can be obtained by comparing the areas of the quadrants.
Table I
(B) shows the classification when both output signals have a DC offset error. In this case, the areas of the circle in all quadrants are different and the maximum area can be determined according to the polarity of the DC offset errors on each axis. In case of +sine and +cosine offset errors, the maximum area of all quadrants is the first quadrant.
CLASSIFICATION OF THE DC OFFSET ERRORS
CLASSIFICATION OF THE DC OFFSET ERRORS
Fig. 4
(b) shows the circle for a positive sine scale error. In this case, the unit circle is changed to an ellipse. The areas of the ellipse in all quadrants increased to more than the unit area of the quadrants of the circle, “
π
/4.” In addition, the two intercepts on the
x
axis are larger than the radius of the unit circle, “1.” In case of positive cosine scale errors, the unit circle is also changed to an ellipse and the two intercepts on the
y
axis are larger than the radius of the unit circle, “1.”
Table II
(A) shows the classification in case of scale errors in only one output signal. The polarity of the scale error can be obtained by the size of the areas of all quadrants. For a positive scale error, all areas of the quadrants are larger than that of the unit circle and areas of quadrants 1 and 2 are the same as that of quadrants 4 and 3, respectively. In case of cosine offset errors, the areas of quadrants 2 and 3 are the same as that of quadrants 1 and 4, respectively. The polarity of the offset error can be obtained by comparing the areas of all quadrants.
CLASSIFICATION OF THE SCALE ERRORS
CLASSIFICATION OF THE SCALE ERRORS
Classification of the scale error can be conducted by comparing the area of the circle and the intercepts on the
x
/
y
axis, as shown in
Table II
(A).
Table II
(B) shows the classification of the scale error when both output signals have scale errors. In this case, the areas of the ellipse in all quadrants are changed according to the magnitude of the scale error on each axis. If the scale errors have opposite polarity (for example,
U
_{sin}
and
U
_{cos}
include plus and minus scale errors, respectively), then the area of the ellipse in each quadrant cannot be defined by comparing the ellipse in each quadrant of the unit circle, “
π
/4.” Therefore, when scale errors occur on both output signals, classification can be conducted by comparing
x
/
y
intercepts on each axis. In case of +sine and +cosine scale errors, the areas of the ellipse in all quadrants are increased to more than the unit area of all quadrants, “
π
/4.” In addition, the four intercepts on each axis are larger than the radius of the unit circle, “1.” For the case of +sine and −cosine scale errors, the areas of the ellipse in all quadrants cannot be compared with the unit area of all quadrants, “
π
/4.” The
x
intercept is larger than the radius of the unit circle, “1,” whereas the
y
intercept is smaller than the radius of the unit circle, “1.”
Fig. 4
(c) shows the circle for the phase error. Phase error can be classified after the compensation of DC offset and scale errors. Phase error can be classified by the area of the circle. If DC offset or scale errors exist in the output signal, then these errors influence the area of each quadrant. Thus, phase errors cannot be classified. Therefore, before classifying the phase error, the DC offset and scale error should be compensated. If the phase difference between two outputs of the resolver is smaller than 90°, then the ellipse is tilted toward the right. Otherwise, the ellipse is tilted toward the left. Phase errors can be classified by the area of the circle, as shown in
Table III
.
CLASSIFICATION OF THE PHASE ERRORS
CLASSIFICATION OF THE PHASE ERRORS
III. PROPOSED COMPENSATION METHOD OF RESOLVER ERRORS
Phase error compensation is not considered in this study because the absolute position of the two output signals of the resolver cannot be determined. Thus, the DC offset and scale error compensation methods are explained in this section.
If resolver outputs include scale and offset errors, then they can be expressed as follows:
where
α
and
β
are the scale errors of the sine and cosine signals, respectively.
γ
and
δ
are the compensation values for the sine and cosine scale errors, respectively.
O
_{sin}
and
O
_{cos}
are the offset errors of the sine and cosine signals, respectively.
C
_{sin}
and
C
_{cos}
are the compensation values for the sine and cosine offset errors, respectively.
By substituting (5) and (6) into (3), the radius can be recalculated as follows:
If DC offset error does not exist in the output signals of the resolver, then
r
(0) and
are the same as
r
(
π
) and
respectively, which can be mathematically expressed by using (7):
Solving (8) yields (10) and (11):
To satisfy (9), the solutions are as follows:
As the cosine and sine signals cannot be zero simultaneously, solutions 1 and 3 cannot be a solution for (8) and (9), respectively. In this case, ATO cannot calculate the angle. Thus, adjusting the compensation values for compensating the offset error by using (11) and (13) is necessary. The offset errors,
O
_{cos}
and
O
_{sin}
, can be easily extracted from the two original output signals of the resolver by using the internal analogtodigital converter of the DSP.
After the DC offset error is compensated, the two output signals can be written as follows:
The two output signals including the scale error can be expressed as a symmetric ellipse, as shown in
Fig. 4
(b). The area of a quadrant in the symmetric ellipse can be expressed in (16):
where
r
^{2}
(
θ
) can be obtained from (14) and (15), as follows:
where:
By substituting (17) into (16), the area of the ellipse on each quadrant can be derived as follows:
If the scale errors are perfectly compensated, then the area of each quadrant is
π
/4.
Each area of the quadrant must be calculated to remove the DC offset error. The area of each quadrant is acquired by regional integration of
r
(
θ
) during a quarter of a period. Compensation is conducted to achieve equal areas for all quadrants. Same areas in all quadrants imply that DC offset is eliminated. When scale error occurs in one and/or two output signals, scale errors are compensated by adjusting each radius at 0,
π
/2,
π
, and 3
π
/2 to “1” according to
Table II
. Unit intercepts of the
x
 and
y
axes should be the same to compensate the scale error.
Fig. 5
shows the block diagram of the compensation algorithm. In this study, PMSM is used to verify the proposed method. First, DC offset error is classified by using
Table I
. Then, two PI controllers are operated to eliminate the difference between each quadrant. One PI controller is for the sine offset error and the other PI controller is for the cosine offset error. The scale error is classified using
Table II
after the DC offset error is compensated. In this case, the intercepts are used. The amplitude of the intercepts on the sine and cosine axes is adjusted to be equal.
Block diagram of the proposed compensation method.
IV. EXPERIMENTAL RESULTS
An experiment is conducted on a PMSM motor using the parameters listed in
Table IV
to verify the performance of the proposed classification and compensation methods.
Fig. 6
shows the hardware configuration for the experimental system. The entire drive system is controlled by a DSP (TMS320C28346). The sampling time for the A/D converter is 100 μs. A PMSM operating at 200 rpm under no load condition is used as a rotating machine. A highresolution encoder on the load side of the motor is used for comparison with the angle of the resolver system.
MOTOR SPECIFICATIONS
Experimental PMSM drive system with the resolver.
This study does not consider the sampling limitation effect that occurs because of highspeed machine operation. In general, highspeed operations can cause position errors in the ATO even if the two output signals are ideal, as shown in
Fig. 7
. The figure shows the two output signals of the resolver sampled every 15 ms: real theta measured by the highresolution encoder and calculated theta by the ATO at the lowspeed region, 200 rpm. The sampling time used, 15 ms, is equivalent to a rotor speed of 150 times, 200 rpm. In this condition, the theta obtained from the two ideal signals of the resolver contains several errors. Thus, sampling limitation or highspeed operation is not considered in this study. The DC offset and scale errors of the cosine output signal were set to
O
_{sin}
= 50% and
α
= 50%, respectively, to verify the proposed method.
Two ideal output signals of the resolver on the time domain and xyplot.
Fig. 8
shows the two ideal output signals of the resolver on the time domain and
xy
plot. The amplitude of the resolver output signals should be converted to unit values because amplitude depends on the resolver characteristics, as mentioned in Section ІІ. Thus, the radius and a quadrant area of the circle can be represented as “1” and “
π
/4,” as shown in
Figs. 9
and
10
, respectively.
Two ideal output signals of the resolver on the time domain and xyplot.
The radius of each quadrant of the circle.
Area of each quadrant of the circle.
Classification of the DC offset, scale, and phase errors is conducted using the instantaneous radius of the circle, linear integration of the output signals, and definition on
Tables I
,
II
, and
III
.
Fig. 11
shows
U
_{sin}
and
U
_{cos}
in case of 50% offset in the sine output signal. The circle of the
xy
plot is moved to the right on the
y
axis because of positive sine offset errors. In this case, the radii and areas of quadrants 1 and 4 are larger than those of quadrants 2 and 3, as shown in
Figs. 12
and
13
, respectively.
Two output signals including offset error on the time domain and xyplot.
The radius of each quadrant of the circle with DC offset error in the cosine output signal.
The area of each quadrant of the circle with DC offset error in the cosine output signal.
Fig. 14
shows the
U
_{sin}
and
U
_{cos}
in case of 50% scale error in the sine output signal. Classification of the scale errors can be conducted after compensation of the offset error. Thus, in this case, we assume that the offset error is compensated. Therefore, the offset error is excluded. The shape of the ellipse around the origin is shown in
Figs. 15
and
16
. The area and radius of each quadrant are larger than those of the unit circle because of positive scale errors.
Two output signals including scale error on the time domain and xyplot.
The radius of each quadrant of the circle with scale error in the cosine output signal.
The area of each quadrant of the circle with scale error in the cosine output signal.
U
_{sin}
and
U
_{cos}
including the phase error are shown in
Fig. 17
. Classification of the phase errors can be conducted after offset and scale error compensation. However, deciding which signal between
U
_{sin}
and
U
_{cos}
is the absolute position is impossible. Thus, classification/compensation of the phase error is not conducted with only two output signals of the resolver.
Figs. 18
and
19
show the area and radius of the ellipse including phase errors.
Two output signals including phase error on the time domain and xyplot.
The radius of each quadrant of the circle with phase error in the cosine output signal.
The area of each quadrant of the circle with phase error in the cosine output signal.
Fig. 20
shows the output signals of the resolver before and after compensation of the offset error.
U
_{sin}
and
U
_{cos}
were adjusted to make each area of the three quadrants equal by sequentially comparing the areas of quadrants 1, 2, and 4, such that compensation can be conducted, as shown in
Fig. 21
.
U_{sin} and U_{cos} before and after compensation of the offset error.
Areas of quadrants 1 and 2 during compensation of the offset error.
Fig. 22
shows the output signals of the resolver before and after compensation of the scale error. If the area of each quadrant is greater than “
π
/4,” then we can confirm that compensation can be conducted (
Fig. 23
) to sequentially decrease the
x
/
y
intercept to “1”.
U_{sin} and U_{cos} before and after compensation of the scale error.
Areas of quadrants 1 and 2 during compensation of the scale error.
V. CONCLUSION
A new classification and compensation method has been proposed to reduce position errors caused by DC offset and scale error of the two output signals of the resolver. This method can only be adapted to the DSP system based on RDC. The proposed method was implemented by comparing the radius and area of each quadrant made by the two output signals of the resolver. The proposed method can be applied during the steady state with sufficient sampling times for the ATO as previously mentioned. The experimental results verify the effectiveness of the proposed algorithm.
Acknowledgements
This work was supported by the Human Resources Program in Energy Technology of Korea Institute of Energy Technology Evaluation and Planning and granted financial resource from the Ministry of Trade, Industry and Energy, Republic of Korea (No. 20154030200670).
BIO
Won Lee was born in Masan, Korea in 1966. He received his B.S. and M.S. degrees in Electronics Engineering from Kyungpook National University, Deagu, Korea in 1988 and 1990, respectively. In 1990, he joined the Agency for Defense Development (ADD). Since 2007, he has been a principal research engineer of ADD. His research interests include water propulsion system, electric machine drives, multiphase motor drives, and noise reduction power systems.
JongJoo Moon was born in Masan, Korea, in 1980. He received his B.S. degree in Electronics Engineering from Inje University, Kimhea, Korea in 2008 and his M.S. degree in Electrical Engineering from Pusan National University, Busan, Korea in 2011 where he is currently working toward his Ph.D. degree. His research interests include electric machine drives, multiphase motor drives, fault diagnosis, and tolerance control.
WonSang Im was born in Busan, Korea in 1981. He received his B.S., M.S., and Ph.D. degrees in Electrical Engineering from Pusan National University, Busan, Korea in 2007, 2009, and 2013, respectively. He is currently a postdoctoral researcher at Lehigh University, PA, USA. His research interests include electric machine drives, fault diagnosis, and tolerance control.
JuneHo Park was born in Masan, Korea in 1955. He received his B.S., M.S., and Ph.D. degrees in Electrical Engineering from Seoul National University, Seoul, Korea in 1978, 1980, and 1987, respectively. He is currently a professor at the School of Electrical Engineering, Pusan National University, Busan, Korea. His research interests include intelligent system applications to power systems. Dr. Park has been a member of the IEEE Power Engineering Society.
JangMok Kim was born in Busan, Korea, in 1961. He received his B.S. degree from Pusan National University in 1988 and his M.S. and Ph.D. degrees in Electrical Engineering from Seoul National University, Korea in 1991 and 1996, respectively. From 1997 to 2000, he was a senior research engineer with the Korea Electrical Power Research Institute. Since 2001, he has been with the School of Electrical Engineering, Pusan National University (PNU), where he is currently a faculty member. In addition, he is a research member of the Research Institute of Computer Information and Communication at PNU. His present interests include control of electric machines, electric vehicle propulsion, and power quality.
Hoseinnezhad R.
,
BabHadiashar A.
,
Harding P.
2007
“Calibration of resolver sensors in electromechanical braking systems: A modified recursive weighted leastsquares approach,”
IEEE Trans. Ind. Electron.
54
(2)
1052 
1060
DOI : 10.1109/TIE.2007.893049
Murray A.
,
Hare B.
,
Hirao A.
“Resolver position sensing system with integrated fault detection for automotive applications,”
in Proc. IEEE Sensors
2002
Vol. 2
864 
869
Hoseinnezhad R.
2006
“Position sensing in brakebywire calipers using resolvers,”
IEEE Trans. Veh. Technol.
55
(3)
924 
932
DOI : 10.1109/TVT.2006.874576
Liu G.
,
Kunia A.
,
De Larminat R.
,
Desmond P.
,
O’Gorman T.
“A low torque ripple PMSM drive for EPS applications,”
in Proc. IEEE APEC
2004
1130 
1136
Idkhajine L.
,
Monmasson E.
,
Naouar M. W.
,
Prata A.
,
Bouallaga K.
2009
“Fully integrated FPGAbased controller for synchronous motor drive,”
IEEE Trans. Ind. Electron.
56
(10)
4006 
4017
DOI : 10.1109/TIE.2009.2021591
Khaburi D. A.
2012
“Softwarebased resolvertodigital converter for DSPbased drives using an improved angletracking observer,”
IEEE Trans. Instrum. Meas.
61
(4)
922 
929
DOI : 10.1109/TIM.2011.2179825
Sarma S.
,
Agrawal V. K.
,
Udupa S.
2008
“Softwarebased resolvertodigital conversion using a DSP,”
IEEE Trans. Ind. Electron.
55
(1)
371 
379
DOI : 10.1109/TIE.2007.903952
Hou C. C.
,
Chiang Y. H.
,
Lo C. P.
“Experimental verification of the resolver dynamic model and control designs”
IEEE Conf. PEDS.
2013
496 
499
Hoseinnezhad R.
2006
“Position sensing in brakebywire callipers using resolvers,”
IEEE Trans. Veh. Technol.
55
(3)
924 
932
DOI : 10.1109/TVT.2006.874576
Hanselman D. C.
1990
“Resolver signal requirements for high accuracy resolvertodigital conversion,”
IEEE Trans. Ind. Electron.
37
(6)
556 
561
DOI : 10.1109/41.103461
Hanselman D. C.
1991
“Technique for improving resolvertodigital conversion accuracy,”
IEEE Trans. Ind. Electron.
38
(6)
501 
504
DOI : 10.1109/41.107116
Bunte A.
,
Beineke S.
2004
“Highperformance speed measurement by suppression of systematic resolver and encoder errors,”
IEEE Trans. Ind. Electron.
51
(1)
49 
53
DOI : 10.1109/TIE.2003.822084
Hwang S. W.
,
Kwon Y. W.
,
Kim J. M.
,
Oh J. S.
2009
“Compensation of position error due to amplitude imbalance in resolver signals,”
Journal of Power Electronics
9
(5)
748 
756
Mok H. S.
,
Kim S. H.
,
Cho Y. H.
2007
“Reduction of PMSM torque ripple caused by resolver position error,”
Electron. Lett.
43
(11)
646 
647
DOI : 10.1049/el:20070296
Hwang S. H.
,
Kim H. J.
,
Kim J. M.
,
Liu L.
,
Li H.
2011
“Compensation of amplitude imbalance and imperfect quadrature in resolver signals for PMSM drives,”
IEEE Trans. Ind. Appl.
47
(1)
134 
143
DOI : 10.1109/TIA.2010.2091477
Moon J. J.
,
Heo H. J.
,
Im W. S.
,
Kim J. M.
“Classification and compensation of amplitude imbalance and imperfect quadrature in resolver signals,”
IEEE. EPE Conf.
2014
1 
7