- One to One and Onto Functions
- MFCS
- linear algebra
- diffgeotext1-13
- Stanimirovic
- matrix 1
- 101_2018_3_b (2)
- Week 8 Report
- Matrix Genetics R
- MAT223 Midterm Exam II Review Sheet
- Registration Practical
- Phd Proposal Willem
- IntroToLinearDynamicalSystems-Lecture01
- Engineering Mathematics 1 Jan 2014
- fem solver paper
- 11_DifferentialKinematics_2.pdf
- Daftar Pustaka
- FHMM1024 Chapter 1 Matrices and Linear Equations
- Step by Step Formation of Ybus and Zbus
- appendixA
- lab3eng.pdf
- s07lab4.Ps
- Feature reduction.pdf
- compmech1
- 3.Mixed
- Assignment 1 (1)
- Florence Bertails- Linear Time Super-Helices
- L-G-000212312865376-0004545485
- lec8
- Matrix Cookbook
- Stefani 2
- DMS chap5 SLIDE 1.pptx
- Linear Systems
- nonlinear dynamics1.pdf
- Laplace transform methods.pdf
- Laplace transform methods.pdf
- nonlinear.pdf
- STEFANI.pdf
- Fourier
- Chap 1part1dms
- DMSppt2chap5
- Dms Chap5 Slide 1
- Direct Indirect
- Ode
- Economic model and stability in the sense of Lyapunv
- Peer Learning.ppt
- introduction to statistics lesson 1
- Peer Learning
- Block Diagram Representation2
- Phaseplane Analysis
- Chapter 3 Mechanical Systems Part1 Forclass 3
- Distributions/generalized functions
- markeev
- Stable Regionsmain
- l Yap Fun c Construct
- markeev
- Lecture 25
- analytic_functions.pdf
- Study on the dynamic model of a duopoly game with delay in.pdf
- Lecture 19

**DOI 10.1007/s11044-011-9291-6
**

Singularity-free simulation of closed loop multibody

systems by using null space of Jacobian matrix

Dinh Van Phong · Nguyen Quang Hoang

Received: 1 April 2011 / Accepted: 5 December 2011 / Published online: 30 December 2011

© Springer Science+Business Media B.V. 2011

Abstract Numerical simulation of closed loop multibody systems is associated with nu-

merical solution of equations of motion which are, in general, in the form of DAE’s index-3

systems. For assuring continuous simulation, one should overcome some difﬁculties such as

stabilization of the constraint equations, singular conﬁguration of the system. In this paper,

the system equations of motion with the Lagrange multipliers is rewritten by introducing

generalized reaction forces. The combination with the condition of ideality of constraints

leads to the system of equations which can be solved by numerical techniques smoothly,

even over singular positions. Based on the new criterion of ideality of constraints, which re-

lates generalized reaction forces and the null space matrix of Jacobian matrix, it is possible

also to remove reaction forces and use only the reduced system of equations with null space

matrix for passing singular positions. In order to prevent the constraint equations from the

accumulated errors of integral time, the method of position and velocity projection has been

exploited. Some numerical experiments are carried out to verify the proposed approach.

Keywords Constrained mechanical system · Singularity conﬁguration · Numerical

simulation · DAE · Null space · Generalized reaction forces · Equation of motion

1 Introduction

Dynamic simulation of multibody systems has an association with deriving of the equation

of motion and numerical solving them. For multibody systems with closed loop, the redun-

dant coordinates, with performing, e.g., Lagrange multipliers are frequently used and this

results in the index-3 systems of differential-algebraic equations (DAEs). The simulation

of constrained multibody systems has been investigated by many authors including [1, 9,

D.V. Phong · N.Q. Hoang ()

Department of Applied Mechanics, Hanoi University of Science and Technology, No. 1 Dai Co Viet

Road, Hanoi, Vietnam

e-mail: hoangnq-dam@mail.hut.edu.vn

D.V. Phong

e-mail: phong@mail.hut.edu.vn

488 D.V. Phong, N.Q. Hoang

11–14, 19–26, 31, 32]. Besides using the reliable numerical methods, some related prob-

lems have been to taken into account for smooth and continuous simulation. Methods such

as Lagrange multiplier partition, constraint violation stabilization method and coordinate

partitioning method have been normally used due to their simplicity [7, 8, 20, 21, 26]. The

method of velocity transformations is also applied [33]. However, these methods require the

Jacobian matrix of constraint equations having a full rank, it means the system is outside of

singular conﬁgurations.

In recent years, the problems of overcoming the singular conﬁguration have been inves-

tigated by several authors. The augmented Lagrangian formulation within the context of

singular positions has been used by some authors as in [4–6]. This method is stable and

accurate, but the method parameters are not easy to choose. Moreover, with representing

these parameters, the dynamics of the systems is described approximately only. The vector

of generalized acceleration and Lagrangian multipliers at each time point are determined by

iterative algorithms.

Besides the smoothness over the singular conﬁguration, the stability of the simulation

algorithm is also important issue. The stable property requires that the constraints in position

and velocity are not broken down. For this problem, the stabilization method introduced by

Baumgarte [3] is one of the most popular methods and this has been applied successful by

several authors [16]. However, the choice of the method parameters is not straightforward

and they are normally determined by expertise.

The methods of coordinate and velocity projection are a post-stabilized techniques, in

which the solution obtained after one or several integration steps will be projected onto the

manifold determined by constrained equations and its derivatives. This technique has been

investigated and applied successfully for closed loop multibody systems [5]. Nevertheless,

the integration and projection are two separate processes; they are not simultaneously per-

formed. The comprehensive review of the theoretical foundations used for the enforcement

of constraints in multibody systems can be found in [2].

In this paper, the null space technique is applied to overcome the singular conﬁgura-

tion of the system. Firstly, the system of equations of motion with Lagrange multipliers

are rewritten by introducing the generalized reaction forces and the null space of Jacobian

matrix of the constrains are used to close the presenting equations. The advantage of this

