Sunteți pe pagina 1din 6


Abstract This work presents a novel simulation

methodology applied to a 5-DOF manipulator. The
work includes mathematical modeling of the direct,
inverse and differential kinematics as well as the
dynamics of the manipulator. The method
implements the path following in the 3D space and
uses the Matlab-Simulink approach. Several paths
were tested to verify the method. This methodology
can be used with different robots to test the
behavior and control laws.

Keywords Simulation methodology, Simulink, Manipulator

Robotics is one of the main disciplines in the industry
which can be used in the development of new technologies.
The synergy of robotics with the different applications like
submarine task, car assembly operation, vision systems and
artificial intelligence allows the innovation and reduces the
manufacture costs.
For this purpose, it is important that the robot
programmers are able to visualize and test the behavior of the
robots in different circumstances and with different
parameters. There are several programming algorithms to
simulate robotic systems [1]; some of them use the link and
joint positions, however, mainly the path following in the
Cartesian work space are visually showed by lineal plots [2].
Some other works only make a 3D virtual animation [3].
Other works only show the kinematic modeling in a mixed
programming environment like C++ and OpenGL [4], also,
some multiple interface programming technique has been
developed using Matlab, C++ and OpenGL [5][6]; in both
cases, the computational time increases, and is quite
complicated to manage the different programming tools.
Finally, some research that presents an interface between
Matlab and Simulink is used to simulate a mechatronic system
[7], however, it doesnt have a visual representation like the
one proposed in this article.

The main objective of the present work is to show a
complete simulation methodology using the same
programming platform, where, the combination of Matlab and
Simulink is proposed. Here, the mathematical calculations are
performed at the same time than its virtual representation. The
method allows to manipulate the robotic system and to
visualize the robots behavior from different perspectives.
To test the methodology, a manipulator robot with 5-DOF
as shown on figure 1 (Thermo Scientific CATALYST-5) is
used, this robot has the capability to load a maximum of 1.5
kg. A PD+G (Proportional Derivative with Gravity
Compensation) control is implemented based on a dynamic

Figure 1. Catalyst-5 Robot

The robot specifications are presented on table 1:
Link 1 length
Link 1 mass
Link 2 length
Link 2 mass
Link 3 length
Link 3 mass
Link 4 length
Link 4 mass
Link 5 length
Link 5 mass
Gravity acceleration G 9.81 m/s
Table 1. Robot specifications
The dynamic modeling of a manipulator robot with n-
degree of freedom (DOF.) can be divided in four steps: Direct
Kinematics, Inverse Kinematics, Differential Kinematics and
5-DOF Manipulator Simulation based on MATLAB-
Simulink methodology
Velarde-Sanchez J.A., Rodriguez-Gutierrez S.A., Garcia-Valdovinos L.G., Pedraza-Ortega J.C.,
PICYT-CIDESI, CIDIT-Facultad de Informatica, Universidad Autonoma de Queretaro,
Queretaro, Mexico.,,,

978-1-4244-5353-5/10/$26.00 2010 IEEE 295

Direct Kinematics:

The objective of the direct kinematics is to determine
the accumulative effect that comes from the set of variables of
each link, that is, to determine the position and orientation of
the end-effector.

The analysis of the Direct Kinematics was made using the
Denavit Hartembrerg convention as follows:

= (1)

Then, the table 2 was obtained with the results:

Table 2. Denavit Hartenberg parameters
After some calculations, the end-effector position vector is
defined by:




Inverse Kinematics:

The inverse kinematics main problem can be reduced
to both the calculus of the position and orientation inverse
kinematics, where a geometrical approach to the problem
solution is based in the Method proposed by Spong [8].

Differential Kinematics:
In the previous steps, the dynamics related with the position
of the end-effector as well as the location of the joints and its
position with respect to the reference frame, therefore, the
position problem will be changed to a speed analysis problem
of a serial manipulator.
The differential kinematics is defined by the next

