Skip to main content
Log in

An enhanced inverse dynamic and joint force analysis of multibody systems using constraint matrices

  • Published:
Multibody System Dynamics Aims and scope Submit manuscript

Abstract

In this paper, a new way of computing the constraint transfer matrix for the inverse dynamic and joint force analysis of multibody systems is developed. The method is based on the Newton–Euler method and the screw theory notations. This method is first developed in (Taghvaeipour et al. in Multibody Syst. Dyn. 29(2):139–168, 2013), however, in this study, it is efficiently modified by incorporating a unified constraint transfer matrix for all types of joints. This change makes both the derivation of the equations and the computations less time consuming. Moreover, in the foregoing procedure, the constraint wrenches of a system are obtained in one reference frame, namely, the global reference frame. As a case study, the proposed method is carried out on the agile wrist which is a three-legged spherical parallel robot with three degrees of freedom. At the end, the results obtained by the modified method are verified with the ones calculated by the original procedure and a software package.

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
Fig. 11
Fig. 12
Fig. 13

Similar content being viewed by others

References

  1. Abedloo, E., Molaei, A., Taghirad, H.D.: Closed-form dynamic formulation of spherical parallel manipulators by Gibbs–Appell method. In: 2014 Second RSI/ISM International Conference on Robotics and Mechatronics (ICRoM), pp. 576–581 (2014). https://doi.org/10.1109/ICRoM.2014.6990964

    Chapter  Google Scholar 

  2. Abeywardena, S., Chen, C.: Inverse dynamic modelling of a three-legged six-degree-of-freedom parallel mechanism. Multibody Syst. Dyn. 41(1), 1–24 (2017). https://doi.org/10.1007/s11044-016-9506-y

    Article  MathSciNet  MATH  Google Scholar 

  3. Angeles, J.: Fundamentals of Robotic Mechanical Systems: Theory. Methods, and Algorithms, vol. 3 (2007)

    Book  MATH  Google Scholar 

  4. Angeles, J., Lee, S.K.: The formulation of dynamical equations of holonomic mechanical systems using a natural orthogonal complement. J. Appl. Mech. 55, 243 (1988). https://doi.org/10.1115/1.3173642

    Article  MATH  Google Scholar 

  5. Arian, A., Danaei, B., Abdi, H., Nahavandi, S.: Kinematic and dynamic analysis of the gantry-tau, a 3-dof translational parallel manipulator. Appl. Math. Model. 51, 217–231 (2017). https://doi.org/10.1016/j.apm.2017.06.012

    Article  MathSciNet  Google Scholar 

  6. Bai, S., Hansen, M.R., Angeles, J.: A robust forward-displacement analysis of spherical parallel robots. Mech. Mach. Theory 44(12), 2204–2216 (2009). https://doi.org/10.1016/j.mechmachtheory.2009.07.005

    Article  MATH  Google Scholar 

  7. Bi, Z.M., Kang, B.: An inverse dynamic model of over-constrained parallel kinematic machine based on Newton–Euler formulation. J. Dyn. Syst. Meas. Control 136(4), 041001 (2014). https://doi.org/10.1115/1.4026533

    Article  Google Scholar 

  8. Bonev, I.A., Chablat, D., Wenger, P.: Working and assembly modes of the agile eye. In: Proceedings 2006 IEEE International Conference on Robotics and Automation, 2006, ICRA 2006, pp. 2317–2322 (2006). https://doi.org/10.1109/ROBOT.2006.1642048

    Chapter  Google Scholar 

  9. Cammarata, A., Lacagnina, M., Sinatra, R.: Closed-form solutions for the inverse kinematics of the agile eye with constraint errors on the revolute joint axes. In: 2016 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS), pp. 317–322 (2016). https://doi.org/10.1109/IROS.2016.7759073

    Chapter  Google Scholar 

  10. Choi, H.B., Konno, A., Uchiyama, M.: Inverse dynamic analysis of a 4-dof parallel robot h4. In: 2004 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS) (IEEE Cat. No. 04CH37566), vol. 4, pp. 3501–3506 (2004). https://doi.org/10.1109/IROS.2004.1389958

    Chapter  Google Scholar 

  11. Gan, D., Dai, J.S., Dias, J., Seneviratne, L.: Joint force decomposition and variation in unified inverse dynamics analysis of a metamorphic parallel mechanism. Meccanica 51(7), 1583–1593 (2016). https://doi.org/10.1007/s11012-015-0216-y

    Article  MathSciNet  MATH  Google Scholar 

  12. González, F., Kövecses, J.: Use of penalty formulations in dynamic simulation and analysis of redundantly constrained multibody systems. Multibody Syst. Dyn. 29(1), 57–76 (2013). https://doi.org/10.1007/s11044-012-9322-y

    Article  MathSciNet  Google Scholar 

  13. Gosselin, C.M., Hamel, J.F.: The agile eye: a high-performance three-degree-of-freedom camera-orienting device. In: Proceedings of the 1994 IEEE International Conference on Robotics and Automation, vol. 1, pp. 781–786 (1994). https://doi.org/10.1109/ROBOT.1994.351393

    Chapter  Google Scholar 

  14. Khalil, W., Ibrahim, O.: General solution for the dynamic modeling of parallel robots. J. Intell. Robot. Syst. 49(1), 19–37 (2007). https://doi.org/10.1007/s10846-007-9137-x

    Article  Google Scholar 

  15. Kingsley, C., Poursina, M.: Extension of the divide-and-conquer algorithm for the efficient inverse dynamics analysis of multibody systems. Multibody Syst. Dyn. 42(2), 145–167 (2018). https://doi.org/10.1007/s11044-017-9591-6

    Article  MathSciNet  MATH  Google Scholar 

  16. Kuo, C.H., Dai, J.S., Legnani, G.: A non-overconstrained variant of the agile eye with a special decoupled kinematics. Robotica 32(6), 889–905 (2014). https://doi.org/10.1017/S0263574713001100

    Article  Google Scholar 

  17. Li, Y., Xu, Q.: Dynamic analysis of a modified delta parallel robot for cardiopulmonary resuscitation. In: 2005 IEEE/RSJ International Conference on Intelligent Robots and Systems, pp. 233–238 (2005). https://doi.org/10.1109/IROS.2005.1545491

    Chapter  Google Scholar 

  18. Li, Y., Xu, Q.: Kinematics and inverse dynamics analysis for a general 3-prs spatial parallel mechanism. Robotica 23(2), 219–229 (2005). https://doi.org/10.1017/S0263574704000797

    Article  Google Scholar 

  19. Liping, W., Huayang, X., Liwen, G.: Kinematics and inverse dynamics analysis for a novel 3-puu parallel mechanism. Robotica 35(10), 2018–2035 (2017). https://doi.org/10.1017/S0263574716000692

    Article  Google Scholar 

  20. Mata, V., Provenzano, S., Cuadrado, J., Valero, F.: Inverse dynamic problem in robots using Gibbs-Appell equations. Robotica 20(1), 59–67 (2002). https://doi.org/10.1017/S0263574701003502

    Article  Google Scholar 

  21. Miller, K.: Dynamics of the new uwa robot. In: Proc. 2001 Australian Conference on Robotics and Automation, Sydney, Australia, November 14–19 (2001)

    Google Scholar 

  22. Ojeda, J., Martínez-Reina, J., Mayo, J.: The effect of kinematic constraints in the inverse dynamics problem in biomechanics. Multibody Syst. Dyn. 37(3), 291–309 (2016). https://doi.org/10.1007/s11044-016-9508-9

    Article  Google Scholar 

  23. Pang, H., Shahinpoor, M.: Inverse dynamics of a parallel manipulator. J. Field Robot. 11(8), 693–702 (1994). https://doi.org/10.1002/rob.4620110803

    Article  MATH  Google Scholar 

  24. Pappalardo, C.M., Guida, D.: On the Lagrange multipliers of the intrinsic constraint equations of rigid multibody mechanical systems. Arch. Appl. Mech. 88(3), 419–451 (2018). https://doi.org/10.1007/s00419-017-1317-y

    Article  Google Scholar 

  25. Raoofian, A., Kamali, A., Taghvaeipour, A.: Forward dynamic analysis of parallel robots using modified decoupled natural orthogonal complement method. Mech. Mach. Theory 115, 197–217 (2017). https://doi.org/10.1016/j.mechmachtheory.2017.05.002

    Article  Google Scholar 

  26. Roth, B.: Screws, motors, and wrenches that cannot be bought in a hardware store. In: Robotics Research: The First International Symposium, vol. 8, pp. 679–693 (1984)

    Google Scholar 

  27. Staicu, S.: Recursive modelling in dynamics of agile wrist spherical parallel robot. Robot. Comput.-Integr. Manuf. 25(2), 409–416 (2009). https://doi.org/10.1016/j.rcim.2008.02.001

    Article  Google Scholar 

  28. Staicu, S.: Matrix modeling of inverse dynamics of spatial and planar parallel robots. Multibody Syst. Dyn. 27(2), 239–265 (2012). https://doi.org/10.1007/s11044-011-9281-8

    Article  MathSciNet  MATH  Google Scholar 

  29. Staicu, S., Carp-Ciocardia, D.C.: Dynamic analysis of clavel’s delta parallel robot. In: 2003 IEEE International Conference on Robotics and Automation (Cat. No. 03CH37422), vol. 3, pp. 4116–4121 (2003). https://doi.org/10.1109/ROBOT.2003.1242230

    Chapter  Google Scholar 

  30. Taghvaeipour, A., Angeles, J., Lessard, L.: Constraint-wrench analysis of robotic manipulators. Multibody Syst. Dyn. 29(2), 139–168 (2013). https://doi.org/10.1007/s11044-012-9318-7

    Article  MathSciNet  Google Scholar 

  31. Tian, Y., Takane, Y.: The inverse of any two-by-two nonsingular partitioned matrix and three matrix inverse completion problems. Comput. Math. Appl. 57(8), 1294–1304 (2009). https://doi.org/10.1016/j.camwa.2009.01.025

    Article  MathSciNet  MATH  Google Scholar 

  32. Wei, H.X., Wang, T.M., Liu, M., Xiao, J.Y.: Inverse dynamic modeling and analysis of a new caterpillar robotic mechanism by Kane’s method. Robotica 31(3), 493–501 (2013). https://doi.org/10.1017/S0263574712000483

    Article  Google Scholar 

  33. Wu, G., Caro, S., Bai, S., Kepler, J.: Dynamic modeling and design optimization of a 3-dof spherical parallel manipulator. Robot. Auton. Syst. 62(10), 1377–1386 (2014). https://doi.org/10.1016/j.robot.2014.06.006

    Article  Google Scholar 

  34. Yahyapour, I., Yazdani, M., Masouleh, M.T., Tabrizi, M.G.: Dynamic modeling and computed torque control of a 3-dof spherical parallel manipulator. In: 2014 Second RSI/ISM International Conference on Robotics and Mechatronics (ICRoM), pp. 280–285 (2014). https://doi.org/10.1109/ICRoM.2014.6990914

    Chapter  Google Scholar 

  35. Yuan, W.H., Tsai, M.S.: A novel approach for forward dynamic analysis of 3-prs parallel manipulator with consideration of friction effect. Robot. Comput.-Integr. Manuf. 30(3), 315–325 (2014). https://doi.org/10.1016/j.rcim.2013.10.009

    Article  Google Scholar 

  36. Zhao, Y., Gao, F.: Inverse dynamics of the 6-dof out-parallel manipulator by means of the principle of virtual work. Robotica 27(2), 259–268 (2009). https://doi.org/10.1017/S0263574708004657

    Article  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Afshin Taghvaeipour.

