Robot Impedance Control and Passivity Analysis with Inner ...Robot Impedance Control and Passivity...

12
Robot Impedance Control and Passivity Analysis with Inner Torque and Velocity Feedback Loops Michele Focchi * , Gustavo A. Medrano-Cerda * , Thiago Boaventura , Marco Frigerio * , Claudio Semini * Jonas Buchli , Darwin G. Caldwell * * Dept. of Advanced Robotics, Istituto Italiano di Tecnologia (IIT), via Morego, 30, 16163 Genova <first name>.<last name>@iit.it Agile & Dexterous Robotics Lab, ETH Zurich, Tannenstr. 3, 8092 Z¨ urich [email protected], [email protected] Impedance control is a well-established technique to control interaction forces in robotics. However, real imple- mentations of impedance control with an inner loop may suf- fer from several limitations. Although common practice in designing nested control systems is to maximize the band- width of the inner loop to improve tracking performance, it may not be the most suitable approach when a certain range of impedance parameters has to be rendered. In particular, it turns out that the viable range of stable stiffness and damping values can be strongly affected by the bandwidth of the inner control loops (e.g. a torque loop) as well as by the filtering and sampling frequency. This paper provides an extensive analysis on how these aspects influence the stability region of impedance parameters as well as the passivity of the sys- tem. This will be supported by both simulations and exper- imental data. Moreover, a methodology for designing joint impedance controllers based on an inner torque loop and a positive velocity feedback loop will be presented. The goal of the velocity feedback is to increase (given the constraints to preserve stability) the bandwidth of the torque loop with- out the need of a complex controller. Nomenclature α velocity compensation (scalar) gain β gain of the PI torque controller θ m angular positions of the rotor of the electric motor θ L1 angular position of the intermediate inertia θ L2 angular position of the leg B m viscous friction in the rotor D hd gearbox damping D p leg damping G t (s) transfer function between voltage and load torque G t VC (s) transfer function between voltage and load torque after velocity compensation I m motor current I t torque controller integral gain J L1 intermediate inertia J L2 leg inertia J m rotor + gearbox inertia k t electric motor torque constant k w electric motor speed constant K hd gearbox stiffness K L2 linear stiffness due to gravity K p leg stiffness L coil inductance N gear ratio P t torque controller proportional gain PI t (z) PI torque controller R coil resistance T l load torque T dist external disturbance torque (load side) T fr friction disturbance torque (motor side) V m motor voltage V m VC velocity compensation voltage VC gain velocity compensation transfer function 1 Introduction Until recently, the majority of legged robots employed high-gain (stiff) position feedback control [1]. However, this approach is unsuitable when a robot is in contact with un- structured real-world environment, as the controller would try to satisfy the position goal at all costs, pushing the actu- ators to their torque limits [2]. Instead, for such scenarios, a force/torque control in joint or end-effector space is desir- able. For a legged robot, force control can be useful in both the swing and stance phase. For instance, during stance, task- space force control permits control of the ground reaction forces, improving balance capabilities. On the other hand, during the swing phase, joint-space force control allows compliant motions with good position arXiv:1406.4047v1 [cs.SY] 16 Jun 2014

Transcript of Robot Impedance Control and Passivity Analysis with Inner ...Robot Impedance Control and Passivity...

Page 1: Robot Impedance Control and Passivity Analysis with Inner ...Robot Impedance Control and Passivity Analysis with Inner Torque and Velocity Feedback Loops Michele Focchi , Gustavo A.

Robot Impedance Control and Passivity Analysiswith Inner Torque and Velocity Feedback Loops

Michele Focchi ∗, Gustavo A. Medrano-Cerda ∗, Thiago Boaventura†, Marco Frigerio∗, Claudio Semini∗

Jonas Buchli†, Darwin G. Caldwell ∗

∗ Dept. of Advanced Robotics,Istituto Italiano di Tecnologia (IIT),

via Morego, 30, 16163 Genova<first name>.<last name>@iit.it

† Agile & Dexterous Robotics Lab,ETH Zurich,

Tannenstr. 3, 8092 [email protected], [email protected]

Impedance control is a well-established technique tocontrol interaction forces in robotics. However, real imple-mentations of impedance control with an inner loop may suf-fer from several limitations. Although common practice indesigning nested control systems is to maximize the band-width of the inner loop to improve tracking performance, itmay not be the most suitable approach when a certain rangeof impedance parameters has to be rendered. In particular, itturns out that the viable range of stable stiffness and dampingvalues can be strongly affected by the bandwidth of the innercontrol loops (e.g. a torque loop) as well as by the filteringand sampling frequency. This paper provides an extensiveanalysis on how these aspects influence the stability regionof impedance parameters as well as the passivity of the sys-tem. This will be supported by both simulations and exper-imental data. Moreover, a methodology for designing jointimpedance controllers based on an inner torque loop and apositive velocity feedback loop will be presented. The goalof the velocity feedback is to increase (given the constraintsto preserve stability) the bandwidth of the torque loop with-out the need of a complex controller.

Nomenclatureα velocity compensation (scalar) gainβ gain of the PI torque controllerθm angular positions of the rotor of the electric motorθL1 angular position of the intermediate inertiaθL2 angular position of the legBm viscous friction in the rotorDhd gearbox dampingDp leg dampingGt(s) transfer function between voltage and load torqueGtVC(s) transfer function between voltage and load torque

after velocity compensationIm motor current

It torque controller integral gainJL1 intermediate inertiaJL2 leg inertiaJm rotor + gearbox inertiakt electric motor torque constantkw electric motor speed constantKhd gearbox stiffnessKL2 linear stiffness due to gravityKp leg stiffnessL coil inductanceN gear ratioPt torque controller proportional gainPIt(z) PI torque controllerR coil resistanceTl load torqueTdist external disturbance torque (load side)Tf r friction disturbance torque (motor side)Vm motor voltageVmVC velocity compensation voltageVCgain velocity compensation transfer function

1 IntroductionUntil recently, the majority of legged robots employed

high-gain (stiff) position feedback control [1]. However, thisapproach is unsuitable when a robot is in contact with un-structured real-world environment, as the controller wouldtry to satisfy the position goal at all costs, pushing the actu-ators to their torque limits [2]. Instead, for such scenarios,a force/torque control in joint or end-effector space is desir-able.

For a legged robot, force control can be useful in boththe swing and stance phase. For instance, during stance, task-space force control permits control of the ground reactionforces, improving balance capabilities.

On the other hand, during the swing phase, joint-spaceforce control allows compliant motions with good position

arX

iv:1

406.

4047

v1 [

cs.S

Y]

16

Jun

2014

