0% found this document useful (0 votes)
90 views16 pages

Impedance Control: Robotics 2

Impedance control allows a robot to behave like a virtual spring-damper system during physical interaction. The desired dynamic behavior is specified through a generalized impedance model, typically chosen as linear. This allows contact forces to be indirectly regulated without an explicit force control loop. The impedance parameters, such as stiffness, represent a tradeoff between position accuracy and contact force. Simpler variations of impedance control can achieve compliant motion without force sensing.

Uploaded by

Karen Immanuel
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
90 views16 pages

Impedance Control: Robotics 2

Impedance control allows a robot to behave like a virtual spring-damper system during physical interaction. The desired dynamic behavior is specified through a generalized impedance model, typically chosen as linear. This allows contact forces to be indirectly regulated without an explicit force control loop. The impedance parameters, such as stiffness, represent a tradeoff between position accuracy and contact force. Simpler variations of impedance control can achieve compliant motion without force sensing.

Uploaded by

Karen Immanuel
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 16

Robotics 2

Impedance Control

Prof. Alessandro De Luca


Impedance control
!  imposes a desired dynamic behavior to the interaction between
robot end-effector and environment
!  the desired performance is specified through a generalized dynamic
impedance, namely a complete set of mass-spring-damper equations
(typically chosen as linear and decoupled, but also nonlinear)
!  a model describing how reaction forces are generated in association
with environment deformation is not explicitly required
!  suited for tasks in which contact forces should be “kept small”, while
their accurate regulation is not mandatory
!  since a control loop based on force error is missing, forces are only
indirectly assigned by controlling position
!  the choice of a specific stiffness in the impedance model along a
Cartesian direction results in a trade-off between contact forces and
position accuracy in that direction

Robotics 2 2
Dynamic model of a robot in contact
T generalized
N=M B(q)q
˙˙ + S(q, q˙ )q˙ + g(q) = u + J (q)F Cartesian force

