SimMechanics and Forward and Inverse Problem of Dynamics
Darina Hroncová1,, Róbert Rákay2, Tomáš Lipták1
1Department of Mechatronics, Faculty of Mechanical Engineering, Technical University of Košice, Letná 9, 042 00 Košice, Slovak republic
2Department of Automation, Control and Human Machine Interactions, Faculty of Mechanical Engineering, Technical University of Košice, Letná 9, 042 00 Košice, Slovak republic
Abstract | |
1. | Introduction |
2. | Description of the Model |
3. | Inverse Problem |
4. | Direct Problem |
5. | Conclusion |
Acknowledgement | |
References |
Abstract
In the paper we show the possibilities of physical modeling in Matlab/SimMechanics on a simple mechanical model of robot arm with two links. We deal with its direct and inverse dynamics. Direct problem investigates the mechanical movement of the robot under the action of given forces and moments. In inverse problem we identify the forces which cause a prescribed motion of the effector. Both problems are solved using block diagrams in SimMechanics. Results are presented graphically.
Keywords: forward dynamics, inverse dynamics, Matlab, Simulink, SimMechanics
Copyright © 2015 Science and Education Publishing. All Rights Reserved.Cite this article:
- Darina Hroncová, Róbert Rákay, Tomáš Lipták. SimMechanics and Forward and Inverse Problem of Dynamics. Journal of Automation and Control. Vol. 3, No. 3, 2015, pp 58-61. https://pubs.sciepub.com/automation/3/3/3
- Hroncová, Darina, Róbert Rákay, and Tomáš Lipták. "SimMechanics and Forward and Inverse Problem of Dynamics." Journal of Automation and Control 3.3 (2015): 58-61.
- Hroncová, D. , Rákay, R. , & Lipták, T. (2015). SimMechanics and Forward and Inverse Problem of Dynamics. Journal of Automation and Control, 3(3), 58-61.
- Hroncová, Darina, Róbert Rákay, and Tomáš Lipták. "SimMechanics and Forward and Inverse Problem of Dynamics." Journal of Automation and Control 3, no. 3 (2015): 58-61.
Import into BibTeX | Import into EndNote | Import into RefMan | Import into RefWorks |
At a glance: Figures
1. Introduction
Computer modeling is an effective tool to accelerate and improve the design of new mechanical systems. Matlab and SimMechanics [1] are appropriate software tools for creating computer models [7]. In dynamic analysis there are two basic tasks - inverse and direct analysis [5]. In inverse problem we identify the forces which cause a prescribed motion of the effector. Direct problem investigates the movement of the mechanical system under the action of given forces.
2. Description of the Model
We investigate the model of two link of manipulator which is a quite often analyses dynamic system (Figure 1a). Links are connected by two joints and there is a motor at each joint and joint angles are and
.
Location of the endpoint L of member 2 in the coordinate system O, x, y is given by [2]:
![]() | (1) |
![]() | (2) |
The arm is to start from rest at a known position and move to a desired position. The task is to investigate the necessary movement in kinematics pairs which would ensure the relocation of the end point L of member 2 from position L0 (4.5, 0) to position L1 (0, 3) (Figure 1b). At the beginning and end of the movement the velocity and acceleration of point L should be zero.
We try to find the time diagram of angular rotations and
in the form of a fifth degree polynomials [2]:
![]() | (3) |
![]() | (4) |

where and
are the initial condition at time
and coefficient vectors:
![]() | (5) |
![]() | (6) |
are to be determined to provide the desired motion. The choice of the degree of the polynomials will be explained as the equations of motion are described. For desired initial coordinates at time t=0 and desired final coordinates at time
,the required values for angles
can be found using trigonometry. For given values of
and
and for given values of
and
, matrix equations are to be set up and solved for coefficient vector a and coefficient vector b. These results are to be used to plot the path of the hand.
The remaining constraints in the arm motion are that the velocity and acceleration of the links are to be zero at the known starting location and desired final location. This implies that the angular velocity and angular acceleration of the two angles are to be zero at time and
. The angular velocity of the first link at time
is the derivative of the angle
with respect to time [2]:
![]() | (7) |
The velocity at is
![]() | (8) |
and thus, coefficient . The angular acceleration is the second derivative of the angle
with respect to time:
![]() | (9) |
The acceleration at is:
![]() | (10) |
and thus, coefficient . Writing the three constraints on
and its derivatives at time
in matrix form:
![]() | (11) |
Similarly, for :
![]() | (12) |
Note that there are three equations and three unknowns for each angle and its two derivatives. This is the reason for choosing a fifth-degree polynomial to control the motion. The lower degree three terms have coefficients with value zero to meet the constraints at t=0. This leaves the higher degree three terms
and corresponding three unknown coefficients. Adding additional higher degree terms would require additional constraint equations to be able to compute the values of the corresponding coefficients [2].
Assuming the following initial and final values and link lengths:
=2 s
=-36,87°
= 90°
= 42,7785°
= 125,3593°
=0,36 m
=0,27 m
which correspond to a starting hand location of (4.5, 0) and a destination location of (0,3), and plot the path of the end point L of the member 2 [6].

