SlideShare a Scribd company logo
2
Most read
4
Most read
5
Most read
Kinematics Modeling of a 4-DOF Robotic Arm
Amin A. Mohammed and M. Sunar
Mechanical Engineering Department
King Fahd University of Petroleum & Minerals
Dhahran, Saudi Arabia
e-mail: mehmets@kfupm.edu.sa
Abstract—This work presents the kinematics model of an RA-
02 (a 4 DOF) robotic arm. The direct kinematic problem is
addressed using both the Denavit-Hartenberg (DH) convention
and the product of exponential formula, which is based on the
screw theory. By comparing the results of both approaches, it
turns out that they provide identical solutions for the
manipulator kinematics. Furthermore, an algebraic solution of
the inverse kinematics problem based on trigonometric
formulas is also provided. Finally, simulation results for the
kinematics model using the Matlab program based on the DH
convention are presented. Since the two approaches are
identical, the product of exponential formula is supposed to
produce same simulation results on the robotic arm studied.
Keywords-Robotics; DH convention; product of exponentials;
kinematics; simulations
I. INTRODUCTION
Nowadays, robotics is a rich area of research, in terms of
their kinematics, dynamics and control. Kinematics, in
particular, plays a significant role in robotics and especially
for the study of industrial manipulators' behavior. Therefore,
a decisive step in any robotics system is the analysis and
modeling of the manipulator kinematics [1]. It can be divided
generally into forward and inverse kinematics. The former
refers to direct finding of the end effector (EE) position and
posture for the given joint coordinates, on the contrary, the
latter is the determination of joint variables in terms of the
EE position and posture [2]. In other words, it is the process
of obtaining a configuration space that corresponds to a
given work space. It has several disciplines of applications
including the computer graphics [3].
While the forward kinematics is straightforward, the
inverse kinematics is not an easy task and it usually has
multiple solutions. Numerous techniques and their
combinations could be used for solving and analyzing the
inverse kinematics problem. However each method beside its
advantages possesses some handicaps. Therefore, it is
advantageous to apply more than one method and to
integrate them with additional procedures [3]. Several
approaches have been investigated and compared by
Aristides et al [4]. Jasjit Kaur et al [5] have analyzed and
simulated a robotic arm having three links-manipulator,
where the inverse kinematics results in two solutions, out of
which the best one has been chosen with the usage of the
genetic algorithm. They have concluded that the robotic arm
movement optimization can be achieved by the genetic
algorithms in a practical and effective way. A geometric
approach to solve the unspecified joint angles needed for the
autonomous positioning of a robot arm is presented in [1].
Based on few assumptions concerning the working
environment of the manipulator and the kind of manipulation
required, in addition to the basic trigonometry, an easier
solution has been proposed. The introduced methodology has
been tested using five degrees of freedom robotic arm
compounded to an i-Robot. By carrying out the mechanical
design, all components have been assembled together in
addition to two infrared sensors to detect the object and to
find its position. Finally, the electrical design was done, and
the proposed method was tested and justified. However, this
approach lacks its generality due to the abundant
assumptions considered, and what is more is that the last link
is restricted to just two orientations. In what we introduce
here is that the last link could have any arbitrary orientation,
which makes the analysis more general to different
configurations.
Ge and Jin [6] proposed an algorithm of a redundant
robot kinematics based on product of exponentials (PE),
where the forward and inverse kinematics problems were
addressed. The inverse kinematics problem was decomposed
into several sub problems and by studying them separately, a
solution of the inverse kinematic problem was proposed.
Kinematics and interactive simulation system modeling for
robot manipulators is given in [7], where the forward and
inverse kinematics of a robotic arm called Katana450 are
studied by the exponential product method, then an
interactive simulation system is built based on three-merit
virtual scene modeling techniques proposed for robot
manipulators. These techniques are OpenGL, VRML and
another one based on Visual C++, Lab View and Matlab
platform. A robot simulator, which is introduced by Lodes [8]
and is based on Matlab, enables the modeling of any robotic
arm provided that the corresponding DH parameters are
known. Links visualization in terms of shape and size was
made after some considerations. The program was shown to
adequately model several example robots.
This paper focuses on modeling and simulation of the
RA-02 robotic arm, a small special robot with 4 revolute
joints [9]. An excellent survey of robotics kits for post-
secondary education is given in [10]. The rest of this paper is
organized as follows: Section II below presents the
kinematics analysis based on the DH convention and
exponentials formulation. The inverse kinematics solution
87
2015 International Conference on Control, Automation and Robotics
978-1-4673-7523-8/15/$31.00 ©2015 IEEE 87
based on the algebraic method is given in section III. In
section IV, the manipulator simulation procedure and results
are presented. Section V concludes this work.
II. MANIPULATOR KINEMATICS
The DH convention and product of exponentials often
used in kinematics analysis of robot manipulators and other
mechanical structures. The below section utilizes both
methods to drive the kinematics model of the robot. To
simplify the analysis, the effect of the gripper is ignored
making the robotic arm a four degree of freedom, a four-joint
spatial manipulator. The treatment of this manipulator is
analogue to that of PUMA 560 after removing the wrist and
adding one more revolute joint.
A. DH Convention.
Denavit-Hartenberg (DH) convention is commonly used
in the kinematics analysis of the robotic manipulator [2]. It is
based on attaching a coordinate frame at each joint and
specifying four parameters known as DH parameters for
each link, and utilizing these parameters to construct a DH
table. Finally, a transformation matrix between different
coordinate frames is obtained. The major objective is to
control both the position and orientation of the EE or the
gripper in its work space. We will first derive the
relationship between the joint variables and the position, and
orientation of the gripper, using the DH method [2]. The
robotic arm under study is shown below in Fig. 1 (RA-02A
of Images SI Inc [9] ) and DH parameters in Fig. 2.
Figure 1. The robot arm.
Figure 2. DH parameters.
Various rotary and linear motions of the robotic arm are
shown below in Fig 3. Each motion is made possible by a
servomotor (or just a servo) at the corresponding location.
Figure 3. Robotic arm with 5 independent motions [9].
B. Forward Kinematics
As Fig. 2 depicts a coordinate frame attached to every
link in order to find its configuration in the neighboring
frames using the rigid motion formula. To do so a DH table
is needed as follows:
TABLE I. DH PARAMETERS.
By applying the Denavit-Hartenberg (DH) notations [2]
for the joints coordinates, the DH-table can be constructed as
listed above in Table II. The link lengths as shown in Fig. 2
are 1 1 1 .5 ,l cm= 2 1 2 ,l cm= and 3 4 9 .l l c m= =
C. Forward Transformation Matrices
Once the DH table is ready, the transformation matrices
are easy to find. Generally, the matrix of transformation from
the frame iB to the frame 1iB −
for the standard DH method
is given by [2]:
1
cos sin cos sin sin cos
sin cos cos cos sin sin
0 sin cos
0 0 0 1
i i i i i i i
i i i i i i ii
i
i i i
a
a
T
d
     
     
 
