This paper was converted on www.awesomepapers.org from LaTeX by an anonymous user.
Want to know more? Visit the Converter page.

Impedance Control for Manipulators Handling Heavy Payloads

Farhad Aghili email: [email protected]
Abstract

Attaching a heavy payload to the wrist force/moment (F/M) sensor of a manipulator can cause conventional impedance controllers to fail in establishing the desired impedance due to the presence of non-contact forces—namely, the inertial and gravitational forces of the payload. This paper presents an impedance control scheme designed to accurately shape the force-response of such a manipulator without requiring acceleration measurements. As a result, neither wrist accelerometers nor dynamic estimators for compensating inertial load forces are necessary. The proposed controller employs an inner-outer loop feedback structure, which not only addresses uncertainties in the robot’s dynamics but also enables the specification of a general target impedance model, including nonlinear models. Stability and convergence of the controller are analytically proven, with results showing that the control input remains bounded as long as the desired inertia differs from the payload inertia. Experimental results confirm that the proposed impedance controller effectively shapes the impedance of a manipulator carrying a heavy load according to the desired impedance model.

1 Introduction

Impedance control, first proposed by Hogan [1], is used to shape the force-response of a manipulator interacting with its environment. In this approach, the contact force, measured by a wrist force/torque sensor, is utilized by the controller to establish a relationship between force and velocity based on the impedance model. The stability of conventional impedance controllers has been extensively analyzed [2, 3, 4, 5]. Lasky et al. [6] introduced an inner/outer loop control scheme to compensate for uncertainties in robot dynamics using a position control algorithm in the inner loop. Adaptive impedance control schemes for robots with uncertain dynamic model parameters were later presented in [7, 8]. The stability of impedance control when dealing with unknown environments has been addressed in works such as [9, 10, 11, 12]. All of these approaches assume that direct measurements of external or contact forces/moments are available.

When a manipulator carries a heavy payload, conventional impedance control can fail to achieve the desired impedance. This failure occurs because the wrist force sensor measures not only external forces but also the inertial and gravitational forces of the payload [13]. Additionally, a heavy payload can significantly alter the manipulator’s dynamics. This is particularly relevant for space manipulators [14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26], which are designed to handle heavy payloads by leveraging the weightlessness of space. For instance, the space manipulator aboard the International Space Station (ISS) can handle the Space Shuttle orbiter, which weighs approximately 100 metric tons, and employs impedance control for soft berthing with the ISS [27].

Approaches to address non-contact force components measured by a manipulator’s wrist F/M sensor typically focus on compensating for inertial force components using various estimation methods, rather than modifying the impedance control law itself [28, 29]. Fujita and Inoue [30] explored inertial force estimation for cases with pre-planned trajectories. Uchiyama et al. [31] developed a method to estimate external forces and moments using an extended Kalman filter (EKF), though convergence of the EKF depends on the persistent excitation of input signals [32, 33, 34]. Further methods, such as fusing force and accelerometer data via EKF, were proposed in [35] and extended in [34, 36] to estimate both inertial forces and the full set of inertial parameters of the load. However, these techniques require a 6-axis accelerometer. In contrast, our approach modifies the impedance control law itself, eliminating the need for dynamic estimators or accelerometers to account for inertial forces. This method avoids the challenges of input signal excitation and ensures system stability without requiring an additional sensor. Impedance control using inner/outer loops has been employed to emulate manipulators performing contact tasks [37] and spacecraft dynamics [38, 39]. Frequency-domain analysis of impedance control for elastic-jointed industrial manipulators using an inner/outer loop configuration is discussed in [40]. Impedance control schemes for cooperative manipulators have also been explored, with efforts aimed at controlling object/environment interaction forces [41] and managing internal forces in dual-arm cooperative manipulators [42].

The goal of this paper is to present an impedance control scheme for manipulators carrying a heavy payload, without the need for compensating inertial force/moment measurements [3]. We also investigate the limitations of such a scheme. The controller takes force/moment measurements from a sensor installed between the manipulator wrist and payload to establish the dynamic relationship between force error and position error based on a standard mass-damping-spring model. The impedance controller is further enhanced with an inner/outer loop feedback approach, allowing the specification of a general target impedance model. Using robust control theory [43, 44, 45, 46], we demonstrate that the control algorithm can overcome modeling uncertainties. Previous analyses of conventional impedance control show that contact stability imposes a lower bound on the ratio of the desired inertia matrix to the manipulator inertia matrix [47, 48, 49]. However, we show that additional conditions on the payload, manipulator, and desired inertia matrices are required for the stability of impedance control when carrying a heavy payload [3].

This paper is organized as follows: Section 2 introduces the impedance control law for manipulators with heavy payloads. Section 3 further develops the impedance controller using an inner/outer loop control scheme, and Section 3.2 presents a robust version of the controller to handle modeling uncertainties. Finally, Section 4 provides experimental results.

2 Impedance Control

\psfrag{Manipulator}[c][c][.9]{Manipulator}\psfrag{Force/moment}[c][c][.9]{Force/moment}\psfrag{sensor}[c][c][.9]{sensor}\psfrag{Payload}[l][l][.9]{Payload}\psfrag{fext}[l][l][.9]{$\bm{f}_{\rm ext}$}\psfrag{{W}}[c][c][.9]{$\{{\cal W}\}$}\psfrag{{T}}[c][c][.9]{$\{{\cal C}\}$}\psfrag{{S}}[c][c][.9]{$\{{\cal S}\}$}\includegraphics[width=241.84842pt]{figure1}
Figure 1: A manipulator carrying a heavy payload.

Fig. 1 shows a manipulator carrying a payload with non-negligible mass. We assume that no kinematic singularities are encountered meaning that the robot can always operate in the 6-dimensional task space. A 6-axis force/moment sensor installed at the manipulator wrist to measure the external force applied to the payload. However due to the payload mass, the force sensor signal 𝒇s\bm{f}^{\prime}_{s} contains the component of the generalized external force 𝒇ext{\bm{f}}^{\prime}_{\rm ext} superimposed by the gravitational and inertial forces of the payload. Let us assume that 𝒒\bm{q} is the vector of the manipulator joint angles, vector 𝒙\bm{x} is the minimal representation of the position and orientation of the payload, 𝒗\bm{v} and 𝝎\bm{\omega} are the linear and angular velocities of the payload expressed in the fixed-body frame {𝒞}\{{\cal C}\}, and 𝝂=col(𝒗,𝝎)\bm{\nu}={\rm col}\left(\bm{v},\bm{\omega}\right) is the vector of generalized velocity. Then, the following mapping through the manipulator Jacobian matrix 𝑱(𝒒){\bm{J}}^{\prime}(\bm{q}) is in order

𝝂=𝑳(𝒒)𝒙˙=𝑱(𝒒)𝒒˙,\bm{\nu}=\bm{L}(\bm{q})\dot{\bm{x}}={\bm{J}}^{\prime}(\bm{q})\dot{\bm{q}}, (1)

where 𝑳(𝒒)=diag(𝟏3,𝑳o(𝒒))\bm{L}(\bm{q})={\rm diag}\left(\bm{1}_{3},\bm{L}_{o}(\bm{q})\right) with 𝟏3\bm{1}_{3} being the 3×33\times 3 identity matrix, and the transformation matrix 𝑳o\bm{L}_{o} depends on a particular set of parameters used to represent the orientation [50]. The above kinematic mapping can also be written as 𝒙˙=𝑱(𝒒)𝒒˙\dot{\bm{x}}=\bm{J}(\bm{q})\dot{\bm{q}}, where 𝑱(𝒒)=𝑳1(𝒒)𝑱(𝒒)\bm{J}(\bm{q})=\bm{L}^{-1}(\bm{q}){\bm{J}}^{\prime}(\bm{q}) is called the analytical Jacobian [50]; here we have assumed that no representation singularities of the rotation occurs. According to the virtual work principal, two sets of generalized forces 𝒇\bm{f}^{\prime} and 𝒇\bm{f} performing work on 𝝂\bm{\nu} and 𝒙˙\dot{\bm{x}} satisfy 𝝂T𝒇=𝒙˙T𝒇\bm{\nu}^{T}\bm{f}^{\prime}=\dot{\bm{x}}^{T}\bm{f}, and hence they are related by 𝒇s=𝑳T(𝒒)𝒇s\bm{f}_{s}=\bm{L}^{T}(\bm{q})\bm{f}^{\prime}_{s}. Similarly, 𝒇ext=𝑳T(𝒒)𝒇𝒆xt\bm{f}_{\rm ext}=\bm{L}^{T}(\bm{q})\bm{f}^{\prime}_{\bm{e}xt}.

Now, assume that the manipulator is cut right at its junction to the payload. Note that the interaction force/moment between the two separated systems of the manipulator and the payload are detected by the force/moment sensor. Then, the equation of motion of the payload in the task space can be written by

𝑴p(𝒒)𝒙¨+𝒉p(𝒒,𝒒˙)=𝒇s+𝒇ext,\bm{M}_{p}(\bm{q})\ddot{\bm{x}}+\bm{h}_{p}(\bm{q},\dot{\bm{q}})=-{\bm{f}}_{s}+{\bm{f}}_{\rm ext}, (2)

where