Additional information

Publisher’s Note

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

Appendix: Derivation of screw matrix for different types of kinematic pairs

Appendix: Derivation of screw matrix for different types of kinematic pairs

In this section, the screw matrices will be derived and evaluated for different types of kinematic pairs. The following screw matrices can also be found in [3, 30]; however, the following derivations can give bright insight about the unit screws of kinematic pairs and the development of the formulation proposed.

Revolute joint

Consider two rigid links, 1 and 2, are connected by means of a revolute joint 2, as depicted in Fig. 14. Links 1 and 2 can rotate with respect to each other about the axis of rotation with unit vector \(\mathbf{u}_{2}\). The point \(P\) is considered at the center of the joint on the axis of rotation. \(P_{1}\) and \(P_{2}\) has the same position as point \(P\) but are considered attached to the links 1 and 2, respectively. Writing Eq. (8) for the revolute joint will yield

$$ \boldsymbol{\lambda }^{\mathrm{T}}_{2}\Delta \bar{\mathbf{t}}_{2}= \boldsymbol{\lambda }^{\mathrm{T}}_{2} (\bar{\mathbf{t}}_{2}-\bar{ \mathbf{t}}_{1} )= \boldsymbol{\lambda }^{\mathrm{T}}_{2} \begin{bmatrix} \boldsymbol{\omega }_{2}-\boldsymbol{\omega }_{1} \\ \bar{\mathbf{v}}_{2}-\bar{\mathbf{v}}_{1} \end{bmatrix} =0 $$
(28)

