The universal motor is today the most widely used motor in home appliances (vacuum
cleaner, washer, hand tool, food processor...). Three modes of operation exist:
– in many cases, it is directly connected to the mains, without any speed adjustment.
More and more, however, the decreasing cost of electronics allows to include an adjustable
speed drive in the appliance. The control can be open loop or closed loop:
– in open loop mode, the speed is adjusted by the user but not regulated: it decreases when
the load increases. This is the case in many vacuum cleaners for example.
– in closed loop mode, the speed is regulated. This mode is used when the speed must be
accurately kept at a given value, in washers for example. This mode requires to add a speed
sensor on the motor shaft. Such a sensor is usually a tacho generator or magnet sensor.
The drawbacks of the speed sensor are many, but all boil down to higher cost and lower re
liability, not to mention the extra bulk needed to accommodate the sensor inside the plastic
housing of a drill for example.
This document describes a speed regulator without sensor: the speed sensing is performed
indirectly by the ST6220, low-cost 8-bit microcontroller, measuring the motor current. Perform
ance results are given, which are in line with the need of many home appliances.
-
-
June 2008Rev 21/22
1
IMPROVED SENSORLESS CONTROL WITH THE ST62 MCU FOR UNIVERSAL MOTOR
Tr
1 UNIVERSAL MOTOR PRINCIPLES
The universal motor can be driven in AC or DC mode. Figure 1 shows the two most
popular variable speed drive principles. The goal is to adjust the voltage seen by the
motor in order to adjust its speed. In AC mode, the motor voltage is adjusted by var
ying the firing delay of a triac. This is done with a diac, resistor and capacitor when
lowest cost is desired, and with an 8 bit micro-controller when higher performance
and added features are desired, such as user interface or monitoring [1]. The switch
is usually a triac, the cheapest power switch.
In DC mode, the motor is supplied by a high frequency pulse width modulated (PWM)
DC voltage. The voltage seen by the motor is proportional to the PWM duty cycle,
which can be adjusted to modify the speed. The power switch used to chop the DC
voltage at high frequency is a power MOS or an IGBT. The DC mode has several ad
vantages versus the AC mode (less acoustic noise, higher efficiency, lower harmonics content, all due to lower current ripple, as is shown in Figure 1). However, in
low cost appliances, the AC mode still dominates due to its lower cost (no rectifier
bridge, no fast diode, triac cheaper than IGBT or MOS). This is the mode we will focus
on in the next pages.
The universal motor is a serial excitation motor. Therefore, the motoring torque is pro-
portional to the square of the motor current: Tm = k. I²
The mechanical power is the product of the torque by the speed: P = Tm.Ω
If we assume 100% efficiency, the mechanical power equals the electrical power V.I
input to the motor. It follows that the speed is proportional to
V/I:
Ω = k'. V / I (V and I are average voltage and current over a mains period). The first
consequence is that the motor speed is proportional to the average motor voltage.
At constant speed, the resistive torque Tr is equal to the motoring torque Tm. It
comes from the previous equations that the speed is given by:
This equation shows that when the resistive load torque increases at a given voltage,
the motor speed will decrease, hence the need for speed regulation. This regulation
can be performed by adjusting the average voltage V.
Ω= k.V / .
-
-
2/22
IMPROVED SENSORLESS CONTROL WITH THE ST62 MCU FOR UNIVERSAL MOTOR
AC: PHASE CONTROL
DC: PWM CONTROL
t
Vmotor
Imotor
t
Vmotor
Imotor
M
M
Figure 1. Universal motor variable speed drive: AC versus DC mode
3/22
IMPROVED SENSORLESS CONTROL WITH THE ST62 MCU FOR UNIVERSAL MOTOR
Vmains
Imotor
t
0
td
i(t0)
2 SENSORLESS REGULATION PRINCIPLE
The above equations were first order equations, assuming DC operation, or average
values for voltage and current. The real, instantaneous equation is the following:
While the triac is off:
i = 0
While the triac is on (after firing time td, and until current comes back to zero; see
Figure 2):
v = e + z.i
with: e = back electromotive force (bemf) = k. Ω. i
z = motor impedance = r + j.L.ω
k = constant dependent upon motor characteristics
Ω = motor speed
i = instantaneous motor current
v = instantaneous motor voltage
L = motor inductance
r = winding resistance
ω = mains frequency
v = (k.Ω + r) i + j.L.ω.i
4/22
Figure 2. First Order Model (resistive only): Constant Speed, Variable Load
In the time domain, v(t) is the mains voltage: v(t) = V0 .sinωt (V0 = mains peak
voltage).
IMPROVED SENSORLESS CONTROL WITH THE ST62 MCU FOR UNIVERSAL MOTOR
Vmains
Imotor
t
0
1
2
3
At first order, we will neglect the inductive term j.L.ω. This yields: i(t) = k.Ω + r.
The universal motor behaves as a speed-dependent resistor of value k.Ω + r.
As Ω and r do not change very quickly, and v is known, measuring i at a specific time
within the mains period (example: at time t0 in
speed: Ω = (V0 / k. i(t0)) sinωt0 - r / k.
Therefore if we want to keep the speed at a fixed value Ω0, we need to keep i(t0) at
a corresponding fixed value i0:
i0 = V0 .sinωt0 / (k.Ω0 + r )
In practice, each mains period, the micro-controller measures the current at time t0
with its internal analog to digital converter. Then, the current error i(t0)-i0 is calcu
lated, and the micro executes the speed regulation algorithm, which results in a new
firing delay td. This delay is used to fire the triac on the next mains period. It is
counted by the micro controller internal timer. The delay is measured starting from the
mains voltage zero-crossing.
Figure 2) gives an image of the motor
-
Figure 3. Measured Current in a Real Motor (resistive and inductive): Constant
If we now consider the real universal motor, including the inductive term j.L.ω, we
can apply the same method.
motor. On this figure, while the load is modified, the speed is kept constant by modi-
Figure 3 shows the current and mains voltage for a real
5/22
IMPROVED SENSORLESS CONTROL WITH THE ST62 MCU FOR UNIVERSAL MOTOR
fying the triac firing delay. Moving from Figure 2 to Figure 3, we can see two effects
of the inductive term. First effect: at triac turn-on, the motor current does not exhibit a
discontinuity, but changes gradually from 0 to a finite value. Second effect: at mains
voltage zero crossing, the motor current does not reach zero immediately, but keeps
trailing for a few milliseconds. This trailing gives us more freedom to chose the meas
urement time t0. We can even chose the zero crossing instant, which is the easiest
time for the micro-controller (no need to measure time t0 with the timer, we can use
the mains zero-crossing as an interrupt to the micro, which is necessary anyway for
other matters). This is illustrated in
Figure 3, where the arrow shows that the current
is constant at the zero-crossing time while the motor load changes, provided that the
speed is kept constant by adjustment of the firing delay td. For a detailed mathemat
ical discussion, see annex 1.
To summarize, if we want to regulate the speed at a pre-defined set speed, for example 1000 rpm, we must measure the instantaneous motor current on every mains
period at the same time t0 (for example, on every mains voltage zero crossing fol
lowing the positive half-cycle), and maintain this measured current at a fixed set current, 1 ampere for example. For a different set speed, 2000 rpm, we need to regulate
the current around a different value, 0.5 ampere for example (note that a lower cur
rent corresponds to a higher speed).
The regulation is performed by adjustment of the triac firing delay td.
The above described method gives very good results at medium and high speeds.
At very low speeds, we have a second order effect coming into the picture: Figure 4
is identical to Figure 3, except for the presence of a fourth current curve, corresponding to a very large firing delay td (this corresponds to a very low speed, combined with a low load). We can see on this fourth curve that the current at time t0 is
smaller than i0, current of the other 3 curves at this time. This effect is described in
detail in annex 1. We have two solutions to cope with it. The simplest one is to limit
the maximum firing delay (below values in the range of 7 mS, depending on the motor
type). This means limiting the minimum speed which can be regulated. If the applica
tion cannot tolerate this reduction in its speed dynamic range, a second and more
complex solution is to compensate this current measurement distortion, by means of
look-up tables memorized in the micro-controller memory. When the current i(t0) is
measured, if td is larger than a limit value (7 mS for example), i(t0) is increased by a
compensation value extracted from a memory table before it is used to calculate the
current error. This value is a function of the triac firing delay td, and is determined ex
perimentally by characterizing the motor. The regulation system is not very sensitive
to this value, so it is enough to characterize one motor of a given type, it is not neces
-
-
-
-
-
-
-
6/22
IMPROVED SENSORLESS CONTROL WITH THE ST62 MCU FOR UNIVERSAL MOTOR
sary to characterize each individual motor. Annex 2 describes how to determine this
compensation table.
Figure 4. Measured Current at Constant Speed (for very large firing delays,
current at time t0 is lower than set current)
7/22
Loading...
+ 15 hidden pages
You need points to download manuals.
1 point = 1 manual.
You can buy points or you can get point for every manual you upload.