16
Chapter Two
Dynamic
Modeling of
SCARA
Robot
2.1
Introduction
Dynamics is a huge field of study devoted to studying the forces required
to cause motion
[
43
].
The dynamic motion of the manipulator arm in a robotic
system is produced by the
torques generated by the actuators. This relationship
betw
een the input torques and the
time rates of change of the robot arm
components configurations, represent the
dynamic
modeling
of the robotic
system
which is concerned with the derivation of the equations of motion of the
manipulator as a function of the fo
rces and moments acting on
.
So, the dynamic
modeling of a robot manipulator consists of finding the mapping between the
forces exerted on the structures and the joint positions, velocities and
accelerations [11,44]. A good model has to satisfy two conflict
ing objectives. It
must include enough detail to represent the real behavior of the robot with
sufficient accuracy, and it should permit an efficient, stable evaluation not only of
the model equations but also of their derivatives that are needed in optimi
zation
.
The
availability of the dynamic model is very useful for mechanical design of the
structure, choice of actuators, determination
of control strategies, and computer
simulation manipulator motion [
45
].
A robot manipulator is basically a positioning
device. To control the
position we must know
the dynamic properties of the manipulator in order to
know how much force to exert on it
to cause it to move: too little force and the
manipulator is slow to react; too much force
and the arm may crash into obje
cts
or oscillate about its desired position.
Deriving the dynamic equations of motion for robots is not a simple task
due to the large
number of degrees of freedom and nonlinearities present in the
system
. This chapter is concerned with the development of
the dynamic model
for two

axis planar and three

axis SCARA robots and their kinematics and
dynamics equations.
17
2.2
SCARA
Robot
Structure and
Coordinate Systems
SCARA
robots are a blend of the articulated and cylindrical robots,
providing the benefits of e
ach. The robot arm unit can move up and down, and at
an angle around the axis of the cylinder just as in a cylindrical robot, but the arm
itself is jointed like a revolute coordinate robot to allow precise and rapid
positioning.
SCARA
robot is one of the m
ost used robots in today's industry. Due
to its characteristics this robot is mainly used for precision, high

speed
and
light
assembly. Common applications are
:
inserting components on printed circuit
board, assembling small electromechanical devices and a
ssembling computer
disk drives
[
4
6
]
.
This type of robot has
a linear vertical axis, two rotary axes that
move the two arm linkages in the horizontal plane, and usually one additional
axis for the wrist rotation. With a dedicated vertical axis, the vertica
l motions are
smoother and quicker than in a coordinated axis motion. Furthermore, the rigidity
of the robot frame is also very high in the vertical axis and the combination of the
rotation motions assures a high compliance in the horizontal plane, facts v
ery
important in an assembly task. The selective compliance, in this case, means that
the robot has
compliance
in the horizontal way but not the vertical
orientation.
SCARA
robot has high repetition
accuracy (
<0.025mm), fast acceleration
and
highest
speed
(2000

5000 mm/s) of movement to meet the demands of short
cycle times in automated assembly
[
4
7
].
A typical SCARA
robot structure is
shown in Fig.(2.1). It
is
compact
and
the
working envelopes are relative
ly
limited (ranges<1000mm). The range of
payloads
that can be supported by this robot is 10

100 kg
.
A
SCARA
manipulator can move up to 10 times faster than articulated robots. These robots
are best
used
for planar type tasks such as pick and place or assembly line
sorting.
Table
(
2.1
)
summarizes data for
typical SCARA robots. Appendix A
presents further engineering specifications.
18
Table
(
2.1
)
Specifications
of SCARA
robot
s
[
48
]
Type
A
dept
One

