FORCE/POSITION CONTROL OF ROBOT
MANIPULATORS:
A FUZZY ADAPTIVE CONTROL APPROACH
Silvério J. C. Marques
Luis F. Baptista
José S4 da Costa
Technical University of Lishon, Instituto Superior Técnico
Department of Mechanical Engineering, GCAR/IDMEC
Avenida Rovisco Pais, 1096 Lisboa Coder, Portugal
tel: 4951 1 8418190, fas:
Keywords: Robotics, Fuzzy control, Self-organizing
systems, Force control, Impedance control
Abstract
In the impedance control scheme in robotic manipu-
lation applications, the interaction force can be indirectly
controlled by acting on the manipulator reference position
trajectory. However, the reference position depends on
the environment parameters, like location and stiffness,
which in practice are not exactly known. To deal with
those uncertainties, this paper presents a fuzzy adaptive
approach which determines the appropriate reference
(target) positions to an impedance controller in order
to obtain the desired force/position trajectory. More-
over, only an estimate of the environment location is
necessary, and so the fuzzy adaptive controller corrects
this estimated position based on the force error. The
fuzzy adaptive controller is a kind of self organizing con-
troller, which consists of a direct fuzzy controller and an
adaptation mechanism, (the fuzzy inverse model) which
adjusts the membership functions of the consequent parts
‘To validate the proposed
control scheme, simulation results with a two degree
of freedom robot manipulator are presented where it is
shown a good force/tracking performance with uncertain-
ties on the environment location and on the stiffness value,
of the direct fuzzy controller
1 Introduction
Control of interaction between a robot manipulator
‘and the environment is crucial for successful execution of a
‘number of practical tasks where the robot end-effector has
to manipulate an object or perform some operation on a
surface, such as deburting, polishing or contour-following
as presented by Kazerooni et al. [3] and Mills and Golden
#351 1 8498007
berg (6). It is common to all of those applications that the
motion of the manipulator end-effector is constrained by
the environment. There are two main approaches to deal
with this problem: Hybrid position force control scheme,
proposed by [8] and impedance control scheme proposed
by Hogan [1]. In Lu and Meng (5) a target impedance
reference trajectory (TIRT) based on a reference model
with desired impedance parameters, is generated. The in-
ner loop controller follows the TIRT which is an update
of the desired planned trajectory due to the environment
constraint in order to guarantee the desired eontact force,
However, in that approach the TIRT was generated by
fa fixed structure and no knowledge about the environ-
ment, exists, and if the planning position fails, the con-
trol force cold also fail, With this problem in mind,
the updated position due to the constraint environment
is a process that needs Intelligence. This Intelligence can
be incorporated in the controller by linguistic descriptions
which meet knowledge about. the process in terms of fuzzi-
ness. Some work exist in fuzzy control with applications to
force/position control of robot manipulators as in Hsu and
Fu [2], Shibata et al. 9], and Tarokh and Bailey (10. The
main characteristic of these works is some necessary self
“organizing capability. One interesting self-organization in
spired in Procyk and Mandani (7] is proposed by Layne
and Passino [4}, which does not rely on the specification of
an explicit inverse model of the process, and reduces the
computational complexity and memory requirements. In
[10] an adaptive fuzzy controller for explicit force control
with self-organizing capability is proposed, similar to that.
of (4), shifting and contracting/expanding the membership
functions of the fuzzy sets associated with the consequent,
rules of the direct fuzzy controler.
In this article, an approach inspired on the work of [4]
and [10] is proposed. ‘The proposed approach combines
the design of a force control structure which combines
two distinet. control methodologies, namely a fuzzy force
adaptive control and an impedance control resulting on
an improved force control scheme for time-varying stiff-ness rigid environments and uncertainties of the environ-
ment location. Thus, with the proposed overall control
scheme, the manipulator is trajectory-controlled with an
npedance controller and is force-controlled with the fuzzy
force adaptive control scheme designed for the conven-
tional impedance controller.
‘This paper is organized as follows: Section 2 presents
a brief description of the manipulator dynamics in con-
straint coordinate frame and the environment model. Sec-
tion 3 presents the global control structure, that includes
the impedance controller and the fuzzy adaptive con-
troller, and how the integration of these components is
done. Simulation results are presented and analyzed i
Section 4, Finally, conclusions are drawn in Section 5.
2 Models of robot dynamics and
environment
The dynamic model of the robot interacting with the
environment is described by vector differential equations
of the form:
M(q)4 + C(q,4)4 + 9(@) + d(g) = 7 ~ Te a)
where q, q and @ correspond to the (nx 1) vectors of
joints angular positions, velocities and accelerations, re-
spectively. M(q) represents the (nxn) symmetric positive
definite inertia matrix, C(q, 4)4, describes the (nxt) vee~
tor of Coriolis and centrifugal effects, 9(q) accounts for
gravitational terms and d(q) for the frictional terms in
joint coordinates, respectively. The term 7 represents the
(vx 1) vector of applied joint torques and 7, = J" (q)f.
denotes the (nx 1) vector of generalized joint torques ex-
ceted by the end-effector on the environment with f, be-
ing the contact force measured by the wrist force sensor,
The term J represents the Jacobian matrix and relates
the velocities of the robot end-effector with the velocities
of robot joint coordinates. For non-redundant robots the
‘dynamic model (1) can be written in cartesian space as:
M(x) + C,(2,2)é + 9,(e) + de(d) = FF. (2)
where a is the six-dimensional vector of the position and
orientation of manipulator end-effector.
‘Throughout this paper, the environment will be modelled
as a linear spring-dumper system. The equation of the
cuvironment model, is given by:
Kv ~ a.) + Bt (3)
where K, and B, represent the environment stiffness and
damping matrices respectively, while «, corresponds to the
environment position.
3 Force/position controller
3.1 Introduction
In the conventional impedance force control scheme,
the reference position trajectory aa and the desired force
, can be generated off-line by the planning system. How-
fever, the reference position trajectory does not take into
account the stiffness environment value ke neither the ex-
act knowledge of the geometric shape of the surface. So,
Jet's consider the reference position along the constrained
direction be an estimate of the environment location. In
this way, to guarantee the desired force f an adjust~
ing mechanism is necessary to correct that. estimate of
and send it as an input (target) to the impedance
controller. A fuzzy adaptive controller based on a self-
organizing fuzzy controller can be an attractive solution
to correct those uncertainties (See Figure 2 for details)
Having this new on-line corrected (target) trajectory xs,
the problem of force/position control is transferred to the
inner impedance controller of the overall control scheme
in order to achieve the desired force profil.
3.2 Impedance control
‘The impedance control [1] aims at controlling the dy-
namic relation between the manipulator and the enviton-
ment. ‘Thus, the complete form of impedance control of
second order type is given by:
Muli, ~ Buldy ~ 8) ~ Kul, ~ 2)
fe 4)
where dy and &y are the target. velocity and position de-
fined in the cartesian space, respectively, & and a the
velocity and cartesian positions of the end-effector, while
‘My, By and K, correspond to the desired inertia, stifiness
and damping matrices, with f, being the contact force.
The desired end-effector acceleration of the manipulator
will then be given by:
y= Ma (Baldy ~ &) + Kaew ~2)—$) (5)
which is valid either for free or constrained motion. Notice
that each of the impedance terms can also be expressed
in the actuator coordinates, using the appropriate kine-
matics transformations leads to the following target joint
acceleration:
4G = I (& — Jaya) (6)
which combined with (1) finally leads to the following com-
plete inverse dynamics control law:
a
Figure 1 shows the one degree of freedom desired
cartesian manipulator model with a spring-damper envie
ronmental model. In order to contro! indirectly the inter-
action force in the impedance control scheme, the compo-
nent in @y, along the constrained direction, must be prop-
erly set. ‘Theoretically, an analysis allows one to achieve
7 = M(a)i + Cla.4)4 + 910) + (4) + Teew
at
a
Figure 1: One degree of freedom desired cartesian manipulator
and environment model. (Be, Ke - environment, parameters.
M1, Bi, Ke - Desired robot impedance parameters).
Clete
Figure 2: Overall control system with fuzzy correction posi-
tion and impedance controller.
‘that setting. So, manipulating equations (2, 3 and 5) gives
the force at the steady state:
Bo = (Ut KeKa") Kelty ~ te) ®
If we explicit the target position a in (8) and write it in its
components along the constrained direction, is obtained:
)
At the steady state, the target reference ay given in (9)
transforms the conventional impedance controller into an
implicit force control scheme under a perfect knowledge
of the environment parameters. Unfortunately, this is not
the usual situation in most practical cases.
3.3 Fuzzy adaptive controller
‘The overall force control structure with the fuzzy
adaptive block and the inner impedance control loop, is
depicted in Figure 2
{In practice, equation (9) has two sources of uncertainties:
the environment stiffness ke and location x~. Due to these
tuncertainties, equation (9) fails for a correct force follow-
ing reference. The relation between the measured force
aud the environment. stiffness and location, is something
that seems to be well handled and it is intrinsic to the
human knowledge, namely when this knowledge is repre-
sented in fuzzy terms. This is the main motivation for the
use of fuzzy logic to correct the estimated environment
location and environment stiffness. Self-organizing fuzzy
controllers has shown good performances to deal with un-
certainty conditions [2] and [10]. kind of selt-organizing
fuzzy controller presented in (7], has shown to be sensi-
tive to external signals such as set-point. changes and-or
disturbances, but needs a great computational load. ‘This
difficulty may be encountered in other fuzzy learning con-
trollers that use a learning algorithm to minimize the cost
function of the error. An alternative to self-organization
‘was proposed by [4], where instead of changing the rules,
the membership functions of the consequent fuzzy sets
are modified. This concept is termed Fuzzy Model Refer-
ence Learning Control (FMRC). In the proposed scheme,
the fuzzy controller (Figure 2), implements a kind of self-
organizing fazzy controller similar to the structure pro-
posed in [4]. This self-organizing controller is constituted
by two fuzzy systems: the direct fuzzy controller and the
fuzzy inverse model. For both fuzzy systems there are
two input variables: the error force ey = fa — fe and its
difference Aes. The output of the direct fazzy controller
is the correction d of the estimated environment location,
This adjustment d is done in only one direction, ie. in the
perpendicular direction to the contact surface (x-axis of
task frame). The output of the fuzzy inverse model is also
a scalar (6) that shifts the centres C; of the membership
funetions of the fuzzy sets associated with the consequent
of the rules of the direct fuzzy controller. This shifting op-
eration is done only for those of the direct fuzzy controller
that were on, k steps before (ic., rules which activation
level a; has contributed to the # consecutive previously
corrections). In the robotie context, and considering com-
puting time only one step before is used and the away
chosen to shifting those centres is given by:
Cult) = Ct T) +6, Lea >0 (10)
‘The rule base for both fuzzy systems is a collection of
fuzzy IF~THEN rules with two inputs and one output,
in the following form:
RO. AF 2 is Ff and... and zy is Fh
‘THEN y is Gt a
where FY and G! are fuzzy sets in U CW and V C8 re-
spectively, and a = (21,..,tn)? € Uy *.% Un and y € V
are linguistic variables.
‘The fuzzy logic systems used in this article are with cen-
tre average defuzzifier product-inference rule and single-
ton fuzzifier as shown in Wang [11] and have the following
form:
De wT ey)
Sree
DE Ua Hey)
where M is the number of fuzzy IF-THEN rules in the
form of (11) in the fuzzy rule base, n is the number of
inputs (in this case two inputs: force error and its differ-
ence), y! is the point (centre of the fuzzy set. associated
f(z)
(a2)with each rule consequent) at which achieves its maximum
value, and is assumed that jigi(y! and
desley) = exp(— "4 (a3)
are Gaussian membership function that characterizing the
fuzzy sets, where rf are the centre of the fuzzy set. asso-
ciated with each rule antecedent. For the direct fuzzy
controller, the centres Cy == y! are those to shift: by the
amount 6 which is the output of the fazzy inverse model
[4] emphasizes that the knowledge-base of the fuzzy in-
verse moclel must reflect only an approximate represen-
tation of the inverse dynamics in fuzzy terms. For this
case, an intuitive reasoning for the fuzzy inverse model
knowledge-base is the following:
'* Do not change the centres if the error and its differ-
4 If the error is positive/negative and its difference is
near zero right/left shift the centre;
‘If the error is positive/negative and its difference is
nogative/positive, do not change the centres;
If both the error and its difference are posi-
tive/nogative, a great right/left shift of the centres
will be made.
As the membership of the consequent rules of the fuzzy
direct. controller change, the design of this rule base, does
not need to be elaborated (Le those centres may be
all zero). However, this design must reflect. some initial
‘guessing, like a PI behaviour. The universes of discourse
for each variable are normalized to the interval [—1 I] by
‘means of constant scaling factors (ge, ger) and (gap; 941)
for the input variables ey and Aey respectively, and (ge,
49s) for the output variables and the Direct fuzzy controller
and fuzzy Inverse model, respectively
4 Simulation results
In this section, the control scheme presented in the
previous sections is tested for a two degree-of-freedom
PUMA 560 planar robot which is acting in the vertical
plane according to Figure 3. ‘The numerical values for the
link parameters of the robot under study are my = 15.91
Ky, nz = 11.86 Kg, f) = ly = 0.432 m, which resembles
the original parameters of links 2 and 3 of the Unimation
PUMA 560 arm. Throughout the simulations, a constant
time step of 2 ms was used in the controller implementa-
tion, while the dynamic model of the robot is simulated in
the MATLAB/SIMULINK environment using Runge-Kutta,
fourth order integration method. Tt was considered that
the robot end-effector comes in contact with a wall as
shown in Figure 3 and to exert the desired force profile
anu reference trajectory, along the y coordinate accord-
ingly Figure 4
Figure 3: 2-DOF manipulator and environment.
a
Figure 4: desired force and desired position along y-axis.
In order to evaluate the performance of the global
structure, it was considered uncertainties in the environ-
ment location and stiffness. Thus, while the estimated en-
vironment location is considered a constant value of 0.432
m along z-axis, the really location is time-varying ac-
cordingly expression z(t) = 0.4278 + 0.005 sin(exp(0.65t)),
which has a maximum pole pitch from the estimated of
about: 10 min. ‘The environment stiffness ke in (9) is as-
sumed a variation of 8000-12000 N/m according to the
expression ke(t) = 10000 + 2000sin(exp(@)). Also, it was
assumed that the manipulator is already in contact with
the surface and the end-effector always maintains contact
with the environment during the task execution.
‘The scaling factors for the input variables were assuming
the values gep = ger = 4 and gan = gar = -1 and the
scaling factors for the output variables are gy = 0.012 and
{gs = 0.05 for the fuzzy controller and fuzzy inverse model,
respectively. The fuzzy rule base of the direct. fuzzy con-
troller, as an initial guess to the PI structure is presented
on Table 1. The fuzzy rule base of the fuzzy inverse
q\sg | N 7 P
N |NB_ NM ZE
ze |NM ZE PM
P| 2B PM_ PB
‘Table 1: Rule-base of the Fuzzy Controller
‘model, accordingly Section 3 is presented on Table 2. The@\ Ae [NB NS ZE_PS_ PB
NB [NB NB NB NS ZE
NS |NB NS NS ZE PS
we |NS ZE ZE ZE PS
ps |NS ZE PS PB PB
PB |ZE PS PB PB PB
‘Table 2: Rule-base of the Fuzzy Inverse Model
labels stands for N Negative, P Positive, NB/M/S Nega-
tive Big/Medium/Small, ZE Zero and PB/M/S Positive
Big/Medium Small. ‘The centres of the membership func-
tions are equidistant settling over the interval {—1 1}
In order to see the relevant improvements of the global
Figure 5: Desired and actual forces in situations i) and
ii). (dashed-dot desired, solid real)
structure, it is presented four kinds of results: i) consid-
fring the fuzzy adaptive controller off (no correction on
the estimated position, the output of the fuzzy controller
is zero). In this way the reference to the impedance con-
troller is given by equation (9), Of course, in this situ-
ation, it does not make sense to consider some kind of
uncertainties, So, the environment location and stiffness
are the really ones before referred. ii) considering only the
direct fuzzy controller with PI behaviour, (like Table 1)
without adaptation of their centres, ii) the same as in ii)
but with adaptation, given by the fuzzy inverse model,
and iv) starting the direct fuzzy controller with all cen-
‘es of the membership functions of the rule consequent
with value zero (no initial guessing) and with adaptation
Figure 5 and 6 shows the simulation results in force and
‘Table 3 shows the force Sum Square Errors (SSB), for all
situations. ‘The tracking position errors are not presented,
WW)
06.34
yay
1578 [200-1
Table 3: SSE-Sum Square of force Error
because they are not involved in the process of the adjust-
tment position and depends exclusively on the impedance
controller. In situation i) the impedance controller reveals
some difficulties to achieve a good performance, even con-
sidered the ideal case, when no uncertainties exist. "The
lack of performance is mainly due to the time varying pa-
rameters in the environment, and equation (9) only takes
im account the steady state. In situation ii) we can observe
‘that the fuzzy controller with fixes membership functions
of the rule consequent cannot achieve a good performance
to0. In situation iii) the fuzzy inverse model and some ini-
tial guessing in the fuzzy controller, shows to achieve the
best performance. On the other hand, in situation iv),
where no initial guessing in the fuzzy controller exist, the
difference in performance, comparing with situation iil) is
not relevant. From situations iii) and iv), it can be con-
cluded that the fuzzy inverse model is the kernel of this
fuzzy adaptive controller. Figure 7 presents the output. of
the fuzzy inverse model and the direct fuzzy controller for
situation iv). The contres of the membership functions
of the direct fuzzy controller consequents, are adjusted
by that amount given by the fuzzy inverse model and ac-
cordingly equation (10). Also, Figure 8 shows the shifting
centers evolution with time of the membership functions
of the direct fuzzy controller in situation iv), where these
centres are arranged accordingly Table 1 position.
i ae
Figure 6: Desired and actual forces in situations iil) and iv)
(Gashed-