Skip to main content
Log in

Dynamic modeling of parallel manipulators based on Lagrange–D’Alembert formulation and Jacobian/Hessian matrices

  • Published:
Multibody System Dynamics Aims and scope Submit manuscript

Abstract

This paper describes the development of a dynamic model for parallel manipulators based on the Lagrange–D’Alembert equation, the Hessian matrix of the kinetic energy of the manipulator, and the Jacobian/Hessian matrices of the constraint equations. The model generates the forward and inverse dynamics formulations of parallel manipulators. First, the kinematic relations between the input actuated variables and the output variables are defined in terms of the Jacobian and Hessian matrices of the constraint equations. Then, a new form of Lagrange–D’Alembert equation is introduced and used to derive the dynamic model of parallel manipulators. In the present model, the inertia, centrifugal, and Coriolis generalized forces/torques are obtained directly from Hessian matrix of the kinetic energy of the manipulator. The developed model is simple, straightforward, and appropriate for parallel processing techniques as the elements of the Jacobian and Hessian matrices can be calculated simultaneously. The developed model is validated using the conservation of work and energy principle. A trajectory tracking control of a simple 3RRR planar parallel manipulator is used to illustrate the developed model.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9
Fig. 10

Similar content being viewed by others

Notes

  1. Schönflies-motion generators (SMG) have four degrees of freedom, translation in three independent directions and rotation about one axis of fixed orientation, usually vertical. A SCARA (Selective-Compliance Assembly Robot Arm) robot, with one prismatic joint and three revolute joints, is an example of a serial SMG.

