Copyright © IFAC System Identification, Kitakyushu, Fukuoka, Japan, 1997
INTELLIGENT CONTROL OF ROBOTIC MANIPULATOR USING NEURAL NElWORKS
Pramod Gupta and Naresh K. Sinha
Department ofElectrical and Computer Engineering McMaster University Hamilton, Ontario Canada. LSS 4L 7
Abstract: This paper presents the control of a robotic manipulator using neural networks. A neural network-based scheme is used for the identification and control of a robotic manipulator. The main idea in this scheme is that by using a neural network to learn the characteristics of the robot system (or specifically the inverse dynamics of a plant) accurate trajectory following and good performance results are obtained. A modified fonn of the back propagation learning algorithm, based on the use of an independent, adaptive learning rate parameter for each weight and adaptive slope of the nonlinearity of the neuron has been used to train the neural network. This algorithm converges much faster than the standard back propagation algorithm. To demonstrate the validity of the proposed method, we apply it to the control of a three-link manipulator. Keywords: Robotic, nonlinear control, adaptive control, intelligent control
1. INTRODUCTION
wear-out and end-effector load changes. Unstructured uncertainty arises from effects not known to the designer, or those that are too complex to model. Unmodeled effects such as friction, motor backlash and external disturbance are typical. Flexibility at the joints and the flexibility of the links also contributes to the complexity and uncertainty of the model. Robot control has an inherent difficulty, since control is applied at the joints of the robot, while the desired trajectory is specified at its end effector. Thus, control requires the solution of the inverse dynamics problem. There have been many approaches to the solution of this problem. Examples are variable structure control, model based control such as computed torque method, adaptive control etc. The computed torque method is an effective means of control of robotic manipulators, but it has become widely recognized that the tracking perfonnance of the method in high speed operations is severely affected by the above-mentioned uncertainties. Inaccurate parameters used in the formulation of the dynamic model result in nonperfect linearization and decoupling of the plants by the controller. Adaptive
Robotics is a fast growing research field. Robots are finding more applications in manufacturing, hazard environments, aerospace, medical instruments and even domestic households. Robotic manipulators are very complicated nonlinear systems. A robotic manipulator is typically modeled as a serial chain of n rigid bodies. In general, one end of the chain is fixed to some reference surface while the other end is free, thus forming an open kinematic chain of moving rigid bodies. Dynamics of a robotic manipulator can be represented by a set of secondorder, nonlinear and highly coupled differential equations with uncertainty as a robot may work under unknown and changing environments and execute different tasks. Uncertainty in a manipulator can be divided in two categories: structured and/or unstructured uncertainty. Structured uncertainty may arise from inaccurate parameter values. This may arise from irregular geometric shapes of the robotic components, non-unifonn materials, non-symmetric motor or transmission installation, part
849
(I) The inverse dynamics problem: Given the vectors of the joint angles q(/), joint velocities 4(1), and accelerations 1(1), calculate the vector of torque inputs 't(/). Application of neural networks to the inverse dynamics problem has created a lot of interest recently (Kawato el al. 1987, Miyamoto et al. 1988). This is the problem we are c:imsidering in the present paper. Once the inverse dynamic model of the manipulator is known. it can be used IS a feedforward cootroller. This problem is addressed in the present work. (H) TbeJorward dynamics probiem: Given the torque vector 't(/), obtain the output vectoc q(t) and 4(1). This is equivalent to the problem of modeling the dynamical system of eq. (1).
approaches have been proposed to overcome this problem (Craig el al. 1987, Slotine and Li 1987). These adaptive methods have the advantage that, in general, they require no a priori knowledge of robot dynamics. A general drawback for the adaptive controller is that the computatiooal requircmcnts foc real time parameter tSimatim are high and sensitivities to numerical precision and measurcmc:nt noise acatcs problems. Thus, there is a need to develop a controller that can "learn" to control a robotic manipulator. In the m::cut past. neural networks have been applied for modeIing IDd coob'ol cL robotic manipulators (psaltis et al. 1987, K&wato et al. 1988, Miyamoto el al. 1988 ]. Growing intaest in applying neural networks to modcling and cootrOl 'afrobats is due to the faCt that the application of neural DCtwork.s promises a high computatiooal c:fficicucy. provided.by the massivcpara11elism and the dc:mcmtrated ability of neural oetwodcs to learn and to ~ complex and noo1inear mappings through c:ffedive training with a great degree of robustness, or fault toknmcc due to the distributed representation. In the most general scosc. neural networks.can be considered IS nonlincar mapping from one real vectoc space to another. Many rcscarch efforts have been put into the design of a neural netwodc: application foc robotic control. All these results showed that neural networks do have potential to overc:omc the difficulties in manipulator control experienced by classical control theory. Here we demonstrate the .potential of a neural network in conjunction with a linear compensator (pO controller) to c::ontrol a robotic manipulator. A neural network can be trained to provide the large part of the required control inputs. Small enors with this process can be corrected by using a standard linear compensator.
3. NEURAL NETWORK ARCHITECTIJRE
Narc:Ddra and Par1basarthy (1990) and Psaltis et al. (1988) have prescmed varioos methods by which a neural nc:twodc can be used to model and control dynamic systems. Fig. 1 shows the schematic of the neural network used here. This is a fecdforward network in which each layer is fully COOJXded to the following layer. There are no c:oonections from the inJ:m layer to the ouJp1,11layer.
Figme 1 A Fcedforward Neuril N~ork
2. PROBLEM STATEMENT A network consisting of three layers has been used. There are 9 nodes in the input layer, 20 nodes in the first hidden layer, 10 nodes in the second hidden layer and 3 nodes in the output Nodes in the input layer and output layer are fixed from the problem in hand. The three output nodes give the required torque to be fed to the manipulator. The input and output nodes have linear activation functions. The nodes in the hidden layers have a hyperbolic tangent activation function of the form
The control problem for robotic manipulators requires detcnnining.tbctime history of the joint inputs required to cause the end-cf[ector to execute a commanded motion. In the case of a robot system, the dynamics are complex and noolioear. The general form of the dynamic equations of a robotic system can be written as: 't
= D(q)1 + C(q,q) + G(q)
(1)
(2)
where't E R" is the joint actuator torques
and q E R" is the generalized joint angles, and D(q) is a matrix. usually referred to as the manipulator mass matrix containing the kinetic c:nc:rgy functions of the manipulator. C(q ,q)represents forces arising from Coriolis and centrifugal forces and G(q) is the fQrCC d~ to gravitation. Concerning the system represented by equation (1), the following two problems are enCOWltered:
The output signal of the ith node is given in terms of the sum of the signal from node j, weighted by as
w,.
(3)
850
2r------.----..----
1.5,------,----...-----
~ 1t - - - - f o - - - - . L - I - - - - J CS
B
•.= '0 5t-----h"---I-----1
··Sp.. ·
O.......~--------.L-----I
o
1
2
O.~--.....&-------lL.-----J
o
3
Figure 9 Angular Position of Liak 3
Figure 7 ADguIar Position of Liak 1
1.5r------.----~---
,..... tlb
1t - - - t - - . . . . 4 - - - - - I
~
f! cac:: ~
o ..= .;;
O.5t---~--~~--
.....
o
~
....
O~-_--a------IL---
o
1
2
Time (Sec.)
TUDe(Sec.)
B
1
2
3
Time (Sec.) .
FiJUt8 8 ADgular Position of Link: 2
854
3