Simulation Tool for Teaching
and Learning 3D Kinematics
Workspaces of Serial Robotic
Arms With Up to 5-DOF
´
´
T.J. MATEO SANGUINO, J.M. ANDUJAR MARQUEZ
´
´
´
Dpto. de Ing. Electr´ nica, Sistemas Informaticos y Automatica, Universidad de Huelva (EPS La Rabida),
o
´
Ctra. Huelva-La Rabida S/N, Palos de la Frontera, Huelva 21819, Spain
Received 26 October 2009; accepted 8 February 2010
ABSTRACT:
This work develops a new educational simulation tool whose objective is to make attractive and
practical teaching and learning in kinematics of serial robotic arms. At engineering laboratories in which practices
with robotic arms are necessary for understanding fundamental concepts of theory, students need to accomplish a
complete study attending to different aspects related with kinematics. Its graphic user interface (GUI) is a straight-
forward and easy-to-follow Denavit–Hartenberg (DH)-based method which helps at engineering practices without
requiring a programming knowledge. We develop, in a theoretical way, both forward (FK) and inverse kinematics
(IK), which are necessary to demonstrate the study of an educational robotic arm as a practical case. The interactive
simulation tool allows defining DH parameters and geometry in serial arms with up to 5 degrees of freedom (DOF).
Thus, the interest of this work lies in an innovative graphic environment which teaching professionals can use
to study DH convention, observe the movement of serial robotic manipulators and map both forward and joint
workspaces in a visual manner. This process is much simpler that interpreting the results in an analytic way.
Furthermore, the generic capabilities of this simulation tool allow comparing different robot arm configurations
(considering its physical parameters and mechanical characteristics previously known), both if robotic arms are
physically available or not in lab.
© 2010 Wiley Periodicals, Inc. Comput Appl Eng Educ 20: 750–761, 2012; View
this article online at wileyonlinelibrary.com/journal/cae; DOI 10.1002/cae.20433
Keywords:
educational tool; kinematics; robotic arm; virtual instrument
INTRODUCTION
This article develops a new educational simulation tool created
for its use in the subject “robotics” [1], which is taught in the
third course of Computer Engineering and Electronic Engineering
degrees at the University of Huelva (Spain). Available bibliography
includes numerous works on tools aimed at studying and simulat-
ing models for low-cost robotic arms, which turn out to be very
appropriate for educational purposes. The simplest ones use an
Excel spreadsheet which allows creating a two-dimensional repre-
sentation of the arm and obtaining both forward (FK) and inverse
kinematics (IK) models through algebraic equations. A more
advanced implementation called L6KAP and performed by means
Correspondence to T.J. Mateo Sanguino
(tomas.mateo@diesia.uhu.es).
© 2010 Wiley Periodicals, Inc.
of C software, allows analyzing DH method in a Lynx6 robotic arm
through 2D graphs [2]. ROBOTSIM was developed as a simula-
tion tool for students focused on robotic-manipulator programming
based on animations and 3D graphs [3]. A computer-aided design
package for multi-degrees of freedom (DOF) manipulators allows
computing mathematical equations to follow DH kinematic con-
vention through a graphic user interface (GUI) [4]. For the study
of robotic arms of industrial use, Cakir and Butun [5] developed
an educational tool to solve kinematics for robots with 6-DOF.
The simulation of physical-kinematic models applied to
robotic arms and their behavior have inspired the creation of
numerous simulation environments. For example, a robotic tool-
box for Matlab
®
was developed to define work models as Puma 560
with matrices equations [6]. Based on this environment, ROBO-
LAB is a simulation toolbox developed to improve students’
problems in the field of Robotics [7]. ROBOMOSP is a complete
modeling and simulation tool for robotic manipulators through
750
TOOL FOR 3D WORKSPACES OF 5-DOF ROBOTIC ARMS
751
a 3D multiplatform CAD system. As main novelty, this package
principally developed for training researchers has the possibility
to be connected to remote robotic arms [8]. With this same pur-
pose, RobUaLab presents the development and implementation of
an e-learning environment [9–11]. This laboratory allows students
to simulate and to teleoperate a robot arm in an easy and user-
friendly way. The application has been developed using Easy Java
Simulations (EJS), an open-source tool for people who do not need
complex programming skills.
The construction itself of a manipulator involves geometri-
cal limitations in robot-joint movement depending on robot size,
shape, and kind of limbs [12]. The study of joint workspace
turns out to be interesting within kinematics to assure a con-
tinuous range of joint values when the end-effector attempts to
follow a position [13]. According to the points of a given tra-
jectory, Ref. [14] presents a simulator developed to calculate the
IK model of robotic manipulators with 5-DOF. Focused on this,
Qin and Carrera-Perpi˜ an [15] presents a work which studies IK
n´
workspaces applied to PUMA 560. With the aim of reducing com-
putation time, Ref. [16] obtains IK mapping of an arm with 4-DOF
through fuzzy logics.
The present article is organized in the following way. The
Educational Tool Section presents the learning and teaching
aspects of the simulation tool developed and its main components
are described. The following section develops the equations by
means of the DH method and the FK model is obtained for a
5-DOF manipulator. The Inverse Kinematics Section briefly dis-
cusses different IK methods and develops the geometrical method.
The Forward Workspace and Inverse Workspace Sections describe
the algorithms and the simulation tools developed, which allow cal-
culating both forward and joint workspaces for different robotic
arm configurations. The Experimentation Section puts into prac-
tice the methodology developed so far, robotic arm Lynx6 being
used with such purpose. Finally, this article contributes some con-
clusions on the work developed, provides new additions under
current development and offers the set of tools developed to the
scientific community for free download.
GENERAL OVERVIEW
The simulation tool has been programmed in LabView
TM
and it is
composed of the following applications: a 3D Robotic Arm Sim-
ulator (3D-RAS) subsystem, a 2D joint workspace subsystem, a
3D FK workspace subsystem and a 3D IK workspace subsystem.
Since the simulation tool is based on modules, this methodology
allows users following their studies and compares the geometry
of a given serial arm through its different subsystems. Thanks
to FK and IK, together with forward and inverse workspace, it
helps understanding kinematics aspects while using arm observa-
tions to debug discrepancies. In order to state more clearly the
contributions of this simulation tool, different capabilities, and
properties are compared to some of the previously available tools
(see Table 1).
FORWARD KINEMATICS
The solution to the problem of finding the FK model of a
robotic manipulator consists on finding a homogeneous trans-
formation matrix
T
relating Cartesian position (p
x
,
p
y
,
p
z
) with
Euler angles ( ,
θ,
) in the end-effector, in relation to the origin
of the coordinate system located at its base, when the values of
each joint establish the position and orientation of its segments.
Figure 1 shows an example of the low-cost commercial robotic
arm with 5-DOF, widely used for educational purposes. It is the
arm Lynx6.
DH proposed a matrix method, based on changes in reference
systems, which allows solving the FK model for a general-purpose
arm in a systematic manner [17]. Thus, it is possible to pass from a
reference system to the next by means of four basic transformations
by choosing appropriately the coordinate system linked to each
segment:
i−1
A
i
=
Rot
z(θ
i
)
·
T(0,
0,
d
i
)
·
T(a
i
,
0, 0)
·
Rot
x(α
i
)
(1)
Table 1
Main Features of Some Simulation Tools
Program
L6KAP
ROBOTSIM
Robotics
toolbox
ROBOLAB
Cakir and
Butun [5]
Language
C
C
Matlab
®
Matlab
®
Matlab
®
Visualizing
2D-Wire
3D-CAD
3D-Wire
3D-Solid
3D-Wire
Interactive
Yes
No
No
Yes
Yes
Input
Parameters
Commands
Commands
Parameters
Parameters
Robots
Lynx6
Rhino XR-3
PUMA 560
16 robots
Industrial
Educational
Yes
Yes
Yes
Yes
Yes
Concepts
DH, FK, and IK
Representation
Kinematics and
dynamics
Matrices, FK, IK,
and trajectories
Quaternion, FK,
IK, and
trajectories
Kinematics,
trajectories,
workspaces, and
dynamics
Trajectories
FK, IK, and
trajectories
DH, FK, IK,
Forward and
Inv. workspaces
DOF
5
5
6
6
6
Teleoperation
No
No
No
No
No
ROBOMOSP OpenSource
3D-Solid
Yes
Commands
Mitsubishi PA-10
7
Yes
ROBOSIM
RobUaLab
3D-RAS
—
EJS
LabView
TM
3D-CAD
3D-Solid
3D-Wire
Yes
Yes
Yes
Commands
Parameters
Parameters
Microbot
TeachMover
Scorbot ER-IX
Mit. PA-10
Up to 5-DOF
Yes
Yes
Yes
5
5, 7
5
No
Yes
Yes
752
´
MATEO AND ANDUJAR
Figure 1
Joints and rotation axes of Lynx6 as an example of serial robotic arm. [Color figure can be viewed in the online
issue, which is available at wileyonlinelibrary.com.]
where
i
−
1
A
i
(i
=
1, . . . , 6) stands for the resulting transformation
matrix relating the reference system of segment
i
−
1 with the
reference system of segment
ith
(see reference systems
S1
to
S5
in
Fig. 1); Rot
z(θ
i
) stands for rotation around axis
Z
i
−
1
with angle
θ
i
;
T(0,
0,
d
i
) is a translation of distance
d
i
along axis
Z
i
−
1
;
T(a
i
,
0, 0)
is a translation of distance
a
i
along axis
X
i
and Rot
x(α
i
) is a rotation
around axis
X
i
with angle
α
i
.
Obtained results shall depend exclusively on the geometrical
characteristics of the robotic arms. Therefore, physical parame-
ters
θ
i
,
d
i
,
a
i
, and
α
i
—depending on the already-known values of
joints and length in each coordinate system—shall be assigned and
expressed in terms of DH convention.
Multiplying individual matrices in Equation (1) in the correct
order, transformation matrix
i
−
1
A
i
, which solves the values of
position and orientation in each coordinate system, is that shown
in Equation (2)
p
xi
=
a
i
cos
θ
i
p
yi
=
a
i
sin
θ
i
p
zi
=
d
i
(12)
(13)
(14)
Therefore, in a more explicit manner, matrix (2) can be expressed
as in Equation (15)
Cθ
i−1
i
A
i
=
Sθ
i
0
0
−Cα
i
Sθ
i
Cα
i
Cθ
i
Sα
i
0
Sα
i
Sθ
i
−Sα
i
Cθ
i
Cα
i
0
a
i
Cθ
i
a
i
Sθ
i
d
i
1
(15)
n
xi
n
i−1
A
i
=
yi
n
zi
0
o
xi
o
yi
o
zi
0
a
xi
a
yi
a
zi
0
p
xi
p
yi
p
zi
1
where
Cθ
i
stands for cos
θ
i
and
Sα
i
for sin
α
i
, etc. Equation (16)
shows the relation between transformation matrices
i
−
1
A
i
, which
forms the kinematic chain in joints and consecutive segments in
the robotic arm
T
=
1
A
6
=
1
A
2
·
2
A
3
·
3
A
4
·
4
A
5
·
5
A
6
(16)
(2)
Individual terms in the first three columns (n,
o, a)
stand for the
orientation of the main axis within the coordinate system. Last
column
p
indicates origin position (x,
y, z).
Each term in the matrix
can be calculated through Equations (3)–(14)
n
xi
=
cos
θ
i
n
yi
=
sin
θ
i
n
zi
=
0
o
xi
= −cos
α
i
sin
θ
i
o
yi
=
cos
α
i
cos
θ
i
o
zi
=
sin
α
i
a
xi
=
sin
α
i
sin
θ
i
a
yi
= −sin
α
i
cos
θ
i
a
zi
=
cos
α
i
(3)
(4)
(5)
(6)
(7)
(8)
(9)
(10)
(11)
where
T
stands for the homogeneous transformation matrix we
sought for. Substituting the robotic arm’s DH parameters (see
Table 2 as example) in transformation matrices
1
A
2
to
5
A
6
, Equa-
tions (17)–(21) are obtained
Cθ
1
1
A
2
=
Sθ
1
0
0
0
0
1
0
Sθ
1
−Cθ
1
0
0
0
0
1
0
0
0
1
0
2.5Cθ
1
2.5Sθ
1
6.5
1
12Cθ
2+90
12Sθ
2+90
0
1
12Cθ
3−90
12Sθ
3−90
0
1
15.5Cθ
4
15.5Sθ
4
0
1
(17)
Cθ
2
2+90
A
3
=
Sθ
2+90
0
0
3−90
−Sθ
2+90
Cθ
2+90
0
0
−Sθ
3−90
Cθ
3−90
0
0
0
−Sθ
4
0
Cθ
4
−1
0
0
0
(18)
Cθ
3
A
4
=
Sθ
3−90
0
0
(19)
Cθ
4
4
A
5
=
Sθ
4
0
0
(20)
TOOL FOR 3D WORKSPACES OF 5-DOF ROBOTIC ARMS
753
Table 2
Physical Parameters Used in the DH Model Composing the
Kinematic Chain Shown in Figures 1 and 2b
θ
i
θ
1
θ
2
+90
◦
θ
3
−90
◦
θ
4
θ
5
d
i
(mm)
d
1
=
65
0
0
0
0
a
i
(mm)
a
1
=
25
a
2
=
120
a
3
=
120
a
4
=
155
0
α
i
90
◦
0
◦
0
◦
−90
◦
0
◦
Cθ
5
5
A
6
=
Sθ
5
0
0
−Sθ
5
Cθ
5
0
0
0
0
1
0
0
0
0
1
(21)
The homogeneous transformation matrix is obtained by calculating
the non-commutative multiplication of Equation (16) and can be
expressed in the following compact way
T
=
n
0
o
0
a
0
p
1
(22)
Figure 3
The ActiveX container of the GUI shows several models of
serial robotic arms with different number of DOF: (a) 3-Axis for bionic
arm, (b) 4-Axis for Denso VP-Series, (c) 5-Axis for Lynx6, and (d) the first
5-Axis for PUMA 560.
where (n,
o, a)
stand for an orthogonal triad representing orienta-
tion and
p
stands for a vector (p
x
,
p
y
,
p
z
) representing the position
of the end-effector.
Through the graphic interface of the 3D-RAS (see Fig. 2)
the user can control the FK (a) and configure DH parameters
of the studied robotic arm (b). As a practical case of the FK
models developed and studied with the 3D-RAS, different sim-
ple 3D representations of serial manipulators with 3-DOF [18],
4-DOF, and 5-DOF can be seen in Figure 3a,d. The generic
capability of the tool allows simulating the movement of serial
robotic arms in a graphical way and helps studying kinematic
models.
INVERSE KINEMATICS
The IK model allows positioning the arm once coordinates are
given (p
x
,
p
y
,
p
z
) for its end-effector. The DOF of a robot arm can
be taken as a representative measure of its movement capacity and
complexity involved in its control. There are no general algorithms
to solve the IK problem and, for an arm with 5-DOF, there are
several possible solutions to reach a given point in space. For that
reason, solving the IK model is more complex than solving the FK
model.
Figure 2
The user-friendly and interactive GUI of the 3D Robotic Arm Simulator. [Color figure can be viewed in the
online issue, which is available at wileyonlinelibrary.com.]
754
´
MATEO AND ANDUJAR
There are several methods proposed to solve positioning
problems [19]. On the one hand, iterative numerical solutions are
discarded, as they are not appropriate to control manipulators in
real time. On the other hand, algebraic equations—in spite of being
difficult to obtain—allow obtaining a closed but nonlinear solution
of the problem. Finally, finding a closed and feasible solution for
the inverse problem is possible by using a geometrical method
relating the coordinates of the end-effector, angles of joints and
the physical parameters of the robotic arm. The concept of the
method consists on dividing the solution of the problem into a set
of geometric subproblems within the plane. The method is even
more feasible when only the 4 first DOF defining the position
of the gripper are considered to minimize multiple solutions (see
Systems
{S1}
to
{S4}
in Fig. 1).
Generally it is not enough to obtain positioning of the arm’s
end-effector in Cartesian space, so it also becomes necessary to
orient the wrist with an angle
θ
6
in relation to the ground, since it
allows approaching objects. For the sake of simplicity, a constant
value can be used for this angle, so there is an only possible solution
for geometric equations [2]. A list of equations allowing obtaining
angles
θ
i
of position and orientation of the end-effector in relation
to the ground is reported through Equations (23)–(29)
θ
1
=
a
tan 2(p
y
, p
x
)
θ
2
=
a
tan 2((x
b
−
(q
×
z
b
)), (z
b
+
(q
×
x
b
)))
θ
3
=
θ
2
−
a
tan 2((x
b
+
(q
×
z
b
)), (z
b
−
(q
×
x
b
)))
θ
4
=
θ
6
−
a
tan 2((x
b
+
(q
×
z
b
)), (z
b
−
(q
×
x
b
)))
(23)
(24)
(25)
(26)
Figure 4
Example of the IK range for Lynx6 arm. Colors correspond with
joints described in Figure 1. [Color figure can be viewed in the online issue,
which is available at wileyonlinelibrary.com.]
where
θ
1
,
θ
2
,
θ
3
, and
θ
4
are joint angles formed by the arm’s
kinematic chain, while
θ
5
stands for angles introduced for gripper
opening or closure, and
θ
6
stands for wrist orientation in relation
to the ground
x
b
=
z
b
=
(p
x
−
a
1
−
(a
4
×
cos
θ
6
))
2
×
a
2
(p
z
−
d
1
−
(a
4
×
sin
θ
6
))
2
×
a
2
2
((x
b
)
(27)
(28)
q
=
1
+
(z
2
)
−
1)
b
(29)
where
x
b
and
z
b
stand for coordinates in axes
X
and
Z
at the end of
the forearm,
d
1
,
a
1
,
a
2
, and
a
4
are the length of segments defined in
Table 2, and
q
is a relation to facilitate compactness and equation
solving.
Figure 4 represents part of the 2D joint workspace subsystem,
which allows studying the IK model of serial arms when the
p
x
,
p
y
, or
p
z
coordinates of the end-effector change their values. The
study of kinematic motion can be studied separately for each joint
or combined within the same chart.
3D FORWARD WORKSPACE
Obtaining a mathematical equation to calculate workspace in serial
arms is not an easy task. For this reason, we develop a tool which
facilitates calculation and represents computationally, by means
of a point cloud, three-dimensional forward workspace for serial
robotic arms. Interest in the study of forward workspace is to deter-
mine, through the FK model, the reachable point cloud surrounding
the robotic arm.
Figure 5
Flow diagram of the algorithm developed for the forward
workspace.
评论