References

  1. Merlet, J.P.: Jacobian, manipulability, condition number, and accuracy of parallel robots. ASME J. Mech. Des. 128, 199–206 (2005)

    Article  Google Scholar 

  2. Gosselin, C., Perrault, L., Viallancourt, C.: Simulation and computer-aided kinematic design of three-degree-of-freedom spherical parallel manipulator. J. Robot. Syst. 12, 857–869 (1995)

    Article  Google Scholar 

  3. Xin, G., Deng, H., Zhong, G.: Closed-form dynamics of a 3-DOF spatial parallel manipulator by combining the Lagrangian formulation with the virtual work principle. Nonlinear Dyn. 86(2), 1329–1347 (2016)

    Article  Google Scholar 

  4. Do, W.Q.D., Yang, D.C.H.: Inverse dynamic analysis and simulation of a platform type of a robot. J. Robot. Syst. 5(3), 209–227 (1988)

    Article  Google Scholar 

  5. Guglielmetti, P., Longchamp, R.: A closed form inverse dynamic model of the delta parallel robot. In: Proceedings of the 1994 International Federation of Automatic Control Conference on Robot Control, pp. 30–44 (1994)

    Google Scholar 

  6. Tsai, K.Y., Kohli, D.: Modified Newton–Euler computational scheme for dynamic analysis and simulation of parallel manipulators with application to configuration based on R-L actuators. In: Proceedings of the 1990 ASME Design Engineering Technical Conferences, Boston, MA, vol. 24, pp. 111–117 (1990)

    Google Scholar 

  7. Liu, S., Zhu, Z., Sun, Z., Cao, G.: Kinematics and dynamic analysis of a three-degree of freedom parallel manipulator. J. Cent. South Univ. Technol. 21, 2660–2666 (2014)

    Article  Google Scholar 

  8. Asker, A., Assal, S.F., Fath El-Bab, A.M.R.: Dynamic modeling of a parallel manipulator-based mobility assistive device for elderly people. In: 22nd Mediterranean Conference on Control and Automation, pp. 362–367 (2014)

    Chapter  Google Scholar 

  9. Nakamura, Y., Ghodoussi, M.: Dynamics computation of closed-link robot mechanisms with nonredundant and redundant actuators. IEEE Trans. Robot. Autom. 5(3), 294–302 (1989)

    Article  Google Scholar 

  10. Nakamura, Y., Yamane, K.: Dynamics computation of structure-varying kinematic chains and its application to human figures. IEEE Trans. Robot. Autom. 16(2), 124–134 (2000)

    Article  Google Scholar 

  11. Park, F.C., Choi, J., Ploen, S.R.: Symbolic formulation of closed chain dynamics in independent coordinates. Mech. Mach. Theory 34, 731–751 (1999)

    Article  MathSciNet  Google Scholar 

  12. Codourey, A., Burdet, E.: A body-oriented method for finding a linear form of the dynamic equation of fully parallel robots. In: Proceedings of 1997 IEEE International Conference on Robotics and Automation, pp. 1612–1618 (1997)

    Google Scholar 

  13. Tsai, L.W.: Solving the inverse dynamics of parallel manipulators by the principle of virtual work. In: Proceedings of 1998 ASME Design Engineering Technical Conferences, DETC98/MECH-5865 (1998)

    Google Scholar 

  14. Wang, J., Gosselin, C.M.: Dynamic analysis of spatial four-degrees-of-freedom parallel manipulators. In: Proceedings of 1997 ASME Design Engineering Technical Conferences, DETC97/DAC-3759 (1997)

    Google Scholar 

  15. Cheng, H., Yiu, Y., Li, Z.: Dynamics and control of redundantly actuated parallel manipulators. IEEE/ASME Trans. Mechatron. 8(4), 483–491 (2003)

    Article  Google Scholar 

  16. Tsai, L.W.: Robot Analysis: the Mechanics of Serial and Parallel Manipulators. Wiley, New York (1999)

    Google Scholar 

  17. Abo-Shanab, R.F.: Impact of changing the position of the tool point on the moving platform on the dynamics of a 3RRR parallel manipulator. ISOR J. Mech. Civ. Eng. 12(4), 17–28 (2015)

    Google Scholar 

  18. Yiu, Y.K., Cheng, H., Xiong, Z.H., Liu, G.F., Li, Z.X.: On dynamics of parallel manipulators. In: Proceedings of 20001 IEEE international Conference on Robotics and Automation, pp. 3766–3771 (2001)

    Google Scholar 

  19. Briot Khalil: Dynamics of Parallel Robots from Rigid Bodies to Flexible Elements. Springer, Cham (2015)

    Book  Google Scholar 

  20. Angeles, J., Lee, S.: The formulation of dynamical equations of holonomic mechanical systems using a natural orthogonal complement. J. Appl. Mech. 55, 243–244 (1988)

    Article  Google Scholar 

  21. Saha, S.K.: The UDUT decomposition of manipulator inertia matrix. In: Proc. of the IEEE Int. Conf. on Robotics and Automation, Nagoya, Japan, 21–27 May, 1995, pp. 2829–2834 (1995)

    Google Scholar 

  22. Saha, S.K.: A decomposition of the manipulator inertia matrix. IEEE Trans. Robot. Autom. 13, 301–304 (1997)

    Article  Google Scholar 

  23. Saha, S.K., Schiehlen, W.O.: Recursive kinematics and dynamics for closed loop multibody systems. Mech. Struct. Mach. 29(2), 143–175 (2001)

    Article  Google Scholar 

  24. Chaudhary, H., Saha, S.K.: Constraint wrench formulation for closed-loop systems using two-level recursions. ASME J. Mech. Des. 129, 1234–1242 (2007)

    Article  Google Scholar 

  25. Eskandary, P., Angeles, J.: The dynamics of a parallel Schönflies-motion generator. Mech. Mach. Theory 119, 119–129 (2018)

    Article  Google Scholar 

  26. Zhao, T.S., Geng, M., Chen, Y.H.: Kinematics and dynamics hessian matrices of manipulators based on screw theory. Chin. J. Mech. Eng. 28(2), 226–235 (2015)

    Article  Google Scholar 

  27. Mitiguy, P., Kane, T.: Motion variables leading to efficient equations of motion. Int. J. Robot. Res. 15(5), 522–532 (1996)

    Article  Google Scholar 

  28. Murray, R., Li, Z.X., Sastry, S.: A Mathematical Introduction to Robotic Manipulation. CRC Press, Boca Raton (1994)

    MATH  Google Scholar 

  29. Angeles, J.: Fundamentals of Robotic Mechanical Systems, 3rd edn. Springer, New York (2007)

    Book  Google Scholar 

  30. Abo-Shanab, R.F.: An Efficient Method for Solving the Direct Kinematics of Parallel Manipulators Following a Trajectory. J. Autom. Control Eng. 2, 228–233 (2014)

    Article  Google Scholar 

  31. Abo-Shanab, R.F.: Optimization of the workspace of a 3R planar parallel manipulator. In: Proceedings of the 2nd International Conference on Mechanical and Electronics Engineering, ICMEE 2010, vol. 2, pp. 429–433 (2010)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Roshdy Foaad Abo-Shanab.

