An experimental study of adaptive force/position ... - Semantic Scholar

8 downloads 0 Views 338KB Size Report
Index Terms—Adaptive control, force control, position control, robots, robot dynamics, robot sensing systems. I. INTRODUCTION. THE use of force feedback is ...
IEEE TRANSACTIONS ON CONTROL SYSTEMS TECHNOLOGY, VOL. 8, NO. 5, SEPTEMBER 2000

777

An Experimental Study of Adaptive Force/Position Control Algorithms for an Industrial Robot Luigi Villani, Member, IEEE, Ciro Natale, Student Member, IEEE, Bruno Siciliano, Fellow, IEEE, and Carlos Canudas de Wit

Abstract—This work presents the results of an experimental study of force/position control algorithms for an industrial robot with open control architecture, equipped with a wrist force sensor. The robot’s end effector is in contact with a compliant surface of unknown stiffness. Two types of control schemes are considered which respectively achieve regulation and tracking of position on the contact surface and force along the direction normal to the surface. The desired position is scaled along the constrained direction so as to fulfill the force control objective; adaptive mechanisms are designed for the two schemes to compute the scaling factor, which depends on the unknown stiffness coefficient of the environment. A number of case studies are developed throughout the paper to illustrate the effectiveness of the force/position control algorithms under nonideal conditions. Index Terms—Adaptive control, force control, position control, robots, robot dynamics, robot sensing systems.

I. INTRODUCTION

T

HE use of force feedback is well known to enhance the performance of control schemes for a robot interacting with the environment [1]. Several strategies have been proposed to achieve control of the contact force, besides control of the end-effector position [2], among which hybrid position/force control [3], inner–outer position/force control [4], and parallel force/position control [5] are worth mentioning. Modeling the environment constitutes an essential requirement to design an interaction control scheme, analyze its stability, and ultimately test its performance in simulation. To this purpose, it is opportune to distinguish between the case of rigid environment and that of compliant environment. In the former, kinematic constraints are imposed to the robot motion which in turn can be described by a reduced number of task coordinates. In the latter, instead, a relationship exists between force and motion along certain directions which is characterized by the compliance at the contact. A conceptually new approach coping with the force/position control problem in the presence of a compliant environment has been proposed recently [6]. The control law derives from Manuscript received April 27, 1998; revised March 1, 1999 and November 1, 1999. Recommended by Associate Editor, F. Ghorbel. This work was supported in part by MURST and ASI. L. Villani and B. Siciliano are with the PRISMA Lab, Dipartimento di Informatica e Sistemistica, Università de Napoli Federico II, 80125 Napoli, Italy (e-mail: [email protected]; [email protected]). C. Natale is with the Dipartimento di Ingeneria dell’Informazione, Seconda Università di Napoli, 81031 Aversa, Italy (e-mail: [email protected]). C. Canudas de Wit is with the Laboratoire d‘Automatique de Grenoble, ENSEIG-INPG, 38402 Saint Martin d’Héres, France (e-mail: [email protected]). Publisher Item Identifier S 1063-6536(00)05737-7.

an impedance control scheme [7] where the reference position trajectory is adaptively scaled so as to fulfill the force control objective. This approach, originally developed for a onedegree-of-freedom linear case, has been extended in [8] to a three-degree-of-freedom task for a robot manipulator in contact with an elastically compliant surface. Tracking of the end-effector position on the surface and tracking of the contact force is achieved with exponential stability. On the other hand, if only regulation of position and force is desired, a computationally lighter scheme has been proposed [9] which ensures asymptotic stability without requiring computation of the manipulator dynamic model but the gravity term. The present paper reports the results of an extensive experimental study of both types of force/position control schemes for an industrial robot. A key feature of the work is the availability of a PC-based open control architecture which permits implementing model-based torque control algorithms as well as interfacing a wrist force sensor. The effectiveness of the algorithms is demonstrated when the robot’s end effector is in contact with compliant surfaces of regular curvature. II. MODELING Consider a rigid robot manipulator whose end effector is in contact with a frictionless elastic surface. Assuming bilateral point contact, the surface can be modeled as the twice-differentiable scalar equation [10] (1) where denotes the (3 1) vector of end-effector position and parameterizes the surface deflection [11]. The (3 1) vector of the contact force exerted by the end effector on the environment has the form (2) where (3) is a vector orthogonal to the surface at the contact point. A simple elastic model is assumed for the scalar component of the contact force along , i.e., (4) where

is the stiffness coefficient.

