Finite difference and finite element simulation of flexible manipulators
5.3 The FD method
To solve the PDE in equation (5.7) and thus develop a suitable simulation environment characterising the behaviour of the system, the FD method can be used. Thus, a set of equivalent difference equations defined by the central FD quotients of the FD method are obtained by discretising the PDE in equation (5.7) with its associated boundary and initial conditions in equations (5.8) and (5.9). The process involves dividing the manipulator into n sections each of lengthx and considering the deflection of each section at sample timest, see Figure 5.2. In this manner, a solution of the PDE is obtained by generating the central difference formulae for the partial derivative terms of the response y(x, t) of the manipulator at points x = ix, t = jt (Azad, 1994;
Burden and Faires, 1989; Lapidus, 1982):
∂2y(x, t)
∂t2 = yi, j+1− 2yi, j+ yi, j−1
t2
∂2y(x, t)
∂x2 = yi+1, j− 2yi, j+ yi−1, j
x2
∂3y(x, t)
∂x3 = yi+2, j+ 2yi+1, j+ 2yi−1, j− yi−2, j
2x3
∂4y(x, t)
∂x4 = yi+2, j− 4yi+1, j+ 6yi, j− 4yi−1, j+ yi−2, j
x4
∂3y(x, t)
∂t2∂x = yi, j+1− 2yi, j+ yi, j−1− yi−1, j+1+ 2yi−1, j− yi−1, j−1
xt2
∂3y(x, t)
∂x2∂t = yi+1, j− 2yi, j+ yi−1, j− yi+1, j−1+ 2yi, j−1− yi−1, j−1
tx2 (5.10)
104 Flexible robot manipulators
j = m
j = 0 t = 0
(Hub) x = 0 x = L
i = n
i− 2 i+ 1 (End-point)
Beam segments (Δx) i+ 2 i− 1 i
i = 0 j −1 j +1 j
Discrete time (Δt)
Figure 5.2 Finite difference discretisation in time and space variables
where yi,j represents the response y(x, t) at x = ix and t = jt or y(xi, tj). Note that, a time-space discretisation is adopted in the evaluation of the response of the manipulator.
5.3.1 Development of the simulation algorithm
A solution of the PDE in equation (5.7) can be obtained by substituting for∂2y/∂t2,
∂4y/∂x4and∂3y/∂x2∂t from equation (5.10) and simplifying to yield
xEI4
yi+2,j− 4yi+1,j+ 6yi,j− 4yi−1,j+ yi−2,j +tρ2
yi,j+1− 2yi,j+ yi,j−1
−xD2St
yi+1,j− 2yi,j+ yi−1,j− yi+1,j−1+ 2yi,j−1− yi−1,j−1
= 0 or
yi,j+1= −c
yi+2,j+ yi−2,j + b
yi+1,j+ yi−1,j
+ ayi,j− yi,j−1 + d
yi+1,j− 2yi,j+ yi−1,j− yi+1,j−1+ 2yi,j−1− yi−1,j−1
(5.11) where a= 2 −6EIρxt42, b=4EIρxt42, c= EIρxt42, d= DρxSt2.
Equation (5.11) gives the displacement of section i of the manipulator at time step j+ 1. It follows from this equation that, to obtain the displacements yn−1, j+1
and yn,j+1, the displacements of the fictitious points yn+2, j, yn+1, j, and yn+1, j−1are required. These can be obtained using the boundary conditions related to the dynamic equation of the flexible manipulator. The discrete form of the corresponding boundary
conditions, obtained in similar manner as above, are
Note that the torque is applied at the hub of the flexible manipulator. Thus,τ (i, j) = 0 for i≥ 1. Using equations (5.11) and (5.12), the displacement y1,j+1can be obtained as
y1,j+1= −c
y3,j+ y−1,j
+by2,j+ay1,j−y1,j−1+d
y2,j− 2y1,j− y2,j−1+ 2y1,j−1 (5.16) Substituting for y−1,jfrom equation (5.13) into equation (5.16) and simplifying yields y1,j+1= K1y1,j+ K2y2,j+ K3y3,j+ K4y1,j−1+ K5y2,j−1+ K6τ (j) (5.17)
Using equation (5.11) for i= n − 1, yields the displacement yn−1,j−1as yn−1, j+1 = −c Similarly, using equation (5.11) for i= n, yields the displacement yn, j+1as
yn,j+1= −c
106 Flexible robot manipulators
The fictitious displacements yn+1,j and yn+2,j, appearing in equations (5.18) and (5.19), can be obtained using the boundary conditions in equations (5.14) and (5.15).
yn+1,j−1 can easily be obtained by shifting yn+1,j from time step j to time step j− 1. Substituting for yn+1,j from equation (5.15) into equation (5.18) yields the displacement yn−1,j+1as
yn−1,j+1= K7yn−3,j+ K8yn−2,j+ K9yn−1,j+ K10yn,j+ K11yn−2,j−1
+ K12yn−1,j−1+ K13yn,j−1 (5.20)
where K7= −c, K8= b + d, K9= a + c − 2d, K10= − (2c − b − d), K11= −d, K12= − (1 − 2d) and K13= −d.
Similarly, substituting for yn+2,jand yn+1,jfrom equations (5.14) and (5.15) into equation (5.19), and simplifying yields the displacement yn,j+1as
yn,j+1= K14yn−2,j+ K15yn−1,j+ K16yn,j+ K17yn,j−1 (5.21) where
K14= −2ct2EI
t2EI+ 2cx3MP K15= 4ct2EI
t2EI+ 2cx3MP
K16= t2EI
t2EI+ 2cx3MP
a+ 2b − 4c +4cx3MP
t2EI
K17= −t2EI
t2EI+ 2cx3MP
2cx3MP
t2EI + 1
Equations (5.11), (5.17), (5.20) and (5.21) represent the dynamic equation of the manipulator for all the grid points (stations) at specified instants of time t in the presence of hub inertia and payload.
5.3.4 Matrix formulation
Using matrix notation, equations (5.11), (5.17), (5.20) and (5.21) can be written in a compact form as
Yi,j+1= AYi,j+ BYi,j−1+ CF (5.22)
where Yi,j+1is the displacement of grid points i = 1, 2, . . . , n of the manipulator at time step j+ 1, Yi,j and Yi,j−1are the corresponding displacements at time steps j and j− 1, respectively. A and B are constant n × n matrices whose entries depend on the flexible manipulator specification and the number of sections the manipulator is
divided into, C is a constant matrix related to the given input torque and F is an n× 1 matrix related to the time stept and mass per unit length of the flexible manipulator:
Yi,j+1=
A state-space formulation of the dynamic equation of the manipulator can be con-structed by referring to the matrix formulation. Using the notation for simulation of discrete-time linear systems, the dynamic equations of the flexible manipulator can be written as Note that N represents the number of sections.
108 Flexible robot manipulators 5.4 The FE/Lagrangian method
The dynamic model of a physical structure (including rigid robotic manipulators) is obtainable by using Lagrange’s method (Crandall et al., 1968). For robotic manipula-tors, the Lagrangian technique is simplified by first formulating certain (generalized) inertia matrices (Mahil, 1982). This approach can be combined with the FE method (Cook, 1981; Rao, 1989) to model the flexible links of robotic manipulators (Usoro et al., 1983, 1984).
The flexible link is considered as an assemblage of a finite number of small elements. The elements are assumed interconnected at certain points, known as nodes.
For each FE, the scalar kinetic and potential energy functions are formulated as functions of the generalized coordinates. A Lagrangian is formulated, and the dynamic model is obtained by applying Lagrange’s equations. By reducing the element size, that is, by increasing the number of elements, the overall solution of the system equations can be made to converge to the exact solution as precisely as desired. The FE/Lagrangian approach is general but, for reasons of simplicity, it is demonstrated for two cases: (a) a manipulator with single flexible link, and (b) a manipulator with two flexible links. A two-link manipulator is shown in Figure 5.3.
5.4.1 Elemental matrices
The first step is to find a ‘generalized inertia matrix’ and a stiffness matrix for a single FE. Bernoulli–Euler beam theory is used in this process. For an arbitrary link, an FE j is considered to possess 2 degrees of freedom (DOF), a transverse flexural deflection and a flexural slope, at each end of the element. The flexural displacement y can be described in terms of these DOF and certain shape functions (Hermitian polynomials)
X2
X1 (X2) O1 (O2)
⬘ j ⬘
x y u2 j− 1 (w2 j− 1)
u2 j+ 1 (w2 j+ 1)
U2n1+ 2 +1
2
X1
X O2
O,O1
Y2
Y1 Y
1
(a) (b)
Figure 5.3 A two-link manipulator: (a) the manipulator, (b) element j of link 1(2)
φk(x) (Ross, 1996) as
y(x, t) = 4 k=1
φk(x) u2j−2+k(t) (5.23)
where, for an element of length l, the shape functions are defined by φ1(x) = 1 − 3x2
The displacement variables x and y(x), see Figure 5.3(b), satisfy the boundary conditions, that is, y(0) = u2j−1,∂y(0)/∂x = u2j, y(l) = u2j+1,∂y(l)/∂x = u2j+2. 5.4.1.1 Scalar energy functions
Let r be the position vector, in inertial coordinates, of a small differential element on the FE ‘j’ under consideration. The kinetic energy, Tj, of the (finite) element is obtained by integrating (over the element length l) the corresponding energy function of the differential element. Thus
Tj = 1
which, after some algebraic manipulations, has the form Tj = 1
2˙zjTMj˙zj (5.26)
The matrix Mjis a symmetric matrix, which behaves similar to inertia, and is called the ‘generalized inertia matrix’ of element ‘j’. The(i, k) th element of this inertia matrix is
The potential energy, Vj, due to elasticity of the FE is obtained, in a similar manner, by integrating the differential (potential) energy function over the element length l. Thus,
(For motion in planes other than horizontal, potential energy due to gravity need be included.) After some manipulation, the potential energy of the element can be determined as
Vj =1
2ψTjKjωωψj (5.29)
110 Flexible robot manipulators
is a 4× 4 stiffness matrix of the jth FE corresponding to the elastic motion, and is a function of the element length ‘l’. Summing over all FEs, the total kinetic and total potential energies T and V of the arbitrary link can be obtained as
T =
The elements of the ‘intermediate’ ‘generalized inertia matrix’ M and the ‘intermedi-ate’ ‘stiffness matrix’ Kωωcan be easily obtained by simple manipulations. A matrix P(l), which is also a function of the element length ‘l’, is defined below. This is handy in the procedure development.
5.4.2 A single-link flexible manipulator
In this case, the position of a small differential element located on the jth FE of link
‘1’ is given by the vector r1=
(j − 1)l1+ x y
in the body-fixed system of coordinates. This vector can be transformed to the inertial system of coordinates by using a transformation matrix T10. Thus,
r= T10r1= Using equation (5.34) with equations (5.23)–(5.33), the inertia and stiffness matri-ces, and the kinetic and potential energy functions for the ‘jth’ FE, and thence the corresponding matrices and energy functions for the whole link can be determined.
The symmetric generalized inertia matrix M1jof the jth element is of order 5 and, by
simple manipulations, it can be shown that the first-row elements of this matrix are M1j(1, 1) =m1l31
3 (3j2− 3j + 1) + ψ1jTP1jψ1j, M1j(1, 2) = m1l12
20 (10j − 7) M1j(1, 3) =m1l31
60 (5j − 3), M1j(1, 4) = m1l12
60 (10j − 3) M1j(1, 5) = −m1l13
60 (5j − 2)
where
P1j= m1l1
420P(l1)
The matrix P1jis also the lower 4× 4 sub-matrix in the right-hand corner of the inertia matrix M1j. The total kinetic and potential energies T1and V1of link ‘1’ are
T1=1
2˙˜qT1M1˙˜q1 V1=1
2ψT1K1ωωψ1
The matrices M1and K1ωωare the generalized inertia matrix and the stiffness elastic submatrix of the link, respectively. The matrix elements can be easily computed from equations (5.23) to (5.33) by appropriate manipulations (Usoro et al., 1983, 1984).
5.4.3 A two-link flexible manipulator
In this case, the position of a differential element located on the jth FE of link ‘2’, is given by the vector
r= T10
L1 u2n1+1
+ T21
(j − 1)l2+ x y
(5.35) in inertial coordinates, where T10is as defined earlier in equation (5.12), and
T21=
cos(θ2+ u2n1+2) − sin(θ2+ u2n1+2) sin(θ2+ u2n1+2) cos(θ2+ u2n1+2)
(5.36) is the transformation from body-fixed system of coordinates O2X2Y2to the body-fixed system of coordinates O1X1Y1. This vector is independent of coordinates ui, i= 1, 2, . . . , 2n1. Proceeding exactly as for link ‘1’, and using equations (5.35) and (5.36) with equations (5.23) to (5.33), the total kinetic and potential energies for link
‘2’ are obtained as T2=1
2˙˜qT2M2˙˜q2
112 Flexible robot manipulators
V2= 1
2ψT2K2ωωψ2
The elements of the inertia matrix M2and the stiffness submatrix K2ωωfor link ‘2’
can be found in (Usoro et al., 1983).
5.4.3.1 Boundary conditions, payload and damping
When the first joint is constrained to have purely rotational displacement then u1(t) = u2(t) = 0 for all ‘t’. Similarly, for a purely rotational second joint, w1(t) = w2(t) = 0.
The appropriate rows and columns are hence eliminated from the matrices M1, M2,
K1, K2 obtained above. The payload can be incorporated as a point mass at the end-point of the manipulator. For a two-link manipulator, for instance, the vector
r= T10
L1 u2n1+1
+ T21
L2 w2n2+1
describes the payload position in inertial coordinates. Using this equation with equa-tions (5.23)–(5.33), the payload’s contribution to the inertia matrix can be determined.
The dynamic model is obtained by formulating the Lagrangian of the system and using Lagrange’s equations (Crandall et al., 1968). Structural damping is usually present in flexible manipulator systems, and can be included by assuming that the manipulator exhibits Rayleigh damping. Experimentally determined damping ratios can then be assigned to the individual modes, and the damping matrix D formulated. The final dynamic model has the form
M¨q(t) + D˙q(t) + Kq(t) = Q(t) (5.37)
where, q(t) is an m×1 vector of generalized coordinates, and Q (t) is the generalized force vector. The other matrices are of compatible dimensions. For a one-link manip-ulator with ‘n’ FEs, m= 2n+1. It is noted that the flexible manipulator has two types of motion: a rigid-body motion and an elastic motion. There is coupling between the motions.
The model in equation (5.37) is easily converted to the state-space form as
˙v = Av + Bu
y= Cv (5.38)
where
A=
0m Im
−M−1K −M−1D
, B=
0m×1 M−1e1
, C=
Im 0m
The vector e1is the first column of the identity matrix, 0m× 1is an m× 1 null vector, vT =
qT ˙qT
and u= τ.