in which \(\boldsymbol{\omega }_{i}\) is the angular velocity of link \(i\) and, \(\bar{\mathbf{v}}_{i}\) is the velocity of point \(P_{i}\); \(i=1,2\). Since points \(P_{1}\) and \(P_{2}\) have no relative motion, \(\bar{\mathbf{v}}_{2}-\bar{\mathbf{v}}_{1}=\mathbf{0}\). Moreover, \(\boldsymbol{\omega }_{2}-\boldsymbol{\omega }_{1}\) is the relative angular velocity of the links 1 and 2, namely \(\boldsymbol{\omega }_{\mathit{rel}}={\omega }_{\mathit{rel}}\mathbf{u}_{2}\), in which \({\omega }_{\mathit{rel}}\) is the magnitude of vector \(\boldsymbol{\omega } _{\mathit{rel}}\). Thus, Eq. (28) becomes

$$ \boldsymbol{\lambda }^{\mathrm{T}}_{2}\Delta \bar{\mathbf{t}}_{2}= \boldsymbol{\lambda }^{\mathrm{T}}_{2} \begin{bmatrix} \boldsymbol{\omega }_{\mathit{rel}} \\ \mathbf{0} \end{bmatrix} ={\omega }_{\mathit{rel}} \boldsymbol{\lambda }^{\mathrm{T}}_{2} \begin{bmatrix} \mathbf{u}_{2} \\ \mathbf{0} \end{bmatrix} =0. $$
Fig. 14
figure 14

Links 1 and 2 are connected by a revolute joint

Regarding Eq. (9) and noting that \({\omega }_{\mathit{rel}} \neq 0\), it can be concluded that the unit screw of a revolute joint with the axis of rotation along unit vector \(\mathbf{u}\) is,

$$ \mathbf{s}_{\mathrm{R}}= \begin{bmatrix} \mathbf{u} \\ \mathbf{0} \end{bmatrix} . $$
(29)

Prismatic joint

The rigid links 1 and 2, are now connected by means of a prismatic joint 2, as depicted in Fig. 15. Link 1 can slide along the axis \(U_{2}\) with the unit vector \(\mathbf{u}_{2}\). The point \(P\) is considered on the axis of sliding. \(P_{1}\) and \(P_{2}\) has the same position but attached to the links 1 and 2, respectively. Writing Eq. (28) for the prismatic joint results,