MV
AdeptThreeXL
Adept
c
obra 800
Reach
800 mm
1067 mm
800 mm
Payload
9 kg
25 kg
2 kg
rated
5.5 kg maximum
Repeatability
0.025 mm
0.025mm
(x,y):
0⸰.mm
⡺⤠(
0.01mm
Th整愠:
0.03°
2.3
Equations
o
f Motion
o
f SCARA Robot
The purpose of a robot manipulator is to position and interface its end

effector with the
working object
.
The equati
ons of motion are important to
consider in the design of robots, as well as in simulation and animation, and in
the design of control algorithms
.
Equation of motion can be described by a set of
Fig.(2.1
a
)
SCA
RA robot
manipulator [41].
Fig.(2.1b) Configuration of SCARA
robot [5].
19
differential or difference equations.
The equation set consist
s of two parts, the
kinematics equations and the
dynamic equation.
Robot arm kinematics deals with
the geometry of
robot arm motion as a function of time (position, velocity, and
acceleration) without
regards to the forces and moments that cause it
.
Append
ix
B gives the relevant direct and inverse kinematics of the SCARA robot.
2.3.
1
Dynamic Equation
s
Dynamics
of robot
is
the
study of motion with regard to forces (the study
of the relationship between forces/torques and motion
)
.
A dynamic analysis of a
m
anipulator is useful for the following purposes
[
49
]
:
1

It determines the joint forces and torques required to produce specified end

effector motions
(the
direct dynamic problem).
2

It produces a mathematical model which simulates the motion of the
man
ipulator under various loading conditions (the inverse dynamic problem)
and/or control schemes.
3

It provides a dynamic model for use in the control of the actual manipulator
.
Dynamic modeling of mechanical structures can be a complex problem. In
robotic
s, more specifically, in manipulators, there are two methodologies used for
dynamic modeling
[
4
2
]
:
a)
Newton

Euler formulation
.
b)
Lagrangian formulation
.
An analytical approach based on the Lagrange's energy function, known as
Lagrange

Euler method (L

E),
results in a dynamic solution that is simple and
systematic. In this
method, the kinetic energy (K) and the potential energy (P) are
expressed in terms of joint
motion trajectories. The resulting differential
equations then provide the forces (torques)
wh
ich drive the robot. Closed form
equations result in a structure that is very useful for
robot control design and also
guarantee a solution
.
The dynamics of n