−
− 
 − =
 
 
 
(1)
Then the individual transformation matrices for
1 , 2 , 3 , 4i a n d= can be easily obtained. Thereafter, the
complete transformation 0
4T is found from:
0 0 1 2 3
4 1 2 3 4T T T T T= (2)
Upon the determination of, 0
4T we can find the global
coordinates of the end effector. The tip point of the arm is at
the origin of frame 4B (Fig. 2), i.e. it is at [ ]0 0 0 1
T
.
So, its position in the global frame becomes:
Frame( )i
ia ia id i
1 0 90 1l 1
2
2l 0 0 2
3
3l 0 0 3
4
4l 0 0 4
88
1 4
2 40 0 4 0
4 4
3 4
0
0
0
1 1 1
p p
r d x
r d y
r T r T
r d z
     
     
     = = = =
     
     
     
(3)
Obviously, this is the last column of the transformation
matrix 0
4T . After simplifications using trigonometric
formulas, the previous equation becomes:
( ) ( )1 2 2 3 2 3 4 1 2 3 4dx c l c l c l c c       = + + + + +   (4)
( ) ( )1 2 2 3 2 3 4 1 2 3 4dy s l c l c l s c       = + + + + +   (5)
( ) ( )1 2 2 3 2 3 4 2 3 4dz l l s l s l s     = + + + + + +   (6)
where s stands for s i n and c stands for c o s . In addition,
dx, dy and dz are the global end effector coordinates.
Moreover, the end effector orientation is:
2 3 4   = + + (7)
The DH parameters are akin to the configuration of the
robot. For different manipulator structures, the kinematics
equations are not unique. Moreover, kinematics equations of
the manipulator based on the DH convention provide some
singularity making the equations difficult to solve or
unsolvable in some cases. In addition, in the DH convention,
the common normal is not defined properly when axes of
two joints are parallel. In this case, the DH method has a
singularity, where a little change in the spatial coordinates of
the parallel joint axes can create a huge misconfiguration in
representation of the DH coordinates of their relative
position. In the following section, an alternative to the DH
convention, the PE is presented.
D. Product of Exponentials
Aside from the DH convention, another method is the so-
called product of exponentials (PE). Using the reality that the
motion of each joint is generated by a twist accompanied
with the joint axis, a more geometric representation of the
kinematics can be acquired. Remember that if ξ is a twist,
according to reference [11], the forward kinematics is given
by:
( ) ( )1 1 2 2
ˆˆ ˆ
... 0n n
st stg e e e g    
 = (8)
The above equation is called the product of exponential
formula for the robot forward kinematics, where ( )0stg is
the final configuration of the robot and
ˆ
n n
e 
is a matrix
exponential given by [7]:
( )( )ˆ
0 1
n n n n
n n
T
n n n n n ne I e v
e
   
       − × +
=  
  
(9)
For a prismatic joint the twist i is given by:
0
i
i
v

 
=  
 
,
and for a revolute joint by: i i
i
i
q


− × 
=  
 
,
where
3
i R ∈ is a unit vector in the direction of the axis
of the twist,
3
iq R∈ is any point on the axis, and
3
iv R∈ is
a unit vector directing in the translation direction. In this
case, the twist ξ’s for different links of the robot are given
by:
1
0
0
0
0
0
1

 
 
 
 
=  
 
 
 
 
1
2
0
0
0
1
0
L

 
 
 
 
=  
 
 −
 
 
1
2
3
0
0
1
0
L
L

 
 
 
 −
=  
 
 −
 
 
( )
1
2 3
4
0
0
1
0
L
L L

 
 
 
 − +
=  
 
 −
 
 
Moreover, ( )0stg is the initial configuration of the robot
given by
( )
2 3 4
1
1 0 0
0 1 0 0
0
0 0 1
0 0 0 1
s t
l l l
g
l
+ + 
 
 =
 
 
 