𝑴p(𝒒)\displaystyle\bm{M}_{p}(\bm{q}) =[mp𝟏3𝟎𝟎𝑳oT(𝒒)𝑰p𝑳o(𝒒)]\displaystyle=\begin{bmatrix}m_{p}\bm{1}_{3}&\bm{0}\\ \bm{0}&\bm{L}_{o}^{T}(\bm{q})\bm{I}_{p}\bm{L}_{o}(\bm{q})\end{bmatrix} (3a)
𝒉p(𝒒,𝒒˙)\displaystyle\bm{h}_{p}(\bm{q},\dot{\bm{q}}) =[mp(𝝎×𝒗+g𝑹T(𝒒)𝒌)𝑳T(𝝎×𝑰p𝝎)+𝑳T(𝒒)𝑰p𝑳˙o(𝒒,𝒒˙)𝑳o1(𝒒)𝝎].\displaystyle=\begin{bmatrix}m_{p}\big{(}\bm{\omega}\times\bm{v}+g\bm{R}^{T}(\bm{q})\bm{k}\big{)}\\ \bm{L}^{T}\big{(}\bm{\omega}\times\bm{I}_{p}\bm{\omega}\big{)}+\bm{L}^{T}(\bm{q})\bm{I}_{p}\dot{\bm{L}}_{o}(\bm{q},\dot{\bm{q}}){\bm{L}}_{o}^{-1}(\bm{q})\bm{\omega}\end{bmatrix}. (3b)

Here, mpm_{p} and 𝑰p\bm{I}_{p} are the payload mass and inertia tensor, rotation matrix 𝑹(𝒒)\bm{R}(\bm{q}) represents the end-effector attitude, unit vector 𝒌\bm{k} is aligned with the gravity vector111If the z-axis of the coordinate frame {W}\{W\} is perfectly parallel to the earth’s gravity vector, then 𝒌=col(0,0,1)\bm{k}={\rm col}\left(0,0,-1\right). which is expressed in the manipulator’s base frame {W}\{W\}, and g=9.81m/s2g=9.81\;\mbox{m/s}^{2}. Note that all force terms in the right-hand-side (RHS) of (2) are expressed in the fixed-body coordinate frame {C}\{C\} whose origin coincides with the payload’s center-of-mass. Note that the linear and angular velocities in (3b) can be computed from the manipulator’s joint angles and velocities using the kinematic relation (1), and hence the nonlinear vector 𝒉p\bm{h}_{p}, which contains the Coriolis, centrifugal and gravitational terms associated with the payload, can be expressed as a function of the joint angles and velocities, i.e., 𝒉p=𝒉p(𝒒,𝒒˙)\bm{h}_{p}=\bm{h}_{p}(\bm{q},\dot{\bm{q}}).

It is known that the dynamics model of a manipulator in the task space becomes [50]

𝑴m(𝒒)𝒙¨+𝒉m(𝒒,𝒒˙)=𝒖+𝒇s,\bm{M}_{m}(\bm{q})\ddot{\bm{x}}+\bm{h}_{m}(\bm{q},\dot{\bm{q}})=\bm{u}+\bm{f}_{s}, (4)

where

𝒖=𝑱T(𝒒)𝝉,\bm{u}=\bm{J}^{-T}(\bm{q})\bm{\tau},

𝑴m(𝒒)\bm{M}_{m}(\bm{q}) is the Cartesian inertia matrix of the manipulator; the nonlinear vector 𝒉m(𝒒,𝒒˙)\bm{h}_{m}(\bm{q},\dot{\bm{q}}) contains the Coriolis, centrifugal and gravitational terms; and 𝝉\bm{\tau} is the vector of joint torques (see Appendix Appendix A: Manipulator & its Payload for details). Assuming a kinematic singularity does not occur, there is an one-to-one correspondence with the joint vector 𝝉\bm{\tau} and auxiliary input 𝒖\bm{u}. Therefore, in the following derivation, we will take 𝒖\bm{u} as the control input for the sake of simplicity. In the case of a redundant manipulator, the Jacobin inverse is not unique. In solving the inverse kinematics of redundant manipulators, there exist several joint torque optimization techniques in the literature, one of which is the weighted pseudoinverse solution, which can be used to maximize dynamic or static load capacity of the manipulator [51]. Now, eliminating the interaction force 𝒇s\bm{f}_{s} from (2) and (4), we can express the combined dynamics of the manipulator and the payload by

𝑴t(𝒒)𝒙¨+𝒉t(𝒒,𝒒˙)=𝒖+𝒇ext,\bm{M}_{t}(\bm{q})\ddot{\bm{x}}+\bm{h}_{t}(\bm{q},\dot{\bm{q}})=\bm{u}+\bm{f}_{\rm ext}, (5a)
where
𝑴t(𝒒)\displaystyle\bm{M}_{t}(\bm{q}) =𝑴p(𝒒)+𝑴m(𝒒),\displaystyle=\bm{M}_{p}(\bm{q})+\bm{M}_{m}(\bm{q}), (5b)
𝒉t(𝒒,𝒒˙)\displaystyle\bm{h}_{t}(\bm{q},\dot{\bm{q}}) =𝒉p(𝒒,𝒒˙)+𝒉m(𝒒,𝒒˙).\displaystyle=\bm{h}_{p}(\bm{q},\dot{\bm{q}})+\bm{h}_{m}(\bm{q},\dot{\bm{q}}). (5c)

For the sake of notation simplicity, in the following developments we consider all mass matrices and the associated nonlinear vectors be functions of 𝒒\bm{q} and 𝒒,𝒒˙\bm{q},\dot{\bm{q}}, respectively, without writing their arguments unless otherwise is specified.

The desired impedance model that dynamically balances the external contact force 𝒇ext\bm{f}_{\rm ext} is typically chosen as the second-order system [50]

𝑴d(𝒙¨𝒙¨d)+𝑫d(𝒙˙𝒙¨d)+𝑲d(𝒙𝒙d)=𝒇ext,\bm{M}_{d}(\ddot{\bm{x}}-\ddot{\bm{x}}_{d})+\bm{D}_{d}(\dot{\bm{x}}-\ddot{\bm{x}}_{d})+\bm{K}_{d}(\bm{x}-\bm{x}_{d})=\bm{f}_{\rm ext}, (6)

where 𝑴d\bm{M}_{d}, 𝑫d\bm{D}_{d} and 𝑲d\bm{K}_{d} are the desired inertia, damping and stiffness, respectively. Here, we assume that the desired motion trajectory, 𝒙d\bm{x}_{d}, is specified to be twice differentiable with respect to time. Eliminating the acceleration from (2) and (6) and then from (5a) and (6), we get a set of two equations:

𝒇ext\displaystyle\bm{f}_{\rm ext} =(𝟏𝑴p𝑴d1)1(𝒇s+𝒉p+𝑴p𝒙¨d)\displaystyle=(\bm{1}-\bm{M}_{p}\bm{M}_{d}^{-1})^{-1}\big{(}\bm{f}_{s}+\bm{h}_{p}+\bm{M}_{p}\ddot{\bm{x}}_{d}\big{)} (7a)
+(𝟏𝑴d𝑴p1)1(𝑫d𝒆˙+𝑲d𝒆),\displaystyle+\big{(}\bm{1}-\bm{M}_{d}\bm{M}_{p}^{-1}\big{)}^{-1}(\bm{D}_{d}\dot{\bm{e}}+\bm{K}_{d}\bm{e}),
𝒖\displaystyle\bm{u} =𝑴t(𝒙¨d𝑴d1(𝑫d𝒆˙+𝑲d𝒆))+𝒉t\displaystyle=\bm{M}_{t}\big{(}\ddot{\bm{x}}_{d}-\bm{M}_{d}^{-1}(\bm{D}_{d}\dot{\bm{e}}+\bm{K}_{d}\bm{e})\big{)}+\bm{h}_{t} (7b)
+(𝑴t𝑴d1𝟏)𝒇ext\displaystyle+(\bm{M}_{t}\bm{M}_{d}^{-1}-\bm{1})\bm{f}_{\rm ext}

where 𝒆=𝒙𝒙d\bm{e}=\bm{x}-\bm{x}_{d} is the position error. Finally, substituting 𝒇ext\bm{f}_{\rm ext} from (7a) into (7b) we obtain the overall impedance control law as

𝒖\displaystyle\bm{u} =(𝑴t(𝒒)𝚪(𝒒)𝑴p)(𝒙¨d𝑴d1(𝑫d𝒆˙+𝑲d𝒆))\displaystyle=\big{(}\bm{M}_{t}(\bm{q})-\bm{\Gamma}(\bm{q})\bm{M}_{p}\big{)}\big{(}\ddot{\bm{x}}_{d}-\bm{M}_{d}^{-1}(\bm{D}_{d}\dot{\bm{e}}+\bm{K}_{d}\bm{e})\big{)}
+𝒉t(𝒒˙,𝒒)𝚪(𝒒)(𝒇s+𝒉p(𝒒˙,𝒒))\displaystyle+\bm{h}_{t}(\dot{\bm{q}},\bm{q})-\bm{\Gamma}(\bm{q})\big{(}\bm{f}_{s}+\bm{h}_{p}(\dot{\bm{q}},\bm{q})\big{)} (8a)
where
𝚪(𝒒)𝟏𝑴m𝑴d1(𝟏𝑴p𝑴d1)1.\bm{\Gamma}(\bm{q})\triangleq\bm{1}-\bm{M}_{m}\bm{M}_{d}^{-1}\big{(}\bm{1}-\bm{M}_{p}\bm{M}_{d}^{-1}\big{)}^{-1}. (8b)