new kind of equations of motion is that it enables algorithms dealing with the singular con-

ﬁguration to make the simulation process be continuous. Also, the coordinate and velocity

projection technique is applied to guarantee that the constraints are not broken down due to

the accumulated errors during the integration process.

2 Equations of motion of constrained mechanical systems

For a mechanical system, the differential equations describe the dynamics of the system and

the algebraic equations describe the constraints in the system. Let us consider a system of

n degree of freedom that is described by m redundant coordinates. Note that in comparison

with the system with the minimal number of generalized coordinates the system with redun-

dant generalized coordinates leads to the easier algorithm for deriving equations of motion

and also is more convenient for simulation on computer.

Let q = [q

1

, q

2

, . . . , q

m

]

T

, m > n be the vector of generalized coordinates. The derivation

of equations of motion for this system belongs to standard multibody codes, well described

in the literature (see, e.g., [15, 20, 26]). With Lagrange multipliers, the system of equations

Singularity-free simulation of closed loop multibody systems 489

of motion is in the following form [27, 32]:

d

dt

_

∂T

∂ ˙ q

_

T

−

_

∂T

∂q

_

T

=Q−G

T

q

(q)λ −

_

∂Π

∂q

_

T

(2.1)

where T =

1

2

˙ q

T

M(q) ˙ q is the kinetic energy, M(q) is the mass matrix with a size of m×m;

Π = Π(q) is the potential energy; vector Q denotes the generalized forces of control and

nonpotential forces; vector λ = [λ

1

λ

2

. . . λ

r

]

T

with size of r ×1, r = m −n, contains La-

grange multipliers; Vector function g(q) = 0, g = [g

1

g

2

. . . g

r

]

T

, contains m−n constraint

equations of redundant coordinates; and G

q

(q) = ∂g/∂q with size of r ×m is the Jacobian

matrix.

It is well known that (2.1) can be rewritten as

M(q) ¨ q +C(q, ˙ q) ˙ q +h(q) +G

T

q

(q)λ =Q, (2.2)

with

h(q) =

_

∂Π

∂q

_

T

, C(q, ˙ q) ˙ q =

˙

M(q) ˙ q −

_

∂T

∂q

_

T

.

Matrix C(q, ˙ q) is determined from the mass matrix M(q) according to Christoffel formula

as [18]

C(q, ˙ q) =

_

c

ij

(q, ˙ q)

_

, c

ij

(q, ˙ q) =

1

2

m

k=1

_

∂m

ij

∂q

k

+

∂m

ik

∂q

j

−

∂m

jk

∂q

i

_

˙ q

k

. (2.3)

Putting p

1

= Q−C(q, ˙ q) ˙ q −h(q), and taking into account the constraint equations one

gets the differential algebraic equations describing the system as

M(q) ¨ q +G

T

q

(q)λ =p

1

(u, q, ˙ q), (2.4)

g(q) = 0. (2.5)

In order to solving the system (2.4), (2.5), the consistent initial conditions are necessary, it

mean the initial conditions are required to satisfy

g(q

o

) = 0, (2.6)

G(q

o

) ˙ q

o

= 0. (2.7)

The DAEs (2.4), (2.5) can be solved by numerical methods. Some techniques are required

such as Lagrange multipliers partition, constraint violation stabilization method, and coor-

dinate partitioning method, etc. Basically, for applying the numerical schemes for ordinary

differential equations (ODEs), one uses the second derivatives of the constraint equations.

2.1 Method of Lagrange multiplier partition

An important property of the DAEs for mechanical system is that the equations are lin-

ear to differential variables ¨ q and algebraic variables λ (Lagrange multipliers). This allows

separating two variables ¨ q and λ to get the ordinary differential equations for q. By differ-

entiating equation (2.5) with respect to time, one gets

G

q

(q) ¨ q = −

˙

G

q

(q) ˙ q −G

t q

˙ q −g

t t

, with

490 D.V. Phong, N.Q. Hoang

G

q

(q) =

∂g

∂q

, g

t

=

∂g

∂t

, g

t t

=

∂

2

g

∂t

2

, G

t q

=

∂g

t

∂q

. (2.8)

Writing (2.4) and (2.8) together yields

M(q) ¨ q +G

T

q

λ =p

1

(u, q, ˙ q),

G

q

(q) ¨ q = −

˙

G

q

(q) ˙ q −G

t q

˙ q −g

t t

=: p

2

, with p

2

= −

˙

G

q

(q) ˙ q −G

t q

˙ q −g

t t

(2.9)

or in the matrix form

_

M(q) G

T

q

G

q

(q) 0

_

_

¨ q

λ

_

=

_

p

1

(u, q, ˙ q)

p

2

(q, ˙ q, t )

_

. (2.10)

Note that the method of Lagrange multipliers partition can be applied only in case the fol-

lowing matrix to be regular

A(q) =

_

M(q) G

T

q

G

q

(q) 0

_

.

In this case from (2.10), one gets

¨ q = ¨ q(u, q, ˙ q, t ), λ =λ(u, q, ˙ q, t ).

2.2 Coordinate partitioning method

Main idea of this method is to eliminate dependent coordinates and Lagrange multipliers, to

transform DAEs (2.4), (2.5) to ODEs. Firstly, the generalized coordinates q are divided into

two subgroups: independent coordinates q

i

and dependent coordinates q

d

, so the constraint

equations can be rewritten as

g(q) =g(q

i

, q

d

) = 0. (2.11)

From (2.11), the dependent coordinates q

d

can be solved by analytical or numerical methods

to get a function of independent coordinates q

d

=z(q

i

).

The constraint equations at velocity level are given by differentiating (2.5) with respect

to time

G

q

(q) ˙ q =G

q

d

(q) ˙ q

d

+G

q

i

(q) ˙ q

i

= 0, (2.12)

where G

q

d

(q) is a square matrix of size r ×r, and G

q

i

(q) is a matrix of size r ×n. Assuming