Page 2: Robot Impedance Control and Passivity Analysis with Inner ...Robot Impedance Control and Passivity Analysis with Inner Torque and Velocity Feedback Loops Michele Focchi , Gustavo A.

tracking using straightforward rigid body inverse dynamics.The ability to be compliant in the swing phase is essentialto guarantee safe interaction with unexpected obstacles. Inthese situations, the robot must be able to adapt to the in-teraction forces rather than trying to minimise the positiontracking error.

Interaction forces can be regulated in two ways: pas-sively and actively. Passive methods are those in which phys-ical compliant elements are included between the robot andthe environment to limit the interaction forces (e.g. a pas-sive spring in series elastic actuators [3]). On the other handactive compliance is achieved through the active control ofjoints (position or torque) using feedback measurements ofjoint torques [4]. This can emulate a virtual compliance bothat the joint as well as at the end-effector/foot level.

A major benefit of active compliance is its ability tochange the dynamic characteristics (e.g. stiffness and damp-ing) in real-time. Hence, legged robots can take advantageof active compliance to adapt the leg stiffness to swing andstance phases, or to the surface properties [5].

Many methods to actively control compliance at the end-effector have been developed, such as impedance control [6],operational space control [7], hybrid force-control [8], andvirtual model control [9]. Impedance control, in particular,allows the dynamic characteristics at the robot interactionport (e.g. the end-effector) to be specified by regulating thedynamic relationship between forces and positions (mechan-ical impedance). In the past, impedance control algorithmswere limited by the controller bandwidth, which was set bythe computational power and actuator dynamics. That wasone of the reasons for the introduction of passive elementsin series with the actuator [10], which have intrinsically un-limited bandwidth. However, recent advances in both com-puter and actuator performance, made active compliance fea-sible for highly-dynamic applications [11,12]. Nevertheless,many aspects, still create stability issues on impedance con-trol. For instance, the range of stable stiffness and dampingsthat can be virtually created (Z-width, where Z stands forimpedance [13]) can be limited by filtering, sampling fre-quency, and also by the bandwidth of inner control loops (e.g.a torque loop).

A common practice in designing nested loop controlsystems is to maximize the bandwidth of the innermostloop [14]. However, maximizing the inner loop controllerbandwidth is not always the best strategy. When theouter impedance loop is closed, designing the inner loop tohave the highest possible bandwidth reduces the range ofimpedance parameters for which the whole system is stable,as demonstrated later in this work. Therefore, a trade-offmust be found between: having a high bandwidth to ensuregood torque and impedance tracking, and keeping the band-width low to increase the range of stable impedance values.Other aspects that directly influence the stability region arethe sampling frequency and filtering [15]. Their effect is tointroduce delays into the control loop, and their influencewill also be investigated in this work.

To ensure closed-loop stability during interactions withthe environment or other systems, the controller must be de-

signed to ensure the system behaves passively at the interac-tion port [16]. From the passivity property, asymptotic sta-bility can always be ensured: both in free motion as wellas when the robot is in contact with any type of environ-ment (which is usually passive). Physical compliant ele-ments and rigid bodies are passive by nature. However, whenthe compliant behavior is emulated by an actuator, the con-troller gains set the system passivity. In this work it willbe shown that passivity can also be a restrictive conditionto select impedance parameters. This contribution is an ex-tension of the recently presented work [17], where torque-based impedance control was described for the electrically-actuated degrees of freedom (hip adduction-abduction HAA)of the quadruped robot HyQ [18] (see Fig. 1).

Fig. 1: HyQ robot

In particular this paper includes a detailed passivity anal-ysis complemented with an analysis of the factors that canrestrict the region of stable impedance parameters that canbe used for this degree of freedom (HAA). A similar analysisfor the hydraulically actuated joints (hip and knee flexion-extension) has recently been presented by Boaventura et al[19].

Related works. The published literature about activecompliance is vast. A brief review on the issues that af-fect the performance of force controlled robots can be foundin [20]. Stability analysis and performance specificationsfor compliance control was first introduced by Kazerooniet al. [21] for a manipulator whose model had boundeduncertainty. Lawrence in [22] considers the non-ideal,practical effects of computation and communication delayson impedance control and finds some stability boundaries.However, his analysis was in continuous time and it is notnecessarily valid for discrete time systems. Indeed samplingis not completely equivalent to time delays because whensampling there are additional zeros that do not appear in con-tinuous time.

Although the importance of joint elasticity in positionand tracking controllers has been widely discussed [12] theconcept has been introduced only recently in an impedance

Page 3: Robot Impedance Control and Passivity Analysis with Inner ...Robot Impedance Control and Passivity Analysis with Inner Torque and Velocity Feedback Loops Michele Focchi , Gustavo A.

control framework. Albu-Schaffer et al. [23] implementedfull state controller for joint or Cartesian impedance withpassive capabilities. The controller is not passive itself butit is together with the motor dynamics. The torque feedbackshapes the rotor inertia of the motors to a desired value.

More recently Buerger and Hogan [24] have revisitedthe problem of designing controllers for physically inter-active robots. For a 1 DoF system, they reformulated theproblem as a robust stability problem based on mu-synthesis(structured singular values) and loop shaping methods. Theapproach provides improvements in robot performance com-pared to traditional passive controllers. Similarly Surdilovic[25] points out that passivity based control appears to betoo conservative and considers a formulation based on robustcontrol theory.

This paper is structured as follows: the mathematicalmodel of the system is introduced in Section 2 followed by adescription of the control system implementation is then de-scribed in Section 3. The stability issues that associated withreal implementation of an impedance controller are analysed,both in simulations and experimentally in Section 4. A briefassessment about passivity for the system is then given inSection 5. Finally, Section 6 discuss the results and futureworks.

2 System description and mathematical modelThe studies and experiments presented in this work are

all conducted on HyQ [18]. HyQ is a fully torque-controlledquadruped robot with a mix of hydraulic and electric actua-tion for each leg: two hydraulic joints on the sagittal plane(hip HFE and knee KFE flexion-extension) and one electricjoint moving in the traversal plane (hip adduction-abductionHAA, Fig.2 on the left). This paper focuses on modeling andcontrol of the electric joint, which consists of a DC brush-less motor (Emoteq HT2301) and a harmonic drive gearbox(CSD-25-100). The leg is attached to the gearbox output viaan interface consisting of 6 parallel pins (evenly distributedon a circle around the axis of rotation) that enable easy dis-mounting (see Fig. 3). This interface represents a small in-termediate rotational inertia (JL1) placed before the inertiarepresented by the leg (JL2) in the transmission train.