By inspection, one can show that the impedance control law (8) coincides with the conventional impedance control law [50] if 𝑴p𝟎\bm{M}_{p}\equiv\bm{0}.

From a stability point of view, the fundamental difference between impedance control of manipulators without and with a payload is that, unlike the former case, the latter does not always lead to a stable system. To this end, denote

𝚫d𝑴p𝑴d1.\bm{\Delta}_{d}\triangleq\bm{M}_{p}\bm{M}_{d}^{-1}. (9)

Then, it is apparent from expressions (8a) and (8b) that the control input remains bounded if matrix 𝟏𝚫d\bm{1}-\bm{\Delta}_{d} is not singular, i.e.,

det(𝟏𝚫d)0.\det(\bm{1}-\bm{\Delta}_{d})\neq 0. (10)

Since det(𝟏𝚫d)=i(1λi(𝚫d))\det(\bm{1}-\bm{\Delta}_{d})=\prod_{i}(1-\lambda_{i}(\bm{\Delta}_{d})), we can say that (10) is equivalent to

λi(𝚫d)1i=1,,n,\lambda_{i}(\bm{\Delta}_{d})\neq 1\qquad\forall i=1,\cdots,n, (11)

where λi()\lambda_{i}(\cdot) denotes the iith eigenvalue of matrix ()(\cdot). In the case that the desired inertia is a diagonal matrix with all of its diagonal elements equal to mdm_{d}, i.e., 𝑴d=md𝟏n\bm{M}_{d}=m_{d}\bm{1}_{n}, the above condition is reduced to

mdλi(𝑴p)i=1,,n.m_{d}\neq\lambda_{i}(\bm{M}_{p})\qquad\forall i=1,\cdots,n. (12)
Theorem 1

Assume that the desired inertia matrix is selected such that (11) is satisfied. Then, applying control law (8a) to the manipulator system (4) attached to a payload with generalized inertia 𝐌p\bm{M}_{p} establishes the desired impedance (6).

3 Impedance Control with Inner/Outer Loop

3.1 Nonlinear Impedance Model

In this section, we extend the impedance control of manipulators carrying a heavy payload using an inner/outer loop control scheme in order to enhance the system robustness with respect to the robot dynamics uncertainties. We also assume that the desired impedance model relating the force and motion takes the following general form

𝑴d𝒙¨+𝒉d(𝒙˙,𝒙)=𝒇ext.\bm{M}_{d}\ddot{\bm{x}}+\bm{h}_{d}(\dot{\bm{x}},\bm{x})=\bm{f}_{\rm ext}. (13)

It is worthwhile mentioning that an interesting application of such a impedance control approach is in zero-g emulation of a scaled spacecraft prototype under the test in a 1-g laboratory environment [39, 52].

Let us define an estimation of the acceleration 𝒙¨\ddot{\bm{x}}^{\star} obtained by substituting 𝒇ext\bm{f}_{\rm ext} from (2) into (13), i.e.,

𝑴Δ𝒙¨+𝒉Δ(𝒙˙,𝒙)=𝒇s,\bm{M}_{\Delta}\ddot{\bm{x}}^{\star}+\bm{h}_{\Delta}(\dot{\bm{x}},\bm{x})={\bm{f}}_{s}, (14a)
where
𝑴Δ𝑴d𝑴pand𝒉Δ𝒉d𝒉p.\displaystyle\bm{M}_{\Delta}\triangleq\bm{M}_{d}-\bm{M}_{p}\quad\mbox{and}\quad\bm{h}_{\Delta}\triangleq\bm{h}_{d}-\bm{h}_{p}.
It should be pointed out that in derivation of (14a), we presumed that the manipulator’s acceleration would follow the acceleration trajectory according to the impedance model (13). We will prove that this is case later. Therefore, the acceleration estimate, 𝒙¨\ddot{\bm{x}}^{*}, and actual acceleration, 𝒙¨\ddot{\bm{x}}, are not considered identical. In other words, as will be shown later in this section, the manipulator establishes the desired impedance (13) only if the actual acceleration 𝒙¨\ddot{\bm{x}} follows 𝒙¨\ddot{\bm{x}}^{\star}. In the following development, we will show that the difference between the two accelerations converges to zero under an adequate control law.
Remark 1

By inspection, one can show that if condition (11) is satisfied, then matrix 𝐌Δ\bm{M}_{\Delta} is invertible.

Therefore, if (11) is satisfied, then the velocity estimate, 𝒙˙\dot{\bm{x}}^{\star}, can be obtained through a numerical integration of (14a), i.e.,

𝒙˙(t)=0t𝑴Δ1(𝒇s𝒉Δ)dτ.\dot{\bm{x}}^{\star}(t)=\int_{0}^{t}\bm{M}_{\Delta}^{-1}\big{(}{\bm{f}}_{s}-\bm{h}_{\Delta}\big{)}{\rm d}\tau. (14b)

Similarly, 𝒙{\bm{x}}^{\star} can be obtained by the second integration. Note that 𝒙¨\ddot{\bm{x}}^{\star} and 𝒙¨\ddot{\bm{x}} are not necessarily equal and neither do their integrated values.

Now, the objective is to force the manipulator to follow the trajectory dictated by (14b). It seems that this goal can be achieved by an inverse dynamics controller [53, 50] designed for system (4). However, such a control design scheme will lead to an algebraic loop, which is not realizable in physical systems unless a time-delay is introduced into the control system. Note that the force sensor signal 𝒇s\bm{f}_{s} contains components of the inertial forces of the payload due to the acceleration. Thus, compensating for the perturbation 𝒇s\bm{f}_{s} results in a torque control law which has a direct component of the acceleration, while the acceleration itself is algebraically related to the joint torques. This problem can be avoided by using an inverse-dynamics controller based on the complete model of the manipulator and payload (5a) (note that the payload and manipulator together forms a single multibody chain system) that requires compensating only for the perturbation 𝒇ext{\bm{f}}_{\rm ext}, which is not correlated to the inertial forces. However, the difficulty in this approach is that because of the acceleration estimation error, one can only obtain an estimation of the external force 𝒇ext{\bm{f}}_{\rm ext}; as will be show in the following analysis. Let

𝒙~¨𝒙¨𝒙¨\ddot{\tilde{\bm{x}}}\triangleq\ddot{\bm{x}}^{\star}-\ddot{\bm{x}} (15)

denotes the acceleration error. Now, upon substitution of 𝒙¨\ddot{\bm{x}}^{\star} from (14a) into (15) and then substituting the resultant acceleration term into (2), we can write the expression of the external force as:

𝒇ext=𝒇ext+𝒇~ext,{\bm{f}}_{ext}={\bm{f}}_{\rm ext}^{\star}+\tilde{\bm{f}}_{\rm ext},

where

𝒇ext=(𝟏+𝑴p𝑴Δ1)𝒇s+𝒉p𝑴p𝑴Δ1𝒉Δ{\bm{f}}_{\rm ext}^{\star}=\big{(}\bm{1}+\bm{M}_{p}\bm{M}_{\Delta}^{-1}\big{)}{\bm{f}}_{s}+\bm{h}_{p}-\bm{M}_{p}\bm{M}_{\Delta}^{-1}\bm{h}_{\Delta} (16)

is the external force estimate and

𝒇~ext=𝑴p𝒙~¨\tilde{\bm{f}}_{ext}=-\bm{M}_{p}\ddot{\tilde{\bm{x}}} (17)

is the corresponding estimation error. Clearly, the force estimation error goes to zero if and only if the acceleration error does so.

Now, considering the force estimation (16) for compensating the force perturbation, we propose the following inner loop control

𝒖\displaystyle\bm{u} =𝑴t(𝒒)𝒙¨+𝒉t𝒇ext\displaystyle=\bm{M}_{t}(\bm{q})\ddot{\bm{x}}^{\star}+\bm{h}_{t}-{\bm{f}}^{\star}_{\rm ext}
+𝑴t(𝒒)(𝑮d(𝒙˙𝒙˙)+𝑮p(𝒙𝒙)),\displaystyle+\bm{M}_{t}(\bm{q})\big{(}\bm{G}_{d}(\dot{\bm{x}}^{\star}-\dot{\bm{x}})+\bm{G}_{p}(\bm{x}^{\star}-\bm{x})\big{)}, (18)

where 𝒙¨\ddot{\bm{x}}^{\star}, 𝒙˙\dot{\bm{x}}^{\star}, 𝒙{\bm{x}}^{\star} and 𝒇ext\bm{f}_{\rm ext}^{\star} are obtained from (13)- (16), while 𝑮d>0\bm{G}_{d}>0 and 𝑮p>0\bm{G}_{p}>0 are the feedback gains. In the following analysis, we will show that the inner loop controller (18) in conjunction with the outer loop (14) can shape the impedance of the combined system of manipulator and payload according to (13) provided that a condition on the system mass distribution is met. Substituting (18) into the dynamics model (5a) yields the equation of force error as

𝑴t(𝒙~¨+𝑮d𝒙~˙+𝑮p𝒙~)=𝒇~ext.\bm{M}_{t}\big{(}\ddot{\tilde{\bm{x}}}+\bm{G}_{d}\dot{\tilde{\bm{x}}}+\bm{G}_{p}{\tilde{\bm{x}}}\big{)}=-\tilde{\bm{f}}_{\rm ext}. (19)