that matrix G

q

d

(q) to be nonsingular, det G

q

d

(q) = 0. Solving (2.12) for ˙ q

d

yields

˙ q

d

= −

_

G

q

d

(q)

_

−1

G

q

i

(q) ˙ q

i

. (2.13)

Putting a homogeneous presenting

˙ q

i

=E˙ q

i

, with identity matrix E of size n, (2.14)

so (2.13) and (2.14) can be combined together as following:

˙ q =

_

˙ q

i

˙ q

d

_

=

_

E

−[G

q

d

(q)]

−1

G

q

i

(q)

_

˙ q

i

. (2.15)

Singularity-free simulation of closed loop multibody systems 491

Let deﬁne the matrix

D(q) =

_

E

−[G

q

d

(q)]

−1

G

q

i

(q)

_

. (2.16)

It is clear that it describes the relationship between derivatives of generalized coordinates

and independent generalized velocity. Now (2.15) is rewritten in a compact form as

˙ q =D(q) ˙ q

i

. (2.17)

Substituting (2.17) into (2.12) yields

G

q

(q) ˙ q =G

q

(q)D(q) ˙ q

i

= 0. (2.18)

Because the elements of vector ˙ q

i

are independent so we can conclude that

G

q

(q)D(q) = 0 or D

T

(q)G

T

q

(q) = 0. (2.19)

Left multiplying both sides of (2.4) by matrix D

T

(q) yields

D

T

(q)M(q) ¨ q +D

T

(q)G

T

q

(q)λ =D

T

(q)p

1

. (2.20)

Considering the formula (2.19), so (2.20) becomes

D

T

(q)M(q) ¨ q =D

T

(q)p

1

. (2.21)

Differentiating (2.17) with respect to time one gets

˙ q =D(q) ˙ q

i

⇒ ¨ q =D(q) ¨ q

i

+

˙

D(q) ˙ q

i

(2.22)

and substituting (2.22) into (2.21) yields

D

T

(q)M(q)

_

D(q) ¨ q

i

+

˙

D(q) ˙ q

i

_

=D

T

(q)p

1

(2.23)

or

D

T

(q)M(q)D(q) ¨ q

i

=D

T

(q)p

1

−D

T

(q)M(q)

˙

D(q) ˙ q

i

. (2.24)

Equation (2.24) is the differential equation of motion for a closed loop mechanical systems

described by independent generalized coordinates. Surely, the system (2.24) is only a ODE’s

system and by solving one obtains

¨ q

i

=

_

D

T

MD

_

−1

_

D

T

p

1

−D

T

M

˙

D˙ q

i

_

=ϕ(u, q

i

, ˙ q

i

, t ). (2.25)

3 Singularity-free with null space of Jacobian matrix

Two above mentioned methods can be used only in the cases that the Jacobian matrix G

q

(q)

is nonsingular. It means the matrix G

q

(q) must have a full rank, i.e., rank[G

q

(q)] = r, where

r is the number of constraints. However, the simulation can collapse, as well known, at

some so-called singular conﬁgurations if the Jacobian matrix reduces its rank that is at these

positions rank[G

q

(q)] < r, where and when that occurs, depends on the system structure

492 D.V. Phong, N.Q. Hoang

and its parameters. In order to assure the continuous and smooth simulation we need to ﬁnd

a solution to deal with this singularity.

For this purpose, the technique using null space of Jacobian matrix of constraints will

be presented in this section. At ﬁrst, let us deﬁne so-called generalized reaction forces of

constraints. In case under consideration this is m dimensions vector r = G

T

q

(q)λ and it is

the generalized force vector of reaction forces appearing at the cutting joints [23]. So, (2.4)

describing the behavior of the system becomes

M(q) ¨ q +r = p

1

(u, q, ˙ q, t ),

g(q, t ) = 0.

(3.1)

In this system of equations, the unknowns are q and r, hence their total number is 2m. It is

clear that we have in (3.1) only 2m−n equations. In order to close the system of equations

of motion, the ideality of the constraints will be taken into account. According to principle

of virtual work, one can write

δA = δq

T

· r = 0 ⇒ δq

T

· G

T

q

(q)λ = 0. (3.2)

Dividing the generalized coordinates by two groups: independent set q

i

with n elements and

dependent set q

d

with r elements

q =

_

q

T

i

, q

T

d

_

T

so δq =

_

δq

T

i

, δq

T

d

_

T

.

These virtual displacements have to satisfy the following equation:

G

q

(q) · δq = 0 ⇒ G

q

i

(q) · δq

i

+G

q

d

(q) · δq

d

= 0. (3.3)

At the regular conﬁgurations, det G

q

d

(q) = 0, and from (3.3) one gets

δq

d

= −G

−1

q

d

(q) · G

q

i

(q) · δq

i

. (3.4)

Putting (3.4) into (3.2) yields

δA = δq

T

· r = 0 ⇒

δq

T

· r =

__

E, −G

−1

q

d

(q) · G

q

i

(q)

_

· δq

i

_

T

· r

= δq

T

i

_

E, −

_

G

−1

q

d

(q) · G

q

i

(q)

_

T

_

· r = 0.

With the m×n matrix D deﬁned by (2.16), i.e.,

D =

_

E, −

_

G

−1

q

d

(q) · G

q

i

(q)

_

T

_

T

(E is identity matrix with size of n × n), the virtual work of generalized reaction forces is

rewritten as

δA = δq

T

· r = δq

T

i

· D

T

· r = 0. (3.5)

Since the elements of vector δq

i

are independent, so the virtual work vanishes only if fol-

lowing condition is satisﬁed

D

T

r = 0. (3.6)

Singularity-free simulation of closed loop multibody systems 493

This matrix condition with n equations will be added to (3.1) to close the systemof equations

of motion. Thus, after combination two matrix equations (3.1) and (3.6), one gets a complete

system of 2m equations with 2m unknowns (q and r). Matrix equation (3.6) which relates