Normally, this type of assembly is modelled by twosecond order differential equations coupled via the gearboxtransmission flexibility [26]. However, after performing sev-eral open loop tests using chirp signals, an anti-resonancewas detected for the link velocity (see the frequency responseof the link velocity to a chirp input voltage in Fig. 4).

Since a model with two inertia and one spring cannotcapture this behavior, a more complex model with three in-ertia coupled by springs was used, as shown in the schematicin Fig. 5 where Khd and Kp are the stiffness related to thegearbox and the leg flexibility, respectively. Joint positionand torque are measured by an encoder and a torque sensor.Due to the topology depicted in Fig. 3 the position encodermeasures the angle of the intermediate inertia JL1 while thelink velocity is measured by averaging first order differences(4 samples) of the position encoder (averaging filter). In ad-

Z

X

Y

KFE

HFE

HAA

Electricmotor

assembly

Electricmotor

assembly

Fig. 2: HyQ Leg. Lateral (left) and frontal (right) view. The figuresshow the definition of the joints and their angles, as well as thecoordinate frame.

Rotor

Torquesensor

IN

Gearbox

Encoder

Intermediateinertia

Fig. 3: Cross-section of the mechanical assembly of the electricjoint. The intermediate inertia JL1 represents the part that interfacesthe leg with the gearbox output.

dition a strain gage based torque sensor is mounted at theoutput of the harmonic drive.

According to this model, the Laplace transforms of thedifferential equations that describe the linearized dynamicsof the load and of the electric motor are:

(Ls+R)Im =Vm− kwsθm

(Jms+Bm)sθm = kt Im−1N(Khd + sDhd)(

θm

N−θL1)+Tf r

(JL1s+BL1)sθL1 =−(Kp + sDp)(θL1−θL2)

+(Khd + sDhd)(θm

N−θL1)

(JL2s+BL2)sθL2 = (Kp + sDp)(θL1−θL2)−KL2θL2 +Tdist

(1)

where Im, θm denote the motor current and motor posi-tion; θL1 and θL2 are the intermediate inertia and leg posi-tions; Vm is the motor voltage; Tf r is the friction torque inthe harmonic drive and Tdist is an external disturbance torqueapplied to the leg. All other symbols and parameter valuesare given in Table 1. A block diagram that illustrates therelationships between the state variables is depicted in Fig.6. Since the rotational inertia of the leg JL2 varies with theconfiguration of the joints HFE and KFE, the table includes

Page 4: Robot Impedance Control and Passivity Analysis with Inner ...Robot Impedance Control and Passivity Analysis with Inner Torque and Velocity Feedback Loops Michele Focchi , Gustavo A.

--

--- -

Fig. 6: Block diagram representing Eqn. (1) that describes the linearized dynamics of the electric motor and of the load.

−40

−30

−20

Magnitude[dB]

100

101−100

−50

0

Phase

[deg]

Frequency [Hz]

Fig. 4: Frequency response of the link velocity θL1 to a chirp inputvoltage at the HAA motor, experimentally obtained with an uncon-strained HyQ leg.

Torque sensor

Encoder

(gravity)

Fig. 5: Motor drive system with torsional load, schematic for the 3mass-2 spring model.

also upper and lower bounds for the leg inertia. In particularthe fact that the leg can retract or extend results in differentmass distributions around the hip abduction-adduction axis.Namely, the inertia is higher when the leg is stretched andlower when it is retracted. Gravity has also an effect on theload dynamics, that, when linearized, behaves as a rotationalspring KL2. The stiffness of this ”gravity spring” is also de-pendent on the leg configuration and is reported in Table 1for a stretched and retracted leg configuration.

3 Controller DesignThis section explains the design of the control system.

The controller architecture is shown in Fig. 7 where an innerpositive velocity feedback loop is followed by a torque loop

Table 1: Model parameters

Name Description ValueJL1 Interm. inertia 1 ·10−4 kgm2

JL2 Leg inertia0.439 kgm2 leg ext.0.129 kgm2 leg ret.

Jm Rotor + gearbox inertia 5.72 ·10−5kgm2

KL2Linear stiffness 11.2 Nm/rad leg ext.due to gravity 7.17 Nm/rad leg ret.

Kp Leg stiffness 1.923·103Nm/radDp Leg damping 7.56 Nms/radBL1 Visc. frict. inertia JL1 0 Nms/radBL2 Visc. frict. inertia JL2 0.756 Nms/radBm Visc. frict. rotor 0.0015 Nms/radKhd Gearbox stiffness 8.077 ·103Nm/radDhd Gearbox damping 16.56 Nms/radL Coil inductance 2.02·10−3HR Coil resistance 3.32 Ω

kt Motor torque constant 0.19 Nm/Akw Motor speed constant 0.19 Nms/radN Gear ratio 100

controller and finally an outer impedance (position) loop.Specifications for the impedance loop vary depending on thegait, for example a trotting gait frequency is around 2 Hz forHyQ that has a mass of 75 kg. The specifications for the per-formance will depend on the type of locomotion gait and thegains of the impedance loop will vary in a specified range.The inner torque loop and the velocity feedback loop mustbe designed to be consistent with these requirements.

3.1 Positive feedback velocity compensationOne difficulty in the design of the torque loop controller

is that the load dynamics may introduce severe limitations inthe closed loop performance of the torque loop. This prob-lem has been largely overlooked since in many cases the loaddynamics are ignored in the analysis. In this subsection apositive velocity feedback (velocity compensation) is intro-duced to address these limitations and improve the torquebandwidth. To exhibit the above-mentioned limitations, firstof all, the system response has been considered after clos-ing the inner velocity feedback loop. The torque transmitted

Page 5: Robot Impedance Control and Passivity Analysis with Inner ...Robot Impedance Control and Passivity Analysis with Inner Torque and Velocity Feedback Loops Michele Focchi , Gustavo A.

to the load is measured by the torque sensor and can be ex-pressed as:

Tl = (Khd + sDhd)

(θm

N−θL1

)(2)

From Eqn. (1), Eqn. (2) and Fig. 7, closing the velocityloop (without considering the averaging filter for the sake ofsimplicity), the transfer function from the motor voltage tothe torque is given by (see [27] for complete derivation):

GtVC =kt(Dhds+Khd)p1

N(p1q1 +(q2−VCgains)q3)(3)

where:

p1 = (JL2s2 +BL2s+KL2)(JL1s2 +BL1s)

+[(JL2s2 +BL2s+KL2)+(JL1s2 +BL1s)

](Dps+Kp)

q1 = (Ls+R)(

Jms2 +Bms+(Dhds+Khd)

N2

)+ ktkws

q2 =Nkt(Ls+R)(Jms2 +Bms)+Nkws

q3 =kt

N(JL2s2 +BL2s+Dps+Kp +KL2)(Dhds+Khd)

