Project is to carry out the thorough mathematical kinematic model which includes forward and inverse displacement equation model, and forward and inverse differential or velocity model, by formulating equations relating joint variables with the position and orientation of the end-effector
kinematics of 8-axis robot for material handling applications
1. I
GUJARAT TECHNOLOGICAL UNIVERSITY
GANDHINAGAR INSTITUTE OF TECHNOLOGY
A report on
User Defined Project (UDP)
Topic: Material Handling Robot
Mechanical Engineering Department
Division: 8-A3
Project (2181909)
Team ID: 44235
Group members:-
1. Ghadiya Ravi (150120119045)
2. Gothi Dhairya (150120119047)
3. Jani Parth (150120119051)
4. Jerin Sibi (150120119052)
Faculty Guide:-
Prof. Manthan Uphadhyay
HEAD OF THE DEPARTMENT
Prof. Nirav Joshi
2. II
CONTENTS
SR. NO. CONTENT
PAGE
NO.
TITLE PAGE І
CERTIFICATE II
DECLARATION OF ORIGINALITY III
ACKNOLEDGEMENT V
TABLE OF CONTENTS VI
LIST OF FIGURES VIII
LIST OF TABLES X
ABSTRACT XI
CHAPTER 1 INTRODUCTION 1
1.1 Preliminary Remarks 2
1.2 Problem definition 2
1.3 Objective 2
1.4 Kinematic Model 3
1.5 Eight degree of freedom manipulator 5
1.6 Application and Limitation 6
1.7 Methodology 7
CHAPTER 2 LITERATURE REVIEW 8
2.1 Literature review 9
2.2 Research Gap 13
CHAPTER 3 FORWARD KINEMATIC MODEL 14
3.1 Forward Displacement model 15
3.2 Computer implementation 21
3.3 Forward Velocity model 21
3. III
CHAPTER 4 INVERSE KINEMATIC MODEL 28
4.1 Introduction of Inverse Kinematics 29
4.1.1 Solvability of Inverse Kinematic Model 29
4.1.2 Existence of solution 29
4.1.3 Multiple solutions 30
4.1.4 Solution techniques 31
4.1.5 Closed form solutions 31
4.2 Inverse Kinematics Solution of 8-DOF manipulator 32
4.2.1 Sub Problem 1 33
4.2.2 Sub Problem 2 38
CHAPTER 5 CAD MODELING AND SIMULATION 42
5.1 Details of individual links 43
5.2 Final Assembly 45
5.3 Simulation of 3D CAD Model 47
CHAPTER 6 RESULTS AND DISCUSSION 49
6.1 Result Comparison of Displacement Model 50
6.1.1 Displacement plot of X, Y & Z coordinate 50
6.1.2 2-D Plot Comparison 53
6.1.3 3-D Plot of MATLAB program 57
6.2 Result of Velocity Model 57
6.2.1 Velocity plot Comparison 58
6.2.2 Velocity plot of X, Y & Z Position 61
6.2.2 Velocity 2D Plot of MATLAB program 62
6.3 Result Comparison of Inverse Displacement Model 63
CHAPTER 7 CONCLUSION 70
References 73
APPENDIX 76
Appendix - 1 76
Appendix – 2 77
4. IV
LIST OF FIGURES
FIGURE
NO.
FIGURE
PAGE
NO.
1.1 The Direct and Inverse Kinematic Model 4
1.2 Eight axes serial robotic manipulator 5
3.1 DH convention for identifying joint-link parameters 15
3.2 Axes designation as per D-H parameters 17
3.3 Forward Jacobian Solution Program 25
3.4
Different values of JCC Final matrix (6 x 8) in MATLAB
Program
26
3.5 Different values of JCC matrix & linear velocities in MATLAB
Program
26
3.6 Different values of linear velocities & angular velocities in
MATLAB Program
27
4.1 Multiple solution due to parallel axes of revolute joints 30
4.2
Use of redundant manipulator to avoid obstacles or reach
around them
31
5.1 Detail Part Modeling of Individual link (A) 43
5.2 Detail Part Modeling of Individual link (B) 44
5.3 Detail Part Modeling of end-effector 45
5.4 CAD model 8 Axes serial manipulator 46
5.5 CAD Simulation Model of 8 Axes serial manipulator 47
6.1 X position plot from MATLAB programme 50
6.2 X position plot from CAD simulation 51
6.3 Y position plot from MATLAB programme 51
6.4 Y position plot from CAD simulation 52
6.5 Z position plot from MATLAB programme 52
5. V
6.6 Z position plot from CAD simulation 53
6.7 X-Y position plot from MATLAB programme 54
6.8 X-Y position plot from CAD simulation 54
6.9 X-Z position plot from MATLAB programme 55
6.10 X-Z position plot from CAD simulation 55
6.11 Y-Z position plot from MATLAB programme 56
6.12 Y-Z position plot from CAD simulation 56
6.13 3D plot of MATLAB programme 57
6.14 Linear velocity of X position plot from MATLAB programme 58
6.15 Linear velocity of X position plot from CAD simulation 58
6.16 Linear velocity of Y position plot from MATLAB programme 59
6.17 Linear velocity of Y position plot from CAD simulation 59
6.18 Linear velocity of Z position plot from MATLAB programme 60
6.19 Linear velocity of Z position plot from CAD simulation 60
6.20 Linear velocity of X position plot 61
6.21 Linear velocity of Y position plot 61
6.22 Linear velocity of Z position plot 61
6.23 Angular velocity of X position plot 61
6.24 Angular velocity of Y position plot 62
6.25 Angular velocity of Z position plot 62
6.26 Linear velocity of X versus Y 62
6.27 Angular velocity of X versus Y 62
6.28 Sub Problem 1 (first 5) Matrix Multiplication in Excel sheet 64
6.29 Sub Problem 2 (last 3) Matrix Multiplication in Excel sheet 67
6. VI
LIST OF TABLES
TABLE
NO.
PARTICULAR PAGE
NO.
2.1 Comparison of Kinematic modeling using D–H and screw
methods
11
3.1 Joint-link parameters for 8-DOF manipulator 18
4.1 Inverse kinematic solution of selected manipulator 41
5.1 Values of Joint velocities and D-H Parameters 48
6.1 Input data for forward kinematics formulation 63
6.2 Input data for inverse kinematics solution of Sub problem 1 65
6.3 Input data for inverse kinematics solution of Sub problem 2 68
6.4 Result Comparison of Forward and Inverse kinematics
solution
69
7. VII
ABSTRACT
In the era of automation and robotics, almost all major industries are now equipped
with one or other kind of robotic applications. Many times in general the robotic
manipulators are used for material handling or special tool handling operations. One
of such kind of robotic manipulators having Eight Degree of Freedom are selected
here for the present work which is designed for the flexibility in feeding of blanks to
complex dies and in parts removal in press applications. The complete kinematics of
the selected robotic manipulator is carried out which includes the forward kinematic,
inverse kinematic and differential motion derivations. The mathematical forward
kinematics model of 8-DOF serial robotic manipulator is proposed using DH
parameter representations for determining the position and orientation of the end-
effector with respect to the base frame. The mathematical forward velocity model for
the same is proposed using forward velocity equations for determining end-effector
velocity as function of joint velocities by using manipulator Jacobian matrix. The
closed form inverse solution is also proposed for the same using the method
proposed in literature. CAD simulation of 3D CAD model of the robot is carried out.
The results of forward model and velocity model are compared with the results of 3D
CAD simulations model. All the results obtained through CAD simulation are in best
agreement with that of the MATLAB results which is based on analytical formulation.
The inverse model is also validated analytically for some case.
10. 2
1.1 Preliminary Remarks
In the current era of automation, all major industries are now facilitated by one or other
kind of automatic manipulation instruments for various operations like loading unloading
of work-piece to and from the machine, material handling, welding, painting, packaging
etc. The very famous automated instruments are robotic manipulators with various
degrees of motions. For accurate and precise manipulation, fine controls of robots joints
are very much essential. Controls can be achieved by proper programming of actuators.
To achieve the desired controls of actuators in the robotic manipulations the relationship
of various variables and parameters are needed to be established mathematically.
Many researchers have contributed for development of various kinds of methodology of
deriving the mathematical relations of different variables. Various kinematic and
dynamic models are available for some standard robotic manipulators. For one of such
kind of eight degree of freedom serial robotic manipulators configuration, used for
material handling operations, a mathematical kinematic model has been reported as an
area of research in this dissertation.
1.2 Problem definition
The project aims to develop the kinematic model for Eight Degree of Freedom Serial
Robotic Manipulator used for Material Handling Applications. It is expected that the
proposed work will conclude with the details kinematic model for selected robotic
manipulator.
1.3 Objective
The main objective of the proposed project is to carry out the thorough mathematical
kinematic model which includes forward and inverse displacement equation model, and
forward and inverse differential or velocity model, by formulating equations relating joint
variables (joint distance for prismatic joint and joint angle for revolute joint) with the
position and orientation (collectively known as configuration) of the end-effector.
11. 3
1.4 Kinematic model
The Kinematic Model gives the relationship between the position and orientation of the
end-effector and spatial position of the joint links. In other words it is defined as
analytical study of the geometry of motion of a robot arm with respect to a fixed
reference coordinate system without regard to the forces. [14]
The kinematic modeling is divided in two categories:
Direct Kinematics
Inverse Kinematics
Kinematics is the science of motion that treats the subject without regard to the forces
that cause it. Within the science of kinematics, one studies the position, the velocity, the
acceleration, and all higher order derivatives of the position variables (with respect to
time or any other variable(s)). Hence, the study of the kinematics of manipulators refers
to all the geometrical and time-based properties of the motion.
In order to deal with the complex geometry of a manipulator, we affix frames to the
various parts of the mechanism and then describe the relationships between these frames.
The study of manipulator kinematics involves, among other things, how the locations of
these frames change as the mechanism articulates. The central topic of this chapter is a
method to compute the position and orientation of the manipulator's end-effector relative
to the base of the manipulator as a function of the joint variables.
12. 4
Fig 1.1 The Direct and Inverse Kinematic Model [14]
The kinematic modeling requires both the forward and inverse kinematics solutions of the
manipulator. The link parameters are commonly used in both the kinematics solutions.
The kinematic model is developed which denotes the inputs and outputs of kinematic
solutions as shown in Fig. 1.1
Serial robots adopt a design by connecting arms one by one in series by various types of
joints, especially revolute and prismatic. One end of the manipulator is connected to the
ground and the other end is free to move in space. For this reason a serial manipulator is
also referred as open-loop manipulator. The fixed link is called as base, and the free end
where a gripper or a mechanical hand is attached, the end-effector. While obtaining a
large workspace and enough flexibility, an obvious drawback is the cantilever effect in
both static and dynamic modes. Moreover, actuators are mounted between mechanical
links, which mean that the mass of actuators and their accessories are included in the
moving system, consume extra amount of energy and requires extra reinforcement.
13. 5
1.5 Eight degree of freedom manipulator
Fig.1.2 Eight axes serial robotic manipulator [18]
14. 6
Figure 1.2 shows basic 8 axis serial robotic manipulator used as feeder and material
handling which is able to transport and orient parts in various directions and provides for
maximum flexibility in feeding of blanks to complex dies and in parts removal. Feeder
can process high rate of parts of large size and can be installed in small press gaps with
minimum distance between press tables. Designed for payload of 120 kg including blank,
tooling, and tooling adapter, feeder can optionally be equipped with system for automatic
tooling change. [18]
Fig.1.2 shows basic eight axes serial robotic manipulator used as feeder and material
handling which is able to transport and orient parts in various directions. The additional
degrees of freedom provide for maximum flexibility in the feeding of blanks to complex
dies and in parts removal. The new feeder can be installed in small press gaps with a
minimum distance between the press tables. There are 3 prismatic joints and 5 revolute
joints. All joint axes from Z0 to Z7 are shown with motion direction. [18]
1.6 Applications and Limitations
In general, multi axis robots are found varieties of applications in various fields. The
proposed 8 axis serial manipulator is unique of its kind which can be used in different
ways in industries as follows.
1. Due to more number of prismatic joints, it can be used for long distance material
handling. One of such kind is used to transport 10-12 parts/min and can be
installed in small press gaps with min distance of 6,500 mm between press tables.
2. It is able to carry more payloads due to robust and sturdy structure. Designed for
payload of 120 kg including blank, tooling and tooling adapter.
3. The manipulator can optionally be equipped with system for automatic tooling
change.
4. It can have maximum reach without degeneracy due to combinations of rotary and
prismatic joints.
5. The dexterous volume is larger compare to other multi degree manipulators,
hence it can reach at very sharp corners of its work volume.
15. 7
6. It can approach the final destination with verities of orientations. Due to this
ability it can be precisely used to trace the higher order curves or uneven
contours.
Over and above of having such advantages and varieties of applications, the proposed
model also has some limitations as follows.
1. Due to more number of joints, the controlling of the manipulator becomes much
complicated.
2. It cannot be suitable for general purpose manipulations, as it can have a specific
task to perform.
3. To have the robust structure, the joints actuators need heavy power to operate it.
4. Having high power actuators adding more investment cost. It also need more
power to operate which leads to increase in running cost.
Apart from having such limitations, its advantages overcome the investment of robot and
it is used widely for various applications. Due to large cost, it is not affordable to small
and medium scale industries but more research work on the model can find some easier
way to controlling and make it more popular enough in all areas.
1.7 Methodology
Kinematic analysis of robotic manipulator of eight degrees of freedom robot is to be
carried out by using following steps.
1. Kinematic model of robot configuration is to be developed by using DH representation
scheme.
2. Forward and inverse displacement kinematic solutions of model are to be developed.
3. Forward (also known as Jacobian model) differential (velocity) kinematic solutions of
model are to be developed.
4. A general MATLAB code is to be developed for the forward and inverse kinematic
solution of the model.
5. A 3D CAD model of the robot configuration is to be prepared using commercial CAD
tool. Simulation of CAD model is to be carried out using the CAD tool.
6. Results of simulations are to be compared with the results of developed MATLAB
codes for kinematic model
17. 9
2.1 History Review
Peng [1] et al presented kinematic and dynamic analysis of a serial-link robot for
inspection process in EAST vacuum vessel. They introduced a serial-link robot which is
named flexible in-vessel inspection robot (FIVIR) and developed for Experimental
Advanced Superconducting Tokamak (EAST). The workspace simulation and kinematic
analysis are carried out. The dynamic behavior of the FIVIR is also presented by multi-
body system simulation using ADAMS software and concluded that the FIVIR has
ascendant kinematic and dynamic performance and can fulfill the design requirement for
inspection process in EAST vacuum vessel
Xin [2] et at carried out the inverse kinematic analysis of the general 6R serial robot. A
simple effective method for inverse kinematics problem of general 6R serial robot or
forward kinematics problem of general 7R single-loop mechanism is presented based on
a one-dimension searching algorithm. All the real solutions to inverse kinematics
problems of the general 6R serial robot or forward kinematics problems of the general 7R
single-loop mechanism are obtained. The new method was proposed with the following
features: (1) using one-dimension searching algorithm, all the real inverse kinematic
solutions are obtained; and (2) compared with the algebraic method, it has evidently
reduced the difficulty of deducing formulas. The principle of the new method can be
generalized to kinematic analysis of parallel mechanisms.
Based on the sequential motion of joints, a method is developed for the numerical inverse
kinematics of serial manipulators by Kazem Kazerounian [3]. This algorithm is stable
and computationally efficient and uses the zero position analysis method for robotic
manipulators.
Husty [4] et al proposed a new and efficient algorithm for the inverse kinematics of a
general serial 6R manipulator. The main idea demonstrated was to make use of classical
multidimensional geometry to structure the problem and to use the geometric information
before starting the elimination process. For the geometric pre-processing the Study model
18. 10
of Euclidean displacements was utilized. The 6R-chain is broken up in the middle to form
two open 3R chains. The kinematic image of a 3R-chain turns out to be a Segre-manifold
consisting of a one parameter set of 3-spaces. Algebraically this procedure means to solve
a system of seven linear equations and one resultant to arrive at the univariate 16 degree
polynomial.
Zhang [5] proposed an automated generation of the D–H parameters for configuration
design of modular manipulators. The advantage of the D-H method is that most of
analysis theories and tools, which were developed in designing non-modular robotic
configurations, can be utilized directly for designing modular robotic configurations.
Based on this new architecture a systematic procedure is proposed to generate a mapping
from modular design variables and the configuration description in terms of the D–H
notation.
Karlik and Serkan [6] have also proposed an improved approach to the solution of inverse
kinematics problems for robot manipulators using artificial neural-network (ANN)
approach to control the motion of a robot manipulator. The solution of the kinematics of a
six- degrees-of-freedom robot manipulator is implemented by using ANN. Work has
been undertaken to find the best ANN configurations. Both the placement and orientation
angles of a robot manipulator are used to find the inverse kinematics solutions
For construction of a universal 5-axis virtual machine simulation system, a new
methodology is proposed by Lee and Lin [8]. The OpenGL library is used to render the
virtual environment and to display all motions of the virtual machine tool. In order to
achieve the universal construction procedures, the D–H notation is adopted. The user
interfaces are developed to help users to select the configuration of machine tool. This
new methodology can assist developers in constructing the simulation system for the
universal 5-axis virtual machine tool efficiently and effectively.
Rocha, Tonetto and Dias [11] carried out a comparison between the Denavit–Hartenberg
and the screw-based methods used in kinematic modeling of robot manipulators. The
19. 11
kinematic modeling of a robot manipulator describes the relationship between the links
and joints that compose its kinematic chain. Denavit– Hartenberg convention method is
most popular method uses a minimal parameter representation of the kinematic chain, but
has some limitations. The successive screw displacements method is an alternative
representation to this classic approach. Although it uses a non-minimal parameter
representation, this screw-based method has some advantages over Denavit– Hartenberg.
The comparison of D-H method and screw theory is presented in the table 2.1.
Table 2.1 Comparison of Kinematic modeling using D–H and screw methods [11]
Characteristics D–H convention Screw based
Parameter
identification
Minimum set of scalar
parameters.
1 frame for each link.
Frames are systematically
chosen.
It does not depend on a
reference configuration.
Non-minimum set of parameters
(2scalars+2vectors).
2 frames for the entire chain.
Frames can be arbitrarily chosen.
Based on a reference
configuration.
Direct
kinematics
Joint variables represent
relative displacements.
Derived by composition of
homogeneous transformation
matrices.
Joint variables may represent
actual displacements.
Derived by composition of
homogeneous transformation
matrices.
Inverse
kinematics
Multiple solutions.
It may not have a closed-form
solution.
Based on geometric algebraic
intuition.
Multiple solutions.
It may not have a closed-form
solution.
Based on geometric algebraic
intuition.
20. 12
Iqbal, Islam and Khan [12] presented the modeling and Analysis of a 6 DOF Robotic
Arm Manipulator. They developed the kinematic models a 6 DOF robotic arm and
analyzed its workspace. The proposed model makes it possible to control the manipulator
to achieve any reachable position and orientation in an unstructured environment. The
forward kinematic model is predicated on Denavit Hartenberg (DH) parametric scheme
of robot arm position placement. The forward kinematic model has been validated using
Robotics Toolbox for MATLAB while the inverse kinematic model has been
implemented on a real robotic arm. Experimental results demonstrate that using the
developed model, the end-effector of robotic arm can point to the desired coordinates
within precision of ±0.5cm.
Ivan [13] et al presented the generalization in solving mechanics (kinematics and
dynamics) of manipulators with application of a PC. In that order 4×4 homogenous
transformation matrices are used to describe problems of rotation and translation of
manipulator links, and parts of MATLAB software – Simulink and Robotics toolbox are
used for simulation.
Shanmugasundar and Sivaramakrishnan [14] developed software for an Inverse
Kinematics of Seven-Degrees of Freedom Newly Designed Articulated Inspection Robot.
An enhanced analytical approach of inverse kinematics using Denavit-Hartenberg (D-H)
parameters is proposed. Software named Robot Kinematics is developed in VB6 Platform
for better understanding of inverse kinematics and quick manipulations of required
angles.
A kinematic structure-based classification of six degree-of-freedom industrial robotic
manipulators is introduced by Balkan [15] et al and a complete set of compact kinematic
equations is given according to this classification. For the classification, 100 industrial
robots are surveyed. Compact kinematic equations are derived for all main groups and
subgroups by utilizing the properties of exponential rotation matrices, and simplification
tools derived by using these properties.
21. 13
Knut [17] presented an algorithm for calculating the inverse kinematics of five-axis
machines close to singular configurations. The algorithm modifies the exact inverse
kinematics in order to give robustness to singularities at the expense of a small tool
orientation deviation. The kinematics and the singularity algorithm are implemented in a
postprocessor, and machining tests are conducted to verify the algorithms.
2.2 Research Gap
By the survey of various literatures it can be identified that much research has been
carried out for 3, 4, 5 and at most 6 or 7 degree of freedom serial manipulator. But very
few solutions are available for eight degrees of freedom manipulator. So, the proposed
project is identified to carry out the thorough kinematic analysis of 8 degrees of freedom
serial robotic manipulator which is specifically used for material handling operations
with high end flexibility. The analysis is proposed to be carried out by using D-H
representation method and results of CAD simulations are to be compared with.
23. 15
3.1 Forward Displacement model
Denavit and Hartenberg (1955) proposed a unique method of defining and representing a
manipulator positions with the help of four joint-link parameters for each link. Using a
systematic procedure, a right hand orthonormal coordinate frames can be assigned to
every joint. This is known as Denavit- Hartenberg (DH) notation. This notation is used in
this paper for representing 8 axes manipulator. [21]
An n-DOF manipulator will have (n+1) frames with the frame {0} or base frame acting
as the reference inertial frame and frame {n} being the “tool frame”.
With reference to fig.3.1, the four DH-parameter (two link parameter (ai ,i) and two
joint parameter (di ,i) ) are defined as follows. [21]
Fig.3.1 DH convention for assigning frames to links and identifying joint-link parameters
[21]
1) Link length (ai) – distance measured along xi-axis from the point of intersection of
xi-axis with zi-1-axis (point C) to the origin of frame {i}, that is distance CD.
24. 16
2) Link twist (i) – angle between zi-1 and zi-axis measured about xi-axis in the right-hand
sence.
3) joint distance (di) – distance measured along zi-1 axis from the origin of frame {i-1}
(point B) to the intersection of xi-axis with zi-1-axis (point C), that is distance BC.
4) Joint angle (i) – angle between xi-1 and xi-axis measured about the zi-1-axis in the
right-hand sence.
The transformation of frame {i-1} to frame {i} consists of four basic transformation.
1. A rotation about zi-1-axis by an angle i;
2. Translation along zi-1-axis by distance di;
3. Translation by distance ai along xi-axis, and
4. Rotation by an angle about i about xi-axis. [21]
Using the spatial coordinate transformation, the composite transformation matrix, which
describes frame {i} with respect to frame {i-1} is obtained as
i-1
Ti = Tz(i).Tz(di).Tx(ai).Tx(i) (1)
i i i
i i i ii-1
i
i i i
Cθ -Sθ 0 0 1 0 0 0 1 0 0 a 1 0 0 0
Sθ Cθ 0 0 0 1 0 0 0 1 0 0 0 Cα -Sα 0
T =
0 0 1 0 0 0 1 d 0 0 1 0 0 Sα Cα 0
0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 1
i i i i i i i
i i i i i i ii-1
i
i i i
Cθ -Sθ Cα Sθ Sα a Cθ
Sθ Cθ Cα -Cθ Sα a Sθ
T =
0 Sα Cα d
0 0 0 1
[21] (2)
Eq. (2) shows the D-H matrix relating frame {i} to frame {i-1}.
25. 17
Fig.3.2 Axes designation as per D-H parameters
Fig.3 shows the axes designation of manipulator as per D-H scheme. Based on the
designated axes the D-H parameters are identified as shown in Table 1.
26. 18
Table 3.1 Joint-link parameters for 8-DOF manipulator
Link i
D-H parameter
Type of Joint
ai i di i
1 L1 90
d1 0 Prismatic
2 0 0 d2 0 Prismatic
3 0 -90
0 3 Revolute
4 0 -90
d4 0 Prismatic
5 L5 -90
L51 5 Revolute
6 0 -90
0 6 Revolute
7 0 90 L6 7 Revolute
8 L7 0 0 8 Revolute
In table 1, L1, L5 and L7 are fixed link length as per the geometry of manipulator and L51
& L6 is fixed joint offset.
Substituting the D-H parameter values as listed in table-1 into Eq. (2), individual matrices
for every link are obtained and then by multiplying all in sequence final D-H matrix is
obtained as per Eq. (3).
0
1
1 0 0 L1
0 0 1 0
T
0 1 0 d1
0 0 0 1
1
2
1 0 0 0
0 1 0 0
T =
0 0 1 d2
0 0 0 1
3 3
3 32
3
cos(θ ) 0 -sin(θ ) 0
sin(θ ) 0 cos(θ ) 0
T =
0 -1 0 0
0 0 0 1
27. 19
3
4
1 0 0 0
0 0 1 0
T
0 1 0 d4
0 0 0 1
5 5 5
5 5 54
5
51
cos(θ ) 0 -sin(θ ) L5.cos(θ )
sin(θ ) 0 cos(θ ) L5.sin(θ )
T =
0 -1 0 L
0 0 0 1
6 6
6 65
6
cos(θ ) 0 -sin(θ ) 0
sin(θ ) 0 cos(θ ) 0
T =
0 -1 0 0
0 0 0 1
7 7
7 76
7
cos(θ ) 0 sin(θ ) 0
sin(θ ) 0 -cos(θ ) 0
T =
0 1 0 L6
0 0 0 1
8 8 7 8
8 8 7 87
8
cos(θ ) -sin(θ ) 0 L .cos(θ )
sin(θ ) cos(θ ) 0 L .sin(θ )
T =
0 0 1 0
0 0 0 1
0 0 1 2 3 4 5 6 7
8 1 2 3 4 5 6 7 8T = T . T . T . T . T . T . T . T
11 12 13 x
21 22 23 y0
8
31 32 33 z
41 42 43 44
r r r d
r r r d
T =
r r r d
r r r r
(3)
28. 20
Where,
r11 = C35C6C7C8+S53S7C8-C35S6S8
r12 = -C35C6C7S8-S53S7S8-C35S6C8
r13 = C35C6S7-S53C7
dx = C35C6C7C8L7+S53S7C8L7-C35S6L7S8-C35S6L6+C3C5L5+S3S5L5-S3d4+L1
r21 = -S6C7C8-C6S8
r22 = S6C7S8-C6C8
r23 = -S6S7
dy = -S6C7C8L7-C6S8L7-C6L6+L51-d2
r31 = S35C6C7C8+C35S7C8-S35S6S8
r32 = -S35C6C7S8-C35S7S8-S35S6C8
r33 = S35C6S7-C35C7
dz = S35C6C7C8L7+C35S7C8L7-S35S6L7S8-S35S6L6+S3C5L5-C3S5L5+C3d4+d1
r41 = 0
r42 = 0
r43 = 0
r44 = 1
And C35 = cos (3-5), Ci = cos (i), S35 = sin (3-5), Si = sin (i).
Now coordinates of end effector point (point – 8) with respect to the base frame {0} can
be given by:
0 0 8
8 8 8P T P
(4)
Where, i
Pj = coordinates of point j with respect to the frame {i} and
8
8 0 0 0 1
T
P
Therefore,
y0
8
44
d
d
P =
d
r
x
z
(5)
29. 21
Where, dx, dy, dz are the position and orientation (towards X, Y and Z direction
respectively) of the end-effector (or tool point) with respect to base frame.
3.2 Computer implementation
Based on the above mathematical formulation a computer programme is prepared using
MATLAB software. The programme works as follows
1. Link lengths are to be given as input.
2. The default range of motion of each joint is applied which define the joint space.
3. Based on the link length and joint space values, D-H parameters are calculated for
each joint.
4. A generalized D-H matrix is then computed based on D-H parameters for each
joint.
5. A final D-H matrix for a manipulator is then obtained.
6. From the final matrix end-effector positions are derived and plotted as results.
Detail MATLAB program for Forward Kinematics Displacements solution
for 8 D.O.F. robots manipulator in appendix. [24]
3.3 Forward Velocity model
The relation between joint velocities and end effecter velocities is obtained by Jacobian
matrix as follows.
eV = J(q) × q
(6)
Eq. (5) gives the end effector velocity vector Ve of size 6 × 1 as multiplication of a
Jacobian matrix J (q) of size 6 × 8 and a vector of 8 joint velocities q of size 8 × 1. Here,
q is to be determined from the numeric values of joint velocities which are given and
the Jacobian matrix can be derived as follows: [21]
vi i-1
i
wi
J P
J (q)= =
J 0
(For a prismatic joint) (7)
30. 22
i-1
vi i-1 n
i
wi i-1
J P × P
J (q)= =
J P
(For a revolute joint) (8)
Where, Jvi = linear velocity components and wiJ = angular velocity components, Pi-1 is a
vector pointing along the direction Zi-1, with respect to base frame and i-1
Pn is a position
vector of frame n. These two vectors are determined as follows:
0
i-1 i-1
ˆP = R .u (9)
i-1 0 0
n n n i-1 nP = T O - T O (10)
Where, 0
Ri-1 is a rotation matrix, ˆu is a unit vector along Zi-1 axis and On is the origin of
an end effector frame and it is given by: On = [0 0 0 1]T
. [21]
For the present configuration of 8 axis manipulator the final jacobian matrix is derived
with the help of MATLAB codes, and here also determined both type jacobian matrixes
(i.e. one for prismatic joint and second for revolute joint) mathematically as per
following manner. Remaining jacobian matrices of both types are also derived as a
similar way, which represented below.
Now joint 1 is prismatic.
So, 0
1
P
J =
0
, (from Eq. 7)
Where,
0
0 0
ˆP = R .u (from Eq. 9)
Here,
T0
0
1 0 0
ˆR = 0 1 0 & u= 0 0 1
0 0 1
so, put the both values in P0 equation,
Obtain, 0
0
P = 0
1
so, finally obtain, 1
0
0
1
J =
0
0
0
(prismatic joint)
31. 23
Where, J1 is the jacobian matrix (6x1) for first prismatic joint. Similarly J2, J4 are also
jacobian matrix for prismatic joint 2 and 4, which are determined as exactly similar way.
Now joint 3 are revolute.
2
2 8
3
2
P × P
J =
P
, (from Eq. 8)
0
2 2
ˆP = R .u , (from Eq. 9)
Here,
T0
2
1 0 0
ˆR = 0 0 -1 & u= 0 0 1
0 1 0
so, put the both values in P2 equation,
Obtain, 2
0
P = 1
0
Now, find out
2
P8
2 0 0
8 8 n 2 nP = T .O - T .O , (from Eq. 10)
Where, On = [0 0 0 1]T
& 0
T2 = 0
T1. 1
T2
Here all values of Eq.
2
P8 are known. From manually calculation, find out the
2
P8
x 1
2
8 y 2
z 1
d -L
P = d +d
d -d
Where, dx, dy, dz are the position and orientation (towards X, Y and
Z direction respectively) of the end-effector (or tool point) with respect to base frame,
from the transformation matrix (T) elements,
Now, find out
2
2 8P × P , which is cross product,
32. 24
2
2 8
x 1 y 2 z 1
ˆ ˆ ˆi j k
P × P = 0 -1 0
d -L d +d d -d
(cross product)
Solution of this matrix,
1 z x 1
ˆ ˆ ˆi (d - d ) - j (0) + k (d - L )
Finally,
1 z
2
2 8
x 1
d -d
P × P = 0
d -L
Now
2
2 8
3
2
P × P
J =
P
, so put all the known values of P2 &
2
2 8P × P in J3 equation,
So, finally find out
1 z
x 1
3
d -d
0
d -L
J =
0
-1
0
(revolute joint)
Where, J3 is the jacobian matrix (6x1) for first revolute joint. Similarly J5, J6, J7, J8 are
also jacobian matrix for revolute joint 5, 6, 7 and 8, which are determined as exactly
similar way.
Finally combining J1 to J8 as follows,
1 2 3 4 5 6 7 8J J J J J J J J J (11)
Eq. (11) shows final jacobian matrix for 8-DOF robot manipulator, which will be used for
calculating (linear & angular) velocities of end-effector.
33. 25
For the present configuration of 8 axis manipulator the final jacobian matrix is derived
with the help of MATLAB codes as follows.
Fig. 3.3 shows that forward Jacobian Solution Program in MATLAB software from that
determined all (linear & angular) velocities of end-effector and final jacobian matrix is
also obtained.
Fig.3.3 Forward Jacobian Solution Program
Here vx, vy, vz are the linear velocity along X, Y & Z direction and wx, wy, wz are the
angular velocity along X, Y & Z direction.
The result of the MATLAB program in which the final matrix JCC (6 x 8) value for
given no. of position is obtained as shown in fig. 3.4 and also all (vx, vy, vz, wx, wy, wz)
velocities values for given no. of position is obtained as shown in fig. 3.5 and fig. 3.6
34. 26
Fig.3.4 Different values of JCC matrix in MATLAB Program
Fig.3.5 Different values of JCC matrix & linear velocities in MATLAB Program
35. 27
Fig.3.6 Different values of linear velocities & angular velocities in MATLAB Program
The MATLAB codes for Eq. (5), (6) & (7) are generated and results are shown in results
and discussion section.
Detail MATLAB program for Forward Jacobian solution for 8 D.O.F. robots manipulator
in appendix-2.
37. 29
4.1 Introduction of Inverse Kinematics
The textual definition of the inverse kinematic problem as stated by Mittal [21] is
“The determination of all possible and feasible sets of joint variables, which would
achieve the specified position and orientation of the manipulator’s end-effector with
respect to the base frame.” Hence it is required to know the desire position and
orientations of the end effector. [21]
4.1.1 Solvability of Inverse Kinematic Model:
Inverse kinematics is complex because the solution is to be found or nonlinear
simultaneous equations, involving transcendental (harmonic sine and cosine) functions.
The number of simultaneous equations is also generally more than the number of
unknowns, making some of the equations mutually dependent. These conditions lead to
the possibility of multiple solutions or nonexistence of any solution for the given end-
effector position and orientation. [21]
4.1.2 Existence of solution:
The conditions for existence of solutions to the inverse kinematic problem are examined
first. It is obvious that if the desired point p lies outside the reachable workspace then no
solution exists. Even when p is within reachable workspace, not all orientations are
realizable, unless p lies within dexterous workspace. If the wrist has fewer than 3-DOF to
orient the end-effector, then certain classes of orientations are not realizable.
For a manipulator to have all position and orientation solutions, the number of DOF n
(equal to the number of unknowns) must at least match the number of independent
constraints. That is, for general dexterous manipulation.
n 6
This is a necessary but not sufficient condition for existence of solutions to the inverse
problem. In addition to these six independent constraint equations, the tool position and
orientation must be such that the limits on the joint motions are not violated. For
manipulators with less than or more than 6-DOF, the solutions are more complex. When
38. 30
degrees of freedom are less than six, the manipulator cannot attain the general goal
position and orientation in 3-D space-mathematically it is an over-determined case with
six equations in less than six unknowns. The case of a manipulator, with more than 6-
DOF, is an underdetermined case, as there are only six independent nonlinear
simultaneous equations in more than six unknowns. [21]
4.1.3 Multiple solutions
The existence of multiple solutions is a common situation encountered in solving inverse
kinematic problem. Multiple solutions pose further problem because the robot system has
to have a capability to choose one, probably the best one. Multiple solutions can arise
because of different factors. Some common situations, which lead to multiple solutions,
are discussed as follows.
Fig. 4.1 Multiple solution due to parallel axes of revolute joints [21]
Multiple solutions also arise from number of degree of freedom. For example, a
manipulator with more than 6-DOF may have infinitely may solutions to the inverse
kinematic problem. A manipulator with more degree of freedom than are necessary is
called kinematically redundant manipulator. The SCARA configuration is an example of
redundant manipulator. It has one redundant degree of freedom in horizontal plane
because only two joints (2-DOF) are needed to establish any horizontal position.
Redundant manipulators have added flexibility, which can be useful in avoiding obstacles
or reaching inaccessible locations, as illustrated in fig. 4.2 [21]
39. 31
Fig. 4.2 Use of redundant manipulator to avoid obstacles or reach around them [21]
4.1.4 Solution techniques
There are two approaches to the solutions to the inverse problem: closed form solutions
and numerical solutions. In the closed form solution, joint displacements are determined
as explicit functions of the position and orientation of the end-effector. In numerical
methods, iterative algorithms such as the Newton-Raphson method are used. The
numerical methods are computationally intensive and by nature slower compared to
closed-form methods. Iterative solutions do not guarantee convergence to the correct
solution in singular and degenerate cases.
The “closed form” in the present context means a solution method based on analytical
algebraic or kinematic approach, giving expressions for solving unknown joint
displacements. The closed form solutions may not be possible for all kinds of structures.
A sufficient (but not necessary) condition for a 6-DOF manipulator to possess closed
form solutions is that either its three consecutive joint axes intersect or its three
consecutive joint axes are parallel. [21]
4.1.5 Closed form solutions
Twelve equations, out of which only six are independent, are obtained by equating the
elements of the manipulator transformation matrix with end-effector configuration matrix
T. At the same time, only six of the twelve elements of T specified by the by the end-
effector positions and orientation are independent. For a manipulator with less than
40. 32
6-DOF, the number of independent equations may also be fewer than six, Several
approaches such as, inverse transform, screw algebra and kinematic approach and so on,
can be used for solving these equations but none of them is general so as to solve the
equation for every manipulator. A composite approach based on direct inspection,
algebra, and inverse transform is presented here, which can be used to solve the inverse
equations for a class of simple manipulators.
Another useful technique to reduce the complexity is dividing the problem into two
smaller parts- the inverse kinematics of arm and the inverse kinematics of wrist. The
solutions for the arm and wrist, each with, say, 3-DOF, are obtained separately. These
solutions are combined by coinciding the arm end-point frame with the wrist-base frame
to get the total manipulator solution. [21]
4.2 Inverse Kinematics Solution of 8-DOF manipulator
As suggested by many researchers that to arrive at the closed form solution for the
robotic manipulators having degrees of freedom more than 6 is very difficult or
almost impossible by direct methods. Many researchers have approached to solve
multi joint robotic inverse solution by varieties of methods. A numerical method is
also famous for to get the solution of such kind of problem.
As suggested by Peng [1] and Khalil [22], the inverse kinematic solution of a robotic
manipulator having more than 6 joints can be solved by separating the end effectors.
According to this approach the whole problem can be split in to two sub problem. In
first problem the solution of first five joints are derived using inverse DH approach
and the remaining 3 joints solution will be obtained in second problem separately
considering it as end effector.
In the present case, selected robotic manipulators have PPRPR as first five joints and
the last 3 joints are RRR. So the last 3 joints are considered as 3 joints of end
effector as RPY. Hence the solution is presented in two sub problem.
41. 33
4.2.1 Sub Problem 1:
In the first sub problem, as discussed above, the first 5 joints namely PPRPR are
considered and hence the forward solution for the same can be expressed as
0 0 1 2 3 4
5 1 2 3 4 5T T . T . T . T . T where,
0
1
1 0 0 L1
0 0 1 0
T
0 1 0 d1
0 0 0 1
,
1
2
1 0 0 0
0 1 0 0
T =
0 0 1 d2
0 0 0 1
,
3 3
3 32
3
cos(θ ) 0 -sin(θ ) 0
sin(θ ) 0 cos(θ ) 0
T =
0 -1 0 0
0 0 0 1
3
4
1 0 0 0
0 0 1 0
T
0 1 0 d4
0 0 0 1
,
5 5 5
5 5 54
5
51
cos(θ ) 0 -sin(θ ) L5.cos(θ )
sin(θ ) 0 cos(θ ) L5.sin(θ )
T =
0 -1 0 L
0 0 0 1
35 35 5 35 3 4 1
51 20
5
35 35 5 35 3 4 1
C 0 S L C -S d +L
0 -1 0 L -d
T =
S 0 -C L S +C d +d
0 0 0 1
Let the known position and orientation of the endpoint of this section or end point of
link-5 be given by
11 12 13 x
21 22 23 y
31 32 33 z
r r r d
r r r d
T=
r r r d
0 0 0 1
Here the T matrix elements are completely known in case of inverse kinematics. Now to
obtain the solution for joint variables (d1, d2, 3, d4, 5), which are unknown, In Eq. (4.1)
0
T5 is equated to overall transformation matrix for the 5- DOF manipulator, where 0
T5 is
already derived,
42. 34
11 12 13 x 35 35 5 35 3 4 1
21 22 23 y 51 20
5
31 32 33 z 35 35 5 35 3 4 1
r r r d C 0 S L C -S d +L
r r r d 0 -1 0 L -d
T =
r r r d S 0 -C L S +C d +d
0 0 0 1 0 0 0 1
(4.1)
Comparing matrix elements from Eq. (4.1), some single or multi variable equations are
obtained from elements (1, 4), (2, 4), (3, 4) as:
5 35 3 4 1 xL C -S d +L =d
51 2 yL -d =d
5 35 3 4 1 zL S +C d +d =d
So above three equations only the second equation is a single variable equation, so d2 can
be found completely by,
2 51 yd =L - d
(4.2)
Other two equations is subjected to multivariable, so a close examination from these two
equation clearly shows that no direct solution can be found for any of other joint-variable
(d1, 3, d4, 5).
Hence, the inverse kinematics approach is used. In order to arrive at the solution for other
joint variables, both matrices of Eq. (4.1) are premultiplied by inverse of 0
T1 (i.e. 0
T1
-1
).
Here,
1
10 -1
1
1 0 0 -L
0 0 1 -d
T =
0 -1 0 0
0 0 0 1
This gives left-hand side matrix equation of Eq. (4.1) as
11 12 13 x 1
31 32 33 z 10 -1
1
21 22 23 y
r r r d -L
r r r d -d
( T ) .T =
-r -r -r -d
0 0 0 1
43. 35
And right-hand side of matrix equation of Eq. (4.1) is
35 35 3 5 5 3 5 5 3 4
35 35 3 5 5 3 5 5 3 41 1 2 3 4
5 2 3 4 5
51 2
C 0 S C C L +S S L -S d
S 0 -C S C L -C S L +C d
T = T . T . T . T =
0 1 0 -L +d
0 0 0 1
By comparing and a close examination from above two matrix elements equations,
clearly shows that no direct solution can be found for any of other joint-variable
(d1, 3, d4, 5).
Hence, other inverse kinematics approach is used. In order to solve for other joint
variables, both matrices of Eq. (4.1) are now postmultiplied by inverse of 4
T5 (i.e. 4
T5
-1
).
Where,
5 5 5
514 -1
5
5 5
C S 0 -L
0 0 -1 L
T =
-S C 0 0
0 0 0 1
This gives left-hand side matrix equation of Eq. (4.1) is
5 11 5 13 5 11 5 13 12 5 11 51 12 x
5 21 5 23 5 21 5 23 22 5 21 51 22 y0 4 -1
5 5
5 31 5 33 5 31 5 33 32 5 31 51 32 z
C r -S r S r +C r -r -L r +L r +d
C r -S r S r +C r -r -L r +L r +d
T .( T ) .=
C r -S r S r +C r -r -L r +L r +d
0 0 0 1
And right-hand side of matrix equation of Eq. (4.1) is
3 3 3 4 1
20 0 1 2 3
4 1 2 3 4
3 3 3 4 1
C S 0 -S d +L
0 0 1 -d
T = T . T . T . T =
S -C 0 C d +d
0 0 0 1
So equating both matrices, results as:
44. 36
3 3 3 4 1 5 11 5 13 5 11 5 13 12 5 11 51 12 x
2 5 21 5 23 5 21 5 23 22 5 21 51 22 y
3 3 3 4 1 5 31 5 33 5 31 5 33 32 5 31 51 32 z
C S 0 -S d +L C r -S r S r +C r -r -L r +L r +d
0 0 1 -d C r -S r S r +C r -r -L r +L r +d
S -C 0 C d +d C r -S r S r +C r -r -L r +L r +d
0 0 0 1 0 0 0 1
(4.3)
Comparing matrix elements of Eq. (4.3), some single or multi variable equations are
obtained from elements (1, 4), (2, 4), (3, 4) as:
3 4 1 5 11 51 12 x-S d +L = -L r +L r +d
2 5 21 51 22 y-d = -L r +L r +d
3 4 1 5 31 51 32 zC d +d = -L r +L r +d
But d2 is already found and from other equations, no single variable is found out. So In
order to solve for other joint variables, solution should be done in terms of the elements
of the position vector components of the above matrix, but in this case no single variable
equation or not a single joint variable is found out, so it should be go with the solution in
terms of elements of the rotational matrix.
Comparing matrix elements of Eq. (4.3), some single variable equations are obtained
from elements (2, 1), (2, 2) as:
5 21 5 23
5 21 5 23
C r -S r =0
S r +C r =0
Here considering the first Equation,
5 21 5 23C r =S r implies
5 21
5 23
S r
=
C r
so,
21
5
23
r
tanθ =
r
Finally,
1 21
5
23
r
θ = tan
r
(4.4)
Comparing matrix elements of Eq. (4.3), some other single variable equations are
obtained from elements (1, 1), (3, 1) as:
45. 37
3 5 11 5 13
3 5 31 5 33
C = C r -S r
S = C r -S r
Here the ratio of above two equations we get,
5 31 5 33
3
5 11 5 13
C r -S r
tanθ =
C r -S r
Finally,
1 5 31 5 33
3
5 11 5 13
C r -S r
θ = tan
C r -S r
(4.5)
Comparing matrix elements of Eq. (4.3), some other single variable equations are
obtained from elements (1, 4) as:
3 4 1 5 11 51 12 x-S d +L = -L r +L r +d
So simplify above equation in form of d4,
Finally,
51 12 5 11 x 1
4
3
L r -L r +d -L
d = -
S
(4.6)
Comparing matrix elements of Eq. (4.3), some other single variable equations are
obtained from elements (3, 4) as:
3 4 1 5 31 51 32 zC d +d = -L r +L r +d
So simplify above equation in form of d1,
Finally, 1 51 32 5 31 z 3 4d = L r -L r +d -C d
(4.7)
In this case postmultiplying of both side of Eq. (4.1) gives solution of the four joint
variables (d1, 3, d4, 5).
Here the 0
T5 matrix elements are compared by with fifth link end point transformation
matrix (T) elements, and found out the solution for joint variables (d1, d2, 3, d4, 5) in
form of equations, which are unknown.
46. 38
4.2.2 Sub Problem 2:
In the second sub problem, as discussed above, the last 3 joints namely RRR are
considered as end effector and hence the forward solution for the same can be
expressed as
5 5 6 7
8 6 7 8T = T . T . T Where,
6 6
6 65
6
cos(θ ) 0 -sin(θ ) 0
sin(θ ) 0 cos(θ ) 0
T =
0 -1 0 0
0 0 0 1
7 7
7 76
7
cos(θ ) 0 sin(θ ) 0
sin(θ ) 0 -cos(θ ) 0
T =
0 1 0 L6
0 0 0 1
8 8 7 8
8 8 7 87
8
cos(θ ) -sin(θ ) 0 L .cos(θ )
sin(θ ) cos(θ ) 0 L .sin(θ )
T =
0 0 1 0
0 0 0 1
6 7 8 6 8 6 7 8 6 8 6 7 6 7 8 7 6 8 7 6 6
6 7 8 6 8 6 7 8 6 8 6 7 6 7 8 7 6 8 7 6 65
8
7 8 7 8 7 7 8 7
C C C -S S -C C S -S C C S C C C L -S S L -S L
S C C +C S -S C S +C C S S S C C L +C S L +C L
T =
-S C S S C -S C L
0 0 0 1
Let the known position and orientation of the end-effector or tool point of this section is
given by
11 12 13 x
21 22 23 y
31 32 33 z
a a a p
a a a p
T=
a a a p
0 0 0 1
Here the T matrix elements are completely known in case of inverse kinematics. Now to
obtain the solution for joint variables (6, 7, 8), which are unknown, In Eq. (4.8) 5
T8 is
equated to overall transformation matrix for the 3- DOF manipulator, where 5
T8 is
already derived,
47. 39
11 12 13 x 6 7 8 6 8 6 7 8 6 8 6 7 6 7 8 7 6 8 7 6 6
21 22 23 y 6 7 8 6 8 6 7 8 6 8 6 7 6 7 8 7 6 8 7 6 65
8
31 32 33 z 7 8 7 8 7 7 8 7
a a a p C C C -S S -C C S -S C C S C C C L -S S L -S L
a a a p S C C +C S -S C S +C C S S S C C L +C S L +C L
T =
a a a p -S C S S C -S C L
0 0 0 1 0 0 0 1
(4.8)
Comparing matrix elements from Eq. (4.8), some single or multi variable equations are
obtained from elements (1, 1), (1, 4), (2, 1), (2, 4) as:
11 6 7 8 6 8
x 6 7 8 7 6 8 7 6 6
21 6 7 8 6 8
y 6 7 8 7 6 8 7 6 6
a C C C -S S
p C C C L -S S L -S L
a S C C +C S
p S C C L +C S L +C L
From above equations, px and py can be written respectively in form of a11 and a21 as:
x 7 11 6 6
y 7 21 6 6
p L a -S L
p L a +C L
So simplifying these equations as,
6 6 7 11 x
6 6 y 7 21
S L L a -p
C L p -L a
Here the ratio of above two equations gives,
7 11 x
6
y 7 21
L a -p
tanθ =
p -L a
Finally,
1 7 11 x
6
y 7 21
L a -p
θ = tan
p -L a
(4.9)
Comparing matrix elements from Eq. (4.8), some single variable equations are obtained
from elements (3, 1), (3, 2) as:
31 7 8
32 7 8
a -S C
a S S
Ratio of these two equations gives,
48. 40
32
8
31
-a
tanθ =
a
Finally,
1 32
8
31
-a
θ = tan
a
(4.10)
Comparing matrix elements from Eq. (4.8), some single variable equations are obtained
from elements (3, 3) as:
33 7a C
So,
2
7 33S 1 a
Now taking the ratio of above two equations,
2
33
7
33
± 1-a
tanθ =
a
Finally,
2
331
7
33
1-a
θ = tan
a
(4.11)
Here the 5
T8 matrix elements are compared with end-effector or tool point transformation
matrix (T) elements, and the solution for joint variables (6, 7, 8) are found out, which
are unknown.
Thus expressions for all the eight joint displacements of 8-DOF manipulator are now
obtained as explicit functions of the desired position and orientation of end-effector. The
values of joint displacements can be determined from these functions for the desired end-
effector location data.
Equations (4.2), (4.4), (4.5), (4.6), (4.7), (4.9), (4.10), (4.11) give the complete solution
for the 8-DOF manipulator as expressions for the joint variables (d1, d2, 3, d4, 5, 6, 7,
8) in terms of known end-effector of tool point position and orientation. Note that the
above solution is one of the possible sets of expressions. Alternate expressions for the
joint variables (d1, d2, 3, d4, 5, 6, 7, 8) can also be obtained by equating some other
set of elements of the matrices.
49. 41
Table 4.1 shows the list of equations solved using present method for the inverse of
selected manipulator.
Table: 4.1 Inverse kinematic solution of selected manipulator
Sr. No
Joint
Variable
Equation
1 d1 1 51 32 5 31 z 3 4d = L r -L r +d -C d
2 d2 2 51 yd =L - d
3 3
1 5 31 5 33
3
5 11 5 13
C r -S r
θ = tan
C r -S r
4 d4
51 12 5 11 x 1
4
3
L r -L r +d -L
d = -
S
5 5
1 21
5
23
r
θ = tan
r
6 6
1 7 11 x
6
y 7 21
L a -p
θ = tan
p -L a
7 7
2
331
7
33
1-a
θ = tan
a
8 8
1 32
8
31
-a
θ = tan
a
51. 43
In the 3D CAD model of 8 Axes serial manipulator, there are eight individual links
connected with each other to achieve required motion by means of linear motion for
prismatic joint and rotary motion for revolute joint. Each link is joined with each other by
means of some mounting devices like bracket or any hardware. Each eight links 3D
modeling is shown in below figures.
a) Fixed link-0 (for Z0 axis-linear) b) Link-1 (for Z1 axis-linear)
c) Bracket (connect link 0 & 1) d) Link-2 (for Z2 axis-rotary)
Fig.5.1 Detail Part Modeling of Individual link (A) [23]
52. 44
In fig. 5.1 shows the detail part model of individual link of serial manipulator, in which
the link-0 is the fixed link marks as a red color, which is mounted on direct machine or
structure of system. The link-1 is connected with the bracket to sliding the vertically
upwards and downwards with respect to the link-0. Link-2 is also attached to the link-1 to
carry out the rotary motion between them by means of joint rod and hardware.
e) Link-3 (for Z3 axis-linear) f) Link-4 (for Z4 axis-rotary)
g) Link-5 (for Z5 axis-rotary) h) Link-6 (for Z6 axis-rotary)
Fig.5.2 Detail Part Modeling of Individual link (B) [23]
53. 45
In fig. 5.2 shows the detail part model of individual link-3, link-4, link-5 and link-6 of
serial manipulator, in which the link-3 is connected with the link-2 to carry out the linear
motion with respect to whole upper side structure which is build by link-0 to link-2 and
achieved prismatic joint between two parts of manipulator. Link-4 is attached with the
link-3 by means of rotary joint with the help of mounting hardware component. Link-5 is
assembled to link-4 to achieved rotary joint. Link-5 and link-6 are also connected with
each other to carry out revolute joint.
h) Link-7 (for Z7 axis-rotary)
Fig.5.3 Detail Part Modeling of end-effector
Fig.5.3 shows the part modeling of end-effector, which is connected with the link-6 by
means of a rotary joint. This end-effector final point position and velocities is determined
with the help of this CAD assembled model simulation.
5.2 Final Assembly
Fig.5.4 shows the pictorial view of 3D CAD model prepared in professional CAD
software [6]. The dimensions of the links are assumed in proportionate for the present
study. The model is further used to obtain the required D-H parameter. As mentioned in
Table 1, total of 3 prismatic joints and 5 revolute joints are modeled.
55. 47
5.3 Simulation of 3D CAD Model
Fig.5.5 CAD Simulation Model of 8 Axes serial manipulator [23]
56. 48
From Fig. 5.5 shows each joint is actuated by individual motor with different velocities.
For the illustration purpose, joint velocities and other link and joint parameters are taken
as listed in Table 2.
Table 5.1: Values of Joint velocities and D-H Parameters
Joint
No
Type of Joint Velocity
Link length or
Offset value
1 Prismatic 20 mm/s L1 = 50 mm
2 Prismatic 20 mm/s --
3 Revolute 5 deg/s --
4 Prismatic 30 mm/s --
5 Revolute 5 deg/s
L5 = 200 mm &
L51 = 135.75 mm
6 Revolute 3 deg/s L6 = 490 mm
7 Revolute 5 deg/s L7 = 527 mm
8 Revolute 5 deg/s --
58. 50
6.1 Result Comparison of Forward Displacement Model
Based on the derived mathematical formulation for 8 degrees of freedom serial
manipulator, MATLAB codes are prepared to derive the positions of end-effector for
given configuration. The programme receives the link lengths L1, L5, L51, L6 and L7 as
input data and computes the final position of end-effector. The various results are plotted
and discussed in following sections.
6.1.1 Displacement plot of X, Y & Z coordinate
Fig.6.1 shows the X position plot of end-effector produced by MATLAB programme
based on analytical formulation given by Eq. (4).
Fig.6.1 X position plot from MATLAB programme
59. 51
Fig.6.2 X position plot from CAD simulation
Fig.6.2 shows the X position plot of end-effector produced by CAD simulation based on
3D CAD software formulation.
The results obtained through CAD simulation are in best agreement with that of the
MATLAB results which is based on analytical formulation.
Fig.6.3 shows the Y position plot of end-effector produced by MATLAB programme
based on analytical formulation given by Eq. (4).
Fig.6.3 Y position plot from MATLAB programme
60. 52
Fig. 6.4 Y position plot from CAD simulation
Fig.6.4 shows the Y position plot of end-effector produced by CAD simulation based on
3D CAD software formulation.
The results obtained through CAD simulation are in best agreement with that of the
MATLAB results which is based on analytical formulation.
Fig.6.5 Z position plot from MATLAB programme
61. 53
Fig.6.5 shows the Z position plot of end-effector produced by MATLAB programme
based on analytical formulation given by Eq. (4).
Fig.6.6 Z position plot from CAD simulation
Fig.6.6 shows the Z position plot of end-effector produced by CAD simulation based on
3D CAD software formulation.
The results obtained through CAD simulation are in best agreement with that of the
MATLAB results which is based on analytical formulation.
6.1.2 2-D Plot Comparison
Fig.6.7 shows the 2D plot of X versus Y position of end-effector point obtained from
MATLAB programme and Fig.6.8 shows the 2D plot of X versus Y position of end-
effector point obtained from CAD simulation.
The results obtained through CAD simulation are in best agreement with that of the
MATLAB results which is based on analytical formulation.
62. 54
Fig.6.7 X-Y position plot from MATLAB programme
Fig.6.8 X-Y position plot from CAD simulation
63. 55
Fig.6.9 shows the 2D plot of X versus Z position of end-effector point obtained from
MATLAB programme and Fig.6.10 shows the 2D plot of X versus Z position of end-
effector point obtained from CAD simulation.
The results obtained through CAD simulation are in best agreement with that of the
MATLAB results which is based on analytical formulation.
Fig.6.9 X-Z position plot from MATLAB programme
Fig.6.10 X-Z position plot from CAD simulation
64. 56
Fig.6.11 shows the 2D plot of Y versus Z position of end-effector point obtained from
MATLAB programme and Fig.6.12 shows the 2D plot of Y versus Z position of end-
effector point obtained from CAD simulation.
The results obtained through CAD simulation are in best agreement with that of the
MATLAB results which is based on analytical formulation.
Fig.6.11 Y-Z position plot from MATLAB programme
Fig.6.12 Y-Z position plot from CAD simulation
65. 57
6.1.3 3-D Plot of MATLAB programme
Fig.6.13 shows the 3D plot of position of end-effector obtained from MATLAB
programme.
Fig. 6.13 3D plot of MATLAB programme
6.2 Result of Velocity Model
Based on the derived mathematical formulation for 8 degrees of freedom serial
manipulator, MATLAB codes are prepared to derive the velocity of end-effector for
given configuration. The programme receives the link lengths L1, L5, L51, L6 and L7 as
input data and computes the velocity of end-effector. The various results are plotted and
discussed in following sections.
66. 58
6.2.1 Velocity plot Comparison
Fig.6.14 shows the X components or positions of velocity obtained from the MATLAB
programme based on analytical formulation. Fig.6.15 shows the X components or
positions of velocity obtained from CAD simulation.
The results obtained through CAD simulation are in best agreement with that of the
MATLAB results which is based on analytical formulation.
Fig.6.14 Linear velocity of X position plot from MATLAB programme
Fig.6.15 Linear velocity of X position plot from CAD simulation
67. 59
Fig.6.16 shows the Y components or positions of velocity obtained from the MATLAB
programme based on analytical formulation. Fig.6.17 shows the Y components or
positions of velocity obtained from CAD simulation.
The results obtained through CAD simulation are in best agreement with that of the
MATLAB results which is based on analytical formulation.
Fig.6.16 Linear velocity of Y position plot from MATLAB programme
Fig.6.17 Linear velocity of Y position plot from CAD simulation
68. 60
Fig.6.18 shows the Z components or positions of velocity obtained from the MATLAB
programme based on analytical formulation. Fig.6.19 shows the Z components or
positions of velocity obtained from CAD simulation.
The results obtained through CAD simulation are in best agreement with that of the
MATLAB results which is based on analytical formulation.
Fig.6.18 Linear velocity of Z position plot from MATLAB programme
Fig.6.19 Linear velocity of Z position plot from CAD simulation
69. 61
6.2.2 Velocity plot of X, Y & Z Position
Fig.6.20 and 6.21 shows the Linear Velocity of X & Y components or positions of
velocity obtained from the MATLAB programme respectively.
Fig.6.20 Linear velocity of X position plot Fig.6.21 Linear velocity of Y position plot
Fig.6.22 and 6.23 shows the Linear Velocity of Z & Angular Velocity of X components
or positions of velocity obtained from the MATLAB programme respectively.
Fig.6.22 Linear velocity of Z position plot Fig.6.23 Angular velocity of X position plot
Fig.6.24 and 6.25 shows the Angular Velocity of Y & Z components or positions of
velocity obtained from the MATLAB programme respectively.
70. 62
Fig.6.24 Angular velocity of Y position plot Fig.6.25 Angular velocity of Z position plot
6.2.3 Velocity 2D Plot of MATLAB program
Fig.6.26 shows the Linear Velocity of X versus Linear Velocity of Y components or
positions of velocity obtained from the MATLAB programme respectively.
Fig.6.26 Linear velocity of X versus Y Fig.6.27 Angular velocity of X versus Y
Fig.6.27 shows the Angular Velocity of X versus Angular Velocity of Y components or
positions of velocity obtained from the MATLAB programme respectively.
71. 63
6.3 Result Comparison of Inverse Displacement Model
Based on the derived mathematical formulation of Forward and Inverse kinematics for
eight degrees of freedom (8-DOF) serial manipulator in chapter 3 and 4, various results
are generated and presented here for checking the validity of the proposed formulation.
In forward kinematics each joint variables (joint distance for prismatic joint and joint
angle for revolute joint) & link lengths is known and determines the position and
orientation of the end-effector (tool point) transformation matrix (T) elements, which is
completely unknown.
Where as in inverse kinematics the position and orientation of the end-effector (tool
point) transformation matrix (T) elements & link lengths is completely known, and found
out the solution for joint variables (joint distance for prismatic joint and joint angle for
revolute joint) in form of equations, which are unknown.
The link lengths L1, L5, L51, L6 and L7 as input data to both Forward and inverse
kinematics calculation, which is fixed and known value as listed in Table 6.1 for
demonstration purpose.
So in this 8-DOF manipulator each joint variable (joint distance for prismatic joint and
joint angle for revolute joint) is assumed and also link lengths values is taken fixed from
the 3-D CAD model.
Table 6.1 Input data for forward kinematics formulation
JOINT
VARIABLES
d1 = 200 mm d2 = 500 mm 3 = 300
d4 = 200 mm
5 = 00
6 = 400
7 = 300
8 = 600
LINK
LENGTHS
L1 = 50 mm L5 = 200 mm L51 = 135.75 mm L6 = 490 mm
L7 = 527 mm
72. 64
Sub Problem 1
In Sub Problem 1 (first section) of inverse kinematics first five links are considered, in
which,
0 0 1 2 3 4
5 1 2 3 4 5T T . T . T . T . T
Where, all five individual matrices are computed when all joint variables and link lengths
are completely known. So the final matrix 0
T5 is determined by the multiplication of all 5
individual matrices. These calculations are done manually and also with the help of Excel
software as shows in Fig.6.28. So finally the fifth link tool point transformation matrix
(T) elements are obtained.
Fig.6.28 Sub Problem 1 (first 5) Matrix Multiplication in Excel sheet
So finally,
0
5
0.866 0 0.5 123.205
0 -1 0 -364.25
T =
0.5 0 -0.866 473.205
0 0 0 1
Where, dx = 123.205mm, dy = -364.25mm, dz = 473.205mm
73. 65
This gives the position and orientation of the end point of the fifth link with reference to
base frame from its transformation matrix (T) elements.
These transformation matrix (T) elements are taken as an input data for the inverse
kinematics formulation and find out the joint variables (d1, d2, 3, d4, 5) for this sub
problem 1.
From the transformation matrix (T) elements, Table 6.2 is obtained which is input data
for inverse kinematic solution of sub problem 1.
Table 6.2 Input data for inverse kinematics solution of Sub problem 1
r11 = 0.866 r12 = 0 r13 = 0.5 dx = 123.205
r21 = 0 r22 = -1 r23 = 0 dy = -364.25
r31 = 0.5 r32 = 0 r33 = -0.866 dz = 473.205
r41 = 0 r42 = 0 r43 = 0 r44 = 1
L1 = 50 mm L5 = 200 mm L51 = 135.75 mm
Now using the above mentioned data into the equations proposed in chapter no. 4 for
inverse solutions, the values of joint variables (d1, d2, 3, d4, 5) for a case are found. The
link lengths L1, L5, L51 as input data and also transformation matrix (T) elements are
input data for them.
(1) Find out d2, 2 51 yd =L - d
Here, L51=135.75 & dy = -364.25 so, d2 = 135.75- (-364.25) = 500mm
(2) Find out the 5,
1 21
5
23
r
θ = tan
r
here, ratio of r21 and r23 is 0
So, 5 = tan-1
(0) = 0
(3) Find out 3,
1 5 31 5 33
3
5 11 5 13
C r -S r
θ = tan
C r -S r
74. 66
Now, C5 = cos (5) = cos (0) = 1 and S5 = sin (5) = sin (0) = 0
So put all the value in 3 equation and find out the value of same,
So,
1 1 131
3
11
r 0.5
θ = tan tan tan (0.5773)
r 0.866
Finally, 3 =300
(4) find out d4,
51 12 5 11 x 1
4
3
L r -L r +d -L
d = -
S
Now, S3 = sin (3) = sin (30) = 0.5, put all the known values in d4 equation and find out
the value of d4,
4
0-(200)(0.866)+123.205-50 100
d = - 200
0.5 0.5
Finally, d4 = 200mm
(5) find out d1, 1 51 32 5 31 z 3 4d = L r -L r +d -C d
Now, C3 = cos (3) = cos (30) = 0.866,
Now, put all the known values in d1 equation and find out the value of d1,
1d = 0-(200)(0.5)+473.205-(0.866)(200) = 200
Finally, d1 = 200mm
Sub Problem 2
In Sub Problem 2 (second section) of inverse kinematics last three links are considered,
in which,
5 5 6 7
8 6 7 8T = T . T . T
Where, all three individual matrices are computed when all joint variables and link
lengths are completely known. So the final matrix 5
T8 is determined by the multiplication
of all 3 individual matrices. These calculations are done manually and also with the help
75. 67
of Excel software as shown in Fig.6.29. So finally the end-effector (tool point)
transformation matrix (T) elements are obtained.
Fig.6.29 Sub Problem 2 (last 3) Matrix Multiplication in Excel sheet
So finally,
5
8
-0.225 -0.8959 0.383 -433.5
0.9417 -0.099 0.3214 871.6
T =
-0.25 0.433 0.866 -131.75
0 0 0 1
Where, px = -433.5mm, py = 871.6mm, pz = -131.75mm
This gives the position and orientation of the end-effector or tool point of the last link
with reference to fifth link end point from its transformation matrix (T) elements.
These transformation matrix (T) elements are taken as an input data for the inverse
kinematics formulation and find out the joint variables (6, 7, 8) for this sub problem 2.
From the transformation matrix (T) elements, Table 6.3 is obtained which is input data
for inverse kinematic solution of sub problem 2.
76. 68
Table 6.3 Input data for inverse kinematics solution of Sub problem 2
a11 = -0.225 a12 = -0.8959 a13 = 0.383 px = -433.5
a21 = 0.9417 a22 = -0.099 a23 = 0.3214 py = 871.6
a31 = -0.25 a32 = 0.433 a33 = 0.866 pz = -131.75
a41 = 0 a42 = 0 a43 = 0 a44 = 1
L6 = 490 mm L7 = 527 mm
Now using the above mentioned data into the equations proposed in chapter no. 4 for
inverse solutions, the values of joint variables (6, 7, 8) for a case are found. The link
lengths L6 and L7 as input data and also transformation matrix (T) elements are input data
for them.
(1) Find out 6,
1 7 11 x
6
y 7 21
L a -p
θ = tan
p -L a
So put all the known value in 6 equation and find out the value of same,
So, 1 1 1
6
(527)(-0.225)-(-433.5) 314.9
θ = tan tan tan 0.839 40
871.6-(527)(0.9417) 375.3
Finally, 6 =400
(2) Find out 7,
2
331
7
33
1-a
θ = tan
a
, here a33=0.866
So put all the known value in 7 equation and find out the value of same,
So,
2
1 1 1
7
1-0.866 0.5
θ = tan tan tan 0.5774 30
0.866 0.866
Finally, 7 =300
77. 69
(3) Find out 8,
1 32
8
31
-a
θ = tan
a
Here, a32 = 0.433 & a31 = -0.25
So put all the known value in 8 equation and find out the value of same,
So, 1 1
8
-0.433
θ = tan tan 1.732 60
-0.25
Finally, 8 =600
After obtaining all values of joint variables (d1, d2, 3, d4, 5, 6, 7, 8) of sub problem 1
and sub problem 2, a close examination that the given values of the joint variables
(d1, d2, 3, d4, 5, 6, 7, 8) as input to the forward kinematics are exactly same as
obtained from the inverse kinematics, which is summarized now in Table 6.4
Table 6.4 Result Comparison of Forward and Inverse kinematics solution
Sr. No. Given Input to the
Forward Kinematics
Result obtained from the
Inverse Kinematics
1 d1 = 200mm d1 = 200mm
2 d2 = 500mm d2 = 500mm
3 3 = 300
3 = 300
4 d4 = 200mm d4 = 200mm
5 5 = 00
5 = 00
6 6 = 400
6 = 400
7 7 = 300
7 = 300
8 8 = 600
8 = 600
79. 71
Conclusion
With the aim of project for developing of full kinematic model for 8 degree of freedom
serial robotic manipulator, an analytical solution has been carried out. The forward
kinematic model has been developed by using D-H scheme. A MATLAB code has been
prepared based on the derived formulation and various displacement plots are generated
for positions of end effector.
Forward differential model has also been carried out and MATLAB code is prepared to
generate the velocity of end effector.
A 3D CAD model has been prepared for the 8 degree of freedom robotic configuration.
The CAD simulation has been carried out and various plots for positions are generated.
The results obtained through CAD simulation are in best agreement with that of the
MATLAB results which is based on analytical formulation. This agreement shows the
correctness of model formulations.
The inverse kinematic solution of 8 axis serial robotic manipulator has been carried out
using an innovative approach suggested by various researchers. The formulation is
validated analytically for a certain case and it found the good agreement with the results.
The proposed work is complete kinematic solution of 8 axis serial robotic manipulator of
selected configuration.
Scope for Future Work
The proposed work can be extended for the higher degrees of freedom robotic arms
which are generally used in aerospace industries and highly precision work industries.
There are few other methods can also be used to solve the inverse problem of this kind of
multi DOF robotic arm.
The proposed work is limited to stationary robot, but the same approach can also be
utilized for mobile robotic arm which is generally known as hybrid robotic manipulators.
80. 72
The dynamic analysis of the proposed model can also be incorporated to know the
various forces and torques exists at various joints which will be useful in the final
structural design of the robotic arm.
81. 73
REFERENCES
PAPERS
1. Xuebing Peng, Jianjun Yuan, Weijun Zhang, Yang Yang, Yuntao Song, “Kinematic
and dynamic analysis of a serial-link robot for inspection process in EAST vacuum
vessel”, Fusion Engineering and Design, Contents lists available at SciVerse Science
Direct, 2012.
2. Shi Zhi Xin, Luo Yu Feng, Hang Lu Bing, Yang Ting Li, “A Simple Method for
Inverse Kinematic Analysis of the General 6R Serial Robot”, Contributed by the
Solar Energy Division of ASME for publication in the JOURNAL OF
MECHANICAL DESIGN. Manuscript received January 23, 2006.
3. Kazem Kazerounian, “On the Numerical Inverse Kinematics of Robotic
Manipulators”, Contributed by the Mechanisms Committee and presented at the
Design Engineering Technical Conference, Columbus, Ohio, October 5-8,1986, of
THE ASME.
4. Manfred L. Husty, Martin Pfurner, Hans-Peter Schrocker, “A new and efficient
algorithm for the inverse kinematics of a general serial 6R manipulator”, Mechanism
And Machine Theory, 2006 Elsevier Ltd., Available at Science direct.
5. Z.M. Bi, W.J. Zhang, I.-M. Chen, S.Y.T. Lang, “Automated generation of the D–H
parameters for configuration design of modular manipulators”, Robotics and
Computer-Integrated Manufacturing 23 (2007) 553–562, 2006 Elsevier Ltd.,
Available at Science direct.
6. Michael W. Hannan and Ian D. Walker, “Kinematics and the Implementation of an
Elephant’s Trunk Manipulator and Other Continuum Style Robots”, Journal of
Robotic Systems 20(2), 45–63 (2003), published online in Wiley Inter Science.
7. Bekir Karlik, Serkan Aydin, “An improved approach to the solution of inverse
kinematics problems for robot manipulators”, 2000 Elsevier Science Ltd.,
Engineering Applications of Artificial Intelligence.
8. Rong Shean Lee, YanHongLin, “Development of universal environment for
constructing 5-axis virtual machine tool based on modified D–H notation and
82. 74
OpenGL”, Robotics and Computer-Integrated Manufacturing 2010, Elsevier Science
Ltd.
9. Jian Yina,Yu Gaob, “Pose Accuracy Calibration of a Serial Five DOF Robot”, 2011
Published by Elsevier Ltd. under responsibility of the organizing committee of 2nd
International Conference on Advances in Energy Engineering (ICAEE), Available at
Science direct.
10. Andrzej J. Cebula a, Paul J. Zsombor-Murray, “Formulation of the workspace
equation for wrist-partitioned spatial manipulators”, Mechanism and Machine Theory
41 (2006), Elsevier Ltd, Available at Science direct.
11. C.R. Rocha, C.P.Tonetto, A.Dias, “A comparison between the Denavit–Hartenberg
and the screw-based methods used in kinematic modeling of robot manipulators”,
Robotics and Computer-Integrated Manufacturing 27 (2011), Elsevier Ltd, Available
at Science direct.
12. Jamshed Iqbal, Raza ul Islam, and Hamza Khan, “Modeling and Analysis of a 6 DOF
Robotic Arm Manipulator”, Canadian Journal on Electrical and Electronics
Engineering Vol. 3, No. 6, July 2012
13. Ivan MILIĆEVIĆ, Radomir SLAVKOVIĆ, Dragan GOLUBOVIĆ, “INDUSTRIAL
ROBOT MODELS DESIGNING AND ANALYSIS WITH APPLICATION OF
MATLAB SOFTWARE”, Machine Design, Faculty of technical sciences, Novi sad,
2007, 47th
Anniversary of the faculty.
14. G.Shanmugasundar, R.Sivaramakrishnan, “Software Development for an Inverse
Kinematics of Seven-Degrees of Freedom Newly Designed Articulated Inspection
Robot”, International Journal of Computer Applications (0975 – 8887) Volume 58–
No.18, November 2012.
15. Tuna Balkan, M. Kemal Ozgoren, M.A. Sahir Arõkan, H. Murat Baykurt, “A
kinematic structure-based classification and compact kinematic equations for six-dof
industrial robotic manipulators”, Mechanism and Machine Theory 36 (2001), Elsevier
Science Ltd.
16. Scott B. Nokleby, Ron P. Podhorodeski, “Identifying multi-DOF-loss velocity
degeneracies in kinematically-redundant manipulators”, Mechanism and Machine
Theory 39 (2004), Elsevier Science Ltd., Available at Science direct.
83. 75
17. Knut Sørby, “Inverse kinematics of five-axis machines near singular configurations”,
International Journal of Machine Tools & Manufacture 47 (2007), Elsevier Science
Ltd., Available at Science directs.
WEBSITES
18. http://news.thomasnet.com/fullstory/8-Axis-Linear-Robotic-Feeder-targets-press-
room-applications-833696.html
19. http://www.staubli.com/en/robotics/6-axis-scara-industrial-robot.html
BOOKS
20. John J Craig, Introduction to Robotics, Mechanics and Control, Pearson Education,
3rd
Edition.
21. R K Mittal, I J Nagrath, ROBOTICS AND CONTROL, Tata McGraw-Hill
Publishing Company Limited, NEW DELHI, Sixth reprint 2007.
22. W. Khalil, E. Dombre, Modeling, Identification and Control of Robots, Kogan Page
Science paper Edition, 2006.
23. Ganesh S Hegde, A Textbook on Industrial Robots, Laxmi Publications, Second
Edition.
24. Randy H. Shih, Parametric Modeling with Pro/ENGINEER WILDFIRE 5.0, Schroff
Development Corporation (SDC) PUBLICATIONS.
25. Stephen J. Chapman, MATLAB Programming for Engineers, Thomson Learning,
part of the Thomson Corporation, Fourth Edition.