Using (17) in (19) yields the following autonomous system

(𝟏𝑴t1𝑴p)𝒙~¨+𝑮d𝒙~˙+𝑮p𝒙~\displaystyle\big{(}\bm{1}-\bm{M}_{t}^{-1}\bm{M}_{p}\big{)}\ddot{\tilde{\bm{x}}}+\bm{G}_{d}\dot{\tilde{\bm{x}}}+\bm{G}_{p}{\tilde{\bm{x}}} =𝟎\displaystyle=\bm{0}
(𝟏𝑴t1𝑴p)(𝒙~¨+𝑮d𝒙~˙+𝑮p𝒙~)+𝑴t1𝑴p(𝑮d𝒙~˙+𝑮p𝒙~)\displaystyle\big{(}\bm{1}-\bm{M}_{t}^{-1}\bm{M}_{p}\big{)}\big{(}\ddot{\tilde{\bm{x}}}+\bm{G}_{d}\dot{\tilde{\bm{x}}}+\bm{G}_{p}{\tilde{\bm{x}}}\big{)}+\bm{M}_{t}^{-1}\bm{M}_{p}\big{(}\bm{G}_{d}\dot{\tilde{\bm{x}}}+\bm{G}_{p}{\tilde{\bm{x}}}\big{)} =𝟎\displaystyle=\bm{0} (20)

Multiplying both sides of (20) by 𝑴m1𝑴t\bm{M}_{m}^{-1}\bm{M}_{t} and using identity (5b) in the resultant equations yields

𝒙~¨+𝑮d𝒙~˙+𝑮p𝒙~+𝚫m(𝑮d𝒙~˙+𝑮p𝒙~)=𝟎,\ddot{\tilde{\bm{x}}}+\bm{G}_{d}\dot{\tilde{\bm{x}}}+\bm{G}_{p}{\tilde{\bm{x}}}+\bm{\Delta}_{m}\big{(}\bm{G}_{d}\dot{\tilde{\bm{x}}}+\bm{G}_{p}{\tilde{\bm{x}}}\big{)}=\bm{0}, (21)

where

𝚫m𝑴m1𝑴p.\bm{\Delta}_{m}\triangleq\bm{M}_{m}^{-1}\bm{M}_{p}. (22)

Stability of the closed-loop system (21) remains to be proved. We will show in the following that system (21) remains stable if the coefficient matrix of the additive term, i.e., 𝚫m\bm{\Delta}_{m}, is sufficiently small. Let us assume that 𝒛=col(𝒙~,𝒙~˙)\bm{z}=\mbox{col}(\tilde{\bm{x}},\dot{\tilde{\bm{x}}}) represents the state vector. Then, (21) can be written in the following compact form

𝒛˙=𝑨𝒛+𝒅(t,𝒛),\dot{\bm{z}}=\bm{A}\bm{z}+\bm{d}(t,\bm{z}), (23)

where

𝑨=[𝟎𝟏𝑮p𝑮d]and𝒅(t,𝒛)=𝑫𝚫m𝑮𝒛,\bm{A}=\begin{bmatrix}\bm{0}&\bm{1}\\ -\bm{G}_{p}&-\bm{G}_{d}\end{bmatrix}\quad\text{and}\quad\bm{d}(t,\bm{z})=-\bm{D}\bm{\Delta}_{m}\bm{G}\bm{z},

with 𝑮=[𝑮p𝑮d]\bm{G}=[\bm{G}_{p}\quad\bm{G}_{d}] and 𝑫T=[𝟎𝟏]\bm{D}^{T}=[\bm{0}\quad\bm{1}]. The perturbation term 𝒅\bm{d} satisfies the linear growth bound

𝒅𝑮𝚫m𝒛,\|\bm{d}\|\leq\|\bm{G}\|\|\bm{\Delta}_{m}\|\|\bm{z}\|,

where

λmin(𝑴p)λmax(𝑴m)𝚫mλmax(𝑴p)λmin(𝑴m)<𝒛2n.\frac{\lambda_{\rm min}(\bm{M}_{p})}{\lambda_{\rm max}(\bm{M}_{m})}\leq\left\|\bm{\Delta}_{m}\right\|\leq\frac{\lambda_{\rm max}(\bm{M}_{p})}{\lambda_{\rm min}(\bm{M}_{m})}<\infty\qquad\forall\bm{z}\in\mathbb{R}^{2n}.

Therefore, system (23) is in the form of vanishing perturbation [54]. Here, \left\|\cdot\right\| denotes the Euclidean norm of a vector or a matrix. Moreover, since 𝑨\bm{A} is Hurwitz, one can show that the perturbed system can be globally exponentially stable if the gains are adequately selected, i.e.,

𝚫mκ(𝑮),\left\|\bm{\Delta}_{m}\right\|\leq\kappa(\bm{G}), (24)

where κ(𝑮)\kappa(\bm{G}) is a function of the feedback gains; see the Appendix Appendix B: Stability of the Perturbed System for details. That means there must exist scalar μ>0\mu>0 such that 𝒛𝒛(0)eμt\|\bm{z}\|\leq\left\|\bm{z}(0)\right\|e^{-\mu t}. Therefore, it can be inferred from (21) that

𝒙~¨ϕeμt,\|\ddot{\tilde{\bm{x}}}\|\leq\phi e^{-\mu t}, (25)

where scaler ϕ\phi depend on the initial error

ϕ=(1+𝚫m)𝑮𝒛(0).\phi=(1+\left\|\bm{\Delta}_{m}\right\|)\left\|\bm{G}\right\|\bm{z}(0).

Now, we are ready to derive the input/output relation of the closed loop system under the proposed control law. Adding both sides of (2) and (14a) yields

𝑴d𝒙¨+𝒉d(𝒙˙,𝒙)=𝒇ext+𝜹,\bm{M}_{d}\ddot{\bm{x}}+\bm{h}_{d}(\dot{\bm{x}},\bm{x})={\bm{f}}_{\rm ext}+\bm{\delta}, (26a)
where
𝜹(t)=𝑴Δ𝒙~¨.\bm{\delta}(t)=-\bm{M}_{\Delta}\ddot{\tilde{\bm{x}}}. (26b)

It follows from (25) and (26b) that

𝜹ϕλmax(𝑴Δ)eμt,\|\bm{\delta}\|\leq\phi\lambda_{\rm max}({\bm{M}}_{\Delta})e^{-\mu t}, (27)

which means that the perturbation 𝜹\bm{\delta} exponentially relaxes to zero from its initial value.

To summarize, consider the target impedance dynamics (13) for a manipulator with inertia 𝑴m\bm{M}_{m} carrying a payload with 𝑴p\bm{M}_{p}. Assume that the inertia ratios 𝚫d\left\|\bm{\Delta}_{d}\right\| and 𝚫m\left\|\bm{\Delta}_{m}\right\| satisfy conditions (11) and (24), respectively. Then, the force-response of the combined manipulator and payload under the impedance controller with the inner/outer loops (14)-(18) converges to the target impedance (13), while the control input remains bounded.

It should be pointed out that in addition to (11) and (24), the condition for contact stability must be also satisfied. The problem of coupled or contact stability has been thoroughly examined in the literature [47, 55, 56, 57, 4, 58, 48, 49]. Coupled stability of a feedback controller for a manipulator interacting with passive environments was studied in [58], while the instability attributed to noncolocation of the sensor and actuators was investigated in [55, 4]. The effect of delays in contact stability of impedance control is analyzed in [57]. Digital implementations of impedance control and contact stability were examined in [47, 48], while stability analysis of impendence control under the presence of actuator dynamics was carried out in [49]. The analysis results of [47, 48, 49] showed that contact stability imposes a lower bound limit on the magnitude of the ratio of the desired inertia matrix to the actual effective inertia matrix when the impedance control is implemented digitally or the actuators are of finite bandwidth.

3.2 Robust Impedance Control

It is much more reasonable to suppose that the model-based control law (18) is actually computed from 𝑴^m\hat{\bm{M}}_{m} and 𝒉^m\hat{\bm{h}}_{m}, which are nominal or computed versions of 𝑴m\bm{M}_{m} and 𝒉m\bm{h}_{m} [45]. In that case, the perturbation in system (23) will be compounded by an additional term due to the modeling uncertainty. In this section, the control law will be redesigned in order to overcome the effects of modeling uncertainties and the perturbation all together. To this end, the control law (18) is modified to

𝒖=𝒖^+𝑴^t𝒘,\bm{u}=\hat{\bm{u}}+\hat{\bm{M}}_{t}\bm{w}, (28)

where 𝒖^\hat{\bm{u}} is control law (18) computed from the nominal variables 𝑴^m\hat{\bm{M}}_{m} and 𝒉^m\hat{\bm{h}}_{m}, while 𝒘\bm{w} is the additional control input to compensate for the dynamics uncertainty and perturbation [43]. Substituting the above control law into (5a) yields

𝒙~¨=𝑴~t𝒙¨+𝑴t1(𝒇~ext𝒉~t)𝑴t1𝑴^t(𝒘+𝑮𝒛),\displaystyle\ddot{\tilde{\bm{x}}}=\tilde{\bm{M}}_{t}\ddot{\bm{x}}^{\star}+\bm{M}_{t}^{-1}(\tilde{\bm{f}}_{\rm ext}-\tilde{\bm{h}}_{t})-\bm{M}_{t}^{-1}\hat{\bm{M}}_{t}(\bm{w}+\bm{G}\bm{z}), (29)

