Professional Documents
Culture Documents
Newton-Euler method
(balance of forces/torques)
energy-based approach
(Euler-Lagrange)
!
!
Robotics 2
( )
R i = S 0" i 0 Ri
Robotics 2
" fi =
!
d
(mv c ) = m v c
dt
=
I
#
=
I
#
+
R I R T ) # = I# + R I R T + R I R T #
" i dt ( )
(
dt
= I# + S(# )R I R T# + R I R T S T (# ) # = I# + # $ I#
Robotics 2
Newton-Euler equations
link i
zi-1
FORCES
center
of mass
zi
ci
Oi-1
axis qi
fi force applied
from link (i-1) on link i
vci
fi
-1
mig
Newton equation
fi+1
Oi
axis qi+1
linear acceleration of ci
Robotics 2
Newton-Euler equations
link i
!i
TORQUES
"i torque applied
from link (i-1) on link i
"i+1 torque applied
from link i on link (i+1)
fi x ri-1,ci torque due to fi w.r.t. ci
- fi+1 x ri,ci torque due to - fi+1 w.r.t. ci
Euler equation
-2
zi-1
"i
fi
ri-1,ci
Oi-1
axis qi
zi
ri,ci
"i+1
fi+1
Oi
axis qi+1
Robotics 2
Forward recursion
Computing velocities and accelerations
initializations
AR
the gravity force term can be skipped in Newton equation, if added here
Robotics 2
Backward recursion
Computing forces and torques
from Ni
to Ni-1
from Ei
to Ei-1
eliminated, if inserted
in forward recursion (i=0)
initializations
F/TR
at each step of this recursion, we have two vector equations (Ni + Ei) at the
joint providing
and
: these contain ALSO the reaction forces/torques
at the joint axis
they should be next projected along/around this axis
FP
generalized forces
(in rhs of Euler-Lagrange eqs)
Robotics 2
N scalar
equations
at the end
Robotics 2
symbolic
! substituting expressions in a recursive way
! at the end, a closed-form dynamic model is obtained, which
is identical to the one obtained using Euler-Lagrange (or any
other) method
! there is no special convenience in using N-E in this way
numeric
! substituting numeric values (numbers!) at each step
! computational complexity of each step remains constant
grows in a linear fashion with the number N of joints (O(N))
! strongly recommended for real-time use, especially when the
number N of joints is large
Newton-Euler algorithm
FP
F/TR
outputs
inputs
AR
FP
F/TR
Robotics 2
(force/torque exchange
environment/E-E)
10
input
!
!
output
!
!
Robotics 2
Examples of output
!
. ..
u = NE0g(qd,qd,qd) = B(qd)qd+c(qd,qd)+g(qd)=ud
gravity terms
u = NE0g(q,0,0) = g(q)
!
u = NE0(q,q,0) = c(q,q)
!
generalized momentum
.
ei = i-th column
of identity matrix
u = NE0(q,0,q) = B(q)q
Robotics 2
12
13
zero
initial torques =
free equilibrium
configuration
+
zero initial
accelerations
final torques
u1 ! 0, u2 = 0
balance
link weights
in final (0,90)
configuration
14
15
q=
!
B-1(q)
[u (c(q,q)+g(q))]=
B-1(q)
[u n(q,q)]
complexity
n = NE0g(q,q,0)
!
O(N)
O(N2)
O(N3)
q = InvB * [u n]
Robotics 2
.
new state (q,q)
and repeat over time...
16