You are on page 1of 6

IEEE International Workshop on Intelligent Robots and Systems

IROS '90

6 D.O.F. MANIPULATORS ABSOLUTE POSITIONING


ACCURACY IMPROVEMENT USING A
NEURAL-NETWORK
Nobuaki Takanashi
C&C Systems Research Labratories, NEOGorporation,
1-1, Miyazaki 4chome, Miyamae-ku, Kawasaki, 213 , JAPAN

Abstract plications is that most practical manipulator control systems


assume link parallelism or orthogonality. Using these as-
Absolute positioning accuracy improvement method, using sumptions, the inverse kine-atics equations are simplified
an artificial neural network, has been developed. In this to reduce the computation :mi:. Therefore, it is difficult to
method, an artificial neural network is used with a conven- use complete link parameters in the simplified inverse kine-
tional inverse kinematics computation module in parallel. matics computation.
The network automatically learns manipulator model error.
When a manipulator carries out tasks, both the network and
the inverse kinematics computation module receive the com- This paper represents an artificial neural-network based
manded end effector location, described in a Cartesian coor- absolute positioning accuracy improvement method. An
dinates. The network output is summed together with the artificial neural network was adopted to improve the ma-
inverse kinematics computation module output in a joint co- nipulator positioning accuracy. The network automatically
ordinate. Driving the manipulator joint by summed result, learns manipulators model error by the back error propa-
manipulator endpoint positioning accuracy is improved. The gation method. When a manipulator carries out tasks, the
effectiveness of this method was investigated experimentally network output corrects the manipulator joint angles. Both
by using a 6 D.O.F. (Degrees-Of-Freedom) manipulator for- the network and a conventional inverse kinematics compu-
ward kinematic model with model error. Jlesults show that tation module receive the commanded end effector position
the absolute positioning error has been reduced by 1/3. Also and orientation, described in a Cartesian coordinates. The
this method was effective in a work area which was not used
neurd network output is added to the inverse kinematics
for the network learning. The method described here'im-
computation module m t p u t in a joint coordinate. The joint
proves 6 D.O.F. manipulator absolute positioning accuracy
angles are used to drive manipulator joints.
with simple computation when task execution. The network
k u n s the model error automatically with simple arm end-
point measurement. Therefore, this method is applicable to
cawntional robot control systems. To investigate the effectiveness of this method, numeri-
cal experiments were performed. The experiments used a
6 D.0.F (Degrees-Of-Freedom) manipulator forward kine;
1 INTRODUCTION matic model. The manipulator model involved a model error
in a link length. In this experiment, the absolute positioning
ThC is a difference between a real manipulator and a ma- error has been reduced by 1/3. The result also showed that
m a t o r model in regard to inverse kinematics computa- this method was effective in a work area which was not used
Gon. In spite of this difference, manipulators has been for the networklearning. This feature is important in practi-
applied to repetitive work. In these kinds of application, cal robotic applications, because accurate three dimensional
achieving repeatable positioning accuracy is important. position/orientation measuring is difficult.

In numerical driven applications, such as off-line teaching


or CAD based FMS systems, absolute positioning accuracy The method described kere improves 6 D.O.F. manipu-
is important. Many research efforts have been made to ini- lator absolute positioning accuracy with simple computa-
prove absolute positioning a~curacy')')~). Most researches tion for task execution and with simple measurement during
are based on the Newton-Raphson compensation method to model calibration. This method is applicable to conventional
estimate link parameters. These met6ods are completely robot control systems by merely adding the network module
general and useful, not only for kinematics calculation but in parallel. Using this method, numerically commanded ma-
also for dynamics computation. nipulators motion, such tasks as in CAD (Computer Aided
Design) system, works precisely, because of the manipulators
The problem involved in using these methods for real ap- improved absolute positioning ac'curacy.