Time diagram of the trajectory of the point L is shown in Figure 2 and Figure 3 from Matlab solution [8]:

Time diagram of angular rotation, angular velocity and angular acceleration of the members is shown in Figure 4 [9].

The constants in the polynomials are determined from the initial and end conditions of the endpoint L. The degree of these polynomials is chosen so that they are able to express all the desired conditions. After substituting the initial and final conditions we obtain the following values of their respective constants:
3. Inverse Problem
While solving the inverse problem we determine the moments M1 and M2 required to obtain the prescribed movement of the mechanical system [3]. Inputs are the prescribed movements of its individual members. Member 2 is to be moved from position to the desired position L1 along trajectory determined in the preceding paragraph. Block diagram of the mechanical system for solving the inverse problem [8] is in Figure 5.

The block of the Body1 (Figure 6) in SimMechanics scheme is shown [7]:

The block of the Body2 (Figure 7) in SimMechanics scheme:

Time diagrams of torques [9] in the kinematics pairs M1 and M2 obtained by solving the model in the above block diagram are shown in Figure 8.


4. Direct Problem
Direct problem investigates the movement of the mechanical system under the load of the forces obtained in the previous paragraph. Application of the results from the inverse problem on the model in Figure 10 should result in motion as we prescribed it at the beginning of the analysis [4].

The block Joint Initial Condition for in SimMechanics scheme:

The block Joint Initial Condition for in SimMechanics scheme [7]:


Results obtained from the simulation in Figure 13 correspond with the prescribed motion we determined from the desired location of the endpoint L that are in Figure 4.
5. Conclusion
In the work is shown a procedure for solving direct and inverse dynamic problem of the mechanism of double pendulum using modeling in SimMechanics. SimMechanics allows to simulate such mechanical systems which is a common problem in engineering practice. Results are obtained in form of time diagram of the desired variables. Tasks are solved numerically, model is compiled by using block diagrams. Mastering this methodology provides a suitable tool for solving problems of teaching and practice.
Acknowledgement
This work was supported by grant projects VEGA No. 1/1205/12 and grant projects VEGA No. 1/0937/12.
References
[1] | The MathWorks,Inc. SimMechanics User’s Guide, November 2002. https://www.mathworks.com. | ||
![]() | |||
[2] | https://www.pwsztar.edu.pl/~r_wiatr/matlab/%28eBook%29%20%20Engineering%20-%20Matlab%20Programming.pdf | ||
![]() | |||
[3] | Gmiterko, A., 2004. Mechatronics, Emilenia, . | ||
![]() | |||
[4] | Gmiterko, A., Šarga, P., Hroncová, D., 2012. Mechatronika I, Technická univerzita Košice, . | ||
![]() | |||
[5] | Hroncová, D., 2012. Studies of compatible software tools for abstract and concrete design of mechatronic systems and linking them for the purpose of logical and physical modeling, Dissertation thesis, . | ||
![]() | |||
[6] | Karban, P., 2006. Výpočty a simulace v programech Matlab a Simulink. Computer Press, , Česko. | ||
![]() | |||
[7] | Schlotter, M., 2003. Multibody System Simulation with SimMechanics. . | ||
![]() | |||
[8] | Virgala, , Frankovský, P., Kenderová, M.: Friction Effect Analysis of a DC Motor. In: American Journal of Mechanical Engineering. 2013. Vol. 1, no. 1 (2013), p. 1-5 | ||
![]() | View Article | ||
[9] | Vittek, J., 1997. Matlab pre elektrické pohony, Nakladateľstvo Žilinskej univerzity, Žilina, Slovensko, p. 35-36. | ||
![]() | |||