Ethics declarations

Conflict of interest

The author declares that he has no conflict of interest.

Additional information

Publisher’s Note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

R.F. Abo-Shanab is a member of Intelligent System Research Group (ISRG), Kafrelsheikh University

Appendices

Appendix A

The first constraint is

$$ h_{1} = \bigl[ x - x_{B1} - a \cos \theta _{1} - l \cos ( \alpha _{1} + \varphi ) \bigr]^{2} + \bigl[ y - y_{B1} - a \sin \theta _{1} - l \sin ( \alpha _{1} + \varphi ) \bigr] ^{2} - b^{2} =0. $$

The Hessian matrix of the first constraint equation is written as follows:

$$\begin{aligned} \boldsymbol{H}_{f_{1}} = \left [ \textstyle\begin{array}{c@{\quad}c@{\quad}c} \frac{\partial ^{2} h_{1}}{\partial \theta _{1}^{2}} & \cdots & \frac{\partial ^{2} h_{1}}{\partial \theta _{1} \partial \varphi }\\ \vdots & \ddots & \vdots \\ \frac{\partial ^{2} h_{1}}{\partial \varphi \partial \theta _{1}} & \cdots & \frac{\partial ^{2} h_{1}}{\partial \varphi ^{2}} \end{array}\displaystyle \right ] = \left [ \textstyle\begin{array}{c@{\quad}c@{\quad}c} h_{111} & \cdots & h_{11 \varphi }\\ \vdots & \ddots & \vdots \\ h_{1 \varphi 1} & \cdots & h_{1 \varphi \varphi } \end{array}\displaystyle \right ] \in \mathbb{R}^{6\times 6} \end{aligned}$$

where \(\boldsymbol{H}_{f_{1}} \in \mathbb{R}^{6\times 6}\) is the Hessian matrix for the first constraint equation with respect to the generalized coordinates, \(\boldsymbol{q} = [ \theta _{1} \ \theta _{2} \ \theta _{3} \ x \ y \ \varphi ]^{T}\), and its elements are:

$$\begin{aligned} h_{111} &= \frac{\partial ^{2} h_{1}}{\partial \theta _{1}^{2}} =2 a \bigl[ ( x - x_{B 1} ) \cos \theta _{1} + ( y - y _{B 1} ) \sin \theta _{1} - l \cos ( \alpha _{1} + \varphi - \theta _{1} ) \bigr] \\ h_{112} &= \frac{\partial ^{2} h_{1}}{\partial \theta _{1} \partial \theta _{2}} =0, \qquad h_{113} = \frac{\partial ^{2} h_{1}}{\partial \theta _{1} \partial \theta _{3}} =0, \qquad h_{11 x} = \frac{\partial ^{2} h_{1}}{\partial \theta _{1} \partial x} =2 a x \sin \theta _{1} \\ h_{11 y}& = \frac{\partial ^{2} h_{1}}{\partial \theta _{1} \partial y} =-2 a \cos \theta _{1}, \qquad h_{11 \varphi } = \frac{\partial ^{2} h_{1}}{\partial \theta _{1} \partial \varphi } =2 a l \cos ( \alpha _{1} + \varphi - \theta _{1} ) \end{aligned}$$

The first constraint is not a function of \(\theta _{2}\) and \(\theta _{3}\), thus

$$\begin{aligned} h_{12 i} &=0\quad \mbox{and}\quad h_{13 i} =0\quad (i=1, 2, \dots , 6) \\ h_{1 xx} &= \frac{\partial ^{2} h_{1}}{\partial x^{2}} =2, \qquad h_{1 xy} = \frac{\partial ^{2} h_{1}}{\partial x \partial y} =0, \qquad h_{1 x\varphi } = \frac{\partial ^{2} h_{1}}{\partial x \partial \varphi } =2 l \sin ( \alpha _{1} + \varphi ) \\ h_{1 yy} &= \frac{\partial ^{2} h_{1}}{\partial \varphi ^{2}} =2, \qquad h_{1 y\varphi } = \frac{\partial ^{2} h_{1}}{\partial y \partial \varphi } =-2 l \cos ( \alpha _{1} + \varphi ) \\ h_{1 \varphi \varphi } &= \frac{\partial ^{2} h_{1}}{\partial \varphi ^{2}} =2 ( y - y_{B 1} ) l \sin ( \alpha _{1} + \varphi ) +2 ( x - x_{B 1} ) l \cos ( \alpha _{1} + \varphi ) -2 a l \cos ( \alpha _{1} + \varphi - \theta _{1} ) \end{aligned}$$