the generalized reaction force r and the matrix D, presents a nice criterion for the condition

of ideality of constraints. It is worth to note that the ideality of the constraints is commonly

supposed. Hence, by dropping (3.6), we will pass to other class of mechanical systems with

nonideal constraints. That is the sense of using generalized reaction force [23].

Note that matrix D is the null space of the Jacobian matrix G

q

(q), i.e. G

q

(q)D = 0. This

can be proved as follows:

G

q

(q)D =

_

G

q

i

(q), G

q

d

(q)

_

_

E

−G

−1

q

d

(q)G

q

i

(q)

_

= G

q

i

(q) −G

q

d

(q)G

−1

q

i

(q)G

q

i

(q) = 0.

By combining (3.1) and (3.6), the DAEs of the closed loop mechanical systems can be

written as

M(q) ¨ q +r = p

1

(u, q, ˙ q, t ),

g(q, t ) = 0,

D

T

r = 0

(3.7)

with p

1

(u, q, ˙ q, t ) =Q−C(q, ˙ q) ˙ q −h(q) and G

q

(q)D = 0.

Keep in mind that in the system (3.7) the constraint equation g(q, t ) = 0 is represented

in the original form at position level. So, if we dispose of reliable numerical integration

methods for the index-3 DAE’s system, direct integration can be performed. However, the

common effective way for solving the system is using the numerical schemes for ODEs. For

this purpose, the constraint equations are rewritten in acceleration level; it means that we

differentiate g(q, t ) = 0 two times and get the constraint equations as the following:

G

q

(q) ¨ q = −

˙

G

q

(q) ˙ q −G

t q

˙ q −g

t t

=p

2

(q, ˙ q, t ).

So, (3.7) becomes

M(q) ¨ q +r = p

1

(u, q, ˙ q, t ),

G

q

(q) ¨ q = p

2

(q, ˙ q, t ),

D

T

· r = 0

(3.8)

or in the matrix form

_

_

M(q) E

G

q

(q) 0

0 D

T

_

_

_

¨ q

r

_

=

_

_

p

1

(u, q, ˙ q, t )

p

2

(q, ˙ q, t )

0

_

_

. (3.9)

Putting

B(q) =

_

_

_

M(q) E

G

q

(q) 0

0 D

T

_

¸

_

, y =

_

¨ q

r

_

, f(u, q, ˙ q, t ) =

_

_

_

p

1

(u, q, ˙ q, t )

p

2

(q, ˙ q, t )

0

_

¸

_

494 D.V. Phong, N.Q. Hoang

one can write the system of equations of motion in a compact form as

B(q)y =f(u, q, ˙ q, t ). (3.10)

The matrix equations (3.10) describe the dynamics of the same constrained mechanical sys-

tems as (2.10), however, note the difference about them. Number of equations in (2.10) is

2m−n, i.e., the size of the matrix A(q) is (2m−n) ×(2m−n), and it has full rank only at

regular positions, at the singular conﬁgurations the rank of this matrix is less than 2m−n.

The matrix equations (3.9) or (3.10) have (2m+s) lines, i.e., the size of the matrix B(q)

is (2m+s) ×2m, with s = r −rank[G

q

(q)]. In the case the Jacobian matrix has a full rank,

rank[G

q

(q)] = r, then s is equal to zero. According to the theorem of rank plus nullity, it is

always hold for rank[G

q

(q)] +rank[D] = m [17]. Hence, the matrix B(q) always has a full

rank, i.e., rank[B(q)] = 2m and the solution of (3.10) with 2m unknowns can be founded by

y =

_

B

T

(q)B(q)

_

−1

B

T

(q)f(u, q, ˙ q, t ). (3.11)

Therefore, the vector of generalized acceleration ¨ q is always determined directly from (3.11)

and the solution is independent of the fact that the system is at regular conﬁgurations or not.

This is a remarkable advantage of the equations of motion in form (3.9) in comparison

with (2.10). Thus, by writing the equations of motion with the generalized reaction forces

the numerical simulation for constrained systems is continuous over the singular conﬁgura-

tions.

Further, in this case of ideal constraints the reaction forces are coupled with the null

space of Jacobian matrix by (3.6) and we can remove the vector r and get the reduced form

of system equations of motion [2]. Really, premultiplying the ﬁrst equation of (3.8) by D

T

and using third equation of (3.8) one gets easily the system

D

T

M(q) ¨ q = D

T

p

1

(u, q, ˙ q, t ),

G

q

(q) ¨ q = p

2

(q, ˙ q, t ).

Again the total number of equations of the system is m, since rank[G

q

] +rank[D

T

M] = m

for all positions: regular and singular.

One of key points of the proposed algorithm is the construction of the matrix D. In case

under consideration with the assumption of ideal constraints, this matrix can be determined

by analytical or numerical methods. At the regular conﬁgurations of the system, the matrix

D is deﬁned either directly by (2.16) or computed by numerical methods. At the singu-

lar conﬁgurations, the rank of Jacobian matrix G

q

(q) decreases, the formula (2.16) cannot

be used and, in general, numerical methods should be applied for ﬁnding matrix D from

G

q

D = 0 [7, 23, 24]. In this case, the numerical methods as transformation to row echelon

form or method of SVD can be used.

It is worth to note that in the proposed approach with the null space matrix D, it is not

necessary to ﬁnd out the singular position for smooth simulation. However, it is possible by

using the rank of matrix G

q

or D to check these positions. Surely, it is not easy task and is

time consuming. The most reliable numerical method is using SVD technique to check the

number of singular values of these matrices.

Also, if we use the system equation (3.9) with derivatives form on constraints the drift

phenomenon can occur during simulation process and some stabilization methods should be

used. The most popular method is Baumgarte methods. However, reader can combine the

proposed method with many other procedures; see [3, 10, 16, 28–30, 34]. Note that in some

procedures the null space matrix is used [28–30]. In illustrated examples in this paper, the

method of position and velocity projection is exploited.

