Impedance Control: Robotics 2
Impedance Control: Robotics 2
Impedance Control
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
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)
xd(t)
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
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
Robotics 2 9
Human arm behavior
hard environment
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
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...
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)
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)
Robotics 2 14
!
Stability analysis (with Fa " 0)
(check that the Lyapunov candidate V2 has in fact its minimum in xE!!)
!
“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
Robotics 2 16