Kinematics, Dynamics and Evaluation of Energy Consumption For ABB IRB-140 Serial Robots in The Tracking of A Path
Kinematics, Dynamics and Evaluation of Energy Consumption For ABB IRB-140 Serial Robots in The Tracking of A Path
Abstract—In this paper, the ABB IRB-140 manipulator is through advanced algorithms of words recognition [4]; model
studied, in which its kinematics (forward - inverse), differential based control techniques, in which Gain Scheduling Robust
kinematics (forward - inverse) and dynamics (torques in each Control is used and implemented for a similar robot like this,
joint) are calculated. The numerical matrix operations were
solved using MATLAB and the tracking of paths was simulated in order to tackle main issues regarding control of flexible
using SOLID EDGE, taking into account the detection of col- robots, including flexibility compensation and handling of
lisions. Additionally, mass centers and inertia tensors of each parametric uncertainty, unmodeled dynamics and disturbances
link required in dynamics equations of the manipulator were [5]. When analyzing the previous applications, the motivation
identified. Through lagrangian formulation, the needed energy of calculating its kinematics and dynamics arises. It is possible
for the path tracking designated was calculated. By placing
this path in different positions inside its workspace, the minor to take advantage from the fiability and safety that this robot
energy consumption for tracking was determined. The main presents, by doing the programming of different paths, making
acknowledgement of this work are the performed equations, simulations of its movement and observing how the rotary
which allow to know angles, velocities, accelerations and torque angles, angular speeds, angular accelerations and torques re-
values generated in each joint; this information is fundamental spond in its joints; this, with the aim on analyzing which
for the correct execution of a specified task.
Keywords—Kinematics and Dynamics Of Serial Robots, Indus- will be the workspace volume where the robot works with the
trial Robot ABB IRB-140, Robotics, Manipulator Robots. greater skill and spends less energy. This robot is fairly useful
for many applications and handles a considerable quantity of
I. I NTRODUCTION versions, which makes it suitable for places such as corrosive
The development of researches in manipulator robots, has environments or foundry environments, but without varying its
been increasing with the objective of optimizing their capaci- basic configuration of 6 rotational axes.
ties, carrying out iterating activities with the velocity, precision
II. T ECHNICAL S PECIFICATIONS OF ABB IRB-140 ROBOT
and efficiency required for whichever automatic process. The
companies that build robots, know that its market on these All technical specifications, documents, CAD models and
devices depends on their designs and innovations, so that videos of ABB IRB-140 robot, are shown well detailed on
they can be able to work in any environment, carrying out [6]. Only the parameters from below that are useful for the
complex tasks with greater energetic efficiency. The use of analysis of kinematics and dynamics were taken into account.
new technologies, allow manipulator robots to work in unusual This robot has a capacity load of 6 Kg and a scope of 810
applications; for instance, the packaging of antibiotics free mm; it also has the possibility of backward dub, as shown in
from contamination in pharmaceutical industries [1]. The ABB Fig. 2.
IRB-140 robot is a compact industrial manipulator with 6
degrees of freedom (DOF); due to robust design, it can be
mounted in the floor, in a roof of inverted form or in a
wall at any angle. Furthermore, it has an integrated cabling,
making it fairly flexible and allowing it to be adequate and
easy to integrate into whichever robotic process. Some of
the specialized works in which this robot was used are:
the assisted robot system of measurement of 3-D shape for
transparent glass created on [2]; high precision drilling opera-
tions, taking advantage of the 6 DOF of ABB IRB-140 robot
arm [3]; adaptive multimodal applications wherein this robot
is provided with artificial vision and controlled by speech, Fig. 1. CAD model of ABB IRB-140 robot.
Fig. 2. Workspace of ABB IRB-140 robot.
m0 = 12kg, m1 = 35kg, m2 = 25kg, B. Jacobian Submatrices, Inertia Matrices and Torque Equa-
m3 = 18kg, m4 = 6.5kg, m5 = 1.5kg. tions
First, the position vectors j−1 p∗ci are calculated from the
xc1 64.91 origin of the link frame j − 1 to the mass center of link i,
1
pc1 = yc1 = −130.89 , expressed in the base reference frame as follows:
zc1 29.13
0 ∗
pc1 = 0 p1 + 0 R1 1 pc1 ,
xc2 −9.73
1 ∗
pc2 = 0 R1 1 p2 + 0 R1 1 R2 2 pc2 ,
2
pc2 = yc2 = −161.71 ,
0 ∗
pc2 = 0 p2 + 0 R1 1 R2 2 pc2 ,
zc2 92.43
(26)
2 ∗
pc3 = 0 R1 1 R2 2 p3 + 0 R1 1 R2 2 R3 3 pc3 ,
xc3 −0.89
3
pc3 = yc3 = −8.67 , 1 ∗
(28)
pc3 = 0 R1 1 p3 + 0 R1 1 R2 2 R3 3 pc3 ,
zc3 −136.49
0 ∗
pc3 = 0 p3 + 0 R1 1 R2 2 R3 3 pc3 ,
xc4 −40.77
3 ∗
pc4 = 0 R1 1 R2 2 R3 3 p4 + 0 R1 1 R2 2 R3 3 R4 4 pc4 ,
4
pc4 = yc4 = 0 ,
2 ∗
pc4 = 0 R1 1 R2 2 p4 + 0 R1 1 R2 2 R3 3 R4 4 pc4 ,
zc4 0
1 ∗
0 1 0
R1 1 R2 2 R3 3 R4 4 pc4 ,
pc4 = R1 p4 + | | | |
0 ∗
pc4 = 0 p4 + 0 R1 1 R2 2 R3 3 R4 4 pc4 ,
Jv5 = z0 ×0 p∗
c5 | z1 ×1 p∗
c5 | z2 ×2 p∗
c5 | z3 ×3 p∗
c5 | z4 ×4 p∗
c5
,
4 ∗ | | | |
= 0 R1 1 R2 2 R3 3 R4 4 p5 + 0 R1 1 R2 2 R3 3 R4 4 R5 5 pc5 ,
pc5
3 ∗ | | | |
= 0 R1 1 R2 2 R3 3 p5 + 0 R1 1 R2 2 R3 3 R4 4 R5 5 pc5 ,
pc5
Jw5 = z0 | z1 | z2 | z3 | z4 .
2 ∗
= 0 R1 1 R2 2 p5 + 0 R1 1 R2 2 R3 3 R4 4 R5 5 pc5 ,
pc5 | | | |
1 ∗
0 1 0 1 2 3 4 5
pc5 = R1 p5 + R1 R2 R3 R4 R5 pc5 , Jvi y Jwi can be written in general form, as:
0 ∗
= 0 p5 + 0 R1 1 R2 2 R3 3 R4 4 R5 5 pc5 .
pc5 1 2 i
Jvi = Jvi , Jvi , . . . , Jvi , 0, 0, . . . , 0 , (32)
Given that, 1
Jwi = Jwi 2
, Jwi , . . . , Jwii
, 0, 0, . . . , 0 . (33)
j
j j+1
Aj+2 . . . k−1 Ak ,
Ak = Aj+1
The following matrices Ii correspond to the inertia tensors
of each link over their mass centers and are expressed in the
j j (29)
Rk pk base reference frame [14]:
=
.
T
I1 = 0 R1 1 I1 0 R1 ,
0 0 0 1
T
I2 = 0 R1 1 R2 2 I2 0 R1 1 R2 ,
After this, the unit vectors that point to rotation axes zj−1 of
T
each joint were calculated, and expressed in the base reference I3 = 0 R1 1 R2 2 R3 3 I3 0 R1 1 R2 2 R3 ,
frame, just as shown below: T
I4 = 0 R1 1 R2 2 R3 3 R4 4 I4 0 R1 1 R2 2 R3 3 R4 ,
z0 = 0 0 1 , T
I5 = 0 R1 1 R2 2 R3 3 R4 4 R5 5 I5 0 R1 1 R2 2 R3 3 R4 4 R5 .
z1 = 0 R1 z0 ,
(34)
z2 = 0 R1 1 R2 z0 ,
(30)
0 1 2 In general, the forces that act on a moving robot arm, are
z3 = R1 R2 R3 z0 , expressed in a vector that is denominated Generalized Forces.
T
z4 = 0 R1 1 R2 2 R3 3 R4 z0 .
This vector of generalized forces Q = [Q1 , Q2 , . . . , Qn ] , is
defined as follows:
The following jacobian submatrices Jvi and Jwi , denote the
partial rate of change of the linear velocities of mass centers Q = τ + J T F e − fr . (35)
and angular velocities of each link [13]: T
Wherein τ = [τ1 , τ2 , . . . , τn ] is the n-dimensional torques
vector of each joint generated by the actuators. Fe = feT , nTe
| 0 0 0 0
Jv1 = z0 ×0 p∗c1 | 0 0 0 0 , is a 6-dimensional vector of forces and resultant momen-
| 0 0 0 0 tum, exercised in the end effector by a external load. And
| 0 0 0 0
fr = [b1 q̇1 , b2 q̇2 , . . . , bn q̇n ] are torques or friction forces in the
Jw1 = z0 | 0 0 0 0 , joints. The minus sign indicates that this friction quantities are
| 0 0 0 0 always opposite to the velocities of joints.
In the dynamic analysis of this manipulator, the friction on
| | 0 0 0
its joints was not taken into account, nor were the external
Jv2 = z0 ×0 p∗c2 | z1 ×1 p∗c2 | 0 0 0 ,
forces applied or the dynamics of the end effector. Therefore,
| | 0 0 0
the vector of generalized forces is equivalent to the vector of
| | 0 0 0 generated torques in the joints of each link in Fig. 6, (Q = τ ).
Jw2 = z0 | z1 | 0 0 0 , For the tracking of a path, the vector of generalized forces
| | 0 0 0 was considered as shown below:
(31)
| | | 0 0 Xn
Jv3 = z0 ×0 p∗c3 | z1 ×1 p∗c3 | z2 ×2 p∗c3 | 0 0 , Mij q̈j + Vi + Gi = Qi = τi para i = 1, 2, . . . , n. (36)
| | | 0 0 j=1
| | | 0 0 Where,
Jw3 = z0 | z1 | z2 | 0 0 , n
X
| | | 0 0 T T
M= Jvi mi Jvi + Jwi Ii Jwi , (37)
| | | | 0 i=1
n Xn
Jv4 = z0 ×0 p∗c4 | z1 ×1 p∗c4 | z2 ×2 p∗c4 | z3 ×3 p∗c4 | 0 , X ∂Mij 1 ∂Mjk
Vi = − q̇j q̇k , (38)
| | | | 0 ∂qk 2 ∂qi
j=1 k=1
| | | | 0 Xn
Jw4 = z0 | z1 | z2 | z3 | 0 , Gi = − mj gT Jvj
i
. (39)
| | | | 0 j=1
The first term in the Eq. 36, stands for the inertial forces;
the second term, represents the centrifugal and coriolis forces;
and the third term, gives the gravitational forces. This equation
can be written in the following way:
M q̈ + V + G = Q. (40)
T T
Where V = [V1 , V2 , . . . , Vn ] , G = [G1 , G2 , . . . , Gn ] and
T
Q = [Q1 , Q2 , . . . , Qn ] . The inertia matrix of manipulator
M , is symmetric and positive definite, and therefore is always
invertible [15].
VI. PATH T RACKING Fig. 8. Wrist position in the path tracking.
A. Description of Path
The objective in the path tracking, is to apply the equations its joints will be different in the tracking of each one of them,
and expressions of the previous sections of kinematics and and the energy will depend on the movement of each link and
dynamics, in order to calculate positions, velocities, acceler- will be obtained by the calculus of the previous variables.
ations and resultant torques on the joints of the manipulator,
in function of an equivalent time to the tracking velocity of
the arm. After this, the consumed energy for the manipulator
is estimated from the previous data. The path of Fig. 7 was
programmed in MATLAB, dividing it in a significant set of
points with the position and orientation that the end effector
would have in each one of them.
Angle [rad]
Angle [rad]
0
0
−0.5
−0.5
−1 −0.5
−1
50 100 150 200 250 50 100 150 200 250 0 50 100 150 200 250
Time [sec] Time [sec] Time [sec]
Angle [rad]
Angle [rad]
Angle [rad]
1
0 1 0
−1
0.5 −2
−2
−3 0
0 50 100 150 200 250 300 50 100 150 200 250 50 100 150 200 250
Time [sec] Time [sec] Time [sec]
Speed [rad/s]
Speed [rad/s]
−0.05
−0.1 0 0
−0.15
−0.2 −0.2 −0.2
−0.25
−0.4
0 50 100 150 200 250 50 100 150 200 250 0 50 100 150 200 250 300
Time [sec] Time [sec] Time [sec]
0.1 2
Speed [rad/s]
0
Speed [rad/s]
Speed [rad/s]
0
−1 1
−0.1
−2 0
−0.2
−3 0 50 100 150 200 250
0 50 100 150 200 250 300 50 100 150 200 250
Time [sec]
Time [sec] Time [sec]
400 100
1
Torque [N*m]
Torque [N*m]
Torque [N*m]
300
50
0.5 200
0
100
0
0 −50
50 100 150 200 250 50 100 150 200 250 50 100 150 200 250
Time [sec] Time [sec] Time [sec]
Joint #4 Joint #5
5
0.5
Torque [N*m]
Torque [N*m]
0 0
1 Path 1 (400mm)
Angle [rad]
Path 2 (450mm)
−0.5 0 Path 3 (500mm)
−5 Path 4 (550mm)
50 100 150 200 250 50 100 150 200 250 −1 Path 5 (600mm)
Time [sec] Time [sec] 50100
Path 6 15020025
(650mm)
Time [sec]
Energy [J]
Energy [J]
0.1 150
−1000 100
0.05
50
−1500
0 0
50 100 150 200 250 50 100 150 200 250 0 50 100 150 200 250
Time [sec] Time [sec] Time [sec]
Joint #4 Joint #5
10 0.2
0
Energy [J]
Energy [J]
5
−0.2
0 1 Path 1 (400mm)
Angle [rad]
−0.4 Path 2 (450mm)
0 Path 3 (500mm)
−0.6 Path 4 (550mm)
−5
50 100 150 200 250 50 100 150 200 250 −1 Path 5 (600mm)
Time [sec] Time [sec] 50100
Path 6 15020025
(650mm)
Time [sec]
C. Energy Consumptions in the Tracking For a real application of a serial or parallel robot, the
physical parameters of these systems should be identified in
Figures 10, 11 and 12 show the simulations of angular
the best possible way. The data of mass, inertia matrices, mass
position, angular velocities and torques generated by the
centers, friction forces, etc, delivered for any software, implies
tracking of paths as shown in Fig. 9. The Fig. 13 shows the
an error percentage that must be considered in the calculus.
consumed energy for each link, taking the angular velocities
and torques from simulations, and with them, carrying out the MATLAB is an adequate tool for the development of
calculus of Eq. 41. The negative values reached in the graphics algorithms, evaluation and validation of models and simulation
of consumed energy, can be physically explained as the use of system responses, but the computational time for calculus
of potential energy in the movement of any link that displaces of algebraic operations in robotics is not very efficient and,
its mass center to a minor height, from the base reference in some cases, it results heavy and slow for the simulation of
frame. It could be argued that the robot earns energy when path tracking with a high number of points.
the angular velocity for any of its joints is in opposite sense
to its generated torque, and vice versa. R EFERENCES
TABLE IV C ONSUMED E NERGY OF ABB IRB-140 ROBOT [1] Browne Maureen. Robots at work with medicines and adhesives.
Joint i Path 1 [J] Path 2 [J] Path 3 [J] Path 4 [J] Path 5 [J] Path 6 [J] Production Engineer, 1985.
1 0.1790 0.1405 0.0890 0.0977 0.1046 0.1073 [2] Jing Xu, Ning Xi, Chi Zhang, Quan Shi, and J. Gregory. A robot-assisted
2 -0.2067 -0.2144 -0.2831 -0.2608 -0.1802 -0.2497 back-imaging measurement system for transparent glass. IEEE/ASME
3 59.4269 58.3156 73.7766 82.3076 79.7733 97.0575 Transactions on Mechatronics, 2012.
4 6.0567 7.2643 10.0797 8.8702 9.5061 9.0829 [3] Andrea M. Zanchettin, Paolo Rocco, Anders Robertsson, and Rolf
5 0.0073 -0.0870 -0.1981 -0.3343 -0.3374 -0.3695
Johansson. Exploiting task redundancy in industrial manipulators during
drilling operations. In IEEE International Conference on Robotics and
Total: 65.4632 65.4190 83.4641 90.6804 88.8664 105.6285
Automation, 2011.
In Table IV it can be clearly observed that the manipulator [4] M. Gnjatovic, J. Tasevski, M. Nikolic, D. Miskovic, B. Borovac, and
V. Delic. Adaptive multimodal interaction with industrial robot. In
spends less energy when path No. 2 is tracked to a frontal Intelligent Systems and Informatics (SISY), 2012 IEEE 10th Jubilee
distance to 450 mm from the base reference frame. International Symposium on, pages 329–333, 2012.
[5] Bin Niu and Hui Zhang. Model based control of industrial robot and
implementation of its gain scheduling robust control. In Robotics and
VII. C ONCLUSION Biomimetics (ROBIO), 2011 IEEE International Conference on, pages
2156–2162, 2011.
The forward and inverse kinematics analysis through the [6] ABB Products. ABB IRB 140 - Robots (Robotics). www.abb.com/
successive screw displacement method, results convenient and product/seitp327/b0168cc2e1ea9fd5c125717900223403.aspx.
formal. This method is understandable and simple algorithms [7] Lung-Wen Tsai. Robot Analysis - The Mechanics Of Serial And Parallel
Manipulators, pages 91–109. Wiley-Interscience, Toronto, Canada, First
are obtained, making its implementation easier. The shift of the edition, 1999.
base reference frame to any instantaneous frame located in the [8] A. Barrientos. Fundamentos De Robótica, pages 94–103. Mc. Graw
frames of links 3 or 4, results fairly practical when the jacobian Hill, Madrid, España, Second edition, 2007.
[9] K. H. Hunt. Special configurations of robot-arms via screw theory.
matrix is calculated; this because the equations are simplified, Robotica, 4:171–179, 6 1986.
and its algebraic development becomes less tedious than other [10] K. H. Hunt. Special configurations of robot-arms via screw theory.
analysis methods. Due to the 6 DOF that the manipulator has, Robotica, 5:17–22, 0 1987.
the matrix operations result very large and it is complicated [11] Reza N. Jazar. Theory Of Applied Robotics, pages 233–242. Springer,
Melbourne, Victoria, Australia, Second edition, 2010.
to realize a verification of dynamical equations with respect [12] P. Corke. Robotics, Vision And Control - Fundamental Algorithms In
to obtained results on simulations. MATLAB, pages 182–183. Springer, Brisbane, Australia, 2011.
[13] L. Sciavicco and B. Siciliano. Modeling And Control of Robot Manipu- And Control, pages 251–253. Wiley, United States Naval Academy, First
lators, pages 85–89. Springer, Via della Vasca Navale 79, Rome, Italy, edition, 2005.
Second edition, 2005. [15] Anibal Ollero. Robotica, Manipuladores y Robots Móviles, page 119.
[14] Mark W. Spong, Seth Hutchinson, and M. Vidyasagar. Robot Modeling Marcombo, Barcelona, España, First edition, 2001.