Singularity-free simulation of closed loop multibody systems 495

Fig. 1 (a) The slider-crank mechanism. (b) Singular conﬁgurations

4 Numerical experiments

In this section, some numerical simulations for closed loop multibody systems are imple-

mented to illustrate the proposed approach. Two systems considered here are a slider-crank

mechanism and two four-bar mechanism. The length of linkages is chosen so that there are

singularities in their conﬁgurations.

Example 1 We solve the simulation problem of a slider-crank mechanism moving in the

vertical plane (Fig. 1a). The mechanism consists of crank having a length OA = L

1

; con-

nection rod AB = L

2

= L

1

, and a slide B. The centers of mass are located at the middle

of each member, with OC

1

= L

1

/2, e

2

= AC

2

= L

2

/2; masses and inertia moment respect

to axis through the centers of mass are givens as m

1

= 1, m

2

= 1, m

3

= 0.5 kg, J

C1

= 0.1,

J

C2

= 0.1 kgm

2

, and L

2

= L

1

= 0.5 m.

The system has only one degree-of-freedom and the generalized coordinates are deﬁned

as

q = [q

1

, q

2

, q

3

]

T

, so m = 3, n = 1.

The equation of motion of the mechanism in form of (3.7) is given by matrices and vector

as the following:

M(q) =

_

_

_

m

1

e

2

1

+J

C1

+m

2

L

2

1

, −m

2

L

1

e

2

cos(q

1

+q

2

) 0

−m

2

L

1

e

2

cos(q

1

+q

2

) m

2

e

2

2

+J

C2

0

0 0 m

3

_

¸

_

,

C(q, ˙ q) =

_

_

_

0 m

2

L

1

e

2

˙ q

2

sin(q

1

+q

2

) 0

m

2

L

1

e

2

˙ q

1

sin(q

1

+q

2

) 0 0

0 0 0

_

¸

_

,

h(q) = [g(m

1

e

1

cos q

1

+m

2

L

1

cos q

1

), −m

2

ge

2

cos q

2

, 0]

T

.

The constraint equations are given in the form:

g

1

(q) = L

1

cos q

1

+L

2

cos q

2

−q

3

= 0,

g

2

(q) = L

1

sinq

1

−L

2

sinq

2

= 0

496 D.V. Phong, N.Q. Hoang

Fig. 2 Simulation results without driving moment

and the Jacobian matrix is

G

q

(q) =

_

−L

1

sinq

1

−L

2

sinq

2

−1

L

1

cos q

1

−L

2

cos q

2

0

_

,

Because of L

2

= L

1

= L, so we have q

2

= q

1

. At the regular conﬁgurations, null space of

the Jacobian matrix G

q

(q) is determined as

D = [ 1 1 −2Lsinq

1

]

T

.

The rank of the matrix [G

T

q

, D]

T

at the regular conﬁgurations is therefore 3. Although it is

not necessary to know exactly the singular positions, for illustrating the proposed method

we can provide the analysis how simulation process passes through these positions. At the

singular conﬁgurations, corresponding to q

2

= q

1

= ±

1

2

(2k + 1)π, k = 0, 1, 2, . . . , rank of

the Jacobian matrix G

q

(q) is reduced, i.e.,

G

q

(q) =

_

±L ±L −1

0 0 0

_

, rank(G

q

) = 1 < 2.

At these singular conﬁgurations, the null space of the Jacobian matrix can be written as fol-

lows:

G

q

=

_

−L −L −1

0 0 0

_

⇒ D =

_

_

0 1

1 0

−L −L

_

_

, rank(D) = 2,

Singularity-free simulation of closed loop multibody systems 497

Fig. 3 Simulation results in 8 seconds with driving moment

G

q

=

_

L L −1

0 0 0

_

⇒ D =

_

_

−1 1/L

1 0

0 1

_

_

, rank(D) = 2.

So, the dimension of the null space at this conﬁguration has been increased to 2, and we

have always rank(D) +rank(G

q

) = 3.

In this example, two simulations are carried out with consistent initial conditions

q(0) = [0.785398 0.785398 0.707107]

T

, ˙ q(0) = [0, 0, 0]

T

.

498 D.V. Phong, N.Q. Hoang

Fig. 4 Simulation results in 20 seconds with driving moment

In the ﬁrst simulation, there is not applied moment on the crank; the mechanism is forced

to move by only gravity. While in the second case, the mechanism is moved under acting

of moment u

1

= 10 − 2˙ q

1

on the crank OA. The numerical simulation is performed by the

Runge–Kutta rule with ﬁxed step time equal to 0.01 s. The scheme for constraint stabiliza-

tion is the method of position and velocity projection. The simulation results are shown in

the Figs. 2, 3, and 4.

Simulation results of the ﬁrst case are shown in the Fig. 2. In this case, the system is

conservative. The results show that time history of the generalized coordinates change re-

peatedly. The mechanism moves smoothly through the singular conﬁgurations and the errors

of the constraint equations hold very small about 10

−14

m.

Figures 3 and 4 show the simulation results of the second case. Since there is an applied

moment on the driving link, the crank OA increases respectively to time. The mechanism

moves also smoothly through the singular conﬁgurations and the errors of the constraint

equations hold very small about 10

−13

m. These small errors are also maintained when the

integration time is set longer, Fig. 4. This conﬁrms the stability of the integration process

with the projection techniques.

Singularity-free simulation of closed loop multibody systems 499

Fig. 5 (a) Double four-bar mechanism. (b) Singular conﬁgurations of double four-bar mechanism

The comparison of two alternative forms: with and without the reaction force vector r

was also provided. The results show that these two forms have practically the same effect.

The reduced form seems to be simpler since it consists of fewer equations; however, if the

reaction force r is required in direct way it is better to use the original form. The most

important for simulation is the using of null space matrix with combination with a good

integration scheme and stabilization method.

Example 2 Figure 5a shows the considered mechanism of a one degree-of-freedom as-

