2020 Utilization of The Moore-Penrose Inverse in The Modeling of - Wojtyra

You might also like

Download as pdf or txt
Download as pdf or txt
You are on page 1of 19

Mechanism and Machine Theory 153 (2020) 103999

Contents lists available at ScienceDirect

Mechanism and Machine Theory


journal homepage: www.elsevier.com/locate/mechmachtheory

Utilization of the Moore-Penrose inverse in the modeling of


overconstrained mechanisms with frictionless and frictional
joints
Marek Wojtyra∗, Marcin Pekal
˛ , Janusz Fraczek
˛
Institute of Aeronautics and Applied Mechanics, Faculty of Power and Aeronautical Engineering, Warsaw University of Technology,
Nowowiejska 24, 00-665 Warsaw, Poland

a r t i c l e i n f o a b s t r a c t

Article history: The indeterminate equations that describe overconstrained mechanisms are often solved
Received 7 March 2020 using the Moore-Penrose inverse. Some limitations of this approach are investigated here.
Revised 21 June 2020
Firstly, frictionless systems are considered. The problem of solvability of accelerations and
Accepted 21 June 2020
joint reactions is studied—the non-uniqueness of reactions and uniqueness of accelerations
is discussed. Next, the dependence of the results on the selection of the physical units is
Keywords: examined. It is checked which elements of the solution are physically non-equivalent after
Redundant constraints changing the units; relationships between different solutions are derived. Secondly, fric-
Joint friction tional systems are considered. Joint friction dependent and independent on normal load is
Unit-dependent results studied. Fixed point iterations and Newton’s method are applied to solve nonlinear equa-
Solution uniqueness tions of motion. The Moore-Penrose inverse is employed to conduct calculations. The null
space solution components are considered, and necessary amendments in the iterative pro-
cesses termination criteria are discussed. The origins of non-uniqueness of accelerations
and Lagrange multipliers are analyzed. The unit-sensitivity of frictional system models is
addressed. Finally, an illustrative example is given, and conclusions are drawn—limitations
and possible improvements of the Moore-Penrose inverse approach are discussed.
© 2020 Elsevier Ltd. All rights reserved.

1. Introduction

In a multibody analysis, constraints that can be eliminated from the system without changing its kinematics are consid-
ered to be redundant [1–3]. In machinery design practice, mechanisms are very often deliberately overconstrained, mainly
to simplify or strengthen their construction. The concept of redundant constraints comes from kinematics, nevertheless, the
influence of constraint redundancy on the dynamic and static properties of the system, and in particular, on the distribution
of the reaction forces, should not be ignored. For example, in overconstrained systems, assembly stresses, that result from
manufacturing inaccuracies, or thermal expansion lead to additional, generally undesirable, loads in kinematic pairs which
contribute to friction effects and can, therefore, influence the motion of mechanisms. The mechanism can also be overcon-
strained due to redundant actuation. Moreover, overactuation may result in additional, usually unwanted, loads in kinematic
pairs [4]. It is worth noting that redundant constraints occurrence in a mathematical model of a multibody system can also
result from using certain methods for modeling of static friction [5–7].


Corresponding author.
E-mail address: mwojtyra@meil.pw.edu.pl (M. Wojtyra).

https://doi.org/10.1016/j.mechmachtheory.2020.103999
0094-114X/© 2020 Elsevier Ltd. All rights reserved.
2 M. Wojtyra, M. Pekal
˛ and J. Fraczek
˛ / Mechanism and Machine Theory 153 (2020) 103999

It is quite often assumed—when performing simulations of multibody systems—that all moving bodies are rigid. If flex-
ibility is neglected, computational models can be executed relatively easily and quickly. However, the rigid body approach
has some disadvantages that are often related to the presence of redundant constraints. The multibody modeling of over-
constrained systems is problematic, as the constraint Jacobian matrix is rank-deficient, which automatically results from the
dependency of constraint equations [1–3,8]. Therefore, some methods able to manage rank-deficient matrices must be used
[9–14]. It is crucial for this study that—due to the dependency of constraints—all (or at least some) constraint reaction forces
are unsolvable, i.e., they cannot be uniquely determined using a rigid body model. It should be noted that some techniques
for checking joint reactions solvability have been developed [15]. A short overview of methods for handling redundant con-
straints, with the focus on constraint reactions calculation, may be found in [16] or [4].
Some of the methods that can manage redundant constraint equations exploit the Moore-Penrose inverse [17,18] as a
basis for computational algorithms. This inverse is often utilized in multibody dynamics modeling [19–28]. In the same way,
it is widely applied in biomechanics (e.g., [29]) or robotics (e.g., [30,31]) to solve various indeterminate problems. This article
is intended to take a critical look at the limitations of such an approach. Particular attention is paid to the problems related
to the uniqueness of the reaction solution.
Frequently, the Moore-Penrose inverse is used to eliminate joint reactions and only accelerations are calculated [21–25]—
this circumvents the problem of indeterminacy of joint reactions (but provides no reaction solution). On the other hand,
in many cases, reactions in kinematic pairs are calculated and the obtained solution (which is the solution with minimum
norm but does not have to be a solution embedded in physics) is used in subsequent analyses—surprisingly often, the non-
uniqueness of computed reaction forces is simply ignored. However, some researchers indicate the minimum norm solution
limitations; in particular, its dependence on physical units [16,26–28]. Moreover, a technique for normalizing the base vec-
tors (the Jacobian matrix rows), which leads to an even sharing of reaction forces by equivalent redundant constraints (and
to a degree solves the problem of indeterminacy) was proposed by the authors of [26]. Nevertheless, it appears that in more
complicated situations (with more complex relationships between constraints), the normalization process itself determines
the choice of one of an infinite number of solutions for the reactions in kinematic pairs; the solution chosen in this way is
not necessarily strongly linked to the physics of the multibody system. To summarize: the Moore-Penrose inverse is often
used to obtain solutions that may not be physically meaningful.
Redundant constraints become even more problematic when joint friction is taken into consideration. With load-
dependent friction in kinematic pairs, the calculated accelerations of the multibody system, and thus its simulated motion,
can be non-unique [32]. The problem originates in the lack of means to establish the unique value of normal joint reaction
in some joints when a rigid body model of an overconstrained system is utilized. Since usually models of friction require
the knowledge of normal loads [33–35,6], problems with calculating friction forces arise. As a result, obtained friction forces
depend on the technique of handling redundant constraints which makes them non-unique. A direct consequence of the
indeterminacy of friction forces is the indeterminacy of calculated accelerations [32], and in turn, non-uniqueness of sim-
ulated motion. It should be mentioned that the problems with credible motion simulation are peculiarly often ignored,
especially in practical calculations performed using multibody software (to our best knowledge, none of the commercially
available engineering packages offers reactions’ solvability analysis or issues a warning message when motion uniqueness is
questionable).
This paper expands ideas signalized in [28] and deals with the outcomes of constraints redundancy related to the use
of the Moore-Penrose inverse. Firstly, the usage of the Moore-Penrose inverse in the calculation of Lagrange multipliers
(which represent reactions) and accelerations in a frictionless system is investigated—the solvability of accelerations and the
unsolvability of multipliers are discussed. Next, the issue of the dependence of the results on the choice of physical units
is examined. The solution is analyzed to determine which of its elements are physically different after changing the units.
Moreover, the relationships between solutions obtained for different physical units are derived. It should be pointed out that
the unit-dependence of the Moore-Penrose solutions was thoroughly investigated in the field of robotics [30,36], however,
mainly to study redundant manipulators’ kinematics and for control purposes. In this paper, special attention is paid to the
reactions in kinematic pairs.
A substantial part of this contribution deals with overconstrained multibody systems with joint friction. Two numerical
approaches to solve nonlinear equations of motion are analyzed, namely, fixed point iterations and Newton’s method [37,38].
The Moore-Penrose inverse is employed to conduct calculations. The null space components along with the basic (minimum
norm) solutions are taken into account, and—for the iterative schemes—amended termination criteria are developed. Then,
the origins of non-uniqueness of accelerations and Lagrange multipliers are analyzed. A special case, when accelerations are
unique despite the presence of load-dependent friction in some joints is considered separately. Finally, the unit-sensitivity of
frictional system models is discussed. It ought to be stressed that the previous results regarding non-uniqueness of motion,
described in [32], were obtained under the assumption that redundant constraints are being eliminated, hence different
friction forces and different accelerations resulted from the arbitrary choice of eliminated constraints. In this paper, redun-
dant constraint equations are preserved in the mathematical model of the system. Moreover, multibody systems with joint
friction that does not depend on normal joint loads are separately investigated.
The paper is concluded with an illustrative example and a discussion of the obtained results and possible directions for
further research. Two short appendices with a detailed derivation of some of the utilized equations are also included.
M. Wojtyra, M. Pekal
˛ and J. Fraczek
˛ / Mechanism and Machine Theory 153 (2020) 103999 3

2. Overconstrained multibody systems without joint friction

2.1. Equations of motion

We will consider a multibody system, built of rigid bodies, described by n absolute Cartesian coordinates q (called also
reference point coordinates) [1,2]. The absolute coordinates of body i (in a planar mechanism) form a vector qi = [rTi ϕi ]T ,
where ri = [xi yi ] represents the position of the local reference frame π i origin with respect to the global frame π 0 , and
T

ϕ i is the angle of the local frame π i rotation with respect to the global frame π 0 . Usually, for a system composed of b
bodies, the vector of absolute coordinates is defined as q = [qT1 qT2 . . . qTb ]T , however, in this study, the coordinates
will be ordered differently (see Section 3.1 for explanation):
 T
q = rT1 rT2 ... rTb ϕ1 ϕ2 ... ϕb . (1)
We assume that—due to the presence of kinematic pairs—holonomic and scleronomic (stationary) kinematic constraints
K (q ) = 0mK ×1 are imposed on the multibody system. When some degrees of freedom of the system are kinematically
driven, the kinematic constraints are accompanied by time-dependent driving constraints D (q, t ) = 0mD ×1 . Together, the
imposed constraints constitute a set of m = mK + mD scalar algebraic equations [1,2]:
 
K (q )
(q, t ) = = 0m×1 . (2)
D (q, t )
The main consequence of selecting dependent Cartesian coordinates is the uniform treatment of all kinematic pairs: each
one is represented by a separate subset of kinematic constraint equations. Similarly, each actuator is represented by a driving
constraint. In this study we assume that the set of constraints may be redundant, however, the constraints are consistent,
i.e., they do not impose contradictory restrictions on coordinates q (there exists at least one vector q satisfying Eq. (2)).
It should be noted that in the case of spatial mechanisms described by absolute coordinates, the orientation of a body
may be represented by a non-minimal set of coordinates, e.g., by four Euler parameters. In such a case, additional, purely
mathematical constraints are formulated (e.g., the Euler parameters normalization constraint) to express dependencies in the
redundant set of rotational coordinates [1,2,39,40]. In this text, to maintain a uniform physical interpretation of constraints
and constraint reactions, it is assumed that a minimal parameterization of rotation is used (e.g., three Euler angles [41,42])
and additional, solely mathematical, constraints are not needed.
By differentiating the constraint equations (2) with respect to time, we formulate constraints for velocities and accelera-
tions:
   