- 635 -
the output layer are made up of nine nodes and six nodes
respectively, because of three sets of three dimensional erid-
effector location vectors input and six driving joirit output.
In this experiment, number of the hidden layer was set to 50.
Output functions for the input layer and the hidden layer
were sigmoid functions. That for the output layer was a
linear function, because absolute values for joint angle coin-
aqo pensation are necessary in this application.
sq 1
sq2 Node outputs in the network of each layer relate to a sum
of weighted input level. Outputs in each layer are obtained
6q3 by next equations.
sq4
aq5
Of= f(N/) (1)
ut Layer]
N;" = cw$!-'
j
. ok-1 - Bk 3 (2)

[Hidden Layer] where,

Fig.1 Network Model 0;: ith node output value in layer k


kk-1
w;, : modifiable weight element between i t h node
in layer k and jth node in layer k - 1
2 POSITIONING ACCURACY 0;: ith offset value in layer k
IMPROVEMENT BY A f(z): 1/(1 + e - = ) [input layer and hidden layer],
NEURAL-NETWORK z [output layer]

2.1 Controller configuration Nine commanded location elements, position(Pz, P y , P z )


and orientation(. approach
~. vector:Az, Ay, At. / hand ori-
In this method, an artificial neural network is used in parallel entation vector: Sz, Sy, Sz), are used as the input value
with the conventional simplified inverse kinematics compu- o:,o:, Oi, . . . O i , respectively. Six node value of the output
tation module. Figure 1 shows the network model. Figure 2 layer was used as correcting joint angle 6q,,6q1,6qz, 6qS. e . ,

shows the robot controller configuration.

The conventional inverse kinematics computation module


I ( X ) and the network 6Z(X) were provided with a reference 2.2 Network learning procedure
end effector location X, which describes the commanded end The error back propagation model4) has been adopted as
effector position and location. Here, the location is spec- the network learning method. On the learning procedure,
ified with position(Pz, P y , P z ) and orientation( approach the difference between the commanded location X and the
vector:Az, Ay, A z / hand orientation vector: S r , Sy, Sz ). measured end effector location Y is used for the supervising
signal as 6X. Because the network output should be de-
The network consists of an input layer, a hidden layer and scribed in the joint coordinate, the supervising signal in the
an output layer, as shown in figure 1. The input layer and joint coordinate 6q is derived from 6X by EQ(3).