$$ \boldsymbol{\lambda }^{\mathrm{T}}_{2} \Delta \bar{ \mathbf{t}}_{2}=\boldsymbol{\lambda }^{\mathrm{T}}_{2} (\bar{ \mathbf{t}}_{2}-\bar{\mathbf{t}}_{1} )= \boldsymbol{\lambda } ^{\mathrm{T}}_{2} \begin{bmatrix} \boldsymbol{\omega }_{2}-\boldsymbol{\omega }_{1} \\ \bar{\mathbf{v}}_{2}-\bar{\mathbf{v}}_{1} \end{bmatrix} =0 $$
(28)

in which \(\boldsymbol{\omega }_{i}\) is the angular velocity of link \(i\) and, \(\bar{\mathbf{v}}_{i}\) is the velocity of point \(P_{i}\); \(i=1,2\). As links 1 and 2 do not have relative angular velocity, \(\boldsymbol{\omega }_{2}-\boldsymbol{\omega }_{1}=\mathbf{0}\). Moreover, \(\bar{\mathbf{v}}_{2}-\bar{\mathbf{v}}_{1}\) is the relative motion of the points \(P_{1}\) and \(P_{2}\), namely \(\bar{\mathbf{v}} _{\mathit{rel}}=\bar{v}_{\mathit{rel}}\mathbf{u}_{2}\), in which \(\bar{v}_{\mathit{rel}}\) is the magnitude of vector \(\bar{\mathbf{v}}_{\mathit{rel}}\). Thus,

$$ \boldsymbol{\lambda }^{\mathrm{T}}_{2}\Delta \bar{\mathbf{t}}_{2}= \boldsymbol{\lambda }^{\mathrm{T}}_{2} \begin{bmatrix} \mathbf{0} \\ \bar{\mathbf{v}}_{\mathit{rel}} \end{bmatrix} =\bar{v}_{\mathit{rel}} \boldsymbol{\lambda }^{\mathrm{T}}_{2} \begin{bmatrix} \mathbf{0} \\ \mathbf{u}_{2} \end{bmatrix} =0 . $$
(30)
Fig. 15
figure 15

Links 1 and 2 are connected by a prismatic joint

Regarding Eq. (9) and noting that \(\bar{v}_{\mathit{rel}} \neq 0\), it can be concluded that the unit screw of a prismatic joint with the axis of sliding along the unit vector \(\mathbf{u}\) is

$$ \mathbf{s}_{\mathrm{P}}= \begin{bmatrix} \mathbf{0} \\ \mathbf{u} \end{bmatrix} . $$
(31)

Helical joint

As it is depicted in Fig. 16, link 2 is attached to link 1 by a helical joint in which link 2 can rotate around the axis \(U_{2}\) while it moves linearly along the same axis. The point \(P\) is considered on the axis \(U_{2}\) and, \(P_{1}\) and \(P_{2}\) are attached to the links 1 and 2, respectively. Writing Eq. (28) for the helical joint will yield

$$ \boldsymbol{\lambda }^{\mathrm{T}}_{2} \Delta \bar{ \mathbf{t}}_{2}=\boldsymbol{\lambda }^{\mathrm{T}}_{2} (\bar{ \mathbf{t}}_{2}-\bar{\mathbf{t}}_{1} )= \boldsymbol{\lambda } ^{\mathrm{T}}_{2} \begin{bmatrix} \boldsymbol{\omega }_{2}-\boldsymbol{\omega }_{1} \\ \bar{\mathbf{v}}_{2}-\bar{\mathbf{v}}_{1} \end{bmatrix} =0 . $$
(28)

The terms \(\boldsymbol{\omega }_{i}\) and \(\bar{\mathbf{v}}_{i}\) are defined as before. \(\boldsymbol{\omega }_{2}-\boldsymbol{\omega }_{1}\) is the relative angular velocity of the links 1 and 2, i.e. \(\boldsymbol{\omega }_{\mathit{rel}}={\omega }_{\mathit{rel}}\mathbf{u}_{2}\). Moreover, \(\bar{\mathbf{v}}_{2}-\bar{\mathbf{v}}_{1}\) is the relative motion of the points \(P_{1}\) and \(P_{2}\), namely \(\bar{\mathbf{v}}_{\mathit{rel}}= \bar{v}_{\mathit{rel}}\mathbf{u}_{2}\). Hence,

$$ \boldsymbol{\lambda }^{\mathrm{T}}_{2}\Delta \bar{\mathbf{t}}_{2}= \boldsymbol{\lambda }^{\mathrm{T}}_{2} \begin{bmatrix} \boldsymbol{\omega }_{\mathit{rel}} \\ \bar{\mathbf{v}}_{\mathit{rel}} \end{bmatrix} =0 . $$
(32)

In a helical joint, the translational velocity of link 2 is proportional to its angular velocity, i.e.,

$$ \bar{\mathbf{v}}_{\mathit{rel}}=p\boldsymbol{\omega }_{\mathit{rel}} $$

where \(p\) is called the joint’s pitch. Thus,