Appendix B

The dynamic equations of the manipulator are developed by applying the Lagrangian equations of the first type. The Lagrangian equations of the first type are written in terms of a set of redundant coordinates. Therefore, the formulation requires a set of constraint equations derived from the kinematics of the manipulator [16]. The Lagrangian equations of the first type can be written as

$$\begin{gathered} \sum_{i=1}^{k} \lambda _{i} \frac{\partial h}{\partial q_{j}} = \frac{d}{dt} \biggl( \frac{\partial L}{\partial \dot{q}_{j}} \biggr) - \frac{\partial L}{\partial q_{j}} - \hat{Q}_{j} \quad j = 1\mbox{ to }k \end{gathered}$$
(B.1)
$$\begin{gathered} Q_{j} = \frac{d}{dt} \biggl( \frac{\partial L}{\partial \dot{q}_{j}} \biggr) - \frac{\partial L}{\partial q_{j}} - \sum_{i=1}^{k} \lambda _{i} \frac{\partial h_{i}}{\partial q_{j}}\quad j = k +1\mbox{ to }n \end{gathered}$$
(B.2)

where \(L\) is the Lagrangian function, \(L=T-V\), \(T\) is the kinetic energy of the manipulator, and \(V\) is the manipulator potential energy. \(h _{i}\) denotes the \(i\)th constraint function, \(k\) is the number of constraint functions, and \(\lambda _{i}\) is the Lagrange multiplier; \(q_{j}\) is the redundant coordinate. The number of redundant coordinates \(n\) exceeds the number of degrees of freedom by \(k\); \(\hat{Q}_{j}\) represents the generalized forces contributed by externally applied forces; \(Q_{j}\) is the actuator torque. The present manipulator is planar; therefore, the potential energy is zero and the Lagrangian function \(L=T\) and is defined by Eq. (57).

Calculating the different terms of Eqs. (B.1) and (B.2), we obtain a system of dynamical equations. For \(j=1, 2,\ \mbox{and} \ 3\), they are:

$$\begin{aligned} &2 \sum_{i=1}^{3} \lambda _{i} \bigl( x- x_{Bi} -a \cos \theta _{i} - l_{i} \cos ( \alpha _{i} +\varphi ) \bigr) \\ &\quad = ( m_{b} + m_{p} ) \ddot{x} \\ &\qquad{} + \frac{1}{3} m_{b} \sum_{i=1}^{3} \bigl( l_{i} \sin ( \alpha _{i} +\varphi ) \ddot{\varphi } + l_{i} \cos ( \alpha _{i} +\varphi ) \dot{\varphi }^{2} \bigr) \\ &\qquad{} - \frac{1}{6} a\ m_{b} \sum _{i=1}^{3} \bigl( \sin \theta _{i} \ddot{\theta }_{i} + \cos \theta _{i} \dot{\theta }_{i}^{2} \bigr) - F_{Px} \end{aligned}$$
(B.3)
$$\begin{aligned} &2 \sum_{i=1}^{3} \lambda _{i} \bigl( y- y_{Bi} -a \sin \theta _{i} - l_{i} \sin ( \alpha _{i} +\varphi ) \bigr) \\ &\quad = ( m_{b} + m_{p} ) \ddot{y} \\ &\qquad{} - \frac{1}{3} m_{b} \Biggl( \sum_{i=1}^{3} l_{i} \cos ( \alpha _{i} +\varphi ) \ddot{\varphi } - l_{i} \sin ( \alpha _{i} +\varphi ) \dot{\varphi }^{2} \Biggr) \\ &\qquad{} - \frac{1}{6} a m_{b} \Biggl( \sum_{i=1}^{3} \cos \theta _{i} \ddot{\theta }_{i} - \sin \theta _{i} \dot{\theta }_{i}^{2} \Biggr) - F_{Py} \end{aligned}$$
(B.4)
$$\begin{aligned} &2 l \sum_{i=1}^{3} \lambda _{i} \bigl( \ \bigl[ ( x- x_{Bi} ) \sin ( \alpha _{i} +\varphi ) - ( y- y_{Bi} ) \cos ( \alpha _{i} +\varphi ) -a \sin ( \alpha _{i} +\varphi - \theta _{i} ) \bigr] \bigr) \\ &\quad = \biggl[ \frac{1}{3} \bigl( l_{1}^{2} + l_{2}^{2} + l_{3}^{2} \bigr) m_{b} + I_{p} \biggr] \ddot{\varphi } \\ &\qquad{} + \frac{1}{3} m_{b} \Biggl( \sum _{i=1}^{3} l_{i} \sin ( \alpha _{i} +\varphi ) \ddot{x} - l_{i} \cos ( \alpha _{i} +\varphi ) \ddot{y} \Biggr) \\ &\qquad{} - \frac{1}{6} a m_{b} \sum_{i=1}^{3} \cos ( \alpha _{i} +\varphi - \theta _{i} ) \ddot{\theta }_{i} - \tau _{P} \end{aligned}$$
(B.5)