link manipulators are conveniently described by
Lagrangian dynamics. In the
Lagrangian approach,
the joint variables,
q
= (
q
1
; .
20
..
. .;
q
n
)
T
, serve as a suitable set of generalized
coordinates
.
T
he kinetic energy is
a quadratic function of
the vector
.
q
of the form
[
2
]
:
K
.
q
)
q
(
D
T
.
q
j
.
q
i
.
q
)
q
(
ij
d
n
j
,
i
2
1
2
1
1
……………………………………
(
2.
1
)
where
the n
x
n "inertia matrix"
D(
q
)
is symmetric and positive definite for each
q
R
n
,
the gravitational potential energy P=P(
q
) is independent of
.
q
.
The Euler

Lagrange equations for such a system can be derived as follows. Since
L = K
–
P =
j
.
q
i
.
q
)
q
(
ij
d
n
j
,
i
1
2
1

P (
q)
(2.2)
where
L
is the Lagrangian
t
hen t
he dynamic equations of
an
n

joint robotic
manipulator
described by Lagrange's equations
can be expressed as
[
6
]
:
D
..
q
)
q
(
+
C(q,
.
q
)
.
q
+
G
(q)
+
B
(
.
q
)
=
(
2.
3
)
w
here
q
R
n
is the generalized coordinates
of the robot arm,
.
i
q
is the
first
derivative of
q
i
;
D(q)
R
n
x n
is
the symmetric, bounded, positive

definite inertia
matrix;
vector
C(q,
.
q
)
.
q
R
n
presents the centrifugal and Coriolis
torque;
G
(q
)
R
n
,
B
(
.
q
)
R
n
and
R
n
represent the gravitational torque, friction, and
applied joint torque, respectively
.
D(q)
(
nxn
matrix)
expressed as:
n
k
k
k
T
k
k
k
T
k
q
B
q
D
q
B
q
A
m
q
A
q
D
1
)
(
)
(
)
(
)
(
)
(
)
(
(
2.
4
)
Where
A
k
and
B
k
represent
3
xn
Jacobian subm
atrices,
m
k
is the mass
of link
k
and
D
k
is the
n
x
n
link inertia tensor which depend
s
on
q
.
The
equation
of velocity
coupling vector
C(q
,
.
q
,
)
is:
C(q,
.
q
)
=
j
k
n
k
k
j
i
kj
k
n
k
i
kk
q
q
q
C
q
q
C
.
.
)
(
.
)
(
1
2
1
(
2.
5
)
The
equation of
gravity loading vector
(nx1)
is:
21
)
q
(
A
i
m
g
q
G
3
1
k
n
i
j
j
k
j
k
i
)
(
(
2.
6
)
and the frictional force model for joint k is expressed as:
B
k
(
.
q
)
=
k
v
k
q
b
.
sgn
e
f
b
b
b
q
d
k
s
k
d
k
k
)
(
)
.
(
(2.
7
)
w
here
:
f
=
ε
.
q
k
,
b
v
k
represent the coefficient of viscous friction,
b
d
k
is
the
coefficient of dynamic friction, and
b
s
k
is the coefficient of static friction for joint
k
and
is a small positive parameter
.
Similar to the robot kinematic
s
problem, there are two types of robot
dynamic problems, a
direct (forw
ard) dynamic problem and an inverse dynamic
problem, as shown in Fig
.(2.
2
)
.
The
forward dynamics
problem
determines the
acceleration, given the
applied
forces. These are used to find the motion of a
robot manipulator over a given time
interval, given some
initial conditions. The
importance of the forward dynamic problem
lies in the fact that it allows one to
simulate and predict the system’s actual
behavior; the motion is always the result
of the forces that produce it.
The
inverse dynamics
problem
aims at
determining
Fig
. (
2.
2)
T
he
d
irect and
i
nverse
d
ynamic
p
roblems
[5]
Di牥捴
Dyn慭ic
Joint⁔牡r散to特
偲Pfil攠
q
䥮v敲ee
Dyn慭ic
䙯牣攠⡔orque⤠
偲Pfil攠
Link⁐慲慭整敲e
22
the motor or driving forces that produce a specific motion, as well as
the
reactions that appear at each joint of the robot manipulator. It is necessary to
know the velocities and accelerations to be able to estimate the inertia forces
which
,
together with the weight and all the other known external forces, will
provide the
basis to calculate the required actuating forces
[2,5]
.
From the equation of motion in equation (2.3), the joint accelerations can
be computed as
))
.
q
d(q,
(q)(
τ
D
..
q
1
(2.8)
where
)
.
,
(
q
q
d
=
C(q,
.
q
)
.
q
+
G
(q)
+
B
(
.
q
)
.
This problem is important in computer simulation studies of robot
manipulators.
However, th
e vast majority of robot manipulators are driven by
actuators which supply a
force for the prismatic joint and a torque for the revolute
joint to generate motion in a
prescribed trajectory. The controller must also call
for torques to compensate for inerti
a
when each link is accelerated. Therefore, the
problem of
inverse dynamic is to design
efficient control algorithms to compute
accurate force (torque)
, which causes the
desired motion trajectories
q
.
2.4 Dynamic Model and State Equations of SCARA Robot:
Tasks performed by robots are defined as
gross manipulation and fine
manipulation tasks. Robots, in general, use the first
three axis for gross
manipulation (position control) while the remaining axis orient the tool
during the
fine manipulation (force o
r tactile control).
Robots, in parts assembly
applications,
are to pick a component up with a vertical
movement, move it
horizontally and then downwards vertically for insertion. These can
be achieved
by the four

axis
SCARA
robots
.
The
first three axes of
a
SCARA
robot position
the end

effector, while the fourth axis orients
the tool th
rough a roll motion [6]
.
As there is
no
gearbox, the friction at each joint is very small. The vector
of joint variables is
[
q
1
q
2
d
3
q
4
]
,
where,
j
oint three is a prismat
ic joint, used
to
establish the vertical tool position, and is
completely independent of the
first two
joints. Thus, there is no Coriolis and centrifugal
forces on this joint. However, the
23
mass of the third joint
a
ffects the
motion of the first
two joint
s by acting as a
load
,
while the remaining three joints are revolute.
From reviewing the results of
inverse kinematics
(Appendix B)
, it is clear that the tool roll angle
q
4
has no
effect
on the end

effector position; therefore
q
4
can be ignored in
the
inve
stigation of
the
motion trajectory control. The mass of
the fourth link and the
attached end

effector is
also assumed to be very small in comparison with the
masses of the other links.
The three links are assumed to be thin cylinders of
mass m
1
, m
2
, and m
3
. The vertical
column height d
1
is stationary,
and when joint1
is activated, only rod of length a
1
(mass of
m
1
) rotates.
The
dynamic
model of a
robot is formulated in
equation
(2.
3
) as a second

order system of n differential
equations. To facilitate contr
ol of the arm, it is helpful to reformulate the
equations of motion as a first

order system of 2n equations called state equations.
The key to transforming to the state

space form is the isolation of the acceleration
vector
..
q
in
equat
ion
(2.
3
). This can be easily done because the manipulator
inertia tensor
D
(
q
)
is positive

definite and therefore nonsingular.
Setting equation (2.
8
) in state space form
and using
v
=
q
.
(2.
9
)
gives
a system of 2n non
linear ordinary differential equations which can be
integrated over time with known initial conditions to provide the state
q(t)
and
)
t
(
.
q
.
)
q
(
D
.
)
q
,
q
(
d
)(
q
(
D
v
.
.
v
q
1
0
1
24
2.4.1
Two

Axis
Planar
Robot
T
he
first
two
arms,
which
represent
a planar
device of
the
SCARA configuration
with
two degrees
of freedom
is shown in Fig.(2.
3
)
.
T
he dynamic equation
derived by
using the Euler

Lagrangian method
will be
as follows
[
6
]:
1st
joint
:
1
= [(
3
m
1
+ m
2
)
2
1
a
+ m
2
a
1
a
2
C
2
+
3
m
2
2
2
a
]
..
1
q
+
[
2
m
2
a
1
a
2
C
2
+
3
m
2
2
2
a
]
..
2
q

m
2
a
1
a
2
S
2
(
1
.
q
2
.
q
+
2
2
2
.
q
)
+
b
1
(
1
.
q
)
(2.
1
0
a)
2nd joint:
2
=[
2
m
2
a
1
a
2
C
2
+
3
m
2
2
2
a
]
..
1
q
+
3
m
2
2
2
a
..
2
q
+
2
m
2
a
1
a
2
S
2
2
1
.
q
+
b
2
(
2
.
q
)
(
2.
1
0
b
)
where
a
i
: length of link i
,
C
and
S
represent the cos(q) and sin(q), respectively.
Let the state defines as
x
T
=
[
q
T
,
v
T
]
,
where
v
=
q
.
. Since
n=
2
, the manip
ulator inertia
tensor is a
symmetric
2x2
matrix. From the coefficients of the joint
accelerations
in
equations
(2.
1
0
) the
distinct components of
D(q)
are:
D
1
1
(q)
=
(
3
m
1
+ m
2
)
2
1
a
+
m
2
a
1
a
2
C
2
+
3
m
2
2
2
a
(
2
.
1
1
a
)
D
12
(q)
=
2
m
2
a
1
a
2
C
2
+
3
m
2
2
2
a
(
2.
1
1
b
)
Because
D(q)
i
s symmetric
then
D
12
(q)
=
D
21
(q)
(2.11c)
D
2
2
(q)
=
3
m
2
2
2
a
(
2.
1
1
d
)
(q)
=
D
1
1
D
22

D
12
D
21
(
2.
1
2
)
1
.
q
=
v
1
,
2
.
q
=
v
2
(
2.
13
a
)
1
.
v
=
)
(
q
1
[
D
22
(q)
{
1
+a
1
a
2
S
2
m
2
(
v
1
v
2
+
2
1
v
2
2
)

b
1
(
1
.
q
)
}

D
12
(q)
{
2

2
2
m
a
1
a
2
S
2
v
1
2

b
2
(
2
.
q
)
}
]
(2.13b)
y
a
1
q
2
a
2
x
m
2
q
1
m
1
Fig.(2.
3
) Model of
t
wo

a
xis
planar r
obot
.
25
2
.
v
=
)
(
q
1
[

D
2
1
(q)
{
1
+a
1
a
2
S
2
m
2
(
v
1
v
2
+
2
1
v
2
2
)

b
1
(
1
.
q
)
}
+
D
1
1
(q)
{
2

2
m
2
a
1
a
2
S
2
v
1
2

b
2
(
2
.
q
)}
]
(
2.
13
c
)
The kinematic output equation of the t
wo

axis
planar
robot is:
y =
[
a
1
C
1
+a
2
C
12
,
a
1
S
1
+a
2
S
12
,
0
, 0, 0, 1]
T
where
C
12
a
nd
S
12
represent cos(
q
1
+
q
2
) and sin(
q
1
+q
2
), respectively.
2.4.2
Three Axis SCARA Robot
T
he dynamic
model
of the three axis
SCARA
robot is formulated using the
Lagrange

Euler
[6]
:
1st
joint
:
1
=
[
(
3
m
1
+ m
2
+ m
3
)
2
1
a
+ (m
2
+ 2m
3
)a
1
a
2
C
2
+ (
3
m
2
+m
3
)
2
2
a
]
..
1
q

[
(
2
m
2
+ m
3
)a
1
a
2
C
2
+ (
3
m
2
+m
3
)
2
2
a
]
..
2
q
+b
1
(
1
.
q
)

a
1
a
2
S
2
[(m
2
+ 2m
3
)
1
.
q
2
.
q

(
2
m
2
+ m
3
)
2
2
.
q
]
(
2.
14
a
)
Since axis
1
is aligned with the gravitational fiel
d, the gravity term on joint one is
zero.
2nd joint:
2
=

[(
2
m
2
+ m
3
)a
1
a
2
C
2
+ (
3
m
2
+m
3
)
2
2
a
]
..
1
q
+ (
3
m
2
+m
3
)
2
2
a
..
2
q
+
(
2
m
2
+ m
3
) a
1
a
2
S
2
2
1
.
q
+b
2
(
2
.
q
)
(
2.
14
b
)
Again, there is no gravitational loading on joint two.
3rd joint:
3
=
m
3
..
q
3

g
0
m
3
+b
3
(
3
.
q
)
(
2.
14
c
)
Eq
uations
(
2.
14
) are referred
to as the inverse dynamic equations of the
three

axis
SCARA
robot. One needs to know the resulting mo
tion trajectories:
q
,
q
.
,
q
..
before one
can calculate the joint torques. These equations are time varying,
nonlinear, and
coupled differential equations. The trajectory problem of this robot
26
manipulator revolves
around finding the joint torques
i
(t) such
that the joint
angles
q
i
(t) track the desired
trajectories
q
id
(t)
.
Let the state
s be
define
d
as
x
T
=
[
q
T
,
v
T
]
,
where
v
=
.
q
. Since
n=3
, the
manipulator inertia tensor is a 3*3 symmetric matrix.
From the coefficients of the
joint acceler
ations in
equations
(2.
14
) the
D(q)
has the following special block
diagonal structure:
D(q)
=
D
11
D
12
0
D
21
D
22
0
(
2.
15
)
0
0
m
3
D(q)
is symmetric with
D
21
(q)
=
D
12
(q)
, and
the remaining non
constant terms of
D(q)
are:
D
1
1
(q)
=
(
3
m
1
+ m
2
+ m
3
)
2
1
a
+ (m
2
+ 2m
3
)a
1
a
2
C
2
+ (
3
m
2
+m
3
)
2
2
a
(
2.
16
a
)
D
12
(q)
=

[(
2
m
2
+ m
3
)a
1
a
2
C
2
+ (
3
m
2
+m
3
)
2
2
a
]
(
2.
16
b
)
D
2
2
(q)
=
(
3
m
2
+m
3
)
2
2
a
(
2.16c)
(q)
=
D
1
1
D
22

D
12
D
12
(
2.
17
)
1
.
q
=
v
1
,
2
.
q
=
v
2
,
3
.
q
=
v
3
(
2.
18
a
)
1
.
v
=
)
(
q
1
[
D
22
(q) {
1
+a
1
a
2
S
2
[(m
2
+2m
3
)v
1
v
2

(
2
m
2
+ m
3
)v
2
2
]

b
1
(
1
.
q
)
}

D
12
(q)
[
2

(
2
m
2
+ m
3
)
a
1
a
2
S
2
v
1
2
]

b
2
(
2
.
q
)}
]
(
2.
18
b
)
2
.
v
=
)
(
q
1
[

D
2
1
(q) {
1
+a
1
a
2
S
2
[(m
2
+2m
3
)v
1
v
2

(
2
m
2
+ m
3
)v
2
2
]

b
1
(
1
.
q
)
}
+
D
1
1
(q)
[
2

(
2
m
2
+ m
3
) a
1
a
2
S
2
v
1
2
]

b
2
(
2
.
q
)}
]
(
2.
18
c
)
3
3
0
3
3
m
.
)
q
(
b
m
g
.
3
3
v
(
2.
18
d
)
27
The
kinematic output equation of the
three

axis
S
CARA
robot is:
y =
[
a
1
C
1
+a
2
C
12
,
a
1
S
1
+a
2
S
12
,
d
1

q
3
,
0,
0,

1
]
T
.
2.5
Model
Linearization
of
SCARA
Robot
For small value
s of
q
1
and
q
2
,
e
quation
(2.
14
) can be linearized
around an
equilibrium point
and the linearized model can be given by
[
5
0
]
:
For
joint
one
1
= [(
3
m
1
+ m
2
+ m
3
)
2
1
a
+ (m
2
+ 2m
3
)a
1
a
2
C
2
+ (
3
m
2
+m
3
)
2
2
a
]
..
1
q

[(
2
m
2
+ m
3
)a
1
a
2
C
2
+ (
3
m
2
+m
3
)
2
2
a
]
..
2
q
+b
1
(
1
.
q
)
(
2.
19
a
)
For joint
two
2
=

[(
2
m
2
+ m
3
)a
1
a
2
C
2
+(
3
m
2
+m
3
)
2
2
a
]
..
1
q
+
[
(
3
m
2
+m
3
)
2
2
a
]
..
2
q
+b
2
(
2
.
q
)
(
2
.
19
b
)
Expressing
equations
(2.
19
) in matrix form yields:
1
=
A
11
A
12
..
1
q
+
b
1
0
.
1
q
(
2.
2
0
)
2
A
21
A
2
2
..
2
q
0
b
2
.
2
q
where
A
11
=
(
3
m
1
+ m
2
+ m
3
)
2
1
a
+ (m
2
+ 2m
3
)a
1
a
2
C
2
+ (
3
m
2
+m
3
)
2
2
a
(2. 21a)
A
12
=

(
2
m
2
+ m
3
)a
1
a
2
C
2
+ (
3
m
2
+m
3
)
2
2
a
(2. 21b)
A
12
=
A
21
(2. 21c)
A
22
=
(
3
m
2
+m
3
)
2
2
a
(2. 21d)
Equation
(2.
2
0
) further yield
s

A
11

A
12
..
1
q
=
b
1
0
.
1
q
+

1
0
1
(2.
2
2
)

A
12

A
22
..
2
q
0
b
2
.
2
q
0

1
2
28
where
q
1
and
q
2
are taken as the linearized parts.
Le
t
q
1
=
x
1
,
1
.
q
= x
2
1
.
x
= x
2
,
Let
q
2
=
x
3
,
2
.
q
= x
4
2
.
x
= x
4
(
2.
2
3
)
From
equations
(
2.
19
) and
(2.
2
0
) the following relationship is obtained:
1
0
0
0
.
1
x
=
0
1
0
0
x
1
0

A
11
0

A
12
.
2
x
0
b
1
0
0
x
2
0
0
1
0
.
3
x
0
0
0
1
x
3
0

A
12
0

A
22
.
4
x
0
0
0
b
2
x
4
(
2.
2
4
)
0
0
1
+

1
0
0
0
2
0

1
1 0 0 0
C
=
0 0
1
0
From
equation
(2.
2
4
) the state space realization is given by
.
x
= [
M

1
]
[
A
1
]
x
+
[
M

1
][
B
1
]
u
(
2.
2
5
a
)
Y=Cx
(2.2
5
b)
A =
[
M

1
][
A
1
]
(
2.
2
5
c
)
B
=
[
M

1
][
B
1
]
(
2.
2
5
d
)
B
1
u
M
A
1
Comments 0
Log in to post a comment