Application of vector control scheme for consumer products is enlarging to improve control performance. For the fieldoriented control, accurate position detection is essential and generally requires expensive sensors. On the other hand, costreduction is important in home appliances, so that binarytype Halleffect sensors are commonly used rather than using an expensive sensor such as an encoder. The control performance is directly influenced by the accuracy of the position information, and there exist nonuniformities related to Hall sensors in electrical and mechanical aspects, which result in distorted position information. Therefore, to get highprecision position information from lowresolution Hall sensors, this paper proposes a new position estimator consisting of a Kalman filter and feedforward compensation scheme, which generates a linearly changing position signal. The efficacy of the proposed scheme is verified by simulation and experimental results carried out with a 48pole permanent magnet motor.
1. Introduction
To improve the performance of home appliances like a washing machine, the vector control technique is widely used. Permanent magnet synchronous motor (PMSM) is commonly used for washing machines due to their excellency in efficiency compared to other type motors. The vector controller must know the rotor position continuously with a fine precision. It is known that the control performance of vector controller highly depends on the accuracy of position information
[1]
. In a typical variable speed application, a highprecision sensor such as an encoder or resolver is used. However, for household appliances, price down is important. Hence, for reasonable control performance with a costeffective way, Hall sensors with binarytype, which generate square waveform signals that correspond to N and S poles in the rotor, are mainly employed
[2]
. Various studies to obtain precise position information from the lowresolution square wave signals of Hall sensors have been carried
[3

7]
.
[3

5]
proposed a position calculation method based on the zeroorder Taylor algorithm, and the configuration is simple and easy to implement. However, as the position value is obtained by integrating the average speed and the calculation of average speed is sensitive to inaccuracies in mechanical installation and nonuniformity in electrical parts, the resultant accuracy is insufficient when there exists an error in the average speed. Moreover, the estimated position values are updated by prefixed values in responding to Hall events, for instance specific value such as 90
^{o}
is assigned to the current position value when the rising edge of one of Hall signals occurs. Thus, uneven time interval between two Hall sensor signals, which causes an error in computing the average speed, generates bumps or discontinuities in the position information where Hall events take place.
[6
,
7]
presented a position estimation scheme using an observer. The observer method is able to estimate the rotor position in a wide speed range with the same observer’s gain. However, as the fullorder observer system is based on the mechanical equation of motion, the accuracy of the estimation is influenced by variation of the mechanical parameter such as inertia (
J
) and by discrepancy in calculated torque.
[8]
proposed a position observer utilizing a Kalman filter for speed filtering. In
[9]
, PLL (phase locked loop) has been used for processing of Hall sensor signals. In
[10]
, vector crossproduct algorithm was used to improve the calculation performance of the difference between real angle and estimated one. Method of adjusting Hallsensors offset caused by mechanical misalignment was presented. However, the schemes need the information of torque command and estimated torque value, and basic scheme of
[10]
is the fullorder observer. Hence, same as
[6
,
7]
,
J
and
T_{e}
are involved in estimation of rotor angle and algorithm of compensating misalignment.
The driving condition of the washing machine makes it difficult to apply the observer method because the inertia of a machine varies depending on the amount and distribution status of water and laundry. As noted in
[11
,
12]
the washing machine has a procedure to identify the amount of the laundry by measuring the acceleration and/or deceleration times. It means
J
is not constant and varies according to the amount of the laundry and water. Hence, an additional work such as online estimation of inertia is required to get the position information through the fullorder position observer. Therefore to solve these problems, this paper proposes a new position estimation technique, which employs a Kalman filter and feedforward scheme. The performance of the proposed algorithm is verified by simulation studies and experimental results.
2. Position Signals and Detection by Conventional Methods
The washing machine of this research is operated by a 48pole SPM (Surface mounted Permanent Magnet) motor. Two Halleffect sensors are installed in one electrical revolution span inside the rotor, which results in a 90
^{0}
electrical angle resolution. The speed and rotor position by using 90
^{0}
resolution Hall sensors can be expressed as (1) and (2), respectively. As expressed in (1), the angular speed is obtained by dividing 90
^{0}
(
π
/
2
rad.) to the time interval between Hall sensor events (
ΔT
). The position is obtained by the linear extrapolation as (2). Where,
T
means the sampling time, and
θ_{e_hall}
(
k
) represents the calculated electrical rotor angle at the
k
th sampling point. It should be mentioned that π/2 radians, the numerator of (1), is for an ideal case. In actual case, because of nonuniformity existed in sensors and their circuits, flux of magnets, and mechanical installation, the angle span between Hall sensor events does not form an exact 90°.
Line ① in
Fig. 1
, which has a stairshape, displays the position updated with the form of 90
^{0}
n
,
n
=0,1,2,3 in response to the rising and falling edges of the Hall events. Where, the locations marked by dots indicate the exact 90
^{0}
n
positions. As the point of Hall event differs from 90
^{0}
n
position with
α
,
β
, etc.,
θ_{e_hall}
shown as line ② has bumps where Hall events occur. This research is applied to a washing machine that has a 48pole outer rotor. Due to large numbers of magnets in the rotor and inevitable nonuniformity in the flux of individual magnet, the interval of Hall events is larger or smaller than 90
^{0}
randomly. Thus the compensation method adding predetermined offset values for each Hall sensor event can not be applied.
Position waveforms corresponding to two Hall sensor signals.
One of the most popular methods of getting linearly changing rotor position is using an observer. The state equation of fullorder observer is expressed as (3). ^ means estimated value.
ω_{e}
,
θ_{e}
,
T_{L}
,
T_{e}
, and
P
represent rotor angular frequency, rotor electrical position, load torque, developed torque, and number of poles, respectively. It is reported that the transfer function of an observer has the form of a lowpass filter about position
[10]
, hence it is used to filter out bumps. However, inaccurately calculated
J
and
T_{e}
may degrade the ability of position estimation, and the simulation results of its effects will be shown in Section IV.
3. Proposed Method for Position Estimation
A Kalman filter is a stochastic and optimal recursive algorithm and application of the Kalman filter for estimating position and/or speed has been proposed in many studies especially for sensorless control
[13
,
14]
. However, a research for obtaining linearly changing rotor position signal from binarytype Hall sensors by adopting only a Kalman filter has not been presented as far as the author knows. To prevent incorrect position estimation due to inaccurate system parameters or miscalculation, the proposed scheme employs the Kalman filter algorithm. In addition, a feedforward scheme is devised to cope with large position transition such as from 2π to 0 radians or vice versa, denoted as case A in
Fig. 1
. Moreover, it is reported that similar cases of this research exist in various applications.
[15]
said that the position signal of a magnetic levitation train without using a linear scaler resembles the line ②, and development of an algorithm to get linearly changing position signal is required. Thus, it is obvious that the proposed scheme can be applied to not only washing machine drives but also many other applications requiring highprecision position signal from lowresolution sensors. The equations of the Kalman filter are expressed as (4)~(7).
K
stands for Kalman filter gain matrix, and
P
is state covariance matrix. – represents predicted estimate,
k
and
k
1 denote present value and one step previous value, separately
[16
,
17]
.
With the assumption that there is no rotor speed(
ω_{e}
) variation during the sampling interval
T
and with the fact that
ω_{e}
=
dθ_{e}
/
d_{t}
the equations in the discrete time domain can be given as (8)~(11). Where, state variable
x
consists of
θ_{e}
and
ω_{e}
. Measurement (
z
) is expressed as (10).
where,
Q
and
R
in (4), (5), and (12) are the covariance matrix of process noise and measurement noise, respectively.
Larger
R
results in smaller
K_{k}
, which means
has greater weight on
than on
z_{k}
. As a result, the estimate changes smoothly, i.e. high filtering results. On the other hand, higher
Q
generates larger
, which results in less filtering effect because
receives more impact from
z_{k}
than from
. As
Q_{11}
, and
R_{11}
are involved in filtering position, larger
R_{11}
and smaller
Q_{11}
are required to increase the filtering effect. In order to get rid of bumps in the estimated position, high filtering effect is required. However, a position estimator with
R
and
Q
matrices corresponding to high filtering effect can not track actual one well especially for the case A having a large angle change. In contrast, an estimator with
R_{11}
and
Q_{11}
for small filtering performance can follow the actual position well including case A condition. However, there arises the impossibility of removing bumps due to less filtering result. On the other hand, in the case of the observer, by modifying
of (3) to
, case A can be dealt with because
sin
(2π+α) =
sin
(
α
) ≈
α
for small angle
α
. Whereas, that modification worked in the observer scheme can not be applied to the Kalman filter because
can not be chosen as the state variable. Hence, to cope with case A, a feedforward scheme is devised in this paper.
Fig. 2
shows the overall block diagram of driving system of PM motors with the proposed scheme. As shown in
Fig. 2
,
ω_{e_hall}
and
θ_{e_hall}
are obtained by (1) and (2) from incoming Hall events. Through the proposed scheme expressed as (4)~(7), filtered
ω_{e}
and linearly changing position signal are generated. The resultant bumpless
θ_{e}
is used as the rotor flux angle for
dq
transformation.
Fig. 3
illustrates the flowchart that determines feedforward (F.F.) value. As shown in
Fig. 3
, whether case A occurs or not is determined by checking the difference between
θ_{e_hall}
(
k
) and
θ_{e_hall}
(
k

1
). F.F. value is assigned for 0 → 2π or 2π → 0 transition conditions otherwise zero. The F.F. value added to is 2π for the forward rotation and +2π for the reverse spin. The F.F. scheme seems so simple but without it the proposed method can not filter out distortions in the position signal.
Block diagram of PM drive with the proposed scheme.
Flowchart for calculating the feedforward term.
4. Verifications
 4.1 Simulation results of position estimation scheme using fullorder observer