= [q (2)

where J is the Jacobian matrix. This matrix depends on the
robot configuration and robot degrees of freedom (DOF).


The dynamic equation of an n-DOF in the manipulator can
be defined as:
H(q)q + C(q, q )q + g(q) = (3)

To carry out the manipulator analysis in this research,
we consider the Lagrangian analysis [9], this method consist
in the generalized coordinate analysis and it is based on the
Lagrangian function, which is defined by the difference
between the kinetic and the potential energies on a
mechatronic system and is defined as:

I = K - u (4)

In the case of the serial manipulators, the Lagrangian
is used in a matrix form and is represented by the next
Hq + I + C = (5)

where F = |I
, , I
, 6 = |0
, , 0
, Q = |
, ,
V is known as the Coriolis vector, G is the gravitational force
vector, and M is the inertia matrix where the analysis of the
manipulator is mostly performed.
The development of the mathematical algorithms is
carried out in Matlab and the implementation of the virtual
simulation was made in Simulink as shown on figures 2 (a),
(b), (c) and (d):

Joint i

2 0 0
3 0 0
4 0 0
0 0
978-1-4244-5353-5/10/$26.00 2010 IEEE 296



Figure 2. Robot Simulation project in

The block diagram that expresses the wh
necessary to carry out a simulation of a r
presented as a block diagram presented on t
process starts from the mechanical analysis, c
dynamics until the virtual representation of

Figure 3. Proposed Methodolog

hole methodology
robotic system is
the figure 3. The
continues with the
the robot and its
Mathematical modeling:
This step depends on the
analyzed. For demonstration p
calculations can be taken as a refe
physical and mechanical properties
centers, therefore, we can use a
equation (3).
Control Design:
The position control proble
manipulator can be solved according
Considering the dynamics
equation (5).
Having a constant path desi
Find a function in which t
qd (desired link direction)
Adaptable Control.

To solve this particular
(Proportional Derivative with
control is used as shown on figu

Figure 4. PD + G Con

Path programming:
The manipulator work space a
known. Then, the path should be pr
in the control system.
CAD Manipulator:
The virtual representation
mechanical visual representation,
SolidWorks program is used as
necessary to use geometric obj
approximation to each one of the
figure 5. If the complete assembly
simulation process will be more di
the fact that the model will be m
Simulink and also because the mass
harder to get.

Figure 5. SolidWork
e type of the robot to be
purposes, the dynamical
ference by considering the
of the links and the mass
model based control as
em of a manipulator robot
g to the following terms:
s of an n-DOF robot as
ired (Reference Point).
the q (robot links) tends to
) by using a PD, PID and
r problem, a PD + G
h Gravity Compensation)
ure 4.
ntrol System
and the path to follow are
rogrammed to be included
is close related with the
and due to this fact, the
a design tool, but it is
jects that are a closer
robot links as shown on
y of the robot is used, the
ifficult to carry out due to
more difficult to load in
center of each link will be
ks assembly.
978-1-4244-5353-5/10/$26.00 2010 IEEE 297

To visualize the prototype in 3D using Simulink, it is
necessary to convert the file into VRML 2.0. To solve this
matter, the 2009 SolidWorks version can be used and it is
necessary to export the design into VRML 2.0. If the file is
saved in VRML 1.0, by using the CrossRoads program the
version can be changed to the proper one.

Virtual Environment:
Once the previous steps have been completed and the
kinematics is programmed, the next step is to implement it in
the virtual environment that includes; manipulator design, data
showing and path following visualization.
In order to successfully carry out the simulation, it is
necessary to have a Matlab 2009 version that includes the full
3D animation library.

Manipulator design:
Here, the prototype is loaded by using the VR Sink
block, where the model can be edited using the VRML editor.
Due to the fact that the robot coming from the
mechanical system is different to the assembly, the operations
on the transformation from one link to other is different in this
editor, therefore it is necessary to perform the next tasks:
Identify each links of the manipulator.
Leave only 2 main transformations:
o The transformation on the base which wont be
o The link transformation where the movement chain is
performed to get the mathematical parameters (this is
variable depending on the robot to be used).
Text Visualization:

To obtain the real-time data from the manipulator, we can
use the VR Text Output.
It is necessary to reference the virtual environment, also to
introduce the variable names to be shown together with the
variable format.

Path Following Visualization:

To show the path that the robot follows in the simulation
process, it is necessary that the desired target as well as the
real target to be connected to the block named V Tracer.
We need to connect x, y and z for the data acquisition. The
type of path to be followed is selected and projected on the
virtual environment; also, it is necessary to reference the name
of the transformations in the manipulators design block to be
represented in the workspace.


Once the virtual environment is created, and having the
calculations already solved, the interface is carried out by
executing the program in Simulink.
In this way, it can be observed the linear plots in the virtual
environment at the same time that the dynamical behavior of
the manipulator is observed.
Moreover, we can use the visualization tools of the
virtual interface in Simulink to modify the physical aspects of
the simulation in order to get some pictures or videos.
In order to test the proposed methodology, the clover shape
path was selected. This trajectory is represented as:

