Linear Parametrization and Identification of Robot Dynamics: Robotics 2
Linear Parametrization and Identification of Robot Dynamics: Robotics 2
joint 𝑖
𝑟+' 𝑦𝑖 kinematic frame 𝑖
CoM 𝐶𝑖 (DH or modified DH)
𝑚' 𝑔) 𝑂𝑖
𝑥𝑖
base 𝑟'
frame 0
𝑟/' 𝐼+',// 𝐼+',/0 𝐼+',/1
n each link is characterized by 𝑚' 𝑟+' = 𝑟0' 𝐼+',00 𝐼+',01
𝐼+' =
10 dynamic parameters 𝑟1' symm 𝐼+',11
n however, the robot dynamics depends in a nonlinear way on some of these
8
parameters (e.g., through the combination 𝐼6',11 + 𝑚' 𝑟/' )
Robotics 2 2
Dynamic parameters of robots
n kinetic energy and gravity potential energy can both be rewritten so
that a new set of dynamic parameters appears only in a linear way
§ need to re-express link inertia and CoM position in (any) known kinematic
frame attached to the link (same orientation as the barycentric frame)
n fundamental kinematic relation
𝑣6' = 𝑣' + 𝜔' × 𝑟+' = 𝑣' + 𝑆 𝜔' 𝑟+' = 𝑣' − 𝑆 𝑟+' 𝜔'
n kinetic energy of link 𝑖
1 A 1 A
𝑇' = 𝑚' 𝑣+' 𝑣+' + 𝜔' 𝐼+' 𝜔'
2 2
B B
= 𝑚' 𝑣' − 𝑆 𝑟+' 𝜔' A 𝑣' − 𝑆 𝑟+' 𝜔' + 𝜔'A 𝐼+' 𝜔'
8 8
1 1 A
= 𝑚' 𝑣' 𝑣' + 𝜔' 𝐼+' + 𝑚' 𝑆 A 𝑟+' 𝑆 𝑟+' 𝜔' − 𝑣'A 𝑆 𝑚' 𝑟+' 𝜔'
A
2 2
𝐼',// 𝐼',/0 𝐼',/1
Steiner theorem 𝐼' = 𝐼',00 𝐼',01
symm 𝐼',11
Robotics 2 3
Standard dynamic parameters of robots
n gravitational potential energy of link 𝑖
𝑈' = −𝑚' 𝑔)A 𝑟),+' = −𝑚' 𝑔)A 𝑟' + 𝑟+' = −𝑚' 𝑔)A 𝑟' − 𝑔)A 𝑚' 𝑟+'
n by expressing vectors and matrices in frame 𝑖, both 𝑇' and 𝑈' are
linear in the set of 10 (constant) standard parameters 𝜋' ∈ ℝB)
1 A𝑖 A 1𝑖 A 𝑖 𝑖
𝑇' = 𝑚' 𝑣' 𝑣' + 𝑚' 𝑟+' 𝑆 𝑣' 𝜔' + 𝜔' 𝐼' 𝜔'
𝑖 𝑖 𝑖 𝑖
2 2
𝑈' = −𝑚' 𝑔)A 𝑟' − 𝑔)A 0𝑅' (𝑚' 𝑖 𝑟+' )
mass×CoM
mass of link 𝑖 position of link 𝑖 inertia of link 𝑖
(0-th order (1-st order (2-nd order
moment ) moment )
moment )
𝑚'
𝝅𝒊 = 𝑚' 𝑖𝑟+' = 𝑚' 𝑚' 𝑖𝑟+',/ 𝑚' 𝑖𝑟+',0 𝑚' 𝑖𝑟+',1 𝑖𝐼
',//
𝑖𝐼
',/0
𝑖𝐼
',/1
𝑖𝐼
',00
𝑖𝐼
',01
𝑖𝐼
',11
A
𝑣𝑒𝑐𝑡 𝑖 𝐼'
n since the E-L equations involve only linear operations on 𝑇 and 𝑈, also
the robot dynamic model is linear in the standard parameters 𝝅 ∈ ℝB)G
Robotics 2 4
Linearity in the dynamic parameters
n using a 𝑁 × 10𝑁 regression matrix 𝑌S that depends only on kinematic
quantities, the robot dynamic equations can always be rewritten linearly
in the standard dynamic parameters as
𝑀 𝑞 𝑞̈ + 𝑐 𝑞, 𝑞̇ + 𝑔 𝑞 = 𝑌S 𝑞, 𝑞,̇ 𝑞̈ 𝜋 = 𝑢
𝜋 A = 𝜋BA 𝜋8A ⋯ A
𝜋G
n the open kinematic chain structure of the manipulator implies that the 𝑖 -th
dynamic equation can depend only on the standard dynamic parameters
of links 𝑖 to 𝑁 ⇒ 𝑌S has a block upper triangular structure
𝑌BB 𝑌B8 ⋯ 𝑌BG
0 𝑌88 ⋯ 𝑌8G with row vectors
𝑌S 𝑞, 𝑞,̇ 𝑞̈ = 𝑌',[ of size 1×10
⋮ ⋱ ⋮
0 ⋯ 0 𝑌GG
Property: element 𝑚'[ of 𝑀(𝑞) is a function at most of (𝑞]^B , ⋯ , 𝑞G ), for 𝑘 = min{𝑖, 𝑗} ,
and of the inertial parameters of at most links 𝑟 to 𝑁 , with 𝑟 = max{𝑖, 𝑗}
Robotics 2 5
Linearity in the dynamic coefficients
n many standard parameters do not appear (“play no role”) in the dynamic model of a
given robot ⇒ the associated columns of 𝑌S are 0!
n some standard parameters may appear only in fixed combinations with others ⇒ the
associated columns of 𝑌S are linearly dependent!
n one can isolate 𝑝 ≪ 10𝑁 independent groups of parameters 𝜋 (associated to 𝑝
functionally independent columns 𝑌'jklm of 𝑌S ) and partition matrix 𝑌S in two
blocks, the second containing dependent (or zero) columns as 𝑌klm = 𝑌'jklm 𝑇, for a
suitable constant 𝑝 × (10𝑁 − 𝑝) matrix 𝑇
𝜋'jklm 𝜋'jklm
𝑌S 𝑞, 𝑞,̇ 𝑞̈ 𝜋 = 𝑌'jklm 𝑌klm 𝜋klm = 𝑌'jklm 𝑌'jklm 𝑇 𝜋klm
= 𝑌'jklm 𝜋'jklm + 𝑇 𝜋klm = 𝑌 𝑞, 𝑞,̇ 𝑞̈ 𝑎
n these grouped parameters are called dynamic coefficients 𝑎 ∈ ℝm , “the only that
matter” in robot dynamics (= base parameters by W. Khalil)
n the minimal number 𝑝 of dynamic coefficients that is needed can also be checked
numerically (see later → Identification)
Robotics 2 6
Linear parameterization of robot dynamics
it is always possible to rewrite the dynamic model in the form
regression 𝑎 = vector of
matrix dynamic coefficients
𝑀 𝑞 𝑞̈ + 𝑐 𝑞, 𝑞̇ + 𝑔 𝑞 = 𝑌 𝑞, 𝑞,̇ 𝑞̈ 𝑎 = 𝑢
𝑁×𝑝 𝑝×1
e.g., the heuristic grouping (found by inspection) on a 2R planar robot
𝑎B = 𝐼6B,11 + 𝑚B 𝑑B8 + 𝐼68,11 + 𝑚8 𝑑88 + 𝑚8 𝑙B8
𝑎B 𝑎8 = 𝑚8 𝑙B 𝑑8
𝑎8 𝑎s = 𝐼68,11 + 𝑚8 𝑑88
𝑞̈ B 𝑐8 2𝑞̈ B + 𝑞̈ 8 − 𝑠8 𝑞̇ 88 + 2𝑞̇ B 𝑞̇ 8 𝑞̈ 8 𝑐B 𝑐B8
𝑎s =
𝑢B
0 𝑐8 𝑞̈ B + 𝑠8 𝑞̇ B8 𝑞̈ B + 𝑞̈ 8 0 𝑐B8 𝑢8 𝑎u = 𝑔) 𝑚B 𝑑B + 𝑚8 𝑙B
𝑎u
𝑎t 𝑎t = 𝑔) 𝑚8 𝑑8
NOTE: 4 more coefficients are added when including the coefficients 𝐹p,' and 𝐹+,' of viscous and
Coulomb friction at the joints (“decoupled” terms appearing only in the relative equations 𝑖 = 1,2)
Robotics 2 7
Linear parametrization
of a 2R planar robot (𝑁 = 2)
Robotics 2 8
Linear parametrization
of a 2R planar robot (𝑁 = 2)
n as alternative to the previous heuristic method, apply the general procedure
n 10𝑁 = 20 standard parameters are defined for the two links
n from the assumptions made on CoM locations, only 5 such parameters actually
n only the robot dynamic coefficients can be identified (and not all
𝑌 𝑞 𝑡] , 𝑞̇ 𝑡] , 𝑞̈ 𝑡] 𝑎 = 𝑢 𝑡] 𝑘 = 1, ⋯ , 𝑛6
Robotics 2 11
Least Squares (LS) identification
n set up the system of linear equations
𝑌 𝑞 𝑡B , 𝑞̇ 𝑡B , 𝑞̈ 𝑡B 𝑢 𝑡B
𝑛6 × 𝑁 ⋮ 𝑎= ⋮ • = 𝑢•
𝑌𝑎
𝑌 𝑞 𝑡j‚ , 𝑞̇ 𝑡j‚ , 𝑞̈ 𝑡j‚ 𝑢 𝑡j‚
Robotics 2 12
Additional remarks on LS identification
n it is convenient to preserve the block (upper) triangular structure of
the regression matrix, by “stacking” all time evaluations in row by row
sequence of the original 𝑌 matrix
𝑌B 𝑞 𝑡B , 𝑞̇ 𝑡B , 𝑞̈ 𝑡B
𝑛6
𝑛6 ⋮ 𝑢B 𝑡B
⋮
𝑌B 𝑞 𝑡j‚ , 𝑞̇ 𝑡j‚ , 𝑞̈ 𝑡j‚ 𝑢B 𝑡j‚
𝑌8 𝑞 𝑡B , 𝑞̇ 𝑡B , 𝑞̈ 𝑡B 𝑢8 𝑡B 𝑌• =
𝑁× ⋮
𝑎=
⋮ • = 𝑢•
𝑌𝑎
𝑌8 𝑞 𝑡j‚ , 𝑞̇ 𝑡j‚ , 𝑞̈ 𝑡j‚ 𝑢8 𝑡j‚
⋮ ⋮
𝑌G 𝑞 𝑡B , 𝑞̇ 𝑡B , 𝑞̈ 𝑡B 𝑢G 𝑡B
𝑛6 ⋮
⋮ 𝑛6
𝑢G 𝑡j‚
𝑌G 𝑞 𝑡j‚ , 𝑞̇ 𝑡j‚ , 𝑞̈ 𝑡j‚
§ numerical check of full column rank is
n further practical hints more robust ⇔ rank = 𝑝 (# of col’s)
numerical values
identified through
experiments
without the use of a joint friction model including an identified joint friction model
Robotics 2 17
Dynamic identification of KUKA LWR4
video
Robotics 2 19
Rule of change in dynamic parameters
n only the dynamic parameters of the link where a load is added will change
(typically, added to the last one –link n– as payload)
n last link dynamic parameters: mn (mass), cn = (cnxcnycnz)T (center of mass),
In (inertia tensor expressed w.r.t. frame n)
n payload dynamic parameters: mL (mass), cL = (cLxcLycLz)T (center of
mass), IL (inertia tensor expressed w.r.t. frame n)
n mass
n center of mass
(weighted average) where i = x, y, z
valid only if tensors are expressed w.r.t.
n inertia tensor the same reference frame (i.e., frame n)!
Robotics 2 20
Example: 2R planar robot with payload
y2
x2
y1 a2
y0 q2
a1 x1 g0 = gravity acceleration
q1
x0
Note 1: position of the center of mass of the two links and of the payload may also be asymmetric
Note 2: link inertia & center of mass are expressed in the DH kinematic frame attached to the link
(e.g., I2zz is the inertia of the second link around the axis z2)
Robotics 2 21
Validation on the KUKA LWR4 robot
video
Franka Emika
Panda (7R)
KUKA Universal Robot
LWR4 (7R) UR10 (6R)
Robotics 2 23