( / )
i
i i i i i i
i
K
J r q u
r
+ =
(3)
Nondiagonal terms, Coriolis and gravity term in
Eq.(3) can be lumped into disturbance term d
i
.
Eq.(1),(2) can be separately considered for each single
axis with disturbance :
( / )
ii i i i i i i
M q K r q d = +
( / )
i
i i i i i i
i
K
J r q u
r
+ =
(4)
( , ) ( ).
i ij ij i i
j
i
d
d M q C q q G q =
As a result of decoupling with the disturbance term d
i
,
we can simplify multi-axis robot manipulator control
problem to independent joint control problem with link
side disturbance as shown in Fig 1. Controller design
with Eq. (4) has an advantage of controller
implementation for its simple structure. For further
similar description of real robots, both motor side and
link side viscous friction terms B
m
, B
L
are added.
m
J
u
m
1/ r
K
L
J
L
L
B
m
B
d
m
J
u
m
1/ r
K
L
J
L
L
B
m
B
d
Fig. 1 Two-mass System
According to the notation of Fig. 1, Eq. (4) is
changed as
( / )
L L
J q B q K r q d + = +
( / )
m m
K
J B r q u
r
+ + =
(5)
In the Laplace domain Eq. (5) is represented by the
block diagram of Fig. 2.
2 2
( ) /
m m m
p s J s B s K r = + + ,
2 2 2 2
( ) / / /
l L L
p s J r s B r s K r = + + . . (6)
1
( )
m
p s
1
( )
l
p s
2
/ K r
2
/ K r
/ d r
q
1/ r u
+
+
+
+ 1
( )
m
p s
1
( )
l
p s
2
/ K r
2
/ K r
/ d r
q
1/ r u
1
( )
m
p s
1
( )
l
p s
2
/ K r
2
/ K r
/ d r
q
1/ r u
+
+
+
+
Fig. 2 Block diagram of two-mass system
The state space equation of the single-axis flexible
joint robot can be represented as
x Ax Bu Nd = + + (7)
where [ ]
T
x q q =
,
2
1
1 1
0 1 0 0
0
0 0 0 1
0
1
1
0 0
0
0
, ,
0
0
.
r
r r
L
B
K K
L
J J J
L L L
B
K K
m
J J J
m m m
J
m
J
A B N
= = =
(
( (
(
( (
(
( (
(
( (
(
( (
(
( (
(
( (
(
3. TYPICAL DISTURBANCE OBSERVER
WITH FLEXIBLE JOINT ROBOT
Disturbance observer technique is widely used in
mechanical servo systems for improving disturbance
rejection and robust performance [1-2, 6]. But almost
works assumed that the stiffness of the servo system is
sufficiently large to neglect the joint flexibility.
Fig. 3 shows the block diagram that typical methods
in [1-2, 6] is applied for a flexible joint robot, where v is
outer loop controller command. P
n
(s) is nominal plant
model. Q(s) is low-pass filter with a DC gain of one. In
order to see the behavior of the typical disturbance
observer loop without considering joint flexibility, it is
necessary to look at the transfer functions from d, and v
to q, and .
1
( )
m
p s
1
( )
l
p s
2
/ K r
2
/ K r
/ d r
q
1/ r v
+
+
+
+
1
( ) ( )
n
Q s P s
( ) Q s
+
u
+
Disturbance observer
1
( )
m
p s
1
( )
l
p s
2
/ K r
2
/ K r
/ d r
q
1/ r v
+
+
+
+
1
( ) ( )
n
Q s P s
( ) Q s
+
u
+
Disturbance observer
Fig. 3 Disturbance observer loop at the motor side
The transfer function from d, v to motor angle is
given by
2
(1 ( )) ( ) ( ) ( / )
( )
( ) (1 ( )) ( ) ( ) ( )
n
d
l n
Q s P s P s K r
G s
p s r Q s P s Q s P s
=
+
(8)
( ) ( )
( )
(1 ( )) ( ) ( ) ( )
n
v
n
P s P s
G s
Q s P s Q s P s
=
+
(9)
585
where P(s) is the transfer function of the plant from u to
in Fig 2.
2 2
( )
( )
( ) ( ) ( / ) .
l
m l
p s
P s
p s p s K r
=
(10)
The transfer function from d, v to link angle q is
given by
2
(1 ( )) ( ) ( ) ( ) ( ) ( ) 1
( ) (1 ( )) ( ) ( ) ( )
n m
qd
l n
Q s P s P s p s Q s P s
G
p s r Q s P s Q s P s
+
=
+
.(11)
2
( ) ( ) /
( ) (1 ( )) ( ) ( ) ( )
n
qv
l n
P s P s K r
G
p s r Q s P s Q s P s
=
+
.(12)
When ( ) 1 Q s , Eq. (8) goes to zero and Eq. (9)
becomes P
n
(s). This indicates that disturbance observer
reject the disturbance and compensate model
uncertainty effectively in the view of motor side. So
from the view of motor side, motor side dynamics
behaves as the nominal model. However Eq. (11), (12)
become
2
1
( )
1
qd
l
G
p s r
,
2
/
( )
( )
qv n
l
K r
G P s
p s r
. -. (13)
Eq. (13) shows that although disturbance rejection
and robustness is improved at the motor side, at link
side, motor side zero dynamics p
l
(s) in Eq. (10) remains
the poles of the whole system including disturbance
observer. In real plant, because B
L
is much smaller than
K, the poles of p
l
(s) are located in the left half plane
near the imaginary axis. These poles generate the link
side vibration.
To remedy link side vibration caused by disturbance,
disturbance observer considering joint flexibility must
be implemented together with the link angle q. But in
general, industrial robots can only measure the motor
position. So we need a new approach to estimate link
side states as well as disturbance.
4. ROBUST CONTROLLER DESIGN
4.1 Dual Observer Design
We consider the dynamic system with disturbance to
design dual observer. The state space equation is
x Ax Bu Nd = + + f
y Cx = f (14)
where x, u , d, and y are states, control input,
disturbance, and measurement outputs.
There is variety of existing dual observers which
estimates states and disturbances simultaneously
[7,13,14]. The unknown input observer(UIO) method,
one of the most well known approach, assumes that
disturbance is proportional that output estimation error.
The UIO structure[7,13,14] is represented as
( ) x Ax Bu Nd L y Cx = + + +
( ) d K y Cx = (15)
The UIO as shown in Eq. (15) is applicable when the
rank condition is satisfied [13-14]. The rank condition is
that CN has a full rank. Unfortunately, since our
system has only one measurement, which is motor angle,
the rank condition cannot be satisfied. In order to design
stable dual observer, we need two assumptions [15]:
(A1) disturbance dynamics is known.
(A2) The poles of disturbance dynamics do not locate
left-half plane.
According to assumption (A1) and (A2) disturbance
model is represented by
w Sw =
d Qw = cc (16)
where
d
n
w R , and eigenvalues of S dont have negative
real part.
Plant model Eq.(14) can be augmented with the
disturbance model in Eq. (16). Then, augmented plant
model is given by
0 0
x A NQ x B
u
w S w
= = +
( ( ( (
( ( ( (
(17)
[ ] 0 y C =
where is the augmented state. Then the dual observer
can be constructed as follows.
0
x x
w w
A L C NQ L x B x
u y
L Q S L w w
= + +
( ( ( ( (
( ( ( ( (
(18)
In Eq. (18), the observer gains L
x
and L
w
can be
designed by pole placement method.
4.2 Robust Controller Design
The design of the robust controller is based on Eq. (7)
together with assumption Eq. (16). Because the control
objective is that the link side angle is tracking the
reference trajectory, the control problem is represented
as
x Ax Bu Nd = + +
d
z Hx q = + .(19)
where [ ] 1 0 0 0
T
H = ,and control objective is
lim 0
t
z
.
We design the robust controller dividing two parts.
The first part is feedforward controller for the tracking
of reference trajectory. The second part is feedback
controller for the stability of the system and disturbance
586
rejection. The controller structure is represented as
ff fb ff x x w
u u u u K e K w = + = + + (20)
where
ff
u is feedforward term and
fb
u is feedback term.
(A) Feedforward controller
For the design of the feedforward controller, we
assume that disturbance and initial state error are zero.
Then Eq. (19) is
d d ff
x Ax Bu = +
0
d d
z Hx q = + = -(21)
where the notation d means the desired value.
From Eq. (19), we can obtain the feedforward
controller :
1 2 3 4 5 ff f d f d f f d f d
u K q K q K q K q K q = + + + +
1
2
3
4
5
2
2
0
/
( )
/
T
T
m L
f
m L
f
m L
f f
L m m L
f
f
m L
B B r
K
B B
K
J J
K
K K
B J B J
K
K
K
J J
K
r
+
+ +
= =
+
` `
)
)
(22)
From Eq. (22), for the feedforward control, it is
necessary that the reference trajectory is 4
th
order
differentiable.
(B) Feedback controller
As a result of feedforward control in Eq. (22), Eq.
(19) is changed to error dynamics,
fb x x
e Ae Bu Nd = + + ,
x
z He = . (23)
where e
x
= x
d
x is state error. With the assumption in
Eq. (16), this formula is appropriate to apply the output
regulation control algorithm in [15]. The feedback
controller consists of state feedback part and
disturbance feedback part. The control structure is given
by
fb x w x
u K e K w = (24)
Together with Eq. (17), Eq. (23) can be augmented as
fb x x
e Ae Bu NQw = + +
w Sw = (25)
For the output z regulation, the tracking error e
x
should
be located in output zeroing manifold.
x
e Xw = (26)
From Eq. (17),(24),(25), and (26), the stable output
regulation controller can be designed by following
theorem.
Theorem 1 suppose that A-BK
x
is Hurwitz, and there
exists a matrix X and feedback gain K
w
satisfying
( )
0
x w
A BK X XS BK NQ
HX
=
=
.(27)
Then lim 0
t
z
is satisfied.
proof : Define new state variable
x x
e e Xw = , then
system (25) can be rewritten as
{ } ( ) ( )
x x x x w
e A BK e A BK X XS BK NQ w = + +
x
z He HXw = + (28)
Substituting Eq. (27) into Eq. (28), the above equivalent
system description is
( )
x x x
e A BK e =
x
z He = (29)
Since A-BK
x
is Hurwitz, the whole closed loop system
state
x
e goes to zero. Therefore, the output regulation
condition lim 0
t
z
is satisfied.
Q.E.D
The state feedback gain K
x
can be designed by many
methods. In this paper we designed K
x
using pole
placement technique. The remaining term of feedback
controller is disturbance feedback gain K
w
. For the
simplicity of the problem, we can assume that the
disturbance is step function, then the disturbance model
in Eq.(16) is chosen as
0, 1 S Q = = (30)
Using the system model in Eq.(7) with the assumption
(30) and given K
x
, we can obtain X and K
w
, the solution
of Eq. (27). The result is
2
3
2
( / ) 1
/
x
w
K r K
K
r K r
+
=
[ ] 0 0 / 0
T
X r K = (31)
For the practical implementation, we restrict
disturbance feedback torque in some range with
saturation scheme. With this scheme, we prevent the
peaking phenomenon, which is occurred when the
estimated disturbance change rapidly [16].
5. SIMULATION AND EXPERIMENT
5.1 Simulation Result
Two different controllers are simulated to compare
the tracking performance and robustness. The first
controller is observer based state feedback
controller(OSC) in [9], the second is proposed controller.
587
Two controllers which are designed by pole placement
method have the almost same closed loop poles. Plant is
modeled with the parameters of two-mass system
experiment equipment in HHI, and the plant model
includes the link side Coulomb friction.
Fig.4 shows that two controller has similar tracking
performance when the plant model parameters are
known exactly. But at the steady state, while the
OSC(red) has the steady state error at link angle,
proposed controller does not have steady state error.
This means that the Coulomb friction term is
compensated well.
3 3.1 3.2 3.3 3.4 3.5
198.5
198.7
198.9
199.1
199.3
time(sec)
A
n
g
l
e
(
r
a
d
)
DOB
OSC
(a) Link angle
1.1 1.3 1.5 1.7 1.8
97
101
105
time(sec)
A
n
g
u
l
a
r
V
e
l
o
c
i
t
y
(
r
a
d
/
s
e
c
)
OSC
DOB
(a) Link Velocity
Fig. 4 Simulation results for proposed control(DOB)
and observer based state feedback control(OSC)
We simulate the situation where there are 30%
perturbations on the link side inertia. Fig. 5 shows that
the tracking error for the two controllers. The proposed
controller(DOB) shows more robust performance than
observer based state feedback controller(OSC).
0.5 1 1.5 2 2.5 3 3.5 4 4.5
-0.2
0
0.2
0.4
0.6
time(sec)
A
n
g
l
e
(
r
a
d
)
100%
70%
130%
(a) DOB
0.5 1 1.5 2 2.5 3 3.5 4 4.5
-0.2
0
0.2
0.4
0.6
time(sec)
A
n
g
l
e
(
r
a
d
)
100%
70%
130%
(b) OSC
Fig. 5 Tracking error plots for DOB and OSC control
5.2 Experimental results
To evaluate control performance, we use the
HyRoHILS(Hyundai Robot Hardware In the Loop
Simulation) system as shown in Fig 6. It consists of a
host station, a prototyping device(dSPACE equipment),
drive units and a 6-DOF HA006 robot manipulator.
Fig. 6 HyRoHILS system
Short pitch motion trajectory is used for the
evaluation of controller. Short pitch motion is the
general performance index of industrial robot in terms
of vibration suppression. The position of end-effecter is
measured by 3D-position measurement unit.
Proposed controller is compared with conventional
PPI controller. PPI control consists of inner velocity
feedback PI controller and outer position feedback P
controller. The proposed control algorithm only
implemented in base axis. Two controllers are designed
with the standard position parameter of HA006.
Experiment is performed for the case that robot has 40%
larger load inertia than nominal value in base axis. The
experimental results are shown in Fig 7. The proposed
controller(DOB) shows good performance in short pitch
motion. Despite of 40% perturbation of load inertia, the
oscillations of all the direction x, y, and z are much
smaller than PPI controller.
6. CONCLUSION
A disturbance observer based control algorithm was
proposed for flexible joints of industrial robots. The
588
multi axis robot control problem was considered as the
independent single axes of two mass system with link
side disturbance. For the estimation state and
disturbance simultaneously, dual observer was designed
with the assumption that disturbance dynamic was
known. The controller was implemented with output
regulation control. To prevent peaking phenomenon, the
disturbance feedback torques was restricted by some
range. The HyRoHILS system was used for the
evaluating control algorithm. The proposed algorithm
was found to have good tracking performance and
robustness against model uncertainty.
-120 -70 -20 30
878.2
878.6
879
879.4
x (mm)
z
(
m
m
)
Short Pitch motion
PPI
DOB
(a) Short pitch motion
0 0.5 1 1.5 2 2.5 3 3.5 4
-160
-140
-120
-100
-80
-60
-40
-20
0
20
40
time (sec)
x
(
m
m
)
PPI
DOB
(b) plot of position x
0 1 2 3 4
1124
1126
1128
1130
1132
1134
1136
time (sec)
y
(
m
m
)
PPI
DOB
(c) plot of position y
Fig. 7 Experimental results for proposed
control(DOB) and PPI control(PPI)
REFERENCES
[1] T. Umeno, and Y. Hori, Robust speed control of
DC servomotors using modern two degrees
-of-freedom controller design, IEEE Trans. on
Industrial Electronics, Vol. 38, pp. 363-368, 1991.
[2] C. C. Wang, and M. Tomizuka, Design of
Robustly Stable Disturbance Observers Based on
Closed Loop Consideration Using H
Optimization and its Applications to Motion
Control Systems, Proc. of the 2004 American
Control Conference, vol. 4, pp. 3764-3769, 2004.
[3] S. M. Shahruz, C. Cloet, and M. Tomizuka,
Suppression of effects of nonlinearities in a class
of nonlinear systems by disturbance observers,
Proc. of the 2002 American Control Conference,
vol. 3, pp. 2340-2345.
[4] M. W. Spong, Modeling and Control of Elastic
Joint Robots, ASME Journal of Dynamic Systems,
Measurement and Control, vol. 109, pp. 310-319,
1987.
[5] S. J. Kwon, Design and Analysis of a Robust
State Estimator Combining Perturbation
Observers, Journal of Control, Automation, and
System Engineering, vol. 11, pp. 477-483, 2005.
[6] M. K. Park, J. S. Hur, S. H. Lee, and J. H. Song,
Disturbance Observer Based Coupling Torque
Compensator for Industrial Robots with Flexible
Joints, Proc. of the 35
th
ISR, WE42-192, 2004.
[7] C. S. Liu, and H. Peng, Disturbance Observer
Based Tracking Control, ASME Journal of
Dynamic Systems, Measurement and Control, vol.
122, pp. 332-335, 2000.
[8] M. Jankovic, Observer Based Control for Elastic
Joint Robots, IEEE Trans. Robotics and
Automation, vol. 11, pp. 618-623, 1995.
[9] J. S. Hur, S. H. Lee, and J. H. Song, State
Observer Based vibration suppression for an
industrial robot, Proc. of 1
st
Korea-China Joint
Workshop on Robotics, pp. 162-166, 2001.
[10] S. H. Lee, J. G. Yim, J. S. Hur, and J. H. Park, A
gain-scheduling for the vibration suppression
servo control of articulated robots, Proc. of Int.
Conference of Control, Automation, and Systems,
pp. 2725-2730, 2003.
[11] M. Spong, S. Hutchinson, and M. Vidyasagar,
Robot Modeling and Control, WILEY, 2006.
[12] G. Franklin, J. Powell, and M. Workman, Digital
Control of Dynamic Systems, Addison Wesley,
1998
[13] Yi Xiong, and M. Saif, Unknown disturbance
inputs estimation based on a state functional
observer design, Automatica, vol. 39, pp.
1389-1398, 2003
[14] C. S. Liu, and H. Peng, Inverse-Dynamics
Based State and Disturbance Observers for
Linear Time-Invariant Systems, ASME Journal
of Dynamic Systems, Measurement and Control,
vol. 124, pp. 375-381, 2002.
[15] B. A. Francis, The Linear Multivariable
Regulator Problem, SIAM Journal on Control
and Optimization, vol. 15, pp. 486-505, 1977.
[16] H. Shim, Y. J. Joo, State Space Analysis of
Disturbance Observer and a Robust Stability
Condition, submitted, 2007.
589