1063–6536/00$10.00 © 2000 IEEE

778

IEEE TRANSACTIONS ON CONTROL SYSTEMS TECHNOLOGY, VOL. 8, NO. 5, SEPTEMBER 2000

A suitable set of task space coordinates can be introduced by considering the vector (5) is a two-time differentiable where of the mapping (5) is nonvector such that the Jacobian singular in a domain of the robot workspace. The vector can be decomposed as (6) is a scalar and is a (2 1) vector; in the sequel, where subscripts and are used to denote, respectively, the components of a vector in the one-dimensional force task subspace and in the two-dimensional position task subspace. By virtue of the force/velocity duality principle, the resulting contact force in task coordinates is (7) is a constant unit where (2) has been used, and vector. By taking into account (1) and (5), (4) can be rewritten as (8) where the undeformed rest position of the surface has been taken to be zero without loss of generality. For a three-joint nonredundant robot manipulator, the vector of task coordinates constitutes a set of Lagrangian coordinates in a domain of the task space. The manipulator dynamic model in task coordinates has the form (9) is the (3 3) inertia matrix, is the (3 1) where vector of Coriolis and centrifugal forces, is the (3 1) vector is the (3 1) vector of driving of gravitational forces and forces. The vector of the joint actuating torques can be computed as (10) 1) vector of joint variables and is where is the (3 which is assumed to be the Jacobian of the mapping nonsingular. The following well-known properties of the task space dynamic model (9) can be established. is a symmetric and positive definite maProperty 1: trix satisfying (11) and . where Property 2: There exists a choice of the matrix such that the matrix is skew-symmetric. Further, the following inequality holds: (12) where . III. EXPERIMENTAL SETUP The setup available in the PRISMA Lab consists of an industrial robot Comau SMART-3 S. The robot manipulator has a six-

revolute-joint anthropomorphic geometry with nonnull shoulder and elbow offsets and nonspherical wrist. The joints are actuated by brushless motors via gear trains; shaft absolute resolvers provide motor position measurements. The robot is controlled by an open version of the C3G 9000 control unit (Fig. 1), which has a VME-based architecture with two processing boards (Robot CPU and Servo CPU) both based on a Motorola 68 020/68882, where the latter has an additional DSP and is in charge of trajectory generation, inverse kinematics and joint position servo control. Connection of the VME bus to the ISA bus of a standard PC is made possible by two Bit 3 Computer bus adapter boards, and the PC and C3G controller communicate via the shared memory available in the Robot CPU [12]; at present, a PC Pentium/233 is used. Time synchronization is implemented by interrupt signals from the C3G to the PC with data exchange every 1 ms. A set of C routines are available to drive the bus adapter boards. The open version of the control unit allows seven different operational modes, including the standard mode available on the industrial version of the controller. To implement force/position control schemes, the operational mode number 4 has been used in which the PC is in charge of computing the control algorithm and passing the references to the current servos through the communication link at ms sampling rate. A 6-axis force/torque sensor ATI FT30-100 with force range of 130 N and torque range of 10 N m is mounted at the manipulator’s wrist. The sensor is connected to the PC by a parallel interface board which provides readings of six components of generalized force at ms. An end effector has been built as a stick with a sphere at the tip, both made of brass. For the purpose of this work, only the inner three joints are considered and the outer three joints are mechanically braked. Three-degree-of-freedom tasks are considered, involving endeffector position and linear force. Meaningful experiments have been conceived to quantify the validity of the force/position control algorithms in the next two sections. Two types of surface with regular curvature have been considered; namely, a sphere and a plane. For each surface, two case studies have been chosen: one is aimed at verifying the capability of tracking a desired contact force profile while maintaining the same end-effector position; the other is aimed at testing the performance of the system when an end-effector motion is commanded together with a contact force profile. Experiments involving transition from noncontact to contact with the surface are also presented. The experimental tests of the force/position control algorithms to follow have been carried out in nonideal conditions because of inaccurate geometric model of the compliant surface, uncertainty on the robot dynamic model, unmodeled contact friction, and absence of joint velocity measurements which are reconstructed through numerical differentiation of joint position readings. A. Sphere The spherical surface consists of an inflated rubber ball of 10-cm radius fixed to a table, where the stiffness is about 5000

VILLANI et al.: EXPERIMENTAL STUDY OF ADAPTIVE FORCE/POSITION CONTROL ALGORITHMS

Fig. 1.

779

Schematic of open control architecture.

N/m (Fig. 2). With reference to (1), the model of the surface is described by

Fig. 2. Experimental setup.

(13) is the where is the radius of the undeformed sphere and position vector of the center of the sphere. Because of the geometry of the contact task, spherical coordinates are adopted, i.e., the task coordinates in (6) are given by (a)

(14) Atan Atan

(b)

Fig. 3. Desired force profile (a) and end-effector path (b) in the case of contact with the sphere.

(15)

are the components of the vector . where , , Two case studies are considered for this environment; namely, one where a time-varying force is commanded while keeping the same contact point, and another where a time-varying position is commanded in addition to the force. Case Study 1: A desired force profile is assigned along the normal to the sphere (corresponding to the task coordinate ), where the edges are generated according to a linear interpolating polynomial with fourth-order blends and a duration of 0.8 s (Fig. 3). The desired position is kept constant. Case Study 2: A desired force profile is assigned as in Case Study 1. A desired end-effector path (Fig. 3) is assigned along a latitude giving a longitude displaceparallel on the sphere at (corresponding to the first task coordinate of ); ment of the trajectory on the path is generated according to a fifth-order polynomial with null initial and final velocity and acceleration, and a duration of 6 s.

B. Plane The planar surface consists of a wooden table whose stiffness is about 10000 N/m. With reference to (1), the model of the surface is described by (16) denotes the (3 1) vector of the position of the unwhere deformed plane and is the constant unit vector orthogonal to the plane. Therefore, by introducing two constant unit vectors and so as to complete a right-handed frame with , the task coordinates in (6) are given by (17) (18) , , where are the components of the vectors

, , ,

,

, respectively.

780

IEEE TRANSACTIONS ON CONTROL SYSTEMS TECHNOLOGY, VOL. 8, NO. 5, SEPTEMBER 2000

As above, two case studies are considered for this environment. Case Study 3: A desired force is assigned according to the profile in (Fig. 3). The desired position is kept constant. Case Study 4: A desired force profile is assigned as in Case Study 3. A desired end-effector path is assigned along with a displacement of 0.28 m; the trajectory on the path is generated according to a fifth-order polynomial with null initial and final velocity and acceleration and a duration of 8 s. IV. FORCE AND POSITION REGULATOR A. Design In this section a force/position regulator is derived from a position regulator. The idea is that of scaling the component of along the direction normal to the constant desired position the surface in order to achieve regulation to a constant desired [9]. Let force (19) denote a scaled position trajectory, where is the scaling factor. Consider the PD control law with gravity compensation and desired force feedforward (20) block diag and where block diag are positive definite matrices. It is easy to show that control law (20) asymptotically stabilizes , , i.e., system (9) around the equilibrium and . If the stiffness coefficient of the environment were known, the scaling factor should be taken as

(25)

with , , the inequalities

. If the matrix gains

,

and

satisfy

(26) (27) is so that , and are defined where as in (11) and (12), respectively, then the equilibrium point , , is asymptotically stable. Remark 1: The scheme achieves force regulation thanks to a nonlinear force PI action with force feedforward, as can be recognized by integrating (24) and folding it into (23). B. Experiments In order to test the performance of the above force/position control algorithm, the four case studies described in Section III have been executed. It should be noticed that, even though the goal is just to regulate the force and position to constant desired values, the choice of time-varying trajectories allows analyzing the behavior of the system not only at steady state but also during the transient. The inequalities in (26) and (27) only give sufficient conditions for stability of the closed-loop system, with no concern about the actual transient. Hence, the choice of the control parameters in (23)–(25) has been made by referring to the locally linearized system about the desired equilibrium. In particular, by considering the constant block diagonal matrix block diag that can be extracted from the inertia and neglecting the Coriolis and centrifugal force matrix , the linearized dynamics is described by vector

(21) gives . so that When the stiffness coefficient is unknown, the scaling factor in (19) can be replaced with an estimate which has to be suitably adjusted as a function of time. Let (22) denote the time-varying scaled position when consider the control law

. Then,

(23) The following theorem holds, whose proof is omitted for brevity and is conceptually similar to that in [9] where the case of scalar gains was considered. Theorem 1: Consider system (9) under control law (23). Further, consider the adaptive law (24)

(28) (29) , , are taken as diagonal matrices. Then, where a pole placement technique has been adopted to find the initial guess for the control parameters so as to achieve a satisfactory dynamic behavior. Such values have finally been adjusted as a result of extensive MATLAB simulations and preliminary experimental tests for the first type of environment (the sphere), leading to diag , diag , , , . Note that has been set equal to the estimated value of the stiffness coefficient. Also, the initial value of the variable has been set to zero, corresponding to contact with the undeformed surface. The results for Case Study 1 are reported in Fig. 4. From the time history of the contact force it can be seen that tracking of the desired value is achieved with a bounded error; a delay occurs, but it should be pointed out that the scheme was thought of as a regulator, i.e., not to track the desired force profile. As

VILLANI et al.: EXPERIMENTAL STUDY OF ADAPTIVE FORCE/POSITION CONTROL ALGORITHMS

expected, good force regulation is achieved, thanks to the presence of an integral action on the force error. Since no integral action on the position error is present, small errors are left at steady state for the latitude and longitude; these are due mainly to robot unmodeled dynamic effects, e.g., joint friction. On the other hand, the reference currents to the joint motors reveal a moderate control effort. The results for Case Study 2 in Fig. 4 show that force and position regulation continues to be satisfactory. Compared to the above, however, the position error along the longitude is increased during the transient while that along the latitude is practically the same; this is an obvious consequence of the desired end-effector trajectory (time-varying longitude and constant latitude). The visible oscillations on the measured force as well as on the position errors can be ascribed to the contact friction caused by end-effector rubbing on the surface. The control effort remains moderate. With reference to the second type of environment (the plane), the same control parameters as above have been chosen to test the robustness of the scheme to contact with a stiffer surface (estimated to be twice as much as above). Notice, however, that the use of the task space coordinates in (17), (18) in lieu of those in (14), (15) introduces a factor of 100 in the elements which has to be accounted for by introducing the same of , which then become factor in the parameters diag , diag . All the other parameters are unchanged. The results for Case Study 3 are reported in Fig. 5. From the time history of the contact force it can be seen that tracking of the desired value is much better than Case Study 1, thanks to an equivalent larger bandwidth of the force control loop. Again, good force regulation is achieved. On the other hand, the position errors are small although a direct comparison with those in Fig. 4 is not meaningful due to the different units. The results for Case Study 4 in Fig. 5 reveal that, because of the larger bandwidth, oscillations affect the time history of the contact force to a greater extent than Case Study 2; as above, these are induced by the time-varying end-effector trajectory through the contact friction. has To mitigate this phenomenon, the control parameter and both Case Studies 3 and 4 have been reduced to been executed again. The results in Fig. 6 evidence the presence of a delay on the time history of the contact force for Case Study 3, which is analogous to that appearing in Fig. 4. The advantage for Case Study 4, though, is a reduction of the oscillations on the force. In all the above tests, the end effector has always been placed initially in contact with the environment. Case Study 3 has been executed once more to test the performance of the scheme when the end effector is not initially in contact with the environment, i.e., at a distance of 0.05 m from the plane. The control parameters have been chosen as in the last experiment. The results in Fig. 7 show that after an initial lapse the contact force tracks the desired profile with a behavior similar to that in Fig. 6; such lapse occurs during the approach phase to the surface which is merely governed by the desired force profile, since no end-effector trajectory toward the surface is commanded. On the other hand, the position errors remain small.

781

Fig. 4. Performance with force and position regulator (left: Case Study 1; right: Case Study 2; dashed: desired; solid: measured).

Fig. 5. Performance with force and position regulator (left: Case Study 3; right: Case Study 4; dashed: desired; solid: measured).

782

IEEE TRANSACTIONS ON CONTROL SYSTEMS TECHNOLOGY, VOL. 8, NO. 5, SEPTEMBER 2000

where and is a diagonal and positive definite matrix. Splitting (33) in the force and position task subspaces and using (30) gives (34) (35)

(a)

(b)

Fig. 6. Performance with force and position regulator in Case Study 3 and smaller bandwidth for the force control loop (dashed: desired; solid: measured).

with obvious meaning of notation. By using passivity arguments and . Equation (35) [14] it is easy to show that can be obtained implies that the position error as the output of the strictly proper, exponentially stable transfer — denotes the Laplace variable—whose matrix as . As for input is ; therefore [15] in (34) should be the force task subspace, a scaling factor gives as . sought so that If the stiffness coefficient of the environment were known, it can be shown [16] that if is redefined as (36) with differential equation

(a)

, then

should be the solution of the

(b)

(37)

Fig. 7. Performance with force and position regulator in Case Study 3 and initial noncontact (dashed: desired; solid: measured).

Substituting the solution to (37) into (34) gives V. FORCE AND POSITION TRACKING CONTROLLER (38)

A. Design The previous control algorithm achieves regulation to constant force and position. If the motion of the end-effector along the surface is relevant and it is desired to vary the amount of contact force, a computationally more demanding scheme can be devised which ensures force and position tracking. As in the regulation case, the force/position controller derives from a position controller, where the component of the time-varying dealong the direction normal to the sired position trajectory surface is scaled in order to achieve tracking of a time-varying , i.e., desired force trajectory

where

is the force error; thus, from it follows that and

. When the stiffness coefficient is unknown, the solution to with an estimate (37) cannot be computed. By replacing in (30), the control law (31) can be rewritten as (39) where (40)

(30)

is a time-varying scaling factor. where Consider the classical Slotine and Li [13] algorithm for position control (31) is chosen so that the matrix is skew-symwhere is a positive definite matrix; the vectors and metric and are given by (32) (33)

and as

and the vector

. By defining can be decomposed as

and accounting for (37),

(41) where is given in (38). By using passivity arguments, it can and . This result still be shown that ensures convergence of the position error in the position task ), but it does not guarantee convergence of subspace ( the force error. The key point is to find an adaptive algorithm for which achieves for the closed-loop system (9), (39), from the equation (40). Equation (37) suggests computing (42)

VILLANI et al.: EXPERIMENTAL STUDY OF ADAPTIVE FORCE/POSITION CONTROL ALGORITHMS

where

is an estimate of

and (43)

By virtue of (42), the vector

in (40) can be computed as (44)

The following theorem holds, whose proof is omitted for brevity but can be found in [8]. Theorem 2: Consider system (9) under control law (39), with given in (44), and block diag . Further, consider the adaptive law (45) . Then , , all the signals in the closed-loop with system are bounded, and the tracking errors , , , tend is diagasymptotically to zero. If, in addition, the matrix , and such onal and there exist constants that (46) is then the equilibrium point exponentially stable. Remark 2: The proposed control law is given by the set of gives (39), (44) and (45); computation of (47) with (48) Hence, the original position control scheme achieves force tracking capabilities by using nonlinear PD position feedback and time-varying PID force feedback; as can be seen from (45), the force time derivative is required to implement the control law. B. Experiments In order to test the performance of the above force/position control algorithm, the four case studies described in Section III have been executed. As done for the force and position regulator, the choice of the control parameters in (39), (44) and (45) has been made by referring to the locally linearized system about the desired equifor a constant , and proceeding librium. Taking as above leads to the linearized dynamics (49)

(50) , are taken as diagonal matrices. Again, a pole where placement technique has been adopted to find the initial guess for the control parameters. Notice that the poles of the force loop can be easily computed, which then facilitates the choice of the control parameters with respect to the third-order dynamics described by (28).

783

A fine tuning has been accomplished as a result of extensive MATLAB simulations and preliminary experimental tests for the first type of environment (the sphere). The resulting parameters are , diag , , diag , . , The initial value of the variable has been set to corresponding to an estimated stiffness coefficient of 2000 N/m; notice that a large discrepancy has been intentionally introduced with respect to the actual stiffness of about 5000 N/m in order to test the effectiveness of the adaptive algorithm. In the experimental tests, the force time derivative needed in (45) is computed by using the first-order filter of transfer with s; this value has been tuned function as a result of a tradeoff between time delay and noise reduction. The analog filter is then converted to a digital filter with the Euler rule, i.e., (51) is the sampling interval. Nonetheless, it should be where remarked that a force sensor with high signal-to-noise ratio is available for the experiments. The results for Case Studies 1 and 2 are reported in Fig. 8. The time history of the measured contact force shows that, after a transient due to initial stiffness coefficient mismatching, good force tracking performance is achieved in both cases. Note also that the variable tends to a value close to the inverse of the best available estimate of the stiffness coefficient, thus confirming the theoretical findings. Clearly, compared to the previous regulator, the tracking performance is greatly improved. Small position errors still occur at steady state for the latitude and longitude, but this does not affect the force steady-state performance thanks to the integral action on the force error in (48). Further, for Case Study 2, good position tracking performance is achieved, although oscillations are still present on both measured force and end-effector position because of the rubbing on the surface. With reference to the second type of environment (the plane), the same control parameters as above have been chosen to test the robustness of the scheme to contact with a stiffer surface. Because of the same factor of 100 pointed out in Section IV-B, the has been scaled to diag . parameters All the other parameters are unchanged. The results for Case Studies 3 and 4 are reported in Fig. 9. The time history of the contact force and the position errors show that the tracking performance remains satisfactory. Interestingly enough, a larger overshoot initially occurs on the force due to the actual higher stiffness, and converges to a value very close to the best available estimate of the stiffness coefficient for both case studies. Case Study 3 has been executed again to probe into the effects of overestimating the stiffness coefficient rather than underestimating it as above. Hence, the initial value of has been set to 1/15 000 and 1/20000, respectively. In both cases, the results in Fig. 10 show that the overshoot disappears due to the actual lower stiffness, while convergence to the best available estimate of the stiffness coefficient continues to hold, remarkably. Finally, Case Study 3 has been executed once more to test the performance of the scheme when the end effector is at a

784

IEEE TRANSACTIONS ON CONTROL SYSTEMS TECHNOLOGY, VOL. 8, NO. 5, SEPTEMBER 2000

Fig. 8. Performance with force and position tracking controller (left: Case Study 1; right: Case Study 2; dashed: desired; solid: measured).

Fig. 9. Performance with force and position tracking controller (left: Case Study 3; right: Case Study 4; dashed: desired; solid: measured).

distance of 0.05 m from the plane. The control parameters have . The results in Fig. 11 been chosen as above with show that the steady-state performance is good but the transient is affected by large errors and oscillations; also, in this case, does not converge to the estimated value. VI. FORCE AND POSITION TRACKING CONTROLLER WITHOUT FORCE DERIVATIVE A. Design A modification of the force/position tracking controller has been recently proposed [17] which avoids the force time derivative. This could be useful whenever force measurements are affected by significant noise, since the computation of the force time derivative needed by in (47) could be troublesome. The new adaptive controller is defined as (52)

Fig. 10. Performance with force and position tracking controller in Case Study 3 with overestimated stiffness coefficient (left: ^ = 1=15 000; right: ^ = 1=20 000; dashed: desired; solid: measured).

VILLANI et al.: EXPERIMENTAL STUDY OF ADAPTIVE FORCE/POSITION CONTROL ALGORITHMS

(a)

785

(b)

Fig. 11. Performance with force and position tracking controller in Case Study 3 and initial noncontact (dashed: desired; solid: measured).

with

in (44),

, and

(53)

where the variable is computed according to (48). The following theorem holds, whose proof is omitted for brevity but can be found in [17]. Theorem 3: Consider system (9) under control law (52), with given in (44), given in (53), given in (48), and block diag . Further, consider the update laws (54) (55) , , where is the first column with . Then , , all the signals in of the inertia matrix the closed-loop system are bounded, and the tracking errors , , , tend asymptotically to zero. Remark 3: The problem of the force time derivative is concerned with computation of (45). In view of this, a modified update law (54) has been derived on the basis of (8) which gives , where the estimate of the unknown stiffness coefficient has been updated according to (55). B. Experiments Case Study 2 has been executed to test the effectiveness of the adaptive force/position controller without force derivative. , , and as above, the Besides choosing the same . The control parameter in (55) has been set to results in Fig. 12 show that there is no significant degradation of the force and position tracking performance. Therefore, this controller may represent a valid alternative to the original algorithm in case that force measurements would be too noisy. VII. CONCLUSION Two force/position control schemes for an industrial robot in contact with an elastically compliant curved surface have been experimentally tested in this work. The force control objective has been obtained starting from a position controller, by properly scaling the original desired

Fig. 12. Performance with force and position tracking controller without force derivative in Case Study 2 (dashed: desired; solid: measured).

end-effector position. Adaptive algorithms have been designed to compute the time-varying scaling factor, whose value depends on the unknown stiffness of the environment. For the force and position regulation problem, a linear controller with gravity compensation has been used. On the other hand, for the force and position tracking problem, a model-based controller has been used where the need of the force time derivative can be avoided if desired. The results in a number of case studies have permitted a critical comparison of the controllers when implemented on an industrial setup under nonideal conditions. Clearly, the on-line computational burden is lower for the linear controller with gravity compensation, although tuning of the control parameters is more straightforward for the model-based controller. Both controllers exhibit very good steady-state performance. As foreseen in theory, the tracking performance is better for the model-based controller. Robustness tests to inaccurate estimate of the stiffness coefficient have revealed the superior performance of the model-based controller, and in particular an initial overestimate of the stiffness coefficient produces better responses. Also, robustness tests to initial noncontact have revealed the superior performance of the linear controller with gravity compensation. The experimental study has confirmed that the controllers work well in the case of contact with surfaces of unknown medium stiffness (5000 to 10 000 N/m). For higher stiffness, the experimental results were less encouraging and have not been reported here. This fact should not surprise since the proposed schemes achieve control of the contact force through the local deformation of the surface. When such deformation becomes negligible, instead, different control strategies should be sought where the surface has to be modeled as a rigid (infinitely stiff) constraint. ACKNOWLEDGMENT The authors would like to thank the Associate Editor and the anonymous reviewers for helpful and constructive comments.

786

IEEE TRANSACTIONS ON CONTROL SYSTEMS TECHNOLOGY, VOL. 8, NO. 5, SEPTEMBER 2000

REFERENCES [1] D. E. Whitney, “Historical perspective and state of the art in robot force control,” Int. J. Robot. Res., vol. 6, no. 1, pp. 3–14, 1987. [2] B. Siciliano and L. Villani, Robot Force Control. Boston, MA: Kluwer, 1999. [3] N. H. Raibert and J. J. Craig, “Hybrid position/force control of manipulators,” ASME J. Dyn. Syst., Meas., Contr., vol. 103, pp. 126–133, 1981. [4] J. De Schutter and H. Van Brussel, “Complaint robot motion II. A control approach based on external control loops,” Int. J. Robot. Res., vol. 7, no. 4, pp. 18–33, 1988. [5] S. Chiaverini and L. Sciavicco, “The parallel approach to force/position control of robotic manipulators,” IEEE J. Robot. Automat., vol. 9, pp. 361–373, 1993. [6] C. Canudas de Wit and B. Brogliato, “Direct adaptive impedance control including transition phases,” Automatica, vol. 33, pp. 643–649, 1997. [7] N. Hogan, “Impedance control: An approach to manipulation, Parts I–III,” ASME J. Dyn. Syst., Meas., Contr., vol. 107, pp. 1–24, 1985. [8] L. Villani, C. Canudas de Wit, and B. Brogliato, “An exponentially stable control for force and position tracking of robot manipulators,” IEEE Trans. Automat. Contr., vol. 44, pp. 798–802, Apr. 1999. [9] L. Villani, C. Canudas de Wit, and B. Siciliano, “Regulation of force and position for a robot manipulator in contact with a compliant environment,” in Prepr. 5th IFAC Symp. Robot Contr., Nantes, France, 1997, pp. 353–358. [10] B. Yao and M. Tomizuka, “Robust adaptive motion and force control of robot manipulators in unknown stiffness environment,” in Proc. 32nd IEEE Conf. Decision Contr., San Antonio, TX, 1993, pp. 142–147. [11] N. H. McClamroch, “A singular perturbation approach to modeling and control of manipulators constrained by a stiff environment,” in Proc. 28th IEEE Conf. Decision Contr., Tampa, FL, 1989, pp. 2407–2411. [12] F. Dogliani, G. Magnani, and L. Sciavicco, “An open architecture industrial controller,” IEEE Robot. Automat. Soc. Newsl., vol. 7, no. 3, pp. 19–21, 1993. [13] J.-J. E. Slotine and W. Li, “On the adaptive control of robot manipulators,” Int. J. Robot. Res., vol. 6, no. 3, pp. 49–59, 1987. [14] B. Brogliato, I. D. Landau, and R. Lozano, “Adaptive control of robot manipulators: A unified approach based on passivity,” Int. J. Robust Nonlinear Contr., vol. 1, pp. 187–202, 1991. [15] C. A. Desoer and M. Vidyasagar, Feedback Systems: Input–Output Properties. New York: Academic, 1975. [16] L. Villani, C. Canudas de Wit, and B. Brogliato, “An exponentially stable adaptive force/position control for robot manipulators,” in Prepr. 13th IFAC World Congr., vol. A, San Francisco, CA, 1996, pp. 7–12. [17] C. Natale and L. Villani, “Passivity-based design and experimental validation of adaptive force/position controllers for robot manipulators,” in Proc. 37th IEEE Conf. Decision Contr., Tampa, FL, 1998, pp. 427–432.

Luigi Villani (S’94–M’96) was born in Avellino, Italy, in 1966. He received the Laurea degree in electronic engineering from the University of Naples, Italy, in 1992. In 1996, he received the Research Doctorate degree in electronic engineering and computer science from the University of Naples. Since then, he has been with the University of Naples, where he is currently an Assistant Professor in the Department of Computer and Systems Engineering. He was recently promoted to Associate Professor. From June to October 1995, he was a Visiting Scholar at the Department of Automatic Control, National Polytechnic Institute of Grenoble, France. His research interests include force/motion control of manipulators and adaptive and nonlinear control of mechanical systems. He is coauthor of the books Solutions Manual for Modeling and Control of Robot Manipulators (New York: McGraw-Hill, 1996; 2nd ed., London, U.K.: Springer-Verlag, 2000) and Robot Force Control (Boston, MA: Kluwer, 1999). Dr. Villani is a Member of the Conference Editorial Board of the IEEE Control Systems Society.

Ciro Natale (S’ 94) was born in Caserta, Italy, in 1969. He received the Laurea degree in electronic engineering from the University of Naples in 1995. He received the Research Doctorate degree in electronic engineering and computer science from the University of Naples in 2000. From November 1998 to May 1999, he was a Visiting Scholar at the Institute of Robotics and System Dynamics, DLR (German Aerospace Center). He is currently a Research Associate in the Department of Information Engineering at the Second University of Naples. His research interests include force/motion control of robot manipulators, nonlinear control, passivity-based adaptive control, visual servoing of industrial robots, active damping of structural vibrations. Dr. Natale received the 1996 UCIMU award for the section “Robots: Design and Applications” for his Laurea thesis.

Bruno Siciliano (M’91–SM’94–F’00) was born in Naples, Italy, in 1959. He received the Laurea degree and the Research Doctorate degree in electronic engineering from the University of Naples in 1982 and 1987, respectively. Since then, he has been with the University of Naples, where he is currently an Associate Professor of robotics in the Department of Computer and Systems Engineering. He was recently promoted to Professor. In 1986, he was a Visiting Scholar at the School Mechanical Engineering, Georgia Institute of Technology, Atlanta. His research interests include inverse kinematics, redundant manipulator control, modeling and control of flexible arms, force/motion control and cooperative robots. He is coauthor of the books: Modeling and Control of Robot Manipulators with Solutions Manual (New York: McGraw-Hill, 1996; 2nd ed., London, U.K.: Springer-Verlag, 2000), Theory of Robot Control (London, U.K.: Springer-Verlag, 1996), Robot Force Control (Boston, MA: Kluwer, 1999), and is coeditor of the book Control Problems in Robotics and Automation (London, U.K.: Springer-Verlag, 1998). He was an Associate Editor of the ASME JOURNAL OF DYNAMIC SYSTEMS, MEASUREMENT, AND CONTROL from 1994 to 1998. He is on the Editorial Boards of ROBOTICA and the JSME INTERNATIONAL JOURNAL. Dr. Siciliano served as an Associate Editor of the IEEE TRANSACTIONS ON ROBOTICS AND AUTOMATION from 1991 to 1994He is a Member of ASME. He has held representative positions within the IEEE Robotics and Automation Society: Administrative Committee Member from 1996 to 1999, Vice-President for Publications in 1999, and Vice-President for Technical Activities since 2000. From 1996 to 1999 he was Chair of the Technical Committee on Manufacturing and Automation Robotic Control of the IEEE Control Systems Society.

Carlos Canudas de Wit was born in Villahermosa, Tabasco, Mexico, in 1958. He received the B.Sc. degree in electronics and communications from the Technological Institute of Monterrey, Mexico, in 1980. He received the M.Sc. and Ph.D. degrees in automatic control from the Polytechnic of Grenoble, France, in 1984 and 1987, respectively. Since 1987, he has been working at the same department as “Directeur de recherche” at the CNRS, where he teaches and conducts research in the area of adaptive and robot control. He is also responsible for a team on control of electromechanical systems and robotics. He teaches undergraduate and graduated courses in robot control and stability of nonlinear systems. He was a Visiting Researcher in 1985 at the Lund Institute of Technology, Sweden. His research topics include adaptive control, identification, robot control, nonlinear observers, control of systems with friction, ac and CD drives, automotive control, and nonholonomic systems. He has written the book Adaptive Control of Partially Known Systems: Theory and Applications (Amsterdam, The Netherlands: Elsevier, 1988). He also edited two books, Advanced Robot Control (New York: Springer-Verlag, 1991) and Theory of Robot Control, in the Springer Control and Communication Series. Dr. de Wit was Associate Editor of the IEEE TRANSACTIONS ON AUTOMATIC CONTROL from January 1992 to December 1997 and has been Associate Editor of Automatica since March 1999.