Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

Cartesian Impedance Control of Redundant Robots: Recent Results With The DLR-Light-Weight-Arms

Download as pdf or txt
Download as pdf or txt
You are on page 1of 6

Cartesian Impedance Control of Redundant Robots: Recent Results with the DLR-Light-Weight-Arms

Alin Albu-Sch affer, Christian Ott, Udo Frese and Gerd Hirzinger DLR - German Aerospace Center Institute of Robotics and Mechatronics alin.albu-schaeffer@dlr.de, christian.ott@dlr.de
Abstract This paper addresses the problem of impedance control for exible joint robots based on a singular perturbation approach. Some aspects of the impedance controller, which turned out to be of high practical relevance during applications are then addressed, such as the implementation of nullspace stiffness for redundant manipulators, the avoiding of mass matrix decoupling and the related design of the desired damping matrix. Finally, the proposed methods are validated through measurements on the DLR robot.

I. I NTRODUCTION The topic of impedance control is a traditional one in robotics. It provides a very suitable framework for controlling robots in contact with an unknown environment [5]. However, the focus on this eld is renewed because of applications such as force feedback, or service and medical robotics, where safety of interaction is crucial. Those applications require also highly light-weight arms, which have minimal impact inertia and can be mounted on mobile systems. Because of the inherent exibility of the light-weight structures, it becomes necessary to bring together the control eld of exible joint robots with that of compliant control. In [1], various Cartesian compliant control strategies (admittance, impedance and stiffness control) were compared and implemented on the DLR light-weight robots. Because of the rather slow Cartesian sampling rate (6ms), classical impedance control had the poorest performance. This changed signicantly by increasing the sampling rate to 1ms, enabling the implementation of high quality impedance control. The recent results with the Cartesian impedance controller are the topics of this paper. The singular perturbation theory is used to extend existing impedance control methods from the rigid body robot case to the exible joint structure. This simple, but efcient method in case of robots with moderate elasticity uses a fast joint level torque control loop, which is receiving its desired torque from a classical Cartesian impedance controller. The DLR 7DOF light-weight arms (Fig. 1) with integrated joint torque sensors are very well suited for this kind of control algorithms [4]. The paper discusses several methods of providing a nullspace stiffness for the redundant manipulator in addition to a Cartesian stiffness. The difference between the methods is illustrated with

Fig. 1. DLR light-weight robot, generation II, using impedance control in a table wiping application.