Observe that the transmission zeros in Eqn. (3) intro-duced by the polynomial p1 depend entirely on the load dy-namics, that is the load connected at the output of the har-monic drive. When the damping coefficients BL1 and BL2 aresmall, as is usually the case, some of these transmission zerosare very close to the stability region boundary. In the case ofcontinuous time systems the boundary is the imaginary axisand in the case of discrete time systems this is the unit circle.Notice that the zeros may be real or complex depending onthe value of the stiffness KL2. These zeros impose limitationsin the achievable closed loop bandwidth when using a simpleproportional and integral torque controller. This is becausethe controller pole, located at the origin, will be attracted to-wards the transmission zeros becoming the dominant pole ofthe system, thus limiting the closed loop bandwidth of thetorque loop unless very high gains are used in the torquecontroller. In most cases the torque loop gain will have afinite gain margin and therefore the controller gain cannot bemade sufficiently large. This is more pronounced in digitalcontrol where the gain margin is likely to be much lower thanthe gain margin for a continuous time system. The effect ofthe velocity compensation is that these unwanted transmis-sion zeros (polynomial p1) can be cancelled if the velocityfeedback gain is chosen as VCgain = q2/s so that the termq2−VCgains in the denominator of Eqn. (3) is equal to zero.

VCgain =Nkt(Ls+R)(Jms+Bm)+Nkw (4)

The implementation of the compensator requires deriva-tives of the velocity signal that is often prone to quantizationerrors. Since this derivative is likely to be noisy the com-pensator has to be approximated by adding suitable filterswhich would add delay. An alternative solution is to use asimplified velocity compensation as presented in [28] whichis obtained by discarding the derivative terms from Eqn. (4):

VCgain =αNkt

(RBm + ktkw) α > 0 (5)

This simplified velocity compensation is obtained bysetting L = 0 and Jm = 0. This means we are neglect-ing the electrical dynamics and the acceleration term whichwould introduce noise in the system. α is introduced asan adjustable parameter. Therefore, with Eqn. (5), an ex-act cancellation of the transmission zeros p1 is generally notpossible. Nevertheless, even though an exact cancellationis not possible, an improvement in the closed loop torquebandwidth can be achieved. To understand when and howthis is possible consider the velocity compensation givenby Eqn. (5). For the parameter values given in Table 1and setting KL2 = 0, the polynomial p1 has four real rootsz4 < z3 < z2 < z1 = 0. The transfer function (3) also hasa pole at zero. This is an unobservable pole and thereforeit cancels out with the zero z1. The second zero z2 is theclosest to the imaginary axis and this zero limits the torquebandwidth that can be achieved with a PI torque controller.As α increases one real pole in Eqn. (3) moves towards thestability boundary along the real axis and for a value of gainα the pole will become identical to z2. This is the ideal valuefor the gain α required for cancelling the unwanted zero atz2. In this particular case, z2 varies as a function of the leginertia. Hence, it may be difficult to completely cancel outthis zero for all leg configurations with a fixed value for α .However, as long as the pole in Eqn. (3) is placed to theright of the zero z2 then the bandwidth limitation introducedby this zero is avoided (cf. [27]). When KL2 6= 0 then theroots of p1 which are closest to the imaginary axis are com-plex (z1 and z2 are complex conjugate). As α increases twopoles in Eqn. (3) will move towards the imaginary axis as acomplex conjugate pair but there is no value of α that willcompletely cancel out the unwanted zeros z1 and z2. In thiscase the velocity compensation will not be as effective as forthe case where KL2 = 0. Nevertheless, it still results in an im-provement of the achievable closed loop torque bandwidth asshown in Fig. 8.

Similar results can be established after discretization ofthe continuous time system. A final remark is that an alter-native to overcome the limitations imposed by the unwantedzeros is to consider more complex controllers, for examplea double integrator PII controller, or designs based on loopshaping control which introduce additional poles and zeros.The disadvantage is that tuning these complex controllerscannot be done without a good model for the system.

Page 6: Robot Impedance Control and Passivity Analysis with Inner ...Robot Impedance Control and Passivity Analysis with Inner Torque and Velocity Feedback Loops Michele Focchi , Gustavo A.

+

Actuator+

Load dynamics

-

-

+

Torque loop

-

VelocityCompensated

system

Averaging filter

Impedance loop

Fig. 7: Block diagram of the velocity compensated system with inner torque loop and outer impedance loop.

0

0.25

0.5

0.75

1

TorqueTl[N

m]

0 1 2 3 4 50

0.5

1

1.5

2

TorqueTl[N

m]

Time [s]

0

0.25

0.5

0.75

1

TorqueTl[N

m]

0 1 2 3 4 50

0.5

1

1.5

2

TorqueTl[N

m]

Time [s]

Fig. 8: Simulation. Unit torque step responses with KL2 = 0 (up-per plot) and KL2 = 11.2Nm/rad (lower plot) for different velocitycompensation gains α = 0.94 (Solid line) and α = 0 (dashed line).An extended leg inertia (JL2 = 0.439 kgm2) has been considered.The use of velocity compensation significantly reduces the responsetime.

3.2 Torque controller designIn this section the design of a PI torque controller is con-

sidered. An integrator is included in the controller structureto remove steady state errors when tracking constant torqueinputs or when constant disturbances arise. The integrator isimplemented in discrete time using the backward euler ap-proximation. This controller is a lag compensator that hasone zero and one pole. The analysis and design are carriedout in discrete time because sampling introduces noticeabledifferences in comparison to the continuous time case. Forexample the system can become non-minimum phase even ifthe underlying continuous time is of minimum phase (non-minimum phase systems are more difficult to control). Theequation of the PI controller is given by:

PIt(z) = Pt + ItzTs

z−1= (Pt + ItTs)

(z− Pt

Pt + ItTs)

z−1(6)

where z is the Z-transform variable and Ts = 1ms is thesampling time interval; Pt and It are the proportional and in-tegral gains to be determined. Traditionally, the design of aninner loop controller is carried out with the aim of maximiz-ing the closed loop bandwidth of the inner loop. However,one of the first difficulties is how to measure the bandwidthof the torque loop. The closed loop torque bandwidth foran unconstrained system, for example when the leg is mov-ing freely in the air, is very different from the case when thesystem is in contact with the ground and especially dependson the ground stiffness (soft versus hard). In fact, assum-ing that gravity is fully compensated (this means KL2 = 0),the free leg motion with the torque loop closed is not inter-nally stable (as was shown in the previous section there is apole-zero cancellation on the stability boundary). Further, itis not obvious that maximizing the bandwidth of the torqueloop is always consistent with the specifications for the outerimpedance loop. In the approach presented in this paper itwas decided to design the controller gains so that the torqueloop gain has a phase margin larger than 30 and a gain mar-gin larger than 12 dB for the upper and lower bounds of JL2and KL2 and with a velocity compensation gain α = 0.94.This would result in a satisfactory response. In addition, theclosed loop torque response was required to be stable for allvalues of the velocity compensation gain α between zero andone (but the gain and phase margins can be less than 12 dBor 30 degrees, respectively). A set of controller gains satis-fying the given specifications is found by using the MatlabSISOtool.

