On Neural Network Application to Robust

1 downloads 0 Views 235KB Size Report
On Neural Network Application to Robust Impedance Control of. Robot Manipulators. Seul Jung and T.C. Hsia. Robotics Research Laboratory. Department of ...
On Neural Network Application to Robust Impedance Control of Robot Manipulators Seul Jung and T.C. Hsia Robotics Research Laboratory Department of Electrical and Computer Engineering University of California, Davis Davis, CA 95616 e-mail:[email protected] and [email protected]

Abstract Performance of impedance controller for robot force tracking is a ected by the uncertainties in the robot model and environment sti ness. The purpose of the paper is to improve the controller robustness by applying the neural network technique to compensate for the uncertainties in the robot model. A novel error signal is proposed for the neural network training. In addition, an algorithm is developed to determine the reference trajectory when the environment sti ness is unknown. Simulations show that highly robust position/force tracking by a three degrees-of-freedom robot can be achieved under large uncertainties.

1 Introduction When robot manipulator is in contact with a constraining surface(called the environment), force is generated between the end e ector and the environment. The amount of forces exerted by the robot to the environment depends on how much the end-e ector position is physically constrained by the environment to reach its goal position. Hence, the contact force can be regulated by appropriate control of the end-e ector position. One most frequently used approach is to adjust the robot end-e ector position in response to the sensed contact force in such a way that a target impedance relationship is satis ed. This is the well known impedance force control concept [1]. Design of impedance control law is straight forward if the models of the robot manipulator and the environment are known with high precision. Uncertainties in these models degrade the system performance. In practice, the complete dynamic model of a robot is not known exactly, and the environment sti ness is  This work is supported in part by NITTA Corporation of Japan

also only approximately known. Accurate knowledge of the environment sti ness is very important in that it determines the robot target trajectory in order to attain the desired contact force. The objective of this paper is to present a solution to impedance force control assuming there are uncertainties in robot dynamics and environment sti ness. The proposed solution employs the sensed contact force and neural network technique in the controller design. In the literature, it has been shown that neural networks(NN) are very e ective in compensating for trajectory tracking in free space [2, 3, 4, 5, 6, 7]. Here we wish to extend these NN compensating concepts to force control in constrained space. One example of such kind was reported in [8] in which NN position/force control has been implemented for cooperative multiple robots. Adaptive impedance control technique proposed in [9] helps the mapping of Cartesian control input to joint control torque so that robot dynamic model is not required under the position/force control. However, both studies did not address the issue of environment uncertainties. There have been many studies made to solve the problem of sti ness uncertainties such as by employing separate trajectory modi cation control loop using integral control [10], or by generating reference position using adaptive control [11]. Although these techniques do work, they tend to increase the complexity of the system dynamics which require special attention to system stability.

2 Dynamic Equation of Robot manipulators The Cartesian dynamic equation of an n degreesof-freedom manipulator in free space motion is given by : D x + h + f  = F (1) f

where D is n x n Cartesian inertia matrix, h is the n x 1 Cartesian Coriolis, centrifugal, and gravity forces, f  is the n x 1 friction disturbance, F is the n x 1 control force, and x is the n x 1 end-point position. When the manipulator is in contact with an environment, contact force F is exerted to the environment by the end-e ector. In this case, the robot model becomes D x + h + f  = F ? F (2)    In most practical cases, D ; h ; and f in the model are not exactly known. Thus only nominal estimates of the model are available for controller design. f

e

e

f

f

3 Impedance Force Control Direct application of position controllers designed for free space robot motion usually results in instability when robot hand is in contact with a constraining environment because these controllers ignore the fundamental dynamic relationship of interaction between the robot and the environment. Impedance control allows us to specify the robot sti ness for a given task under contact with the environment. The interaction between the environment and the end-point of the robot in terms of a desired mechanical sti ness, called impedance is regulated. Thus the impedance control regulates the relationship between force and position by setting suitable gains of impedance parameters. The control law F for impedance force control then is F = D^  u + h^  + F (3) where D^  ; ^h are estimates of D ; h and F is the exerted force on the environment, and u is given by u = x + M ?1[B(x_ ? x) _ + K(x ? x) ? F ] (4) where M B and K are diagonal n x n symmetric positive de nite matrices of desired inertia, damping, and sti ness gains , respectively, and x is the reference end-point trajectory. Combining (2),(3), and (4) yields the closed loop tracking error equation e+M ?1[B e+Ke _ ? F ] = D^ ?1 [D x +h +f  ] (5) e

