12 InverseDiffKinStatics PDF
12 InverseDiffKinStatics PDF
Robotics 1
find the joint velocity vector that realizes a desired endeffector generalized velocity (linear and angular)
generalized velocity
v = J(q) q
!
J square and
non-singular
q = J-1(q) v
problems
!
!
.
near a singularity of the Jacobian matrix (high q)
for redundant robots (no standard inverse of a rectangular matrix)
in these cases, more robust inversion methods are needed
Robotics 1
Incremental solution
r = fr (q)
direct kinematics
r " r + dr
!
!
differential kinematics
r + dr = fr!(q)
q = fr "1 (r + dr)
dq = Jr "1 (q)dr
!
first, solve the inverse
q " q+ dq
v
constant
!
motion
start
Robotics 1
Simulation results
.
q = J-1(q) v
regular case
end
start
Simulation results
q1
path at
#=170
regular
case
Robotics 1
q2
error due
only to
numerical
integration
(10-10)
Simulation results
.
q = J-1(q) v
end
start
Simulation results
q1
path at
#=178
close to
singular
case
Robotics 1
q2
large
peak
.
of q1
still very
small, but
increased
numerical
integration
error
(210-9)
Simulation results
.
q = J-1(q) v
end
start
Simulation results
q1
path at
#=178
close to
singular
case
Robotics 1
q2
saturated
value
.
of q1
actual
position
error!!
(6 cm)
10
!
!
Robotics 1
11
Simulation results
.
q = J-1(q) v
end
.
q = JDLS(q) v
start
end
start
some
position
error ...
12
Simulation results
.
q = J-1(q) v
path at
#=179.5
.
q = JDLS(q) v
Simulation results
.
q = J-1(q) v
.
q = JDLS(q) v
q1
q2
extremely large
peak velocity
of first joint!!
Robotics 1
smooth
joint motion
with limited
joint velocities!
14
Simulation results
.
q = J-1(q) v
.
q = JDLS(q) v
increased
numerical
integration
error
(310-8)
minimum
singular
value of
T
JJ and %I+JJT
they differ only
when damping
factor is non-zero
Robotics 1
damping factor
% is chosen
non-zero
only close to
singularity!
15
Pseudoinverse method
a constrained optimization (minimum norm) problem
1
min H = q
q
2
solution!
" if
" else
1
min H = q
q "S
2
S = q " R n : J q # v is minimum
! pseudoinverse of J
!
orthogonal projection of
Robotics 1
on
16
if rank & = m = n:
if & = m < n:
17
Numerical example
Jacobian of 2R arm with l1 = l2 = 1 and q2 = 0 (rank & = 1)
y
is the minimum norm
joint velocity vector that
realizes
l1
l2
q1
x
Robotics 1
18
min H =
q
1
q " #
2
min H =
q "S
1
q # $
2
S = q " R n : J q # v is minimum
!
v actual = Jq = J ( J # v + (I!" J # J)#) = JJ # v + (J " JJ # J)# = JJ # (Jw) = (JJ # J)w = Jw = v
!
Robotics 1
19
Geometric interpretation
a simple case with n=2, m=1
at a given configuration:
J q = j1
" q %
j 2 $ 1 ' = v ( )
#q2 &
task equality
constraint
J q = v
associated
homogeneous
equation
! Jq = 0
q 2
"
minimum norm
solution
J #v
solution with
minimum norm
q " #
!
space of joint velocities
(at a configuration q)!
orthogonal
projection of
" on #(J)
Robotics 1
!
linear
subspace
!
q1
(I " J # J)#
!
"(J) = {q # $ 2 : Jq = 0}
all possible
solutions
lie on this line ...
20
acceleration-level: given q, q
!
!
jerk-level: given q, q, q
Robotics 1
21
environment
(n
(1
Fe
(3
(i
22
environment
(n
(1
Fe
(3
(i
in a given configuration
" what is the transformation between F at robot end-effector and ( at joints?
in static equilibrium conditions (i.e., no motion):
" what F will be exerted on environment by a ( applied at the robot joints?
" what ( at the joints will balance a Fe (= -F) exerted by the environment?
all equivalent formulations
Robotics 1
23
dq3
dp
) dt
= J dq
dqi
Robotics 1
24
(3dq3
(idqi
Fe = - F
dp
- FT ) dt = - FT J dq
Robotics 1
principle of
virtual work
25
generalized velocity
(or e-e displacement
in the Cartesian space
forces/torques
at the joints
generalized forces
at the Cartesian e-e
JT(q)
the singular configurations
for the velocity map are the same
as those for the force map
Robotics 1
&(J) = &(JT)
26
Robotics 1
27
n
m
&
1. & = m
1. det J ! 0
1. & = n
2. & < m
2. det J = 0
2. & < n
Robotics 1
28
-l1s1-l2s12 -l2s12
J(q) =
l1c1+l2c12 l2c12
-s1
c1
l1+l2
= l2
,(JT) = #
c1
s1
Robotics 1
-(l1+l2)s1 -l2s1
J=
(l1+l2)c1 l2c1
l2-l1
0
(for
l
=
l
,
)
1
2
= l2
1
,(JT)
+(J)
l2
,(J) = -(l1+l2)
+(JT)
J=
(l2-l1)s1 l2s1
-(l2-l1)c1 -l2c1
l2
1
(for
l
=
l
,
)
,(J) = 1
2
-(l2-l1)
0
29
Velocity manipulability
!
task velocity
manipulability ellipsoid
Robotics 1
T -1
(J J )
if & = m
30
Manipulability ellipsoid
in velocity
scale of
ellipsoid
1
manipulability ellipsoid
1
w = det JJ = # " i $ 0
manipulability measure
0
i=1
Robotics 1
Manipulability measure
2
!
/1(J)
/2(J)
max at !2="/2
max at r=.2
!2
32
Force manipulability
!
how easily can the end-effector apply generalized forces (or balance
applied ones) in the various directions of the task space
in singular configurations, there are directions in the task space where
external forces/torques are balanced by the robot without the need of
any joint torque
task force
manipulability ellipsoid
33
note:
velocity and force
ellipsoids have here
a different scale
for a better view
#1
1
1
%
$1 (J) $2 (J)
34
same reasoning made for relating end-effector to joint forces/torques (virtual work
principle + static equilibrium) used also transforming forces and torques applied at
different places of a rigid body and/or expressed in different reference frames
#Bv &
) A RB S( B rBA ) &# B v &
(% B B ( = J BA % B B (
A
RB
('$ " '
$ "'
B
A
"
"B f %
"
%
RA
f
T
$ B B ' = J BA $ A A ' = $ T B
B
(S
(
r
)
RA
# m&
# m & $#
BA
0 %" A f %
'$ A A '
B
RA '& # m &
Robotics 1
35
RFA
JBA!
f
JBAT!
RFB
frame of interest for evaluating
forces/torques in a task
with environment contact
Robotics 1
36
motor
link
.
! u
.
!m um
torque at
motor side
torque at
link side
.
.
!m = N !
u = N um
here, J = JT = N (a scalar!)
37