where \(F _{px}\), \(F _{py}\), and \(\tau _{p}\) are the components of the applied forces and torques on the moving platform.

For \(j = 4\), 5, and 6, we have

$$\begin{aligned} \tau _{1} &= \frac{1}{3} ( m_{a} + m_{b} ) a^{2} \ddot{\theta }_{1} \\ &\quad{} - \frac{1}{6} a m_{b} \bigl[ \ddot{x} \sin \theta _{1} - \ddot{y} \cos \theta _{1} + l_{1} \cos ( \alpha _{1} +\varphi - \theta _{1} ) \ddot{\varphi } \bigr] \\ &\quad{} + \frac{1}{6} a m_{b} l_{1} \sin ( \alpha _{1} +\varphi - \theta _{1} ) \dot{\varphi }^{2} \\ &\quad{} -2 \lambda _{1} a \bigl[ ( x- x_{B1} ) \sin \theta _{1} - ( y- y_{B1} ) \cos \theta _{1} + l_{i} \sin ( \alpha _{1} +\varphi - \theta _{1} ) \bigr] \end{aligned}$$
(B.6)
$$\begin{aligned} \tau _{2} & = \frac{1}{3} ( m_{a} + m_{b} ) a^{2} \ddot{\theta }_{2} \\ &\quad{} - \frac{1}{6} a m_{b} \bigl[ \ddot{x} \sin \theta _{2} - \ddot{y} \cos \theta _{2} + l_{2} \cos ( \alpha _{2} +\varphi - \theta _{2} ) \ddot{\varphi } \bigr] \\ &\quad{} + \frac{1}{6} a m_{b} l_{2} \sin ( \alpha _{2} +\varphi - \theta _{2} ) \dot{\varphi }^{2} \\ &\quad{} - 2 \lambda _{2} a \bigl[ ( x- x_{B2} ) \sin \theta _{2} - ( y- y_{B2} ) \cos \theta _{2} + l_{i} \sin ( \alpha _{2} +\varphi - \theta _{2} ) \bigr] \end{aligned}$$
(B.7)
$$\begin{aligned} \tau _{3} &= \frac{1}{3} ( m_{a} + m_{b} ) a^{2} \ddot{\theta }_{3} \\ &\quad{} - \frac{1}{6} a m_{b} \bigl[ \ddot{x} \sin \theta _{3} - \ddot{y} \cos \theta _{3} + l_{3} \cos ( \alpha _{3} +\varphi - \theta _{3} ) \ddot{\varphi } \bigr] \\ &\quad{} + \frac{1}{6} a m_{b} l_{3} \sin ( \alpha _{3} +\varphi - \theta _{3} ) \dot{\varphi }^{2} \\ &\quad{} - 2 \lambda _{3} a \bigl[ ( x- x_{B3} ) \sin \theta _{3} - ( y- y_{B3} ) \cos \theta _{3} + l_{3} \sin ( \alpha _{3} +\varphi - \theta _{3} ) \bigr] \end{aligned}$$
(B.8)

These two sets of equations, Eqs. (B.3)–(B.5) and (B.6)–(B.8), represent the dynamic model of the parallel manipulator. Equations (B.3)–(B.5) form a set of linear equations in three unknowns, from which the three Lagrange multipliers can be determined. Once Lagrange multipliers are found, the actuator torques are determined from the second set of Eqs. (B.6)–(B.8).

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Abo-Shanab, R.F. Dynamic modeling of parallel manipulators based on Lagrange–D’Alembert formulation and Jacobian/Hessian matrices. Multibody Syst Dyn 48, 403–426 (2020). https://doi.org/10.1007/s11044-019-09705-0

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s11044-019-09705-0

Keywords

Navigation