The forward kinematics map of the manipulator has the
form:
( ) ( )
( ) ( )3 31 1 2 2 4 4
ˆˆ ˆ ˆ
0
0 1
st st
R p
g e e e e g        

 
= =  
 
(10)
By expanding terms in the product of exponentials
formula, Eq. 10 yields
( )
( ) ( )
( ) ( )
( ) ( )
2 3 4 1 1 2 3 4 1
2 3 4 1 1 2 3 4 1
2 3 4 2 3 4
cos cos sin sin cos
cos sin cos sin sin
sin 0 cos
R
        
         
     
+ + − − + + 
 
= + + − + + 
 + + + + 
(11)
( )
( ) ( )( )
( ) ( )( )
( ) ( )
1 3 2 3 2 2 4 2 3 4
1 3 2 3 2 2 4 2 3 4
1 3 2 3 2 2 4 2 3 4
cos L cos L cos cos
sin L cos L cos cos
L sin L sin sin
L
p L
L L
      
       
     
 + + + + +
 
= + + + + + 
 
+ + + + + +  
(12)
It is clear that the above equation (12) is identical to
those in equations (4) through (6). Thus, the kinematics
modeling using the DH convention and product of
exponentials agrees with each other.
III. INVERSE KINEMATICS
We end up with a set of four nonlinear equations with
four unknowns. Solving these equations algebraically,
known as the inverse kinematics, requires that we need to
know the joint variables 1 2 3 4, , ,a n d   for a given EE
position [ ], dy, dzdx and orientation  . We get from
equations (4) to (7), by dividing, squaring, adding and using
some trigonometric formulas:
89
1
1 tan
d y
d x
 −  
=  
 
(13)
( ) ( )1 2 2 1
2 tan , tan ,c r c a b − −
= ± − − (14)
2 2 2 2 2
1 2 3
3
2 3
c o s
2
A B C l l
l l
 −  + + − −
=  
 
(15)
where
2 2
3 3 2 3 3 1 4sin , cos , sin , .a l b l l c dz l l andr a b  = = + = − − = +
In addition
( ) ( ) ( )4 1 4 1 1 4, ,A dx l c c B dy l s c andC dz l l s    = − = − = − −
Having determined 1 2 3, ,a n d  , we can then find
4 from the EE orientation of  as follows:
4 2 3   = − − (16)
IV. SIMULATION OF THE ROBOTIC ARM
Since robotics is a multidisciplinary subject, its study
requires skills form different fields of knowledge, not easily
available. Thus, simulation has been recognized as a suitable
tool that combines all these features together enabling the
user of a direct visualization of different kinds of motion that
a robot may perform, making the role of simulation very
important in robotics [12]. Using the robotics toolbox
together with the Matlab software [13]-[15], the kinematics
of a robotic arm can be simulated and analyzed based on the
DH convention described before. The toolbox takes a
conventional approach to represent the kinematics and
dynamics of serial-link robotic arms. Besides, it provides
several functions and routines, which are handy for the
simulation and scrutiny of robotic manipulators, like
kinematics, dynamics and trajectory creation.
Based on the aforementioned toolbox, many
configurations of the robot manipulator are easily visualized.
In order to simulate the robotic manipulator, first we erect a
vector of Link objects and insert our four groups of DH
parameters as in Table I. Then, these are passed to the
constructor SerialLink, which is the key step to utilize the
toolbox. A detailed procedure can be found in [15]. In order
to generate the plot four joint variables are needed. In the
first case all joint variables are entered in the form of zeros
(row vector), such as [ ] [ ]1 2 3 4 0 0 0 0    = . Fig.
4 shows rest or home position of the robot, where all joints
variables are zeros. In the toolbox, each revolute joint is
resembled by a small cylinder. Since we have four revolute
joints, four cylinders can be seen in Figs. 4-7.
A second interesting configuration is that when all links
are standing upright as Fig. 5 shows. The corresponding
input in this case is given by: [ ]0 / 2 0 0 , where all the
angles are defined in radian by default. To test the
functionality of all the joints, other two configurations are
selected as given by the vectors of joint variables
[ ]/2 0 /2 0 − − and [ ]/ 4 / 2 / 4   − , which are
depicted in Figs. 6 and 7, respectively.
Figure 4. Home position.
Figure 5. Upright position.
Figure 6. Left-down position.
Figure 7. All joints are given angles.
V. CONCLUSION
Kinematics model of a 4 degree-of-freedom robotic arm
is presented using both the DH method and product of
exponentials formula. It is proven that both approaches
provide the same solution for the robot manipulator under
study. In addition, the simulation of the robot manipulator is
carried out using the Matlab software via the robotics
toolbox, through which several positions of the manipulator
are realized based on the DH convention. Although results of
the product of exponentials formula are not given, they are
expected to be same as those of the DH convention.
90
ACKNOWLEDGMENT
Authors gratefully acknowledge the support provided by
King Fahd University of Petroleum & Minerals through the
NSTIP project 09-ELE786-04.
REFERENCES
[1] K. E. Clothier and Y. Shang, “A Geometric Approach for Robotic
Arm Kinematics with Hardware Design, Electrical Design, and
Implementation,” J. Robot., 2010.
[2] R. N. Jazar, Theory of Applied Robotics. Boston, MA: Springer US,
2010.
[3] “Barinka, Lukas, and Roman Berka. ‘Inverse kinematics-basic
methods.’ Web.< http://www. cescg. org/CESCG-
2002/LBarinka/paper. pdf (2002).”
[4] A. Aristidou and J. Lasenby. "Inverse kinematics: a review of existing
techniques and introduction of a new fast iterative solver," 2009.
[5] J. Kaur and V. K. Banga, "Simulation of Robotic Arm having three
link Manipulator," International Journal of Research in Engineering
and Technology (IJRET), vol. 1, no. 2, March, 2012, ISSN: 2277-
4378, 2012.
[6] X. F. Ge and J. T. Jin, “The algorithm of redundant robotic
kinematics based on exponential product,” Appl. Mech. Mater., vol.
58-60, pp. 1902-1907, Jun. 2011.
[7] X. Xiao, Y. Li, and H. Tang, “Department of electromechanical
engineering, university of Macau, Macao SAR, China,” IEEE
International Conference on Information and Automation (ICIA),
2013, pp. 1177-1182.
[8] A. Lodes, “Robot Simulator in MATLAB,” unpublished.
[9] “http://www.imagesco.com/kits/robotic-arm.html.”
[10] M. Ruzzenente, M. Koo, K. Nielsen, L. Grespan, and P. Fiorini, “A
review of robotics kits for tertiary education,” in Proceedings of
International Workshop Teaching Robotics Teaching with Robotics:
Integrating Robotics in School Curriculum, 2012, pp. 153-162.
[11] R. M. Murray, Z. Li, S. S. Sastry, and S. S. Sastry, A Mathematical
Introduction to Robotic Manipulation, CRC press, 1994.
[12] L. Žlajpah, “Simulation in robotics,” Math. Comput. Simul., vol. 79,
no. 4, pp. 879-897, Dec. 2008.
[13] P. I. Corke and others, “A computer tool for simulation and analysis:
the Robotics Toolbox for MATLAB,” in Proc. National Conf.
Australian Robot Association, 1995, pp. 319-330.
[14] P. I. Corke, Robotics, Vision and Control: Fundamental Algorithms
in MATLAB. Berlin: Springer, 2011.
[15] P. Corke, Robotics, Vision and Control, vol. 73. Berlin, Heidelberg:
Springer Berlin Heidelberg, 2011.
91