Pt = 0.382β It = 18β 25 > β > 0 (7)

Changing the gain β only affects the gain of the controllerbut the controller zero remains fixed. This gives ample free-dom to investigate the effects of increasing the torque loopgain β and hence increasing the closed loop torque band-width when the outer loop specifications are considered. Wemust remark that when defining the torque bandwidth weconsider that the system is free to move in the air. Thenthe bandwidth is the frequency where the torque amplitudedecreases by -3 dB respect to the reference.

Page 7: Robot Impedance Control and Passivity Analysis with Inner ...Robot Impedance Control and Passivity Analysis with Inner Torque and Velocity Feedback Loops Michele Focchi , Gustavo A.

3.3 Impedance controlAn impedance controller is added as an outer loop as

shown in Fig. 7. The controller gains Pgain and Dgain repre-sent the stiffness and damping for the joint. The output Tlre fof the controller provides the reference torque for the innerloop:

Tlre f = Pgain(θL1re f −θL1)−DgainθL1 (8)

while θL1re f is the desired trajectory for the joint position.Tcomp (see Fig. 7) is an external compensation torque that canbe added, for example, to remove the effects of gravity andreduce tracking position errors. The term involving the linkvelocity feedback is implemented using an averaging filter toreduce the effects of encoder quantization. For HyQ, a rangeof values for the impedance loop gains that is considered tobe sufficient for walking, trotting and running tasks is Pgain ∈[1,20000]Nm/rad and Dgain ∈ [1,50]Nms/rad.

4 Stability regionsThe analysis here is limited to the abduction-adduction

electric joint of HyQ with a variable load inertia that dependson the configuration of the leg joints. In particular, given arange of impedance parameters, Pgain and Dgain, this analy-sis will assess how the region of closed loop stability is af-fected by varying the torque controller gain (β ), the velocitycompensation gain (α), the number of samples used in theaveraging filter (Nav) and the sampling time (Ts).

The analysis has been performed by varying the stiffnessPgain between 1 and 20000 Nm/rad and the damping Dgain be-tween 1 and 50. The stability of the overall system is deter-mined by computing the closed loop eigenvalues and check-ing that they are inside the unit circle. In addition, whenclosed loop stability is attained, the region where the phasemargin is less than 30 degrees can be determined. These cal-culations were carried out in Matlab using the mathematicalmodel presented in Section 2.

The results are displayed in Figs. 9, 10, 11 and 12 wherethe white area corresponds to the stable region; light grey isa stable region with a phase margin of less than 30 degreesand the dark area is the unstable region. In the analysis allthe regions have been computed for the leg in stretched con-figuration JL2 = 0.439 kgm2 unless it is otherwise stated.

Fig. 9 shows that as the torque controller gain increases,the unstable region for low stiffness and damping decreasesbut the unstable region for large stiffness and/or large damp-ing increases. This clearly illustrates that increasing thetorque loop bandwidth may not be consistent with the (sta-bility) requirements for the outer impedance loop. This canbe explained if we consider that for any given system andcontroller architecture, there is a limit on the maximum loopgain that can be achieved, beyond which stability is not en-sured and performance degrades. In a nested architectureboth loops contribute to the loop gain. If the loop gain con-tribution from the torque loop increases (e.g. the gain β

increases), then the contribution from the impedance loop

should reduce otherwise closed loop stability would be lost.From Figs. 10 (a), (b) and (c) it is clear that increasing thevelocity compensation gain results in an increasing instabil-ity region. Once more this gives further evidence that as thetorque loop bandwidth increases, the outer loop may becomeunstable.

The effects of increasing the number of samples in theaveraging filter are shown in Fig. 11. Averaging a large num-ber of samples enlarges the instability region for low stiff-ness values but the unstable region for high stiffness and lowdamping decreases in size. Figure 12 clearly shows that fora large sampling time interval the region for instability is thelargest both for low and high damping and stiffness. Theregion where the phase margin is less than 30 degrees alsoincreases as the sampling time increases. For low leg iner-tia configuration in Fig. 12 (d) the instability region for lowdamping and low stiffness increases but the unstable regiondecreases for low damping and large stiffness. The regionwith a phase margin smaller than 30 degrees is also largerfor the low inertia configuration.

To determine the stability regions experimentally is notan easy task because it would involve a vey large number ofexperiments. Even only finding the stability boundaries isnot a simple task. Several experimental tests were carriedout to validate the analytical results predicted by the model.The adopted methodology was to start from values Pgain andDgain well inside the stable region and change the parame-ters in small steps until the instability was triggered. Thisenabled us to get a rough idea of the stability boundary. Theexperimental results are displayed in Fig. 9, 10, 11 and 12,where crosses and squares denote unstable and stable pointsrespectively. With the exception of Fig. 9(c) and 9 (d), over-all the experimental tests are consistent with the analyticalcalculations. Fig. 9 (b), 10 (a), 10 (b) and 11 (b) are fullyin agreement with the theoretical results. For test points nearthe stability boundaries inconsistencies are present suggest-ing that the model lacks accuracy from a quantitative pointof view but qualitatively it is correct. The experimental re-sults shown in Fig. 9 (c) and 9 (d) are quite different fromthe expected outcome. Even though a precise explanationis currently not available, the authors have several possiblehypothesis for these discrepancies: the experimental set-upmight have reached some limiting conditions, which inval-idate the linear analysis (for example by generating motorvoltages that exceed the capabilities of the motor drive elec-tronics, or by generating reference torques that exceed therange of the torque sensor). Their investigation is part of fu-ture work.

5 Passivity analysisAnother question of interest is whether the closed loop

system remains stable when it interacts with a passive envi-ronment. It is well-known that a strictly passive system, con-nected to any passive environment, is necessarily stable [16].Thus, since most terrain surfaces are passive, to ensure a sta-ble contact with the environment also the robot joints have tobe passive. This section therefore analyzes the main factors

Page 8: Robot Impedance Control and Passivity Analysis with Inner ...Robot Impedance Control and Passivity Analysis with Inner Torque and Velocity Feedback Loops Michele Focchi , Gustavo A.

0

0.5

1

1.5