where 𝒉~t=𝒉~m=𝒉m𝒉^m\tilde{\bm{h}}_{t}=\tilde{\bm{h}}_{m}=\bm{h}_{m}-\hat{\bm{h}}_{m} and 𝑴~t=𝟏𝑴t1𝑴^t\tilde{\bm{M}}_{t}=\bm{1}-\bm{M}_{t}^{-1}\hat{\bm{M}}_{t} represents the parametric uncertainty or modeling error. On the other hand, using identity (15) in (26b), one can relate the desired acceleration 𝒙¨\ddot{\bm{x}}^{\star} to the external force by

𝒙¨=𝑴d1(𝒇ext𝒉d)+𝚫dT𝒙~¨.\ddot{\bm{x}}^{\star}=\bm{M}_{d}^{-1}\big{(}\bm{f}_{\rm ext}-\bm{h}_{d}\big{)}+\bm{\Delta}_{d}^{T}\ddot{\tilde{\bm{x}}}. (30)

Substituting 𝒙¨\ddot{\bm{x}}^{\star} and 𝒇~ext\tilde{\bm{f}}_{\rm ext} from (30) and (17) into (29) yields the following first-order matrix differential equation

𝒛˙=𝑨𝒛+𝑫(𝜼𝒘),\dot{\bm{z}}=\bm{A}\bm{z}+\bm{D}(\bm{\eta}-\bm{w}), (31)

where 𝒛\bm{z} has been already defined as the state vector and

𝜼\displaystyle\bm{\eta} =𝚫𝑴~t𝑴d1(𝒇ext𝒉d)𝚫𝑴t1𝒉~t\displaystyle=\bm{\Delta}\tilde{\bm{M}}_{t}\bm{M}_{d}^{-1}(\bm{f}_{\rm ext}-\bm{h}_{d})-\bm{\Delta}\bm{M}_{t}^{-1}\tilde{\bm{h}}_{t}
+(𝟏𝚫𝑴t1𝑴^t)(𝑮𝒛+𝒘),\displaystyle+(\bm{1}-\bm{\Delta}\bm{M}_{t}^{-1}\hat{\bm{M}}_{t})(\bm{G}\bm{z}+\bm{w}), (32a)
𝚫\displaystyle\bm{\Delta} =(𝟏+𝚫tT𝑴~t𝚫dT)1,\displaystyle=\big{(}\bm{1}+\bm{\Delta}_{t}^{T}-\tilde{\bm{M}}_{t}\bm{\Delta}_{d}^{T}\big{)}^{-1}, (32b)
𝚫t\displaystyle\bm{\Delta}_{t} =𝑴p𝑴t1.\displaystyle=\bm{M}_{p}\bm{M}_{t}^{-1}. (32c)

The control input 𝒘\bm{w} is chosen according to robust control theory [43, 45]:

