Professional Documents
Culture Documents
Observer Based-Inertial-Identification-For-Autotuning-Servo-Motor
Observer Based-Inertial-Identification-For-Autotuning-Servo-Motor
Abstract - In servo motor drive applications variation of inertia input. Because the estimated disturbance is also affected by
degrades drive’s performance. Motor response is affected not mechanical parameters, inertia can then be identified after the
only by external disturbance input but also by mechanical estimator. The disturbance estimator has various forms, for
parameters such as inertia and friction. These factors must all be example, inverse mechanical system model [4][5], full or
considered in order for accurate inertia identification and drive
reduced state estimator [6][7], extended Kalman filter [8][9]
tuning. In this paper, an observer-based auto-tuning scheme for
servo motor drives is presented. This scheme is consisted of a ect. Most of these methods need complex software for
state estimator to estimate motor disturbance and two adaptive implementations and are cumbersome for practical industrial
controllers to separately adjust drive inertia and friction to their applications.
correct value. The servo control loop is tuned automatically with In this paper, an alternative observer-based auto-tuning
the inertia found. The experimental results show that this scheme for servo motor drives is presented. A state estimator
auto-tuning scheme can achieve good performance and that the is used to estimate the mechanical parameter-influenced
scheme is able to estimate the mechanical parameters accurately. external disturbance. The average of the actual disturbance is
calculated and then used to correct the output of the state
Keywords —servo motor drive; auto-tune; disturbance estimator;
estimator so that the influence from the actual disturbance is
inertia identification
removed. Then, two adaptive controllers following the state
I. INTRODUCTION estimator are used to separately adjust the drive inertia and
friction to their correct value. The servo control loop is tuned
In servo motor drive applications, variation of load inertia
automatically with the inertia found.
degrades drive’s performance. High performance drives
generally requires identification of moment of inertia of the II. SYSTEM MODEL
whole system including the motor and the load. Once the drive
inertia is identified the motion control loop gains can be tuned Figure 1 shows a typical model for servo motor drives. The
automatically in order to maintain a consistent dynamic bandwidth of the motor current control loop is generally much
response. higher than the bandwidth of the position and velocity loop,
Motor response is affected not only by external disturbance therefore current controller can be approximate with unity
input but also by mechanical parameters such as inertia and gain and excluded from the model. The equations of the
friction. These factors must all be considered in order for system can be expressed as
accurate inertia identification and drive tuning. In comparison dθ r
= ωr (1)
to disturbance input, friction is more predictable and sometime dt
can be treated with simple measurement and compensation.
dω r
Therefore, the schemes which use disturbance torque J + b ⋅ ω r = k t ⋅ i − TL (2)
estimator are commonly employed for drive inertia dt
identification. where ωr is the speed, J is the equivalent motor and load
There were many studies on the identification of drive inertia, b is the viscous damping coefficient, kt is the motor
inertia for auto-tuning of servo or speed-controlled motor torque constant, i is the current, and TL is the external
drives. A model-free method was presented which used motor disturbance torque. Because kt does not change with motor
speed response to estimate inertia [1]. Because this scheme operating condition in general, it is treated as a constant in the
does not consider external disturbance, the results are following analysis. It can be seen from Fig. 1 that there are
dependent on the operating condition when the disturbance two inputs to the motor drive, i.e. the generated torque Tm and
exits. Model reference adaptive control was also applied to the external disturbance torque TL. Both of these inputs affect
find drive inertia [2][3]. However, these methods either motor response. Motor torque can be measured via current
excluded the effect from the external disturbance or did not feedback with good accuracy, but the external disturbance can
include friction in the model. not be measured directly. However, as mentioned in the
Many disturbance observer based auto-tuning schemes have previous section, it can be estimated from motor current and
been proposed in the past [4-9]. These methods generally used velocity or position feedback with various estimation schemes.
a disturbance estimator to estimate the external disturbance
d b̂ ∂ T̂ '
'
= - k b ⋅ T̂dis ⋅ dis
= k b ⋅ T̂dis
'
⋅ωr (10)
dt ∂ b̂
θ r* ,ω *r
where kb is the adaptation rate. Note that the above equation
can also be expressed in the s-domain for convenience as
follows
k '
b̂ = b ⋅ T̂dis ⋅ ω r + bo (11) Ĵ ,b̂
s T̂dis
Ĵ b̂ Ĵ
where bo is the initial b̂ . ωr
The upper part of Fig. 3 shows the block diagram of the
T̂L
adaptive controller for b̂ . Note that the speed command
α *r ,ω *r
ω *r is used in the adaptive controller instead of ω r . In
practice, there is no difference of either use ω *r or ω r in Figure 4. Observer-based inertia estimator and auto-tuning servo
the controller. However, since motor speed information is motor drive
generally obtained by differentiation of the position feedback,
use of ω *r can prevent quantization error caused by the corresponding control is not executing. Also, it can be shown
inadequate resolution of the position sensor. that the estimated Ĵ and b̂ are globally stable.
The block diagram shown in Figure 4 summarizes the
V. INERTIA IDENTIFICATION AND AUTO-TUNING proposed auto-tuning scheme. Motor current and speed
Also from Eq.(4), motor and load inertia can be estimated information are used to estimate the mechanical parameter-
when the motor is in acceleration and deceleration regions. influenced external disturbance T̂dis . This state estimator
The sensitivity of Ĵ relative to the model error is requires information on Ĵ and b̂ . The actual disturbance
'
∂T̂dis torque is calculated with Eq. (7), and then subtracted from
= -α r (12) '
∂ Ĵ T̂dis . After the influence of TL is removed, T̂dis becomes a
where α r is the motor acceleration rate. The adaptive function of Ĵ and b̂ only. Two adaptive controllers are then
controller expressed in the s-domain is used to find Ĵ and b̂ . The identified Ĵ and b̂ are used for
kj ' the disturbance estimator. Also, Ĵ is used to calculate new
Ĵ = ⋅ T̂dis ⋅ α r + J o (13) servo loop gains. Note that the gains are calculated every
s
servo cycle, and updated when the motor is stopped to prevent
where Jo is the initial Ĵ , kj is the adaptation rate. The lower sudden change in motor dynamic response.
diagram in Fig. 3 shows the block diagram of the adaptive
VI. EXPERIMENTAL RESULTS
controller for Ĵ . Similarly, the acceleration command α *r is
used in the adaptive controller instead of α r . Also as show The proposed control schemes were implemented with a
TMS320F2812 based DSP controller for experimental
in Fig. 3, Ĵ and b̂ adaptive controller were drawn in parallel. verifications. A 400 Watt PMSM motor was used in the
However, Ĵ control is executed when the motor is in experiments. A load motor was coupled to the test motor so
acceleration and deceleration regions, and b̂ control is that load torque can be applied. Sampling frequency of the
executed when the motor is running at constant speed. The servo control loop was about 5 KHz. Parameters of the motor
estimated parameter holds at the last updated value when its and load can be found in Appendix A.
ωr =1000rpm. It can be seen that T̂dis was approximately The motor used in the experiments was a three-phase PMSM
constant regardless of the motor speed, and its value was about motor, its parameters are:
Output power 400 Watt
the same as the external load applied. Note that the results
Motor inertia 0.000245 kg-m2
given in Fig. 5-7 are all consistent with Eq. (4). Load inertia 0~10 times motor inertia
Figure 8 shows the motor velocity ωr, inverse of Ĵ , b̂ , Viscous friction coefficient 1.5x104 Nm/rad/s
and T̂L when the motor was running back and forth between
1000 and -1000 rpm. A load inertia of about 10 times the REFERENCES
motor inertia was mounted on the motor for testing. The initial [1] B. Zhang, Y. Li and Y. Zuo, “A DSP-based fully digital PMSM servo
Jo was set to the motor’s original inertia, bo was set to 0, and drive using on-line self-tuning PI controller”, Proceeding of the 3rd
Power Electronics and Motion Control Conference, vol. 2, Aug. 2000,
no disturbance torque was applied. Note that 1/ Ĵ is shown in pp. 1012-1017.
the figure because it is more convenience for the control [2] Y. Guo, L. Huang, Y. Qiu, and M. Maramatsu, “Inertia identification
program to calculate 1/ Ĵ instead of Ĵ . It can be seen from and auto-tuning of induction motor using MRAS “, Proceeding of the 3rd
Power Electronics and Motion Control Conference, Aug. 2000, pp.
Fig. 8 that in the beginning, motor speed response had 1006-1011.
significant overshoot due to the incorrect Ĵ and b̂ used for [3] K. Fujita and K. Sado, “Instantaneous speed detection with parameter
identification for ac servo system”, IEEE Transactions on Industry
position loop tuning. But, after several cycles, Ĵ and b̂ Applications, vol. 28, no. 4, Jul. 1992, pp. 864-872.
approached their actual value and the overshoots in ωr [4] I. Awaya, Y. Kato, I. Miyake, and M. Ito, “New motion control with
inertia identification function using disturbance observer”, International
diminished. Also notice T̂L stayed around zero all the time. Conference on Power Electronics and Motion Control, Nov. 1992, pp.
77-81.
Figure 9 also shows ωr, 1/ Ĵ , b̂ , and T̂L when the motor [5] S. Komada, M. Ishida, K. Ohnishi, and T. Hori, “Motion control of
was running back and forth between 1000 and -1000 rpm. In linear synchronous motors based on disturbance observer”, IEEE IAS
Annual Meeting, Nov. 1990, pp. 27-30.
the beginning, both Ĵ and b̂ were tuned to their correct value [6] K.B. Lee, J.H. Song, I. Choy, and J.Y. Yoo, “An inertia identification
already, and no disturbance torque was applied. At the using ROELO for low speed control of electric machine”, IEEE APEC,
instance shown in the figure a disturbance toque of about Feb. 2003, pp. 1052-1055.
[7] R.D. Lorenz, “Observers and state filters in drives and power
-0.4Nm was applied. It can be seen that T̂L returned to its electronics”, IEEE IAS OPTIM 2002, May 2002.
[8] S.J. Hong, H.W. Kim, and S.K. Sul, “A novel inertia identification
correct value after just one servo cycle. Both Ĵ and b̂ were method for speed control of electric machine”, IEEE IECON, Aug.
disturbed at the instant load torque was applied, however, they 1996, pp. 1234-1239.
[9] M. De Campos, E.G. Caratti and H.A. Grundling, “Design of a position
also returned to their correct value after T̂L was correctly servo with induction motor using self-tuning regulator and Kalman
filter”, IEEE IAS Annual Meeting, Oct. 2000, pp. 1613-1618.
estimated and removed from T̂dis . [10] K.J. Astrom and B. Wittenmark, Adaptive Control, Addison-Wesly,
1989.
VII. CONCLUSIONS
An observer-based auto-tuning scheme for servo motor