Kq 0
˙ = q q˙ + t = q˙ + = 0m×1 , (3)
Dq tD


¨ = q q̈ −  = 0m×1 , (4)
where q is the constraint Jacobian matrix and
  
− Kq q˙ q˙
=   q
. (5)
− Dq q˙ q˙ − 2tq
D
q˙ − Dtt
q

Equations of motion for a constrained multibody system can be formulated in the following form [1]:
Mq̈ + Tq λ = Q(q, q˙ , t ), (6)
where M is a symmetric and positive definite mass matrix (hence, invertible), Q denotes the vector comprised of the
velocity-dependent inertia terms as well as the external forces, and λ is the vector of Lagrange multipliers which—in the
case of kinematic constraints—represent the magnitudes of the reaction forces in kinematic pairs, and—in the case of driving
constraints—actuating forces or torques.
Note that in the spatial multibody dynamics, the mass matrix is singular when more than six coordinates are used
to define the position and orientation of the rigid body. For example, this is the case when Euler parameters or natural
coordinates are used [1,3,27]. For the reasons explained earlier, in this study, we decided to use coordinates that do not
inherently require formulating additional constraint equations. This justifies the assumed invertibility of the mass matrix.
Constraints at the acceleration level (Eq. (4)) can be appended to the equations of motion (Eq. (6)) to compose a set of
n+m mixed differential-algebraic equations of index one [1]:
    
M Tq q̈ Q
= . (7)
q 0 λ 
Usually, some stabilization methods have to be used to take into account constraints at the position and velocity levels,
represented by Eqs. (2) and (3), respectively [43]. For example, the Baumgarte stabilization technique [12,44,45] can be
utilized. However, these issues are not essential for the present study, and will not be further discussed.
4 M. Wojtyra, M. Pekal
˛ and J. Fraczek
˛ / Mechanism and Machine Theory 153 (2020) 103999

A variety of numerical procedures can be applied to integrate the equations of motion (7). At every integration time step,
the set of linear equations (7) is solved to find accelerations q̈ and Lagrange multipliers λ (instantaneous values of t, q, and
q˙ are known). Then, to find velocities q˙ as well as coordinates q in the next time step, the accelerations are integrated.

2.2. Pseudoinverse-based handling of redundant constraints

The presence of redundant constraint equations makes the constraint Jacobian q a rank-deficient matrix in every con-
figuration of the multibody system [1] (r = rank(q ) < m). Consequently, in Eq. (7), the coefficient matrix is also rank-
deficient. As a result, some components of the vector built of accelerations q̈ and Lagrange multipliers λ cannot be uniquely
determined. To solve Eq. (7), methods able to manage singular matrices have to be employed.
The Moore-Penrose inverse A† (sometimes referred to as a pseudoinverse) of any matrix A (which might be rank-deficient
or rectangular) is a unique matrix that simultaneously satisfies four conditions [20]:
AA† A = A, ( 1◦ )
A† AA† = A† , ( 2◦ )
 † T (8)
AA = AA† , ( 3◦ )
 † T
AA †
= A A. ( 4◦ )
To solve a system of linear equations, Ax = b, the Moore-Penrose inverse of A can be utilized. The general solution is
calculated as a sum of a vector xMP , obtained with the use of the Moore-Penrose inverse, and a null space component xNS
[20]:
 
x = xMP + xNS = A† b + I − A† A h, (9)

where I is the identity matrix and h is an arbitrary vector (mind that the columns of matrix [I − A† A] span the null space
of A). If equations are consistent (if b belongs to the column space of A, i.e., if AA† b = b), then the obtained solutions
√ are
exact, otherwise, they are the least squares solutions [20]. Note that xMP is the minimum norm solution (xMP = min xT x ).
x
For redundantly constrained systems, the matrix of coefficients in Eq. (7)—denoted hereafter as A—is square and rank-
deficient. Its Moore-Penrose inverse can be computed as [46,47,25]:
 †  
M Tq M−1 − M−1 Tq C† q M−1 M−1 Tq C†
A† = = , (10)
q 0 C† q M−1 −C†

where square and rank-deficient matrix Cm×m is defined as C = q M−1 Tq (mind that positive-definite matrix M is invert-
ible).
Eq. (10) may be used to calculate the product:
    
† I M−1 Tq I − C† C I 0
A A= = . (11)
0 C† C 0 C† C

Note that the equality M−1 Tq (I − C† C ) = 0, exploited in Eq. (11), was inferred from the fourth of conditions (8).
In the presence of redundant constraints, Eqs. (9), (10) and (11) can be used to solve Eq. (7) for Lagrange multipliers and
accelerations:
      
q̈ M−1 − M−1 Tq C† q M−1 M−1 Tq C† Q 0 0
= + h. (12)
λ C† q M−1 −C†  0 I − C† C
Eq. (12) proves that the solution for accelerations q̈ is the same for every selection of vector h, hence it proves
the uniqueness of the solution for accelerations. Since non-zero elements are present in matrix [I − C† C], a solution for the
vector of Lagrange multipliers λ is non-unique.
Most often, only the first component of Eq. (12) is computed during simulations and the remaining solutions are ignored
(i.e., h = 0 is substituted). As a result, from all feasible vectors λ, the minimum norm one is chosen. It should be emphasized
that the minimum norm solution results from purely mathematical conditions and usually has no well-founded physical
interpretation.
It should be pointed out, however, that matrix [I − C† C] may have some rows consisting only of zeros. In this case, the
solution is unique for the elements of vector λ that correspond to these zero rows. The bottom equations of Eq. (12) can
T
be reordered in a way that the unique multipliers λU are placed before the non-unique ones λN (λ = [λUT λTN ] ). Then,
Eq. (12) can be rewritten in the following form (to be exploited in Section 4.2):
⎡ ⎤ ⎡ ⎤
q̈   0
Q
⎣λU ⎦ = A†reord + ⎣ 0 ⎦h . (13)

λN N

where Areord is the rearranged matrix A† and N consists of non-zero rows of [0 I − C† C].
M. Wojtyra, M. Pekal
˛ and J. Fraczek
˛ / Mechanism and Machine Theory 153 (2020) 103999 5

To prove the uniqueness of the solution for accelerations, the invertibility of the mass matrix M is exploited in Eq. (10).
As it was signalized in Section 2.1, the mass matrix is singular when, in spatial systems, more than six coordinates are
used to define the position and orientation of a rigid body or when null mass and inertia tensor is assigned to a body
[1,3,27,48]. The problem of the uniqueness of accelerations for systems with singular mass matrices was investigated in
[49] and revisited in [27] (note that in [27] index-1 formulation, matching exactly our Eq. (7), is considered). Both studies
allow for rank deficient constraint Jacobian matrix q , i.e., do not exclude redundant constraints. In Refs. [49] and [27] it is
proven that a unique solution for vector q̈ exists if and only if:
 
rank M Tq = n, (14)
where n is the number of coordinates of vector q (M is an n×n matrix).
Consequently, the findings of this paper can be extended to the multibody systems with singular mass matrices that
fulfill condition (14).

3. Unit-sensitivity of the reaction solution

3.1. Problem formulation

The problem of unit-sensitivity associated with the use of the Moore-Penrose inverse was studied mainly in the context
of redundant robots kinematics and control [30,36], and not much attention was paid to the problem of joint reactions
calculation. In [16], it was pointed out that when employing the Moore-Penrose inverse, the calculated joint reactions may
be influenced by the selection of the physical units utilized in the model. This issue was further investigated in [28]. In
this section, the problem of unit sensitivity, which is only briefly outlined in [16], is thoroughly examined—some concepts
introduced in [28] are reformulated and extended.
If physical units used in the model are changed (e.g., when the imperial units are used instead of the metric units), the
numerical form of equations of motion (Eq. (7)) changes. In further considerations, it is assumed that some generic multi-
body simulation code, which exploits the Moore-Penrose inverse, remains exactly the same (i.e., uses the same formulas—
e.g., formulas like these presented in Appendix B), but is fed with data expressed by different numbers since physical units
are changed. This new numerical representation of physically the same multibody system is studied in this section. In par-
ticular, the interest is concentrated on determining the new relationships between dependent constraints, obtained after the
change of units (the dependencies are expressed in terms of coefficients of the linear combination that pertain to the rows
of the constraint Jacobian). This will, in turn, allow finding the relationships between the accelerations q̈ and—especially—
Lagrange multipliers λ (calculated for h = 0) obtained before and after the change of units.
We start by assuming that Lagrange multipliers, which correspond to the particular (scalar) constraint equations in multi-
body modeling, represent either reaction forces or moments [2] and, therefore, are expressed by different physical units. In
the same way, generalized coordinates have diverse physical units. For further considerations, Eq. (7) is reorganized in such
a way that the equations describing linear motion for all bodies precede the equations representing angular motion. Next,
constraint equations are reordered, so that equations that correspond to reaction forces are written before the equations
T
that correspond to moments of reaction,  = [T YT ] . Analogously, absolute coordinates—along with their derivatives—
T
are partitioned to ensure that the linear quantities precede the angular quantities: q̈ = [r̈T ϕ̈T ] (r and ϕ contain, respec-
tively, linear and angular coordinates of body-fixed frames with respect to the global reference frame). Finally, to match the
reorganized equations, the Lagrange multipliers are separated into forces λF and moments λM . After these rearrangements,
Eq. (7) reads:
⎡ ⎤⎡ ⎤ ⎡ 2 ⎤
rT [−] YTr [A/L] Q[FML/T ]
2
m[M] 0 r̈[L/T ]

⎢ 0 J[ML
2
/A2 ]
ϕT [L/A] YTϕ [−] ⎥ ⎢ ϕ̈[A/T ] ⎥
2
⎢ Q[MML /T A]
2 2