$$ \boldsymbol{\lambda }^{\mathrm{T}}_{2} \begin{bmatrix} \boldsymbol{\omega }_{\mathit{rel}} \\ \bar{\mathbf{v}}_{\mathit{rel}} \end{bmatrix} =\boldsymbol{\lambda }^{\mathrm{T}}_{2} \begin{bmatrix} \boldsymbol{\omega }_{\mathit{rel}} \\ p\boldsymbol{\omega }_{\mathit{rel}} \end{bmatrix} ={\omega }_{\mathit{rel}}\boldsymbol{\lambda }^{\mathrm{T}}_{2} \begin{bmatrix} \mathbf{u}_{2} \\ p\mathbf{u}_{2} \end{bmatrix} =0 . $$
(33)
Fig. 16
figure 16

Links 1 and 2 are connected by a helical joint

Regarding Eq. (9) and noting that \({\omega }_{\mathit{rel}} \neq 0\), it can be concluded that the unit screw for a helical joint with the axis of rotation along the unit vector \(\mathbf{u}\), and pitch \(p\), is:

$$ \mathbf{s}_{\mathrm{H}}= \begin{bmatrix} \mathbf{u} \\ p\mathbf{u} \end{bmatrix} . $$
(34)

Cylindrical joint

Regarding Fig. 17, link 2 is connected to link 1 by a cylindrical joint in which the link 2 can move along the axis \(U_{2}\) while it rotates freely about the same axis. \(P_{1}\) and \(P_{2}\) has the same position but attached to the links 1 and 2, respectively. Writing Eq. (28) for the cylindrical joint will result in

$$ \boldsymbol{\lambda }^{\mathrm{T}}_{2} \Delta \bar{ \mathbf{t}}_{2}=\boldsymbol{\lambda }^{\mathrm{T}}_{2} (\bar{ \mathbf{t}}_{2}-\bar{\mathbf{t}}_{1} )= \boldsymbol{\lambda } ^{\mathrm{T}}_{2} \begin{bmatrix} \boldsymbol{\omega }_{2}-\boldsymbol{\omega }_{1} \\ \bar{\mathbf{v}}_{2}-\bar{\mathbf{v}}_{1} \end{bmatrix} =0 ; $$
(28)

\(\boldsymbol{\omega }_{2}-\boldsymbol{\omega }_{1}\) is the relative angular velocity of the links 1 and 2, i.e. \(\boldsymbol{\omega } _{\mathit{rel}}={\omega }_{\mathit{rel}}\mathbf{u}_{2}\). Moreover, \(\bar{\mathbf{v}} _{2}-\bar{\mathbf{v}}_{1}\) is the relative motion of the points \(P_{1}\) and \(P_{2}\), namely \(\bar{\mathbf{v}}_{\mathit{rel}}=\bar{v}_{\mathit{rel}} \mathbf{u}_{2}\). Thus,

$$ \boldsymbol{\lambda }^{\mathrm{T}}_{2}\Delta \bar{\mathbf{t}}_{2}= \boldsymbol{\lambda }^{\mathrm{T}}_{2} \begin{bmatrix} \boldsymbol{\omega }_{\mathit{rel}} \\ \bar{\mathbf{v}}_{\mathit{rel}} \end{bmatrix} ={\omega }_{\mathit{rel}} \boldsymbol{\lambda }^{\mathrm{T}}_{2} \begin{bmatrix} \mathbf{u}_{2} \\ \mathbf{0} \end{bmatrix} +\bar{v}_{\mathit{rel}}\boldsymbol{\lambda }^{\mathrm{T}}_{2} \begin{bmatrix} \mathbf{0} \\ \mathbf{u}_{2} \end{bmatrix} =0 ; $$
(35)

Equation (35) is of the form

$$ ax+by=0. $$
(36)

In Eq. (36), if \(x\) and \(y\) are independent, non-zero variables, then it can be concluded that \(a=b=0\). Similarly in Eq. (35), \({\omega }_{\mathit{rel}}\) and \(\bar{v}_{\mathit{rel}}\) are non-zero and independent variables as the cylindrical joint is a 2-DOF kinematic pair. Hence, it can be concluded that coefficients in Eq. (35) are equal to zero. So,

$$ \boldsymbol{\lambda }^{\mathrm{T}}_{2} \begin{bmatrix} \mathbf{u}_{2} \\ \mathbf{0} \end{bmatrix} =0, \qquad \boldsymbol{\lambda }^{\mathrm{T}}_{2} \begin{bmatrix} \mathbf{0} \\ \mathbf{u}_{2} \end{bmatrix} =0. $$

Casting the above equations in matrix form yields

$$ \boldsymbol{\lambda }^{\mathrm{T}}_{2} \begin{bmatrix} \mathbf{u}_{2}&\mathbf{0} \\ \mathbf{0}&\mathbf{u}_{2} \end{bmatrix} =\mathbf{0}. $$

According to Eq. (11), it can be concluded that the screw matrix of a cylindrical joint with the axis of rotation and translation along the unit vector \(\mathbf{u}\) is

$$ \mathbf{S}_{\mathrm{CY}}= \begin{bmatrix} \mathbf{u}&\mathbf{0} \\ \mathbf{0}&\mathbf{u} \end{bmatrix} . $$
(37)
Fig. 17
figure 17

Links 1 and 2 are connected by a cylindrical joint

Spherical joint

Figure 18 shows a spherical joint connecting links 1 and 2. The point \(P\) is considered at the intersection of links’ axes. Writing Eq. (28) for the spherical joint will culminate in,