“geometric” “analytic”
(linear) forces Jacobian Jacobian
#"!
& # p˙ & # p˙ &
F = % ( ) IR performing work on v = % ( = J(q)q˙ ) x˙ = % ˙ ( = Ja (q)q˙
M

$µ' $" ' $* '


(angular) torques
angular velocity derivative of
direct kinematics
df(q) Euler angles
Ja (q) = = Ta (" )J(q) x˙ = Ta (")v
! dq !

˙˙ + S(q, q˙ )q˙ + g(q) = u + JaT (q)Fa with Fa = Ta"T (#)F


B(q)q
!
!
generalized forces performing work on x˙

Robotics 2 3
! !
!
Dynamic model in Cartesian coordinates
B x (q)˙x˙ + S x (q, q˙ ) x˙ + gx (q) = J"T
a (q)u + Fa

with
B x (q) = J"T
a (q)B(q)J"1
a (q)
! ˙ (q, q˙ )J"1(q)
S x (q, q˙ ) = J"T
a (q) S(q, q
˙ )J"1
a (q)" B x (q) Ja a

gx (q) = J"T
a (q)g(q)

...and the usual structural properties


"  Bx(q) > 0, if Ja(q) is non-singular
!
˙ " 2S is skew-symmetric, if B˙ " 2S satisfies the
"  B x x
same property
"  the Cartesian dynamic model of the robot is linearly
! ! of a set of dynamic coefficients
parameterized in terms
Robotics 2 4
Design of the control law
designed in two steps:
1.  feedback linearization in the Cartesian space
u = JaT (q)[B x (q)a + Sx (q, q˙ ) x˙ + gx (q) " Fa ]
˙x˙ = a closed-loop system
2.  imposition of a dynamic impedance model
! times
most of the
it is “decoupled” Bm (˙x˙ " ˙x˙d ) + Dm ( x˙ " x˙ d ) + K m ( x " xd ) = Fa
(diagonal matrices) !
desired (apparent) desired desired external forces
inertia (> 0) damping (! 0) stiffness (> 0) from the environment
is realized by choosing
!
a = ˙x˙d + B"1
m [Dm ( xd " x) + K m ( xd " x) + Fa ]
˙ ˙

Note: xd(t) is the desired motion, which typically “slightly penetrates”


inside the compliant environment (keeping thus contact)...
Robotics 2 5
!
Examples of desired reference xd
in impedance/compliance control

Bm (˙x˙ " ˙x˙d ) + Dm ( x˙ " x˙ d ) + K m ( x " xd ) = Fa

the desired motion xd(t) is slightly inside


the environment (keeping thus contact)
!
xe xd(t)

xd(t)

robot in grinding task robot writing on a surface


Robotics 2 6
Examples of desired reference xd
in impedance/compliance control

Bm (˙x˙ " ˙x˙d ) + Dm ( x˙ " x˙ d ) + K m ( x " xd ) = Fa

constant desired pose xd is the free Cartesian


rest position in a human-robot interaction task
!
xd

xd

KUKA iiwa robot with human operator KUKA LWR robot in pHRI (collaboration)
Robotics 2 7
Control law in joint coordinates
substituting and simplifying…

u = B(q)J"1(q){˙x
˙ " ˙ (q)q˙ + B"1[D ( x˙ " x˙ ) + K ( x " x)]}
J
a d a m m d m d

+ S(q, q˙ )q˙ + g(q) + JaT (q) B x (q)B"1


[ ]
m " I Fa

matrix weighting the measured contact forces


"  the following identity holds for the term involving contact forces
!
JaT (q)[B x (q)B"1
m " I] a [ a m a (q)]Fa
F = B(q)J"1
(q)B"1
" J T

which eliminates from the control law also the appearance of the
last remaining Cartesian quantity (the Cartesian inertia matrix)

!"  while the principle of control design is based on dynamic analysis and
desired (impedance) behavior as described in the Cartesian space, the
final control implementation is always made at robot joint level

Robotics 2 8
Choice of the impedance model
rationale ...
!  avoid large impact forces due to uncertain geometric characteristics
(position, orientation) of the environment
!  adapt/match to the dynamic characteristics (in particular, stiffness)
of the environment, in a complementary way
!  mimic the behavior of a human arm
# fast and stiff in free motion, slow and compliant in “safeguarded” motion

!  large Bm,i and small Km,i in Cartesian directions where contact is


foreseen (䚉 low contact forces)
!  large Km,i and small Bm,i in Cartesian directions that are supposed to
be free (䚉 good tracking of desired motion trajectory)
!  damping coefficients Dm,i are used to shape transient behaviors

Robotics 2 9
Human arm behavior

hard environment

expected contact motion


= soft motion control

expected free motion


= stiff motion control

in selected directions:
the stiffer is the environment, the softer is the chosen model stiffness Km,i
Robotics 2 10
A notable simplification -1

choose the apparent inertia equal to the natural Cartesian inertia of the robot

Bm = B x (q) = J"a T (q)B(q)J"1


a (q)

then, the control law becomes


u = B(q)J"1
a (q) ˙x˙d " J˙ a (q)q˙ + S(q, q˙ )q˙ + g(q)
[ ]
!
+ JaT (q)[Dm ( x˙ d " x˙ ) + K m ( xd " x)]
WITHOUT contact force feedback! (a F/T sensor is no longer needed…)

! actually, this is a pure motion control during interaction,


designed so as to keep limited contact forces at the end-effector level
(as before, Km is chosen as a function of the expected environment stiffness)

Robotics 2 11
A notable simplification -2
technical issue: if the impedance model (now, nonlinear) is still supposed to
represent a real mechanical system, then in correspondence to a desired
non-constant inertia (Bx(q)) there should be Coriolis and centrifugal terms...

B x (q) ( ˙x˙ " ˙x˙ d ) + (Sx (q, q˙ ) + Dm )( x˙ " x˙ d ) + K m ( x " x d ) = Fa


nonlinear impedance model (“only” gravity terms disappear)
redoing computations, the control law becomes
! ˙J (q)J-1 (q) x˙ + S(q, q˙ )J-1 (q) x˙ + g(q)
u = B(q)J"1
a (q) x
˙˙ [
d " a a d ] a d

+ JaT (q)[Dm ( x˙ d " x˙ ) + K m ( x d " x )]


which is indeed slightly more complex, but has the following advantages:
"  guarantee of asymptotic convergence to zero tracking error (on xd(t))
! when Fa = 0 (no contact situation) ⇒ Lyapunov + skew-symmetry of Bx " 2Sx
˙
"  further simplification when xd is constant

Robotics 2 12
!
Cartesian regulation revisited
(with no contact, Fa = 0)

if xd is constant ( x˙ d = 0, x
˙˙ d = 0) , from the previous expression we obtain
the control law
u = g(q) + JaT (q)[K m ( xd " x) " Dmx˙ ] (*)
!
Cartesian PD with gravity cancelation…

when Fa =!0 (absence of contact), we know already that this law ensures
asymptotic stability of xd , provided Ja(q) has full rank

proof T
(alternative) Lyapunov candidate V1 = 21 x˙ TB x (q) x˙ + 21 ( xd " x) K m ( xd " x)

˙ = x˙ TB (q)˙x˙ + 1 x˙ TB˙ (q) x˙ " x˙ TK ( x " x) = … = " x˙ TD x˙ # 0


V1 x 2 x m d m

using skew-symmetry
! of B˙ x " 2S x and gx = J"T
a g

!
Robotics 2 13

! !
Cartesian stiffness control
(in contact, Fa " 0)
when Fa " 0, convergence to xd is not assured
(it may not even be a closed-loop equilibrium…)

"  for analysis, assume an elastic contact model for the environment
Fa = Ke(xe − x) with stiffness Ke ! 0 and rest position xe
"  closed-loop system behavior
Lyapunov candidate
T T
V2 = 21 x˙ TB x (q) x˙ + 21 ( xd " x) K m ( xd " x) + 21 ( xe " x) K e ( xe " x)
T
= V1 + 21 ( xe " x) K e ( xe " x)

˙ = x˙ TB (q)˙x˙ + 1 x˙ TB˙ (q) x˙ " x˙ TK ( x " x) " x˙ TK ( x " x)


V2 x 2 x m d e e

! = … = "x˙ TDmx˙ + x˙ T (Fa " K e ( xe " x)) = " x˙ TDmx˙ # 0

Robotics 2 14

!
Stability analysis (with Fa " 0)

when x˙ = ˙x˙ = 0 , at the closed-loop system equilibrium it is

Km(xd − x) + Ke(xe − x) = 0, which has the unique solution

! x = (Km + Ke)-1 (Km xd + Ke xe) =: xE

(check that the Lyapunov candidate V2 has in fact its minimum in xE!!)

LaSalle xE asymptotically stable equilibrium

xe for Ke >> Km (rigid environment)


xE #
xd for Km >> Ke (rigid controller)

Note: the Cartesian stiffness control law (*) is often called


also compliance control in the literature
Robotics 2 ! 15

!
“Active” equivalent of RCC device
IF "  displacement from the desired position xd are small, namely
(xd − x) # Ja(qd − q)
"  g(q) = 0 (gravity is compensated/canceled, e.g. mechanically)
"  Dm = 0

THEN u = JaT (q)K mJa (q)(qd " q) = K x (q)(qd " q)

a variable joint level stiffness Kx(q) corresponds to a


! constant Cartesian level stiffness Km (and vice versa)

active counterpart of the Remote Center of Compliance (RCC) device

Robotics 2 16

You might also like