Download as pdf or txt
Download as pdf or txt
You are on page 1of 14

Robotics 2

Dynamic model of robots:


Algorithm for computing kinetic energy

Prof. Alessandro De Luca


Complexity of robot inertia terms
element m11(! ) of Stanford arm
&' m'' =

&(
)* spherical wrist
!=
&+
&,
&-

here, in terms of “radius of gyration”:


for a body of mass " and moment of inertia # w.r.t. an axis,
the radius of gyration $ is the distance of a point mass "
from the same axis, such that its moment of inertia is #

Robotics 2 2
Expression of !"# and $#

n !%& and $& can be written using the relations of the robot
differential kinematics (partial Jacobians)
n it is useful however to operate in a recursive way, expressing
each vector quantity related to link # in the “moving” frame RF#
attached to link # (with the notation 'vector' )
n this is particularly convenient when using symbolic manipulation
languages (Maple, Mathematica) for computing the kinetic
energy of a (open chain) robot arm, when the number of joints
increases (( ≥ 4)

Moving Frames

Robotics 2 3
Recall: D-H frames
joint 3 − 1 axis joint 3 axis ;: joint 3 + 1 axis
link 3 − 1
link 3 9<:

=<:
73 ,3
9:
13 7!"# /3
5!"# 63
*3 53
6!"#
!"#
8! %!
cos *! − cos ,! sin *! sin ,! sin *! /! cos *!
!"# sin *! cos ,! cos *! − sin ,! cos *! /! sin *!
$! %! =
0 sin ,! cos ,! 1!
0 0 0 1
Robotics 2 4
Moving Frames algorithm
velocity of '(# = '# + +# × -(# position of
center of mass center of mass
of link ! of link ! w.r.t. "#
velocity of "# angular velocity
(origin of RF! ) of link !

0 revolute joint
set $# =
1 prismatic joint

# #./ 1 #./ #./ #./ 1 #./


+# = 0# 2# +#./ + 1 − $# 2̇ # 5#./ = 0# 2# +#
5-axis of RFi-1 0
0
#
'# = #./ 1
0# 2# #./
'#./ + $# 2̇ # #./
5#./ + #./+# × #./-#./,# 1

Robotics 2 5
Dynamic model of a 2R robot
application of the algorithm

!, #$ = 0, $ = 1,2
-, (revolute joints)
!+ +
*, 0
; = −;" moving in the
−0
,
!" ., vertical plane
0
−0 +
+ *+ -+
*+ *, ;" = 9.81
.+
72 −82 0 −02 + *2
-" 23+
42 (.2 ) = 82 72 0 2
9:2 = 0
0 0 1 0
assumption: center of mass of
each link is on its kinematic axis

" "
initialization: $ = 0 <" = 0 =" = 0

Robotics 2 6
First step (link 1)
0 0
$ & ( &
!=1 %$ = '$ )$ %& + )̇ $ 0 = 0
1 )̇ $

0 /$ 0$ 0 /$ 0$
& ( &
$
-$ = '$ )$ -& + 0 × /$ 1$ = &'$( ()$ ) 0 × &'$( ()$ ) /$ 1$
)̇ $ 0 )̇ $ 0
0 /$ 0
= 0 × 0 = /$ )̇ $
)̇ $ 0 0

0 0 −/$ + 6$ 0
$
-4$ = /$ )̇ $ + 0 × 0 = 6$ )̇ $
0 )̇ $ 0 0
Robotics 2 7
Kinetic energy of link 1

0 0
! !
"! = 0 '(! = )! &̇ !
&̇ ! 0

1 1 1
*! = -! )! &̇ ! + 0(!,22 &̇ ! = 0(!,22 + -! )!. &̇ !.
. . .
2 2 2

the actual inertia around the rotation axis


of the first joint (parallel axis theorem)

Robotics 2 8
Second step (link 2)

0 0
$ & ( &
!=2 %$ = '$ )$ %& + )̇ $ 0 = 0
1 )̇ & + )̇ $

0 .$ 0$ .& /$ )̇ & 0 .$
$ & ( &
1$ = '$ )$ 1& + 0 × .$ /$ = .& 0$ )̇ & + 0 × 0
)̇ & + )̇ $ 0 0 )̇ & + )̇ $ 0
.& /$ )̇ &
= .& 0$ )̇ & + .$ )̇ & + )̇ $
0

Robotics 2 9
Kinetic energy of link 2
!=2

0 −.' + /' .$ 0' +̇ $


$
%&$ = '%' + 0 × 0 = .$ 1' +̇ $ + /' +̇ $ + +̇ '
+̇ $ + +̇ ' 0 0

1
2' = 4' .$' +̇ $' + /$' +̇ $ + +̇ ' '
+ 2.$ /' 1' +̇ $ +̇ $ + +̇ '
2
1
+ 5&',77 +̇ $ + +̇ ' '
2

Robotics 2 10
Robot inertia matrix

1 , -%% (+) -%' (+) +̇ %


# = #% + #' = +̇ % +̇ '
2 -'% (+) -'' +̇ '

-%% + = 01%,33 + -% 4%' + 01',33 + -' 4'' + -' 5%' + 2-' 5% 4' 6'
= 7% + 27' cos +'

-%' + = -'% + = 01',33 + -' 4'' + -' 5% 4' 6' = 7; + 7' cos +'

-'' = 01',33 + -' 4'' = 7;

NOTE: The introduction of dynamic coefficients !" is a convenient regrouping of the


dynamic parameters (more on this later → linear parametrization of dynamics)
Robotics 2 11
Centrifugal and Coriolis terms
*
1 '(" '(" '( 1 0 −2-. /. 0 0
!" # = + − = +
2 '# '# '#" 2 0 −-. /. −2-. /. −-. /.

0 −-. /.
=
−-. /. −-. /. 0" #, #̇ = −-. /. #̇ .. + 2#̇ " #̇ .

*
1 '(. '(. '( - / 0
!. # = + − =⋯= . .
2 '# '# '#. 0 0

0. #, #̇ = -. /. #̇ ".
Robotics 2 12
Gravity terms

!" = −%" &' (),+" = −%" 0 −&) 0 ." /" = %" &) ." /"

!0 = −%0 &' (),+0 = %0 &) 1" /" + .0 /"0

! = !" + !0

'
4! &) %" ." 5" + %0 1" 5" + %0 .0 5"0 67 5" + 68 5"0
& 3 = = =
43 &) %0 .0 5"0 68 5"0

Robotics 2 13
Dynamic model of a 2R robot

!0 + 2!2 32 *̈ 0 + !2 32 + !5 *̈ 2 − !2 62 *̇ 22 + 2*̇ 0 *̇ 2
+ !7 30 + !8 302 = 90
!2 32 + !5 *̈ 0 + !5 *̈ 2 + !2 62 *̇ 02 + !8 302 = 92

Q1: is it !2 = 0 possible? physical interpretation? consequences?


Q2: is it !4 = !5 = 0 possible as well? physical interpretation?
Q3: based on the expressions of the dynamic coefficients !1, !2, !3,
check that the robot inertia matrix is always positive definite, and
in particular that the diagonal elements are always positive (∀*)
Q4: provide two different matrices +’ and +’’ for the factorization of the
quadratic velocity terms, respectively satisfying and not satisfying
the skew-symmetry of .̇ − 2+
Robotics 2 14

You might also like