$$ \boldsymbol{\lambda }^{\mathrm{T}}_{2} \Delta \bar{ \mathbf{t}}_{2}=\boldsymbol{\lambda }^{\mathrm{T}}_{2} (\bar{ \mathbf{t}}_{2}-\bar{\mathbf{t}}_{1} )= \boldsymbol{\lambda } ^{\mathrm{T}}_{2} \begin{bmatrix} \boldsymbol{\omega }_{2}-\boldsymbol{\omega }_{1} \\ \bar{\mathbf{v}}_{2}-\bar{\mathbf{v}}_{1} \end{bmatrix} =0 . $$
(28)

Since points \(P_{1}\) and \(P_{2}\) have no relative motion, \(\bar{ \mathbf{v}}_{2}-\bar{\mathbf{v}}_{1}=\mathbf{0}\). Moreover, \(\boldsymbol{\omega }_{2}-\boldsymbol{\omega }_{1}\) is the relative angular velocity of the links 1 and 2. As the spherical joint can rotate in every direction, \(\boldsymbol{\omega }_{\mathit{rel}}\) has components in three perpendicular directions, i.e.

$$ \boldsymbol{\omega }_{2}-\boldsymbol{\omega }_{1}= \boldsymbol{\omega }_{\mathit{rel}}={}^{\mathbf{u}_{2}}{{\omega }} _{\mathit{rel}}\mathbf{u}_{2}+{}^{\mathbf{e}_{2}}{{\omega }}_{\mathit{rel}} \mathbf{e}_{2}+{}^{\mathbf{q}_{2}}{{\omega }}_{\mathit{rel}} \mathbf{q}_{2} $$

where \(\mathbf{u}_{2}\) and \(\mathbf{e}_{2}\) are two arbitrary perpendicular unit vectors of the spherical joint as shown in Fig. 18. Also, \(\mathbf{q}_{2}=\mathbf{u}_{2} \times \mathbf{e}_{2}\). Moreover, \({}^{\mathbf{u}_{2}}{{\omega }}_{\mathit{rel}}\), \({}^{\mathbf{e}_{2}}{{\omega }}_{\mathit{rel}}\) and \({}^{\mathbf{q}_{2}}{{\omega }}_{\mathit{rel}}\) are the components of the relative angular velocity along the unit vectors \(\mathbf{u}_{2}\), \(\mathbf{e}_{2}\) and \(\mathbf{q}_{2}\), respectively. Thus,

$$ \boldsymbol{\lambda }^{\mathrm{T}}_{2}\Delta \bar{\mathbf{t}}_{2}= \boldsymbol{\lambda }^{\mathrm{T}}_{2} \begin{bmatrix} \boldsymbol{\omega }_{\mathit{rel}} \\ \mathbf{0} \end{bmatrix} ={}^{\mathbf{u}_{2}}{{\omega }}_{\mathit{rel}}\boldsymbol{\lambda } ^{\mathrm{T}}_{2} \begin{bmatrix} \mathbf{u}_{2} \\ \mathbf{0} \end{bmatrix} +{}^{\mathbf{e}_{2}}{{\omega }}_{\mathit{rel}}\boldsymbol{\lambda } ^{\mathrm{T}}_{2} \begin{bmatrix} \mathbf{e}_{2} \\ \mathbf{0} \end{bmatrix} +{}^{\mathbf{q}_{2}}{{\omega }}_{\mathit{rel}}\boldsymbol{\lambda } ^{\mathrm{T}}_{2} \begin{bmatrix} \mathbf{q}_{2} \\ \mathbf{0} \end{bmatrix} =0 ; $$
(38)

\({}^{\mathbf{u}_{2}}{{\omega }}_{\mathit{rel}}\), \({}^{\mathbf{e}_{2}}{{\omega }}_{\mathit{rel}}\) and \({}^{\mathbf{q}_{2}}{{\omega }}_{\mathit{rel}}\) are completely independent as the spherical joint is a 3-DOF kinematic pair. Also, \({}^{\mathbf{u}_{2}}{{\omega }}_{\mathit{rel}}\), \({}^{\mathbf{e}_{2}}{{\omega }}_{\mathit{rel}}\), \({}^{\mathbf{q}_{2}}{{\omega }}_{\mathit{rel}}\neq 0\). Similar to what argued for the cylindrical joint, it can be concluded that coefficients in Eq. (38) are equal to zero. Thus,

$$ \boldsymbol{\lambda }^{\mathrm{T}}_{2} \begin{bmatrix} \mathbf{u}_{2}&\mathbf{e}_{2}&\mathbf{q}_{2} \\ \mathbf{0}&\mathbf{0}&\mathbf{0} \end{bmatrix} =\mathbf{0} . $$
(39)

By comparing Eqs. (11) and (39), it can be concluded that the screw matrix of a spherical joint with two arbitrary perpendicular axes along the unit vectors \(\mathbf{u}\) and \(\mathbf{e}\) is,

$$ \mathbf{S}_{\mathrm{S}}= \begin{bmatrix} \mathbf{u}&\mathbf{e}&\mathbf{q} \\ \mathbf{0}&\mathbf{0}&\mathbf{0} \end{bmatrix} $$
(40)

where \(\mathbf{q}=\mathbf{u}\times \mathbf{e}\).

Fig. 18
figure 18