More Related Content

PPTX
Fundamental of robotic manipulator
PPTX
Synthesis of Mechanism
PPT
Pseudo forces, coriolis force,centrifugal force (mechanics)
PPTX
Cams
PPTX
Sliding mode control
PPTX
Module 1 introduction to kinematics of machinery
PPTX
Jacobian | velocity and static forces
PPTX
Spatial mechanism and DH parameters
Fundamental of robotic manipulator
Synthesis of Mechanism
Pseudo forces, coriolis force,centrifugal force (mechanics)
Cams
Sliding mode control
Module 1 introduction to kinematics of machinery
Jacobian | velocity and static forces
Spatial mechanism and DH parameters

What's hot (20)

PPT
Manipulator kinematics
PPTX
Kinemetic chains, Pairs, Joints, Four bar Mechanisms (KOM)
PDF
4. acceleration analysis of linkages
PPTX
Basics of Robotics
PPTX
Biomechatronic-hand
PPTX
Geneva mechanism (mini-project)
PPTX
PRECESSION-UNIT 1.pptx
DOCX
Study project on knuckle joint
PDF
Denavit Hartenberg Algorithm
PDF
Lecture 5 ME 176 2 Mathematical Modeling
PPTX
1 rectilinear
PPTX
Robotics ch 4 robot dynamics
PPTX
Sliding Mode Controller
PPT
Robotics: 2-Link Planar Manipulator
PPTX
Newton-Euler's Law of Rigid body motion.pptx
PPTX
Differential kinematics robotic
PPTX
Laplace transform and its application
PPTX
mechanism of machinery
Manipulator kinematics
Kinemetic chains, Pairs, Joints, Four bar Mechanisms (KOM)
4. acceleration analysis of linkages
Basics of Robotics
Biomechatronic-hand
Geneva mechanism (mini-project)
PRECESSION-UNIT 1.pptx
Study project on knuckle joint
Denavit Hartenberg Algorithm
Lecture 5 ME 176 2 Mathematical Modeling
1 rectilinear
Robotics ch 4 robot dynamics
Sliding Mode Controller
Robotics: 2-Link Planar Manipulator
Newton-Euler's Law of Rigid body motion.pptx
Differential kinematics robotic
Laplace transform and its application
mechanism of machinery
Ad

Similar to Kinematics Modeling of a 4-DOF Robotic Arm (20)