e

r

r

r

e

r

e

f

where D = D ?D^ ; h = h ?h^ , and e = (x ?x). In the ideal case where D = h = 0, and f  = 0, the closed loop robot satis es the target impedance relationships F = Me + B e_ + Ke (6) Since there are always uncertainties in the robot dynamic model, the ideal target impedance relationships (6) can not be achieved in general. Thus the r

f

e

impedance based force control is not robust in practice. To improve robustness, NN controller can be introduced in (3) to compensate for the disturbances in (5) due to model uncertainties. Another problem is the diculty of knowing the environment sti ness accurately in advance for us to design the reference trajectory x to achieve the desired contact force. We will address this issue in section 6. r

4 Proposed NN Controller Scheme In this section, we present a NN controller design for the impedance control system as shown in Figure 1. Let the NN output be denoted as . A new control law is de ned as F = D^  (u + ) + h^ + F (7) where u is the same as (4). Combining (7) with (2) yields the corresponding closed loop error system as e+M ?1 [B e+Ke _ ? F ] = D^ ?1 (D x +h +f  ) ?  (8) De ne an error signal v as v = e + M ?1[B e_ + Ke ? F ] (9) The NN control objective is to generate  to reduce v to zero in (8). We therefore propose here to use v as the training signal for the NN. The ideal value of  at v = 0 then is (10)  = D^ ?1 (D x + h + f  ) Clearly minimizing the error signal v allows us to achieve ideal impedance relationship (6). e

e

f

e

f

5 Neural Network Compensator Design The two-layer feedforward neural network(with 9 inputs and 3 outputs) shown in Figure 2 is used as the compensator. It is proposed that the inputs be X = [x (t) x (t ? 1) x (t ? 2)] , and they are multiplied by weights(w1 ). Then the summed signal at a node activates a nonlinear sigmoidal function f(). The sigmoid function chosen is bounded in magnitude between 0 and 1: 1 (11) f() = 1 + exp( ?()) T r

T r

T r

T

ij

The output  at a linear output node can be calculated from its inputs as follows: XH  = [ w2 ( 1 + exp(?(P 1I x w1 + b1 )) )] + b2 =1 i =1 (12) k

n

k

jk

j

n i

r

k

ij

j

where n is the number of inputs, n is the number of hidden neurons, x i is the ith element of input of X, w1 is the rst layer weight between ith input and jth hidden neurons, w2 is the second layer weight between jth hidden neuron and kth output neuron, b1 is a biased weight for jth hidden neuron and b2 is a biased weight for kth output neuron. The weight updating law minimizes the objective function J which is a quadratic function of the training signal v(9). (13) J = 12 v v Di erentiating (13) and making use of (8) yields the gradient of J as follows: @ @J @v (14) @w = @w v = ? @w v in which the fact T = ? T is used. The backpropagation update rule for the weights with a momentum term is w(t) =  @ (15) @w v + w(t ? 1) where  is the update rate and is the momentum coecient. Speci cally, I

H

r

ij

jk

j

k

T

T

T

@v

@

@w

@w

T

w1 (t) = s1 (1 ? s1 )x i [

X n

v w2 ] + w1 (t ? 1) =1 (16) w2 (t) = v s1 + w2 (t ? 1) (17)

ij

j

r

j

k

jk

where x ; x ; f represents an element of X ; X ; F , and k is the combined sti ness of the environment and the robot [12] (23) k = k kk +k in which k and k are corresponding elements of K and K . So when the environment sti ness k is known exactly, it is easy to calculate the reference trajectory x from (22) and (23). In practice, k is not accurately measurable so that x is also inaccurate resulting poor force control performance. We propose here not to use k directly in (23), rather to identify the environment sti ness k through the relationship(assume the environment is an ideal spring) f = k (x ? x ) (24) Solving for k yields k = x ?f x (25) where f is the measured contact force obtained from a wrist force sensor. In practice (25) is only a close estimate of k as f may be subjected to some measurement error. Substituting (25) into (23) yields r