measurements. Another practically important aspect was the design of the desired damping matrix in the case that the Cartesian mass matrix is not explicitly decoupled by the controller. Two different approaches to this problem are presented and were veried in experiments. II. C ONTROL OF THE F LEXIBLE J OINT M ODEL In this paper a model of a robot with n exible joints is considered as proposed by Spong [11]: )q + g (q ) = K ( q ) + ext , (1) M (q ) q + C (q , q + K ( q ) = m . B (2) Herein q n and n are the vectors of link positions and the motor positions, respectively. M (q ) denotes the manipulators mass matrix, g (q ) the gravity torques )q is the vector of Coriolis and centrifugal and C (q , q torques. K and B are diagonal matrices which contain the joint stiffness and the motor inertias. = K ( q ) is the vector of joint torques and m the motor torque vector which is regarded as the control input. Finally ext is a vector of external torques, which are exhibited by the manipulators environment. One common approach to the control of a exible joint manipulator is the singular perturbation approach, in

which the exible joint model is virtually split up into a fast subsystem for the joint torques and a slow subsystem for the link positions q . Based on these two subsystems it is possible to design an inner loop controller for the joint torque , and an outer loop controller for the link position q separately, without the need to refer to the complete exible model. The application of the singular perturbation theory to exible joint robots has been widely described in the literature and is not in the scope of this paper (see, e.g., [7], [8] for more details). Herein only the resulting controller structure, which will be used in the following sections as a basis for the implementation of different impedance control laws, shall be given briey. In [9] it has been shown that, given a desired torque vector d , a state feedback controller of the form , m = d K T ( d ) K S (3)

alter the system dynamics (4) such that, in presence of external forces and torques at the end-effector F ext m , the closed loop behaviour is given by x + Dd e x + K d ex = F ext , d e (7) with a desired mass d , a desired damping D d and a desired stiffness matrix K d . In absence of further forces on the arm, the relationship between the external torques ext and the forces and torques at the end-effector F ext is given by: ext = J (q )T F ext . (8) From (6) and (4) one can see that the relationship between and the joint torques is the Cartesian accelerations x given by: (q )q (q )1 (C (q , q J + J (q )M )q + g (q )) = x 1 J (q )M (q ) ( d + ext ) . (9) If the desired torque vector d is chosen as )q + g (q ) , d = J (q )T F + C (q , q
m

with positiv denite contoller matrices K T and K S , can stabilize the torque dynamics around the equilibrium point = d , and leads (under a singular perturbation consideration) to the following link dynamics: (q ) )q + g (q ) = d + ext M q + C (q , q (4)

(10)

(q ) = (M (q ) + (I + K T )1 B ). with M The desired torque vector d in (4) can now be used for the realization of a Cartesian impedance controller as will be described in the next section. III. C ARTESIAN I MPEDANCE C ONTROL Based on the singular perturbation analysis, which was outlined in the last section, a rigid joint robot model of the form (4) may be considered for the design of the Cartesian impedance controller. A detailed study of appropriate Cartesian impedance control laws for nonredundant and redundant rigid robots is given, e.g., in [6]. In the following it is assumed that the manipulators endeffector position and orientation can be described by a set of local coordinates x m , and the forward kinematics x = f (q ) is known. The relevant mappings between joint and Cartesian velocities and accelerations can be (q ) computed via the Jacobian J (q ) = f as q = J (q )q , x (q )q = J (q ) . x q+J (5) (6)

with F as a new control input vector, then the resulting Cartesian behaviour of the robot can be written as: (q )q ) = F + F ext (q )( xJ (11) with (q )1 J (q )T )1 (q ) = (J (q )M as an equivalent Cartesian mass matrix. With (11) and (7) it follows that the feedback law F
1 x + K d ex ) + = (q ) xd (q ) d (D d e 1 (q )q ((q ) I )F ext (q )J (13) d

(12)

Notice that in this paper only the nonsingular case is treated, thus it is assumed that the manipulators Jacobian J (q ) has full row rank in the considered region of the workspace. A description of an appropriate singularity treatment can be found in [6]. The deviation of the actual Cartesian position from the desired equilibrium point xd (t) is denoted by ex = x xd (t). Then the goal for the impedance controller is to

leads to the desired closed loop behaviour (7). In [6] it has been shown that, in principle, the same feedback law as described above may also be used in the case of a kinematically redundant manipulator (m = n). But it is well known that, in the redundant case, also those motions of the joints have to be considered which are embedded in the nullspace of the Jacobian J (q ) and which do not affect the end-effector position and orientation. Notice that these motions have been eliminated in (9) by the premultiplication with J (q ). For a formal analysis of this situation it is necessary to introduce additional nullspace-coordinates n which, together with the Cartesian coordinates x, admit a complete description of the robots dynamics. An interesting set of such nullspacecoordinates with some advantageous properties was introduced by Park in [10]. In order to keep the computational complexity low, in the next section an appropriate extention of the Cartesian impedance controller (10) and (13) is treated, which can be used for the control of the manipulators nullspace motion without a formal introduction of additional coordinates.

IV. N ULLSPACE S TIFFNESS In this section it is assumed that the desired nullspace behaviour can be characterized in joint space by a desired positive denite stiffness matrix K N and a positive denite damping matrix D N as well as a desired equilibrium point q N . From these a desired torque d,N = is computed according to a joint K N (q q N ) D N q level PD-controller. In order to prevent interference with the Cartesian impedance behaviour, this desired torque has to be projected into the manipulators nullspace by a properly chosen matrix N (q ). The desired torque is then composed as d = d,cart + N (q ) d,N (14)

This mapping has the conceptual advantage of being a projection matrix (N 3 N 3 = N 3 ), thus avoiding the above mentioned scaling from N 2 . In order to implement this mapping, the Cartesian mass matrix is needed as well as the inverse of the joint mass matrix. But it is important to notice that these values have to be computed also for the implementation of the general impedance control law in (13). V. AVOIDING THE D ECOUPLING OF THE I NERTIAL B EHAVIOUR The decoupling of the inertial behaviour and the command of an arbitrary desired mass matrix in (7) using the controller (13) turns out to be very difcult to realize in practice. Looking at (13), it is clear that the decoupling can not be applied around the robot singularities, since the singularity of J (q ) implies through (12) that some of the elements of (q ) will tend to innity. This would in turn lead to innite desired joint torques using (13), (10). But even in regions of the workspace where J (q ) is wellconditioned, the experimental success was limited in terms of the range of reachable values and of the decoupling accuracy. Possible reasons therefore are in our opinion: The inuence of joint friction, which cannot be completely eliminated by the joint torque controller and a feed-forward friction compensation. The limited accuracy of the dynamical model. The additional need to measure the Cartesian force at the end-effector F ext , which is in our setup only available with lower sampling rate of 6 ms. As an alternative to (13), by focusing only on the implementation of Cartesian stiffness and damping, the following simpler control law was preferred: F d x K d ex = (q ) xd D d e (q )q )e x (q )J C (q , q T )q + g (q ) , = J (q ) F + C (q , q

with d,cart as the impedance controller torque from (10). In the following, three different nullspace projection matrices of different complexities are compared. A. Static Nullspace Projection Let V (q ) denote a full rank left annihilator of J T (q ), i.e., V (q )J T (q ) = 0. Then a projection matrix of the form N 1 (q ) = V (q )T V (q ) (15)

may be used to project the desired torque into the nullspace of the manipulators Jacobian via 0 = N 1 (q ) d,N . Notice that in practice the matrix V (q ) may be computed by a singular value decomposition of the Jacobian. Notice also that, in principle, V (q ) could also be used for the construction of nullspace coordinates n, which were = V (q )q . mentioned in the last section, via n B. Dynamically Consistent Projection It is well known that a static nullspace mapping is not sufcient in order to get a nullspace torque which does not affect the Cartesian behaviour. This can be easily seen by regarding the dynamical equations. A sufcient condition for a nullspace mapping to be consistent with the equations of motion is given by (q )1 N (q ) = 0 , J (q )M (16)

(19) (20)

(q , q ) can be an arbitrary matrix, for which the where C (q ) 2C (q , q (q , q ) holds, e.i. C ) = skew symmetry of 1/2(q ). This leads to the following closed loop dynamics: (q , q x + K d ex + C )e x = F ext . (21) (q ) ex + D d e Equation (21) represents a passive mapping from the x , ensuring the external force F ext to the velocity error e stability of the system in free motion and in feedback interconnection with a passive environment. VI. DAMPING D ESIGN While imposing the closed loop dynamics (21) to the robot, the question raises up, how to design the desired damping matrix D d depending on the desired stiffness K d and the actual Cartesian mass matrix of the arm (q ).

as can be seen from (9). Obviously, this condition can be fullled for example with a mapping of the form (q )V (q )T V (q ) N 2 (q ) = M (17)

in which the statical nullspace projection matrix is premultiplied, and thus scaled, by the manipulators mass matrix. Another dynamically consistent nullspace mapping, which ts very well in the framework of operational space control, was proposed by Khatib [6]: 1 (q )) . N 3 (q ) = (I J T (q )(q )J (q )M (18)

What the user may wish to specify for an application, is a well dened damping behaviour in every Cartesian direction (e.g., a critically damped one). It is then obvious that the damping matrix D d cannot be constant, but has to be chosen as a function of (q ). In the following, the variation of (q ) will be considered slow, so that its derivative can be neglected, reducing (21) in the absence of external forces to x + K d ex = 0 . (q ) ex + D d e (22)

can be obtained. This leads in the new coordinates w = QT (q )ex to a system of n decoupled equations with the requested damping behaviour: + 2D K d0 w + K d0 w = 0 . w
1 /2

(30)

All matrices which will be derived from (q ) are assumed to be quasi-static as well. A. Factorization Design If the eigenvalues of the impedance dynamics should be all real, it can be easily seen that this can be achieved by a damping matrix of the form D d (q ) = A(q )K d1 + K d1 A(q ), where A(q ) and K d1 are dened as A(q )A(q ) = (q ) and K d1 K d1 = K d respectively. (22) can then be factorized as x + A(q ) A(q ) ex + K d1 e +K d1 A(q )ex + K d1 ex = 0. (23) (24)

As mentioned before, Q(q ) is here assumed to be quasistatic. Notice that the decoupling can be achieved only in some particular directions, which are given by Q(q ) and hence depend on (q ) and K d . This is not surprising, since the controller (19) does not provide a decoupling of the mass matrix. Consequently, if the system is excited, oscillations will occur decoupled and with the desired damping behaviour only in those special directions. This is the main limitation of the method. VII. E XPERIMENTAL R ESULTS A. Nullspace Behaviour In this experiment the effects of the different nullspace projections from section IV on the Cartesian behaviour are treated. A desired Cartesian impedance behaviour was chosen, which is characterized by the stiffness values in table I and damping values of i = 0.7. In this experiment
TABLE I C OMMANDED VALUES FOR THE DIAGONAL C ARTESIAN STIFFNESS MATRIX IN THE FIRST EXPERIMENT. x 1000
N m

x + K d1 ex = w, this leads With the substitution A(q )e to the system x + K d1 ex A(q )e + K d1 w A(q )w = w = 0, (25) (26)

y 1000
N m

z 1000
N m

roll 1 300
Nm rad

pitch 300
Nm rad

yaw 300
Nm rad

which has n pairs of equal, real eigenvalues. An heuristic design approach may then be to choose a general damping design of the form D d (q ) = A(q )D K d1 + K d1 D A(q ) , (27)

where D = diag{i } is a diagonal matrix and 0 i 1 (0 for undamped behaviour and 1 for real eigenvalues). For a wide stiffness range this approach leads indeed to numerical eigenvalues with a damping very close to the desired one. B. Double Diagonalization Design An more elegant approach to the design of the damping matrix can be developed based on the generalized eigenvalue problem known from matrix algebra [3]: Given a symmetric positive denite n n matrix and a symmetric n n matrix K d , a n n nonsingular matrix Q can be found, such that = QQT and K d = QK d0 QT for some diagonal matrix K d0 . By choosing the damping matrix as: D d (q ) = 2Q(q )D K d0 QT (q ) , an error dynamics of the form x+ Q(q )QT (q ) ex + 2Q(q )D d K d0 QT (q )e Q(q )K d0 QT (q )ex
1/2 1/2

no external forces were present, and therefore, for an ideal nullspace projection, there should be no Cartesian endeffector deviation from the equilibrium point xd independently of the manipulators nullspace motion. The desired equilibrium point for the nullspace motion was simply chosen as q N = 0. The nullspace stiffness and damping matrices were chosen as diagonal matrices K N = kN I and D N = dN I . The initial conguration of the arm can be seen in Fig. 2 In order to generate an oscillating nullspace motion, a negative value was chosen for the damping factor together with a positive value for the stiffness kN dN kN = 0.5kN , = 50 N m/rad .
1/2

(31) (32)

(28)

The resulting end-effector motion during the oscillating nullspace motion can then be used for an evaluation of the nullspace projections. In this comparison, only the translational motion of the end-effector shall be used. Then the considered Cartesian error ||ex ||t denotes the
1 The

(29) = 0.

values for the rotational stiffness were deliberately chosen high, so that the particular representation of orientations has no signicant effects on the results, as pointed out in [2], [12].

1.2 Projected position deviation [rad]

with N 1 with N 3 with N2

0.8

0.6

0.4

0.2

Fig. 2. Initial conguration of the arm for nullspace and damping design experiments.

0 0

10 time [s]

15

20

25

25

with N1 with N 3 with N


2

xx0 [mm]

Euclidean norm of the translational components of x xd only. In Fig. 3 these Cartesian errors are shown for the different nullspace projection matrices. Herein the projection matrices were switched online between N 1 , N 3 , and N 2 during the nullspace oscillation. One can see that the Cartesian errors are considerably larger in case of the static nullspace projection via N 1 , while the errors with the dynamically consistent projection matrices N 2 and N 3 are of similar magnitude.

Fig. 4. Projected Joint Error ||V (q )(q q N )||2 for the different nullspace projections.
45 40 35 30 25 20 15 10 5 0 5 0 1 2 3 4 time [s] 5 6 7 8 x y z

Cartesian error [ mm]

20

15

Fig. 5. Position step responses with the factorization damping design for x = y = z = 0.7.

10

B. Damping Design
5 0 5 10 time [s] 15 20 25

Fig. 3.

Cartesian Error ||ex ||t for the different nullspace projections.

The effectiveness of the two proposed damping design methods from Sect. VI is evaluated based on step responses which are executed successively in the three translational directions. During the experiment, the desired stiffness values from table II were used.
TABLE II C OMMANDED VALUES FOR THE DIAGONAL C ARTESIAN STIFFNESS MATRIX AND THE NULL - SPACE STIFFNESS . x 4000
N m

In order to visualize also the nullspace motion, which was present during the generation of Fig. 3, the projection of the joint position deviation q q N into the nullspace is given in Fig. 4. While the amplitudes of the oscillations in the nullspace for N 1 are the lowest (Fig. 4), they result in high Cartesian errors (Fig. 3). One can also see that the period of the oscillation is slightly different for the different nullspace projections. This results from the different weightings of the nullspace stiffness and the damping value by the projection matrices.

y 4000
N m

z 4000
N m

roll 300
Nm rad

pitch 300
Nm rad

yaw 300
Nm rad

null-space 0.0
Nm rad

The damping values are set to roll = pitch = yaw = 0.7 for the rotations and to n = 0.0 for the null-space. In Fig. 5, all the step responses are critically damped using the factorization damping design. Since the Cartesian mass

50 x y z

40

30 xx [mm]

20

comparison. Another aspect, which we consider as quite important from a practical point of view, is the design of a suitable damping matrix. This design problem arises when a decoupling of the manipulators mass behaviour is not possible or not desired. A rather heuristic method as well as a method based on double diagonalization of symmetric positive denite matrices have been presented and experimentally compared. ACKNOWLEDGMENT This work was supported by the German Federal Ministry of Education and Research BMBF-Leitprojekt MORPHA number ITL 0902E. IX. REFERENCES
[1] A. Albu-Sch affer and G. Hirzinger. Cartesian impedance control techniques for torque controlled light-weight robots. IEEE International Conference of Robotics and Automation, pages 657663, 2002. [2] F. Caccavale, C. Natale, B. Siciliano, and L. Villani. Sixdof impedance control based on angle/axis representations. IEEE Transactions on Robotics and Automation, 15(2):289299, 1999. [3] D. Harville. Matrix Algebra from a Statisticians Perspective. Springer-Verlag, 1997. [4] G. Hirzinger, A. Albu-Sch affer, M. H ahnle, I. Schaefer, and N. Sporer. On a new generation of torque controlled lightweight robots. IEEE International Conference of Robotics and Automation, pages 33563363, 2001. [5] N. Hogan. Impedance control: An approach to manipulation, part I - theory, part II - implementation, part III applications. Journ. of Dyn. Systems, Measurement and Control, 107:124, 1985. [6] O. Khatib. A unied approach for motion and force control of robot manipulators: The operational space formulation. IEEE Journal of Robotics and Automation, 3(1):1115 1120, February 1987. [7] P. V. Kokotovic, H. K. Khalil, and J. OReilly. Singular Perturbation Methods in Control: Analysis and Design. Academic Press Inc., 1986. [8] A. D. Luca and P. Tomei. Theory of Robot Control, chapter Elastic Joints, pages 219261. Springer-Verlag, Berlin, 1996. [9] C. Ott, A. Albu-Sch affer, and G. Hirzinger. Comparison of adaptive and nonadaptive tracking control laws for a exible joint manipulator. IEEE Int. Conf. on Intelligent Robots and Systems, 2002. [10] J. Park, W. Chung, and Y. Youm. On dynamical decoupling of kinematically redundant manipulators. IEEE Int. Conf. on Intelligent Robots and Systems, 3(1):14951500, 1999. [11] M. Spong. Modeling and control of elastic joint robots. IEEE Journal of Robotics and Automation, RA-3:291300, 1987. [12] S. Stramigioli and H. Bruyninckx. Geometry and screw theory for constrained and unconstrained robot. Tutorial at ICRA, 2001.

10

10 3

7 time [s]

10

11

Fig. 6. Position step responses with a starting point x0 , with the factorization damping design for x = 0.3, y = 1.0, z = 0.3.
50 x y z

40

30 xx [mm]

20

10

10 5

9 time [s]

10

11

12

13

Fig. 7. Position step responses with a starting point x0 , with the double diagonalization damping design for x = 0.3, y = 1.0, z = 0.3.

matrix is not decoupled, it can be seen that a step in one coordinate is exciting also the other directions, but the disturbance is rapidly rejected. The steady-state errors are caused by the lack of perfect compensation of Coulomb friction. Figure 6 and 7 show measurements with the factorization design and the double diagonalization design, respectively, both with the damping set to x = 0.3, y = 1.0, z = 0.3. The performance of both methods is similar and corresponds well to the desired one. VIII. S UMMARY In this paper various practically relevant aspects of impedance control for redundant robots have been treated. The actual implementation of the impedance controllers on a exible joint robot was based on a singular perturbation approach. Three different kinds of nullspace projections for the realization of a nullspace stiffness were described. This aspect has already been treated in detail in the literature and the focus herein lies on the experimental

You might also like