xJ = r - cos(S - w - t) - cos(w - t) + bx;
yJ = r - cos(S - w - t) - sin(w - t) +ky;
zJ = .S;

Considering the next parameters, we perform the

Center of the figure in X-axis: 0 .3m
Center of the figure in Y-axis: 0 .2m
Petal Clover Radius: 0 .07 m
Angular Speed: 0.2094 rad/s

Control gains:

Kp = |Su u u u u; u 2u u u u; u u 2u u u; u u u 2u u; u u u u Su];

KJ = |1u u u u u; u 1u u u u; u u 1u u u; u u u 1u u; u u u u 2];

As can be seen in figure 6, the plots show the behavior of
the desired link paths and the real link paths. It is clear that
the proposed methodology can follow the desired path in a
closer way.

Figure 5 Inverse Kinematics

Also, the path follow is shown after the control
implementation in the Method. Here, it can be observed that
the performance is satisfactory and the plots of the real and the
desired path are shown in blue and red respectively.
978-1-4244-5353-5/10/$26.00 2010 IEEE 298

Figure 7 End Effector position

The 3D space path (real and desired) were plotted as well as
different views of the simulator on Figures 8 to 11.

Figure 8 Path in 3D space

Figure 9 Simulation of the 3D path follow with control

Figure 10. Simulation of the 3D path (Front view)

Figure 11 Virtual Reality Simulation in Simulink

A simulation methodology of the 5-DOF was proposed.
The modeling of the robot includes direct, inverse, and
differential kinematics as well as dynamics. This method was
applied to test the robot CATALYST 5 by using a project in
Simulink and Matlab. A proposed path was plotted in the 3D
space and the method was applied. All the plots from the links
and the end-effector positions were obtained and clearly show
the good performance of the proposed methodology.
As the future work, this methodology will be applied to
several robotic systems in order to test its behavior. Also,
more paths in 3D space will be tested in order to get the
information about the speed, acceleration and force of each
link in the manipulator. Some other options include the testing
of more control algorithms like optimal control.

978-1-4244-5353-5/10/$26.00 2010 IEEE 299

[1] Felix Etienne Trepanier and Bruce A. MacDonald,
Graphical Simulation and Visualization Tool for a
Distributed Robot Programming Environment, Technical
Report of the Department of Electrical and Electronic
Engineering, University of Auckland, New Zealand,
[2] Stephen H. Murphy, John Ting-Yung Wen and George N
Saridis, Simulation of cooperating Robot Manipulators
on a mobile Platform, IEEE Transactions on Robotics
and Automation, Volume 7, Issue 4, pp. 468 478, Aug
[3] Martin Rohrmeier Web Based Robot Simulation using
VRML, Winter Simulation Conference Proceedings,
Volume 2, pp. 1525-1528, 2000.
[4] Moreno Trejo Roberto, Cabrera Ros Juan Salvador,
Hernndez Ramirez Fernando, Jose Emilio Vargas Soto,
Jesus Carlos Pedraza Ortega, Simulation Software of the
Mitsubishi RV-2AJ Manipulator Robot, Proceedings of
the 4th Mexican Conference on Mechatronics, pp. 129-
132, 2005 (In Spanish Language).
[5] J.A. Soto, J. E. Vargas and J.C. Pedraza A New
Trajectory Generation Method Using Vision for a Robot
Manipulator, International Conference on Dynamics,
Instrumentation and Control (CDIC), 2006.
[6] Maricela Gamio, J. Carlos Pedraza Juan M. Ramos,
Efrn Gorrostieta. Matlab-C++ Interface for a Flexible
Arm Manipulator Simulation using Multi-Language
Techniques, Proceedings of the Fifth Mexican
International Conference on Artificial Intelligence
(MICAI), pp. 369-378, 2006.
[7] Nourdine Aliane A Matlab/Simulink-Based Interactive
module for Servo Systems Learning, IEEE Transactions
on Education, Volume 7, Issue 4, pp. 1 7, 2009.
[8] Mark W. Spong. Robot Modelling and Control, John
Wiley and Sons, 2005.
[9] Lung Went Tsai Robot Analysis: The Mechanics of
Serial and Parallel Manipulators, Wiley, 1999.

978-1-4244-5353-5/10/$26.00 2010 IEEE 300