k

b1(t) = s1 (1 ? s1 )[ j

j

j

X n

j

k

=1

jk

j

b2 (t) = v + b2 (t ? 1) (19) 1 s1 = 1 + exp(?(P I x w1 + b1 )) (20) =1 i k

k

k

n

j

XH n

s2 = k

j

=1

r

i

j

ij

s1 w 2 + b 2 j

jk

(21)

k

where s1 is the output of jth hidden neuron and s2 is the output of kth output neuron. j

k

6 Computing Reference Trajectory using Sensed Force Regulating F to track a desired contact force F ; the reference trajectory X must be appropriately designed based on F ; X (environment position), K; and K (environment sti ness) as follows: (22) x = x + x x = kf e

d

r

d

e

r

e

r

r

ef f

d

e

e

e

r

e

r

e

e

e

e

e

e

e

e

e

e

e

e

k e = ( ? ee) = k(x ?kfx ) + f k + ( ? e) f

k

x

ef f

x

(26)

e

f

x

e

x

e

Combining (26) with (22) yields (27) x = x + f [ k(x ?kfx ) + f ] This is the desired results for designing x . We see that x is modi ed from x based on f ; f ; k; x; and x , all of which are assumed to be known at all times. We note however that (27) is invalid when f = 0. This case represents the moment just before the robot is exerting force on the environment at which x = x . So we see that the trajectory modi cation term x (28) x = f k(x ?kfx ) + f is inde nite at f = 0 when x ? x = 0. To take care of this case, we determine the limits of x for f = 0 at x ? x = 0 using L0 Hopital0 s rule which yields x = d . Therefore (27) is modi ed as e

r

e

e

d

e

r

r

e

d

e

e

e

e

r

e

r

e

d

e

e

e

r

e

d

e

e

jk

k

r

e

ij

v w2 ] + b1(t ? 1) (18)

d

ef f

k

jk

e

ef f

x = r

