Manipulator Dynamics
Manipulator Dynamics
Manipulator Dynamics
DOI 10.1007/978-1-4471-4976-7_91-1
# Springer-Verlag London 2014
Manipulator Dynamics
Shaoping Bai*, Lelai Zhou and Guanglei Wu
Department of Mechanical and Manufacturing Engineering, Aalborg University, Aalborg, Denmark
Abstract
This book chapter is about fundamentals of manipulator dynamics and their applications. Two
approaches of manipulator dynamics, namely, recursive Newton-Euler approach and the Lagrange
equations, are introduced and discussed. Examples are included to demonstrate their application in
manipulator dynamics simulations and analysis. This book chapter can provide basic understanding
on manipulator dynamics, which is applicable to manipulators, including serial and parallel
manipulators.
Introduction
Manipulator dynamics concerns with the actuation forces required to generate motion of manipu-
lators. The manipulator dynamics is expressed in terms of equations of motion, which describe the
relationships between the actuation, reaction forces, and the accelerations and motion trajectories of
manipulators. In robotics, dynamics is a fundamental for the manipulator design, analysis, and
control.
Two types of problems are involved in the dynamics study, namely, the inverse and forward
dynamics. The inverse dynamics calculates the required actuating forces at joints for a prescribed
trajectories or known kinematic information (position, velocity, and acceleration). The forward
dynamics, on the other hand, determines the joints’ and end-effector accelerations with applied
actuating forces at joints.
The equations of motion can be established with several approaches. The most used approaches
include recursive Newton-Euler approach and the Lagrange equations, which can be found in
literatures (Murray et al. 1994; Angeles 1997; Featherstone and Orin 2000). In this chapter, the
dynamics equation formulation with the above two approaches is introduced. The formulations are
confined within the rigid-body dynamics. Readers with interests in flexible body manipulators are
directed to literatures (Shabana 2013; Low 1987; Dwivedy and Eberhard 2006). Two examples are
included to demonstrate their applications, one applicable to a serial manipulator and the other to
a parallel robot.
*Email: [email protected]
Page 1 of 17
Handbook of Manufacturing Engineering and Technology
DOI 10.1007/978-1-4471-4976-7_91-1
# Springer-Verlag London 2014
Revolute joints
Referring to Fig. 1, the angular velocity of a revolute joint, propagated from link i1 to link i, is
given by
:
vi ¼ vi1 þ yi zi (1)
or in local components
:
Ri v0i ¼ Ri1 v0i þ y Ri z0i (2)
where Ri stands for the orientation matrix of link i and v'i is the angular velocity of link i with respect
to the ith frame (local coordinate system). Premultiplying both sides of Eq. 2 with RTi and
simplifying yield
:
v0i ¼ Rii1 v0i þ yi z0i (3)
where Rii1 is the rotation matrix relating link i1 and link i. z ' i is the unit vector [0,0,1]T parallel to
the zi axis. Similarly, the propagation of linear velocity from link i1 to link i can be derived as
v0i ¼ Rii1 v0i1 þ v0i1 pi1
i (4)
where pi1
i denotes the position vector of the frame of link i in the (i1)th frame.
The angular acceleration is calculated through
Page 2 of 17
Handbook of Manufacturing Engineering and Technology
DOI 10.1007/978-1-4471-4976-7_91-1
# Springer-Verlag London 2014
_ 0i1 þ €
_ 0i ¼ Rii1 v
v yi z0i þ Rii1 v0i1 y_ i z0i (5)
The linear acceleration with respect to the link-attached coordinate system is given by
0
_ 0i1 pi1
v_ 0i ¼ Rii1 v_ 0i1 þ v i þ v 0
i1 v i1 p i1
i (6)
where p0C i denotes the position vector of the center of mass of link i in its own frame.
Prismatic Joints
If the joints in question are prismatic, the angular velocities are identical for link i and link i1,
which means vi ¼ vi1. Expressing with local components yields
that is,
_ 0i ¼ Rii1 v
v _ 0i1 (10)
Page 3 of 17
Handbook of Manufacturing Engineering and Technology
DOI 10.1007/978-1-4471-4976-7_91-1
# Springer-Verlag London 2014
v0i ¼ Rii1 v0i1 þ v0i1 pi1
i þ d_ i z0i (11)
v_ 0i ¼ Rii1 v_ 0i1 þ v
_ 0i1 pi1
i þ v0i1 v0i1 pi1
i þ 2v0i d_ i z0i þ d€i z0i (12)
f 0C i ¼ mi v_ 0Ci (13)
_ 0i þ v0i Ii v0i
n0Ci ¼ Ii v (14)
where mi is the mass of the link and Ii denotes the inertia tensor of link i about its center of mass,
calculated in a frame identical to the link’s coordinate system except the origin. In the equations
above, all items are expressed in the local coordinate systems.
The forces and torques acting on the links are calculated through the outward recursion. The joint
torques that generate the forces and torques will be calculated through the inward recursion.
Referring to Fig. 1, the inward recursion propagates the joint forces and torques from the end link
to the base as
where f'i and n'i are the force and torque exerted on link i with respect to the ith frame.
The actuating torque on a revolute joint can be calculated by
0
ti ¼ niT z0i (17)
Lagrange’s Equation
The equations of motion for a manipulator can also be formulated with Lagrangian dynamics
method. Two types of Lagrange’s equations can be formulated, one with dependent coordinates
Page 4 of 17
Handbook of Manufacturing Engineering and Technology
DOI 10.1007/978-1-4471-4976-7_91-1
# Springer-Verlag London 2014
(1st kind) and the other with independent coordinates (2nd kind). This section starts with the
Lagrange’s equation of the 1st kind. Hereafter, the vector q represents a set of n unknown dependent
coordinates, m is the total number of independent kinematically constraint equations, and f ¼ n
m is the number of dynamic degrees of freedom (de Jalón and Bayo 1994). The constraint conditions
for the entire system are written in the following general form:
FðqÞ ¼ 0 (19)
dFðqÞ @F dq
¼ ¼ Fq q_ ¼ 0 (20)
dt @q dt
which is the Lagrange’s equation of the 1st kind. In the equation, l is a m-dimensional vector of
Lagrange multipliers. Item FTql represents the generalized forces due to reaction forces at joints.
With independent coordinates, the constraint Jacobian vanishes, and the term with Lagrange
multipliers is dropped out. The Lagrange’s equation of the 2nd kind is thus obtained:
d @L @L
¼ Qex (22)
dt @ q_ @q
The Lagrange’s equation of the 1st kind stands for a system of n equations for n dependent
co-ordinates and m unknown Lagrange multipliers. To solve the equations, additional acceleration
equations from the kinematic constraints are required, as presented below.
The kinetic energy of a robotic system can be written as follows:
1
T ¼ q_ T MðqÞq_ (23)
2
where M(q) ¼ M is the mass matrix of the system. The first and second terms in Eq. 21 can be
expressed as below:
d @L _ q; @L
¼ M€ qþM _ ¼ Lq ¼ T q V q (24)
dt @ q_ @q
For the general case in which the kinetic energy depends on q, Eq. 21 becomes
Page 5 of 17
Handbook of Manufacturing Engineering and Technology
DOI 10.1007/978-1-4471-4976-7_91-1
# Springer-Verlag London 2014
M€ _ q_
q þ FTq l ¼ Qex þ Lq M (25)
On the other hand, differentiating the constraint Eq. 19 twice with respect to time yields
Fq q _ q q_ ¼ 0
€þF (26)
Equation 27 can solve simultaneously the accelerations and the Lagrange multipliers.
Examples
Two examples are included to apply the equations of motion to robotic manipulators. In the first
example, a lightweight robotic arm consisting of five revolute joints developed at Aalborg Univer-
sity (AAU), Denmark, is considered. In the second example, the dynamics of a spherical parallel
manipulator is presented.
Dynamics Modeling
The kinematics of the robotic arm can be found in (Zhou et al. 2011). This chapter includes here only
the dynamics formulation.
Jacobian matrix The joint angular velocity can be calculated with the Jacobian matrix
where qi1 ¼ [ai cos yi, ai sin yi, di]T. The local coordinates of the end-effector are defined as
Page 6 of 17
Handbook of Manufacturing Engineering and Technology
DOI 10.1007/978-1-4471-4976-7_91-1
# Springer-Verlag London 2014
Fig. 2 AAU 5-dof robotic arm: (a) a prototype and (b) coordinate systems
pn ¼ [0, 0, 0]T. When the desired end-effector velocity vef is given, the joint angular velocity can be
solved by Eq. 28.
€ can be calculated through time derivative of the velocity u.
The joint angular acceleration u _
€ ¼ J_ 1 ve f þ J1 v_ e f
u (31)
Simulation Results
The dynamics of the 5-dof robotic arm was simulated with a program implemented in MATLAB.
The trajectory of the end-effector in the global coordinate system is defined as xef (t) ¼ 5 + 400
(1 cos(t)), yef (t) ¼ 990 + 800(1 cos(t/2)), and zef (t) ¼ 280 + 250(cos(t/2) 1), all with
unit of mm, which leads to
Page 7 of 17
Handbook of Manufacturing Engineering and Technology
DOI 10.1007/978-1-4471-4976-7_91-1
# Springer-Verlag London 2014
2 3
400 sin ðt Þ
x_ e f ¼ 4 400 sin ðt=2Þ 5
125 sin ðt=2Þ
The Euler angles for the end-effector are given as c ¼ [0, cos(t/180), 0]T, following ZXZ
convention. The rotation implies the end-effector remains horizontal during the prescribed motion.
For the prescribed motion, the rotation matrix R and angular velocity v can be readily found. The
h iT
velocities of the end-effector are vef ¼ x_ Tef ; vT , from which the joint angular velocities and
accelerations are calculated.
To implement the Newton-Euler method to solve the inverse dynamics problem, the equations in
section “Recursive Newton-Euler Method” are summarized in a recursive manner:
Outward recursion: i : 1 ! 5
v_ 0Ci ¼ v_ 0i1 þ v
_ 0i1 p0C i þ v0i1 v0i1 p0Ci (32d)
f 0Ci ¼ mi v_ 0C i (32e)
_ 0i þ v0i Ii v0i
n0Ci ¼ Ii v (32f )
Inward recursion: i : 5 ! 1
0
ti ¼ niT z0i (32i)
The joint angular velocities and accelerations are solved through Eq. 28, with results displayed in
Fig. 3. Let the payload at the end-effector of the robot be 5 kg, which implies f6 ¼ 5gN, n6 ¼ 0,
where g is the vector of gravity acceleration. Through the modeling of inverse dynamics of
Eqs. 32g–32i, the joint torques are solved, as shown in Fig. 4.
Page 8 of 17
Handbook of Manufacturing Engineering and Technology
DOI 10.1007/978-1-4471-4976-7_91-1
# Springer-Verlag London 2014
identical architectures, defined by angles a1 and a2. Moreover, b and g define the geometry of two
triangular pyramids on the base and the mobile platforms, respectively. The origin O of the base
coordinate system xyz is located at point O. The z axis is normal to the bottom surface of the base
pyramid and points upward, while the y axis is located in the plane made by the z axis and u1.
Kinematic Modeling
Under the prescribed coordinate system, unit vector ui is derived as
Page 9 of 17
Handbook of Manufacturing Engineering and Technology
DOI 10.1007/978-1-4471-4976-7_91-1
# Springer-Verlag London 2014
Fig. 5 A general SPM and the coordinate system, where only one leg is shown for clarity
2 3
si sgca1 þ ðci syi si cgcyi Þsa1
vi ¼ 4 ci sgca1 þ ðsi syi þ ci cgcyi Þsa1 5 (34)
cgca1 þ sgcyi sa1
where Q is the rotation matrix that carries the MP from its reference orientation to the current one
and w*i is the unit vector of the axis of the top revolute joint in the ith leg when the mobile platform is
in its reference orientation, which is given as
wi ¼ sin i sin b cos i sin b cos b T (36)
v ¼ y_ i ui þ c_ i vi þ x_ i wi (37)
Page 10 of 17
Handbook of Manufacturing Engineering and Technology
DOI 10.1007/978-1-4471-4976-7_91-1
# Springer-Verlag London 2014
Av ¼ Bu_ (39)
with
A ¼ v1 w1 v2 w2 v3 w3 T (40a)
y_ i ¼ jTi v (42)
v € þ c_ f_
_ ¼ cf (43)
Matrix C is dependent on the rotations. For example, a rotation with the Euler convention ZY Z of
Q ¼ Rz(f)Ry(y)Rz(sf), matrix C is
Page 11 of 17
Handbook of Manufacturing Engineering and Technology
DOI 10.1007/978-1-4471-4976-7_91-1
# Springer-Verlag London 2014
2 3
sycf sf sycf
c ¼ 4 sysf cf sysf 5 (44)
1 cy 0 cf
The velocity c_ of the intermediate joint of ith leg is found by making use of Eq. 37 to eliminate y_ i
and x_ i . Dot-multiplying Eq. 37 on both sides with ui wi leads to
ðui wi ÞT
ðui wi Þ v ¼ c_ ðui wi Þ vi or c_ ¼ v jTci v (45)
ðui wi Þ vi
The angular velocity of the distal link in the ith leg in the reference frame xyz is found as
ri ¼ y_ i ui þ c_ i vi . Let rli denote the corresponding angular velocity in the local frame xiyizi, which
means
with
vi þ wi vi þ wi vi þ wi
eix ¼ , eiy ¼ , eiz ¼ (47)
jjvi þ wi jj jjvi þ wi jj jjvi þ wi jj
which yields
Dynamic Modeling
The Lagrange’s equation for the SPM is expressed as
d @L @L
þ CTq l ¼ Qex (49)
dt @ q_ @q
where q ¼ [y1, y2, y3, f, y, s]T, Qex ¼ [tT, 0]T 2 ℝ6 is the vector of external forces, and vector
t ¼ [t1, t2, t3]T characterizes the actuator torques. Moreover, l ¼ [l1, l2, l3]T is a vector of
Lagrange multipliers. Matrix Cq is the system’s constraint Jacobian, which can be found from the
velocity Eq. 39, namely,
Bu_ Av ¼ B _ T T ¼ 0
Ac u_ T f (50)
that is,
Cq q_ ¼ 0 (51)
with Cq ¼ [BAC].
Page 12 of 17
Handbook of Manufacturing Engineering and Technology
DOI 10.1007/978-1-4471-4976-7_91-1
# Springer-Verlag London 2014
1 0
Lp ¼ T p V p ¼ v T Ip v0 mp gT p (52)
2
where Ip denotes the local inertia tensor of the mobile platform and v0 its local angular velocity.
Moreover, g ¼ [0, 0, 9.81]T.
1 1
Li ¼ T i V i ¼ I l1 y_ 2i þ rTli Il2 rli ml1 gT hi ml2 gT ki i ¼ 1, 2, 3 (53)
2 2
where Il1 is the proximal link’s mass moment of inertia about ui and Il2 is the distal link’s local inertia
tensor about point O. Moreover, hi and ki indicate the position vectors for the centers of the mass of
the proximal and distal links, respectively.
Substituting the Lagrangian Lp and Li, i ¼ 1, 2, 3, into Eq. 49, the inertia matrix can be derived as
M1 03
MðqÞ ¼ (54)
03 M2
with
M1 ¼ diag ½ I l1 I l1 I l1 (55a)
h X3
i
M2 ¼ CT QIp QT þ i¼1
j u
i i
T
þ j v
ci i
T
EI l2 ET
u j
i i
T
þ v j T
i ci C (55b)
and the other terms also can be derived. Moreover, differentiating Eq. 51 with respect to time yields
€ ¼ C_ q q_
Cq q (56)
with
h
€ ¼ Cq u
Cq q €T € T T ;
f C_ q q_ ¼ B _
_ ACA _ q_
C (57)
where
_
A¼ jA1 jA2 jA3 T (58a)
_
B¼diag ½ jB1 jB2 jB3 (58b)
and
Page 13 of 17
Handbook of Manufacturing Engineering and Technology
DOI 10.1007/978-1-4471-4976-7_91-1
# Springer-Verlag London 2014
τ a ¼ τ JT m (61)
Simulation Results
The previously developed dynamic model is applied to a co-axial SPM (Bai 2010), whose properties
are given in Tables 2 and 3, where inertia tensors Ip and Il2 contain only diagonal entries. Simulations
were conducted for motion of constant angular accelerations at actuating joints, their initial
conditions being specified in Table 2. The results of the actuating torques are shown in Fig. 7.
The results agree well with the simulation results obtained from CAE software, namely, the MSC
Adams.
Summary
This book chapter introduces the fundamental of manipulator dynamics, with focus on the recursive
Newton-Euler approach and the Lagrange equations, which are approaches mostly common used in
Page 14 of 17
Handbook of Manufacturing Engineering and Technology
DOI 10.1007/978-1-4471-4976-7_91-1
# Springer-Verlag London 2014
robot dynamics analysis and control. Both inverse and forward dynamic problems are discussed.
Applications to manipulators are demonstrated.
In solving the dynamics equation, numerics problems may arise. One is computational efficiency.
The recursive approach presented in this chapter is quite efficient, while the Lagrange’s equations, as
a closed-form equation, implies high computational cost in finding solutions, which uses numerical
methods, for example, Newton–Raphson method. Other problems include the singular Jacobian and
the instability of the solution, etc., among others. The Jacobian matrix can become singular when a
singular configuration is reached or redundant constraints are included, which may lead to a crash of
simulation or a large error. Instability takes place in numerical integration of the equation of motion,
when the roundoff errors increase with time, which can lead to the constraint equations not satisfied.
A method to improve the stability is the Baumgarte stabilization method, which is introduced in
(de Jalón and Bayo 1994).
The approaches presented in this chapter are closely relevant to multibody dynamics, which was
extensively studied in the last century. With the advances of robotics in the twenty-first century,
manipulator dynamics has significantly been expanded, not limited to multibody dynamics, but get
involved with other subsets of the dynamics. A new development among others is the continuum
manipulators, where continuum mechanics is the major theory applicable (Walker 2013). The new
development of manipulator dynamics, which is not discussed in this chapter, presents new
opportunity and challenges for robotics.
References
Angeles J (1997) Fundamentals of robotic mechanical systems: theory, methods, and algorithms.
Springer, New York
Bai S (2010) Optimum design of spherical parallel manipulators for a prescribed workspace. Mech
Mach Theory 45(2):200–211
de Jalón JG, Bayo E (1994) Kinematic and dynamic simulation of multibody systems: the real-time
challenge. Springer, New York
Page 15 of 17
Handbook of Manufacturing Engineering and Technology
DOI 10.1007/978-1-4471-4976-7_91-1
# Springer-Verlag London 2014
Denavit J, Hartenberg RS (1955) A kinematic notation for lower pair mechanisms based on
matrices. ASME J Appl Mech 77:215–221
Dwivedy SK, Eberhard P (2006) Dynamic analysis of flexible manipulators, a literature review.
Mech Mach Theory 41(7):749–777
Featherstone R (1983) The calculation of robot dynamics using articulated-body inertias. Int J Robot
Res 2(1):13–30
Featherstone R, Orin D (2000) Robot dynamics: equations and algorithms. In: Proceedings of the
2000 IEEE International Conference on Robotics & Automation, San Francisco, pp 826–834, Apr
2000
Gosselin CM, Angeles J (1989) The optimum kinematic design of a spherical three-degree-of-
freedom parallel manipulator. ASME J Mech Des 111(2):202–207
Low KH (1987) A systematic formulation of dynamic equations for robot manipulators with elastic
links. J Robot Syst 4(3):435–456
Luh JYS, Walker MW, Paul RPC (1980) On-line computational scheme for mechanical manipula-
tors. J Dyn Sys Meas Control 102(2):69–76
Murray RM, Li Z, Sastry SS (1994) A mathematical introduction to robotic manipulation. CRC
Press, Boca Raton
Shabana AA (2013) Dynamics of multibody systems. Cambridge University Press, New York, USA
Tsai LW (1999) Robot analysis: the mechanics of serial and parallel manipulators. Wiley, New York
Walker ID (2013) Continuous backbone continuum robot manipulators. ISRN Robot Article ID:
726506, 19pp
Zhou L, Bai S, Hansen MR (2011) Design optimization on the drive train of a light-weight robotic
arm. Mechatronics 21(3):560–569
Page 16 of 17
Handbook of Manufacturing Engineering and Technology
DOI 10.1007/978-1-4471-4976-7_91-1
# Springer-Verlag London 2014
Index Terms:
Industrial robots 6
Lagrange's equation 4
Light-weight robot 6
Newton-Euler equations 4, 8
Recursive Newton-Euler method 2
Spherical parallel manipulator 8
Page 17 of 17