sembly of two four-bar linkages in the vertical plane. The lengths of links of the mech-

anism are chosen such that OABO

1

and O

1

BCO

2

are parallelograms. Here, we choose

L

1

= L

3

= L

5

= r, L

01

= L

2

= L

02

= L

4

= L. The system has only one degree-of- free-

dom and the generalized coordinates are deﬁned as

q = [q

1

, q

2

, q

3

, q

4

, q

5

]

T

, so m = 5, n = 1.

The equation of motion of the mechanism in form of (3.7) is given by matrices and vector

as the following:

• The elements of mass matrix M(q) are given as

m

11

= m

1

e

2

1

+J

C1

+m

2

L

2

1

, m

12

= m

21

= m

2

L

1

e

2

cos(q

1

+q

2

),

m

33

= m

3

e

2

3

+J

C3

+m

4

L

2

3

, m

34

= m

43

= m

4

L

3

e

4

cos(q

3

−q

4

),

m

44

= m

4

e

2

4

+J

C4

, m

55

= m

5

e

2

5

+J

C5

and the others m

ij

= 0.

• Matrix C(q, ˙ q) are given with nonzero elements

c

12

= m

2

L

1

e

2

sin(q

1

−q

2

) ˙ q

2

, c

21

= −m

2

L

1

e

2

sin(q

1

−q

2

) ˙ q

1

,

c

34

= m

4

L

3

e

4

sin(q

3

−q

4

) ˙ q

4

, c

43

= −m

4

L

3

e

4

sin(q

3

−q

4

) ˙ q

3

and the other elements are equal to zero, c

ij

= 0.

• The vector of generalized force due to gravity is deﬁned as

h(q) =

_

_

_

_

_

_

g(m

1

e

1

cos q

1

+m

2

L

1

cos q

1

)

m

2

e

2

g cos q

2

g(m

3

e

3

cos q

3

+m

4

L

3

cos q

3

)

m

4

e

4

g cos q

4

m

5

e

5

g cos q

5

_

¸

¸

¸

¸

_

.

500 D.V. Phong, N.Q. Hoang

The constraint equations are given for two closed loops as

g

1

= L

1

cos q

1

+L

2

cos q

2

−L

3

cos q

3

−L

01

= 0,

g

2

= L

1

sinq

1

+L

2

sinq

2

−L

3

sinq

3

= 0,

g

3

= L

3

cos q

3

+L

4

cos q

4

−L

5

cos q

5

−L

02

= 0,

g

4

= L

3

sinq

3

+L

4

sinq

4

−L

5

sinq

5

= 0.

The Jacobian matrix is given as

G

q

(q) =

_

_

_

_

_

−L

1

sinq

1

−L

2

sinq

2

L

3

sinq

3

0 0

L

1

cos q

1

L

2

cos q

2

−L

3

cos q

3

0 0

0 0 −L

3

sinq

3

−L

4

sinq

4

L

5

sinq

5

0 0 L

3

cos q

3

L

4

cos q

4

−L

5

cos q

5

_

¸

¸

¸

_

.

In case of L

1

= L

3

= L

5

= r, L

01

= L

2

; L

02

= L

4

, we have

G

q

(q) =

_

_

_

_

_

−r sinq

1

−L

2

sinq

2

r sinq

3

0 0

r cos q

1

L

2

cos q

2

−r cos q

3

0 0

0 0 −r sinq

3

−L

4

sinq

4

r sinq

5

0 0 r cos q

3

L

4

cos q

4

−r cos q

5

_

¸

¸

¸

_

.

With the chosen length of linkages, the mechanism has singular conﬁgurations at q

1

=

±kπ, k = 0, 1, 2, . . . . At regular positions q

1

= ±kπ, k = 0, 1, 2, . . . , the Jacobian matrix

G

q

(q) has a full rank, equal to 4. And the null space in this case is

D = [1 0 1 0 1]

T

.

And the rank of the matrix [G

T

q

, D]

T

is 5. Again for illustration, we can check the situation

at singular conﬁgurations. At positions q

1

= ±kπ, k = 0, 1, 2, . . . q

5

= q

3

= q

1

, q

4

= q

2

=

±kπ, rank of G

q

(q) reduces and is equal to two

G

q

=

_

_

_

_

0 0 0 0 0

±r L

2

∓r 0 0

0 0 0 0 0

0 0 ±r L

4

∓r

_

¸

¸

_

, rank(G

q

) = 2 < 4.

At these singular conﬁgurations, the null space of the Jacobian matrix can be written as

follows:

G

q

=

_

_

_

_

0 0 0 0 0

r L

2

−r 0 0

0 0 0 0 0

0 0 r L

4

−r

_

¸

¸

_

⇒ D =

_

_

_

_

_

_

−L

2

/r −L

4

/r 1

1 0 0

0 −L

4

/r 1

0 1 0

0 0 1

_

¸

¸

¸

¸

_

, rank(D) = 3,

G

q

=

_

_

_

_

0 0 0 0 0

−r L

2

r 0 0

0 0 0 0 0

0 0 −r L

4

r

_

¸

¸

_

⇒ D =

_

_

_

_

_

_

1 0 0

0 1 0

1 −L

2

/r 0

0 0 1

1 −L

2

/r −L

4

/r

_

¸

¸

¸

¸

_

, rank(D) = 3.

Singularity-free simulation of closed loop multibody systems 501

Fig. 6 Simulation results

So, the rank of the null space at these conﬁgurations has been increased to 3, and we have

always rank(D) +rank(G

q

) = 5.

Following are the system parameters used in simulations:

L

1

= r; L

3

= r; L

5

= r; L

4

= L; L

2

= L; L

01

= L

2

; L

02

= L

4

;

e

1

= L

1

/2; e

2

= L

2

/2; e

3

= L

3

/2; e

4

= L

4

/2; e

5

= L

5

/2;

r = 0.4; L = 0.7 m;

m

1

= 1; m

2

= 1; m