Links 1 and 2 are connected by a spherical joint

Planar joint

A planar joint is shown in Fig. 19. The point \(P\) is considered on the intersection of two arbitrary axes, i.e. \(U_{2}\) and \(E_{2}\), on the plane of contact. Equation (28) for a planar joint will be of the following form:

$$ \boldsymbol{\lambda }^{\mathrm{T}}_{2} \Delta \bar{ \mathbf{t}}_{2}=\boldsymbol{\lambda }^{\mathrm{T}}_{2} (\bar{ \mathbf{t}}_{2}-\bar{\mathbf{t}}_{1} )= \boldsymbol{\lambda } ^{\mathrm{T}}_{2} \begin{bmatrix} \boldsymbol{\omega }_{2}-\boldsymbol{\omega }_{1} \\ \bar{\mathbf{v}}_{2}-\bar{\mathbf{v}}_{1} \end{bmatrix} =0 ; $$
(28)

\(\bar{\mathbf{v}}_{2}-\bar{\mathbf{v}}_{1}\) is the relative motion of the points \(P_{1}\) and \(P_{2}\), which is in the two-dimensional space. So, \(\bar{\mathbf{v}}_{\mathit{rel}}\) has components in two perpendicular axes which both are in the plane of contact. The unit vectors of these arbitrary axes are shown in Fig. 19 by \(\mathbf{u} _{2}\) and \(\mathbf{e}_{2}\). Moreover, \(\boldsymbol{\omega }_{2}- \boldsymbol{\omega }_{1}\) is the relative angular velocity of the links 1 and 2 which is about the axis perpendicular to the plane of contact, namely, it is directed along \(\mathbf{q}_{2}=\mathbf{u}_{2} \times \mathbf{e}_{2}\). Thus,

$$\begin{aligned} \bar{\mathbf{v}}_{2}-\bar{\mathbf{v}}_{1} &=\bar{ \mathbf{v}}_{\mathit{rel}}= {}^{{\mathbf{u}_{2}}}{\bar{{v}}_{\mathit{rel}}} \mathbf{u}_{2}+ {}^{{\mathbf{e}_{2}}}{\bar{{v}}_{\mathit{rel}}} \mathbf{e}_{2}, \\ \boldsymbol{\omega }_{2}-\boldsymbol{\omega }_{1} &= \boldsymbol{\omega }_{\mathit{rel}}={\omega }_{\mathit{rel}} \mathbf{q}_{2}, \end{aligned}$$

where \({}^{{\mathbf{u}_{2}}}{\bar{{v}}_{\mathit{rel}}}\) and \({}^{{\mathbf{e}_{2}}}{\bar{{v}}_{\mathit{rel}}}\) are the components of the relative translational velocity along unit vectors \(\mathbf{u} _{2}\) and \(\mathbf{e}_{2}\), respectively. So,

$$ \boldsymbol{\lambda }^{\mathrm{T}}_{2}\Delta \bar{\mathbf{t}}_{2}= \boldsymbol{\lambda }^{\mathrm{T}}_{2} \begin{bmatrix} \boldsymbol{\omega }_{\mathit{rel}} \\ \bar{\mathbf{v}}_{\mathit{rel}} \end{bmatrix} ={}^{{\mathbf{u}_{2}}}{ \bar{{v}}_{\mathit{rel}}}\boldsymbol{\lambda } ^{\mathrm{T}}_{2} \begin{bmatrix} \mathbf{0} \\ \mathbf{u}_{2} \end{bmatrix} +{}^{{\mathbf{e}_{2}}}{ \bar{{v}}_{\mathit{rel}}}\boldsymbol{\lambda } ^{\mathrm{T}}_{2} \begin{bmatrix} \mathbf{0} \\ \mathbf{e}_{2} \end{bmatrix} +{\omega }_{\mathit{rel}} \boldsymbol{\lambda }^{\mathrm{T}}_{2} \begin{bmatrix} \mathbf{q}_{2} \\ \mathbf{0} \end{bmatrix} =0 ; $$
(41)

\({}^{{\mathbf{u}_{2}}}{\bar{{v}}_{\mathit{rel}}}\), \({}^{{\mathbf{e}_{2}}}{\bar{{v}}_{\mathit{rel}}}\) and \({\omega }_{\mathit{rel}}\) are independent as the planar joint is a 3-DOF kinematic pair. Also, \({}^{{\mathbf{u}_{2}}}{\bar{{v}}_{\mathit{rel}}}\), \({}^{{\mathbf{e}_{2}}}{\bar{{v}}_{\mathit{rel}}}\), \({\omega }_{\mathit{rel}} \neq 0\). Thus, it can be concluded that coefficients in Eq. (41) are equal to zero, namely,

$$ \boldsymbol{\lambda }^{\mathrm{T}}_{2} \begin{bmatrix} \mathbf{0}&\mathbf{0}&\mathbf{q}_{2} \\ \mathbf{u}_{2}&\mathbf{e}_{2}&\mathbf{0} \end{bmatrix} =\mathbf{0} . $$
(42)

By comparing Eqs. (11) and (42), it can be concluded that the screw matrix of a planar joint with two arbitrary perpendicular unit vectors \(\mathbf{u}\) and \(\mathbf{e}\) in its plane is