PDF
A New Method For Solving Kinematics Model Of An RA-02
PDF
Inverse Kinematics Analysis for Manipulator Robot with Wrist Offset Based On ...
PPTX
Robotic arm tool
PDF
Human Arm Inverse Kinematic Solution Based Geometric Relations and Optimizati...
PDF
Robot forward and inverse kinematics research using matlab by d.sivasamy
DOCX
DH matrix or Denavit for robotics and its applications
PDF
ADVANCEMENT AND STIMULATION OF FIVE DEGREE OF FREEDOM ROBOT LEVER ARM
PDF
30120140503003 2
PDF
30120140503003 2
PDF
Robotics_Final_Paper_Folza
PDF
welding
PDF
C4 Manipulator kinematics for robotics.pdf
PPTX
2A_ROBOT KINEMATICS.pptx
PDF
Robot Arm Kinematics
PDF
Kinematics modeling of six degrees of freedom humanoid robot arm using impro...
PDF
Forward and Inverse Kinematic Analysis of Robotic Manipulators
PDF
Ur5 ik
PPTX
Manipuladores robóticos em sistemas espaciais - aula 4
PDF
20120140506023 2
PDF
Forward and Inverse Kinematic Analysis of Robotic Manipulators
A New Method For Solving Kinematics Model Of An RA-02
Inverse Kinematics Analysis for Manipulator Robot with Wrist Offset Based On ...
Robotic arm tool
Human Arm Inverse Kinematic Solution Based Geometric Relations and Optimizati...
Robot forward and inverse kinematics research using matlab by d.sivasamy
DH matrix or Denavit for robotics and its applications
ADVANCEMENT AND STIMULATION OF FIVE DEGREE OF FREEDOM ROBOT LEVER ARM
30120140503003 2
30120140503003 2
Robotics_Final_Paper_Folza
welding
C4 Manipulator kinematics for robotics.pdf
2A_ROBOT KINEMATICS.pptx
Robot Arm Kinematics
Kinematics modeling of six degrees of freedom humanoid robot arm using impro...
Forward and Inverse Kinematic Analysis of Robotic Manipulators
Ur5 ik
Manipuladores robóticos em sistemas espaciais - aula 4
20120140506023 2
Forward and Inverse Kinematic Analysis of Robotic Manipulators
Ad

Recently uploaded (20)

PDF
The CXO Playbook 2025 – Future-Ready Strategies for C-Suite Leaders Cerebrai...
PDF
Digital Logic Computer Design lecture notes
PPTX
Foundation to blockchain - A guide to Blockchain Tech
PDF
SM_6th-Sem__Cse_Internet-of-Things.pdf IOT
DOCX
573137875-Attendance-Management-System-original
PPT
Project quality management in manufacturing
PDF
PPT on Performance Review to get promotions
PDF
R24 SURVEYING LAB MANUAL for civil enggi
PPTX
CH1 Production IntroductoryConcepts.pptx
PPTX
KTU 2019 -S7-MCN 401 MODULE 2-VINAY.pptx
PPTX
OOP with Java - Java Introduction (Basics)
PPTX
Engineering Ethics, Safety and Environment [Autosaved] (1).pptx
PPTX
UNIT 4 Total Quality Management .pptx
PPT
CRASH COURSE IN ALTERNATIVE PLUMBING CLASS
PPTX
Recipes for Real Time Voice AI WebRTC, SLMs and Open Source Software.pptx
PPTX
M Tech Sem 1 Civil Engineering Environmental Sciences.pptx
PPTX
Infosys Presentation by1.Riyan Bagwan 2.Samadhan Naiknavare 3.Gaurav Shinde 4...
PPTX
bas. eng. economics group 4 presentation 1.pptx
PDF
Model Code of Practice - Construction Work - 21102022 .pdf
PDF
Automation-in-Manufacturing-Chapter-Introduction.pdf
The CXO Playbook 2025 – Future-Ready Strategies for C-Suite Leaders Cerebrai...
Digital Logic Computer Design lecture notes
Foundation to blockchain - A guide to Blockchain Tech
SM_6th-Sem__Cse_Internet-of-Things.pdf IOT
573137875-Attendance-Management-System-original
Project quality management in manufacturing
PPT on Performance Review to get promotions
R24 SURVEYING LAB MANUAL for civil enggi
CH1 Production IntroductoryConcepts.pptx
KTU 2019 -S7-MCN 401 MODULE 2-VINAY.pptx
OOP with Java - Java Introduction (Basics)
Engineering Ethics, Safety and Environment [Autosaved] (1).pptx
UNIT 4 Total Quality Management .pptx
CRASH COURSE IN ALTERNATIVE PLUMBING CLASS
Recipes for Real Time Voice AI WebRTC, SLMs and Open Source Software.pptx
M Tech Sem 1 Civil Engineering Environmental Sciences.pptx
Infosys Presentation by1.Riyan Bagwan 2.Samadhan Naiknavare 3.Gaurav Shinde 4...
bas. eng. economics group 4 presentation 1.pptx
Model Code of Practice - Construction Work - 21102022 .pdf
Automation-in-Manufacturing-Chapter-Introduction.pdf

