694
IEEE/ASME TRANSACTIONS ON MECHATRONICS, VOL. 21, NO. 2, APRIL 2016
Dynamics and Control of an Anthropomorphic Compliant Arm Equipped With Friction Clutches Navvab Kashiri, Matteo Laffranchi, Darwin G. Caldwell, and Nikos G. Tsagarakis
Abstract—Robots powered by intrinsic compliant actuation systems have been developed in the past years to provide improved mechanical robustness and physical interaction performance. Despite these benefits, the incorporation of passive elasticity in the actuation system can however generate unwanted oscillations complicating the control of these systems. An approach to address this issue proposes the addition of physical damping in the transmission system of the compliant joints. A particular embodiment of this physical damping can be based on clutch mechanisms integrated in parallel to the physical elasticity. This paper studies a class of variable impedance robotic arms driven by compliant actuation systems equipped with a clutch mechanism in parallel to the passive compliant transmission element. The dynamics of these systems is derived and a novel control scheme extracted from the dynamic model of the robot is proposed. The control scheme modulates the friction torque applied by the clutch to effectively operate the robot arm at a stiff mode with high precision or disengage the clutch when physical interactions occur and detected through a sensor-less scheme. Extended simulation and experimental results are presented to demonstrate the performance of the proposed controller. Index Terms—Clutch dynamics, compliant arm, friction control, passive compliance, variable impedance actuator.
I. INTRODUCTION HE deployment of robots in different application domains beyond the traditional industrial sectors has attracted the attention of the robotics community. Although the use of active impedance/compliance control strategies can improve the interaction-related characteristics of the system [1]–[4], classical industrial robots, driven by stiff actuators with high reduction transmission units, have been proven rather inappropriate to address the new demands for safety, enhanced physical interaction, and robust operation in these new applications. The reason is that the output mechanical impedance of the robots is typically very high due to the large reflected inertia of the drives and the rigidity of transmission elements. The performance of these robots is therefore limited in terms of safety, mechanical robustness, and flexibility during interactions with external agents and objects [5]–[8].
T
Manuscript received December 30, 2014; revised July 20, 2015; accepted September 19, 2015. Date of publication November 2, 2015; date of current version February 24, 2016. Recommended by Technical Editor J. C. Koo. This work was supported by the European Commission project SAPHARI FP7-ICT-287513. The authors are with the Department of Advanced Robotics, Istituto Italiano di Technologia, Genoa 16163, Italy (e-mail:
[email protected];
[email protected];
[email protected];
[email protected]). Color versions of one or more of the figures in this paper are available online at http://ieeexplore.ieee.org. Digital Object Identifier 10.1109/TMECH.2015.2497200
The incorporation of passive elasticity in traditional actuators was proposed [6] to reduce the output impedance, increase robustness by protecting the drives from impact forces, and enhance the performance of the robot during physical interactions [7], [8], as well as permit the recycling of energy [9]–[11]. The performance of the robot can be enhanced by using various control schemes presented in several studies [12]–[15]. Nevertheless, oscillations due to under-damped dynamics deteriorate the tracking accuracy of compliant systems and reduce the stability margins of their controllers. These vibrations can be suppressed using active damping control, which however demands high control efforts, while this active dissipative operation is also limited by the bandwidth of the feedback loop, typical phase lag problems and noises on the velocity feedback [16]. Variable impedance actuators (VIAs) have been introduced [17] to address these issues with most of the VIAs developed being in practice variable stiffness actuators [18]–[21]. Recent efforts attempt to also incorporate variable dissipation elements to modulate the damping of the compliant transmission. The dissipative operation of these systems can be achieved using electrical inductance effects [22], viscous damping [23], magnetorheological brakes [24], or friction dampers/clutches [25]. Another type of VIAs relies upon the use of a clutch mechanism instead of elastic element in series with the motor [26]–[29] to regulate the impedance through modulation of the clutch. The stiffness/damping control of variable impedance systems have therefore been studied in some studies [30]–[34]. This study focuses on a class of manipulators powered by actuators which incorporate a friction clutch/damper in parallel to the passive elastic element placed in series with the motor [35]–[37]. The proposed control method can be also applied to systems that have only the friction clutch/damper in their transmission systems without the intrinsic elasticity [26]–[29]. The derivation of dynamics of a system is essential for the design of control schemes with both forward and inverse dynamics of different types of manipulators, including compliant ones [38]– [40], being studied in the past. However, manipulators equipped with friction clutches are relatively new and the dynamics of such systems have been rarely studied. The presence of friction clutch adds complexities to the dynamics when the relative velocity of clutch plates approaches to zero. The employment of dynamic friction models such as LuGre model [41] that captures the Stribeck effect and includes stick-slip motion, can resolve the modeling problem for simulating the dynamics of the system. However, in order to be able to discriminate between the dynamics of the system during the stick and slip motion phases, and therefore, to extract a control law activating any of the two phases arbitrarily,
1083-4435 © 2015 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission. See http://www.ieee.org/publications standards/publications/rights/index.html for more information.
KASHIRI et al.: DYNAMICS AND CONTROL OF AN ANTHROPOMORPHIC COMPLIANT ARM EQUIPPED WITH FRICTION CLUTCHES
it is essential to realize the system in a way that the system dynamics in these two phases are expressed in an explicit distinct way. A friction model based on the dynamics of the system, that gives physical interpretation about the relationship between clutch normal force and its generated torque, is therefore needed and proposed in this study. The first contribution of this study is the derivation of the dynamic model (forward and inverse) of the single actuation system and its consequently extension to multi degree of freedom (DOF) systems. The generated model is verified by comparing the simulation results of the developed model with that of the LuGre model. A further contribution of this paper is the development of a control scheme which employs the friction clutches in a way that the tracking performance of the system is considerably improved (in the experiment presented in this study, the tracking error decreases by about 80% when the clutch is exploited), while the robot can also detect and respond to physical interactions. Specifically, there are a few studies defining the suitable level of normal force needs to be applied on the clutch. A method specifying the clutch force based on limiting the external force is presented in [28], in which the effects of system dynamics were not taken into account, and the validity of this approach is therefore limited to static conditions. In this study, to improve and ensure the tracking performance of the robot during dynamic motions, the clutch normal force control law is generated based on the dynamics of the system. Simulation and experimental results demonstrates the high tracking performance achieved while remaining sensitive to external forces/torques during interactions. Moreover, a physical interaction detection method is proposed based on the monitoring of the angular deflection of the elastic transmission [42]. The proposed method attempts to overcome the deficiencies of schemes that have been developed in the past and mostly based on the comparison between the actual motor torques and the reference motor torques obtained from the dynamics of the robot [43], [44]. In these approaches, the use of acceleration represents a significant drawback. To overcome this issue and to reduce the difficulty of tuning the collision detection thresholds, a scheme proposed in [45], [46] considers collisions as faulty behaviors of actuators based on the estimation of generalized momentum. The combination of this method with time-variant thresholds was introduced in [47] to enhance the collision detection accuracy. The extension of this method for compliant manipulators was presented in [48], however the presence of friction in the transmission has been rarely studied in the literature before. The proposed contact detection method control aims at locking the transmissions of joints when the robot moves in free space, while they get intrinsically unlocked as soon as an external force/torque is applied to the robot. The normal force of the clutch is regulated based on the modulation of generated friction torque considering the arm dynamics in such a way that this torque is exactly the required one for maintaining the transmission locked during motion or under a certain level of interaction force/torque. The total static force that can be applied to the robot before unlocking the transmission clutches can be therefore effectively limited to a specified level which can be tuned according to the task requirements. Any violation of the force
Fig. 1.
695
Schematic model of a compliant joint equipped with a clutch.
higher than the defined threshold will unlock the clutches in the joints transforming the robot from a rigid system to a compliant robot. The paper is structured as follows: the dynamics of the single actuator is presented in Section II whereas Section III addressed the dynamics of a multiDOF manipulator. The control scheme is described in Section IV. The studied case, i.e., CompAct arm is discussed in Section V while the simulation and experimental results are presented in Section VI. Finally the conclusion is discusses in Section VII. II. MODELING OF THE ACTUATION SYSTEM
A. Forward Dynamics of a Single Actuator The schematic model of the ith compliant joint of a manipulator arm is presented in Fig. 1. In addition to the intrinsic elasticity, the joint incorporates viscous and dry friction elements in parallel to elastic element. The dynamic model of this system can be presented by the following set of equations: Mi q¨i + Dl,i q˙i + τk ,i (φi ) + τd,i (φ˙ i ) = τe,i
(1)
Bi θ¨i + Dm ,i θ˙i − τk ,i (φi ) − τd,i (φ˙ i ) = τm ,i
(2)
where qi and θi represent the generalized link and motor position of ith joint, respectively; Mi and Bi depict the corresponding moment of inertia of the link and rotor; Dm ,i and Dl,i are the viscous damping at the motor and link side of the unit; τk ,i and τd,i denote the elasticity and dissipation transmission torques; φi = qi − θi is the relative displacement of transmission sides, τm ,i is the torque provided by the motor, and τe,i is the external torque exerted to the link. It should be noted that the moment of inertia and vicious damping at the motor side are those reflected by reduction transmission system with ratio of Ni . The elasticity torque of transmission systems possessing a linear rotational spring can be obtained by τk ,i (φi ) = Kt,i φi
(3)
where Kt,i is the linear transmission stiffness constant. The compliant rotational mechanism considered in this study is based on six linear axial springs acting on the sides of three spokes [49]. The elasticity torque generated by this mechanism is derived from 2 rs,i 2 sin(2φi ) (4) τk ,i (φi ) = 3ka,i rl,i + 3 where ka,i is the stiffness of the axial springs of ith joint, rl,i is the effective length of spokes and rs,i is the external radius of axial springs. The dissipation torque of the transmission clutch is modeled in two different ways.
696
IEEE/ASME TRANSACTIONS ON MECHATRONICS, VOL. 21, NO. 2, APRIL 2016
1) Conventional Friction Model: The LuGre model [41] which is capable of capturing the Stribeck effect, and therefore, describing stick-slip motion, is presented here. According to the LuGre model, the dissipation torque can be obtained as follows: τd,i (φ˙ i ) = σk ,i ui + σd,i u˙ i + Dt,i φ˙ i
(5)
where Dt,i is the viscous damping coefficient of the ith joint’s transmission, σk ,i and σd,i show the corresponding stiffness and damping of the bristles on contact surfaces of the clutch, respectively, and ui denotes the average deflection of bristles. We express the dynamics of the bristles’ deflection in a parameterized form by |φ˙ i | ui u˙ i = φ˙ i − σk ,i ψ(φ˙ i )
(6)
˙ ψi (φ˙ i , Fn ,i ) = Fn ,i Ri (μc,i + (μs,i − μc,i )e−|φ i /ω s , i | ) (7)
where μc,i and μs,i are the Coulomb and Stiction friction coefficients of ith unit, respectively; ωs,i is the corresponding Stribeck relative velocity, Fn ,i is the force pressing friction surfaces of the clutch together, i.e., clutch normal force; and Ri is the geometrical constant factor depending on the shape and size of friction interface. This parameter can be obtained from the following equation for circular shape interfaces: Ri =
a3i − b3i a2i − b2i
(8)
where ai and bi are the diameters of outer and inner rings of ith unit, respectively. 2) Proposed Friction Model: To distinguish between the dynamics of the system in stick and slip motion phases, an alternative model is proposed here. The proposed switching friction model is based on the dynamics of the system, and allows the derivation of clutch normal force values resulting in any of the stick or slip motion phases on demand, using an algebraic equation. Two different operating modes are considered: one for the clutch locked and another for the clutch unlocked (slipping) [50]. When there is a slippage between the plates of the clutch and the friction surfaces of the joint have relative motion with respect to each other, i.e., unlocked, the torque applied by the clutch τdU,i can be modeled as τdU,i = ψi (φ˙ i , Fn ,i )sgn(φ˙ i ) + Dt,i φ˙ i
(9)
where sgn(.) denotes the signum function. In the case of no relative motion between the clutches plates, the clutch is locked and the actuation unit performs similar to a stiff actuator. The dynamic equations of this system (1) and (2) can therefore be simplified to (Mi + Bi )¨ qi + (Dl,i + Dm ,i )q˙i = τe,i + τm ,i .
(10)
Under this locked state, the transmitted torque is the resultant torque applied on the friction surfaces of the clutch. Since the velocity and acceleration of the link and motor are equal in this operating mode, this torque τdL ,i is derived by solving (1) and
(2) such as τdL ,i = − τk ,i (φi ) +
Bi τe,i − Mi τm ,i + (Mi Dm ,i − Bi Dl,i )q˙i . (11) Bi + Mi
The clutch friction torque can then be obtained by comparing the stiction torque level with the resultant torque acting on clutch plates at zero transmission velocity, i.e., τdL ,i . Considering a velocity tolerance due to inaccuracies in the computational operations and/or measurements, the dissipation torque can be described by τdL ,i ⇔ |τdL ,i | ≤ τdS,i ∧ |φ˙ i | ≤ ωtol,i (12) τd,i = τdU,i ⇔ |τdL ,i | > τdS,i ∨ |φ˙ i | > ωtol,i in which the velocity tolerance ωtol,i is an arbitrarily small and positive value that takes into account aforementioned inaccuracies, while it shall be set to zero in theory; and τdS,i shows the stiction friction torque level expressed by τdS,i = Fn ,i Ri μs,i .
(13)
B. Inverse Dynamics of a Single Actuator To find the torques needed for tracking a given trajectory, the dynamic equations of the link side (1) should be reformulated to derive the motor positions from the desired link positions. In case there are dissipative terms, this is achieved through integrating motor velocity [40]. However, due to the presence of motor velocity in a nonlinear term, i.e., friction, it cannot be derived from (1) directly. Given a desired link trajectory qi = qd,i , the link-side dynamic equation in unlocked mode can be reformulated by substituting (7) and (9) into (1) as follows: Mi q¨d,i + Dl,i q˙d,i + τk ,i (φd,i ) + Dt,i φ˙ d,i ˙ + Fn ,i Ri (μc,i + (μs,i − μc,i )e−|φ d , i /ω s , i | )sgn(φ˙ d,i ) = τe,i (14)
where φd,i = qd,i − θd,i represents the desired transmission displacement. By rearranging (14) for the desired transmission velocity φ˙ d,i , can be expressed as follows: ˙ φ˙ d,i + (αi + βi e−|φ d , i /ω s , i | )sgn(φ˙ d,i ) = γi
(15)
with αi = Fn ,i Ri μc,i /Dt,i ,
(16)
βi = Fn ,i Ri (μs,i − μc,i )/Dt,i ,
(17)
γi = (τe,i − τk ,i (φd,i ) − M q¨d,i − Dl,i q˙d )/Dt,i .
(18)
To solve the algebraic equation (15), it is necessary to resolve the signum function and solve this equation in two different conditions: when the transmission velocity is positive and when it is negative. The solution of (15) for φ˙ d,i > 0, φ˙ + d,i , exists provided that the following condition is respected: ωs,i αi − γi ωs,i ln . (19) βi e
KASHIRI et al.: DYNAMICS AND CONTROL OF AN ANTHROPOMORPHIC COMPLIANT ARM EQUIPPED WITH FRICTION CLUTCHES
When (19) holds, and the sgn term is resolved (by assuming ˙− positive or negative value for φ˙ d,i , i.e., φ˙ + d,i and φd,i ), (15) becomes an algebraic equation for the variable φ˙ d,i . The unique solution of the algebraic equation, that is composed of a linear and an exponential term, is obtained using the Lambert W function. It can thus be expressed by βi αωi s−γ, i i = γ − α + ω W − e (20) φ˙ + i i s,i d,i ωs,i where W (.) is the Lambert W function defined by ϑ = W (ϑ)eW (ϑ) . The output of this function can be computed by means of various methods in order of tenth of nanoseconds [51]. The solution of (15) for φ˙ d,i < 0, φ˙ − d,i , can be similarly presented by βi αωi s+, γi i = γ + α − ω W − e (21) φ˙ − i i s,i d,i ωs,i which exists if
αi + γi ωs,i ln
ωs,i βi e
.
(22)
Fig. 2. Schematic of a manipulator powered by compliant actuators equipped with clutches.
Exploiting the desired transmission displacement and motor position, θd,i = qd,i − φd,i , the motor torque required for tracking a desired trajectory τm d,i can be computed from (2) as follows: qd,i − φ¨d,i ) + Dm ,i (q˙d,i − φ˙ d,i ) τm d,i = Bi (¨ −τk ,i (φd,i ) − Dt,i γi .
(30)
III. MODELING OF THE ARM
A. Forward Dynamics of the Arm
When (15) does not have any solution based on positive or negative transmission velocity assumptions, the clutch is locked, i.e., φ˙ d,i = 0. The transmission velocity can therefore be derived from ⎧ + Ωi+ γi ⇐ ρi γi ⎪ φ˙ d,i ⇔ ⎪ ⎨ ⇔ Ωi− γi Ωi+ ∨ |γi | < ρi φ˙ d,i = 0 ⎪ ⎪ ⎩ ˙− γi Ωi− ⇐ γi −ρi φd,i ⇔ (23) with βi αωi s−γ, i i e Ωi+ = αi − ωs,i · W − , (24) ωs,i βi αωi s+, γi i − e (25) − αi , Ωi = ωs,i · W − ωs,i ωs,i ρi = αi − ωs,i · ln . (26) βi e Having computed the transmission velocity φ˙ d,i , the acceleration φ¨d,i can be obtained from ⎧ γ˙ i ⎪ ⎨ ⇔ φ˙ d,i = 0 β i −|φ˙ i /ω s , i | ¨ 1 − ωs , i e φd,i = (27) ⎪ ⎩ ˙ 0 ⇔ φd,i = 0 with ... dτk ,i (φd,i ) − M q d,i − Dl,i q¨d,i )/Dt,i . dφd,i (28) The corresponding friction torque can then be computed from (1) for both the locked or unlocked mode, although it can be also obtained from (9) when the joint is unlocked, i.e., φ˙ d,i = 0. However, the resulting dissipation torque τd,i can be always described by γ˙ i = (τ˙e,i − φ˙ d,i
τd,i = Dt,i γi .
697
(29)
Given an n−DOF serial manipulator, shown in Fig. 2, powered by the compliant actuated joints of Fig. 1, the dynamic equations of the system can be expressed by [38] ˙ + τ k (φ) = τ e , ˙ + g(q) + τ d (φ) M(q)¨ q + Dl q˙ + c(q, q) (31) ¨ + Dm θ˙ − τ d (φ) ˙ − τ k (φ) = τ m Bθ
(32)
where q = [q1 , . . . , qn ]T and θ = [θ1 , . . . , θn ]T show the vectors of the generalized link and motor positions, respectively; M ∈ n ×n and B = diag(B1 , . . . , Bn ) are the inertia matrices of the link and motor sides; Dl ∈ n ×n and Dm = diag(Dm ,1 , . . . , Dm ,n ) present the damping matrix associated with the link and motor sides; g ∈ n and c ∈ n denote the vectors of gravity terms and Coriolis/centrifugal terms of the link; τ e = [τe,1 , . . . , τe,n ]T and τ m = [τm ,1 , . . . , τm ,n ]T are the vectors of torques generated by external objects/agents and motors; τ k = [τk ,1 , . . . , τk ,n ]T and τ d = [τd,1 , . . . , τd,n ]T are the vectors of transmission elastic and dissipation torques; and φ = [φ1 , . . . , φn ]T is the vector of transmission displacements. The elements of the elastic torque vector can be calculated from (3) or any equivalent relation, e.g., (4) in our case, and those of dissipation torque vector can be obtained either from the conventional LuGre model (5) or using the proposed model (12). However, in the proposed model, the dissipation torque in locked mode cannot be computed from (11) as it was derived based on the dynamics of a single joint. To find the dissipation torque corresponding to the locked joints of the arm, the whole dynamics of the arm need to be considered. By extracting the angular acceleration vector of links and motors from the dynamic equations of the arm (31) and (32), it can be written that ˙ = P (q, θ, q, ˙ ¨ + Hτ d (φ) ˙ θ) ¨−θ q
(33)
where H = (M−1 + B−1 ) and the auxiliary vector P ∈ n , ¨ excluding the that describes the transmission acceleration φ
698
IEEE/ASME TRANSACTIONS ON MECHATRONICS, VOL. 21, NO. 2, APRIL 2016
effects of the friction clutches, is defined by −1
˙ − g(q)) P = M (τ e − Dl q˙ − c(q, q) + B−1 (Dm θ˙ − τ m ) − Hτ k (φ).
(34)
Considering ln joints are locked, q˙i = θ˙i for i = l1 , . . . , ln , and un joints are unlocked, q˙i = θ˙i for i = u1 , . . . , un , where ln + un = n; the rows of (33) associated with locked joints can be written as follows:
Hi,j τdL ,j + Hi,j τdU,j = Pi (35) j =u 1 ,..,u n
j =l 1 ,..,l n
where Hi,j is the element of the ith row and jth column of H. By rewriting (35) in a matrix form, the friction torques of locked joints are derived from H−1 L (ϕ
τ dL =
− HU τ dU )
(36)
where I is the n-dimensional identity matrix. The invertibility of (I + MB−1 ) is guaranteed as B and M are positive definite matrices, thereby MB−1 and its summation with any positive definite matrix are also positive definite.
B. Inverse Dynamics of the Arm The inverse dynamics problem of the arm can also be carried out similarly as the case of a single joint. For a given vector of the desired link positions q = q d , the ith row of the link-side dynamic equation of the arm (31) can be written in the form of (15) while γi is the ith element of the vector γ = [γ1 , . . . , γn ]T defined by qd γ = D−1 t (τ e − τ k (φ) − M(qd )¨ − Dl q˙ d − c(qd , q˙ d ) − g(qd )) and its derivative γ˙ is derived from
T
where τ dL = [τdL ,l 1 , . . . , τdL ,l n ] is the vector of friction torque of locked joints, τ dU = [τdU,u 1 , . . . , τdU,u n ]T is the vector of friction torques related to unlocked joints which can be obtained from (9), ϕ = [Pl 1 , . . . , Pl n ] is an auxiliary vector, and the matrices HL and HU are defined by ⎡ ⎤ Hl 1 ,l 1 . . . Hl 1 ,l n ⎢ ⎥ ⎢ .. ⎥ ∈ l n ×l n .. HL = ⎢ ... (37) . . ⎥ ⎣ ⎦ ⎡
Hl n ,l 1
...
Hl 1 ,u 1
...
Hl 1 ,u n
..
.. .
⎢ ⎢ HU = ⎢ ... ⎣ Hl n ,u 1
.
...
Hl n ,l n
⎤ ⎥ ⎥ ⎥ ∈ l n ×u n . ⎦
(38)
Hl n ,u n
The invertibility of H is guaranteed as it is the summation of the inverse of two positive-definite matrices. HL is therefore invertible since it is a square sub-matrix of this positive-definite matrix, i.e., H. The clutch friction torque of the individual joints can be then obtained similarly to the case of a single joint. Considering a velocity tolerance for each joint, the clutch friction torque of joints with very small transmission velocity, i.e., |φ˙ i | ≤ ωtol,i , is derived by comparing the torque transmitted by the clutch (11) with the stiction level (13), while that of those joints with high transmission velocity is computed from (9). For a special condition in which all joints are locked, i.e., ln = n, the friction torque vector (36) is simplified to1 ˙ τ m ) − τ k (φ) τ ∗dL = Oτ e − h(q, q,
(39)
in which the vector h and matrix O are specified by ˙ ˙ τ m ) = O(MB−1 (τ m − Dm q) h(q, q, ˙ + g(q) + Dl q), ˙ +c(q, q) O = (I + MB−1 )−1
(40) (41)
1 Since this equation will be employed in the control scheme, due to the practical limitation of computational burden, the number of the inversion of non-diagonal matrices is attempted to be as low as possible.
(42)
γ˙ = D−1 t (τ˙ e −
∂τ k (φ) ˙ dM(qd ) ∂c(qd , q˙ d ) + + Dl )¨ qd φ−( ∂φ dt ∂ q˙ d
... ∂c(qd , q˙ d ) ∂g(qd ) − M(qd ) q d − ( + )q˙ d ). ∂qd ∂qd
(43)
The deflection velocity can be therefore obtained from (23)– (26) by deriving αi and βi from (16) and (17), and γi from (42). Moreover, the deflection acceleration extracted from (27) when γ˙ i is calculated from (43). Subsequently, the clutch friction torque and required motor torque of individual joints are obtained from (29) and (30), respectively. IV. CONTROL A generic scenario is considered in this study in which the robot executes a tracking task until it gets in contact with the environment. The proposed control scheme pursues the employment of the transmission clutches of the arm to modulate the flexibility/rigidity of joints by adjusting the friction force applied by the clutch in such a way that the robot tracks a given desired path accurately in the absence of physical interaction while the robot benefits from the inherent compliance of joints when starts interacting with the environment. Three operating modes can be defined for the robot depending on the level of normal force applied on clutches. These three modes are: a) Rigid mode: Clutches are fully engaged and clutch normal forces are sufficiently high to lock them. Driving units then act as rigid actuators. b) Compliant mode: Clutches are completely disengaged and actuation units acts as series elastic actuators, Fn ,i = 0 for i = 1, . . . , n. c) Slip mode: Clutches are partially engaged (not fully locked) with normal forces up to a level which is lower than the level required to completely lock the clutch. The rigid mode can be exploited to achieve accurate tracking performance in contact-free motion, while the compliant mode can be employed to attain a robust physical interaction when the robot is in contact with environment. Moreover, to ensure safe human–robot interaction, the maximum static force that can be exerted by the robot must be controlled. This should have the
KASHIRI et al.: DYNAMICS AND CONTROL OF AN ANTHROPOMORPHIC COMPLIANT ARM EQUIPPED WITH FRICTION CLUTCHES
699
highest priority when the robot operates in rigid mode as the high torque transmissibility of the driving units in this mode increases the interaction force quickly [52] whereas the employment of compliant mode lowers the torque transmissibility and facilitates the interaction control [53]. This condition is stated by f e ≤ fm ax
(44)
where fm ax is maximum allowed external force, f e ∈ k denotes the vector of external forces applied to end-effector center point (ECP) of the robot with k presenting the dimension of the ECP’s workspace. (. symbolizes the second norm.) To make the robot operate in rigid mode, the clutch force needs to be modulated based on the dynamics of the robot while the compliant mode is simply employed by applying zero clutch normal force. Considering the dynamic model presented in Section II, the transmission clutch of a joint is locked provided that the transmitted torque τdL ,i is not higher than the stiction torque τdS,i , otherwise it is unlocked. The robot can then operate in rigid mode through modulating the clutch normal forces in a way that |τ dS | ≥ |τ ∗dL |
(45)
T
where τ dS = [τdS,1 , . . . , τdS,n ] (|.| denotes the absolute value operator functioning on the vector elements). Using the equally condition of (45) the minimum level of force required for the operation of robot in rigid mode can be obtained with the robot working in this mode if the counteracting torques applied to joints τ e are not higher than those considered in the computation of transmitted torque τ ∗dL . The minimum amount of clutch force required for exploiting rigid mode, F R n , can be found as follows: −1 −1 ˙ τ m ) + τ k (φ)| + |Oτ ∗e |) FR n = μs R (|h(q, q,
(46)
where μs = diag(μs,1 , . . . , μs,n ) and R = diag(R1 , . . . , Rn ) are the diagonal matrices of the stiction friction coefficients and geometrical constant factors of the clutches’ plates, respectively; and Fn = [Fn ,1 , . . . , Fn ,n ]T is the vector of clutch normal forces. Setting a zero value to the external torque threshold τ ∗e for the reference force (46), F Zn = F R n τ ∗e =0 allows the immediate detection of the interaction with the environment through the monitoring of the deflection of the passive elasticity in the joints. This deflection is constant when no external torque is applied to the robot while it varies when the robot is subject to external torques. The interaction detection block can be described by 1 ⇔ max(|φ − φ0 |) > φres (47) Υ= 0 ⇔ max(|φ − φ0 |) ≤ φres where Υ is the variable defining whether there is any interaction, i.e., Υ = 1, or not, i.e., Υ = 0. φres is the tolerance defined by the resolution in the measurement of the transmission displacement to avoid interpreting the quantization noise as switching of the interaction state. Finally, φ0 is the initial transmission displacement measured at the first moment when all clutches are locked, i.e., rigid mode.
Fig. 3. Time history of (a) external torque (-+-) and transmission displacement (·−♦−·) (b) generated (−♦−) and required Stiction torque for locking the clutch (·−+−·); (· · · ·) shows the time the interaction starts, and (· · · ·) is the moment the external torque threshold is reached.
In case it is suitable to make the robot interact with environment with high tracking accuracy, e.g., a writing task, the clutch force must be modulated to make the robot work in rigid mode while (44) is respected. For such a predefined interaction, the external torque threshold can be simply obtained from the relationship between the external torque of joints and the force at the ECP as follows: τ ∗e = J(q)T sf fm ax
(48)
where sf represents the given contact force orientation and J ∈ k ×n denotes the kinematic Jacobian matrix. Consider an example case in which a single actuator executes a tracking task in a quasi-static motion and it starts interacting with environment since a time instance and after. Fig. 3 presents the change in stiction torque required to keep the robot working in rigid mode, the generated stiction torque based on a maxi∗ , the external torque and the mum external torque threshold τe,i transmission displacement versus time. It can be seen that the generated stiction torque can maintain the clutch locked as far as the external torque generated due to contact is below the threshold, while any torque higher than this value will unlock the clutch switching to the slip mode. Similarly when the full arm works under the rigid mode based on a given set of admissible external torques, it can intrinsically switch to slip mode when the counteracting torques generated due to interaction are higher than the maximum level. Applying the clutch force reference (46) based on the external torque threshold (48), the violation of contact force condition (44) can be detected by monitoring the slippage of the clutch transmission in one/or more joints. Following the contact trigger, the arm can then switch to compliant mode by disengaging the clutch to benefit from the intrinsic elasticity in terms of impact forces and contact vibration. However, when a clutch is disengaged, the gravity load and/or external forces can deflect the joint spring and the motor needs to counterbalance this deflection to correct the link position. A quick disengagement of the clutch can then impose an impulse torque on the motor to compensate this rapid variation in transmission impedance. To avoid this, the transition stage should be executed using a continuous and smooth switching strategy. When the robot is in slip mode during the transition from rigid mode to compliant mode, and given that the maximum admissible external force is
700
IEEE/ASME TRANSACTIONS ON MECHATRONICS, VOL. 21, NO. 2, APRIL 2016
applied, equation (31) can be rewritten as ˙ τ ∗e = g(q) + τ k (φ) + τ dU (φ).
(49)
The clutch force required for respecting this condition (49), FSn , can then be obtained by ˙ −1 (τ ∗ − g(q) − τ k (φ) − Dt φ) ˙ FSn = A(φ) e
(50)
˙ ∈ n ×n is a diagwhere Dt = diag(Dt,1 , . . . , Dt,n ) and A(φ) onal matrix with elements of ˙
˙ = Ri (μc,i + (μs,i − μc,i )e−|φ i /ω s , i | )sgn(φ˙ i ). Ai,i (φ) (51) However, the exertion of an external force does not necessarily result in the slippage of all clutches, and some of them may not slip, or may slip slightly. In this case, the clutch force reference is set according to (46) based on the external torque threshold (48). The clutch force reference can be then defined by ⎧ Z Fn ,i ⇔ Υ = 0 ⎪ ⎪ ⎨ (52) Fn d,i = FnR,i ⇔ Υ = 1 ∧ |φ˙ i | ≤ ωtol ⎪ ⎪ ⎩ C Fn ,i ⇔ Υ = 1 ∧ |φ˙ i | > ωtol where FnC,i = max(FnS,i , 0). The contact force can be semiactively controlled by exploiting (50) as far as all elements of FSn are greater than zero. However, in case one of elements of this vector reaches to zero, the employment of an active force control is required. When the external force reaches the admissible threshold, three reaction strategies are considered: (Prior to contact the robot is operating in free space and under the rigid mode control, i.e., clutches are engaged. i) Stop strategy: The robot stops tracking the reference trajectory. This can be achieved by stopping the update of the desired motor position θ d or by merely compensating the effect of gravity torques through a torque controller [54]. This strategy can suit for cases in which the interaction of robot with environment is not intentional. ii) Resume strategy: The robot remains in rigid mode and suspends executing the task, i.e., stop strategy, until the external force is decreased to below the force threshold. It then resumes executing the task in rigid mode. This strategy can be suitable when the precise interaction of robot with an external object/agent is required within a certain interaction force levels that can be fully defined prior to task execution. iii) Continue strategy: The robot switches to compliant mode (clutches are disengaged) and keeps tracking the desired end-effector path in contact-free directions while the contact force is limited up to a certain defined level using an active control scheme. This strategy can be employed when the robot is aimed to interact with environment in compliant mode within certain interaction force bounds.
Fig. 4. Robot arm employed for the evaluation of the controller (a) real hardware (b) schematics and reference frames.
TABLE I DH PARAMETERS OF THE ARM PRESENTED IN FIG. 4 i
link twist
link length
link offset
joint angle
HP
1 2 3 4
π /2 π /2 π /2 0
0 0 0.096 m 0.459 m
0.262 m 0 0.430 m 0
q1 q2 q3 q4
− π /2 − π /2 − π /2 − π /2
0 0 0 π /2
TABLE II SPECIFICATIONS OF ACTUATION UNITS (i = 1,..., 4) Parameter description
symbol
Value
Gear ratio Reflected motor inertia Reflected motor damping Link damping Transmission viscous damping Stiffness of friction surfaces Damping of friction surfaces Outer diameter of friction ring Inner diameter of friction ring Stribeck velocity Coulomb friction coefficient Stribeck friction coefficient Effective length of spokes External radius of axial springs Stiffness of axial springs, i = 1, 2 Stiffness of axial springs, i = 3, 4
Ni Bi Dm ,i Dl,i Dt ,i σk , i σd , i ai bi ωs , i μc , i μs , i rl , i rs , i ka , i ka , i
100 0.15 kg.m2 0.20 N · m .s/rad 0 N · m · s/rad 0.5644 N · m · s/rad 5 × 10 5 N · m /rad 50 N · m · s/rad 93 × 10 −3 m 66 × 10 −3 m 0.0028 rad/s 0.4037 0.4520 20.5 × 10 −3 m 6.3 × 10 −3 m 70 × 10 3 N/m 40 × 10 3 N/m
V. CASE STUDY The proposed controller was evaluated on the robot arm introduced in Fig. 4(a). The actuators of the 4-DOF arm use a friction clutch in parallel to the elastic element, Fig. 1. The kinematic parameters of the arm which are defined based on the Denavit–Hartenberg (DH) notation in [55], as well as the homing position (HP) of joints, are presented in Table I. The corresponding frameworks are also demonstrated in Fig. 4(b). The specifications of arm joints are reported in Table II while more details about the arm design and its dynamic model parameters can be found in [35], [56].
KASHIRI et al.: DYNAMICS AND CONTROL OF AN ANTHROPOMORPHIC COMPLIANT ARM EQUIPPED WITH FRICTION CLUTCHES
701
VI. SIMULATION AND EXPERIMENTAL RESULTS
A. Validation of Proposed Dynamic Model
Fig. 5. Bode diagram of the closed-loop control scheme in a single actuator when the system operates in the compliant mode (− − −), the rigid mode (—), and the rigid mode with a force limit of 400 N (− · −).
The robot arm employs two lower-level controllers (motor position and clutch force controllers) running on custom-made DSP driver boards which acquire the system states at the rate of 1 kHz. The clutch force is measured by means of a custommade load cell based on strain gauges, and is controlled through a dynamic compensation scheme, based on time-delay estimation method [57], [58], to achieve robust and accurate tracking performance. The higher-level control scheme includes the interaction detection block (47), the clutch force reference generator (52), and the desired motor position trajectory generator. These are implemented on a PC104 machine using a hard real-time version of Linux (Xenomai). The communication with data acquisition boards are also executed at 1 kHz. The transmission displacement is measured by a 12-bit absolute magnetic encoder that sets the tolerance of interaction detection block to φres = 1.534 × 10−3 rad. Since the end-effector position of the robot (i.e., the ECP position) X = [X, Y, Z]T is given by the user, the desired link position q d is obtained from the desired trajectory of the ECP X d , using an inverse kinematics approach while resolving the kinematic redundancy to respect joints’ limits and minimize joint velocities. This can be achieved through defining a potential function as the secondary manipulation variable [59] that promotes solutions at the middle of the range of motion of each joint. To compute the higher derivatives of desired link positions, the relation proposed in [60] is used for computing the derivatives of pseudo-inverse matrix. The motor position is then generated by θ R d = q d − φ0 when the robot operates in rigid mode, while it is set according to the off-line −1 gravity compensation scheme [40], θ C d = q d + Kt g(q d ), under compliant mode. Fig. 5 illustrates the bode plot corresponding to the closed-loop position-controlled elbow joint when the system operates in compliant mode, full rigid mode and rigid mode with a force limit of 400 N. It can be seen that under the complaint mode the frequency response exhibits a resonance at approximately 2 Hz. This is expected given the existence of the elastic element in the transmission of the actuator. In the full rigid mode, the bandwidth of the closed-loop system is approximately 6 Hz, although the bandwidth of the rigid mode decrease when a clutch force limit is taken into account. Nevertheless, it is evident that there is a reduction of the amplitude around the 2 Hz resonance and a slight extension of the bandwidth to 3 Hz, in compared to the compliant case.
The proposed dynamic model of a single joint was validated in Matlab simulations.2 In particular, the response of a single joint to a chirp motor torque signal according to τm = 40 sin(πt2 ) N · m and an increasing clutch force input of Fn = 50 + 5t2 N is examined. Fig. 6 shows the forward dynamics results from (5) and (12) including the angular displacement and velocity of the transmission and the friction clutch torque as obtained using the conventional LuGre model and the proposed switching model. It is verified that the two models are in good agreement with both handling well the zero velocity points; approving the suitability of proposed model. The inverse dynamics of the single joint were solved for a sinusoidal link position reference with amplitude of 0.18 rad (10◦ ) and frequency of 1.5 Hz while the clutch force reference was set to three different values of 0 N, 10 N, and 100 N. Zero clutch force explores the case of compliant joint without any frictional action in compliance, and the corresponding solution can be computed, using existing approaches. The results are presented in Fig. 7 and include the angular displacement and velocity of the transmission, the friction clutch torque, and the motor torque. It can be seen that the presented inverse dynamics approach can also handle zero point velocities.
B. Tracking Performance The tracking performance of a conventional PD position controller when the clutch is not employed (compliant mode)3 in comparison to the controller when the clutch mechanism is exploited and the robot is therefore under rigid mode was then examined. In the compliant mode, the robot joints have low stiffness values defined by their passive compliant elements, which are approximately 188 N · m/rad for the first two shoulder joints and 103 N · m/rad for the third shoulder joint (upper arm rotation) and the elbow joint. However, the employment of the rigid mode increases the stiffness of the joints to a much higher stiffness level that corresponds to the stiffness of the harmonic reduction drive used in the joints. This stiffness is approximately 7000 N · m/rad. First, simulation results from studies with a single joint under uncertainties is presented, to evaluate the robustness of the proposed scheme to model errors and uncertainties. For a given desired link position with an amplitude of 18◦ and a frequency of 2 Hz, link position tracking errors are demonstrated in Fig. 8. The root-mean-square deviation (RMSD) when the system operates in the rigid mode without model error is 28.4−3 m, while it increases by 134% when it operates in the compliant mode. Considerable model errors can deteriorate the tracking performance to some extent, as 20% and 40% link inertia error can increase the RMSD associated with tracking errors by 20.5% 2 The integration process of all simulations has been done using Matlab function “ode15s” with one millisecond time steps. 3 When the clutch is not used the position control of the compliant arm is done using the on-line gravity compensation scheme presented in [40] for robots with flexible joints.
702
IEEE/ASME TRANSACTIONS ON MECHATRONICS, VOL. 21, NO. 2, APRIL 2016
Fig. 6. Forward dynamics results of the single actuator using LuGre model (—) and the proposed model (−−−): Transmission displacement (top), transmission velocity (middle), and clutch friction torque (bottom).
and 48.2%, respectively. Similarly, 20% and 40% error in friction parameters can enlarge the RMSD error by 27.4% and 49%. It can be also observed that significant large model error increases the tracking error; although such an increase is remarkably lower than that corresponding to the compliant mode. In addition, the use of on-line estimators, such as that proposed in [34] can resolve this problem. To demonstrate the tracking performance of the proposed approach in the four-DOF arm presented in Section V, a circular path was considered as the reference trajectory of the ECP. To avoid resonance motion of the robot in compliant robot (that can result in potential risky conditions), a harmonic trajectory in a frequency considerably lower than the resonance frequency is considered. The desired trajectory is described by
Fig. 7. Inverse dynamics results of the single actuator for Fn = 0 N (−− −−), Fn = 10 N (—— ), Fn = 100 N (·−+−·) : Transmission displacement (top left), transmission velocity (bottom left), motor torque (top right), clutch friction torque (bottom right).
Fig. 8. Time history of tracking error of a single joint when it operates in compliant mode (on the right in ——), and rigid mode when there is no model error (on the left in ——); with 20% error in link inertia (on the left in · · ∗ · ·); with 20% error in friction parameters (on the right in · · ∗ · ·); with 40% error in link inertia (on the left in -- --); with 40% error in friction parameters (on the right in -- --).
X d = X 0 + [0 0.1sin(1.6πt) 0.1(1 − cos(1.6πt))]T m (53) where X 0 = [0.555, −0.262, −0.430]T m is the initial posture configuration of the arm as shown in Fig. 4. 1) Simulation Results: Fig. 9 shows the desired and actual link positions over time. Defining the path tracking as E = X d − X, (54) the RMSD when the robot executes the task in rigid and compliant mode is obtained as 1.297 × 10−3 m and 6.484 × 10−3 m, respectively. Fig. 10 depict the motor torques computed by the two controllers and how they are compared to those obtained from the inverse dynamics when the robot operates under the rigid and compliant modes. It can been observed that the motor torques generated by the controller and inverse dynamics are very similar in rigid mode while they differ significantly in compliant mode with the difference of torques in compliant mode being
KASHIRI et al.: DYNAMICS AND CONTROL OF AN ANTHROPOMORPHIC COMPLIANT ARM EQUIPPED WITH FRICTION CLUTCHES
Fig. 9. Time history of desired link positions (—∗—) in comparison to the actual ones when the robot is in rigid mode (−− −−) and when it is in compliant mode (·−−·).
703
Fig. 11. Time history of clutch normal forces (—, on the left axis) for employing rigid mode and resulting friction torque (−−−, on the right axis)
Fig. 12. Desired (—) and actual (− − −) path of the ECP (on top) and the corresponding tracking error (on bottom) when the robot works in rigid mode (on left) compliant mode (on right).
Fig. 10. Time history of motor torques: computed using the inverse dynamics when the robot works in rigid mode (· −− ·) and compliant mode(− − − −), and obtained from the controller in rigid mode (— —) and compliant mode (− − ∗ − −).
larger for joints that are under higher gravitational loads, e.g., the first shoulder joint. The comparison between motor torques
in two modes may suggest that achieving accuracy requires higher torques in the absence of physical dissipative actions, i.e., compliant mode. Fig. 11 introduces the normal force applied to clutch (from (46) for fm ax = 0 N), to exploit the rigid mode and the corresponding friction torque generated by the clutch. By observing the trends of clutch force and torque versus time, it can be seen that they do not necessarily follow each other. This is because the clutch torque in rigid mode depends on the dynamics of the system. 2) Experimental Results: Fig. 12 introduces the experimental results of same task, including the desired ECP path in comparison to the reference path and the tracking error as defined in (54). The RMSD in rigid and compliant mode is obtained as 1.670 × 10−3 m and 7.522 × 10−3 m, respectively. It can be seen that high acceleration at the beginning of motion can significantly deteriorate tracking performance of the robot in compliant mode, while such a problem is not evident in rigid mode.
704
IEEE/ASME TRANSACTIONS ON MECHATRONICS, VOL. 21, NO. 2, APRIL 2016
Fig. 15. Experimental setup. The arm’s end-effector colliding with stiff (on the right) and soft surface made of foam (on the left).
Fig. 13. Time history of desired link positions (—) in comparison to the actual ones (− − −).
Fig. 16. Time history of transmission displacements (on the right: φ 1 — —, φ 2 · · ∗ · ·, φ 3 · −− · , φ 4 − − − −) and measured contact force (on the left) in collision with soft (on the top) and stiff (on the bottom) contact surface.
Fig. 14. Time history of transmission deflection (on the top) and external force (at the bottom).
C. Contact Detection Following the evaluation of the tracking performance the contact detection capability and response of the proposed controller were examined. In these trials, the robot was commanded to track a desired ECP path defined by a straight horizontal line in Y-axis with the constant velocity 0.25 m/s, X d = X 0 + [0 0.25t 0]T m while there is a X–Z plane wall located at Y = Y0 + 0.25 m. 1) Simulation Results: Simulations studies were first performed to validate the functionality of the controller for a given force threshold of fm ax = 20 N. The stiffness and damping of the simulated wall were set as 11500 N/m and 75 N · s/m, respectively. The desired and actual joint positions over time are shown in Fig. 13 to demonstrate the accuracy of tracking prior to the moment of collision. As shown in Fig. 14, the displacements in the transmissions start varying as soon as the collision occurs at t = 0.999 s. Considering the resolution of the encoder, the trigger of the contact detection was set to 1.534 × 10−3 rad. This is reached at t = 1.005 s on third joint. The force applied at first moment of the contact is due to the momentum exchange resulting from the impact effects and cannot be avoided using physical
contact detection schemes. Hence, the employment of highresolution encoders cannot reduce this force, although it can be controlled/decreased by reducing the ECP velocity. When contact is triggered the clutch force reference is updated based on (50) switching smoothly from rigid mode to compliant mode while the external force is maintained below and around the defined threshold. 2) Experimental Results: Experiments were then executed to demonstrate the ability of the interaction detection scheme to detect both soft and rigid contacts. The collision of the robot with soft and stiff surfaces, see Fig. 15, was examined and a stop reaction strategy was employed. The clutch force reference was regulated based on zero maximum external force fm ax = 0 N. Fig. 16 illustrates the transmission displacements and the contact force at the time of collision. While the transmission displacements are initially constant, due to operation in rigid mode, they start varying as soon as the contact interaction starts. As soon as the transmission displacement exceeds the defined tolerance (1.534 × 10−3 rad), the control scheme disengages the clutches and activates the compliant mode. In addition to displacement changes due to the interaction forces with the environment and as soon as the clutches are released further transmission displacements fluctuations occur due to lower stiffness dynamics under the compliant mode. The peak contact forces generated due to collision with stiff and soft surfaces were approximately 18 and 4 N, respectively. It can be observed that this variation due to the contact
KASHIRI et al.: DYNAMICS AND CONTROL OF AN ANTHROPOMORPHIC COMPLIANT ARM EQUIPPED WITH FRICTION CLUTCHES
Fig. 17. Time history of transmission displacements (on the left: φ 1 — —, φ 2 · · ∗ · ·, φ 3 · −− · , φ 4 − − − −) and measured contact force (on the right) in compliant mode (on the top) rigid mode (on the middle) and rigid-compliant mode (on the bottom). The contact moment with one or two peaks of impact forces are highlighted by a yellow rectangular.
surface properties does not affect the interaction detection which is rapidly triggered for both the soft and stiff cases and as immediate consequence the trajectory execution is terminated using the stop reaction strategy mentioned earlier.
D. Contact Force Evaluation The last experiment aimed at comparing the contact force when the robot operates in different working modes: 1) the compliant mode (the desired clutch force is set to zero F nd = 0 N), 2) the rigid mode under the maximum force constraint according to (46) with the external force threshold set equal to zero, fm ax = 0 [N] in (48), and 3) the rigid-compliant mode in which the robot starts executing the task in rigid mode (as in 2) and switches to compliant mode (the desired clutch force is set to zero, F nd = 0 N) after detecting the interaction. The desired path of the ECP was a cyclic horizontal straight line defined by X d = X 0 + [0 30sin(0.6πt) 0]T m.
(55)
The environment consisted of a wall, on which a force sensor was installed at the expected contact/collision location. Fig. 17 presents the trends of the contact force and transmission displacements for the three cases. As the task execution starts in the rigid mode and the rigid-compliant mode, the transmission displacements are constant while it fluctuates when the system operates in the compliant mode. When the interaction begins displacements start varying, and the rigid-compliant mode disengages the clutch as soon as a displacement larger the defined tolerance (1.534 × 10−3 rad) is measured. Subsequently, when the robot ends interacting with the environment, the displacements
705
present fluctuations in the compliant mode and the rigidcompliant mode, while they remain constant in rigid mode. Concerning the generated impact peak contact forces (t = 0.15 s), they are comparable in all three cases with the impact force in rigid mode and rigid-compliant mode being slightly lower than that in compliant mode. This is probably due to the momentum exchange resulting from the velocity which can be higher in compliant mode due to the oscillations caused by the elastic elements prior to contact. However, the rate of the force increment after this initial transient lasting 0.3 s is approximately 75 N/s in the compliant mode and rigid-compliant mode while it is almost 100 N/s in the rigid mode, respectively. This results in a secondary peak force (25 N) transient around t = 0.45 s for the case of the rigid mode which is higher than the equivalent peak force for both the compliant mode and the rigidcompliant mode which is approximately 17 N. This is expected as the system under the rigid mode (case 2 above) remains under this mode also after the contact and attempts to track the desired path while remaining in stiff condition. As a result, by exploiting the proposed rigid-compliant approach, the second peak of the impact force at the beginning of the contact in compliant mode (shown in highlighted area in Fig. 17 on the top right, around t = 0.11 s) is removed; and the robot presents a response similar to that in rigid mode at the start of the interaction. However, the peak force and the rate of the force increment in the proposed rigid-compliant mode are about 25% lower than those in rigid mode, and the robot exhibits a desirable behavior similar to that in compliant mode during interaction. In other words, the proposed approach exploits the major benefits associated with the rigid mode and the compliant mode. In overall the results from all above experiments demonstrate that the clutch mechanism and the proposed rigid-compliant mode control can be used to achieve both better tracking performance in free space, as it was demonstrated in Section VI-B, and reduce the impact peak and subsequent peak force transients during the interaction, as it was shown in Section VI-D. VII. CONCLUSION This paper studied the dynamics of compliant manipulators equipped with friction clutches in parallel to the passive elastic transmission of the actuator units. The clutch force can be modulated to make the robot perform as a rigid or compliant manipulator based on the task requirements to accommodate precision or interaction performance. To achieve this a novel control strategy was proposed based on the derived dynamic model to optimize this precision and interaction/performance tradeoff. Simulation and experimental results validated the effectiveness of the controller to achieve simultaneously enhanced tracking accuracy, contact detection, and robust interaction. This demonstrated that with the employment of clutches and proposed controller it is possible to combine the benefits of rigid robots in terms of tracking precision as well as those of compliant systems in terms of robust interaction. ACKNOWLEDGEMENTS The authors would like to thank A. Margan and G. Pane for their assistance in launching the experimental setup.
706
IEEE/ASME TRANSACTIONS ON MECHATRONICS, VOL. 21, NO. 2, APRIL 2016
REFERENCES [1] N. Hogan, “Impedance control of industrial robots,” Robot. Comput.Integr. Manuf., vol. 1, no. 1, pp. 97–113, 1984. [2] C.-H. Wu, “Compliance control of a robot manipulator based on joint torque servo,” Int. J. Robot. Res., vol. 4, no. 3, pp. 55–71, 1985. [3] R. J. Anderson and M. W. Spong, “Hybrid impedance control of robotic manipulators,” IEEE Trans. Robot. Autom., vol. 4, no. 5, pp. 549–556, Oct. 1988. [4] S. Chiaverini, B. Siciliano, and L. Villani, “A survey of robot interaction control schemes with experimental comparison,” IEEE/ASME Trans. Mechatronics, vol. 4, no. 3, pp. 273–285, Sep. 1999. [5] A. M. Dollar and R. D. Howe, “A robust compliant grasper via shape deposition manufacturing,” IEEE/ASME Trans. Mechatronics, vol. 11, no. 2, pp. 154–161, Apr. 2006. [6] G. A. Pratt and M. M. Williamson, “Series elastic actuators,” in Proc. IEEE/RSJ Int. Conf. Intell. Robot. Syst., 1995, vol. 1, pp. 399–406. [7] A. Bicchi, S. L. Rizzini, and G. Tonietti, “Compliant design for intrinsic safety: General issues and preliminary design,” in Proc. IEEE/RSJ Int. Conf. Intell. Robot. Syst., 2001, vol. 4, pp. 1864–1869. [8] M. Zinn, B. Roth, O. Khatib, and J. K. Salisbury, “A new actuation approach for human friendly robot design,” Int. J. Robot. Res., vol. 23, nos. 4/5, pp. 379–398, 2004. [9] M. Okada, S. Ban, and Y. Nakamura, “Skill of compliance with controlled charging/discharging of kinetic energy,” in Proc. IEEE Int. Conf. Robot. Autom., 2002, vol. 3, pp. 2455–2460. [10] D. Paluska and H. Herr, “The effect of series elasticity on actuator power and work output: Implications for robotic and prosthetic joint design,” Robot. Auton. Syst., vol. 54, no. 8, pp. 667–673, 2006. [11] G. Mathijssen, D. Lefeber, and B. Vanderborght, “Variable recruitment of parallel elastic elements: Series–parallel elastic actuators (SPEA) with dephased mutilated gears,” IEEE/ASME Trans. Mechatronics, vol. 20, no. 2, pp. 594–602, Apr. 2015. [12] G. Ferretti, G. Magnani, and P. Rocco, “Impedance control for elastic joints industrial manipulators,” IEEE Trans. Robot. Autom., vol. 20, no. 3, pp. 488–498, Jun. 2004. [13] M. Uemura, K. Kanaoka, and S. Kawamura, “A new control method utilizing stiffness adjustment of mechanical elastic elements for serial link systems,” in Proc. IEEE Int. Conf. Robot. Autom., 2007, pp. 1437–1442. [14] N. Kashiri, N. G. Tsagarakis, M. Van Damme, B. Vanderborght, and D. G. Caldwell, “Enhanced physical interaction performance for compliant joint manipulators using proxy-based sliding mode control,” in Proc. Int. Conf. Informat. Control, Autom. Robot., Vienna, Austria, 2014, pp. 175–183. [15] F. Petit, C. Ott, and A. Albu-Schaffer, “A model-free approach to vibration suppression for intrinsically elastic robots,” in Proc. IEEE Int. Conf. Robot. Autom., 2014, pp. 2176–2182. [16] A. Radulescu, M. Howard, D. J. Braun, and S. Vijayakumar, “Exploiting variable physical damping in rapid movement tasks,” in Proc. IEEE/ASME Int. Conf. Adv. Intell. Mechatronics, 2012, pp. 141–148. [17] B. Vanderborght et al., “Variable impedance actuators: A review,” Robot. Auton. Syst., vol. 61, no. 12, pp. 1601–1614, 2013. [18] A. Jafari, N. G. Tsagarakis, and D. Caldwell, “A novel intrinsically energy efficient actuator with adjustable stiffness (AwAS),” IEEE/ASME Trans. Mechatronics, vol. 18, no. 1, pp. 355–365, Feb. 2013. [19] Y. Kim, J. Lee, and J. Park, “Compliant joint actuator with dual spiral springs,” IEEE/ASME Trans. Mechatronics, vol. 18, no. 6, pp. 1839–1844, Dec. 2013. [20] M. Cestari, D. Sanz-Merodio, J. C. Arevalo, and E. Garcia, “An adjustable compliant joint for lower-limb exoskeletons,” IEEE/ASME Trans. Mechatronics, vol. 20, no. 2, pp. 889–898, Apr. 2015. [21] G. Grioli et al., “Variable stiffness actuators: The users point of view,” Int. J. Robot. Res., vol. 34, no. 6, pp. 727–743, 2015. [22] A. Enoch, A. Sutas, S. Nakaoka, and S. Vijayakumar, “BLUE: A bipedal robot with variable stiffness and damping,” in Proc. IEEE-RAS Int. Conf. Humanoid Robots, Osaka, Japan, 2012, pp. 487–494. [23] M. Catalano, G. Grioli, M. Garabini, F. W. Belo, A. di Basco, N. Tsagarakis, and A. Bicchi, “A variable damping module for variable impedance actuation,” in Proc. IEEE Int. Conf. Robot. Autom., 2012, pp. 2666–2672. [24] H. Tomori, Y. Midorikawa, and T. Nakamura, “Derivation of nonlinear dynamic model of novel pneumatic artificial muscle manipulator with a magnetorheological brake,” in Proc. IEEE Int. Workshop Adv. Motion Control, 2012, pp. 1–8. [25] M. Laffranchi, N. G. Tsagarakis, and D. G. Caldwell, “Analysis and development of a semiactive damper for compliant actuation
[26]
[27] [28] [29] [30] [31] [32]
[33] [34] [35]
[36] [37] [38] [39] [40] [41] [42]
[43] [44] [45] [46] [47]
[48]
systems,” IEEE/ASME Trans. Mechatronics, vol. 18, no. 2, pp. 744–753, Apr. 2013. T. Saito and H. Ikeda, “Development of normally closed type of magnetorheological clutch and its application to safe torque control system of human-collaborative robot,” J. Intell. Mater. Syst. Struct., vol. 18, no. 12, pp. 1181–1185, 2007. D. S. Walker, D. J. Thoma, and G. Niemeyer, “Variable impedance magnetorheological clutch actuator and telerobotic implementation,” in Proc. IEEE/RSJ Int. Conf. Intell. Robot. Syst., 2009, pp. 2885–2891. N. Lauzier and C. Gosselin, “Series clutch actuators for safe physical human-robot interaction,” in Proc. IEEE Int. Conf. Robot. Autom., 2011, pp. 5401–5406. P. Yadmellat and M. R. Kermani, “Adaptive modeling of a magnetorheological clutch,” IEEE/ASME Trans. Mechatronics, vol. 19, no. 5, pp. 1716–1723, Oct. 2014. T. Nakamura and N. Saga, “Viscous control of homogeneous ER fluid using a variable structure control,” IEEE/ASME Trans. Mechatronics, vol. 10, no. 2, pp. 154–160, Apr. 2005. G. Palli, C. Melchiorri, and A. De Luca, “On the feedback linearization of robots with variable joint stiffness,” in Proc. IEEE Int. Conf. Robot. Autom., 2008, pp. 1753–1759. N. Kashiri, M. Laffranchi, J. Lee, N. G. Tsagarakis, L. Chen, and D. Caldwell, “Real-time damping estimation for variable impedance actuator,” in Proc. IEEE Int. Conf. Robot. Autom., 2014, pp. 1072–1077. R. Ozawa, H. Kobayashi, and R. Ishibashi, “Adaptive impedance control of a variable stiffness actuator,” Adv. Robot., vol. 29, no. 4, pp. 273–286, 2015. N. Kashiri, G. A. Medrano-Cerda, N. G. Tsagarakis, M. Laffranchi, and D. Caldwell, “Damping control of variable damping compliant actuators,” in Proc. Int. Conf. Robot. Autom., 2015, pp. 850–856. M. Laffranchi, L. Chen, N. Kashiri, J. Lee, N. G. Tsagarakis, and D. G. Caldwell, “Development and control of a series elastic actuator equipped with a semi active friction damper for human friendly robots,” Robot. Auton. Syst., vol. 62, no. 12, pp. 1827–1836, 2014. E. J. Rouse, L. M. Mooney, and H. M. Herr, “Clutchable series-elastic actuator: Implications for prosthetic knee design,” Int. J. Robot. Res., vol. 33, no. 13, 1611–1625, 2014. Y. Dan and O. Khatib, “A novel robotic joint actuation concept: The variable mechanical fuse, VMF,” in Proc. Adv. Theory Practice Robots Manipulators, 2014, pp. 427–434. M. W. Spong, “Modeling and control of elastic joint robots,” J. Dyn. Syst. Meas. Control, vol. 109, no. 4, pp. 310–318, Dec. 1987. K. P. Jankowski and H. A. ElMaraghy, “Inverse dynamics and feedforward controllers for constrained flexible joint robots,” in Proc. IEEE Conf. Decision Control, 1992, pp. 317–322. A. De Luca and W. Book, “Robots with flexible elements,” in Springer Handbook of Robotics SE - 14, B. Siciliano and O. Khatib, Eds., Berlin, Germany: Springer, 2008, pp. 287–319. C. Canudas de Wit, H. Olsson, K. Astrom, and P. Lischinsky, “A new model for control of systems with friction,” IEEE Trans. Automat. Control, vol. 40, no. 3, pp. 419–425, Mar. 1995. N. Kashiri, M. Laffranchi, N. G. Tsagarakis, A. Margan, and D. G. Caldwell, “Physical interaction detection and control of compliant manipulators equipped with friction clutches,” in Proc. IEEE Int. Conf. Robot. Autom., 2014, pp. 1066–1071. T. Matsumoto and K. Kosuge, “Collision detection of manipulator based on adaptive control law,” in Proc. IEEE/ASME Int. Conf. Adv. Intell. Mechatronics, 2001, vol. 1, pp. 177–182. S. Morinaga and K. Kosuge, “Collision detection system for manipulator based on adaptive impedance control law,” in Proc. IEEE Int. Conf. Robot. Autom., 2003, vol. 1, pp. 1080–1085. A. De Luca and R. Mattone, “Sensorless robot collision detection and hybrid force/motion control,” in Proc. IEEE Int. Conf. Robot. Autom., 2005, pp. 999–1004. F. Flacco and A. De Luca, “Integrated control for pHRI: Collision avoidance, detection, reaction and collaboration,” in Proc. IEEE RAS & EMBS Int. Conf. Biomed. Robot. Biomechatron., 2012, pp. 288–295. V. Sotoudehnejad, A. Takhmar, M. R. Kermani, and I. G. Polushin, “Counteracting modeling errors for sensitive observer-based manipulator collision detection,” in Proc. IEEE/RSJ Int. Conf. Intell. Robot. Syst., 2012, pp. 4315–4320. A. De Luca, A. Albu-Schaffer, S. Haddadin, and G. Hirzinger, “Collision detection and safe reaction with the DLR-III lightweight manipulator arm,” in Proc. IEEE/RSJ Int. Conf. Intell. Robot. Syst., 2006, pp. 1623– 1630.
KASHIRI et al.: DYNAMICS AND CONTROL OF AN ANTHROPOMORPHIC COMPLIANT ARM EQUIPPED WITH FRICTION CLUTCHES
[49] N. G. Tsagarakis, M. Laffranchi, B. Vanderborght, and D. G. Caldwell, “A compact soft actuator unit for small scale human friendly robots,” in Proc. IEEE Int. Conf. Robot. Autom., 2009, pp. 4356–4362. [50] W. Lhomme, R. Trigui, P. Delaure, B. Jeanneret, A. Bouscayrol, and F. Badin, “Switched causal modeling of transmission with clutch in hybrid electric vehicles,” IEEE Trans. Vehicular Technol., vol. 57, no. 4, pp. 2081–2088, 2008. [51] T. Fukushima, “Precise and fast computation of Lambert W-functions without transcendental function evaluations,” J. Comput. Appl. Math., vol. 244, pp. 77–89, 2013. [52] T. G. Sugar and V. Kumar, “Design and control of a compliant parallel manipulator,” J. Mech. Design, vol. 124, pp. 676–683, 2002. [53] J. Pratt, B. Krupp, and C. Morse, “Series elastic actuators for high fidelity force control,” Ind. Robot: Int. J., vol. 29, no. 3, pp. 234–241, 2002. [54] A. De Luca, B. Siciliano, and L. Zollo, “PD control with on-line gravity compensation for robots with elastic joints: Theory and experiments,” Automatica, vol. 41, no. 10, pp. 1809–1819, 2005. [55] M. W. Spong, S. Hutchinson, and M. Vidyasagar, Robot Modeling and Control. New York, NY, USA: Wiley, Nov. 2005. [56] M. Laffranchi, N. G. Tsagarakis, and D. G. Caldwell, “CompAct Arm: A compliant manipulator with intrinsic variable physical damping,” Robot.: Sci. Syst., vol. 8, pp. 225–232, 2013. [57] K. Youcef-Toumi and S. T. Wu, “Input/output linearization using time delay control,” in Proc. Amer. Control Conf., 1991, pp. 2601–2606. [58] J. Lee, M. Laffranchi, N. Kashiri, N. Tsagarakis, and D. Caldwell, “ModelFree force tracking control of piezoelectric actuators: Application to variable damping actuator,” in Proc. IEEE Int. Conf. Robot. Autom., 2014, pp. 2283–2289. [59] Y. Nakamura, Advanced Robotics: Redundancy and Optimization. Reading, MA, USA: Addison-Wesley, 1990. [60] G. H. Golub and V. Pereyra, “The differentiation of pseudo-inverses and nonlinear least squares problems whose variables separate,” SIAM J. Numer. Anal., vol. 10, no. 2, pp. 413–432, 1973.
Navvab Kashiri received the undergraduate degree in mechanical engineering and the Master’s degree (first class Hons.) in mechanical engineering from the Babol University of Technology, Babol, Iran, in 2011. He received the Ph.D. degree in robotics from the Department of Advanced Robotics, Italian Institute of Technology, Genova, Italy, in April 2015. He is currently a Postdoctoral Researcher at the Humanoid & Human Centred Mechatronics Lab, Department of Advanced Robotics, Italian Institute of Technology. His research interests include robust and adaptive control, physical human–robot interaction, variable impedance systems, mechanisms design, and compliant joint robots. Dr. Kashiri received the Best Student Paper Award at ICINCO 2014.
707
Matteo Laffranchi received the Bachelor’s degree in mechatronics engineering and a top class Master’s degree in mechatronics engineering from the Polytechnic of Turin, Turin, Italy, in 2004 and 2006, respectively, and the Ph.D. degree in robotics from the University of Sheffield, Sheffield, U.K., in 2011. After a brief experience in the automation industry at OSAI A.S., from 2008 to 2011, he was a Research Fellow at the Italian Institute of Technology and a Postdoctoral Researcher at the same institute from 2011 to 2014. He is currently at a Researcher position at the Rehab Technology Facility of IIT, Genova, Italy, where he is responsible for the mechatronic development of exoskeleton systems.
Darwin G. Caldwell received the B.Sc. and Ph.D. degrees in robotics from the University of Hull, Hull, U.K., in 1986 and 1990, respectively, and the M.Sc. degree in management from the University of Salford, Salford, U.K., in 1996. He is currently a Research Director at the Italian Institute of Technology, Genoa, Italy, and an Honorary Professor at the Universities of Sheffield, Manchester, Kings College London, Bangor, and Tianjin, China. He is the author or coauthor of more than 500 academic papers, and has 15 patents. His research interests include innovative actuators, force augmentation exoskeletons, humanoid (iCub, cCub, COMAN, and WalkMan) and quadrupled robots (HyQ and HyQ2Max), and medical robotics. Prof. Caldwell became the Fellow of the Royal Academy of Engineering in 2015.
Nikos G. Tsagarakis received the D.Eng. degree in electrical and computer science engineering from the Polytechnic School of Aristotle University, Thessaloniki, Greece, in 1995, the M.Sc. degree in control engineering in 1997, and the Ph.D. degree in robotics from the University of Salford, Salford, U.K., in 2000. He is a Tenured Senior Scientist at IIT and responsible for Humanoid Design & Human Centred Mechatronics development. He is an author or coauthor of more than 250 papers in journals and international conferences and holds 14 patents. Dr. Tsagarakis is the Technical Editor of IEEE/ASME TRANSACTIONS ON MECHATRONICS and on the Editorial Board of Robotics and Automation Letters. He has received or been finalist of several awards in international conferences such in ICRA, IROS , and Humanoids. He has been in the Program Committee of more than 60 international conferences including ICRA, IROS, RSS, HUMANOIDS, BIOROB, and ICAR.