(

f

e

e

k

if f = 0 x + d x + f [ ( ? ee)+ e ] if f 6= 0 e

e

f

k

d

e

k x

x

kf

f

e

(29)

This result is applicable to robot position control for both contact and non contact phases. Since x is constant when f and k are constant, x_ and x are zero. Thus x_ = x_ and x = x are used in the simulations. The results show that the force tracking performances are excellent under these assumptions even though k is varying. r

r

d

r

e

r

e

r

e

e

7 Simulation Results

8 0t k: This property is demonstrated by an experiment using PUMA 560 arm and a JR3 wrist force sensor. e

References [1] N. Hogan, \Impedance control : An approach to manipulator, part i, ii, iii", ASME Journal of Dynamic Systems, Measurement, and Control, vol. 3, pp. 1{24, 1985. [2] H. Miyamoto, M. Kawato, T. Setoyama, and R. Suzuki, \Feedback error learning neural network for trajectory control of a robotic manipulator", IEEE Trans. on Neural Networks, vol. 1, pp. 251{265, 1988.

[3] A. Ishiguro, T. Furuhashii, S. Okuma, and Y. Uchikawa, \A neural network compensator for uncertainties of robot manipulator", IEEE Trans. on Industrial Electronics, vol. 39, pp. 61{ 66, December, 1992. [4] J. Yuh and R. Lakshmi, \An intelligent control system for remotely operated vehicles", J of Ocean Engineering, vol. 18, pp. 55{62, 1993. [5] F.L. Lewis, K. Liu, and A. Yesildirek, \Neural net robot controller with guaranteed tracking performance", Proc. of Intelligent Control, pp. 225{ 231, 1993. [6] S. Jung and T.C. Hsia, \Neural network inverse control of robot manipulator", Interna-

tional Conference on Neural Information Processing, pp. 603{608, Seoul, 1994.

[7] S. Jung and T.C. Hsia, \On-line neural network control of robot manipulators", Interna-

tional Conference on Neural Information Processing, pp. 1663{1668, Seoul, 1994.

[8] J. M. Tao and J. Y. S. Luh, \Application of neural network with real-time training to robust position/force control of multiple robots", Proc. of

the IEEE International Conference on Robotics and Automation, pp. 142{148, 1993.

[9] R. Colbaugh, H. Seraji, and K. Glass, \Direct adaptive impedance control of robot manipulators", Journal of Robotic Systems, vol. 10, pp. 217{248, 1993. [10] T. Lasky and T.C. Hsia, \On force-tracking impedance control of robot manipulators",

X r (t) X r (t-1) X r (t-2)

Neural Network Φ v

.. X r (t) +

. X r (t)



+

X r (t)

. E

Σ

+ M -1 B

+

+

+ +



U +

Σ

+

+

^ D*

Σ

Σ

JT

τ

Robot

+

. X (t) X (t) Fe

^h* Σ

E

M

-1

M

K

-1

− Fe

Figure 1: The proposed NN Force Control Structure 1

xr (t)

B

xr (t-1)

B

1

w

ij

s 1

1

sj

w2

jk 2

xr (t-2)

B

s

xr (t)

B

s

xr (t-1)

B

s

xr (t-2) 2

B

s

xr (t) 3

B

xr (t-1)

B

xr (t-2)

B

1

2

2

L

sk

φ

L

φ

L

φ

1

2

3

s 2

3

bk 1

1

3

bj 1

B : Buffer

s : Sigmoid function

L : Linear function

: Bias

Figure 2: NN structure

Proc. of the IEEE International Conference on Robotics and Automation, pp. 274{280, 1991.

[11] H. Seraji, \Adaptive admittance control : An approach to explicit force control in compliant motion", Proc. of the IEEE International Conference on Robotics and Automation, pp. 2705{ 2712, 1994. [12] Mark W. Spong and M. Vidyasagar, Robot Dynamics and Control, John Wiley and Sons, 1989. [13] S. Jung, T. C. Hsia, and B. G. Bonitz, \Force tracking impedance control under unknown enviroment sti ness", submitted to the Journal of Robotic System, February, 1995.

Σ

-

z

q

3

l

l

2

3

q

2

- f

x

e

Environment

l1

q1

y

x 0

xe = 0.6109 m x r

Figure 3: Task 1 : Sine Wave Tracking on Flat Surface Environment

Desired (.....), NN Compensated (__), Uncompensated (--) 15

q

-

3

xe l

l2

q

-f

2

e

- f 3

x

ez

xr

xy

10 Force (N)

z

Environment

xy

5

45

o

0 0

2

4

6

xy

Figure 4: Task 2 : Circular Tracking on 45 Tilted Surface Environment o

8 time (sec)

10

12

14

16

Figure 7: Task 2 (Circular Trajectory Tracking) : Force Tracking Desired(.....), NN Compensated(__), Uncompensated(---)

Desired(.....),NN compensated(__), Uncompensated(--)

6

6

5 5

4 Force (N)

Force (N)

4

3

3

2 2

1 1

0 0

0 0

1

2

3

4 time (sec)

5

6

7

1

2

3

8

Figure 5: Task 1 (Flat Wall) : Force Tracking

4 time (sec)

5

6

7

8

Figure 8: Force Tracking Flat Wall Tracking with Environment Sti ness Identi cation Method Desired(.....), NN Compensated(__), Uncompensated(---)

1.1

16

1

14

0.9

12 Force (N)

z axis (m)

18

0.8 a

0.7

b 0.6 0.4

10 8 6

0.4

0.3 0.3

0.2

y axis (m)

4

0.2

0.1

0.1 0

0

2 x axis (m)

Figure 6: Task 2 : End point Tracking of Circular Trajectory (a) Actual Tracking (b) Reference Trajectory

0 0

1

2

3

4 time (sec)

5

6

7

8

Figure 9: Force Tracking Circular Trajectory with Environment Sti ness Identi cation Method