Upload
ivan-avramov
View
215
Download
0
Embed Size (px)
Citation preview
7/28/2019 12_Inverse Diff Kin Statics
1/35
Robotics 1
Inverse differential kinematics
Statics
Prof. Alessandro De Luca
Robotics 1 1
7/28/2019 12_Inverse Diff Kin Statics
2/35
Inversion of differential kinematics
find the joint velocity vector that realizes a desired end-effector generalized velocity (linear and angular)
problems near a singularity of the Jacobian matrix (high q) for redundant robots (no standard inverse of a rectangular matrix)
v = J(q) q.
q = J-1(q) v.
J square andnon-singular
in these cases, more robust inversion methods are needed
.
generalized velocity
Robotics 1 2
7/28/2019 12_Inverse Diff Kin Statics
3/35
Behavior near a singularity
problems arise only whencommanding joint motion byinversion of a given Cartesianmotion task
figure shows a linear Cartesiantrajectory for a planar 2R robot
there is a sudden increase ofthe displacement/velocity of thefirst joint near 2=- (end-effector close to the origin),despite the required Cartesiandisplacement is small
q = J
-1(q) v.
Robotics 1 3
7/28/2019 12_Inverse Diff Kin Statics
4/35
Simulation resultsplanar 2R robot in straight line Cartesian motion
q = J-1(q) v.
Robotics 1 4
a line from right to left, at =170 angle with x-axis,executed at constant speed v=0.6 m/s for T=6 s
start
end
regular case
7/28/2019 12_Inverse Diff Kin Statics
5/35
Simulation resultsplanar 2R robot in straight line Cartesian motion
Robotics 1 5
path at=170
regular
case
q1
q2
onlyintegration
error!!(10-10)
7/28/2019 12_Inverse Diff Kin Statics
6/35
Simulation resultsplanar 2R robot in straight line Cartesian motion
q = J-1(q) v.
Robotics 1 6
a line from right to left, at =178 angle with x-axis,executed at constant speed v=0.6 m/s for T=6 s
close to singular case
startend
7/28/2019 12_Inverse Diff Kin Statics
7/35
Simulation resultsplanar 2R robot in straight line Cartesian motion
Robotics 1 7
path at=178
close tosingular
case
q1
q2
increasedintegration
error
(210-9)
largepeakofq1
.
7/28/2019 12_Inverse Diff Kin Statics
8/35
Simulation resultsplanar 2R robot in straight line Cartesian motion
q = J-1(q) v.
Robotics 1 8
a line from right to left, at =178 angle with x-axis,executed at constant speed v=0.6 m/s for T=6 s
close to singular casewith joint velocity saturation at Vi=300/s
startend
7/28/2019 12_Inverse Diff Kin Statics
9/35
Simulation resultsplanar 2R robot in straight line Cartesian motion
Robotics 1 9
path at=178
close tosingular
case
q1
q2
actualposition
error!!(6 cm)
saturatedvalueofq1
.
7/28/2019 12_Inverse Diff Kin Statics
10/35
Damped Least Squares method
inversion of differential kinematics as an optimization problem function H = weighted sum of two objectives (minimum error on
achieved end-effector velocity and minimum joint velocity)
= 0 when far enough from a singularity with > 0, there is a (vector) error(=v Jq) in executing the
desired end-effector velocity v(check that !), butthe joint velocities are always limited (damped)
JDLS can be used both for m = n and for m < n
equivalent expressions, but this one is more convenient in redundant robots!
Robotics 1 10
JDLS
= Im+ J J
T( )1
v
.
7/28/2019 12_Inverse Diff Kin Statics
11/35
Simulation resultsplanar 2R robot in straight line Cartesian motion
q = JDLS(q) v.
Robotics 1 11
a line from right to left, at =179.5 angle with x-axis,executed at constant speed v=0.6 m/s for T=6 s
a comparison of inverse and damped inverse Jacobian methodseven closer to singular case
startend
q = J-1(q) v.
startend
somepositionerror ...
7/28/2019 12_Inverse Diff Kin Statics
12/35
Simulation resultsplanar 2R robot in straight line Cartesian motion
q = JDLS(q) v.
Robotics 1 12
q = J-1(q) v.
here, a very fastreconfiguration of
first joint ...
a completely different inverse solution,while crossing the region
close to the folded singularity
path at=179.5
7/28/2019 12_Inverse Diff Kin Statics
13/35
Simulation resultsplanar 2R robot in straight line Cartesian motion
q = JDLS(q) v.
Robotics 1 13
q = J-1
(q) v.
extremely largepeakvelocityof first joint!!
very smoothjoint motionwith limited
joint velocities!
q1
q2
7/28/2019 12_Inverse Diff Kin Statics
14/35
Simulation resultsplanar 2R robot in straight line Cartesian motion
q = JDLS(q) v.
Robotics 1 14
q = J-1
(q) v.
minimumsingularvalue of
JJT
and I+JJT
some actualerror (25 mm)at singularitycrossing, laterrecovered by
feedback action
(v v+Ke)
increased
integrationerror(310-8)
they only differwhen damping
factor is non-zero
damping factoris chosennon-zero
only close tosingularity!
7/28/2019 12_Inverse Diff Kin Statics
15/35
Use of the pseudo-inverse
such that
solution pseudo-inverse of J
a constrained optimization (minimum norm) problem
if , the constraint is satisfied ( is feasible) else where minimizes the error
orthogonal projection of on
Robotics 1 15
7/28/2019 12_Inverse Diff Kin Statics
16/35
Properties of the pseudo-inverse
if rank = m = n:
if = m < n:
it is the unique matrix that satisfies the four relationships
it always exists and is computed in general numericallyusing the SVD = Singular Value Decomposition of J(e.g., with the MATLAB function pinv)
Robotics 1 16
7/28/2019 12_Inverse Diff Kin Statics
17/35
Numerical example
Jacobian of 2R arm with l1 = l2 = 1 and q2 = 0 (rank = 1)
x
y
l1l2
is the minimum norm
joint velocity vector that
realizes q1
Robotics 1 17
7/28/2019 12_Inverse Diff Kin Statics
18/35
General solution for m
7/28/2019 12_Inverse Diff Kin Statics
19/35
Velocity manipulability
in a given configuration, we wish to evaluate how effectiveis the mechanical transformation between joint velocities andend-effector velocities how easily can the end-effector be moved in the various directions
of the task space
equivalently, how far is the robot from a singular condition we consider all end-effector velocities that can be obtained
by choosing joint velocity vectors ofunit norm
taskvelocitymanipulability ellipsoid (JJT)-1 if = m
Robotics 1 19
Rem: the core matrix of the ellipsoidequation vTA-1 v=1 is the matrix A!
7/28/2019 12_Inverse Diff Kin Statics
20/35
Manipulability ellipsoidin velocity
direction of principal axes:(orthogonal) eigenvectorsassociated to
i
length of principal (semi-)axes:singular values of J (in its SVD)
in a singularity, the ellipsoidloses a dimension
(for m=2, it becomes a segment)
proportional to the volume of theellipsoid (for m=2, to its area)
planar 2R arm with unitary links
Robotics 1 20
w=
detJJ
T=
ii=1
m
0
7/28/2019 12_Inverse Diff Kin Statics
21/35
best posture for manipulation
(similar to a human arm!)
Manipulability measure
planar 2R arm with unitary links: Jacobian J is square
Robotics 1 21
det JJT
( )= detJ
detJ
T= detJ =
ii=1
2
2 r r
max at 2=/2 max at r=2
1(J)
2(J)
full isotropy is never obtainedin this case, since it always 12
7/28/2019 12_Inverse Diff Kin Statics
22/35
Statics - Transformation of forces
1
2
i
n
F
3
= vector of forces/torques at the joints F = vector of forces/torques exerted from the robot end-effector to the
environment (equal and opposite to the reaction forces/torques from
the environment to the robot end-effector)
which is the relation between and Fin a static equilibrium(i.e., with the robot remaining at rest)?
environment
Robotics 1 22
7/28/2019 12_Inverse Diff Kin Statics
23/35
Statics - Equivalent formulations
1
2
i
n
F
3
which should be provided by the motors at the joints so that the robotend-effector applies F to the environment?
which at the joints balances a -F exerted from the environment? which is the force/torque felt at the joints in the presence of a -F
exerted at the robot end-effector?
in a given configuration
Robotics 1 23
7/28/2019 12_Inverse Diff Kin Statics
24/35
Virtual displacements and work
infinitesimal (or virtual, i.e., satisfying all possible
constraints imposed on the system) displacementsat an equilibrium
without kinetic energy variation (zero acceleration)without dissipative effects (zero velocity)
the virtual work is the work done by all forces/torquesacting on the system for a given virtual displacement
dq1
dq2dqi
dqn
dq3
dp dt
= Jdq
Robotics 1 24
7/28/2019 12_Inverse Diff Kin Statics
25/35
Principle of virtual work
the sum of the virtual works done by allforces/torques acting on the system = 0
1dq1
2dq2dp dt
= - FT Jdq3dq3 idqi
ndqn- F
- FT
principle ofvirtual work
Robotics 1 25
7/28/2019 12_Inverse Diff Kin Statics
26/35
Duality between velocity and force
velocity(or displacement )
in thejoint space
generalized velocity(or E-E displacementin the Cartesian space
generalized forcesat the Cartesian E-E
forces/torquesat thejoints
J(q)
JT(q)
the singular configurationsfor the velocity map are the same
as those for the force map(J) = (JT)
)
Robotics 1 26
7/28/2019 12_Inverse Diff Kin Statics
27/35
Dual subspaces of velocity and forcedefinitions
Robotics 1 27
7/28/2019 12_Inverse Diff Kin Statics
28/35
Dual subspaces of velocity and forcepictorial view
J(q)
JT(q)
all are linear subspaces: origins always belong to the defined sets!
Robotics 1 28
7/28/2019 12_Inverse Diff Kin Statics
29/35
Velocity and force singularitieslist of possible cases
= rank(J) = rank(JT
) min(m,n)
1. < m
2. = m
1. < n
2. = n
1. det J = 0
2. det J 0
m
n
Robotics 1 29
7/28/2019 12_Inverse Diff Kin Statics
30/35
Example of singularity analysis
planar 2R arm with genericlink lengths l1 and l2 J(q) =
-l1
s1
-l2
s12
-l2
s12
l1c1+l2c12 l2c12det J(q) = l1l2s2
singularity at q2= 0 (arm straight)
singularity at q2= (arm folded)
J =-(l1+l2)s1 -l2s1(l1+l2)c1 l2c1
J =
(J) = (JT) =
(JT) = (J) =
-s1c1
c1s1
l1+l2
l2
l2
-(l1+l2)
1
0
l2-l1
l2
(J) and (JT
) as above
(J) =(JT) =
(JT)
(J)
(l2-l1)s1 l2s1
-(l2-l1)c1 -l2c1
0
1(for l1= l2 , )
l2
-(l2-l1) (for l1= l2 , )
Robotics 1 30
7/28/2019 12_Inverse Diff Kin Statics
31/35
Force manipulability
in a given configuration, evaluate how effective is themechanical transformation between joint torques and end-effector forces how easily can the end-effector apply generalized forces (or
balance applied ones) in the various directions of the task space
in particular, in a singular configuration, there are directions in thetask space where an external force/torque is balanced by the robotwithout the need of any joint torque
we consider all end-effector forces that can be applied (orbalanced) by choosing joint torque vectors ofunit norm
taskforcemanipulability ellipsoid
same directions of the principal
axes of the velocity ellipsoid, butwith semi-axes ofinverse lengths
Robotics 1 31
7/28/2019 12_Inverse Diff Kin Statics
32/35
Velocity and force manipulabilitya dual comparison
Robotics 1 32
planar 2R arm with unitary links
area det JJT( ) =1(J) 2(J)
area det JJT( )
1
=
1
1(J)
1
2(J)
note:
velocity and forceellipsoids have herea different scale
for a better view
Cartesian actuation task (highjoint-to-tasktransformation ratio):
preferred velocity (or force) directions are those where the ellipsoid stretches
Cartesian control task (low transformation ratio = high resolution):
preferred velocity (or force) directions are those where the ellipsoid shrinks
7/28/2019 12_Inverse Diff Kin Statics
33/35
Velocity and force transformations
the same reasoning made for relating end-effector to joint forces/torques (static equilibrium + principle of virtual work) holds true alsofor relating forces and torques applied at different places of a rigidbodyand/or expressed in different reference frames
relation among generalized velocities
relation among generalized forces
Robotics 1 33
7/28/2019 12_Inverse Diff Kin Statics
34/35
Example 1: 6D force/torque sensor
RFB
RFA
f
m
frame ofmeasure for the forces/torques(attached to the wrist sensor)
frame ofinterest for evaluatingforces/torques in a task
with environmental contact
JBA
JBAT
Robotics 1 34
7/28/2019 12_Inverse Diff Kin Statics
35/35
Example 2: Gear reduction at joints
motor
transmission elementwith motion reduction ratio N:1
link
umm.
u.
m.
.
= N
u = Num
Robotics 1 35
another simple application
of the principle of virtual work!