3

= 1; m

4

= 1; m

5

= 1 kg;

J

C1

= 0.1; J

C2

= 0.1; J

C3

= 0.1; J

C4

= 0.1; J

C5

= 0.1 kgm

2

.

502 D.V. Phong, N.Q. Hoang

In this example, a simulation is performed with initial conditions of driving link of q

1

(0) =

80

◦

, ˙ q

1

(0) = 0. Solving constraint equations, one obtains the consistent initial conditions as

follows:

q(0) = [1.3963 0.0000 1.3963 −0.0000 1.3963]

T

, ˙ q(0) = [0, 0, 0, 0, 0]

T

.

In this example, there is not driven moment acting on the mechanism. The integration

step is chosen as constant with t = 0.01 s and the Runge–Kutta rule is used in the simula-

tion.

The simulation is performed in time interval of 8 s. The results obtained are displayed in

Fig. 6. The left column plot shows the time history of the coordinates q

1

, q

3

, q

5

from top to

bottom. The right column shows the q

2

, errors of constraint equations, and the mechanism

conﬁgurations of in the ﬁrst second respectively. During the simulation, the mechanism goes

through the singular positions (q

1

= ±kπ) 6 times with no difﬁculty and without locking

the simulation. The results show that there are no differences between of the time history of

the coordinates q

1

, q

3

, q

5

.

It is worth to make a remark that in our examples the problems can be solved with the in-

dependent generalized coordinates; however, the described technique with redundant gener-

alized coordinates is very general and can be applied to any multibody system in comparison

with the concept of minimal number of generalized coordinates.

5 Conclusion

In this paper, a new form of equation of motion for constrained systems is presented by

introducing the generalized reaction forces. The null space of Jacobian matrix is exploited

to close the set of equations for the system. The most important advantage of this new form

is that the numerical simulation can be performed smoothly through the singular conﬁgura-

tions. The post-adjusting technique is also applied to guarantee the constraints in the system

from breakdown as well. Numerical experiments have been shown to verify the efﬁciencies

of the proposed approach.

References

1. Amirouche, F.M.L., Tung, C.-W.: Regularization and stability of the constraints in the dynamics of multi-

body systems. Nonlinear Dyn. 1(6), 459–475 (1990)

2. Bauchau, O.A., Laulusa, A.: Review of contemporary approaches for constraint enforcement in multi-

body system. J. Comput. Nonlinear Dyn. 3, 011005 (2008)

3. Baumgarte, J.: Stabilization of constraints and integrals of motion in dynamical systems. Comput. Meth-

ods Appl. Mech. Eng. 1, 1–16 (1972)

4. Bayo, E., Avello, A.: Singularity-free augmented Lagrangian algorithms for constrained multibody dy-

namics. Nonlinear Dyn. 5, 209–231 (1994)

5. Bayo, E., Ledesma, R.: Augmented Lagrangian and mass-orthogonal projection methods for constrained

multibody dynamics. Nonlinear Dyn. 9, 113–130 (1996)

6. Bayo, E., Jalon, J.G., Serna, M.A.: A modiﬁed Lagrangian formulation for the dynamic analysis of

constrained mechanical systems. Comput. Methods Appl. Mech. Eng. 71, 183–195 (1988)

7. Blajer, W., Schiehlen, W., Schirm, W.: A projective criterion to the coordinate partitioning method for

multibody dynamics. Arch. Appl. Mech. 64, 215–222 (1994)

8. Blajer, W.: Elimination of constraint violation and accuracy aspects in numerical simulation of multibody

systems. Multibody Syst. Dyn. 7, 265–284 (2002)

Singularity-free simulation of closed loop multibody systems 503

9. Braun, D.J., Goldfarb, M.: Eliminating constraint drift in the numerical simulation of constrained dy-

namical systems. Comput. Methods Appl. Mech. Eng. 198(37–40), 3151–3160 (2009)

10. Eich, E.: Convergence results for a coordinate projection method applied to mechanical systems with

algebraic constraints. SIAM J. Numer. Anal. 30, 1467–1482 (1993)

11. Ider, S.K., Amirouche, F.M.L.: Coordinate reduction in constrained spatial dynamic systems—a new

approach. J. Appl. Mech. 55, 899–905 (1988)

12. Ider, S.K., Amirouche, F.M.L.: Numerical stability of the constraints near singular positions in the dy-

namics of multibody systems. Comput. Struct. 33, 129–137 (1989)

13. Jalon, J.G., Bayo, E.: Kinematic and Dynamic Simulation of Multibody Systems—The Real-Time Chal-

lenge. Springer, New York (1994)

14. Kamman, J.W., Huston, R.L.: Dynamics of constrained multibody systems. J. Appl. Mech. 51, 899

(1984)

15. Kane, T.R., Levinson, D.A.: Dynamics: Theory and Applications. McGraw-Hill, New York (1985)

16. Lin, S.T., Huang, J.N.: Stabilization of Baumgarte’s method using the Runge–Kutta approach. J. Mech.

Des. 124(4), 633 (2002)

17. Meyer, C.D.: Matrix Analysis and Applied Linear Algebra. SIAM, Philadelphia (2001)

18. Murray, R.M., Li, Z., Sastry, S.S.: A Mathematical Introduction to Robotic Manipulation. CRC Press,

Boca Raton (1994)

19. Nikravesh, P.E.: Some methods for dynamic analysis of constrained mechanical systems: a survey. In:

Haug, E.J. (ed.) Computer-Aided Analysis and Optimization of Mechanical System Dynamics, pp. 351–

368. Springer, Berlin (1984)

20. Nikravesh, P.E.: Computer-Aided Analysis of Mechanical Systems. Prentice Hall, Englewood Cliffs

(1988)

21. Orden, J.C.G., Ortega, R.A.: A conservative augmented Lagrangian algorithm for the dynamics of con-

strained mechanical systems. In: The Third European Conference on Computational Mechanics (2006)

