On the use of Maggi’s equation in the dynamic modeling of multibody systems
Arthur Horn^{1} , Fernando Malvezzi^{2} , Renato M. M. Orsino^{3}
^{1}Mechanical Engineering Department, Escola Politécnica, University of São Paulo, São Paulo, Brazil
^{2, 3}Mechanical Engineering Department, Mauá Institute of Technology, São Caetano do Sul, Brazil
^{1}Corresponding author
Vibroengineering PROCEDIA, Vol. 32, 2020, p. 166171.
https://doi.org/10.21595/vp.2020.21323
Received 1 February 2020; accepted 10 March 2020; published 29 June 2020
JVE Conferences
The purpose of dynamic modeling of multibody mechanical systems is to obtain the differential equations of motion. Maggi’s equation appears as an alternative to obtain the differential equations of motion. The aim of this work is to illustrate the advantages of the use of Maggi's equation in the dynamic modeling of multibody mechanical systems. Maggi's equation is used to model the dynamics of a classical complex constrained mechanical system. An inverse dynamics simulation is performed, to illustrate how the obtained equations can be used to determine the theoretical time series of the torques required to perform a given prescribed trajectory.
 Maggi’s equations were used to derive a complete nonlinear model dynamic 6 degrees of freedom mechanism
 The use of redundant generalized coordinates, led to significant simplification in the terms related to kinetic and potential energy
 The use of Baumgarte method avoided the presence of numerical instability which is associated with the violation of constraints equations during numerical integration
 The approach employed to obtain the differential equations of motion might be useful for dynamic modeling of other multipledegreeoffreedom multibody systems
Keywords: Maggi’s equation, multibody dynamics, analytical mechanics.
1. Introduction
Maggi’s equations were introduced by Gian Antonio Maggi in 1896 as an alternative approach to deal with constrained multibody systems (with either holonomic or linear nonholonomic constraints). As described in [1], Maggi’s equation can be understood as an extension of Lagrangian formalism that, by means of a simple algorithm based on finding a linear operator onto the kernel of the constraint equations Jacobian, allows the elimination of the undetermined multipliers from the equations of motion of a constrained mechanical.
Whenever redundant generalized coordinates are used in a given formulation (which is inevitable in the case of nonholonomic systems and might be convenient for holonomic ones), the requirement of using indeterminate multipliers in the conventional Lagrangian formalism arises, leading to a system of differentialalgebraic equations of motion (DAEs) instead of simply ordinary differential equations (ODEs) [2, 3].
Even though Maggi’s equation provides an alternative formalism in which the undetermined multipliers are eliminated, problems associated with the numerical integration of DAEs, due to violation of constraint equations are still present. Baumgarte method provides an stabilization algorithm in order to improve the numerical accuracy of the numerical solution of these equations [4].
Malvezzi et al. [5] and Orsino et al. [6] proposed a qualitative comparison based on the use of Lagrange’s, Maggi’s and Kane’s equations applied to the modelling of multibody mechanical systems. In those papers, it has been shown that the application of Maggi’s equations, combined with a proper choice of a redundant set of generalized coordinates, leads to a simpler derivation of the dynamic equations of motion, in a suitable form for numerical simulations. Moreover, it also has been shown that, the procedure for adding new bodies and obtaining differential equations of motion without the terms related to constraints forces is simple.
NewtonEuler equations and Lagrange equations are mostly used in the dynamic modeling of manydegreeoffreedom multibody systems. As an alternative to the above approach, the purpose of this paper is to illustrate the advantages of applying Maggi’s equations along with a solid formalism. The chosen system is a serial six degrees of freedom (6dof) robot manipulator, a classical example of a complex constrained mechanical system. Finally, in order to investigate the numerical performance of the equations of motion obtained by this approach, an inverse dynamics simulation is performed, to obtain the theoretical time series of the torques required to perform a proposed trajectory.
2. Differential equation of motion
This section details the derivation of the differential equations of motion of the 6dof serial mechanism illustrated in Fig. 1. This mechanism consists of 5 rigid bodies (A, B, C, D and E). It is noteworthy that the bodies C and E can perform rotations around the axes ${\widehat{c}}_{y}$ and ${\widehat{d}}_{y}$, respectively, properly controlled by actuators.
2.1. Mechanical system
Fig. 1(a) illustrates the typical six degree of freedom mechanical system that was chosen to be studied, while Fig. 1(b) shows its schematic representation.
Fig. 1. a) Typical mechanism, b) schematic representation of the 6dof mechanism in a configuration in which the centerlines of the links remain in the $Oyz$ plane
a)
b)
Fig. 1(b) shows a schematic representation of the mechanism illustrating the angular coordinates and coordinate systems adopted in the modeling. The rigid bodies and the coordinate system fixed to the bodies are represented by black capital letter and the points identifications are represented by green underlined capital letter.
Table 1. Definition of generalized coordinates
Generalized coordinate