Kinematics Modeling of a 4-DOF Robotic Arm

  • 1. Kinematics Modeling of a 4-DOF Robotic Arm Amin A. Mohammed and M. Sunar Mechanical Engineering Department King Fahd University of Petroleum & Minerals Dhahran, Saudi Arabia e-mail: mehmets@kfupm.edu.sa Abstract—This work presents the kinematics model of an RA- 02 (a 4 DOF) robotic arm. The direct kinematic problem is addressed using both the Denavit-Hartenberg (DH) convention and the product of exponential formula, which is based on the screw theory. By comparing the results of both approaches, it turns out that they provide identical solutions for the manipulator kinematics. Furthermore, an algebraic solution of the inverse kinematics problem based on trigonometric formulas is also provided. Finally, simulation results for the kinematics model using the Matlab program based on the DH convention are presented. Since the two approaches are identical, the product of exponential formula is supposed to produce same simulation results on the robotic arm studied. Keywords-Robotics; DH convention; product of exponentials; kinematics; simulations I. INTRODUCTION Nowadays, robotics is a rich area of research, in terms of their kinematics, dynamics and control. Kinematics, in particular, plays a significant role in robotics and especially for the study of industrial manipulators' behavior. Therefore, a decisive step in any robotics system is the analysis and modeling of the manipulator kinematics [1]. It can be divided generally into forward and inverse kinematics. The former refers to direct finding of the end effector (EE) position and posture for the given joint coordinates, on the contrary, the latter is the determination of joint variables in terms of the EE position and posture [2]. In other words, it is the process of obtaining a configuration space that corresponds to a given work space. It has several disciplines of applications including the computer graphics [3]. While the forward kinematics is straightforward, the inverse kinematics is not an easy task and it usually has multiple solutions. Numerous techniques and their combinations could be used for solving and analyzing the inverse kinematics problem. However each method beside its advantages possesses some handicaps. Therefore, it is advantageous to apply more than one method and to integrate them with additional procedures [3]. Several approaches have been investigated and compared by Aristides et al [4]. Jasjit Kaur et al [5] have analyzed and simulated a robotic arm having three links-manipulator, where the inverse kinematics results in two solutions, out of which the best one has been chosen with the usage of the genetic algorithm. They have concluded that the robotic arm movement optimization can be achieved by the genetic algorithms in a practical and effective way. A geometric approach to solve the unspecified joint angles needed for the autonomous positioning of a robot arm is presented in [1]. Based on few assumptions concerning the working environment of the manipulator and the kind of manipulation required, in addition to the basic trigonometry, an easier solution has been proposed. The introduced methodology has been tested using five degrees of freedom robotic arm compounded to an i-Robot. By carrying out the mechanical design, all components have been assembled together in addition to two infrared sensors to detect the object and to find its position. Finally, the electrical design was done, and the proposed method was tested and justified. However, this approach lacks its generality due to the abundant assumptions considered, and what is more is that the last link is restricted to just two orientations. In what we introduce here is that the last link could have any arbitrary orientation, which makes the analysis more general to different configurations. Ge and Jin [6] proposed an algorithm of a redundant robot kinematics based on product of exponentials (PE), where the forward and inverse kinematics problems were addressed. The inverse kinematics problem was decomposed into several sub problems and by studying them separately, a solution of the inverse kinematic problem was proposed. Kinematics and interactive simulation system modeling for robot manipulators is given in [7], where the forward and inverse kinematics of a robotic arm called Katana450 are studied by the exponential product method, then an interactive simulation system is built based on three-merit virtual scene modeling techniques proposed for robot manipulators. These techniques are OpenGL, VRML and another one based on Visual C++, Lab View and Matlab platform. A robot simulator, which is introduced by Lodes [8] and is based on Matlab, enables the modeling of any robotic arm provided that the corresponding DH parameters are known. Links visualization in terms of shape and size was made after some considerations. The program was shown to adequately model several example robots. This paper focuses on modeling and simulation of the RA-02 robotic arm, a small special robot with 4 revolute joints [9]. An excellent survey of robotics kits for post- secondary education is given in [10]. The rest of this paper is organized as follows: Section II below presents the kinematics analysis based on the DH convention and exponentials formulation. The inverse kinematics solution 87 2015 International Conference on Control, Automation and Robotics 978-1-4673-7523-8/15/$31.00 ©2015 IEEE 87
  • 2. based on the algebraic method is given in section III. In section IV, the manipulator simulation procedure and results are presented. Section V concludes this work. II. MANIPULATOR KINEMATICS The DH convention and product of exponentials often used in kinematics analysis of robot manipulators and other mechanical structures. The below section utilizes both methods to drive the kinematics model of the robot. To simplify the analysis, the effect of the gripper is ignored making the robotic arm a four degree of freedom, a four-joint spatial manipulator. The treatment of this manipulator is analogue to that of PUMA 560 after removing the wrist and adding one more revolute joint. A. DH Convention. Denavit-Hartenberg (DH) convention is commonly used in the kinematics analysis of the robotic manipulator [2]. It is based on attaching a coordinate frame at each joint and specifying four parameters known as DH parameters for each link, and utilizing these parameters to construct a DH table. Finally, a transformation matrix between different coordinate frames is obtained. The major objective is to control both the position and orientation of the EE or the gripper in its work space. We will first derive the relationship between the joint variables and the position, and orientation of the gripper, using the DH method [2]. The robotic arm under study is shown below in Fig. 1 (RA-02A of Images SI Inc [9] ) and DH parameters in Fig. 2. Figure 1. The robot arm. Figure 2. DH parameters. Various rotary and linear motions of the robotic arm are shown below in Fig 3. Each motion is made possible by a servomotor (or just a servo) at the corresponding location. Figure 3. Robotic arm with 5 independent motions [9]. B. Forward Kinematics As Fig. 2 depicts a coordinate frame attached to every link in order to find its configuration in the neighboring frames using the rigid motion formula. To do so a DH table is needed as follows: TABLE I. DH PARAMETERS. By applying the Denavit-Hartenberg (DH) notations [2] for the joints coordinates, the DH-table can be constructed as listed above in Table II. The link lengths as shown in Fig. 2 are 1 1 1 .5 ,l cm= 2 1 2 ,l cm= and 3 4 9 .l l c m= = C. Forward Transformation Matrices Once the DH table is ready, the transformation matrices are easy to find. Generally, the matrix of transformation from the frame iB to the frame 1iB − for the standard DH method is given by [2]: 1 cos sin cos sin sin cos sin cos cos cos sin sin 0 sin cos 0 0 0 1 i i i i i i i i i i i i i ii i i i i a a T d               − −   − =       (1) Then the individual transformation matrices for 1 , 2 , 3 , 4i a n d= can be easily obtained. Thereafter, the complete transformation 0 4T is found from: 0 0 1 2 3 4 1 2 3 4T T T T T= (2) Upon the determination of, 0 4T we can find the global coordinates of the end effector. The tip point of the arm is at the origin of frame 4B (Fig. 2), i.e. it is at [ ]0 0 0 1 T . So, its position in the global frame becomes: Frame( )i ia ia id i 1 0 90 1l 1 2 2l 0 0 2 3 3l 0 0 3 4 4l 0 0 4 88
  • 3. 1 4 2 40 0 4 0 4 4 3 4 0 0 0 1 1 1 p p r d x r d y r T r T r d z                  = = = =                   (3) Obviously, this is the last column of the transformation matrix 0 4T . After simplifications using trigonometric formulas, the previous equation becomes: ( ) ( )1 2 2 3 2 3 4 1 2 3 4dx c l c l c l c c       = + + + + +   (4) ( ) ( )1 2 2 3 2 3 4 1 2 3 4dy s l c l c l s c       = + + + + +   (5) ( ) ( )1 2 2 3 2 3 4 2 3 4dz l l s l s l s     = + + + + + +   (6) where s stands for s i n and c stands for c o s . In addition, dx, dy and dz are the global end effector coordinates. Moreover, the end effector orientation is: 2 3 4   = + + (7) The DH parameters are akin to the configuration of the robot. For different manipulator structures, the kinematics equations are not unique. Moreover, kinematics equations of the manipulator based on the DH convention provide some singularity making the equations difficult to solve or unsolvable in some cases. In addition, in the DH convention, the common normal is not defined properly when axes of two joints are parallel. In this case, the DH method has a singularity, where a little change in the spatial coordinates of the parallel joint axes can create a huge misconfiguration in representation of the DH coordinates of their relative position. In the following section, an alternative to the DH convention, the PE is presented. D. Product of Exponentials Aside from the DH convention, another method is the so- called product of exponentials (PE). Using the reality that the motion of each joint is generated by a twist accompanied with the joint axis, a more geometric representation of the kinematics can be acquired. Remember that if ξ is a twist, according to reference [11], the forward kinematics is given by: ( ) ( )1 1 2 2 ˆˆ ˆ ... 0n n st stg e e e g      = (8) The above equation is called the product of exponential formula for the robot forward kinematics, where ( )0stg is the final configuration of the robot and ˆ n n e  is a matrix exponential given by [7]: ( )( )ˆ 0 1 n n n n n n T n n n n n ne I e v e            − × + =      (9) For a prismatic joint the twist i is given by: 0 i i v    =     , and for a revolute joint by: i i i i q   − ×  =     , where 3 i R ∈ is a unit vector in the direction of the axis of the twist, 3 iq R∈ is any point on the axis, and 3 iv R∈ is a unit vector directing in the translation direction. In this case, the twist ξ’s for different links of the robot are given by: 1 0 0 0 0 0 1          =           1 2 0 0 0 1 0 L          =      −     1 2 3 0 0 1 0 L L         − =      −     ( ) 1 2 3 4 0 0 1 0 L L L         − + =      −     Moreover, ( )0stg is the initial configuration of the robot given by ( ) 2 3 4 1 1 0 0 0 1 0 0 0 0 0 1 0 0 0 1 s t l l l g l + +     =       The forward kinematics map of the manipulator has the form: ( ) ( ) ( ) ( )3 31 1 2 2 4 4 ˆˆ ˆ ˆ 0 0 1 st st R p g e e e e g            = =     (10) By expanding terms in the product of exponentials formula, Eq. 10 yields ( ) ( ) ( ) ( ) ( ) ( ) ( ) 2 3 4 1 1 2 3 4 1 2 3 4 1 1 2 3 4 1 2 3 4 2 3 4 cos cos sin sin cos cos sin cos sin sin sin 0 cos R                          + + − − + +    = + + − + +   + + + +  (11) ( ) ( ) ( )( ) ( ) ( )( ) ( ) ( ) 1 3 2 3 2 2 4 2 3 4 1 3 2 3 2 2 4 2 3 4 1 3 2 3 2 2 4 2 3 4 cos L cos L cos cos sin L cos L cos cos L sin L sin sin L p L L L                       + + + + +   = + + + + +    + + + + + +   (12) It is clear that the above equation (12) is identical to those in equations (4) through (6). Thus, the kinematics modeling using the DH convention and product of exponentials agrees with each other. III. INVERSE KINEMATICS We end up with a set of four nonlinear equations with four unknowns. Solving these equations algebraically, known as the inverse kinematics, requires that we need to know the joint variables 1 2 3 4, , ,a n d   for a given EE position [ ], dy, dzdx and orientation  . We get from equations (4) to (7), by dividing, squaring, adding and using some trigonometric formulas: 89
  • 4. 1 1 tan d y d x  −   =     (13) ( ) ( )1 2 2 1 2 tan , tan ,c r c a b − − = ± − − (14) 2 2 2 2 2 1 2 3 3 2 3 c o s 2 A B C l l l l  −  + + − − =     (15) where 2 2 3 3 2 3 3 1 4sin , cos , sin , .a l b l l c dz l l andr a b  = = + = − − = + In addition ( ) ( ) ( )4 1 4 1 1 4, ,A dx l c c B dy l s c andC dz l l s    = − = − = − − Having determined 1 2 3, ,a n d  , we can then find 4 from the EE orientation of  as follows: 4 2 3   = − − (16) IV. SIMULATION OF THE ROBOTIC ARM Since robotics is a multidisciplinary subject, its study requires skills form different fields of knowledge, not easily available. Thus, simulation has been recognized as a suitable tool that combines all these features together enabling the user of a direct visualization of different kinds of motion that a robot may perform, making the role of simulation very important in robotics [12]. Using the robotics toolbox together with the Matlab software [13]-[15], the kinematics of a robotic arm can be simulated and analyzed based on the DH convention described before. The toolbox takes a conventional approach to represent the kinematics and dynamics of serial-link robotic arms. Besides, it provides several functions and routines, which are handy for the simulation and scrutiny of robotic manipulators, like kinematics, dynamics and trajectory creation. Based on the aforementioned toolbox, many configurations of the robot manipulator are easily visualized. In order to simulate the robotic manipulator, first we erect a vector of Link objects and insert our four groups of DH parameters as in Table I. Then, these are passed to the constructor SerialLink, which is the key step to utilize the toolbox. A detailed procedure can be found in [15]. In order to generate the plot four joint variables are needed. In the first case all joint variables are entered in the form of zeros (row vector), such as [ ] [ ]1 2 3 4 0 0 0 0    = . Fig. 4 shows rest or home position of the robot, where all joints variables are zeros. In the toolbox, each revolute joint is resembled by a small cylinder. Since we have four revolute joints, four cylinders can be seen in Figs. 4-7. A second interesting configuration is that when all links are standing upright as Fig. 5 shows. The corresponding input in this case is given by: [ ]0 / 2 0 0 , where all the angles are defined in radian by default. To test the functionality of all the joints, other two configurations are selected as given by the vectors of joint variables [ ]/2 0 /2 0 − − and [ ]/ 4 / 2 / 4   − , which are depicted in Figs. 6 and 7, respectively. Figure 4. Home position. Figure 5. Upright position. Figure 6. Left-down position. Figure 7. All joints are given angles. V. CONCLUSION Kinematics model of a 4 degree-of-freedom robotic arm is presented using both the DH method and product of exponentials formula. It is proven that both approaches provide the same solution for the robot manipulator under study. In addition, the simulation of the robot manipulator is carried out using the Matlab software via the robotics toolbox, through which several positions of the manipulator are realized based on the DH convention. Although results of the product of exponentials formula are not given, they are expected to be same as those of the DH convention. 90
  • 5. ACKNOWLEDGMENT Authors gratefully acknowledge the support provided by King Fahd University of Petroleum & Minerals through the NSTIP project 09-ELE786-04. REFERENCES [1] K. E. Clothier and Y. Shang, “A Geometric Approach for Robotic Arm Kinematics with Hardware Design, Electrical Design, and Implementation,” J. Robot., 2010. [2] R. N. Jazar, Theory of Applied Robotics. Boston, MA: Springer US, 2010. [3] “Barinka, Lukas, and Roman Berka. ‘Inverse kinematics-basic methods.’ Web.< http://www. cescg. org/CESCG- 2002/LBarinka/paper. pdf (2002).” [4] A. Aristidou and J. Lasenby. "Inverse kinematics: a review of existing techniques and introduction of a new fast iterative solver," 2009. [5] J. Kaur and V. K. Banga, "Simulation of Robotic Arm having three link Manipulator," International Journal of Research in Engineering and Technology (IJRET), vol. 1, no. 2, March, 2012, ISSN: 2277- 4378, 2012. [6] X. F. Ge and J. T. Jin, “The algorithm of redundant robotic kinematics based on exponential product,” Appl. Mech. Mater., vol. 58-60, pp. 1902-1907, Jun. 2011. [7] X. Xiao, Y. Li, and H. Tang, “Department of electromechanical engineering, university of Macau, Macao SAR, China,” IEEE International Conference on Information and Automation (ICIA), 2013, pp. 1177-1182. [8] A. Lodes, “Robot Simulator in MATLAB,” unpublished. [9] “http://www.imagesco.com/kits/robotic-arm.html.” [10] M. Ruzzenente, M. Koo, K. Nielsen, L. Grespan, and P. Fiorini, “A review of robotics kits for tertiary education,” in Proceedings of International Workshop Teaching Robotics Teaching with Robotics: Integrating Robotics in School Curriculum, 2012, pp. 153-162. [11] R. M. Murray, Z. Li, S. S. Sastry, and S. S. Sastry, A Mathematical Introduction to Robotic Manipulation, CRC press, 1994. [12] L. Žlajpah, “Simulation in robotics,” Math. Comput. Simul., vol. 79, no. 4, pp. 879-897, Dec. 2008. [13] P. I. Corke and others, “A computer tool for simulation and analysis: the Robotics Toolbox for MATLAB,” in Proc. National Conf. Australian Robot Association, 1995, pp. 319-330. [14] P. I. Corke, Robotics, Vision and Control: Fundamental Algorithms in MATLAB. Berlin: Springer, 2011. [15] P. Corke, Robotics, Vision and Control, vol. 73. Berlin, Heidelberg: Springer Berlin Heidelberg, 2011. 91