2x 104

5 10 15 20 25 30 35 40 45 50D [Nms/rad]

K[N

m/rad]

(a) β = 1

0

0.5

1

1.5

2x 104

5 10 15 20 25 30 35 40 45 50D [Nms/rad]

K[N

m/rad]

(b) β = 2

0

0.5

1

1.5

2x 104

5 10 15 20 25 30 35 40 45 50D [Nms/rad]

K[N

m/rad]

(c) β = 4

0

0.5

1

1.5

2x 104

5 10 15 20 25 30 35 40 45 50D [Nms/rad]

K[N

m/rad]

(d) β = 6

Fig. 9: Stability regions varying the torque controller gain β (with α = 0.94, Nav = 4 and Ts = 1ms). White area corresponds to the stableregion; light grey is a stable region with a phase margin of less than 30 degrees and the dark area is the unstable region. Crosses andsquares denote unstable and stable experimental points respectively.

0

0.5

1

1.5

2x 104

5 10 15 20 25 30 35 40 45 50D [Nms/rad]

K[N

m/rad]

(a) α = 0

0

0.5

1

1.5

2x 104

5 10 15 20 25 30 35 40 45 50D [Nms/rad]

K[N

m/rad]

(b) α = 0.5

0

0.5

1

1.5

2x 104

5 10 15 20 25 30 35 40 45 50D [Nms/rad]

K[N

m/rad]

(c) α = 0.94

0

0.5

1

1.5

2x 104

5 10 15 20 25 30 35 40 45 50D [Nms/rad]

K[N

m/rad]

(d) α = 1.2

Fig. 10: Stability regions varying the velocity compensation gain α (with β = 1, Nav = 4 and Ts = 1ms). White area corresponds to thestable region; light grey is a stable region with a phase margin of less than 30 degrees and the dark area is the unstable region. Crosses andsquares denote unstable and stable experimental points respectively.

0

0.5

1

1.5

2x 104

5 10 15 20 25 30 35 40 45 50D [Nms/rad]

K[N

m/rad]

(a) Nav = 1

0

0.5

1

1.5

2x 104

5 10 15 20 25 30 35 40 45 50D [Nms/rad]

K[N

m/rad]

(b) Nav = 10

0

0.5

1

1.5

2x 104

5 10 15 20 25 30 35 40 45 50D [Nms/rad]

K[N

m/rad]

(c) Nav = 20

0

0.5

1

1.5

2x 104

5 10 15 20 25 30 35 40 45 50D [Nms/rad]

K[N

m/rad]

(d) Nav = 50

Fig. 11: Stability regions varying number of samples Nav of the link velocity filter (with β = 1, α = 0.94 and Ts = 1ms). White areacorresponds to the stable region; light grey is a stable region with a phase margin of less than 30 degrees and the dark area is the unstableregion. Crosses and squares denote unstable and stable experimental points respectively.

that influence passivity. Stating that a system is passive, isequivalent to saying that the system is intrinsically dissipa-tive. This is not always the case when compliance is obtainedactively, where the compliant behavior is emulated by con-trolled actuators. In this case, the controller gains can destroypassivity. The requirement to ensure this type of stability forthe robot interacting with the environment is the following:the port of interaction between the system and the environ-ment, i.e. the driving port impedance, has to be passive. Forlinear time invariant systems this is a necessary and suffi-cient condition, but it is only a sufficient condition for non-linear systems. Let Z(s) denote the driving port impedancetransfer function. Then Z(s) is passive if and only if it is pos-

itive real [29]. In [30] and [31] it has been shown that this isequivalent to:

1. Z(s) has no poles in ℜ(s)> 0;2. the phase of Z(s) lies between -90 and 90 degrees.

For sampled data control systems, Colgate [30] has sug-gested an approximate method based on computing the cor-responding discrete time transfer function Z(z), assumingthat the port of interaction is also sampled. The phase of Z(z)is computed and corrected by subtracting ωTs/2 rad, whereTs is the sampling time interval. Although many studies havebeen carried out for analyzing the passivity of sampled-datasystems [32], there is still a lack of information about the

Page 9: Robot Impedance Control and Passivity Analysis with Inner ...Robot Impedance Control and Passivity Analysis with Inner Torque and Velocity Feedback Loops Michele Focchi , Gustavo A.

0

0.5

1

1.5

2x 104

5 10 15 20 25 30 35 40 45 50D [Nms/rad]

K[N

m/rad]

(a) Ts = 1ms

0

0.5

1

1.5

2x 104

5 10 15 20 25 30 35 40 45 50D [Nms/rad]

K[N

m/rad]

(b) Ts = 6ms

0

0.5

1

1.5

2x 104

5 10 15 20 25 30 35 40 45 50D [Nms/rad]

K[N

m/rad]

(c) Ts = 8ms

0

0.5

1

1.5

2x 104

5 10 15 20 25 30 35 40 45 50D [Nms/rad]

K[N

m/rad]

(d) JL2 = 0.129 kgm2

Fig. 12: (a),(b),(c) Stability regions varying the sampling times Ts (with β = 1, Nav = 4, α = 0.94). (d) Stability region for retracted leg(lower inertia) JL2 = 0.129 kgm2 (with β = 1, α = 0.94, Nav = 4 and Ts = 1ms). White area corresponds to the stable region; light grey isa stable region with a phase margin of less than 30 degrees and the dark area is the unstable region. Crosses and squares denote unstableand stable experimental points respectively.

influence of the closed-loop torque control bandwidth onthe combinations of stiffness and damping that can be pas-sively rendered (in the field of haptics called Z-width) [13].Therefore, this section will show that the torque loop per-formance plays an important role in determining the rangeof passively achievable impedance values. The discrete timetransfer function Z(z) (impedance) has been computed fromthe link velocity θL1 to the load disturbance Tdist . The trans-fer function has been computed for two cases: one for thetorque loop (with velocity compensation) and one for thesystem after closing the outer impedance loop. Then theabove-mentioned phase correction is applied to include thefact that the system is sampled. In the approach presented inthis paper the analysis of passivity has been done by varyingseveral parameters to have a better understanding of their in-fluence: the gain of the PI torque controller (by varying thegain β in Eqn. (7)), the velocity compensation gain α , thesampling time Ts, and the number of samples Nav of the aver-aging filter of the link velocity. For each set of parameters theanalysis was performed by first checking the stability of Z(z)and then verifying that the corrected phase of Z(z) was inthe range ±90 for frequencies up to the Nyquist frequency.If these conditions are not satisfied then Z(z) is not passivefor the particular set of parameter values. The results of thisanalysis are summarized in Table 2.