22. Petzold, L.R., Ren, Y., Maly, T.: Regularization of higher-index differential-algebraic equations with

rank-deﬁcient constraints. SIAM J. Sci. Comput. 18, 753–774 (1997)

23. Phong, D.V.: Principle of compatibility and criteria of ideality in study of constrained mechanical sys-

tems. Stroj. ˇ cas. 47(1), 2–11 (1996)

24. Phong, D.V.: An algorithm for deriving equations of motion of constrained mechanical system. J. Mech.,

NCNST Vietnam 21(1), 36–44 (1999)

25. Schiehlen, W. (ed.): Multibody System Handbook. Springer, Heidelberg (1990)

26. Schiehlen, W.: Multibody system dynamics: roots and perspectives. Multibody Syst. Dyn. 1, 149–188

(1997)

27. Shabana, A.A.: Dynamics of Multibody Systems, 2nd edn. Cambridge University Press, Cambridge

(1998)

28. Terze, Z., Lefeber, D., Muftic, O.: Null space integration method for constrained multibody system

simulation with no constraint violation. Multibody Syst. Dyn. 6, 229–243 (2001)

29. Terze, Z., Naudet, J.: Geometric properties of projective constraint violation stabilization method for

generally constrained multibody systems on manifolds. Multibody Syst. Dyn. 20, 85–106 (2008)

30. Terze, Z., Naudet, J.: Structure of optimized generalized coordinates partitioned vectors for holonomic

and non-holonomic systems. Multibody Syst. Dyn. 24, 203–218 (2010)

31. Tseng, F.C., Ma, Z.D., Hulbert, G.M.: Efﬁcient numerical solution of constrained multibody dynamics

systems. Comput. Methods Appl. Mech. Eng. 192, 439–472 (2003)

32. Udwadia, F.E., Kalaba, R.E.: Analytical Dynamics: A New Approach. Cambridge University Press,

Cambridge (1996)

33. Wehage, R.A., Haug, E.J.: Generalized coordinate partitioning for dimension reduction in analysis of

constrained dynamic systems. J. Mech. Des. 104, 247–255 (1982)

34. Yoon, S., Howe, R.M., Greenwood, D.T.: Geometric elimination of constraint violations in numerical

simulation of Lagrangian equations. J. Mech. Des. 116, 1058–1064 (1994)

- One to One and Onto FunctionsUploaded byShirlyn Prabahar
- MFCSUploaded bySuraj Kumar
- linear algebraUploaded byapi-19987110
- diffgeotext1-13Uploaded byFernando Soares
- StanimirovicUploaded byalexeischx
- matrix 1Uploaded byPragat Gupta
- 101_2018_3_b (2)Uploaded byPhindile
- Week 8 ReportUploaded byKyle Byrne
- Matrix Genetics RUploaded byvsuarezf2732
- MAT223 Midterm Exam II Review SheetUploaded by张子昂
- Registration PracticalUploaded byjawad.melhem
- Phd Proposal WillemUploaded by916153
- IntroToLinearDynamicalSystems-Lecture01Uploaded byigormassao
- Engineering Mathematics 1 Jan 2014Uploaded byPrasad C M
- fem solver paperUploaded byRahul Chandel
- 11_DifferentialKinematics_2.pdfUploaded byPhạm Ngọc Hòa
- Daftar PustakaUploaded byM Faudzi Bahari
- FHMM1024 Chapter 1 Matrices and Linear EquationsUploaded byChristina
- Step by Step Formation of Ybus and ZbusUploaded byashikhmd4467
- appendixAUploaded byVishal Garg
- lab3eng.pdfUploaded byGoran Miljkovic
- s07lab4.PsUploaded byBhargav Reddy Punuru
- Feature reduction.pdfUploaded bybiljets
- compmech1Uploaded bypgoyal10
- 3.MixedUploaded byÜnal Dikmen
- Assignment 1 (1)Uploaded bysamykudo
- Florence Bertails- Linear Time Super-HelicesUploaded byLokosoo
- L-G-000212312865376-0004545485Uploaded byhugostv
- lec8Uploaded byDanka Pantic
- Matrix CookbookUploaded byNeil

- Stefani 2Uploaded byChernet Tuge
- DMS chap5 SLIDE 1.pptxUploaded byChernet Tuge
- Linear SystemsUploaded byChernet Tuge
- nonlinear dynamics1.pdfUploaded byChernet Tuge
- Laplace transform methods.pdfUploaded byChernet Tuge
- Laplace transform methods.pdfUploaded byChernet Tuge
- nonlinear.pdfUploaded byChernet Tuge
- STEFANI.pdfUploaded byChernet Tuge
- FourierUploaded byChernet Tuge
- Chap 1part1dmsUploaded byChernet Tuge
- DMSppt2chap5Uploaded byChernet Tuge
- Dms Chap5 Slide 1Uploaded byChernet Tuge
- Direct IndirectUploaded byChernet Tuge
- OdeUploaded byChernet Tuge
- Economic model and stability in the sense of LyapunvUploaded byChernet Tuge
- Peer Learning.pptUploaded byChernet Tuge
- introduction to statistics lesson 1Uploaded byChernet Tuge
- Peer LearningUploaded byChernet Tuge
- Block Diagram Representation2Uploaded byChernet Tuge
- Phaseplane AnalysisUploaded byChernet Tuge
- Chapter 3 Mechanical Systems Part1 Forclass 3Uploaded byChernet Tuge
- Distributions/generalized functionsUploaded byChernet Tuge
- markeevUploaded byChernet Tuge
- Stable RegionsmainUploaded byChernet Tuge
- l Yap Fun c ConstructUploaded byChernet Tuge
- markeevUploaded byChernet Tuge
- Lecture 25Uploaded byChernet Tuge
- analytic_functions.pdfUploaded byChernet Tuge
- Study on the dynamic model of a duopoly game with delay in.pdfUploaded byChernet Tuge
- Lecture 19Uploaded byChernet Tuge