$$ \mathbf{S}_{\mathrm{PL}}= \begin{bmatrix} \mathbf{0}&\mathbf{0}&\mathbf{q} \\ \mathbf{u}&\mathbf{e}&\mathbf{0} \end{bmatrix} $$
(43)

where \(\mathbf{q}=\mathbf{u}\times \mathbf{e}\).

Fig. 19
figure 19

Links 1 and 2 are connected by a planar joint

Universal joint

A universal joint is shown in Fig. 20. The links 1 and 2 can rotate about the axes \(U_{2}\) and \(E_{2}\). The point \(P\) is considered at the intersection point of the two axes. Writing Eq. (28) for the universal joint will yield,

$$ \boldsymbol{\lambda }^{\mathrm{T}}_{2} \Delta \bar{ \mathbf{t}}_{2}=\boldsymbol{\lambda }^{\mathrm{T}}_{2} (\bar{ \mathbf{t}}_{2}-\bar{\mathbf{t}}_{1} )= \boldsymbol{\lambda } ^{\mathrm{T}}_{2} \begin{bmatrix} \boldsymbol{\omega }_{2}-\boldsymbol{\omega }_{1} \\ \bar{\mathbf{v}}_{2}-\bar{\mathbf{v}}_{1} \end{bmatrix} =0 . $$
(28)

Since points \(P_{1}\) and \(P_{2}\) have no relative motion, \(\bar{ \mathbf{v}}_{2}-\bar{\mathbf{v}}_{1}=\mathbf{0}\). Moreover, \(\boldsymbol{\omega }_{2}-\boldsymbol{\omega }_{1}\) is the relative angular velocity of the links 1 and 2 which can occur about both axes \(U_{2}\) and \(E_{2}\). So, \(\boldsymbol{\omega }_{\mathit{rel}}\) has components along two perpendicular unit vectors \(\mathbf{u}_{2}\) and \(\mathbf{e}_{2}\). Thus,

$$ \boldsymbol{\omega }_{2}-\boldsymbol{\omega }_{1}= \boldsymbol{\omega }_{\mathit{rel}}= {}^{{\mathbf{u}_{2}}}{{\omega }_{\mathit{rel}}}\mathbf{u}_{2}+ {}^{{\mathbf{e}_{2}}}{{\omega }_{\mathit{rel}}}\mathbf{e}_{2} $$

where \({}^{{\mathbf{u}_{2}}}{{\omega }_{\mathit{rel}}}\) and \({}^{{\mathbf{e}_{2}}}{{\omega }_{\mathit{rel}}}\) are the components of the relative angular velocity of links 1 and 2 along the unit vectors \(\mathbf{u}_{2}\) and \(\mathbf{e}_{2}\), respectively. Accordingly,

$$ \boldsymbol{\lambda }^{\mathrm{T}}_{2}\Delta \bar{\mathbf{t}}_{2}= \boldsymbol{\lambda }^{\mathrm{T}}_{2} \begin{bmatrix} \boldsymbol{\omega }_{\mathit{rel}} \\ \mathbf{0} \end{bmatrix} ={}^{{\mathbf{u}_{2}}}{{\omega }_{\mathit{rel}}}\boldsymbol{\lambda } ^{\mathrm{T}}_{2} \begin{bmatrix} \mathbf{u}_{2} \\ \mathbf{0} \end{bmatrix} +{}^{{\mathbf{e}_{2}}}{{\omega }_{\mathit{rel}}}\boldsymbol{\lambda } ^{\mathrm{T}}_{2} \begin{bmatrix} \mathbf{e}_{2} \\ \mathbf{0} \end{bmatrix} =0 ; $$
(44)

\({}^{{\mathbf{u}_{2}}}{{\omega }_{\mathit{rel}}}\) and \({}^{{\mathbf{e}_{2}}}{{\omega }_{\mathit{rel}}}\) are independent variables as the universal joint is a 2-DOF kinematic pair. Also, \({}^{{\mathbf{u}_{2}}}{{\omega }_{\mathit{rel}}}\), \({}^{{\mathbf{e}_{2}}}{{\omega }_{\mathit{rel}}}\neq 0\). Similar to the preceding parts, it can be concluded that

$$ \boldsymbol{\lambda }^{\mathrm{T}}_{2} \begin{bmatrix} \mathbf{u}_{2}&\mathbf{e}_{2} \\ \mathbf{0}&\mathbf{0} \end{bmatrix} =\mathbf{0} . $$
(45)

By comparing Eqs. (11) and (45), it can be concluded that the screw matrix of a universal joint with the axes of rotation along the unit vectors \(\mathbf{u}\) and \(\mathbf{e}\) is

$$ \mathbf{S}_{\mathrm{U}}= \begin{bmatrix} \mathbf{u}&\mathbf{e} \\ \mathbf{0}&\mathbf{0} \end{bmatrix} . $$
(46)
Fig. 20
figure 20

Links 1 and 2 are connected by a universal joint

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Ghaedrahmati, R., Raoofian, A., Kamali E., A. et al. An enhanced inverse dynamic and joint force analysis of multibody systems using constraint matrices. Multibody Syst Dyn 46, 329–353 (2019). https://doi.org/10.1007/s11044-019-09674-4

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s11044-019-09674-4

Keywords

Navigation