In Section IV, simulation results of conventional method and proposed scheme are shown.
Fig. 4
displays the block diagram of the fullorder observer scheme expressed in (3). The block of vector cross algorithm done in
[7]
is not illustrated in
Fig. 4
, but in the actual implementation taking
sin
e of
has been done after the summing junction of
to cope with the case A shown in
Fig. 1
.
One of conventional methods that employs the fullorder observer.
In
Fig. 4
,
J
and
T_{e}
are estimated values, and
T_{e}
value is obtained by the below equation.
where
P
denotes number of poles, and
λ_{m}
represents fluxlinkage by permanent magnet. Ferritebased permanent magnets are known to have a 20% flux reduction per 100℃ increase, hence to get accurate
T_{e}
value online estimation of
λ_{m}
is required.
Fig. 5
shows simulation waveforms of fullorder observer with (a) exactly estimated system parameters and with (b) errors in
J
and
T_{e}
estimation, respectively. From top to bottom, estimated theta,
θ_{e_hall}
, and
θ_{e}
formed as 90°
n
(dotted line) are shown. The washing machine rotates under constant speed and torque condition.
Fig. 5(b)
illustrates the simulation results carried out with 20%less
J
value and 15%less
T_{e}
than actual ones. It shows that the observer scheme, which has errors in
J
and
T_{e}
computation, results in 24
^{0}
angle difference between actual and estimated values, which clearly shows the big angle difference between
θ_{e_hall}
and estimated
θ_{e}
. Even in the case of
Fig. 5(a)
simulated with correct system parameters and exactly calculated
T_{e}
, there was about 3
^{0}
angle discrepancy.
Simulation results: position signals obtained by fullorder observer with (a) exact system parameters and (b) with 80% J and 85% T_{e} with respect to actual ones.
 4.2 Simulation results related to the proposed scheme