𝒘={𝑫T𝑷𝒛𝑫T𝑷𝒛ρif𝑫T𝑷𝒛0𝟎otherwise\bm{w}=\left\{\begin{array}[]{lll}-\frac{\bm{D}^{T}\bm{P}\bm{z}}{\|\bm{D}^{T}\bm{P}\bm{z}\|}\rho&&\mbox{if}\quad\left\|\bm{D}^{T}\bm{P}\bm{z}\right\|\neq 0\\ \bm{0}&&\mbox{otherwise}\end{array}\right. (33)

where ρ\rho should be chosen so that

ρ𝜼𝒙,𝒙˙.\rho\geq\left\|\bm{\eta}\right\|\qquad\forall\bm{x},\dot{\bm{x}}. (34)

In view of definition of 𝜼\bm{\eta} in (32a) and that 𝒘=ρ\left\|\bm{w}\right\|=\rho, assumption (34) makes sense only if

𝟏𝚫𝑴t1𝑴^tα<1.\|\bm{1}-\bm{\Delta}\bm{M}_{t}^{-1}\hat{\bm{M}}_{t}\|\leq\alpha<1. (35)

Note that (35) automatically implies that the matrix inversion in (32b) is well behaved. The conventional robust position control of manipulators assume that 𝑴~t1\|\tilde{\bm{M}}_{t}\|\leq 1 and 𝒉~t<𝒙,𝒙˙\|\tilde{\bm{h}}_{t}\|<\infty\quad\forall\bm{x},\dot{\bm{x}} [45]. In addition to the later assumption, we need to assume that 𝒇ext\|\bm{f}_{\rm ext}\| and 𝒉d\|\bm{h}_{d}\| are bounded quantities too. Note that the nonlinear term 𝒉d\bm{h}_{d} is a part of the desired impedance model, eq.(13), which is a mathematical definition rather than describing a physical phenomenon. Therefore, the desired nonlinear term 𝒉d\bm{h}_{d} can be easily defined to be a bounded quantity (e.g., using saturation functions). Under this circumstances, condition (34) can be always satisfied (see Appendix Appendix C: Uncertainty Bound). Then, a standard argument shows that the error 𝒛\bm{z} asymptotically converges to zero under the robust control feedback. To this end, selecting the Lyapunov function (40) again, we can show that its time-derivative satisfies

V˙𝒛2+2𝑫T𝑷𝒛(𝜼ρ)<0.\dot{V}\leq-\left\|\bm{z}\right\|^{2}+2\|\bm{D}^{T}\bm{P}\bm{z}\|\big{(}\left\|\bm{\eta}\right\|-\rho\big{)}<0. (36)

Assumption (35) is more stringent than the peer assumption made in the conventional robust position control of manipulators [45], i.e., 𝑴~tα<1\|\tilde{\bm{M}}_{t}\|\leq\alpha<1. It is worth mentioning that if the payload inertia is negligible, i.e., 𝑴p0𝚫𝟏\bm{M}_{p}\approx 0\Rightarrow\bm{\Delta}\approx\bm{1}, then (35) coincides with the assumption of the conventional robust position control of manipulators.

It is known that the discontinuity of the additional control input (33) together with the finite bandwidth of sensors and actuators employed in the control system can lead to undesirable chattering [45]. In that case, the trajectories of the state vector oscillates around the sliding hyperplane 𝑫T𝑷𝒛=𝟎\bm{D}^{T}\bm{P}\bm{z}=\bm{0} at high frequency instead of being attracted to the hyperplane and then moving toward the origin. It is possible to eliminate the chattering by allowing the error 𝒛\bm{z} to vary within a boundary layer whose thickness is chosen as ε\varepsilon. This kind of controller is discussed in [43]

𝒘={𝑫T𝑷𝒛𝑫T𝑷𝒛ρif𝑫T𝑷𝒛ε𝟎otherwise\bm{w}=\left\{\begin{array}[]{lll}-\frac{\bm{D}^{T}\bm{P}\bm{z}}{\|\bm{D}^{T}\bm{P}\bm{z}\|}\rho&&\mbox{if}\quad\left\|\bm{D}^{T}\bm{P}\bm{z}\right\|\leq\varepsilon\\ \bm{0}&&\mbox{otherwise}\end{array}\right. (37)

4 Experiment

Table 1: Manipulator’s link parameters.
Link m (kg) IxxI_{xx} (kgm2) IyyI_{yy} (kgm2) IzzI_{zz} (kgm2) cxc_{x} (m) cyc_{y} (m) czc_{z} (m)
1 27.31 0.31 0.38 0.30 -0.140 -0.044 0.170
2 21.00 0.25 3.35 3.30 -0.490 0.000 0.125
3 10.00 0.17 2.60 2.50 -0.401 0.000 0.030
4 4.33 0.035 0.05 0.02 -0.166 0.079 0.171
5 4.02 0.026 0.04 0.02 -0.162 -0.009 0.204
6 1.59 0.01 0.01 0.003 0.000 0.000 0.220

This section describes experimental results obtained from implementation of the proposed impedance control scheme using a robotic manipulator described in [3]. The inertial properties of the manipulator links have been identified [59] as listed in Table 1. The manipulator joints are equipped with torque sensors which are used by an inner loop feedback controller to minimize the joint friction.

A dummy box is mounted on the manipulator wrist. The payload mass and inertia are:

mp=16kgand𝑰p=[0.330000.620000.71]kgm2.m_{p}=16~{}\text{kg}\quad\text{and}\quad\bm{I}_{p}=\begin{bmatrix}0.33&0&0\\ 0&0.62&0\\ 0&0&0.71\end{bmatrix}~{}\text{kgm}^{2}.

The Cartesian inertia matrix of the manipulator calculated at a nominal position within the workspace used for the tests is:

𝑴m=[57.7313.533.340.566.2118.0513.5369.2619.831.405.5218.233.3419.8338.894.485.889.040.561.404.4813.230.750.226.215.525.880.7513.308.6818.0518.239.040.228.6818.26]\bm{M}_{m}=\begin{bmatrix}57.73&13.53&-3.34&-0.56&-6.21&18.05\\ 13.53&69.26&-19.83&-1.40&-5.52&18.23\\ -3.34&-19.83&38.89&-4.48&5.88&-9.04\\ -0.56&-1.40&-4.48&13.23&-0.75&0.22\\ -6.21&-5.52&5.88&-0.75&13.30&-8.68\\ 18.05&18.23&-9.04&0.22&-8.68&18.26\end{bmatrix}

The force/moment interaction between the manipulator and the payload were measured by a six-axis JR3 force/moment sensor. The impedance controller scheme with inner/outer loop described in Section 3 was developed and implemented using Simulink. Matrix manipulation was performed by using the DSP Blockset of Matlab/Simulink [60]. The Real-Time Workshop package [61] generated portable C code from the Simulink model which was executed on a QNX real-time operating system.

The objective of the first case study is to show that the proposed controller is able to match the manipulator force-response according to the desired impedance even though the force sensor signal is directly incorporated into the controller without compensating for the inertial forces. To this end, the target mass and inertia of the impedance controller is set to be three times as much as the actual mass and inertia of the payload, i.e.,

𝑴d=3𝑴P.\bm{M}_{d}=3\bm{M}_{P}. (38)

Fig. 2 shows trajectories of the forces and moments due to external force impulses applied by hand. These trajectories are obtained by compensating for the gravitational and inertial force components of the force/moment sensor output through an off-line process; see Appendix Appendix D: External Force Estimate for the derivation of the external force as a function of 𝒇s\bm{f}_{s} and 𝒖\bm{u}. The subsequent trajectories of the linear and angular velocities of the payload are illustrated in Fig. 3(a). The simulated velocity profiles in response to the same force/moment inputs according to the target impedance model are also depicted in Fig. 3(b). A comparison between trajectories of Figs. 3(a) and 3(b) shows that the impedance controller has succeeded to establish the target impedance characteristic even though the wrist force sensor sees inertial forces of the load. In order to quantify the difference between the simulated velocity and the robot velocity, the root mean square error (RMSE) of the linear velocity is given in percentage as:

RMSE(𝒗)=100×0T𝒗𝒗sim2𝑑t0T𝒗2𝑑t=6.1%.{\rm RMSE}(\bm{v})=100\times\sqrt{\frac{\int_{0}^{T}\|\bm{v}-\bm{v}_{\rm sim}\|^{2}dt}{\int_{0}^{T}\|\bm{v}\|^{2}dt}}=6.1\%.

Similarly, the RMSE of the angular velocity is calculated to be

RMSE(𝝎)=4.3%.{\rm RMSE}(\bm{\omega})=4.3\%.
\psfrag{time}[c][c][.8]{Time~{}(sec)}\psfrag{force}[c][c][.8]{force~{}(N)}\psfrag{torque}[c][c][.8]{moment~{}(Nm)}\psfrag{fx}[l][l][.8]{$f_{x}$}\psfrag{fy}[l][l][.8]{$f_{y}$}\psfrag{fz}[l][l][.8]{$f_{z}$}\psfrag{tx}[l][l][.8]{$n_{x}$}\psfrag{ty}[l][l][.8]{$n_{y}$}\psfrag{tz}[l][l][.8]{$n_{z}$}\includegraphics[width=270.30118pt]{figure3.eps}
Figure 2: Dynamics force and moment.
\psfrag{time}[c][c][.8]{Time~{}(sec)}\psfrag{vx}[l][l][.8]{$v_{x}$}\psfrag{vy}[l][l][.8]{$v_{y}$}\psfrag{vz}[l][l][.8]{$v_{z}$}\psfrag{wx}[l][l][.8]{$\omega_{x}$}\psfrag{wy}[l][l][.8]{$\omega_{y}$}\psfrag{wz}[l][l][.8]{$\omega_{z}$}\psfrag{vsim}[c][c][.8]{$\bm{v}_{\rm sim}$~{}(m/s)}\psfrag{omegsim}[c][c][.8]{$\bm{\omega}_{\rm sim}$~{}(rad/s)}\psfrag{v}[c][c][.8]{$\bm{v}$~{}(m/s)}\psfrag{omeg}[c][c][.8]{$\bm{\omega}$~{}(rad/s)}\includegraphics[clip,width=270.30118pt]{figure4}
(a) Actual trajectories
\psfrag{time}[c][c][.8]{Time~{}(sec)}\psfrag{vx}[l][l][.8]{$v_{x}$}\psfrag{vy}[l][l][.8]{$v_{y}$}\psfrag{vz}[l][l][.8]{$v_{z}$}\psfrag{wx}[l][l][.8]{$\omega_{x}$}\psfrag{wy}[l][l][.8]{$\omega_{y}$}\psfrag{wz}[l][l][.8]{$\omega_{z}$}\psfrag{vsim}[c][c][.8]{$\bm{v}_{\rm sim}$~{}(m/s)}\psfrag{omegsim}[c][c][.8]{$\bm{\omega}_{\rm sim}$~{}(rad/s)}\psfrag{v}[c][c][.8]{$\bm{v}$~{}(m/s)}\psfrag{omeg}[c][c][.8]{$\bm{\omega}$~{}(rad/s)}\includegraphics[clip,width=270.30118pt]{figure5}
(b) Simulated trajectories
Figure 3: Trajectories of the linear and angular velocities.

In the second case study, the stability of the impedance control system involving contact task is investigated. In this experiment, the manipulator squeezes its payload against a flat horizontal surface. The standard mass-damper-spring model is chosen as the target impedance with parameters according to (38) and

𝑲d\displaystyle\bm{K}_{d} =diag{470,470,470,10,18,20}\displaystyle=\mbox{diag}\{470,470,470,10,18,20\}
𝑫d\displaystyle\bm{D}_{d} =diag{600,600,600,12,20,25}\displaystyle=\mbox{diag}\{600,600,600,12,20,25\}

Note that the damping matrix is chosen so as to achieve a well-damped behavior with damping ratio ζ=2\zeta=2. Initially, the manipulator holds the box just a few centimeters above the flat surface. In order to established a contact force between the box and the environment the manipulator is commanded to move along the z-axis to a position obstructed by the flat surface, i.e., 𝒙d=col(0,0,xdz,0,0,0)\bm{x}_{d}={\rm col}\left(0,0,x_{d_{z}},0,0,0\right) and 𝒙˙d=𝒙¨d=𝟎\dot{\bm{x}}_{d}=\ddot{\bm{x}}_{d}=\bm{0}. Fig. 4 illustrates the actual position of the payload along the z-axis versus the desired one. At t<5t<5s when no contact is encountered, the controller regulates the robot position to the desired one just above the surface. However, at t<5t<5s the robot is commanded to a position so that the box is obstructed by the environment that leads to the contact at t=6t=6s. Fig. 5 shows trajectories of the contact force and moment, while Fig. 6 shows trajectories of the linear and angular velocities. The contact force along z-axis, which stabilizes around 2323 N, and the steady-state position error, 55 cm, are closely related to the corresponding 470470 N/m stiffness component of the enforced impedance. It is clear from Fig. 5 that, in addition to the z-axis force, significant external moment along y-axis is initially built up due to the misalignment of the box surface with respect to the environment. However, the impedance controller responds to the moment and causes the box to slip in a way that eventually leads to significant reduction of the built-up moment.

\psfrag{time}[c][c][.8]{Time~{}(sec)}\psfrag{xd}[l][l][.8]{$x_{d_{z}}$}\psfrag{x}[l][l][.8]{$x_{z}$}\psfrag{position}[c][c][.8]{position~{}(m)}\includegraphics[width=270.30118pt]{figure6}
Figure 4: The zz-axis position of the payload.
\psfrag{time}[c][c][.8]{Time~{}(sec)}\psfrag{force}[c][c][.8]{force~{}(N)}\psfrag{torque}[c][c][.8]{moment~{}(Nm)}\psfrag{fx}[l][l][.8]{$f_{x}$}\psfrag{fy}[l][l][.8]{$f_{y}$}\psfrag{fz}[l][l][.8]{$f_{z}$}\psfrag{tx}[l][l][.8]{$n_{x}$}\psfrag{ty}[l][l][.8]{$n_{y}$}\psfrag{tz}[l][l][.8]{$n_{z}$}\includegraphics[width=270.30118pt]{figure7}
Figure 5: Contact force and moment.
\psfrag{time}[c][c][.8]{Time~{}(sec)}\psfrag{vx}[l][l][.8]{$v_{x}$}\psfrag{vy}[l][l][.8]{$v_{y}$}\psfrag{vz}[l][l][.8]{$v_{z}$}\psfrag{wx}[l][l][.8]{$\omega_{x}$}\psfrag{wy}[l][l][.8]{$\omega_{y}$}\psfrag{wz}[l][l][.8]{$\omega_{z}$}\psfrag{v}[c][c][.8]{$\bm{v}$~{}(m/s)}\psfrag{omeg}[c][c][.8]{$\bm{\omega}$~{}(rad/s)}\includegraphics[clip,width=270.30118pt]{figure8}
Figure 6: Trajectories of the linear and angular velocities.

5 Conclusions

An impedance controller for manipulators carrying a rigid-body payload has been developed that does not rely on any acceleration measurements in order to compensate for the inertial forces of the payload. The stability and convergence of the impedance controller have been analytically investigated. The results showed that the control input remains bounded provided that the desired inertia was selected to be different from that of the payload. The impedance controller was further developed with utilizing an inner/outer loop approach. This allows specifying the desired impedance model in a general form. The stability analysis revealed that such an impedance control approach has its own limitation; that is to maintain the stability of the closed-loop system, the ratio of payload inertia to the manipulator Cartesian inertia must be lower than a ceratin value (which depends on the feedback gains). It should be noted that this condition is in addition to the well-known condition on the contact stability, which imposes a lower bound limit on the magnitude of the ratio of the desired inertia matrix to the actual effective inertia matrix when the impedance control is implemented digitally or the actuators are of finite bandwidth. Furthermore, robust control theory was employed to modify the proposed impedance controller so that it could compensate for robot modeling uncertainty. Subsequently, the conditions for achieving robust impedance control in the face of modeling uncertainty have been derived. The conditions for this, however, were found to be more stringent than those of the conventional robust position control of manipulators. Experimental results have shown that the proposed impedance controller enabled a manipulator carrying a payload with a non-negligible mass to establish the desired impedance characteristic even though no acceleration measurements were used.

Appendix A: Manipulator & its Payload

Dynamics equations of the manipulator in joint space are given by

𝑴m𝒒¨+𝒉m(𝒒,𝒒˙)=𝝉+𝑱T𝒇s{\bm{M}}^{\prime}_{m}\ddot{\bm{q}}+\bm{h}^{\prime}_{m}(\bm{q},\dot{\bm{q}})=\bm{\tau}+\bm{J}^{T}\bm{f}_{s} (39)

Substituting the joint acceleration from 𝒒¨=𝑱1𝒙¨𝑱1𝑱˙𝒒˙\ddot{\bm{q}}=\bm{J}^{-1}\ddot{\bm{x}}-\bm{J}^{-1}\dot{\bm{J}}\dot{\bm{q}} into (39) and then multiplying the resultant equation by 𝑱T\bm{J}^{-T} yields (4), in which

𝑴m\displaystyle\bm{M}_{m} 𝑱T𝑴m𝑱1\displaystyle\triangleq\bm{J}^{-T}{\bm{M}}^{\prime}_{m}\bm{J}^{-1}
𝒉m\displaystyle\bm{h}_{m} 𝑱T𝒉m𝑴m𝑱˙𝒒˙\displaystyle\triangleq\bm{J}^{-T}{\bm{h}}^{\prime}_{m}-\bm{M}_{m}\dot{\bm{J}}\dot{\bm{q}}

Appendix B: Stability of the Perturbed System

Since 𝑨\bm{A} is Hurwitz, there exists a Lyapunov function

V(𝒛)=𝒛T𝑷𝒛V(\bm{z})=\bm{z}^{T}\bm{P}\bm{z} (40)

with 𝑷>0\bm{P}>0 satisfying

𝑷𝑨+𝑨T𝑷=𝟏.\bm{P}\bm{A}+\bm{A}^{T}\bm{P}=-\bm{1}. (41)

The derivative of V(𝒛)V(\bm{z}) along trajectories of the perturbed system (23) satisfies

V˙(1+2𝑮λmax(𝑷)𝚫m)𝒛2.\dot{V}\leq\Big{(}-1+2\left\|\bm{G}\right\|\lambda_{\rm max}(\bm{P})\left\|\bm{\Delta}_{m}\right\|\Big{)}\left\|\bm{z}\right\|^{2}. (42)

Therefore, according to the stability theorem of perturbed systems [54, p. 206], the origin of (23) is globally exponentially stable if

𝚫mκ(𝑮p,𝑮d)12𝑮λmax(𝑷).\left\|\bm{\Delta}_{m}\right\|\leq\kappa(\bm{G}_{p},\bm{G}_{d})\triangleq\frac{1}{2\left\|\bm{G}\right\|\lambda_{\rm max}(\bm{P})}. (43)

Appendix C: Uncertainty Bound

Assuming (34) and the following

𝒇extcf,𝒉dcd,𝒉~tct,\|\bm{f}_{\rm ext}\|\leq c_{f},\quad\|\bm{h}_{d}\|\leq c_{d},\quad\|\tilde{\bm{h}}_{t}\|\leq c_{t},

and choosing ρ\rho such that

ρcf+cd1+α𝚫𝑴~t+ct1+α𝚫𝑴t1+α1+α𝑮𝒛\rho\leq\frac{c_{f}+c_{d}}{1+\alpha}\|\bm{\Delta}\tilde{\bm{M}}_{t}\|+\frac{c_{t}}{1+\alpha}\|\bm{\Delta}\bm{M}_{t}^{-1}\|+\frac{\alpha}{1+\alpha}\|\bm{G}\|\|\bm{z}\| (44)

will satisfy (35).

Appendix D: External Force Estimate

The acceleration term can obtained from (4) as

𝒙¨=𝑴m1(𝒉m+𝒖+𝒇s).\ddot{\bm{x}}=\bm{M}_{m}^{-1}\big{(}-\bm{h}_{m}+\bm{u}+\bm{f}_{s}\big{)}. (45)

Substituting (45) into (2) yields

𝒇ext=𝒉p𝑴p𝑴m1𝒉m+𝑴p𝑴m1𝒖+(𝟏+𝑴p𝑴m1)𝒇s,\bm{f}_{\rm ext}=\bm{h}_{p}-\bm{M}_{p}\bm{M}_{m}^{-1}\bm{h}_{m}+\bm{M}_{p}\bm{M}_{m}^{-1}\bm{u}+\bm{(}\bm{1}+\bm{M}_{p}\bm{M}_{m}^{-1}\big{)}\bm{f}_{s}, (46)

which can be used to compute the external force as a function of force sensor output, 𝒇s\bm{f}_{s}, and the control input, 𝒖\bm{u}, issued by the impedance controller.

References

  • [1] N. Hogan, “Impedance control an approach to manipulation: Part i - theory,” Journal of Dynamic Systems, Measurement, and Control, vol. 107, pp. 1–7, 1985.
  • [2] ——, “Stable execution of contact task using impedance control,” Raleigh, North Carolina, Mar. 31–Apr. 3 1987, pp. 1047–1054.
  • [3] F. Aghili, “Robust impedance control of manipulators carrying heavy payload,” ASME Journal of Dynamic Systems, Measurements, and Control, vol. 132, September 2010.
  • [4] N. Colgate, E.; Hogan, “An analysis of contact instability in terms of passive physical equivalents,” in Robotics and Automation, 1989. Proceedings., 1989 IEEE International Conference on, Scottsdale, AZ, May 1989, pp. 404–409.
  • [5] F. Aghili and M. Namvar, “Adaptive control of manipulators using uncalibrated joint-torque sensing,” IEEE Trans. on Robotics, vol. 22, no. 4, pp. 854–860, Aug. 2006.
  • [6] T. Lasky and T. C. Hsia, “On force-tracking impedance control of robot manipulator,” in IEEE Int. Conf. on Robotcis & Automation, Sacramento, USA, April 1991, pp. 274–280.
  • [7] W.-S. Lu and Q.-H. Meng, “Impedance control with adaptation for robotic manipulators,” IEEE Trans. on Robotics & Automation, vol. 7, no. 2, pp. 408–415, 1991.
  • [8] R. Carelli and R. Kelly, “An adaptive impedance/force controller for robot manipulators,” IEEE Trans. on Automatic Control, vol. 36, no. 8, pp. 967–971, August 1991.
  • [9] S. Lee and H. S. Lee, “Intelligent control of manipulators interfacing with anuncertain environment based on generalized impedance,” in IEEE Symp. Intelligent Control, 1991, pp. 61–66.
  • [10] F. Aghili and M. Namvar, “A robust impedance matching scheme for emulation of robots,” in IEEE/RSJ Int. Conf. on Intelligent Robots and Systems, Sendai, Japan, Sep. 28–Oct. 2 2004, pp. 2142–2148.
  • [11] S. Jung, T. C. Hsia, and R. G. Bonitz, “Force tracking impedance control of robot manipulators under unknown environment,” IEEE Trans. on Control Systems Technology, vol. 12, no. 3, pp. 474–483, May 2004.
  • [12] M. Namvar and F. Aghili, “A combined scheme for identification and robust toque control of hydraulic actuators,” ASME Journal of Dynamic Systems, Measurement, and Control, vol. 125, pp. 595–606, Dec. 2003.
  • [13] O. Khatib, “A unified approach for motion and force control of robot manipulators: The operational space formulation,” vol. RA-3, no. 1, pp. 43–53, 1987.
  • [14] F. Aghili, “A prediction and motion-planning scheme for visually guided robotic capturing of free-floating tumbling objects with uncertain dynamics,” IEEE Transactions on Robotics, vol. 28, no. 3, pp. 634–649, June 2012.
  • [15] X. Cyril, A. K. Misra, M. Ingham, and G. Jaar, “Postcapture dynamics of a spacecraft-manipulator-payload system,” AIAA Journal of Guidance, Control, and Dynamics, vol. 23, no. 1, pp. 95–100, Jan.–Feb. 2000.
  • [16] F. Aghili, “Optimal control of a space manipulator for detumbling of a target satellite,” in IEEE Int. Conference on Robotics & Automation, Kobe, Japan, May 2009, pp. 3019–3024.
  • [17] F. Aghili, M. Kuryllo, G. Okouneva, and C. English, “Fault-tolerant position/attitude estimation of free-floating space objects using a laser range sensor,” IEEE Sensors Journal, vol. 11, no. 1, pp. 176–185, Jan. 2011.
  • [18] F. Aghili and K. Parsa, “Adaptive motion estimation of a tumbling satellite using laser-vision data with unknown noise characteristics,” in 2007 IEEE/RSJ International Conference on Intelligent Robots and Systems, Oct 2007, pp. 839–846.
  • [19] F. Aghili, “Optimal trajectories and robot control for detumbling a non-cooperative satellite,” Journal of Guidance, Control, and Dynamics, vol. 43, no. 5, pp. 981–988, 2020.
  • [20] F. Aghili and K. Parsa, “A reconfigurable robot with lockable cylindrical joints,” IEEE Trans. on Robotics, vol. 25, no. 4, pp. 785–797, August 2009.
  • [21] Liang-Boon Wee and M. W. Walker, “On the dynamics of contact between space robots and configuration control for impact minimization,” IEEE Transactions on Robotics and Automation, vol. 9, no. 5, pp. 581–591, Oct 1993.
  • [22] F. Aghili and C. Y. Su, “Robust relative navigation by integration of icp and adaptive kalman filter using laser scanner and imu,” IEEE/ASME Transactions on Mechatronics, vol. 21, no. 4, pp. 2015–2026, Aug 2016.
  • [23] F. Aghili, “Fault-tolerant and adaptive visual servoing for capturing moving objects,” IEEE/ASME Trans. on Mechatronics, vol. 27, no. 3, pp. 1773–1783, 2022.
  • [24] D. N. Nenchev and K. Yoshida, “Impact analysis and post-impact motion control issues of a free-floating space robot subject to a force impulse,” vol. 15, no. 3, pp. 548–557, 1999.
  • [25] F. Aghili, “Coordination control of free-flying manipulator and its base attitude to capture and detumble a noncooperative satellite,” in IEEE/RSJ International Conference on Intelligent Robots & Systems, St. Louis, USA, October 2009, pp. 2365–2372.
  • [26] F. Aghili and K. Parsa, “An adaptive kalman filter for motion estimation/prediction of a free-falling space object using laser-vision data with uncertain inertial and noise characteristics,” in AIAA Guidance, Navigation and Control Conference, Honolulu, Hawaii, August 2008.
  • [27] F. Aghili, E. Dupuis, J.-C. Piedbœuf, and J. de Carufel, “Hardware-in-the-loop simulations of robots performing contact tasks,” in International Symposium on Artificial Intelligence and Robotics & Automation in Space: i-SAIRAS, M. Perry, Ed.   Noordwijk, The Netherland: ESA Publication Division, 1999, pp. 583–588.
  • [28] F. Aghili, “A unified approach for inverse and direct dynamics of constrained multibody systems based on linear projection operator: Applications to control and simulation,” IEEE Trans. on Robotics, vol. 21, no. 5, pp. 834–849, Oct. 2005.
  • [29] F. Aghili and J.-C. Piedbœuf, “Simulation of motion of constrained multibody systems based on projection operator,” Journal of Multibody System Dynamics, vol. 10, pp. 3–16, 2003.
  • [30] M. Fujita and H. Inoue, “A study on processing of force sensor signals,” in 1 st. Anual Conf. of The Robotics Society of Japan, Tokyo, 1979, pp. 153–160.
  • [31] M. Uchiyama and K. Kitagaki, “Dynamics force sensing for high-speed robot manipulation using kalman filtering techniques,” in IEEE Int. Conf. Decision and Control, Tampa, FL, December 1989, pp. 2147–4152.
  • [32] D. Kubus, T. Kroger, and F. M. Wahl, “On-line rigid object recognition and pose estimation based on inertial parameters,” in IEEE/RSJ Int. Conference on Intelligent Robots and Systems, San Diego, CA, Oct. 29–Nov. 2 2007, pp. 1402–1408.
  • [33] F. Aghili, “Robust impedance-matching of manipulators interacting with unknown environments,” US Patent, 7,688,0167,688,016.
  • [34] D. Kubus, T. Kroger, and F. M. Wahl, “Improving force control performance by computational elimination of non-contact force/torque,” in IEEE International Conference on Robotics & Automation, Pasadena, CA, May 2008, pp. 2617–2622.
  • [35] J. Garcia, A. Robertsson, J. G. Ortega, and R. Johansson, “Generalized contact force estimator for a robot manipulator,” in IEEE Int. Conf. on Robotics & Automation, Orlando, FL, May 2006, pp. 4019–4024.
  • [36] F. Aghili, “Adaptive control of manipulators forming closed kinematic chain with inaccurate kinematic model,” IEEE/ASME Trans. on Mechatronics, vol. 18, no. 5, pp. 1544–1554, October 2013.
  • [37] F. Aghili and J.-C. Piedbœuf, “Contact dynamics emulation for hardware-in-loop simulation of robots interacting with environment,” in IEEE International Conference on Robotics & Automation, Washington, USA, May 11–15 2002, pp. 534–529.
  • [38] F. Aghili, “A robotic testbed for zero-g emulation of spacecraft,” in IEEE/RSJ Int. Conference on Intelligent Robots and Systems, Edmonton, Alberta, Canada, 2005, pp. 1033–1040.
  • [39] F. Aghili, M. Namvar, and G. Vukovich, “Satellite simulator with a hydraulic manipulator,” in IEEE Int. Conference on Robotics & Automation, Orlando, Florida, May 2006, pp. 3886–3892.
  • [40] G. Ferretti, G. Magnani, and P. Rocco, “Impedance control of elastic joints industrial manipulators,” IEEE Trans. on Robotics & Automation, vol. 20, no. 3, pp. 488–498, 2004.
  • [41] S. A. Schneider and R. H. Cannon, “Object impedance control for coopertive manipulators: Theory and experimental results,” IEEE Trans. on Robotics & Automation, vol. 8, no. 3, pp. 383–394, 1992.
  • [42] F. Caccavale, P. Chiacchio, A. Mario, and L. Villani, “Six-DOF impedance control of dual-arm coopertive manipulators,” IEEE/ASME Trans. on Mechatronics, vol. 13, no. 5, pp. 576–586, 2008.
  • [43] Letitmann, “On the efficacy of nonlinear control in uncertain linear systems,” ASME Journal of Dynamics Systems, Measurement, and Control, vol. 103, no. 2, pp. 95–102, 1981.
  • [44] F. Aghili, “Robust impedance-matching of manipulators interacting with uncertain environments: Application to task verification of the space station’s dexterous manipulator,” IEEE/ASME Transactions on Mechatronics, vol. 24, no. 4, pp. 1565–1576, Aug 2019.
  • [45] M. W. Spong and M. Vidyasagar, Robot Dynamics and Control.   New York, NY: Wiley, 1989, pp. 224–236.
  • [46] F. Aghili, M. Buehler, and J. M. Hollerbach, “Dynamics and control of direct-drive robots with positive joint torque feedback,” in IEEE Int. Conf. Robotics and Automation, vol. 11, 1997, pp. 1156–1161.
  • [47] D. Whitney, “Historical perspective and state of the art in robot force control,” in Robotics and Automation. Proceedings. 1985 IEEE International Conference on, St. Louis, MO, Apr. 1985, pp. 262–268.
  • [48] R. C. Bonitz and T. C. Hsia, “Internal force-based impedance control for cooperating manipulators,” Robotics and Automation, IEEE Transactions on, vol. 12, no. 1, pp. 78–89, feb. 1996.
  • [49] F. Aghili and J.-C. Piedboeuf, “Emulation of robots interacting with environment,” IEEE/ASME Trans. on Mechatronics, vol. 11, no. 1, pp. 35–46, Feb. 2006.
  • [50] C. Canudas de Wit, B. Siciliano, and G. Bastin, Eds., Theory of Robot Control.   London, Great Britain: Springer, 1996.
  • [51] Y. Nakamura, Advanced Robotics: Redundancy and Optimization.   Reading, Massachusetts: Addison-Wesley Publishing Company, 1991.
  • [52] F. Aghili and M. Namvar, “Scaling inertia properties of a manipulator payload for 0-g emulation of spacecraft,” The International Journal of Robotics Research, vol. 28, no. 7, pp. 883–894, July 2009.
  • [53] M. W. Spong and M. Vidyasagar, Robot Dynamics and Control.   New York, NY: Wiley, 1989.
  • [54] H. K. Khalil, Nonlinear Systems.   New-York: Macmillan Publishing Company, 1992.
  • [55] W. Eppinger, S.; Seering, “On dynamic models of robot force control,” in Robotics and Automation. Proceedings. 1986 IEEE International Conference on, San Francisco, CA, Apr. 1986, pp. 29–34.
  • [56] H. Kazerooni, “Robust, non-linear impedance control for robot manipulators,” in Robotics and Automation. Proceedings. 1987 IEEE International Conference on, Scottsdale, USA, March 1986, pp. 741–750.
  • [57] D. Lawrence, “Impedance control stability properties in common implementations,” in Robotics and Automation. Proceedings. 1988 IEEE International Conference on, Philadelphia, PA, Apr. 1988, pp. 1185–1190.
  • [58] J. Colgate, “Coupled stability of multiport systems–theory and experiments,” ASME Journal of Dynamic Systems, Measurement, and Control, vol. 116, no. 3, pp. 419–428, Sept. 1994.
  • [59] T. Lamarche, “CSA Automation and Robotics Testbed: Dynamics model,” Canadian Space Agency, Tech. Rep. CSA-ST-CART-2002-002, 2002.
  • [60] DSP Blockset for Use with Simulink, User’s Guide, The MathWorks Inc., 24 Prime Parlway, Natick, MA 011760-1500, 1998.
  • [61] Real-Time Workshop for Use with Simulink, 5th ed., The MathWorks Inc., 3 Apple Hill Drive, Natick, MA 011760-2098, 2002.