Upload
others
View
4
Download
0
Embed Size (px)
Citation preview
ORIGINAL ARTICLE
On the computer solutions of kinematics analysis of linkages
G. I. Perez-Soto • C. Crane • J. M. Rico • J. J. Cervantes-Sanchez •
M. A. Gonzalez-Palacios • L. A. Gallardo-Mosqueda •
P. C. Lopez-Custodio • M. A. Sanchez-Ruenes • A. Tadeo-Chavez
Received: 13 February 2013 / Accepted: 13 May 2013 / Published online: 18 June 2013
� Springer-Verlag London 2013
Abstract Since computer programs for solving kinematic
analyses of spatial linkages have been around for more than
45 years, it is taken for granted that those programs provide
the proper solution in any situation. This contribution
shows that this is not always the case. Thus, the contri-
bution is a reminder that computer aided analyses results
always need to be double-checked. Furthermore, the con-
tribution shows how to interpret the results obtained from a
computer program that does not provide the expected
results.
Keywords Screw theory � Spatial linkages � Computer
programs � Acceleration analysis
1 Introduction
Before the computer age, the kinematic and dynamic
analyses of kinematic chains were reduced to solve rela-
tively simple problems using mechanical calculators or
graphic methods that were inaccurate, time consuming, and
labor intensive. Thus, it is not surprising that the devel-
opment of computer programs for those tasks are at least
45 years old. The first computer programs were tailored to
solve the kinematic and dynamic analyses of a specific
linkage, the class of programs that is common homework in
today’s kinematics of machinery courses, see [11]. How-
ever, the first general purpose program appears to be
Integrated Mechanisms Program, IMP, developed by Sheth
and Uicker, [27], at the University of Wisconsin. This
program appears to be based in the seminal work by
G. I. Perez-Soto (&)
Departamento de Ingenierıa Electromecanica, Universidad
Autonoma de Queretaro, Campus San Juan del Rıo,
76807 San Juan del Rıo, QRO, Mexico
e-mail: [email protected]
C. Crane
Department of Mechanical and Aerospace Engineering,
University of Florida, Gainesville, FL 32611, USA
e-mail: [email protected]
J. M. Rico � J. J. Cervantes-Sanchez �M. A. Gonzalez-Palacios � L. A. Gallardo-Mosqueda �P. C. Lopez-Custodio � M. A. Sanchez-Ruenes
Departamento de Ingenierıa Mecanica, Universidad de
Guanajuato, Campus Irapuato-Salamanca, 38010 Salamanca,
GTO, Mexico
e-mail: [email protected]
J. J. Cervantes-Sanchez
e-mail: [email protected]
M. A. Gonzalez-Palacios
e-mail: [email protected]
L. A. Gallardo-Mosqueda
e-mail: [email protected]
P. C. Lopez-Custodio
e-mail: [email protected]
M. A. Sanchez-Ruenes
e-mail: [email protected]
A. Tadeo-Chavez
Departamento de Ingenierıa Mecatronica, Instituto Tecnologico
Superior de Irapuato, 37856 Irapuato, GTO, Mexico
e-mail: [email protected]
123
Engineering with Computers (2015) 31:11–28
DOI 10.1007/s00366-013-0321-2
Denavit et al. [8].1 The main purpose of this program was
to solve the kinematic analysis and, just after this step, to
compute the dynamic analysis. The University of Michigan
and its spin-off companies undertook the development of
similar programs, starting with Dynamic Analysis of
Mechanical Networks (DAMN) [12], followed by Dynamic
Response of Articulated Machinery (DRAM), [12], and
finally with Automatic Dynamic Analysis of Mechanical
Systems, Adams�, [21, 22], see also [4]. There are many
others general purpose kinematic and dynamic analyses
programs such as Machine Dynamics-Universal Solver
Analysis (MEDUSA), [9], Kinematic and Dynamic Anal-
ysis (KIDYAN), [5], Mechanism Analysis Procedure
(MAP), [12], Dynamic Analysis and Design of Systems
(DADS), [10], MEchanism SAtelite VEhicle Robot
Dynamic Equations (MESAVERDE), [29], among others.
For detailed information about the beginning and evolution
of computer aided kinematic and dynamic analyses the
reader is refereed to [11, 18, 19, 23].
In recent years have seen a surge of solid modeling pro-
grams such as Inventor� of Autodesk or SolidWorks� of
Dassault Systemes among others. These programs simplify
the task of designing parts, assemblies, and machines.
Moreover, recent versions of some of these solid modeling
programs can perform the kinematic and dynamic analyses of
machines as a final goal or as a preliminary step to carry out
the corresponding stress analysis via finite-element methods,
see [6, 7, 26]. Thus, the capabilities of these solid modeling
programs are similar to the dedicated kinematic and dynamic
analyses programs discussed above. In particular, Autodesk
acquired, in 2005, Solid Dynamics S. A. a french company
that developed simulation software for dynamic analysis and
integrated this software to the Inventor� platform, see [2].
Similarly, SolidWorks� incorporated as a tool for the kine-
matic analysis COSMOSMotion� of Structural Research and
Analysis Corporation, who is ‘‘powered’’ by Adams�, see [3].
Due to this trend, a practitioner with a fleeting knowledge
of kinematics and dynamics can complete tasks that were
previously reserved to engineering professionals with a rea-
sonable deep knowledge of these fields. Therefore, it is nec-
essary to ensure that the results obtained by these programs
are free from errors or misrepresentations; otherwise, indus-
trial accidents of unforeseeable consequences may occur.
This contribution will show that Adams�, one of the
leading kinematic and dynamic software programs, provides
as default results joint accelerations quantities which are not
the joint or articular accelerations that undergraduate or
graduate students, professors, and practitioners of kinematics
would expect to obtain. Moreover, these default results are
the same ones provided by SolidWorks�. In spite of these
comments, this contribution can not be regarded, by any
means, as a disqualification of the software, instead it must be
regarded as still another reminder that engineering specialists
must check the results obtained by any software. Moreover,
the contribution shows that the proper relative joint or artic-
ular accelerations can be obtained quite simply from other
information that Adams� correctly provides. An initial and
partial report on this problem was presented in spanish, [28].
Furthermore, it is shown that the while the computing engine
of ANSYS Workbench�, under the Rigid Dynamics mode,
versions 13 and 14, correctly computes the angular velocities
and accelerations of spatial chains, its postprocessor, also
displays, in at least one case, incorrect angular velocities.
A cursory review of the contents of the rest of this
contribution follows. Section 2 presents the velocity and
acceleration analyses of kinematic chains as described in
Rico et al. [25] and Gallardo [13]. Moreover Sect. 2
explains the process by which Adams� computes the ‘‘joint
angular accelerations’’; furthermore, Sect. 2 computes the
differences between the ‘‘joint angular accelerations’’
computed by Adams� and those joint angular accelerations
which kinematics professors and engineering practitioners
regard as most appropriate. Furthermore, this section shows
those cases where both computations agree. Section 3
presents two examples, a serial chain—a Fanuc manipu-
lator—, see Sect. 3.1, and a closed chain—a spherical four
bar—, see Sect. 3.2 In both cases a comparison of the
results between a dedicated program developed in Maple�
15 software, and the results obtained by ANSYS Work-
bench� 13 and 14, Inventor� 2011, Adams� 2012 and
SolidWorks� 2012 are presented2.
2 Velocity and acceleration analyses of kinematic
chains
In this section, the fundamentals of the velocity and accel-
eration analyses of kinematic chains are presented. In order to
reduce the length of the paper, only the most important results
are presented. For a complete derivation of the equations the
reader is referred to Rico and Duffy [24], Gallardo [13] or
Rico et al. [25]. Furthermore, it will be shown the way that
Adams� determines what it defines as ‘‘joint angular accel-
erations’’ of the pairs of a kinematic chain.
2.1 Velocity analysis of a single-loop linkage
Consider the rigid bodies shown in Fig. 1. The velocity
state of a rigid body B with respect to another rigid body A,
chosen as a reference frame, is given by
1 The authors are grateful to an anonymous reviewer for bringing to
our attention this early reference.
2 From now on neither the word Workbench nor the version program
will be repeated.
12 Engineering with Computers (2015) 31:11–28
123
AVB �AxB
AvOB
� �ð1Þ
where AxB is the angular velocity of the rigid body B as
observed from the rigid body A, and AvOB is the velocity of
a point O, fixed to the rigid body B, as observed from the
rigid body or reference frame A.
Consider the serial chain shown in Fig. 2, the chain has
m links where link 1 is the fixed link and adjacent links are
connected via screw pairs.3
It can be shown that for any link j ¼ 2; 3; . . .;m in the
serial chain, the velocity state of link j with respect to the
fixed link 1 is given by
1V j ¼1 V2 þ2 V3 þ � � � þj�2 Vj�1 þj�1 V j: ð2Þ
Note that when this equation is applied, the reference
points O in each of the bodies must be coincident. In terms
of the screws representing the kinematic pairs, Eq. (2) can
be written
1V j ¼ 1x21$2 þ2 x3
2$3 þ � � � þ j�2xj�1j�2$j�1
þ j�1xjj�1$ j
where ixi?1 and i$iþ1for i ¼ 1; 2; . . .; j� 1 are
respectively, the angular velocity of the screw pair and
the representation—using Plucker’s coordinates—of the
screw pair that joins links i and i ? 1. Therefore
i$iþ1 �isiþ1
isiþ1O
� �ð3Þ
where isiþ1 is a unit vector along the axis of the screw pair
and
isiþ1O � ihiþ1
isiþ1 þ isiþ1 � rO=P ð4Þ
and rO/P is the position vector of point O with respect to an
arbitrary point P along the screw axis.
Consider now the single-loop linkage shown in
Fig. 3, the linkage is formed from the serial chain
shown in Fig. 2 by rigidly joining link m with link 1.
Then, the velocity analysis of the single-loop linkage is
given by
1x21$2 þ 2x3
2$3 þ � � � þ m�2xm�1m�2$m�1 þ m�1xm
m�1$m
¼ 0:
ð5ÞEquation (5) can be written in matrix form as
Jx ¼ 0 ð6Þ
where
Fig. 1 Velocity state of a rigid body B with respect to another rigid
body or reference frame A
Fig. 2 Serial chain formed by m links
Fig. 3 Single-loop linkage
3 It is well known that prismatic and revolute pairs are special cases
of a screw pair and that complex pairs such as spherical or cylindrical
pairs can be obtained as a combination of revolute or prismatic pairs.
Thus the treatment is fully general.
Engineering with Computers (2015) 31:11–28 13
123
J ¼ 1$2 2$3 � � � m�2 $m�1 m�1$mh i
is the Jacobian matrix and
x ¼ 1x2; 2x3; . . .; m�2xm�1; m�1xmð ÞT
is the vector of articular or joint velocities. Finally, 0 is a
vector of zeros of dimension 6.
2.2 Acceleration analysis of a single-loop linkage
Consider the rigid bodies shown in Fig. 1. The reduced
acceleration state of a rigid body B with respect to another
rigid body A, chosen as a reference frame, is given by
AABR �
AaB
AaBO �A xB �A vB
O
� �ð7Þ
where AaB is the angular acceleration of the rigid body
B with respect to the rigid body or reference frame A, andAaO
B is the acceleration of a point O fixed in the rigid body
B with respect to the rigid body or reference frame A.
It can be shown that for any link j ¼ 2; 3; . . .;m in
the serial chain shown in Fig. 2, the reduced acceler-
ation state of link j with respect to the fixed link 1 is
given by
1A jR ¼ 1A2
R þ 2A3R þ � � � þ j�2Aj�1
R þ j�1A jR þ 1V2; 2V j
� �þ 2V3; 3V j� �
þ � � � þ j�2Vj�1; j�1V j� �
ð8Þ
where iViþ1; iþ1V j� �
for i ¼ 1; 2; . . .; j� 1 represents the
Lie products of the corresponding velocity states. The Lie
product of two velocity states is given by
ixji$ j; jxk
j$kh i
¼ix j
ivOj
� �;
jxk
jvOk
� �� �
¼ix j � j xk
ix j � j vOk � j xk �i vO
j
� �:
In terms of the screws representing the kinematic pairs,
it follows that
1A jR ¼ 1a2
1$2 þ 2a32$3 þ � � � þ j�1aj
j�1$ j
þ 1x21$2; 2x3
2$3 þ � � � þ j�1xjj�1$ j
h i
þ 2x32$3; 3x4
3$4 þ � � � þ j�1xjj�1$ j
h i
þ � � � þ j�2xj�1j�2$j�1; j�1xj
j�1$ jh i
:
ð9Þ
Then, the acceleration analysis of the single-loop
linkage shown in Fig. 3 is given by
1AR2 þ 2AR
3 þ � � � þ m�2ARm�1 þ m�1AR
m þ 1V2; 2Vm� �
þ 2V3; 3Vm� �
þ � � � þ m�2Vm�1; m�1Vm� �
¼ 0:
ð10Þ
Rewriting Eq. (10) in terms of the screws representing
the kinematic pairs it follows that
1a21$2 þ2 a3
2$3 þ � � � þm�1 amm�1$m
þ 1x21$2; 2x3
2$3 þ � � � þ m�1xmm�1$m
h i
þ 2x32$3; 3x4
3$4 þ � � � þ m�1xmm�1$m
h i
þ � � � þ m�2xm�1m�2$m�1; m�1xm
m�1$mh i
¼ 0:
ð11Þ
Equation (11) can be written in matrix form as
Ja ¼ �$L ð12Þ
where J is the same Jacobian matrix, and
a ¼ 1a2; 2a3; . . .; m�2am�1; m�1amð ÞT ð13Þ
is the vector of articular or joint accelerations. Finally, $L is
the so-called Lie screw defined as
$L ¼ 1x21$2; 2x3
2$3 þ � � � þ m�1xmm�1$m
h i
þ 2x32$3; 3x4
3$4þh
� � � þm�1xmm�1$m
�þ � � � þ m�2xm�1
m�2$m�1; m�1xmm�1$m
h i:
The components of the vector of joint accelerations, [see
Eq. (13)], iai?1 for i ¼ 1; 2; . . .;m� 1; are the angular
accelerations of the kinematic pairs that form the kinematic
chain. These are the default results that Adams� compute
differently.
2.3 How Adams� computes the angular accelerations
Several analyses were conducted using the Adams� soft-
ware—two of these are presented in Sect. 3 Based on the
results of these analyses, it seemed apparent how Adams�
computes, by default, the angular acceleration of the
kinematic pairs. Firstly, the computations for serial open
chains will be analyzed. From Eq. (9) for i ¼1; 2; 3; . . .; j� 1; j; it follows that
1A1R ¼ 0 ð14Þ
1A2R ¼ 1a2
1$2 ð15Þ1A3
R ¼ 1a21$2 þ2 a3
2$3 þ 1x21$2; 2x3
2$3h i
ð16Þ
14 Engineering with Computers (2015) 31:11–28
123
1A4R ¼ 1a2
1$2 þ2 a32$3 þ3 a4
3$4
þ 1x21$2; 2x3
2$3 þ3 x43$4
h i
þ 2x32$3;3 x4
3$4h i ð17Þ
1Aj�1R ¼ 1a2
1$2 þ2 a32$3 þ � � � þj�2 aj�1
j�2$j�1
þ 1x21$2; 2x3
2$3 þ � � � þ j�2xj�1j�2$j�1
h i
þ 2x32$3; 3x4
3$4 þ � � � þ j�2xj�1j�2$j�1
h iþ � � �
þ j�3xj�2j�3$j�2; j�2xj�1
j�2$j�1h i
ð18Þ1A j
R ¼ 1a21$2 þ2 a3
2$3 þ � � � þj�2 aj�1j�2$j�1 þj�1 aj
j�1$ j
þ 1x21$2; 2x3
2$3 þ � � � þ j�1xjj�1$ j
h i
þ 2x32$3; 3x4
3$4þh
� � �
þj�1xjj�1$ j
�þ � � � þ j�2xj�1
j�2$j�1; j�1xjj�1$ j
h i:
ð19Þ
For some unknown reasons,4 the default results
provided by Adams� computes the ‘‘joint angular
accelerations’’ as follows
1a#2
1$2 ¼ 1A2R � 1A1
R ¼ 1a21$2 � 0 ¼ 1a2
1$2 ð20Þ
2a#3
2$3 ¼ 1A3R � 1A2
R
¼ 1a21$2 þ 2a3
2$3 þ 1x21$2; 2x3
2$3h in o
� 1a21$2
n o¼2 a3
2$3 þ 1x21$2; 2x3
2$3h i
ð21Þ
3a#4
3$4 ¼ 1A4R � 1A3
R
¼ 1a21$2 þ2 a3
2$3 þ3 a43$4 þ 1x2
1$2; 2x32$3
hn
þ3x43$4iþ 2x3
2$3;3 x43$4
h io
� 1a21$2 þ2 a3
2$3 þ 1x21$2; 2x3
2$3h in o
¼ 3a43$4 þ 1x2
1$2;3 x43$4
h iþ 2x3
2$3; 3x43$4
h i
¼ 3a43$4 þ 1x2
1$2 þ 2x32$3;3 x4
3$4h i
ð22Þ
..
.
j�1a#j
j�1$j¼1AjR�1Aj�1
R
¼ 1a21$2þ2a3
2$3þ���þj�2aj�1j�2$j�1
n
þj�1ajj�1$jþ 1x2
1$2;2x32$3þ���þ j�1xj
j�1$jh i
þ 2x32$3;3x4
3$4þh
���
þj�1xjj�1$j
�þ���þ j�2xj�1
j�2$j�1;j�1xjj�1$j
h io
� 1a21$2þ2a3
2$3þ���þj�2aj�1j�2$j�1
n
þ 1x21$2;2x3
2$3þ���þ j�2xj�1j�2$j�1
h i
þ 2x32$3;3x4
3$4þh
���j�2xj�1j�2$j�1�
þ���þ j�3xj�2j�3$j�2;j�2xj�1
j�2$j�1h i
g
¼j�1 ajj�1$jþ 1x2
1$2;j�1xjj�1$j
h i
þ 2x32$3;j�1xj
j�1$jh i
þ j�2xj�1j�2$j�1;j�1xj
j�1$jh i
¼j�1 ajj�1$j
þ 1x21$2þ2x3
2$3þ���þ j�2xj�1j�2$j�1;
h
j�1xjj�1$j
ið23Þ
where iai?1# indicates the ‘‘joint angular accelerations’’
obtained by Adams� by default. Separating the so called
real part of equation (23), i.e. the first three rows, it follows
that
j�1a#j
j�1s j ¼ j�1ajj�1s j
þ 1x21s2 þ 2x3
2s3 þ � � � þ j�2xj�1j�2sj�1
� �� j�1xj
j�1s j� �
: ð24Þ
It is important to note that another interpretation of the
‘‘joint angular accelerations’’ obtained by Adams�, is
related to the computation of the Coriolis acceleration, as
follows
j�1a#j
j�1s j ¼ dj�1xj
dt
� �1
¼j�1 ajj�1s j þ 1x2
1s2 þ 2x32s3 þ � � �
�þ j�2xj�1
j�2sj�1Þ � j�1xjj�1s j
� �ð25Þ
where the subscript, 1, in the square brackets indicates the
reference system with respect to which the derivative has
4 A possible explanation is set forth in the conclusions.
Engineering with Computers (2015) 31:11–28 15
123
been computed. It is important to recognize that this
derivative and its corresponding angular acceleration
magnitude j-1aj# is not the joint angular acceleration mag-
nitude as indicated by the vast majority of textbooks and
research papers, i.e. j-1aj, the relative angular acceleration
magnitude of body j relative to body j - 1.
The correct joint angular acceleration is obtained by the
same derivation as in Eq. (25), except that the reference
frame is j - 1 instead of 1.
j�1a j ¼ dj�1x j
dt
� �j�1
¼ dj�1xjj�1s j
dt
� �j�1
¼ dj�1xj
dtj�1s j ¼ j�1aj
j�1s j
ð26Þ
See for example, Ginsberg [14], page 128, Huang [15],
page 43, Rico and Duffy [24] or Rico et al. [25].
The difference between the ‘‘joint angular accelera-
tions’’ computed by Adams� is given by
j�1E j ¼ j�1a#j
j�1s j � j�1ajj�1s j
¼ 1x21s2 þ 2x3
2s3 þ � � � þ j�2xj�1j�2sj�1
� �� j�1xj
j�1s j� �
:
ð27Þ
Thus, for serial open chains, Adams� computes the
most appropriate angular accelerations for the first
kinematic pair, see Eq. (20), or when the displacements
of the serial chain are contained in the subgroup of
Schonfliess displacements5 since, in that case, see
Eq. (27), all the unit vectors isiþ1 for i ¼ 1; 2; . . .; j�1 are parallel and their vector products are zero. In all
other general cases, the ‘‘joint angular accelerations’’
provided by the default results of Adams� are
different.
Furthermore, it can be proved that the difference
between the ‘‘joint angular accelerations’’ computed by
the default results of Adams� and the most appropriate
joint angular accelerations, see Eq. (27) is perpendicular
to the most appropriate angular acceleration and, therefore
to the axis of the kinematic pair. Indeed, it can be easily
computed that
j�1s j � j�1E j ¼ j�1s j � 1x21s2 þ 2x3
2s3 þ � � ���
þj�2xj�1j�2sj�1
�� j�1xj
j�1s j� �
� ¼ 0
ð28Þ
since in the triple dot product two of the vectors involved
are equal to j�1s j.
Finally, for closed linkages, there is still another case
where the default results of Adams� also provides the
most appropriate value of the joint angular acceleration.
Consider a closed kinematic chains with j - 1 links.
This closed kinematic chain is obtained from an open
serial chain with j links, where the j-th link is rigidly
joined with the fixed link, 1. Then, from the final form
of Eq. (23),
j�1a#j
j�1$ j ¼ j�1ajj�1$ j
þ 1x21$2 þ 2x3
2$3 þ � � �h
þ j�2xj�1j�2$j�1; j�1xj
j�1$ j�:
ð29Þ
However, from the velocity analysis of a closed kinematic
chain, see Eq. (5), substituting m by j, it follows that
1x21$2 þ2 x3
2$3 þ � � � þ j�2xj�1j�2$j�1 þ j�1xj
j�1$ j ¼ 0:
ð30Þ
Therefore
1x21$2 þ 2x3
2$3 þ � � � þ j�2xj�1j�2$j�1 ¼ �j�1xj
j�1$ j:
Hence, the Lie product in the right part of Eq. (29)
involves two equal screws with opposite sign, and the
result is 0. Hence
j�1a#j
j�1$ j ¼ j�1ajj�1$ j:
Thus it can be concluded that the joint angular
accelerations of the two kinematic pairs that connect the
linkage to the fixed link are properly computed by the
default results of Adams�. This result can be extended to
multi-loop linkages without unexpected surprises.
3 Examples of acceleration analysis of kinematic chains
In this section, two examples of kinematic chains, a serial
spatial manipulator and a closed spherical linkage, are
presented. These examples compare the joint angular
accelerations obtained by using the theory presented in
Sect. 2 and programmed in Maple�, with the results
obtained employing ANSYS�, Inventor�, Adams� and
Solid Works�. The comparison shows that the default
results of Adams� differently determines the ‘‘joint angular
accelerations’’ of the kinematic pairs of a kinematic chain.
Furthermore, it is shown that using the capabilities of Solid
Works� of choosing the coordinate system with respect to
which the joint angular acceleration is represented6, it is
possible to provide a clear explanation of why the default
results of Adams� computations of the ‘‘joint angular
accelerations’’ are different from those commonly accepted
as most appropriate.
5 It should be noted that the subgroup of planar displacements, a very
important case, is contained in the Schonfliess subgroup.
6 As previously indicated, Solid Works� employs the same Solver
module of Adams�.
16 Engineering with Computers (2015) 31:11–28
123
3.1 Kinematic analysis of a FANUC-200iB Serial
Manipulator
In this section the results for the inverse acceleration
analysis of the serial manipulator FANUC-200iB as an
example of an open serial chain. The results of the ana-
lytical method indicated in Sect. 2 and programmed in
Maple� software is compared with the results obtained by
using the default results of Adams�, ANSYS�, Inventor�
and SolidWorks�. Furthermore, an additional comparison
with the results obtained with SolidWorks� by choosing an
appropriate coordinate system is also added.
In order to provide a detailed comparison, the results for the
inverse acceleration analysis for two different values of time
are presented. Finally, it is verified that, unlike the ‘‘joint
angular accelerations’’ the translational accelerations of points
are properly computed by the default results of Adams�.
3.1.1 Kinematic of the serial manipulator FANUC-200iB
The FANUC-200iB manipulator has six revolute joints and
six degrees of freedom, a simplified diagram of the serial
manipulator is presented in Fig. 4a where a cylinder repre-
sents a revolute joint, all the dimensions required to perform a
kinematic analysis are shown. The coordinate systems OiX-
iYiZi correspond to the proximal variant of the Denavit-Har-
tenberg convention, see [20]. From this diagram it is possible
to obtain all the Denavit-Hartenberg parameters—the offsets,
di, the link lengths, ai, and the link angles, ai—, this infor-
mation is presented in Table 1. The parameters hi corresponds
to the angles between the planes formed by the links i - 1 and
i, for i = 1, 2, 3, 4, 5, 6, respectively. From now on,
h1 = 0h1, h2 = 1h2, h3 = 2h3, h4 = 3h4, h5 = 4h5 and
h6 = 5h6.
3.1.2 End-effector movement description
In order to perform an inverse acceleration analysis of the
FANUC-200iB manipulator, it is necessary to specify the
movement of the end-effector. In this case, a very simple
movement of the end-effector is employed. It consists of a
translational movement of the end-effector, where the point
O6, fixed in the end-effector, describes a circular path on a
plane parallel to the X - Z plane given by y = 200 mm. The
center of the circular path is given by rC = (300 mm, 200 mm,
650 mm) and the radius of the circular path is r = 50 mm,
see Fig. 4b. Thus, the position of point O6, with respect to the
origin of the coordinate system is given by
rO6=O0tð Þ ¼ 300þ 50 sinðtÞ½ �iþ 200jþ 650þ 50 cosðtÞ½ �k
ð31Þ
Table 1 Numerical values for the Denavit-Hartenberg parameters,
proximal variant
i hi(rad) di(mm) ai(mm) ai(rad)
0 – – 0 0
1 h1 350 150 -p/2
2 h2 0 250 0
3 h3 0 75 -p/2
4 h4 290 0 p/2
5 h5 0 0 -p/2
6 h6 80 – –
Fig. 4 a Diagram of the
FANUC-200iB manipulator. All
dimensions in millimeters.
b Plane of movement of point
O6
Engineering with Computers (2015) 31:11–28 17
123
Thus, the initial position of point O6 is given by
rO6=O00ð Þ ¼ 300 mm i; 200 mm j; 700 mm k
� �ð32Þ
where i; j and k represent the unit vectors along the
X, Y and Z directions associated with the coordinate system
shown in Fig. 4a. In addition, the orientation of the
coordinate system, O6X6Y6Z6, with respect to O0X0Y0Z0,
is given by the constant rotation matrix. Thus the
orientation of the end-effector during the movement
remains constant as defined by
0R6 ¼0 0 1ffiffi
2p
2�ffiffi2p
20ffiffi
2p
2
ffiffi2p
20
24
35: ð33Þ
Since, in general, for a given position of the end-effector
there are up to eight different solutions for the inverse
position analysis, and the velocity and acceleration analyses
depends upon the particular solution of the position
analysis, it is necessary to indicate the desired position
solution, shown in Fig. 4b. In this case, the solution is given
by 0h1 = 0.7378150 rad, 1h2 = - 2.079407 rad, 2h3 =
0.306659 rad, 3h4 = 1.787951 rad, 4h5 = - 0.759903
rad and 5h6 = - 2.651654 rad.
3.1.3 Analytical results
The velocity and acceleration of the point O6 are the first
and second order time derivatives of Eq. (31). Hence, one
can obtain the velocity and reduced acceleration state of
the end-effector with respect to the fixed link; i. e.0VO
6 , 0AR6, for any instant of time. Thus, it is possible to
carry out, iteratively the inverse position, inverse velocity,
and inverse acceleration analysis. This analytical procedure
was programmed in the Maple� computer software. The
program provides the results for 360 evenly spaced inter-
vals of time, where time goes from 0 to 2p s. For the
movement of the end-effector, there are four real solution
sets of the inverse position analysis. The inverse position
analysis results corresponding to the desired position
solution, shown in Fig. 4b are shown in Fig. 5. Once the
inverse position analysis is solved, it is possible to set up
the equations for the inverse velocity, see Eq. (2), and the
inverse acceleration analysis, see Eq. (9).
The graphs for the angular accelerations are provided,
the first three pairs, 0a1, 1a2 and 2a3 in Fig. 6a and the last
three pairs, 3a4, 4a5 and 5a6 in Fig. 6b.
3.1.4 Software results
The same inverse position, inverse velocity and inverse
acceleration analysis were carried out using four different
programs, ANSYS�, Inventor�, Adams� and Solid-
Works�. The graphs for the joint angular accelerations,
obtained from all these programs, are given in the same
order as in the analytical results. The first graphs present
the joint angular accelerations of the first three pairs,
0a1, 1a2, 2a3 and the second graphs present the angular
accelerations of the last three pairs, 3a4, 4a5, 5a6. The
graphs are arranged as follows. Figure 6a, b for the alge-
braic computation of the angular accelerations using
Maple�, similarly Fig. 6c, d for ANSYS�, Fig. 6e, f for
Inventor�. Figure 7a, b show the magnitudes or absolute
values of the angular accelerations as computed with
Maple�, similarly Fig. 7c, d for the default results of
Adams� and Fig. 7e, f for SolidWorks� also show the
absolute values. It should be noted that the graphs corre-
sponding to the default results of Adams� and Solid-
Works� show the absolute value of the ‘‘joint angular
accelerations’’. This feature is due to the fact that in the
postprocessing phase of both programs, this is the only
readily available option. As indicated previously, it is
possible for Adams� to obtain the most appropriate joint
angular accelerations by requesting different results from
those of the default option. However, for beginners this
option is not readily available.
Figure 6, shows a very good agreement between the
results obtained by the analytical process programmed in
Maple� and those obtained by using ANSYS� and
Inventor�. Figure 7, shows a very good agreement between
the results obtained by either the default results of Adams�
and SolidWorks�7. This result is not surprising since, as
indicated in Sect. 1, SolidWorks� uses the default results
of Adams� as the tool for solving the kinematic analysis.
Finally, Figs. 6 and 7 shows that the result obtained by the
Fig. 5 Inverse position analysis results for serial manipulator FAN-
UC-200iB
7 It should be noted that SolidWorks� provide the results of angular
acceleration in deg/s2.
18 Engineering with Computers (2015) 31:11–28
123
default results of Adams� and SolidWorks� shows a
sizeable difference compared with those obtained by the
analytical process programmed in Maple� or obtained by
using ANSYS� or Inventor�. For example, while Maple�,
ANSYS� and Inventor� show that 1a2 = 0 around time
t = 3 s and 2a3 = 0 around time t = 2 s, Adams� and
SolidWorks� show that none of these events happen
according with their results. Moreover, Fig. 7 also shows
significant differences between the magnitudes or absolute
values of the angular accelerations computed by Maple�
Fig. 6 Maple�, ANSYS� and Inventor� results for the inverse acceleration analysis of a FANUC-200iB manipulator
Engineering with Computers (2015) 31:11–28 19
123
and those computed by the default results of Adams� or
SolidWorks�.
It is important to note that SolidWorks� has postpro-
cessing capabilities that, on the one hand, allow the user to
obtain the most appropriate solution for the joint angular
acceleration and, on the other hand, provide a decisive evi-
dence of the difference between the ‘‘joint angular
acceleration’’. SolidWorks� allows the user to decompose a
‘‘joint angular acceleration’’ on its components along a
coordinate system in which one of the axes is parallel to the
revolute axis that connects two consecutive links. For
example, Fig. 8a shows the dialog box that allows one to
decompose an angular acceleration, in this case 3a4; along a
coordinate system whose X axis is parallel to the axis of the
Fig. 7 Maple�, the default results of Adams� and SolidWorks� results for the inverse acceleration analysis of a FANUC-200iB manipulator
20 Engineering with Computers (2015) 31:11–28
123
revolute that connects links 3 and 4. Figure 8(b) shows the
graphs of the three components x, y and z of 3a4: It is easy to
see that the graph of 3a4x agrees with the most appropriate
results for 3a4 provided by Maple�, ANSYS� and Inventor�.
Furthermore, it must be now obvious that the y and
z components are related to the terms indicated in Eq. (27),
and as indicated in Sect. 2 they are perpendicular to the most
appropriate angular acceleration. Finally, it must be equally
obvious that a joint angular acceleration cannot have com-
ponents perpendicular to the directions of the revolute axis.
3.1.5 Obtaining the most appropriate joint angular
accelerations using Adams�
In this section, it will be shown that using Adams�, it is
possible to obtain the most appropriate joint angular
accelerations. For that purpose, one has to make a
new request under the instrumentation toolbox of
Adams�, see [1]. Figure 9 exemplifies the request for
all the most appropriate joint angular accelerations
associated with the kinematic pairs of the FANUC-
200iB manipulator. It is important to note that only
the angular accelerations around the Z axes of each
revolute pair is requested. Similar requests can be
asked for the X and Y components of the angular
accelerations
Figure 10 shows the results of such requests. Figure 10a
presents the results for the first three revolutes, while
Fig. 10b presents the results for the last three revolutes.
Now, it is evident that these results are in complete
agreement with those obtained using Maple�, Ansys� and
Inventor�, see Fig. 6.
(a) (b)
15.0
10.0
5.0
0.0
-5.0
-10.0
Ang
ular
Acc
eler
atio
n (d
eg/s
ec**
2)
-15.00.00 1.00 2.00 3.00
Time (sec)
4.00 5.00 6.28
3α4,z
3α4,y
3α4,x
Fig. 8 a SolidWorks� dialog box used to descompose 3a4 along a coordinate system whose X axis is parallel to the axis of the revolute pair that
connects links 3 and 4. b Graphs of the components of 3a4
Z
X
Y
Fig. 9 Request for the angular
accelerations around the Z axes
of each revolute pair
Engineering with Computers (2015) 31:11–28 21
123
Fig. 10 Adams� results for the inverse acceleration analysis of a FANUC-200iB manipulator through the tool create a request
Table 2 Instantaneous joint
angular acceleration comparison
All values in 10-3 : rad/s2
Remark It can be proved that
after considering the request of
results different for those of the
default option, all
disagreements between Adams�
and the rest of the programs
disappear
Angular
acceleration
Maple
analytical
ANSYS Inventor SolidWorks
component
Adams
magnitudes
SolidWorks
magnitudes
Analysis for t1 = 3.6 s
0a1 -30.5083 -30.507 -30.51 -30.5085 30.5085 30.5085
1a2 147.5411 147.54 147.54 147.5412 148.1446 148.1444
2a3 -232.8751 -232.87 -232.88 -232.8746 232.8890 232.8889
3a4 19.5509 19.552 19.55 19.5503 32.9827 32.9827
4a5 11.7299 11.731 11.73 11.7321 24.8914 24.8915
5a6 -74.3043 -74.306 -74.30 74.3027 74.3033 74.3027
Analysis for t2 = 5 s
0a1 -134.9142 -134.91 -134.91 -134.9137 134.9138 134.9137
1a2 106.9109 106.91 106.91 106.9111 107.0159 107.0159
2a3 -7.2627 -7.2659 -7.26 -7.2632 11.6523 11.6523
3a4 -33.7928 -33.795 -33.80 -33.7952 35.7158 35.7164
4a5 133.7636 133.76 133.76 133.7606 133.8098 133.8093
5a6 98.2247 98.227 98.23 98.2273 98.2272 98.2273
Fig. 11 Acceleration of the O3 point. a Analytical results. b Adams� results
22 Engineering with Computers (2015) 31:11–28
123
3.1.6 Instantaneous angular acceleration comparison
In this section, the results for the inverse angular acceler-
ation analysis for two different instants of time will be
analyzed.
Table 2 presents the joint angular accelerations of all six
revolute joints obtained using the analytical procedure
programmed in Maple� and the results obtained using
ANSYS�, Inventor�, Adams� and SolidWorks�. More-
over, for SolidWorks� two different results are presented.
The column SolidWorks� component, provides the results
obtained using the decomposition indicated in Sect. 3.1.4,
while SolidWorks� magnitude, like Adams�, provides only
the magnitude of the angular acceleration.
Table 2 shows that for t1 = 3.6 s, the default results of
Adams� and SolidWorks� magnitude, show significant dif-
ferences in the values of 3a4 and 4a5. Similarly, for t2 = 5 s,
the default results of Adams� and SolidWorks� magnitude,
present significant deviations in the values of 2a3 and 3a4.
3.1.7 Traslational acceleration
Since it was found that the default results of Adams� does
not readily compute the relative joint angular accelerations
of revolute pairs, it was regarded necessary to verify the
correctness of the computations of traslational accelerations
of points that belong to the different links of the serial
manipulator. To that end, the point O3 located at the origin of
the coordinate system O30X3Y3Z3, see Fig. 4a, was chosen.
Figure 11a shows the acceleration components of the
point O3 found analytically. On the other hand, the acceler-
ation components of the same point O3 computed by the
default results of Adams� are shown in Fig. 11b. The results
show that the default configuration of Adams� computes
correctly the traslational accelerations of point O3.
Table 3 Numerical values for the Denavit-Hartenberg parameters,
proximal variant
i hi (�) di (mm) ai (mm) ai (�)
1 h1 0 0 -80
2 h2 0 0 60
3 h3 0 0 30
4 h4 0 0 60
Fig. 12 A discrepance in Ansys� postprocessing
Oi
4
3
2
1
z1z4
z3
z2
x1
x2
x3x4
60°30°
60°
-80°
Fig. 13 Diagram of the spherical four bar linkage
Fig. 14 Position analysis results for spherical four bar linkage
Engineering with Computers (2015) 31:11–28 23
123
3.1.8 A discrepance in Ansys� postprocessing
Finally, this section presents a discrepancy in the post-
processing of the angular velocity analysis of the same
FANUC-200iB manipulator. Figure 12 shows the results
for the angular velocity and acceleration corresponding to
the revolute that connects links 3 and 4. Figure 12b shows
that the angular acceleration is not a constant function, and
therefore, it is impossible that the angular velocity shown
in Fig. 12a can be the zero function.
The discrepancy has been reported and it is expected
that it will be promptly resolved.
3.2 Kinematic analysis of a spherical four bar linkage
A spherical four bar linkage is presented in Fig. 13 where
the cylindrical assemblies represent a revolute joint. All the
dimensions required to perform a kinematic analysis are
shown. The coordinate systems OiXiYiZi correspond to the
proximal variant of the Denavit-Hartenberg convention,
see [20]. From this diagram it is possible to obtain all the
Denavit-Hartenberg parameters—the offsets, di, the link
lengths, ai, and the link angles, ai—. This information is
presented in Table 3. Because a spherical four bar linkage
with revolute joints on the axes Z1, Z2, Z3 and Z4 is a one
degree of freedom mechanism, a single angle must be
specified. The angle h4 is selected as the input angle, and
for the position shown in Fig. 13, is given by h4 = 0�.
In Table 3, hi corresponds to the angles between the
planes formed by the links i - 1 and i, for i=1, 2, 3, 4,
respectively; it should be noted that in this case, the link 0
correspond to the link 4. From now on, h1 = 4h1, h2 = 1h2,
h3 = 2h3 and h4 = 3h4.
3.2.1 Analytical results
In order to carry out the velocity and acceleration analyses,
it is necessary to perform the position analysis. For any
position of the input angle, 3h4, there are two solutions, for
the angles 4h1, 1h2 and 2h3. The position analysis results
corresponding to the selected solution is shown in Fig. 14.
Once the position analysis is solved, it is possible to set up
the equations for the velocity, see Eq. (5), and the accel-
eration analysis, see Eq. (11). For the velocity analysis, it is
Fig. 15 Maple�, ANSYS� and Inventor� results for the joint acceleration analysis of a spherical four bar linkage
24 Engineering with Computers (2015) 31:11–28
123
assumed that the angular velocity 3x4 is known and equal
to 2 p rad/s. Similarly, for the acceleration analysis, it is
assumed that the angular acceleration 3a4 is known and
equal to 0 rad/s2.
3.2.2 Software results
The same position, velocity and acceleration analysis were
carried out using four different programs, ANSYS�,
Inventor�, the default results of Adams� and Solid-
Works�. The graphs for the angular accelerations, obtained
from all these programs, are arranged as follows. Fig-
ure 15a for Maple�, Fig. 15b for ANSYS�, Fig. 15c for
Inventor�, Fig. 16a for the magnitudes or absolute values,
Fig. 16b for the default results of Adams� and Fig. 16c for
SolidWorks�. It should be noted that the graphs corre-
sponding to the default results of Adams� and Solid-
Works� show the absolute value of the angular
acceleration. This feature is due to the fact that in the
postprocessing phase of both programs, this is the only
readily available option. As indicated previously, it is
possible for Adams� to obtain the most appropriate joint
angular accelerations by making a request for results
different from the default option. However, for beginners
this option is not readily available.
Figure 15, shows a very good agreement between the
results obtained by the analytical process programmed in
Maple� and those obtained by using ANSYS� and
Inventor�. Figure 16, shows a very good agreement
between the absolute value results obtained by either the
default results of Adams� and SolidWorks�8 but Fig. 16a
shows sizeable differences between the magnitudes or
absolute values as obtained with Maple� and the magni-
tudes obtained by either Adams� and SolidWorks�.
Finally, Figs. 15 and 16 shows that the result obtained by
the default results of Adams� and SolidWorks� shows
sizeable differences compared with those obtained by the
analytical process programmed in Maple� or obtained by
using ANSYS� or Inventor�.
It is important to note that SolidWorks� has postpro-
cessing capabilities that on the one hand allow the user to
obtain the most appropriate solution for the joint angular
acceleration and on the other hand provide a decisive proof
Fig. 16 Maple�, the default results of Adams� and SolidWorks� results for the acceleration analysis of a spherical four bar linkage
8 It should be noted that SolidWorks� provide the results of joint
angular acceleration in deg/s2.
Engineering with Computers (2015) 31:11–28 25
123
of the miscalculation of the angular acceleration. Solid-
Works� allows the user to decompose a joint angular
acceleration on its components along a coordinate system in
which one of the axes is parallel to the revolute that con-
nects two consecutive links. For example, Fig. 17a shows
the dialog box that allows to decompose a joint angular
acceleration, in this case 2a3; along a coordinate system
whose Z axis is parallel to the axis of the revolute that
connects links 2 and 3. Figure 17b shows the graphs of the
three components x, y, and z of 2a3: It is easy to see that the
graph of 2a3z agrees with the most appropriate results for 2a3
provided by Maple�, ANSYS� and Inventor�.
Furthermore, it must be now obvious that the x and
y components are related to the terms indicated in Eq. (27),
and as indicated in Sect. 2 they are perpendicular to the
most appropriate joint angular acceleration. Finally, it must
be equally obvious that a joint angular acceleration can not
have components perpendicular to the directions of the
revolute axis.
3.2.3 Instantaneous angular acceleration comparison
In this section, the results for the inverse angular acceler-
ation analysis for two different instants of time will be
analyzed.
Table 4 presents the joint angular accelerations of all
four revolute joints obtained using the analytical procedure
programmed in Maple� and the results obtained using
ANSYS�, Inventor�, the default results of Adams� and
SolidWorks�. Moreover, for SolidWorks� two different
results are presented. The column SolidWorks� component,
provides the results obtained using the decomposition
indicated in Sect. 3.1.4, while SolidWorks� magnitude, like
the default results of Adams�, provides only the magnitude
of the angular acceleration.
Table 4 shows that for t1 = 0.35 s and t2 = 0.8 s, the
default results of Adams� and SolidWorks� magnitude,
present significant differences in the values of 1a2 and 2a3,
respectively.
Table 4 Instantaneous angular
acceleration comparison
All values in rad/s2
Remark. It can be proved that
after considering the request of
results different for those of the
default option, all
disagreements between Adams�
and the rest of the programs
disappear
Angular
acceleration
Maple
analytical
ANSYS Inventor SolidWorks
component
Adams
magnitudes
SolidWorks
magnitudes
Analysis for t1 = 0.35 s
3a4 0 0 -0 0 0 0
4a1 42.43721 42.437 42.43721 42.43721 42.43721 42.43721
1a2 -3.48178 -3.4818 -3.48178 -3.48178 8.97345 8.97345
2a3 -32.52036 -32.52 -32.5204 -32.5204 42.77995 42.77995
Analysis for t2 = 0.8 s
3a4 0 0 0 0 0 0
4a1 -8.56208 -8.5621 -8.56208 -8.56208 8.56208 8.56208
1a2 8.91847 8.9185 8.91847 8.91847 10.16295 10.16295
2a3 -5.98466 -5.9847 -5.98466 -5.98466 12.25051 12.25051
4
12
3
(a) (b)
5000
4000
3000
2000
1000
-1000
-2000
-30000.0 0.1 0.2 0.3 0.4 0.5
Time (sec)
0.6 0.7 0.8 1.00.9
0
Ang
ular
Acc
eler
atio
n (d
eg/s
ec**
2)
2α3,y
2α3,x
2α3,z
Fig. 17 a SolidWorks� dialog box used to descompose 2a3 along a coordinate system whose Z axis is parallel to the axis of the revolute pair that
connects links 2 and 3. b Graphs of the components of 2a3
26 Engineering with Computers (2015) 31:11–28
123
4 Conclusions
The present contribution has shown that the default
results of Adams� incorrectly computes the angular
acceleration of the kinematic pairs of spatial and spherical
kinematic chains. Therefore, SolidWorks�, that employs
Adams� as the software that solves the kinematic analy-
ses, also provides incorrect results. The readers are
warned about that.
Furthermore, using the postprocessing capabilities of
SolidWorks� a simple explanation for the mistake is
found and a simple method for correcting the results is
presented. The correct results for the joint angular accel-
erations can be also obtained using Adams� by making a
request for all the proper joint angular accelerations,
unfortunately this option is not easily accessible to
beginner users of Adams� and, as far as the authors are
aware, the option is not available to users of SolidWorks�,
at least up to the version used to carry out this contribu-
tion. It should be stressed that this contribution does not
advocate one to discontinue the use of Adams� and should
be thought more as an advisory note to double check the
results of any computer simulation. It may be the case that
the Adams� developers calculated the angular acceleration
vector as the derivative with respect to ground of the
angular velocity vector between bodies j and j ? 1 and
then returned the magnitude of this vector. This magnitude
is not the relative angular acceleration about the screw
axis connecting these bodies, which is what most users
would be interested in calculating. It could also be spec-
ulated that Adams� developers chose to differently com-
pute the joint angular accelerations because, if one follows
this approach, the ‘‘joint angular accelerations’’ are addi-
tive; i.e.
0an ¼ 0a1 þ 1 a2 þ � � � þ n�1an:
As indicated, the so called real part of Eq. (5), the
angular velocities, are indeed additive; i. e.
0xn ¼ 0x1 þ 1x2 þ � � � þ n�1xn:
However, it is well known, see Kane and Levinson
[17], page 26, or Josephs and Huston [16], page 93, that
angular accelerations are not additive. As a marginal
note, these results can be thought of as a verification of
the validity of the acceleration equations developed
about 15 years ago, see [24], Rico et al. [25] and
Gallardo [13]. The correctness of these equations have
been challenged several times by anonymous reviewers
in the last 6 years.
Finally the paper also shows that sometimes the results
correctly computed by the solver engine of a program, for
example ANSYS�, can be incorrectly displayed.
Acknowledgments The authors thankfully acknowledge the support
of Conacyt, the Mexican National Council for Science and Technol-
ogy, for its support via Basic Science Project Number CB-2010-01-
156558. Moreover, the first author and the last four thank Conacyt for
their graduate studies scholarships. All the authors thank to Division de
Ingenierıas, Campus Irapuato-Salamanca, Universidad de Guanajuato,
for its continuous support. In addition, the authors thank M.Sc. Carlos
Franco, from SCC group, the authorized representant of ANSYS� in
Mexico for his willingness and openness to answer our queries and
following up with the fixing of the discrepancy.
References
1. Adams/View help - MSC Adams 2011, ID: DOC10105, http://
simcompanion.mscsoftware.com/infocenter/index?page=content&
cat=1VMO50&channel=DOCUMENTATION05 Dec. 2012
2. Akella R, Carlson M (2006) The Basic of Dynamic Simulation.
Autodesk University, MA, pp 23–24
3. Anonymous: Product Information COSMOSMotion, Brochure
2611-02CMo (2003)
4. Blundell M, Harty D (2004) Multibody Systems Approach to
Vehicle Dynamics. Elsevier Butterworth-Heinemann,
Amsterdam
5. Brat V, Lederer P (1973) KIDYAN: computer-aided kinematic
and dynamic analysis of planar mechanisms. Mech Mach Theory
8:457–467
6. Carbone G, Malchikov A, Ceccarelli M, Jatsun S, (2010) Design
of a clamp mechanism. In: Proceedings of the 10th IFToMM
International Symposium on Science of Mechanisms and
Machines, Visa, SYROM2009. 1st edn. Springer, Dordrecht
7. Chang KH (2008) Motion Simulation and Mechanism Design
with COSMOSMotion 2007, No place of publication: Schroff
Development Corporation
8. Denavit J, Hartenberg RS, Razi R, Uicker JJ Jr. (1965) Velocity,
Acceleration, and static-force analysis of spatial linkages. J Appl
Mech ASME Trans, pp 903–910
9. Dix RC, Lehman TJ (1972) Simulation of the Dynamics of
Machinery. Transactions of the ASME, Journal of Engineering
for Industry 94:433–438
10. Dopker B, Yim HJ (1988) A Command processor system with an
integrated data base for flexible mechanical system dynamics.
Adv Eng Softw 10:15–21
11. Erdman A.G. (1985) Computer-aided design of mechanisms:
1984 and beyond. Mech Mach Theory 20:245–249
12. Fallahi B., Ragsdell K.M. (1983) A compact approach to planar
kinematic analysis. ASME J Mech Transm Autom Design
105:434–440
13. Gallardo J (1999) Analisis Cinematicos de Orden Superior de
Cadenas Espaciales, Mediante el Algebra de Tornillos, y sus
Aplicaciones. Dr. Sc. Tesis, Centro de Graduados e Investigacion,
Instituto Tecnologico de la Laguna
14. Ginsberg J (2008) Engineering dynamics. Cambridge University
Press, Cambridge
15. Huang L (2012) A concise introduction to mechanics of rigid
bodies. In: Multidisciplinary engineering. Springer, New York
16. Josephs H, Huston RL (2002) Dynamics of mechanical systems.
CRC Press, Boca Raton
17. Kane TR, Levinson DA (1985) Dynamics: theory and applica-
tions. McGraw-Hill, New York
18. Kecskemethy A, Hiller M (1994) An object-oriented approach for
an effective formulation of multibody dynamics. Comput Meth-
ods Appl Mech Eng 115:287–314
Engineering with Computers (2015) 31:11–28 27
123
19. Kortum W, Schiehlen WO, Arnold M (2005) Software tools:
from multibody system analysis to vehicle system dynamics. In:
Aref H, Philips JW (eds) Mechanics for a new millennium.
Kluwer Academic Publishers, Dordrecht, pp 225–238
20. Lipkin H (2005) A Note on Denavit-Hartemberg Notation in
Robotics. In: Paper DETC2005-85460, Proceedings of the 2005
ASME Design Engineering Technical Conference and Computers
and Information in Engineering Conference, Long Beach
21. Orlandea N, Calahan DA, Chace MA (1977) A sparsity-oriented
approach to the dynamic analysis and design of mechanical
systems part 1. Trans ASME J Eng Ind 99:433–437
22. Orlandea N, Calahan DA, Chace MA (1977) A sparsity-oriented
approach to the dynamic analysis and design of mechanical
systems part 2. Trans ASME J Eng Ind 99:433–438
23. Paul B (1975) Analytical dynamics of mechanisms—a computer
oriented overview. Mech Mach Theory 10:481–507
24. Rico JM, Duffy J (1996) An application of screw algebra to the
acceleration analysis of serial chains. Mech Mach Theory
31(4):445–457
25. Rico JM, Gallardo J, Duffy J (1999) Screw theory and higher
order kinematic analysis of open serial and closed chains. Mech
Mach Theory 34(4):559–586
26. Pozdırca A (2010) Design of a clamp mechanism. In: Proceed-
ings of the 10th IFToMM International Symposium on Science of
Mechanisms and Machines, SYROM2009 Visa. 1st edn.
Springer, Dordrecht
27. Sheth PN, Uicker JJ Jr (1972) IMP integrated mechanisms pro-
gram: a computer-aided design analysis system for mechanisms
and linkage. Trans ASME J Eng Ind 94:454–464
28. Tadeo A, Rico JM, Cervantes-Sanchez JJ, Gonzalez-Palacios
MA, Reyes D, Duran I, Lucero B, Arzola MO (2009) Analisis
Cinematico de Mecanismos Esfericos. Memorias del XV Cong-
reso Internacional Anual de la SOMIM, Obregon, Sonora,
Mexico
29. Wittenburg J (1989) Dynamics of multibody—a brief review.
Acta Astronautica 20:89–92
28 Engineering with Computers (2015) 31:11–28
123