The simulation model of the proposed scheme, which is made by Matlab/Simulink is shown in
Fig. 6
. To avoid errors in system modeling, devices provided in sympowersystems library of Simulink are actively used such that the SPM motor and the inverter existed in library are used. The simulation study of the fullorder order observer has also been conducted using Simulink. In
Fig. 6
, blocks of controllers for fieldoriented control are not displayed due to limited space and less relevant to the proposed scheme.
Simulation block diagram of the proposed scheme.
Block ① shown in
Fig. 6
generates Hall signals A and B, which simulate actual situation such that the high state of each signal is not 180
^{0}
, by using the rotor position from the motor model. In Block ②,
θ_{e_hall}
is obtained based on (2), and the process of assigning the feedforward term is conducted.
Whereas as shown in the figure, for obtaining
θ_{e_hall}
instead of
ω_{e_hall}
,
from Block ③ is used. In Block ③, the proposed scheme based on Kalman filter is implemented by sfunction of Matlab, and outputs of Block ③ are estimated theta and rotor speed. Specification of the motor used for this simulation studies is summarized in Table 1.
Various simulation results related to the proposed scheme are displayed in
Fig. 7
.
Fig. 7(a)
~
(c)
illustrate simulation results obtained without imposing the feedforward scheme. The estimated positions are displayed 1 radian above
θ_{e_hall}
to discriminate these two waveforms.
Fig. 7(a)
shows simulation waveforms conducted with
R_{11}
and
Q_{11}
having less filtering effect. As shown in
Fig. 7(a)
, the estimated signal goes along with
θ_{e_hall}
well in all 2
π
range including the case of rapid angle change, but the bumps are not removed at all due to the less filtering performance. In the case of
Fig. 7(b)
, the
R_{11}
and
Q_{11}
were chosen to get more filtering effect than those of
Fig. 7(a)
.
Simulation waveforms: (a) with the covariance values for less filtering effect without F.F; (b) with the covariance values for moderate filtering effect without F.F; (c) with the covariance values for high filtering effect without F.F; (d) by the proposed scheme with the same covariance values of Fig. 7 (c) but with feedforward (F.F.) scheme.
As shown inside the circle, these
R
and
Q
matrices can not generate the estimated position that keeps up with
θ_{e_hall}
varying from 2
π
to 0. Furthermore, filtering result is not good enough to eliminate the discontinuities in the estimated position. The covariance matrices of
Fig. 7(c)
and
7(d)
are the same each other, the only difference is whether the feedforward(F.F.) scheme is employed or not.
Fig. 7(c)
illustrates that the algorithm without F.F. term fails to estimate the position. On the other hand, the proposed scheme having F.F. term with the same
R
and
Q
matrices of
Fig. 7(c)
removes the bumps and generates a linearly changing rotor position in all 2
π
range as displayed in
Fig. 7(d)
.
Fig. 8
illustrates simulation results (a) without and (b) with the proposed scheme. From the top to the bottom of the figure, Hall
A
&
B
signals,
θ_{e}
signals, and phase current are illustrated. As shown in
Fig 8(a)
about without the proposed scheme, there exist discontinuities in rotor position signal and the phase current has distortion a result of bumps in the position signal. In contrast, the theta in
Fig. 8(b)
obtained by the proposed scheme has no bumps and the resultant phase current is sinusoidal. Hence it shows the performance and efficacy of the proposed scheme. The
θ_{e_hall}
waveform in
Fig. 8(b)
seems to have smaller distortion than that in
Fig. 8(a)
. The reason is that
θ_{e_hall}
shown in
Fig. 8(a)
is obtained by (2), but that in
Fig. 8(b)
is gotten as (14) by using the estimated speed from the Kalman filter. It should be noted again that the simulation conditions of with and without are identical each other, i.e. the position errors in Hall signals are the same each other.
Simulation waveforms: (a) with and (b) without the proposed scheme.
where,
represents the estimated rotor speed at the
k
1 sampling point.
 4.3 Experimental results