In this table the nominal set of parameters are: α = 0.94,Nav = 4 samples, leg inertia JL2 = 0.439 kgm2, Pt = 0.38 andIt = 18. The overall (impedance + torque loop) system is al-ways passive for low impedances Pgain = 200 Dgain = 10while passivity might be destroyed when the torque con-troller gain β (and so the torque bandwidth) increases or thesampling frequency decreases. In particular it can be noticedthat when the torque gain is larger than or equal to 4 theclosed loop system with the impedance loop becomes unsta-ble. This is a clear indication that increasing the bandwidthof the torque loop is not always consistent with the require-ments of the position loop. When only the torque loop isclosed the system is almost never passive except for low val-ues of α . The table shows that the velocity compensation isthe key parameter affecting the passivity if the torque loopalone is considered. In particular when the amount of veloc-

Table 2: Passivity

Torque Imp. loop Imp. looploop Pgain = 200 P = 20000

Dgain = 10 D = 50β = 1 No Yes Yesβ = 0.5 No Yes Noβ = 2 No Yes Noβ = 4 No Yes Unstableβ = 6 No Yes Unstableα = 0 Yes Yes Yesα = 0.5 Yes Yes YesTs = 4 ·10−3[s] No Yes NoTs = 2 ·10−3[s] No Yes NoTs = 0.5 ·10−3[s] No Yes YesAverag. Nav = 1 No Yes YesAverag. Nav = 10 No Yes YesAverag.Nav = 20 No Yes YesAverag. Nav = 50 No Yes YesLow leg Inertia(ret.) JL2 = 0.129kgm2

No Yes Yes

ity compensation increases, the inner torque loop becomesnot passive and therefore the torque control system alonecan become unstable when the leg interacts with some en-vironments. Further analysis showed that the system (with-out closing the impedance loop) becomes unstable if the legis in contact with an environment with a stiffness KL2 be-tween 72Nm/rad and 3500Nm/rad. This has been verifiedwith experimental tests using the test setup depicted in Fig.13 by commanding a leg motion to have an impact against aphysical spring. This spring is positioned in order to create acertain stiffness KL2.

Figure 14 shows the phase of Z(z) when only the torqueloop is closed (β = 1 and α = 0.94) and when both the torqueand the impedance loops are closed (Pgain = 200, Dgain =10). The curves illustrate that, in the case of the torque loopalone, the phase of Z(z) exceeds 90 degrees between 10 and

Page 10: Robot Impedance Control and Passivity Analysis with Inner ...Robot Impedance Control and Passivity Analysis with Inner Torque and Velocity Feedback Loops Michele Focchi , Gustavo A.

Fig. 13: Experimental setup for passivity tests. The rotational stiff-ness KL2 is obtained by positioning a linear spring at a certain dis-tance from the HAA axis.

50 rad/s, indicating the loss of passivity, while, when theouter loop is closed, the phase always remains within ±90degrees, demonstrating that the passivity property is ensuredas indicated in Table 2.

100

101

102−90

−55

−20

15

50

85

120

6Z(z)[deg]

Frequency [rad/s]

Torque loopImpedance loop

Fig. 14: Simulation. Phase plot of the driving port impedance Z(z)when only the torque loop is closed (β = 1 and α = 0.94) (redplot) and when both the torque and the impedance loops are closed(Pgain = 200, Dgain = 10) (blue plot). The black line shows the limitof 90 degrees.

6 Conclusions and future workThis paper presented a methodology for designing joint

impedance controllers based on an inner torque loop and apositive velocity feedback loop. In particular, it was shownthat the positive velocity feedback can be used to increase the

closed loop bandwidth of the torque loop without the need ofa complex controller.

It has been demonstrated that besides the sampling fre-quency and filtering, the bandwidth of the torque loop hasa strong influence on the range of impedance parameters(Z-width) that exhibit a passive and/or stable behavior. In-deed, larger inner loop bandwidth can be beneficial fordisturbance rejection and to improve the tracking of theimpedance (enlarge the range of frequencies for which thedesired impedance is emulated by the system) but, at thesame time, it can reduce the region of stable impedance pa-rameters. This fact can limit the performance and versa-tility of a robot. Thus, the highest possible bandwidth forthe torque loop might not be the best solution for all situa-tions. It is therefore important to find a balance between thetorque loop requirements (e.g. to have a good torque track-ing) and the stability/passivity specifications of the overallsystem. Furthermore, it has become evident that, even forsimple controllers, the design problem is challenging andthat there are competing trade-offs to consider when select-ing the controller gains.

This suggests that there is a need for a problem formu-lation that can encompass the design objectives in a moresystematic and generic framework. There are a number ofareas that need further research and are left for future work.Adaptive schemes (e.g. gain scheduling) can be developed tomodify the torque controller gains to satisfy the constraintsof stability/passivity given by the desired impedance param-eters specified by the system designer. The torque gains canalso be modified depending on the load inertia variations thatis changing with the leg configuration. In addition, vary-ing the location of the PI torque controller zero can provideimprovements in performance. The torque controller archi-tecture can also be enhanced to reduce the effects of torqueripples arising in the gear transmission system (drive jitter).Since increasing the torque controller gain has been shownto be detrimental, this option for mitigating the drive jittercan be discarded and more different solutions must be found.Finally, there is a need to develop strategies to quantify therange of impedances that are required for specific tasks. Atpresent there are some guidelines that only provide qualita-tive results, for example a high stiffness (Pgain) is specifiedwhen there is contact with a compliant environment and thepositioning accuracy is important. On the other hand, a lowstiffness is used to maintain small contact forces or when theenvironment is stiff. Similarly, large damping values (Dgain)are needed to reduce vibrations or to quickly dissipate en-ergy. Future work also encompasses an extension of themethodology presented in this paper to include multi-degreeof freedom systems.

AcknowledgmentsThis research has been funded by the Fondazione IstitutoItaliano di Tecnologia. J. Buchli is supported by a SwissNational Science Foundation professorship.

Page 11: Robot Impedance Control and Passivity Analysis with Inner ...Robot Impedance Control and Passivity Analysis with Inner Torque and Velocity Feedback Loops Michele Focchi , Gustavo A.

References[1] Pratt, G., 2002. “Low impedance walking robots”. In-

tegr Comp Biol, 42(1), pp. 174–181.[2] Buchli, J., Kalakrishnan, M., Mistry, M., Pastor, P., and

Schaal, S., 2009. “Compliant quadruped locomotionover rough terrain”. In Proc. IEEE/RSJ Int. Conf. In-telligent Robots and Systems (IROS).

[3] Tsagarakis, N., Morfey, S., Medrano-Cerda, G., Li,Z., and Caldwell, D., 2013. “Coman a compliant hu-manoid: Optimal joint stiffness tuning for modal fre-quency control”. In IEEE ICRA.