Definition

$\gamma $

Rotation angle around ${\widehat{n}}_{z}$

${\varphi}_{2}$

Angle between the direction${\widehat{b}}_{y}$ and the plane $Oxy$

${\varphi}_{3}$

Angle between the directions ${\widehat{b}}_{y}$ and ${\widehat{c}}_{y}$

${\psi}_{1}$

Rotation angle around ${\widehat{c}}_{y}$

${\varphi}_{4}$

Angle between the directions ${\widehat{c}}_{y}$ and ${\widehat{d}}_{y}$

${\psi}_{2}$

Rotation angle around ${\widehat{d}}_{y}$

The following hypotheses are adopted in the derivation of the mathematical model: all the bodies are considered rigid bodies; all joints are ideal and the axes ${\widehat{a}}_{x}$, ${\widehat{a}}_{y}$, ${\widehat{a}}_{z}$, ${\widehat{b}}_{x}$, ${\widehat{b}}_{y}$, ${\widehat{b}}_{z}$, ${\widehat{c}}_{x}$, ${\widehat{c}}_{y}$, ${\widehat{c}}_{z}$, ${\widehat{d}}_{x}$, ${\widehat{d}}_{y}$ and ${\widehat{d}}_{z}$ correspond to the principal axes of inertia of the respective bodies.
2.2. Mathematical modeling
2.2.1. Notation
Regarding the kinematic description of the system, consider the following notation:
– ${\mathbf{R}}_{I}^{H}$ is the rotation matrix between the bases of the coordinate systems H and I.
– ${\mathbf{p}}_{GO}^{F}$ is the columnmatrix representation, with components expressed in the base of the coordinate system F, of the position vector of point G with respect to point O.
– ${\mathbf{\omega}}_{HI}^{F}$ is the columnmatrix representation, with components expressed in the base of the coordinate system F, of the angular velocity vector of body H with respect to the reference frame (or rigidbody) I.
2.2.2. Constraints
In order to use redundant generalized coordinates, a matrix of generalized coordinates is defined:
The generalized coordinates ${x}_{B}$, ${y}_{B}$, ${z}_{B}$, ${x}_{C}$, ${y}_{C}$, ${z}_{C}$, ${x}_{D}$, ${y}_{D}$, ${z}_{D}$, ${x}_{E}$, ${y}_{E}$ and ${z}_{E}$ are the Cartesian coordinates of the respective centers of mass of the bodies A, B, C, D and E in the coordinate system $N$. Thus, a mechanical system of 6 degrees of freedom ($v$), with 18 generalized coordinates ($n$), requires 12 constraints equations to be defined ($p$). In order to obtain the constraints equations, the following position vectors is defined:
Thus, it is possible to relate the Cartesian coordinates of the center of gravity of the bodies with the generalized angular coordinates. These constraint equations can be expressed in the form $h(t,\mathbf{q})=0$, whose time derivative can be expressed by the following Pfaff form Eq. (7) [1]:
Let ${\mathbf{A}}_{\#}$ be a matrix $v$×$n$, ($v$ – number of degrees of freedom, $n$ – number of generalized coordinates) chosen to make the following matrix invertible [1]:
2.2.3. Stabilization of constraints
In order to improve the numerical stability of the constraint enforcement in the numerical simulations, the Baumgarte method [4] was used:
With 𝛽 and 𝜁 being empirically defined parameters.
2.2.4. Kinematics
Considering the angular coordinates defined in Table 1, the following expressions can be written for angular velocity vectors:
2.2.5. Kinetic energy
The expression for the kinetic energy of this mechanism can be expressed as follows:
Observing Eq. (14), it can be noticed that the use of redundant generalized coordinates significantly simplifies the description of the kinetic energy of the system, making the role of each term in this expression easier to interpret. The first four terms make up the parcel of the kinetic energy associated with the translational motion of bodies B, C, D and E, while the last five terms make up the parcel of the kinetic energy associated with the rotational motion of bodies A, B, C, D and E.
2.2.6. Potential energy
The potential energy of the mechanical system can be described as follows:
2.2.7. Generalized forces
The generalized forces acting on the mechanical system are the torques exerted by the actuators located on the revolute joints. Thus, corresponding nonconservative generalized forces are:
2.2.8. Differential equations of motion
Based on the previously defined expressions, and considering that $L=TV$ is the Lagrangian of the system, the equations of motion for the 6dof mechanism can be directly obtained for Maggi’s equations:
3. Numerical simulations
Adopting the equations of motion derived in the last section, a numerical simulation scenario was proposed. In this section an inverse dynamics simulation is performed, in order to determine the theoretical time series of the torques required to perform a given prescribed trajectory. Table 2 shows the mechanism parameters adopted in the numerical simulation.
Table 2. Mechanism parameters used in the numerical simulation
Mechanism Parameters

Value

Moment of inertia of the body A with respect to the ${\widehat{a}}_{z}$ axis [kgm^{2}]

3.0

Mass of body B [kg]

3.0

Length of body B [m]

1.0

Moment of inertia of the body B with respect to the ${\widehat{b}}_{x}$ axis [kgm^{2}]

0.4

Moment of inertia of the body B with respect to the ${\widehat{b}}_{y}$ axis [kgm^{2}]

0.1

Moment of inertia of the body B with respect to the ${\widehat{b}}_{z}$ axis [kgm^{2}]

0.4

Mass of body C [kg]

3.0

Length of body C [m]

1.0

Moment of inertia of the body C with respect to the ${\widehat{c}}_{x}$ axis [kgm^{2}]

0.4

Moment of inertia of the body C with respect to the ${\widehat{c}}_{y}$ axis [kgm^{2}]

0.1

Moment of inertia of the body C with respect to the ${\widehat{c}}_{z}$ axis [kgm^{2}]

0.4

Mass of body D [kg]

0.3

Length of body D [m]

3.0

Moment of inertia of the body D with respect to the ${\widehat{d}}_{x}$ axis [kgm^{2}]

0.2

Moment of inertia of the body D with respect to the ${\widehat{d}}_{y}$ axis [kgm^{2}]

0.05

Moment of inertia of the body D with respect to the ${\widehat{d}}_{z}$ axis [kgm^{2}]

0.2

Mass of body E [kg]

3.0

Moment of inertia of the body E with respect to the ${\widehat{d}}_{x}$ axis [kgm^{2}]

0.2

Moment of inertia of the body E with respect to the ${\widehat{d}}_{y}$ axis [kgm^{2}]

0.2

Moment of inertia of the body E with respect to the ${\widehat{d}}_{z}$ axis [kgm^{2}]

0.2

Fig. 2. Time series of the desired trajectory
In this simulation, the proposed trajectory consists of a single sinusoidal motion of a period equal to 4 s for each generalized angular coordinate, as shown in Fig. 2. The proposed amplitude for the time series of the generalized coordinates $\gamma $, ${\psi}_{1}$ and ${\psi}_{2}$ is equal to $\pi $ rad. For the generalized coordinates ${\varphi}_{2}$ and ${\varphi}_{3}$, the proposed amplitude is $\pi $/18 rad. Finally, for the angle ${\varphi}_{4}$, the proposed amplitude is $\pi $/6. Fig. 3 illustrates the required torques obtained from the inverse dynamics simulation performed.
Fig. 3. Theoretical time series of the torques required
4. Conclusions
Maggi’s equations were used to derive a complete nonlinear model for the dynamics of 6 degrees of freedom mechanism.
The use of redundant generalized coordinates, led to a significant simplification in the terms related to kinetic and potential energy, which led to a much less complex derivation when compared to the conventional Lagrangian approach.
The use of Baumgarte method avoid the presence of numerical instability associated with the violation of constraints equations during numerical integration.
Finally, the approach applied here to obtain the differential equations of motion might be useful in the dynamic modeling of many other multipledegreeoffreedom multibody systems.
Acknowledgements
Fernando Malvezzi and Renato Maia Matarazzo Orsino acknowledge grant #2018/120877, São Paulo Research Foundation (FAPESP).
References
 Orsino R. M. M. A Contribution on Modeling Methodologies for Multibody Systems. Ph.D. Thesis, Universidade de São Paulo, Brazil, 2016. [CrossRef]
 Lalusa A., Bauchau O. A. Review of Classical Approaches for Constraint Enforcement in Multibody Systems. Georgia Institute of Technology, 2007. [Publisher]
 Jinjie W., Guohua C., Zhencai Z., Weihong P., Jishun L. Lateral and torsional vibrations of cableguided hoisting system with eccentric load. Journal of Vibroengineering, Vol. 18, Issue 6, 2016, p. 35243538. [Publisher]
 Baumgarte J. Stabilization of constraints and integrals of motion in dynamical systems. Computer Methods in Applied Mechanics and Engineering, Vol. 1, 1972, p. 116. [Publisher]
 Malvezzi F., Orsino R. M. M., Coelho T. A. H. Lagrange’s, Maggi’s and Kane’s equations to the dynamic modelling of serial manipulator. Proceedings of DINAME, 2017, https://doi.org/10.1007/9783319912172_20. [Publisher]
 Orsino R. M. M., Hess Coelho T. A., Pesce C. P. Analytical mechanics approaches in the dynamic modelling of Delta mechanism. Robotica, Vol. 33, Issue 4, 2015, p. 953973. [Publisher]