Experiments have been carried out with a 48pole SPM motors to verify the performance of the proposed scheme.
Fig. 9
illustrates an overall experimental setup. The IGBTs in the voltage source inverter supplied by 300 V dclink were switched on and off at a frequency of 10 kHz to control the PM motor.
Experimental setup.
The proposed position estimation scheme has been implemented by TI’s TMS320F28335 DSP controller. Two binary Hall sensor signals were fed to the interrupt ports of the DSP chip via an interface circuit and converted to the linearly varying position information by the proposed scheme.
The
dq
voltage references have been converted to gate pulses by using the space vector PWM with the conversion of voltage references in the rotating fame to those in the stationary frame by using the estimated position obtained through the proposed scheme.
Fig. 10
shows experimental results carried out with the same simulation conditions of
Fig. 7
in which
Fig. 10(a)
~
(d)
correspond to
Fig. 7(a)
~
(d)
. In
Fig. 10
, Hall sensor signals,
θ_{e_hall}
by (2), and the estimated position are illustrated. As appreciated in those figures,
θ_{e_hall}
has bumps approximately four times in one electrical cycle. In the real implementation, the first rising edge of Hall A signal occurs not 0
^{0}
but 30
^{0}
so that the positions where bumps occur are different from those in the simulation waveforms. It can be seen that experimental and simulation results well agree each other. For instance,
Fig. 10(a)
showing experimental waveforms and
Fig. 7(a)
illustrating simulation waveforms under the same condition are almost identical each other, similarly
Fig. 10(b)
with respect to
Fig. 7(b)
.
Fig 10(c)
shows that due to the covariance matrices having the high filtering effect the position estimation does not work the same as
Fig. 7(c)
. In contrast,
Fig. 10(d)
, in which
R
and
Q
values are identical to those of
Fig. 10(c)
, shows linearly changing position information obtained from the binarytype Hall sensors by employing a Kalman filter with the feedforward scheme. Therefore, it verifies the efficacy of the proposed scheme. Furthermore, experiments to indicate the performance improvement by displaying the phase current waveform have been conducted.
Experimental results conducted with the same simulation conditions of (a) Fig. 7a, (b) Fig. 7b, (c) Fig. 7c, and (d) Fig. 7d (the proposed scheme).
Fig. 11(a)
and
11(b)
show experimental waveforms without and with the proposed scheme, respectively.
Fig 11(a)
reveals that there are deformations in the position information, and the phase current has distortion as well.
Fig. 11(b)
clearly displays the elimination of bumps by the proposed scheme and the resultant sinusoidal phase current waveform.
Experimental results: position and phase current waveforms when the machine operates at 500 rpm (a) without and (b) with the proposed method.
5. Conclusion
This paper proposed a new position estimation scheme for PMSM driving system in which the rotor position was detected by lowresolution Halleffect sensors. The proposed scheme employed the Kalman filter in order to remove the necessity of system parameters and errors caused by inaccurately computed system variables. In addition, the feedforward scheme was devised to have high filtering performance in the entire angle range. Simulation results of proposed scheme as well as conventional method have been illustrated. Validity and effectiveness of the proposed algorithm were verified by simulation and experimental investigations.
Acknowledgements
This work was supported by the Korea Institute of Energy Technology Evaluation and Planning(KETEP) granted financial resource from the Ministry of Trade, Industry & Energy, Republic of Korea (No. 20152010103540)
BIO
DongMyung Lee received his B.S. and M.S. in Electrical Engineering from Hanyang University, Seoul, Korea, in 1994 and 1996, respectively, and his Ph.D. in Electrical and Computer Engineering from the Georgia Institute of Technology, Atlanta, Georgia, USA, in 2004. From 1996 to 2000, he worked for LG Electronics Inc., Seoul, Korea. From 2004 to 2007, he was employed by the Samsung SDI R&D Center, Yongin, Korea, as a Senior Engineer. From 2007 to 2008, he was with the Department of Electrical Engineering, Hanyang University, as a Research Professor. Since 2008, he has been an Associate Professor with the School of Electronic and Electrical Engineering, Hongik University, Seoul, Korea. His current research interests include variable speed drives, power quality compensation devices, and power conversion systems for renewable energy sources.
Kim S. Y.
,
Choi C. C.
,
Lee K. J.
,
Lee W. T.
2011
“An improved rotor position estimation with vector tracking observer in PMSM drives with low resolution Halleffect sensors,”
IEEE Trans. Ind. Electron.
58
(9)
4078 
4086
DOI : 10.1109/TIE.2010.2098367
Dominguez J. D. R.
,
Navarrete A.
,
Meza M. A.
,
Loukianov A. G.
,
Cañedo J.
2014
“Digital slidingmode sensorless control for surfacemounted PMSM,”
IEEE Trans. Ind. Informat.
10
(1)
137 
151
DOI : 10.1109/TII.2013.2262280
Fang J.
,
Zhou X.
,
Liu G.
2012
“Instantaneous torque control of small inductance brushless DC motor,”
IEEE Trans. Power Elect.
27
(12)
4952 
4964
DOI : 10.1109/TPEL.2012.2193420
Feng Z.
,
Acarnley P. P.
2008
“Extrapolation technique for improving the effective resolution of position encoders in permanentmagnet motor drives,”
IEEE Trans. Mechatron.
13
(4)
410 
415
DOI : 10.1109/TMECH.2008.2001689
Beccue P. B.
,
Pekarek S. D.
,
Deken B. J.
,
Koenig A. C.
2007
“Compensation for asymmetries and misalignment in a Halleffect position observer used in PMSM torqueripple control,”
IEEE Trans. Ind. Appl.
43
(2)
560 
570
DOI : 10.1109/TIA.2006.889883
Harke M. C.
,
Donato G. D.
,
Capponi F. G.
,
Tesch T. R. A.
,
Lorenz R. D.
2008
“Disturbance torque and motion state estimation with lowresolution position interfaces using heterodyning observers,”
IEEE Trans. Indus. Appli.
44
(1)
124 
134
DOI : 10.1109/TIA.2007.912736
Yoo A.
,
Sul S. K.
,
Lee D. C.
,
Jun C.S.
2009
“Novel speed and rotor position estimation strategy using a dual observer for lowresolution position sensors,”
IEEE Trans. Power Electron.
24
(12)
2897 
2906
DOI : 10.1109/TPEL.2009.2022969
Lee D. M.
,
Lim D. C.
,
Ahn H. J.
2015
“Position linearisation scheme for permanent magnet synchronous motor drive of washing machine using lowresolution hall sensors,”
IET Elect. Letters
51
(22)
1765 
1767
DOI : 10.1049/el.2015.1878
Capponi F. G.
,
Donato G.
,
Ferraro L.
,
Honorati O.
,
Harke M. C.
,
Lorenz R. D.
2006
“AC brushless drive with lowresolution Halleffect sensors for surfacemounted PM machines,”
IEEE Trans. Ind. Appl.
42
(2)
526 
535
DOI : 10.1109/TIA.2005.863904
Dalala Z. M.
,
Cho Y. H.
,
Lai J. H.
2013
“Enhanced vector tracking observer for rotor position estimation for PMSM drives with low resolution Halleffect position sensors,”
IEEE Inter. Electric Machines & Drives Conf.
484 
491
Payne T.
,
Rice S.
,
Able D.
,
Dickerson D.
1992
“Electronic washer control including automatic load size determination, fabric blend determination and adjustable washer means,”
US Patent
5161393A
Altinier F.
,
Girotto T.
,
Giovagnoni M.
2012
“Method for estimating the moment of inertia of the rotating unit of a washing machine, and washing machine implementing said method,”
US Patent
8336378
Aydogmus Z.
,
Aydogmus O.
2015
“A comparison of artificial neural network and extended Kalman filter based sensorless speed estimation,”
Measurement Elsevier
63
152 
158
Quang N. K.
,
Hieu N. T.
,
Ha Q. P.
2014
“FPGAbased sensorless PMSM speed control using reducedorder extended Kalman filters,”
IEEE Trans. Indus. Elect.
61
(12)
6574 
6582
DOI : 10.1109/TIE.2014.2320215
Han Y. J.
,
Lee C.Y.
,
Sun Y.
2014
“A study on the sensor applications for position detection and guideway monitoring in high speed Maglev,”
Modern Mech. Engineering
4
(4)
165 
174
DOI : 10.4236/mme.2014.44016
Chen Z.
,
Fu Y.
,
Mi C. C.
2013
“State of charge estimation of lithiumion batteries in electric drive vehicles using extended Kalman filtering,”
IEEE Trans. Vehicular Technology
62
(3)
1020 
1030
DOI : 10.1109/TVT.2012.2235474
Sim H. W.
,
Lee J. S.
,
Lee K. B.
2014
“Online parameter estimation of interior permanent magnet synchronous motor using an extended Kalman filter,”
Journal of Electr. Eng. Tech.
9
(2)
600 
608
DOI : 10.5370/JEET.2014.9.2.600