[4] Albu-Schaffer, A., Haddadin, S., Ott, C., Stemmer,A., Wimbock, T., and Hirzinger, G., 2007. “Thedlr lightweight robot: design and control concepts forrobots in human environments”. Industrial Robot: AnInternational Journal, 34(5), pp. 376 – 385.

[5] Ferris, D. P., Louie, M., and Farley, C. T., 1998. “Run-ning in the real world: adjusting leg stiffness for differ-ent surfaces”. Proc. R. Soc. Lond. B, 265, pp. 989–994.

[6] Hogan, N., 1985. “Impedance control: An approachto manipulation: Part II – Implementation”. ASME,Transactions, Journal of Dynamic Systems, Measure-ment, and Control, 107, pp. 8–16.

[7] Khatib, O., 1987. “A unified approach for motion andforce control of robot manipulators: The operationalspace formulation”. IEEE Journal of Robotics and Au-tomation, 3(1), pp. 43–53.

[8] Raibert, M., and Craig, J., 1981. “Hybrid position/forcecontrol of manipulators”. ASME Journal of DynamicSystems, Measurement, and Control, 107, pp. 126–133.

[9] Pratt, J., Chew, C., Torres, A., Dilworth, P., and Pratt,G., 2001. “Virtual model control: An intuitive approachfor bipedal locomotion”. The International Journal ofRobotics Research, 20(2), pp. 129–143.

[10] Pratt, G., and Williamson, M., 1995. “Series elasticactuators”. In Proc. IEEE/RSJ Int. Conf. IntelligentRobots and Systems (IROS).

[11] Boaventura, T., Semini, C., Buchli, J., Frigerio, M.,Focchi, M., and Caldwell, D. G., 2012. “Dynamictorque control of a hydraulic quadruped robot”. In Proc.IEEE Int. Conf. Robotics and Automation (ICRA).

[12] de Luca, A., and Lucibello, P., 1998. “A general al-gorithm for dynamic feedback linearization of robotswith elastic joints”. In Proc. Conf. IEEE Int Roboticsand Automation (ICRA).

[13] Colgate, J. E., and Brown, J. M., 1994. “Factors affect-ing the z-width of a haptic display”. In Proc. IEEE Int.Conf. Robotics and Automation (ICRA).

[14] Ellis, G., 2000. Control System Design Guide. 2ndedition, Academic Press, London.

[15] Janabi-Sharifi, F., Hayward, V., and Chen, C.-S., 2000.“Discrete-time adaptive windowing for velocity esti-mation”. Control Systems Technology, IEEE Transac-tions on, 8(6), nov, pp. 1003 –1009.

[16] Colgate, E., and Hogan, N., 1989. “An analysis ofcontact instability in terms of passive physical equiva-lents”. In Proc. IEEE Int. Conf. Robotics and Automa-tion (ICRA).

[17] Focchi, M., Boaventura, T., Semini, C., Frigerio, M.,Buchli, J., and Caldwell, D. G., 2012. “Torque-controlbased compliant actuation of a quadruped robot”. InProc. of the 12th IEEE Int. Workshop on AdvancedMotion Control (AMC).

[18] Semini, C., 2010. “HyQ – design and development ofa hydraulically actuated quadruped robot”. PhD the-sis, Italian Institute of Technology and University ofGenoa.

[19] Boaventura, T., Cerda, G., Semini, C., Buchli, J., andCaldwell, D., 2013. “Stability and performance ofthe compliance controller of the quadruped robot hyq”.In submitted to Proc. IEEE/RSJ Int. Conf. IntelligentRobots and Systems (IROS).

[20] Hogan, N., and Colgate, E., 1989. “Stability problemsin contact tasks”. In The robotics review 1, MIT Press,pp. 339–348.

[21] Kazerooni, H., Sheridan, T., and Houpt, P., 1986. “Ro-bust compliant motion for manipulators, part i: Thefundamental concepts of compliant motion”. IEEEJournal of Robotics and Automation, 2(2), pp. 83–92.

[22] Lawrence, D. A., 1988. “Impedance control stabil-ity properties in common implementations”. In Proc.Conf. IEEE Int Robotics and Automation (ICRA).

[23] Albu-Schaffer, A., Ott, C., and Hirzinger, G., 2004. “Apassivity based cartesian impedance controller for flex-ible joint robots - part ii: full state feedback, impedancedesign and experiments”. In Proc. IEEE Int. Conf.Robotics and Automation (ICRA).

[24] Buerger, S. P., and Hogan, N., 2007. “Complementarystability and loop shaping for improved human-robotinteraction”. IEEE Transactions on Robotics, 23(2),pp. 232–244.

[25] Surdilovic, D., 2007. “Robust control design ofimpedance control for industrial robots”. In Proc.IEEE/RSJ Int. Conf. Intelligent Robots and Systems(IROS), pp. 3572–3579.

[26] Hori, Y., Iseki, H., and Sugiura, K., 1994. “Basic con-sideration of vibration suppression and disturbance re-jection control of multi-inertia system using sflac (statefeedback and load acceleration control)”. IEEE Trans-actions on Industry Applications, 30(4), pp. 889–896.

[27] Focchi, M., 2013. “Strategies to improve theimpedance control performance of a quadruped robot”.PhD thesis, Istituto Italiano di Tecnologia and Univer-sity of Genoa.

[28] Boaventura, T., Focchi, M., Frigerio, M., Buchli, J.,Semini, C., Medrano-Cerda, G. A., and Caldwell,D. G., 2012. “On the role of load motion compensationin high-performance force control”. In Proc. IEEE/RSJInt. Conf. Intelligent Robots and Systems (IROS).

[29] Anderson, B. D. O., and Vongpanitlerd, S., 2006. Net-work analysis and synthesis: a modern systems theoryapproach. Courier Dover Publications.

[30] Colgate, J. E., 1994. “Coupled stability of multiportsystems – theory and experiments”. Transactions ofASME, Journal of Dynamic Systems, Measurement ,and Control, 116, pp. 419–428.

Page 12: Robot Impedance Control and Passivity Analysis with Inner ...Robot Impedance Control and Passivity Analysis with Inner Torque and Velocity Feedback Loops Michele Focchi , Gustavo A.

[31] Colgate, J., 1986. “The control of dynamically inter-acting systems”. PhD thesis, Massachusetts Institute ofTechnology, Cambridge, Massachusetts.

[32] Colgate, J. E., and Schenkel, G. G., 1997. “Passivity ofa class of sampled-data systems: Application to hapticinterfaces”. Journal of Robotic Systems, 14(1), pp. 37–47.