⎢ ⎥⎢ ⎥ ⎢ ⎥,
⎣ [−]
r ϕ [L/A]
0 0 ⎦ ⎣ λF 2 ] ⎦ = ⎣
[ ML/T
[L/T 2 ] ⎦ (15)

Y[ϕ−] λ[MML /T A]
2 2
Y[rA/L]
2
0 0 Y[A/T ]
where m is a diagonal matrix composed of masses of bodies, J is a matrix containing moments and products of inertia. The
physical units, indicated in the square brackets, are mass (M), time (T), length (L) and angle (A).

3.2. Outcomes of the change of physical units

Outcomes of changing the length units will be considered since such a change is often encountered in engineering prac-
tice (change of mass units is also quite common but trivial in the context of Eq. (15)). It may be demonstrated that, if the
length units are multiplied by the factor u (e.g., u = 1 for meters and u = 10 0 0 for millimeters), then the numerical values
accommodated in matrices and vectors of Eq. (15) are changed in the following way:
⎡ ⎤⎡ ⎤ ⎡ ⎤
m 0 rT u−1 YTr r̈ uQF
⎢ 0 u2 J uϕT YTϕ ⎥⎢ ϕ̈
⎥ ⎢ u2 QM ⎥
⎣ r u ϕ 0 0
⎦⎣ λ ⎦ = ⎣ u  ⎦, (16)
F
u−1 Yr Yϕ 0 0 λM Y
6 M. Wojtyra, M. Pekal
˛ and J. Fraczek
˛ / Mechanism and Machine Theory 153 (2020) 103999

 
where r̈ , ϕ̈ , λF , λM stand for the new numerical values of the unknowns.
T
Let us select a maximal subset of independent equations  = [T YT ] from the full set of constraints . Now, assume
that equation  does not belong to the subset , thus may be considered redundant. The Jacobian matrix row related to
constraint  may be presented as a linear combination of the rows corresponding to  (with coefficients ηT = [ηT ηTY ]):
 
  q    
q = η q = η η
T T
= ηT q + ηTY Yq = ηT r
T
Y
ϕ + ηTY Yr Yϕ =
Yq (17)
   
= ηT r + ηTY Yr ηT ϕ + ηTY Yϕ = r ϕ .
As it follows from Eq. (16), if  is an equation of type  (is associated with a reaction force), then—once the length units
are changed by the factor u—the corresponding row of the Jacobian matrix becomes q  = [r u ϕ ]. Mind that, since
the equations belonging to the set  are also influenced by the change of units, a sequence of equalities may be written:
      
q = r u ϕ = ηT r + ηTY Yr u ηT ϕ + ηTY Yϕ = ηT r uϕ +
 
    q  (18)
+uηTY u−1 Yr Yϕ = ηT q  + uηTY Yq  = ηT uηTY 

= ηT q .
Yq
Eq. (18) indicates that—after changing the units of length by the factor u—coefficients ηT = [ηT u ηTY ] may be used
  
to present row q as a linear combination of rows of q . Hence, η represents the new relationship between dependent
T

constraints. A similar way of reasoning shows that the new coefficients are ηT = [u−1 ηT ηTY ] when the constraint equation
 is of type Y (i.e., is associated with a reaction moment).
T T
It is worth noting that [r̈T ϕ̈T λFT λMT ] =[u r̈T ϕ̈T u λTF u2 λTM ] is one of many solutions of Eq. (16). The
T
acceleration solution q̈ = [r̈T ϕ̈T ] , obtained after changing the units, although different in numbers, describes exactly
T
the same physical motion as the solution q̈ = [r̈T ϕ̈T ] , found before changing the units. Moreover, the reasoning from
Section 2.2 remains valid—the acceleration solution is unique.
T
To study non-unique Lagrange multipliers, let us examine a system with constraints  = [T YT ] , i.e., a system
possessing exactly one redundant constraint equation. Let the Lagrange multipliers obtained for a non-overconstrained sys-
T T
YT ] ) be denoted as λ = [λ0
0
tem (subjected to  = [T T T
λ0Y ] . In the currently considered overconstrained system
T
described by Eq. (15), one of the infinitely many solutions for Lagrange multipliers is λ0 = [λ0 T λ0Y
T
0] . The general-

ized reactions can be parameterized using the Lagrange multiplier (hereinafter referred to as p) related to the constraint .
Eq. (17) shall be utilized to obtain the following:
⎡ ⎤
λ0
 ⎢ ⎥
Tq λ = Tq YTq Tq ⎣ λ0Y ⎦ = Tq λ0 + YTq λ0Y + Tq ( p − p) =
0
 T 
= q λ0 + YTq λ0Y + Tq p − q η + YTq ηY p =
T
(19)
⎡ ⎤
λ0 − pη
     ⎢ ⎥
= q
T
λ0 − pη + YTq λ0Y − pηY + Tq p = Tq YTq Tq ⎣ λ0Y − pηY ⎦.
p
T
Eq. (19) indicates that—for any selection of parameter p—Lagrange multipliers λ( p) = [ (λ0 − pη )T (λ0Y − pηY )
T
p]

fulfill Eq. (15). Among all feasible solutions to Eq. (15), the one obtained with the Moore-Penrose inverse is characterized by
the smallest norm. Due to the uniqueness of acceleration q̈, the minimum norm requirement can be imposed on Lagrange
multipliers λ only. Therefore, in the case of the Moore-Penrose solution, parameter p satisfies the necessary condition for a
local minimum:

d d  
λ( p)T λ( p) = 0 ⇔ λ( p)T λ( p) = 0. (20)
dp dp
T
Substituting λ( p) = [(λ0 − pη )T (λ0Y − pηY )
T
p] into Eq. (20) yields:

T T
λ0 η + λ0Y ηY
p= . (21)
1 + ηT η + ηTY ηY
Now, let us consider the same multibody system after changing the length units by factor u. The ba-
 T
sic solution λ0 is now substituted by λ0 = [u λ0 T u2 λ0Y
T
0] . If constraint  is of type , then coeffi-

cients η change to η = [ηT
T
u ηTY ] . Therefore, the new Lagrange multipliers can be parametrically presented as
M. Wojtyra, M. Pekal
˛ and J. Fraczek
˛ / Mechanism and Machine Theory 153 (2020) 103999 7

T
λ ( p ) =[(u λ0 − p η )T (u2 λ0Y − p u ηY )
T
p ] . Now, the minimum norm condition yields the following value of pa-

rameter p that matches the Moore-Penrose solution:
 
T T
u λ0 η + u2 λ0Y ηY
p = . (22)
1 + ηT η + u2 ηTY ηY

Comparison of Eqs. (21) and (22) shows that p and p are both physically and numerically different. Parameter p is,
actually, one of the Lagrange multipliers. Therefore, it is clear that after changing the units, the Lagrange multipliers λ
(calculated for h = 0) are physically diverse.
It should be noted, however, that if ηY = 0, then p = up; it means that p is physically equivalent to p. Thus, as long
as constraint  depends on constraints  only, changing the units has no influence on the physical interpretation of the
reaction solution.
It can be shown that when constraint  is of type Y, then—after changing the length units—the minimum norm condition
leads to the following:
 
T T
u2 u−2 λ0 η + λ0Y ηY
p = . (23)
1 + u−2 ηT η + ηTY ηY

Also, in this case, parameter p is physically different from parameter p. Similarly, it can be shown that when  depends
solely on Y (i.e., when η = 0), then p is physically equivalent to p (in this case p = u2 p).
Similar reasoning could be repeated for angular units—the unit-dependency of the solutions would be observed. Note
that change in mass units uniformly scales Lagrange multipliers λF and λM whereas the change in time units uniformly
scales accelerations r̈ and ϕ̈ together with multipliers λF and λM .

4. Overconstrained multibody systems with joint friction

So far, frictionless multibody systems were considered. The Moore-Penrose inverse may also be employed in the process
of solving equations of motion of frictional systems, which will be discussed in this section. Special attention will be paid
to the problem of solution uniqueness.

4.1. Models of joint friction

The model of friction is always a compromise between various objectives; the tradeoff takes into account the range of
captured frictional effects, the expected fidelity, the possibilities for identification of parameters (see [50]), the mathematical
complexity, the effectiveness of numerical calculations and perhaps other factors. Quite often, relatively simple models of
frictional contact are used in multibody calculations, especially when they are intended for control purposes. In this ap-
proach, the micro-scale contact phenomena are not directly represented in their full complexity. As a result, these models
are computationally effective, and a reasonably small number of parameters need to be identified. An overview of models
of friction used in multibody simulations can be found in [33,34]. In these models, it is commonly assumed that physical
friction force or torque in a joint is a nonlinear function of the joint relative velocity and instantaneous configuration. In the
case of so-called dynamic models (e.g., the Dahl or the LuGre models), friction is modeled by means of differential equations
and depends also on additional state variables.
For this study, models of joint friction can be divided into two groups. In the first group, it is assumed that friction
forces do not depend on the normal joint loads. This simplifying assumption is justified when preloads of bearings or forces
in sealings dominate in frictional kinematic pairs. Models of this group are frequently used in robotics to represent friction
in actuators [51]. In a multibody model, generalized coordinates q and their derivatives are used to calculate joints’ config-
urations and relative velocities, so that physical friction forces can be calculated (at that step, the friction model with its
specific parameters is utilized). Then, physical friction forces are transformed to generalized forces. The detailed calculations
may be complex, nevertheless, generalized friction force can be expressed as a function of only two variables q and q˙ (the
other quantities/parameters are constant): F = F(q, q˙ ).
In the second group of models, it is assumed that friction forces depend explicitly on the normal joint loads. In such
a case, the model of friction in joint establishes the relationship between the normal and tangential force for given fric-
tional properties, relative velocity, joint type, and its instantaneous configuration as well as geometry (features of the de-
sign, dimensions, shapes of contacting surfaces, etc.). In a multibody model, the calculation of generalized friction forces is
conducted in three steps, as proposed in the seminal work [35].

(1) The generalized joint reactions (qi (q, t )) λ are used to compute physical normal reactions in every joint i.
T

(2) The friction model (the Coulomb or the LuGre model, for example) is used to determine the physical friction force in
every joint i.
(3) The physical friction forces are transformed into generalized friction forces.
8 M. Wojtyra, M. Pekal
˛ and J. Fraczek
˛ / Mechanism and Machine Theory 153 (2020) 103999

Calculations are usually complex, however, generalized friction force can be expressed as a function of Lagrange multi-
pliers λ, coordinates q and their derivatives q˙ : F = F(λ, q, q˙ ). It should be emphasized that F may be a nonlinear function
of λ.

4.2. Solvability of reactions and accelerations in frictional systems

4.2.1. Equations of motion for frictional systems


In the multibody modeling technique, the generalized friction forces are treated as supplementary external forces and
added to generalized force Q. Let us discuss the case of friction not dependent on joint loads first. Equations of motion
(7) can be rewritten as:
    
M (q ) Tq (q, t ) q̈ Q(q, q˙ , t ) + F(q, q˙ )
= . (24)
q (q, t ) 0 λ (q, q˙ , t )
Similarly to Eq. (7) for frictionless systems, Eq. (24) for frictional systems is linear in unknown accelerations q̈ and La-
grange multipliers λ. If redundant constraints are present, the leading matrix is singular, due to rank-deficiency of constraint
Jacobian q . Note that all considerations of Section 2.2 remain valid. Particularly, it can be proven that the solution for ac-
celerations is unique, whereas Lagrange multipliers, and thus joint reactions, cannot be determined uniquely.
In the more complicated case of friction dependent on normal joint reactions, Eq. (7) takes the form:
     
M (q ) Tq (q, t ) q̈ Q(q, q˙ , t ) + F λ, q, q˙
= . (25)
q (q, t ) 0 λ (q, q˙ , t )
Note that Eq. (25) is only superficially similar to Eq. (24). Since multipliers λ are present on the right-hand side of
Eq. (25), and F is nonlinear in λ, the equations of motion are no longer linear with respect to Lagrange multipliers. As
a consequence, the uniqueness of accelerations in the presence of redundant constraints cannot be guaranteed. On the
contrary, it can be shown that, when the considered system is overconstrained, Eq. (25) may not have unique solutions for
both accelerations and Lagrange multipliers. To prove this, it is enough to provide an appropriate example. This will be done
in Section 5. The non-uniqueness of solutions for q̈ and λ may be also inferred from analysis of the process of solving the
equations.
It ought to be stressed that one of the possible outcomes of the non-uniqueness of the solution is the possibility of
encountering discontinuities on accelerations during the simulation of motion. This follows directly from the fact that, since
at every time step multiple solutions for accelerations may exist, there is no guarantee that, in two consecutive time steps,
two solutions close to each other are obtained. In practical calculations, this effect may be difficult to detect because it can
be alleviated by the way of conducting calculations, especially when the solution from the previous time step is selected as
the initial guess for the current time step. Nevertheless, this numerically useful approach neither leads to a mathematically
unique solution nor a physics embedded solution.
In this study, we assume that the friction level is not high enough to observe Painlevé-like paradoxical situations [52,53].
In other words, we assume that some solutions to Eq. (25) exist.
Numerical methods are usually employed to solve nonlinear Eqs. (25) for q̈ and λ. Several different methods may be
used. Let us discuss two of them: fixed point iterations and Newton’s method [37,38]. Note that when solving for the
unknowns, coordinates q, velocities q˙ , and time t are known quantities, hence they will be omitted when showing functional
dependencies in Eq. (25), and only the dependence of F on λ will be shown.

4.2.2. Fixed point iterations


For fixed point iterations, Eq. (25) can be converted to the following form (due to the presence of redundant constraints,
the leading matrix in Eq. (25) is singular, thus the Moore-Penrose inverse is employed—see Eq. (12)):
       
q̈ M−1 − M−1 Tq C† q M−1 M−1 Tq C† Q+F λ 0 0
= + h, (26)
λ C† q M−1 −C†  0 I − C† C
where h is an arbitrary vector, usually set to h = 0. For this study, however, we will allow for nonzero h.
T
For brevity, matrix A† , defined in Eq. (10) as well as vector of unknowns x = [q̈T λT ] and nonlinear function b(x ) =
T
[(Q + F(λ ))T T ] will be further used when appropriate. With these symbols, Eq. (26) can be rewritten in a brief form,
suitable for iterations:
   
xi+1 = A† b xi + I − A† A h. (27)
The fixed point iteration process is conducted as follows.

(A) An initial approximation of x, denoted as x0 , is assumed, matrices A† and (I − A† A )—constant during iterations—are
calculated, and vector h is arbitrarily selected.
(B) Nonlinear function b(xi ) is calculated for the current approximation of x.
(C) Eq. (27) is used to calculate xi +1 , i.e., new approximation of x, and the iteration counter is updated (i := i+1).
M. Wojtyra, M. Pekal
˛ and J. Fraczek
˛ / Mechanism and Machine Theory 153 (2020) 103999 9

Steps (B) and (C) are repeated until a certain termination criterion is met.
To discuss the termination criterion, let us use Eq. (27) to calculate the difference between two consecutive solutions:
 
xi+1 − xi = A† b(xi ) − b(xi−1 ) . (28)

Since A† is constant and bounded, whenever the sequence b(xi ) converges, the sequence of solution approximations xi
converges as well. However, due to matrix A† rank deficiency, the difference (xi +1 – xi ) may be close to or equal zero when
the difference (b(xi ) − b(xi−1 )) is large (consider, e.g., this difference equal to any vector from the null space of A† ). Thus,
the usual termination criterion that exploits the difference between two consecutive solutions (xi +1 – xi ) should be replaced
by a criterion that monitors the difference (b(xi ) − b(xi−1 )) and stops iterations when the change of b(x) is sufficiently
small. Note that when matrix A† is composed of large numbers, sufficiently small values of (b(xi ) − b(xi−1 )) may not result
in acceptably small values of the difference (xi +1 – xi ). In such a case, the iterations ought to be continued until satisfactory
accuracy is achieved—a “failsafe” stop criterion should be composed of two stages. The key point is that, in the case of
rank-deficient matrix A, the stop criterion for (xi +1 – xi ) cannot be checked alone, and must be preceded by checking
the convergence of (b(xi ) − b(xi−1 )). Moreover, to avoid comparing vector elements of different physical units in the stop
criteria, some normalization that enables a direct comparison of different physical quantities could be introduced [30,54].
It would affect the minimum norm solution and could also influence the number of required iterations. Nevertheless, as
it will be shown in further paragraphs, the solution would still not be unique (that is why we decided not to introduce
normalization to our formulas). It is also worth noting that the choice of vector h does not affect Eq. (28).
Several other issues should be pointed out. Firstly, the Moore-Penrose inverse A† is calculated just once, as it does not
change across iterations. Secondly, usually only the first term of Eq. (27) is calculated (i.e., h = 0 is substituted), thus
the minimum norm solution is arbitrarily chosen. Note that, as it was shown in Section 3, physical interpretation of the
minimum norm solution is questionable. Thirdly, as it is clear from the rightmost term of Eq. (26), the choice of vector h
does not influence directly vector q̈ calculated using Eq. (27), however, it does not guarantee that the acceleration solution
is unique. Note that friction force F(λ), and hence b(x), changes during iterations. Consequently, at each iteration step,
accelerations depend on the current approximation of λ. Since Lagrange multipliers λ are non-unique (and depend on the
choice of h), accelerations q̈ are non-unique as well.
It should be carefully checked whether a solution provided by fixed point iterations with the use of the Moore-Penrose
inverse fulfills the original Eq. (25). Let us assume that, for some arbitrarily selected h = h∗ , the iterations of Eq. (27) are
convergent to a solution x∗ = lim xi , hence:
i→∞
 
x = A b ( x ) + I − A A h∗ ,
∗ † ∗ †
(29)

   
b ( x∗ ) = b A† b ( x∗ ) + I − A† A h∗ . (30)

Premultiplying Eq. (29) with A and acknowledging the fact that A(I − A† A ) = 0, we obtain:
Ax∗ = A A† b ( x∗ ). (31)
Note that Eq. (31) differs from Eq. (25) since AA† = I. The difference d between right-hand sides of Eq. (25) and
Eq. (31) is:
 
d = I − AA† b ( x∗ ). (32)

By utilizing the knowledge of the structure of matrices A, A† and vector b, it is possible to prove that d = 0, and thus,
that x∗ is indeed a solution of Eq. (25). The proof details are presented in Appendix A.
It should be pointed out that for a different choice of h, namely h = h∗∗ = h∗ , iterations will not converge to x∗ (x∗
combined with h∗∗ do not fulfill Eq. (30)). Nevertheless, a different solution x∗∗ = x∗ , that corresponds to h∗∗ , may be
found. Obviously, such a solution also fulfills the original Eq. (25). As it was mentioned earlier, the choice of h directly
influences the multipliers λ, and thus the calculated friction force F(λ), which in turn results in a change in the calculated
accelerations q̈. As a consequence, both accelerations q̈ and multipliers λ are affected by the choice of h.
Since—in the case of redundant constraints presence in a multibody system with joint friction—multiple solutions for
reaction forces (represented by λ) and motion (represented by q̈) may be found, all results of simulations can be regarded
as dubious.
There is, however, one important exception. In a special case, when friction forces depend solely on the multipliers λU
that are identified as unique when a frictionless system is analyzed, Eq. (26) and the corresponding iteration scheme of
Eq. (27) may be rewritten in a form similar to Eq. (13):
⎡ ⎤ ⎡ ⎤
q̈i+1   i  0
⎢ i+1 ⎥ Q + F λ
⎣λU ⎦ = Areord + 0 ⎦h .

† U
(33)

λiN+1 N
It can be seen that for accelerations q̈ and the subset of multipliers λU , the iterative process, and hence the obtained
solution, is exactly the same for any choice of vector h. In fact, for these quantities, calculations are conducted in the same
10 M. Wojtyra, M. Pekal
˛ and J. Fraczek
˛ / Mechanism and Machine Theory 153 (2020) 103999

way as for non-overconstrained systems with joint friction, hence accelerations q̈ along with multipliers λU are uniquely
solvable (see [35]). Note that this observation generalizes similar findings reported in [32], where the redundant constraints
were eliminated rather than preserved in the mathematical model of the system.

4.2.3. Newton’s method


In Newton’s method, Eq. (25) is rearranged to the following form (since during the iterations q, q˙ and t are treated as
known constant parameters, functional dependences on these quantities are not shown):
     
  M Tq q̈ Q+F λ
G q̈, λ ≡ − = 0. (34)
q 0 λ 
T
Then, partial derivatives of the left-hand side of Eq. (34) with respect to the vector of unknowns x = [q̈T λT ] are
calculated to obtain the Jacobian matrix:
  
M Tq − Fλ λ
Gx ( x ) = . (35)
q 0
Usually, the iteration step for Newton’s method is divided into two sub-steps: the first one involves solving a set of linear
equations for an auxiliary vector s, and the second one consists in updating the approximate solution [37,38]:
Gx (xi ) s = −G(xi ), (36)

xi+1 = xi + s. (37)
Note that redundant constraints existence implicates rank deficiency of matrix q . Consequently, matrix Gx is singular. As
a result, the classical Newton’s method, that requires invertibility of matrix Gx , cannot be used. Instead, the Moore-Penrose
inverse might be utilized during iterations. Hence, the first sub-step of the iteration scheme may be formulated in such a
way (the second sub-step remains unchanged):

s = −G†x (xi )G(xi ). (38)


Newton’s iteration process is conducted as follows.

(A) An initial approximation x0 is assumed and the iteration counter is initiated (i := 0).
(B) Eqs. (34) and (35) are used to calculate G and Gx , respectively, for the current approximation xi .
(C) Eqs. (38) and (37) are employed to calculate new approximation xi +1 , and the iteration counter is updated (i := i+1).

Steps (B) and (C) are repeated until xi fulfills Eq. (34) with satisfying accuracy.
Usually, the termination criterion checks whether the difference between two consecutive solutions (i.e., s) is below a

certain limit. However, due to rank deficiency of matrix Gx , vector s may be close to zero when vector G(xi ) is large (similar
observation was made in the case of fixed point iterations). That is why, in the termination criterion, the magnitude of G(xi )
ought to be checked first, and then the termination should be confirmed by checking whether s is small enough.
It should be pointed out that matrix Gx is a function of λ, thus it changes across iterations. As a result, the Moore-Penrose
inverse—needed in step (C)—should be repeatedly calculated. This diminishes the efficiency of numerical calculations. Note
that in the nonredundant case it is not necessary to invert any matrix; less expensive operation of solving linear equations
set is performed.
As we know, in the case of redundant constraints existence, solution s of Eq. (36) is non-unique. The Moore-Penrose
inverse is employed (in Eq. (38)) to find a particular solution. Formally, at that step of iterations, we could consider a
general solution in the form:
 
s = −G†x (xi ) G(xi ) + I − G†x (xi ) Gx (xi ) h, (39)
with arbitrarily selected vector h. It should be noted, however, that for convergence of the iterations (see Eq. (37)) it is
absolutely necessary that s tends to zero whenever G(xi ) tends to zero (i.e. when xi tends to a solution x∗ ). Solutions found
using Eq. (38)—the minimum norm solutions—fulfill this requirement (mind that in the limit case equation Gx (x∗ ) s = 0 is

being solved). In Eq. (39), the term with h is large, even if G(xi ) is small. Thus, as the null space matrix (I − Gx Gx ) is non-
zero, it is guaranteed that no convergence is achieved for some h = 0. Consequently, h = 0 (adopted in Eq. (38)) is the only
reasonable choice.
The lack of choices of h does not mean that if iterations are convergent, then they converge to a unique solution. The
multiple solutions for λ are inherent for multibody systems with redundant constraints. It should be emphasized that the
iterations may converge to a solution that depends, in general, on the initial guess x0 . Note that a similar effect is observed
for iterative solutions of linear equation sets with a singular matrix of coefficients [55].
Finally, it should be emphasized that in both cases of iterations (fixed point and Newton’s), by selecting components
of vector h or selecting initial approximation x0 , it is possible to influence the outcome of computations. As a result, the
iterative processes can finish at different values of q̈ and λ which fulfill Eq. (25) with the desired accuracy.
M. Wojtyra, M. Pekal
˛ and J. Fraczek
˛ / Mechanism and Machine Theory 153 (2020) 103999 11

Table 1
Inertial properties and positions of bodies.

Masses and moments of inertia Instantaneous configuration


Body (m = 1 kg, l = 0.1 m) (l = 0.1 m, φ = π /4 rad)

1 m1 = 3m J1 = 2m1 l2 /3 r1 = [l l]T ϕ1 = φ
2 m2 = 9m J2 = 16m2 l2 /3 r2 = [6l 2l]T ϕ2 = 0
3 m3 = 3m J3 = 2m3 l2 /3 r3 = [9l l]T ϕ3 = φ
4 m4 = 9m J4 = 16m4 l2 /3 r4 = [4l 2l]T ϕ4 = 0

4.3. Unit-sensitivity in modeling of frictional systems

The issue of unit-sensitivity, which in the case of frictionless systems pertains to reaction solutions only, is more prob-
lematic in the case of modeling of frictional mechanisms. Let us consider the change of units in fixed point iterations. At
any iteration step, all considerations of Section 3.2 can be repeated for Eq. (25). Hence, if we start iterations form physically
the same state of the system, but due to the change of units described by different numbers, the calculated Lagrange multi-
pliers λ may be physically different. In the subsequent iteration step, friction force F (being dependent on newly calculated
multipliers λ) may be physically different from the analogous force calculated before the change of units. As the dependence
of F on λ hinges on the geometry of kinematic pairs, it is difficult to inspect the change of F in a general case. Neverthe-
less, in the subsequent iteration step, the changes of F resulting from the change of units may affect not only the Lagrange
multipliers λ but also the accelerations q̈. Consequently, after the change of units, the fixed point iteration process may
be conducted entirely differently—the obtained final results may represent completely different physics. The crucial point is
that, in the case of frictional systems, both reaction and acceleration solutions may be affected by the change of units.
In the case of Newton’s method, matrix Gx is different from matrix A used in fixed point iterations. Thus, outcomes of
Section 3.2 cannot be applied directly to Eq. (36). However, if we divide the generalized friction F into parts FF and FM
corresponding to forces and moments, respectively, the following can be written:
 [ML/T 2 ] 
F F
(FF )[λ−] (FF )[λA/L ]

Fλ = ⎡ ⎤ =
F M
. (40)
[ML2 /T 2 A]
FM λF (FM )[λL/A ]
(FM )[λ−]
⎣ ⎦ F M

λM
Now, by substituting Eq. (40) into Eq. (35), we can present matrix Gx in the form used in Eq. (15), to see that the units
of matrix Gx are the same as the units of matrix A. Hence, the observations made for fixed point iterations are valid for
Newton’s method as well. Again, both reaction and acceleration solutions may be affected by the change of units.

5. Example

5.1. Investigated mechanism

To exemplify the discussed problems, a planar mechanism shown in Fig. 1 is examined. It is built of four moving bodies
1 – 4 and the base 0. Four revolute joints (labeled A, B, C, and D), as well as two translational joints (K and L), connect parts
of the mechanism. Local reference frames are attached to the centers of mass of all bodies. The mechanism is described by
absolute coordinates stored in a vector, which consists of n = 12 elements (note that all linear quantities are placed prior
T
to the angular ones): q = [rT1 rT2 rT3 rT4 ϕ1 ϕ2 ϕ3 ϕ4 ] .
Each revolute and each translational joint is represented by two scalar constraint equations. Hence, constraints imposed
on the entire system are expressed m = 12 scalar equations (see Appendix B for details). The constraint Jacobian q , a
matrix of size 12×12, is rank deficient: rank(q ) = r = 11 (in the configuration given by φ = π /4). Note that the rank
deficiency is a result of the existence of redundant constraints. The mechanism has one degree of freedom.

Fig. 1. Overconstrained mechanism—bodies, kinematic pairs and reference frames.


12 M. Wojtyra, M. Pekal
˛ and J. Fraczek
˛ / Mechanism and Machine Theory 153 (2020) 103999

Table 2
Accelerations and Lagrange multipliers – different physical units and null space components.

Case Linear accelerations r̈ Angular accelerations ϕ̈

u = 1, h = 024 × 1 T
[3.26 –3.46 6.52 –6.92 3.26 –3.46 0.00 –6.92] m/s 2
[–33.58 0.0 –33.58 0.00]T rad/s2
u = 1, h = 5024 × 1 [3.26 –3.46 6.52 –6.92 3.26 –3.46 0.00 –6.92]T m/s2 [–33.58 0.0 –33.58 0.00]T rad/s2
u = 10, h = 024 × 1 [32.6 –34.6 65.2 –69.2 32.6 –34.6 0.00 –69.2]T dm/s2 [–33.58 0.0 –33.58 0.00]T rad/s2

Case Multipliers λ (forces) Multipliers λY (moments)

u = 1, h = 024 × 1 [–18.5 –26.8 –8.7 –7.2 49.9 48.3 –59.7 –68.0 0.0 27.8]T N [4.79 –4.79]T N m
u = 1, h = 5024 × 1 [–40.1 –48.3 –30.3 –28.7 28.4 26.8 –38.1 –46.4 0.0 27.8]T N [22.0 –22.0]T N m
u = 10, h = 024 × 1 [–456 –539 –359 –343 228 212 –326 –409 0.0 278]T dN [32.7 –32.7]T dN dm

The only external force that acts on the mechanism is gravity (with g = 10 m/s2 ). Table 1 lists the inertial properties of
the bodies and the instantaneous positions of the local reference frames (i.e., the current configuration of the mechanism).
At the considered time instant, body 1 rotates at the speed of φ˙ = 1 rad/s, while the other bodies move accordingly.

5.2. Unit-sensitive results

Equations of motion were assembled in the form of Eq. (16). To solve them for accelerations and multipliers, Eq. (9) was
used. Several different values of u and h were assumed. The obtained solutions are presented in Table 2. In all analyzed
cases, physically equivalent accelerations are calculated. Lagrange multipliers, however, are in each case different—their val-
ues depend on the selection of u and h. Findings of Sections 2.2 and 3 are confirmed by the obtained results.
It should be noted that the last two elements of λ (i.e., the multipliers corresponding to normal forces in translational
joints) are physically equivalent in all cases. It may be checked (utilizing, e.g., the methods proposed in [15]) that both these
components are unique. Thus, the selection of u and h does not influence the results gained for the multipliers proven to
be uniquely solvable.

5.3. Frictional system with unsolvable accelerations

Let us consider the same mechanism but with load-dependent friction present in all revolute joints. We assume that the
physical moment of friction forces in certain joint J is described by the Coulomb-like model—friction is proportional to the
magnitude of normal load:

τJ = −μρ R2Jx + R2Jy · sgnωJ , (41)

where RJx and RJy are components of physical joint reaction (normal load), μρ is a product of coefficient of friction and the
pivot radius (in this example, μρ = 0.02 m for all revolute joints). It should be stressed that the proposed model is severely
simplified but sufficient for the purposes of this study. The key point is that the moment of friction τ J is a nonlinear function
of reaction components.
In planar systems described by absolute coordinates, the relationship between Lagrange multipliers λ and physical re-
actions in revolute joints is quite straightforward. In our case it is simply RAx = λ1 , RAy = λ2 , …, RDy = λ8 . Similarly, the
transformation from the physical friction torque to the generalized friction is elementary. The vector of generalized friction
forces F(λ, q˙ ), for the considered mechanism, is described by:
 T
F12×1 = 01×8 τA − τB τB − τC τC + τD 0 . (42)
Equations of motion, derived in the form of Eq. (25), were solved—using fixed point iterations—for accelerations and mul-
tipliers at the considered time instant. The solution obtained for a frictionless system was used as an initial approximation
in all investigated cases. To show the multiplicity of solutions, different settings for vector h in Eq. (27) were used. Selected
results are presented in Table 3. In each case, the iterations were terminated when the norm of the difference between two
consecutive vectors b (i.e., b(xi ) − b(xi−1 ) ) fell below 10–12 (the distance between two consecutive solutions xi − xi−1
was also monitored—in each case, at the final iteration step, it was less than 10–11 ). As can be seen, for every choice of
vector h, calculated Lagrange multipliers, as well as moments of friction, are different. Moreover, in contrast to the previ-
ously considered systems without friction and with friction independent on normal loads, calculated accelerations are also
different in each case. It is noticeable, however, that—at least in this particular example—Lagrange multipliers and moments
of joint friction are much more sensitive to changes of h than accelerations.
It should be pointed out that two last components of λ —which were uniquely solvable in two previous examples—now
depend on the choice of h. Thus, the uniqueness property (verified for a frictionless multibody system) does not hold after
the introduction of load-dependent friction.
Then, equations of motion were solved using Newton’s method. This time, to show the multiplicity of solutions, different
settings for initial guess x0 were chosen (mind that, following the findings of Section 4.2.3, h = 0 was always substituted).
Selected results are presented in Table 4. In each case, the iterations were terminated when the norm of G(x) (see Eq. (34))
M. Wojtyra, M. Pekal
˛ and J. Fraczek
˛ / Mechanism and Machine Theory 153 (2020) 103999 13

Table 3
Accelerations, Lagrange multipliers and moments of joint friction – fixed point iterations.

Case Linear acceleration r̈ Angular acceleration ϕ̈

u = 1, h = 024 × 1 [3.57 –3.77 7.15 –7.55 3.57 –3.77 0.00 –7.55]T


m/s2
[–36.75 0.00 –36.75 0.00]T rad/s2
u = 1, h = 5024 × 1 [3.58 –3.78 7.15 –7.55 3.58 –3.78 0.00 –7.55]T m/s2 [–36.75 0.00 –36.75 0.00]T rad/s2
u = 1, h = 10024 × 1 [3.65 –3.85 7.31 –7.71 3.65 –3.85 0.00 –7.71]T m/s2 [–37.53 0.00 –37.53 0.00]T rad/s2
u = 10, h = 10024 × 1 [35.7 –37.7 71.5 –75.5 35.7 –37.7 0.00 –75.5]T dm/s2 [–36.75 0.00 –36.75 0.00]T rad/s2
u = 0.1, h = 10024 × 1 [0.79 –0.81 1.57 –1.61 0.79 –0.81 0.00 –1.61]T dam/s2 [–79.54 0.00 –79.54 0.00]T rad/s2

Multipliers λ (forces) Multipliers λY (moments)

u = 1, h = 024 × 1 [–44.1 –41.6 –33.4 –23.0 31.0 21.2 –41.7 –39.8 0.0 22.1] N T
[5.25 –5.25]T N m
u = 1, h = 5024 × 1 [–19.0 –22.8 –8.3 –4.1 56.1 40.0 –66.8 –58.7 0.0 22.0]T N [20.34 –20.34]T N m
u = 1, h = 10024 × 1 [3.6 –1.3 14.6 17.2 80.3 58.5 –91.3 –76.9 0.0 20.6]T N [36.83 –36.83]T N m
u = 10, h = 10024 × 1 [–518 –474 –410 –287 233 154 –340 –341 0.0 220]T dN [63.86 –63.86]T dN dm
u = 0.1, h = 10024 × 1 [40.7 54.6 43.1 55.2 57.2 44.2 –59.6 –44.8 0.0 –5.5]T daN [4.15 –4.15]T daN dam

Moments of joint fiction (τ = [τ A ,τ B , τ C , τ D ]T )

u = 1, h = 024 × 1 [–1.21 0.81 –0.75 –1.15]T N m


u = 1, h = 5024 × 1 [–0.59 0.18 –1.38 –1.78]T N m
u = 1, h = 10024 × 1 [–0.08 0.45 –1.99 –2.39]T N m
u = 10, h = 10024 × 1 [–140.4 100.2 –55.8 –96.3]T dN dm
u = 0.1, h = 10024 × 1 [–0.14 0.14 –0.14 –0.15]T daN dam

Table 4
Accelerations, Lagrange multipliers and moments of joint friction – Newton’s method.

Case Linear acceleration r̈ Angular acceleration ϕ̈

u = 1, x0 = 124 × 1 [3.57 –3.77 7.15 –7.55 3.57 –3.77 0.00 –7.55]T m/s2 [–36.75 0.00 –36.75 0.00]T rad/s2
u = 1, x0 = 5024 × 1 [3.58 –3.78 7.15 –7.55 3.58 –3.78 0.00 –7.55]T m/s2 [–36.75 0.00 –36.75 0.00]T rad/s2
u = 1, x0 = 10024 × 1 [3.64 –3.84 7.28 –7.68 3.64 –3.84 0.00 –7.68]T m/s2 [–37.39 0.00 –37.39 0.00]T rad/s2
u = 10, x0 = 10024 × 1 [35.7 –37.7 71.5 –75.5 35.7 –37.7 0.00 –75.5]T dm/s2 [–36.75 0.00 –36.75 0.00]T rad/s2
u = 0.1, x0 = 10024 × 1 [0.52 –0.54 1.05 –1.09 0.52 –0.54 0.00 –1.09]T dam/s2 [–53.32 0.00 –53.32 0.00]T rad/s2

Multipliers λ (forces) Multipliers λY (moments)

u = 1, x = 124 × 1
0
[–42.1 –40.1 –31.4 –21.5 33.0 22.6 –43.7 –41.3 0.0 22.1] N T
[6.44 –6.44]T N m
u = 1, x0 = 5024 × 1 [–18.7 –22.5 –8.0 –3.9 56.4 40.2 –67.1 –58.9 0.0 22.0]T N [20.51 –20.51]T N m
u = 1, x0 = 10024 × 1 [1.6 –3.6 12.5 14.9 78.0 56.7 –88.9 –75.2 0.0 20.9]T N [35.14 –35.14]T N m
u = 10, x0 = 10024 × 1 [–516 –473 –409 –286 234 155 –342 –342 0.0 220]T dN [71.99 –71.99]T dN dm
u = 0.1, x0 = 10024 × 1 [15.6 20.5 17.1 21.8 26.5 20.3 –28.1 –21.7 0.0 –0.8]T daN [1.79 –1.79]T daN dam

Moments of joint fiction (τ = [τ A ,τ B , τ C , τ D ]T )

u = 1, x0 = 124 × 1 [–1.16 0.76 –0.80 –1.20]T N m


u = 1, x0 = 5024 × 1 [–0.59 0.18 –1.39 –1.79]T N m
u = 1, x0 = 10024 × 1 [–0.08 0.39 –1.93 –2.33]T N m
u = 10, x0 = 10024 × 1 [–140.0 99.9 –56.2 –96.6]T dN dm
u = 0.1, x0 = 10024 × 1 [–0.05 0.06 –0.07 –0.07]T daN dam

became less than 10–12 (in each case, the distance between two consecutive solutions xi − xi−1 , at the final iteration step,
did not exceed 10–10 ). In accordance with expectations, for every selection of initial approximation x0 , obtained Lagrange
multipliers, moments of friction and—most importantly—accelerations are different.
Note that the solution obtained in the previous time step or the solution for a frictionless system could be considered a
more “natural” selection of the initial guess x0 . The initial values used in our calculations may look awkward, however, we
were trying to avoid making a false impression that there is one and only way to conduct simulations. In that way, it was
possible to emphasize the discussed uniqueness problems.
It can be seen that in either case, of fixed point iterations and Newton’s method, both accelerations and Lagrange mul-
tipliers were varying accordingly to changes in h or x0 . This confirms the claim that when load-dependent friction is taken
into account, the acceleration solution is no longer unique.
Finally, outcomes of the length unit change shall be commented on. As the results presented in Tables 3 and 4 prove, the
calculated accelerations, normal reactions, and friction torques are unit-dependent when fixed point iterations are employed
as well as when Newton’s method is used. This corroborates the findings of Section 4.3.

6. Conclusions and comments

The Moore-Penrose inverse can be utilized in the modeling of redundantly constrained multibody systems, i.e., systems
subjected to dependent constraints. However, modeling of such systems exhibits certain shortcomings that are inherently
14 M. Wojtyra, M. Pekal
˛ and J. Fraczek
˛ / Mechanism and Machine Theory 153 (2020) 103999

related to the rigid body assumption—the existence of redundant constraints results in non-uniqueness of joint reaction
forces and can also cause non-uniqueness of accelerations. Moreover, the calculated reactions (and—in the case of frictional
systems—also the accelerations) can be unit-sensitive.
It is known that—despite the non-uniqueness of the Lagrange multipliers—as long as the equations of motion of a redun-
dantly constrained system are linear with respect to the multipliers, the uniqueness of calculated motion is assured. This
study examines how the alteration of physical units affects the model of the system. It is shown how relationships between
redundant constraints are changed, and details (in terms of a new set of linear combination coefficients) are derived. The
simulated motion, though expressed by different numbers, with respect to physics remains unaffected by the choice of units.
On the other hand, the minimum norm reaction solution, calculated after changing the units, is different from the previous
one (in both physics and numbers). The relationships between the reaction solutions obtained for different physical units
are derived. Moreover, special cases, when the change of units does not influence the minimum norm reaction solution, are
indicated.
In the case of overconstrained frictionless systems, or systems with joint friction that does not depend on normal forces
in joints, the calculated accelerations are unique, hence the simulated motion is unique as well. Thus, one cannot reliably
calculate internal forces, however, one can realistically predict the motion of the system.
The situation is entirely different when friction forces depend on normal joint reactions. In this paper, frictional effects
are modeled as supplementary external forces, nonlinearly dependent on Lagrange multipliers, acting in kinematic pairs.
Two different iterative methods for solving nonlinear equations are examined. The Moore-Penrose inverse is employed to
deal with rank deficiency problems induced by the dependence of constraints. Unlike in most of the available publications,
the null space components are allowed along with the minimum norm solution. Moreover, special requirements concerning
the iteration stop criteria are discussed. It is shown that—in a general case—both accelerations and joint reactions cannot be
uniquely calculated using a rigid body approach. The origins of non-uniqueness and their impact on conducted calculations
are discussed in detail. Moreover, it is shown that in the case of overconstrained systems, due to the friction dependence on
normal loads, calculated accelerations become unit-sensitive. The study indicates why load-dependent friction, redundant
constraints, and rigid body modeling do not match. It also shows that, since neither forces nor motion can be realistically
modeled, rigid body modeling of overconstrained frictional systems may be pointless. It is also shown that there are special
situations when the acceleration (motion) of a multibody system with load-dependent friction may be uniquely determined.
This happens when the friction forces depend solely on the subset of Lagrange multipliers that are unique despite the
presence of redundant constraints.
The obtained results imply that—in many cases—to find physics-related reactions it is not enough to use the Moore-
Penrose inverse. Our study indicates that the model itself has to be modified to ensure better insight into the physics of
the system. Engineering experiences suggest that the flexibility of bodies, the elasticity of bearings, joint clearances, thermal
loads, assembly stresses, as well as geometric imperfections, should be considered when searching for realistic reactions
and motion of frictional systems. Taking into account the flexibility of bodies gives an opportunity to address most of these
factors. Sometimes, in a multibody model, only some of the rigid parts are replaced by their elastic substitutes (see, e.g.,
[56]) which does not always ensure obtaining acceptable results. It can be demonstrated that problems with finding realistic
reactions may be experienced when analyzing partially deformable systems (fortunately, the methods for analyzing the
uniqueness of reactions prove useful when building a rigid-flexible model that provides realistic solutions) [57]. Moreover,
some effects related to the existence of redundant constraints may be still present even when mechanisms are modeled as
fully flexible multibody systems [58].
It is worth noting that some further generalizations of matrix inverse [30,36,54], which are insensitive to changes in
physical units, proved to be useful for control purposes in robotics. These inverses may be inadequate for calculating joint
reactions in overconstrained mechanisms, as they are not firmly related to the system physics. However, if some general-
ization of matrix inverse, or a method of weighting the unknowns in calculations based on the Moore-Penrose inverse—as
proposed in [26]—could be related to the physical system properties that decide on reaction distribution, this would consti-
tute an important step towards a physics-embedded solution. To our best knowledge, general (applicable to arbitrary mech-
anisms) methods of linking the weighting factors with essential physical properties of the modeled multibody system have
not been created so far. Developing such methods constitutes a challenge for future works. If this can be done, a framework
uniting efficiency of the rigid body approach with physical insight offered by flexible body models would emerge.

Declaration of Competing Interest

The authors declare that they have no known competing financial interests or personal relationships that could have
appeared to influence the work reported in this paper.

Acknowledgments

This research was supported by the National Science Centre (Poland) grant no. 2018/29/B/ST8/00374.
M. Wojtyra, M. Pekal
˛ and J. Fraczek
˛ / Mechanism and Machine Theory 153 (2020) 103999 15

Appendix A

The insight into the structure of matrices A, A† and vector b will be used to prove that vector d, defined in Eq. (32), is
zero. We start with using the fourth of conditions (8) to show that for any symmetric matrix the following property holds
(note that in our case both matrices, A and C, are symmetric):
AA† = AT ( A† )T = ( A† A )T = A† A. (43)
To calculate vector d we can use Eq. (11) and definition of b(x):
   ∗   
  0 0 Q+F λ 0
d = I − AA b(x ) = † ∗
=   . (44)
0 I − CC†  I − CC† 

Now, we need to prove that (I − CC† ) equals zero. Thus, let us recall matrix C definition and make use of the symmetry
of matrix M, to obtain:
 T
C = q M−1 Tq = q M−1/2 M−1/2 Tq = q M−1/2 q M−1/2 = BBT . (45)
It is important to notice that, according to Eq. (4), vector  is a linear combination of columns of the constraint Jacobian
matrix q (vector of accelerations provides coefficients of such combination). To prove that (I − CC† ) = 0 it is sufficient to
show that matrices [I − CC† ] and q are orthogonal. This can be done by direct calculations:
     

I − CC† q = I − CC† B M1/2 = I − BBT (BBT ) B M 1/2 =
    (46)

= B − BBT (BBT ) B M1/2 = B − BB† B M1/2 = (B − B )M1/2 = 0 .

Note that two equivalences have been utilized: B B† B = B (which is the first of conditions (8)) and BT (BBT )† = B† (which
needs to be proven).
To justify that BT (BBT )† = B† , we will decompose matrix B using the compact version of SVD [20]:
Bm×n = Um×r Sr×r VTn×r , (47)
where UT U= I, VT V = I and S = ST is a diagonal matrix built of the non-zero singular values of B. The product BBT can be
expressed as:
BBT = USVT VST UT = USSUT . (48)
Matrix S is diagonal and nonsingular, thus its inverse S–1
(and also the Moore-Penrose inverse S† = S–1 ) is a diagonal
matrix composed of reciprocals of the non-zero singular values of B. Obviously, the following holds:
SS† = S† S = I. (49)
By checking all four conditions (8), it can be verified that:
B† = VS† UT , (50)

 †
BBT = US† S† UT . (51)
Finally, by direct calculations, we obtain the desired equality:
BT ( BBT )† = VST UT US† S† UT = VS† UT = B† . (52)

Appendix B

In this appendix, constraint equations for generic revolute and translational joints are formulated (planar systems de-
scribed by absolute coordinates are considered). Subsequently, the physical units of constraint reactions are discussed. Fi-
nally, constraint equations for the mechanism exploited in Section 5 are presented in detail.

Revolute joint

Assume that a revolute joint connects bodies i and j at point Pi = Pj (see Fig. 2). Since points Pi and Pj have to coincide,
the constraint equation may be written in the following form:

rP = ri + Ri sP(i) − r j − R j sP( j ) = 02×1 , (53)

where vector sX(k ) determines the position of point X expressed in the local reference frame π k , and Rk is the rotation matrix
that transforms vectors from the frame π k to π 0 :
 
cos ϕk − sin ϕk
Rk = Rk ( ϕk ) = . (54)
sin ϕk cos ϕk
16 M. Wojtyra, M. Pekal
˛ and J. Fraczek
˛ / Mechanism and Machine Theory 153 (2020) 103999

Fig. 2. Revolute joint.

Subsequently, Eq. (53) is differentiated with respect to vector q, and the following potentially non-zero elements of the
Jacobian matrix are obtained:
   
(rP )qi = (rP )ri (rP )ϕi = I2×2 Ri sP( ) ,
i
    (55)
(rP )q j = (rP )r j (rP )ϕ j = −I2×2 − R j sP( ) ,
j

 
0 −1
where = is an auxiliary constant matrix.
1 0
Elements of vector  (see Eq. (5)) that correspond to a revolute joint may be calculated as:

rP = Ri sP(i) ϕ˙ i2 − R j sP( j ) ϕ˙ 2j . (56)

Translational joint

To formulate the constraints for a translational joint between bodies i and j, points Pi and Pj are established on the axis
of the relative motion of the joint (see Fig. 3). Additionally, a unit vector vij , which belongs to body j and is perpendicular
to the axis of the relative motion, is introduced. The constraint equations are:
   T

r j + R j sP( ) − ri − Ri sP( ) R j vij( )
j i j
P
 = t
P ∠
= = 02×1 , (57)
P ϕi − ϕ j − ψij
where ψ ij is a constant.
For a translational joint, potentially non-zero elements of the Jacobian matrix are:
 ⊥
  ⊥
   T  T
  P r P ϕ − R j vij( )
j
− R j vij( )
j
Ri sP( )
i
 t
P q =  ∠
i
 ∠
 i
= ,
i

 P r
  P ϕ
  01×2 1

i

i
T  T   (58)
  P r P ϕ R j vij( )
j
− R j vij( )
j
r j − ri − Ri sP( )
i
 t
P q =  ∠
 j
 ∠
 j
= ,
j
P r
j
P ϕ
j 01×2 −1
while the elements of vector  are:
   T       2 

R j vij( ) r˙ j − r˙ i ϕ˙ j + r j − ri ϕ˙ 2j − Ri sP( ) ϕ˙ j − ϕ˙ i
j i
P 2
 = t
P ∠
= . (59)
P 0

Fig. 3. Translational joint.


M. Wojtyra, M. Pekal
˛ and J. Fraczek
˛ / Mechanism and Machine Theory 153 (2020) 103999 17

Table 5
Geometric parameters of the joints.

l = 0.1 m, h = l 2/2 Body Parameter

Joint i j sP(i ) sP( j ) vi(jj ) ψ ij


T T
A 1 0 [–h 0] [0 0] – –
B 2 1 [–4l 0]T [h 0]T – –
C 3 2 [h 0]T [4l 0]T – –
D 3 0 [–h 0]T [8l 0]T – –
K 4 0 [0 0]T [4l 0]T [1 0]T 0
L 4 2 [0 0]T [0 0]T [0 1]T 0

Remark on the units

The Lagrange multipliers λrP associated with constraints rP can be interpreted as a reaction force acting at P (see, e.g.,
[1,2]). Similarly, the multiplier λ⊥
P
(that corresponds to ⊥ P
) can be interpreted as the magnitude of a normal reaction force
acting at P. Conversely, the multiplier λ∠P
(corresponding to ∠ P
) can be interpreted as a reaction torque. Hence, the physical
units of various Lagrange multipliers are different.

Constraints of the investigated mechanism

The mechanism considered in Section 5, consists of 4 rigid bodies connected by 4 revolute joints (A, B, C, and D) as well
as 2 translational joints (K and L). To separate the linear coordinates from the angular ones, vector of absolute coordinates
q is defined as (see Eq. (1)):
 T  T
q12×1 = rT1 rT2 rT3 rT4 ϕ1 ϕ2 ϕ3 ϕ4 = rT8×1 ϕT4×1 . (60)
The geometric parameters necessary to formulate the constraints are provided in Table 5.
The constraint equations corresponding to reaction forces () are separated from those that correspond to moments of
reaction (Y), and are ordered as:
 T T  T
(q ) = rA rB Cr rD ⊥ ⊥ ∠ ∠
10
T T T
K L K L
T
×1 YT2×1 = 012×1 . (61)
Differentiation of the constraints of Eq. (61) with respect to coordinates q of Eq. (60), yields the following constraint
Jacobian matrix:
 
r ϕ
q (q ) = =
Yr Yϕ
⎡ ⎤
(rA )r1 02×2 02×2 02×2 (rA )ϕ1 02×1 02×1 02×1
⎢ (B )r1 ( ) (rB )ϕ1 ( )
r r r
B r2 02×2 02×2 B ϕ2 02×1 02×1 ⎥
⎢ 02×2 ( ) r
(Cr )r3 02×2 02×1 ( ) r
(Cr )ϕ3 02×1 ⎥
⎢ C r2 C ϕ2 ⎥
⎢ 02×2 02×2 (rD )r3 02×2 02×1 02×1 (rD )ϕ3 02×1 ⎥
⎢ (ΦK⊥ )r4 (ΦK⊥ )ϕ4

= ⎢ 01×2 01×2 01×2 0 0 0 ⎥. (62)
⎢ 01×2 (ΦL⊥ )r2 01×2 (ΦL⊥ )r4 0 (ΦL⊥ )ϕ2 0 (ΦL⊥ )ϕ4 ⎥
⎢ ⎥
⎢ 01×2 01×2 01×2 (ΦK∠ )r4 0 0 0 (ΦK∠ )ϕ4 ⎥
⎣ ⎦
01×2 (ΦL∠ )r2 01×2 (ΦL∠ )r4 0 (ΦL∠ )ϕ2 0 (ΦL∠ )ϕ4

For the sake of completeness, it should be noted that vector  is ordered in accordance with constraints , which is:
 T  T
12×1 = (rA )T (rB )
T
(Cr )
T
(rD )
T ⊥
K

L

K

L
= T TY . (63)

References

[1] E.J. Haug, Computer Aided Kinematics and Dynamics of Mechanical Systems. Volume I: Basic Methods, Allyn and Bacon, 1989.
[2] P.E. Nikravesh, Computer-Aided Analysis of Mechanical Systems, Prentice Hall, Englewood Cliffs, NJ, 1988.
[3] J. Garcia de Jalon, E. Bayo, Kinematic and Dynamic Simulation of Multibody Systems: The Real-Time Challenge, Springer, New York, 1994 https:
//doi.org/10.1007/978- 1- 4612- 2600- 0.
[4] M. Pekal,
˛ M. Wojtyra, J. Fraczek,
˛ Free-body-diagram method for the uniqueness analysis of reactions and driving forces in redundantly constrained
multibody systems with nonholonomic constraints, Mech. Mach. Theory 133 (2019) 329–346 https://doi.org/10.1016/j.mechmachtheory.2018.11.021.
[5] M. Wojtyra, Modeling of static friction in closed-loop kinematic chains–uniqueness and parametric sensitivity problems, Multibody Sys. Dyn. 39 (4)
(2017) 337–361 https://doi.org/10.1007/s11044- 016- 9535- 6.
[6] E. Haug, Simulation of friction and stiction in multibody dynamics model problems, Mech. Based Des. Struct. Mach. 46 (3) (2018) 296–317 https:
//doi.org/10.1080/15397734.2017.1341840.
18 M. Wojtyra, M. Pekal
˛ and J. Fraczek
˛ / Mechanism and Machine Theory 153 (2020) 103999

[7] M. Wojtyra, Modeling of static friction in closed-loop kinematic chains with multiple degrees of freedom—a study of uniqueness and parametric
sensitivity problems, in: V. Arakelian, P. Wenger (Eds.), ROMANSY 22 – Robot Design, Dynamics and Control. CISM International Centre for Mechanical
Sciences (Courses and Lectures), 584, Springer, Cham, 2019, pp. 491–498. https://doi.org/10.1007/978- 3- 319- 78963- 7_61.
[8] A.A. Shabana, Computational Dynamics, John Wiley & Sons Ltd, 2010 https://doi.org/10.1002/9780470686850.
[9] W. Blajer, On the determination of joint reactions in multibody mechanisms, J. Mech. Des. 126 (2) (2004) 341–350 https://doi.org/10.1115/1.1667944.
[10] L. Mariti, N.P. Belfiore, E. Pennestrì, P.P. Valentini, Comparison of solution strategies for multibody dynamics equations, Int. J. Numer. Methods Eng. 88
(7) (2011) 637–656 https://doi.org/10.1002/nme.3190.
[11] M. Pekal,
˛ J. Fraczek,
˛ Comparison of selected formulations for multibody system dynamics with redundant constraints, Arch. Mech. Eng. 63 (1) (2016)
93–112 https://doi.org/10.1515/meceng- 2016- 0 0 05.
[12] M.A. Neto, J. Ambrósio, Stabilization methods for the integration of DAE in the presence of redundant constraints, Multibody Sys. Dyn. 10 (1) (2003)
81–105 https://doi.org/10.1023/A:1024567523268.
[13] A. Müller, Implementation of a geometric constraint regularization for multibody system models, Arch. Mech. Eng. 61 (2) (2014) 367–383 https:
//doi.org/10.2478/meceng- 2014- 0021.
[14] M. Pekal,
˛ J. Fraczek,
˛ Comparison of natural complement formulations for multibody dynamics, J. Theoret. Appl. Mech. 54 (4) (2016) 1391–1404 https:
//doi.org/10.15632/jtam-pl.54.4.1391.
[15] M. Wojtyra, Joint reactions in rigid body mechanisms with dependent constraints, Mech. Mach. Theory 44 (12) (2009) 2265–2278 https://doi.org/10.
1016/j.mechmachtheory.20 09.07.0 08.
[16] M. Wojtyra, J. Fraczek,
˛ Comparison of selected methods of handling redundant constraints in multibody systems simulations, J. Comput. Nonlinear
Dyn. 8 (2) (2013) 021007 (9 pages) https://doi.org/10.1115/1.4006958 .
[17] E.H. Moore, On the reciprocal of the general algebraic matrix, Bull. Am. Math. Soc. 26 (1920) 394–395.
[18] R. Penrose, A generalized inverse for matrices, Proc. Camb. Philos. Soc. 51 (3) (1955) 406–413 https://doi.org/10.1017/S030500410 0 030401.
[19] E. Eich-Soellner, C. Führer, Numerical methods in multibody dynamics, B.G. Teubner https://doi.org/10.1007/978- 3- 663- 09828- 7 (1998)
[20] F.E. Udwadia, R.E. Kalaba, Analytical Dynamics: A New Approach, Cambridge University Press, 1996 https://doi.org/10.1017/CBO9780511665479.
[21] R.L. Huston, Methods of analysis of constrained multibody systems, Mech. Struct. Mach. 17 (2) (1989) 135–143 https://doi.org/10.1080/
15397738909412812.
[22] A Arabyan, F. Wu, An improved formulation for constrained mechanical systems, Multibody Sys. Dyn. 2 (1) (1998) 49–69 https://doi.org/10.1023/A:
1009724704839.
[23] E. Zahariev, J. McPhee, Stabilization of multiple constraints in multibody dynamics using optimization and a pseudoinverse matrix, Math. Comput.
Model. Dyn. Syst. 9 (4) (2003) 417–435 https://doi.org/10.1076/mcmd.9.4.417.27898.
[24] C.M. Pappalardo, A natural absolute coordinate formulation for the kinematic and dynamic analysis of rigid multibody systems, Nonlinear Dyn. 81 (4)
(2015) 1841–1869 https://doi.org/10.1007/s11071-015-2111-4.
[25] D. de Falco, E. Pennestrì, L. Vita, Investigation of the influence of pseudoinverse matrix calculations on multibody dynamics simulations by means of
the Udwadia-Kalaba formulation, J. Aerosp. Eng. 22 (4) (2009) 365–372 https://doi.org/10.1061/(ASCE)0893-1321(2009)22:4(365).
[26] A. Callejo, F. Gholami, A. Enzenhöfer, J. Kövecses, Unique minimum norm solution to redundant reaction forces in multibody systems, Mech. Mach.
Theory 116 (2017) 235–310 https://doi.org/10.1016/j.mechmachtheory.2017.06.001.
[27] J. García de Jalón, M.D. Gutiérrez-López, Multibody dynamics with redundant constraints and singular mass matrix: existence, uniqueness, and deter-
mination of solutions for accelerations and constraint forces, Multibody Sys. Dyn. 30 (3) (2013) 311–341 https://doi.org/10.1007/s11044- 013- 9358- 7.
[28] M. Wojtyra, The Moore-Penrose Inverse Approach To Modeling Of Multibody Systems With Redundant Constraints, in: T. Uhl (Ed.), Advances in Mech-
anism and Machine Science. IFToMM WC 2019. Mechanisms and Machine Science, 73, Springer, Cham, 2019, pp. 3087–3096. https://doi.org/10.1007/
978- 3- 030- 20131- 9_304.
[29] W. Blajer, K. Dziewiecki, Z. Mazur, Multibody modeling of human body for the inverse dynamics analysis of sagittal plane movements, Multibody Sys.
Dyn. 18 (2) (2007) 217–232 https://doi.org/10.1007/s11044- 007- 9090- 2.
[30] K. Doty, C. Melchiorri, C. Bonivento, A theory of generalized inverses applied to robotics, Int. J. Rob. Res. 12 (1) (1993) 1–19 https://doi.org/10.1177/
027836499301200101.
[31] W. Liu, Y. Xu, J. Yao, Y. Zhao, The weighted Moore–Penrose generalized inverse and the force analysis of overconstrained parallel mechanisms, Multi-
body Sys. Dyn. 39 (4) (2017) 363–383 https://doi.org/10.1007/s11044- 016- 9500- 4.
[32] J. Fraczek,
˛ M. Wojtyra, On the unique solvability of a direct dynamics problem for mechanisms with redundant constraints and Coulomb friction in
joint, Mech. Mach. Theory 46 (3) (2011) 312–334 https://doi.org/10.1016/j.mechmachtheory.2010.11.003.
[33] E. Pennestrì, V. Rossi, P. Salvini, P.P. Valentini, Review and comparison of dry friction force models, Nonlinear Dyn. 83 (4) (2016) 1785–1801 https:
//doi.org/10.1007/s11071-015-2485-3.
[34] F. Marques, P. Flores, J.C. Pimenta Claro, H.M. Lankarani, A survey and comparison of several friction force models for dynamic analysis of multibody
mechanical systems, Nonlinear Dyn. 86 (3) (2016) 1407–1443 https://doi.org/10.1007/s11071- 016- 2999- 3.
[35] E.J. Haug, S.C. Wu, S.M. Yang, Dynamic mechanical systems with Coulomb friction, stiction, impact and constraint addition-deletion I: theory,
Mech.Mach. Theory 21 (5) (1986) 401–406 https://doi.org/10.1016/0 094-114X(86)90 088-1.
[36] E. Schwartz, R. Manseur, K. Doty, Non commensurate systems in robotics, Int. J. Rob. Autom. 17 (2) (2002) 1–6.
[37] R.L. Burden, J.D. Faires, Numerical Analysis, 9th Ed, Brooks/Cole–Cengage Learning, 2011.
[38] T. Sauer, Numerical Analysis, 2nd Ed, Pearson Education, Boston, 2012.
[39] C.M. Pappalardo, D. Guida, On the computational methods for solving the differential-algebraic equations of motion of multibody systems, Machines
6 (2) (2018) 20 art https://doi.org/10.3390/machines6020020 .
[40] P. Malczyk, J. Fraczek,
˛ F. González, J. Cuadrado, Index-3 divide-and-conquer algorithm for efficient multibody system dynamics simulations: theory
and parallel implementation, Nonlinear Dyn. 95 (1) (2019) 727–747 https://doi.org/10.1007/s11071- 018- 4593- 3.
[41] A.A. Shabana, Dynamics of Multibody Systems, 4rd Ed, Cambridge University Press, 2013.
[42] O.A. Bauchau, Flexible Multibody Dynamics, Springer Science+Business Media B.V, 2011 https://doi.org/10.1007/978- 94- 007- 0335-3.
[43] F. Marques, A.P. Souto, P. Flores, On the constraints violation in forward dynamics of multibody systems, Multibody Sys.Dyn. 39 (4) (2017) 385–419
https://doi.org/10.1007/s11044- 016- 9530- y.
[44] D. Vlasenko, R. Kasper, Implementation of consequent stabilization method for simulation of multibodies described in absolute coordinates, Multibody
Sys. Dyn. 22 (3) (2009) 297–319 https://doi.org/10.1007/s11044- 009- 9167- 1.
[45] J. Baumgarte, Stabilization of constraints and integrals of motion in dynamical systems, Comput. Meth. Appl. Mech. Eng. 1 (1) (1972) 1–16 https:
//doi.org/10.1016/0 045-7825(72)90 018-7.
[46] J.-M. Miao, General expressions for the Moore-Penrose Inverse of a 2 × 2 Block Matrix, Linear Algebra Appl. 151 (1991) 1–15 https://doi.org/10.1016/
0024-3795(91)90351-V.
[47] Z.-Z. Yan, New representations of the Moore–Penrose inverse of 2 × 2 block matrices, Linear Algebra Appl. 456 (2014) 3–15 https://doi.org/10.1016/j.
laa.2012.08.014.
[48] J. Zhang, D. Liu, Y. Liu, A constraint violation suppressing formulation for spatial multibody dynamics with singular mass matrix, Multibody Sys.Dyn.
36 (1) (2016) 87–110 https://doi.org/10.1007/s11044- 015- 9458- 7.
[49] F.E. Udwadia, P. Phohomsiri, Explicit equations of motion for constrained mechanical systems with singular mass matrices and applications to multi-
body dynamics, Proc. R. Soc. A 462 (2071) (2006) 2097–2117 https://doi.org/10.1098/rspa.2006.1662.
[50] Y.-H. Sun, T. Chen, C.Q. Wu, C. Shafai, A comprehensive experimental setup for identification of friction model parameters, Mech. Mach. Theory 100
(2016) 338–357 https://doi.org/10.1016/j.mechmachtheory.2016.02.013.
M. Wojtyra, M. Pekal
˛ and J. Fraczek
˛ / Mechanism and Machine Theory 153 (2020) 103999 19

[51] J. Fraczek,
˛ M. Wojtyra, et al., Application of General Multibody Methods to Robotics, in: K. Arczewski, W. Blajer, J. Fraczek,
˛ M. Wojtyra (Eds.), Multibody
Dynamics: Computational Methods and Applications, Computational Methods in Applied Sciences, 23, Springer Science+Business Media, 2011, pp. 131–
152. https://doi.org/10.1007/978- 90- 481- 9971- 6_7.
[52] P. Painlevé, in: Sur les lois du frottement de glissement, 121, Comptes rendus de l’Académie des Sciences, Paris, 1895, pp. 112–115.
[53] M. Wojtyra, On some problems with modeling of Coulomb friction in self-locking mechanisms, J. Comput. Nonlinear Dyn. 11 (1) (2016) 011008 (10
pages) https://doi.org/10.1115/1.4030386 .
[54] J. Uhlmann, A generalized matrix inverse that is consistent with respect to diagonal transformations, SIAM J. Matrix Anal. Appl. 39 (2) (2018) 781–800
https://doi.org/10.1137/17M113890X.
[55] M. Benzi, D. Szyld, Existence and uniqueness of splittings for stationary iterative methods with applications to alternating methods, Numer. Math. 76
(3) (1997) 309–321 https://doi.org/10.10 07/s0 02110 050265.
[56] E. Zahariev, J. Cuadrado, Dynamics of over-constrained rigid and flexible multibody systems, in: Proc. of the 12th IFToMM World Congress, Besançon,
France, 2007.
[57] M. Wojtyra, J. Fraczek,
˛ Joint reactions in rigid or flexible body mechanisms with redundant constraints, Bull. Polish Acad. Sci., Tech. Sci. 60 (3) (2012)
617–626 https://doi.org/10.2478/v10175-012-0073-y.
[58] J.P. Meijaard, D.M. Brouwer, J.B. Jonker, Analytical and experimental investigation of a parallel leaf spring guidance, Multibody Sys. Dyn. 23 (1) (2010)
77–97 https://doi.org/10.1007/s11044- 009- 9172- 4.

You might also like