-1
[Neural Network] +--- J ( y- x)
As 1 - a
. -
16 4 [Supewisaty Signay
I 1 I

[In verse kinematics Function] [Fotward Kinematics Function]

Fig.2 Controller Configuration

- 636 -
69 = J i1 * 6X (3)
Here,
6X=Y-X (4)
Here, J is inverse of the Jacobi matrix for' the manip
ulator at joint angle q. The Jacobi matrix was efficiently
derived by Orin's method5).

In order to learn the kinematic model error in the network,


the weight elements wt/-' are modified using equations ( 5 )
and (6).

here,

d; = 0; - 6qi if k = t(output layer)


(Clw P l k d f " ) f ' ( N / ) otherwise
Fig.3 Model Manipulator Link Configuration
(6)
The learning procedure is suitable for manipulator applica-
tion in two reasons. One is the generality for manipulator controller. The forward kinematics equation results are re-
configuration requirements and for manipulator work area
garded as the manipulator's achieving location measurement
requirements. This procedure is applicable for any kinds of results.
manipulator configuration. Another is its applicability to
inexperienced motion. Once the manipulator model erGor is
In this simulation, a 6 D.0.F PUMA type manipulator
learned on link weight elements through the learning proce-'
model was used. Figure 3 shows the manipulator link con-
dure, the network generates compensation joint angles, even
figuration. All joints are rotational. The second link length
if the commanded location is not included in the learning
(L2) was 230mm, the fourth linklength (L4)was 230" and
data set.
the end effector length (TL) was 335mm. As the model error,
2mm was added to the second link length(L2). Therefore,
Practically, precise three dimensional positionjorientation
the inverse kinematics computation assumes L2=230mm
measurement is difficult. Two dimensional position mea-
and the forward computation assumes L2=232mm.
surement can be accomplished by using tablets or glass plate
scales. The neural network based approach improves three
dimensional motion absolute accuracy by the learning pro-
cedure with several sets of two-dimensional precise endpoint 3.2 ExDeriments bv Numerical Simulation
measuring. Experiments using the kinematic model have been per-
formed according to the steps listed below.

3 EXPERIMENTS [Preparation]

This method's effectiveness and the generality in regard to 0 Calculate joint angle set q from a set of end effector
the work area, which is not used for the learning, have been locations X ,F i n g the inverse kinematics function I ( X ) .
investigated by several numerical simulations. 0 Determine actual end effector location Y from q, using
the forward kinematics equation F(q), which includes
3.1 Manipulator M o d e l model error.
A forward kinematics equation F ( q ) , which includes a link [Learning]
parameter error, was defined. An inverse kinematics equa-
tion I ( X ) was described without the model error. The Ja- 0 Carry out the error back propagation learning with
cobi matrix J was calculated from the model without the x,Q, y.
error. [Execution]
In actual systems, the forward kinematics equation F ( q ) 0 Various locations, X', are given to the network 6 I ( X )
corresponds to a real manipulator, while the inverse kine- and the inverse kinematics equation I ( X ) . The sum of
matics equation I ( X ) corresponds to a conventional robot q and 6q is sent to F(q).

-637- ,
Table 1 Location Data Sets for Experiments
! Arm end p o i n t set f o r XI p l a n e move (unit:”)
: Ipx py p7.1 ( a x a y a21 (SX SY S L )
* 25
240 -200 -335 0 0 -I 0 I 0
280 -200 -335 0 0 -I 0 I 0
320 -200 -335 0 0 -I 0 I 0
360 -200 -335 0 0 -I 0 I 0
400 -200 -335 0 0 -I 0 I 0
240 -100 -335 0 0 -1 0 I 0
280 -100 -335 0 0 -1 0 1 0
320 -100 -335 0 0 -I 0 I 0
360 -100 -335 0 0 -1 0 I 0
400 -LOO -335 0 0 -1 0 I 0
240 0 -335 0 0 -I 0 I 0
280 0 -335 0 0 -I 0 I 0
-335 0 -1 0 I 0
x
320 0 0
360 0 -335 0 0 -I 0 1 0
400 0 -335 0 0 -I 0 1 0
240 100 -335 0 0 -1 0 1 0
280 100 -335 0 0 -I 0 I 0 Fig.4 Location Data Sets for Experiments
320 100 -335 0 0 -I 0 I 0
360 100 -335 0 0 -I 0 I 0
400 100 -335 0 0 -I 0 I 0

240 200 -335 0 0 -I 0 I 0


210 200 -335 0 0 -1 0 I 0
320 200 -335 0 0 -I 0 I 0 Table 2 compensation Joint Angle Example
360 200 -335 0 0 -I 0 I 0
400 200 -335 0 0 -I 0 I 0

: Arm end p o i n t set l o r Y Z p l a n e D o v e .


: (px PY PZI ( a x a y a z ) ( S L SY 521
= 25
400 -200 240 1 0 0 0 I 0
400 -200 280 I 0 0 0 I 0 -15.524 54.315 71.369 0.000 54.315 -15.524
400 -200 320 I 0 0 0 I 0
400 -200 360 I 0 0 0 I 0
400 -200 400 I 0 0 0 1 0 Supervisory
.OOOO -.I6300 .68900 .OOOOO -.52400 .OOOOO

1 I
400 -100 240 I 0 0 0 1 0

1
400 -100 280 1 0 0 0 I 0
400 -100 320 I 0 0 0 1 0
400 -100 360 I 0 0 0 I 0 .00010 -.07183 .69384 .00301 -.61962 .OOOOO
400 -100 400 I 0 0 0 I 0 bq
400 0 240 I 0 0 0 1 0
400 0 280 I 0 0 0 I 0
400 0 320 1 0 0 0 1 0
400 0 360 I 0 0 0 I 0
400 0 400 1 0 0 0 1 0

400 100 240 I 0 0 0 1 0


400 LOO 280 I 0 0 0 1 0 P, Pv P, RMS error
400 100 320 I 0 0 0 I 0
400 LOO 360 I 0 0 0 I 0
400 100 400 I 0 0 0 I 0 Location 360.00 -100.00 -355.00 0.00
X
400 200 240 I 0 0 0 I 0
400 200 280 I 0 0 0 I 0 361.57 -100.44 -333.83
100 200 320 I 0 0 0 I 0 Realized Location 2.01
360 I 0 0 0 I 0 (without compensation)
400 200
400 200 400 I ,O 0 0 I 0 Compensated with 359.99 -100.00 -335.00 0.008
Supervisory Signal
The compensated end effector locations, Y’, are derived
‘Ompensated with 359.98 -99.98 -335.61 0.61
by F(q). Neural Network
[Estimation]
Calculate the mean square error for Y’ - XI. Data sets XY and YZ were used to investigate the
network’s positioning accuracy improvement capability for
Twenty five points on X-Y plane and Y-Z plane were se-
learned locations. Both data sets were used individually or
lected as test data sets XY and YZ, respectively. Figure together. The data set XY’ was used to show the network’s
4 and Table 1 show test point locations. These two data generality for inexperienced motion. When the learning, the
sets were used both in the learning and in the execution.
data set XY was used, then the data set XY’ was used to
Inputs and supervisory signals were normalized so that the
estimate positioning error correction capability.
maximum value was under 1.0. Outputs were back to their
original magnitude when execution.
As shown in figure 4, end-effector orientations( the ap-
proach vector ) were perpendicular to the X-Y plane, in the
data set XY, and perpendicular to the Y-Z plane, in the 4 RESULTS
data set YZ.
One of the results is shown in Table 2 and Table 3. Table 2
Also, a test data set, XY’ was generated by moving the shows the compensation joint angles 6q, at the commanded
25 points in data set XY 30mm along the Z-axis and 15” joint angles q,. The commanded joint angles correspond to
along the X-axis. The network was learned 450 times, using the nineth point in table 1. Supervisory signals, used for the

- 638 -
thousand times of training.
( d 4 Learning Curve for Position Correction

I\
20.00 1 1 Figure 6 to 8 show absolute positioning error distribution.
In Figure 6, the network was trained using 25 points on the
16.00 X-Y plane and the cmpensatory joint angles were gener-
ated for the same 25 p h t s on the X-Y plane,i.e. data set
XY was applied to the network both for the training and for
the execution. As shown in the figure, absolute positioning
error was reduced to 0.45mm, on an average. Compensated
manipulator motion is four times accurate compared with
the m d o n generated by a conventional robot controller.

1
In Figure 7, a combination of 25 points on the XY plane
.oo I and 25 points on the YZ plane were used for learning. In
0 200 400 600 800 1000
this case, points on the XY plane were used to the train-
Number of Learning (N) ing first, and then points on the YZ plane were used. Rest
Fig.5 Learning Curve
of the training was carried out similarly using data on the
XY plane and then data on the YZ plane. The same com-
bination of 50 points were used for the effectiveness evalua-
network learning, were shown in the same table, too. tion. Also, in this case, the absolute positioning error was
reduced to 0.45". The result means that the network has
The table shows that the network generates appropriate been acquired completely different nonlinear compensation
compensation joint angles. The network output 6q is close functions. The accuracy was improved more than four times
to the supervisory signal. Similar results were obtained for better than the motion with no correction.
other points. The result proves that the neural network has
learned non-linear computation. Also it proves that the net- Figure 8 shows the error distribution, when data set XY
work generates accurate analog absolute value. t
was used for the learning and XY' was used for the execu-
tion. In this case, data sets for the learning and the execu-
In pattern recognition applications, each element absolute tion differ from each other. Even in this case, the absolute
output value in the network output layer is of less impor- positioning error was reduced to 0.78mm, on an average.
tance. Mutual differences among output node value are used This result shows this method feature for learning set gen-
to select one category as the recognized result. In control erality.
application, all output absolute value relates tot4achieving
positioning accuracy. Therefore, the absolute output value
is important for the positioning accutacy improvement.
5 SUMMARY
Table 3 shows the compensated end-effector location. Ab-
The experiment results show the effectiveness of the pro-
solute positioning error was evaluated by summing position-
posed method. This simple computation scheme improves
ing deviation from the commanded position along all X,Y,Z
the 6 D.O.F. manipulator absolute positioning accuracy.
direction as root mean square ( R.M.S ) error. Here,
Also, it was shown experimentally that the error back p r o p
agation model artificial neural network learns highly non-
linear functions. The network generated appropriate joint
R.M.S. angles for the end effector location compensation. Though
error = d(Yz - XZ)Z + (Yy- X,)Z + (Yz- X,)? (7) the results show the possibility of applying an artificial neu-
ral network to manipulator accuracy improvement, the a b
Because the manipulator model incorporates 2mm link solute positioning compensation capability is still not suf-
length error in the 2nd link, the R.M.S. error without com- ficient. One of the reasons is regarded as in the training
pensation was 2". The R.M.S error, after correction by data sets. In this experiment, the end effector position was
the network output, has been reduced to 0.6" in table changed, while its orientation was fixed. Further investiga-
3. Thus, the absolute positioning error was reduced to 1/3, tion on data sets for learnifig is now carrying out.
compared with no correction. Positioning accuracy improve-
ment in the same magnitude has been achieved for other
points. Acknowledgement

Figure 5 shows the learning curve. Difference between the The author thanks Dr. Tagawa and Mr. Fukuchi for their
network output and the supervisory signal versus number of helpful discussions.
training was plotted. The training gradually advances up to
a thousand times. No more error reduction occurred over a

- 639 -
1 Average
= -454068
Standard Deviation
= .379379
Number of Samples
= 25

.oo *40 -80 1.20 I .60 2.00


RMS Error of End Point (mm)
Fig.6 RMS Error Distribution (Learning:XY, Execution:XY)

Average
= .454043

-00 -40 -80 1-20 I .60 2.00


RMS Error of End Point (mm)
Fig.7 RMS Error Distribution (Learning:XY+YZ, Execution:XY+YZ)

. = -780489
8 - - Standard Deviation
= .414220
Number ofSamples
= 25

.00 -40 -80 1.20 1.60 2.00


RMS Error of End Point (mm)
Fig.8 RMS Error Distribution (Learning:XY, Execution:XY’)

[3 ] C.H.Wu,”The kinematic Error Model for the Design of Robot


References Manipulator”, Proc. of the 1983 American Control Conference,
pp.497-502, 1983
[I ] S.IIayati, and M.Mirmrani,”Improving the Absolute Positioning
Accuracy of Robot Manipulators”, J.of Robotic Systems, V01.2, [4 1 D.E.Rumelhart, J.L.McClelland and the P D P Research Group,
No.4, pp.397-413, 1985 ” P a r d e l Distributed Processing”,Vol.l, MIT Press, 1986
[2 ] B.Schefer,”Geometric Control and Calibration Method of an In- [5 ] D.E.Orin and W.W.Schrader,”Efficient Computation of the Jaco-
dustrial Robot”, Proc. of 12th ISIR, pp.331-339, 1982 bian for Robot Manipulators”,Int.J.of Robotics Research, vo1.3,
No.4, pp.66-75, Winter 1984

- 640 -

You might also like