Dynamic modeling and simulation of three-member robot manipulator

Hristijan Mickoski1 , Ivan Mickoski2 , Marjan Djidrov3

1, 2, 3Faculty of Mechanical Engineering in Skopje, Ss. Cyril and Methodius University in Skopje, 1000 Skopje, Republic of Macedonia

2Corresponding author

Mathematical Models in Engineering, Vol. 4, Issue 4, 2018, p. 183-190. https://doi.org/10.21595/mme.2018.20319
Received 15 October 2018; received in revised form 29 October 2018; accepted 6 November 2018; published 31 December 2018

Copyright © 2018 Hristijan Mickoski, et al. This is an open access article distributed under the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.
Creative Commons License
Table of Contents Download PDF References
Cite this article
Views 856
Reads 435
Downloads 798
CrossRef Citations 0

Dynamic model analysis of manipulator as mechanical structure is presented for further purpose in actuator selection and process for establishing control strategy. Control problems involves determination of control forces and moments applied in manipulator joints that will ensure movements along a certain defined trajectory. Trajectory design is the basis for the manipulator control process. This problem is quite complex because the manipulator is a connected system in which the movement of a member affects the movement of other. Therefore, in following is presented a method for forces and moments determination in kinematic joints of a three-member manipulator analytically and also by using simulation dynamical model in the Matlab/Simulink program package. The friction forces in the kinematics joints are not taken into account.

Keywords: manipulator, model dynamic analysis, robot model simulation.

1. Introduction

In order to study and analyse the mechanical or electrical systems, standard method is through their modelling. By modelling a system, an adequate faithful model of the system is created and there are many definitions of term system model. Modelling is a process of organized knowledge of a given system, which is the most important stage in the research of a single system. The modelling process also involves a process of simulation, which is a method of conducting experiment on the model. The model obtained through modelling includes basic properties of the system which are necessary for solving research problems. One of the reasons for creating a model is to answer control system problems. Mathematical models or computer models are created for studying manipulators. Mathematical models refer to a system of mathematical equations and expressions basis on hypotheses and theories in the field of mechanics, physics, etc. The computer simulated models are the same as mathematical models but are formed in another language other than the normal language of mathematics.

The dynamics of the robot manipulator defines the relationship between the forces, i.e. joint moments brought by the actuators and the equations of motion. Dynamic analysis are the most important task because they are closest for describing actual situation of moving systems. Two types of problems are in dynamics analysis [1], the first is forward problem which refers to determine the forces that cause movement for a given laws of motion, and second is inverse problem [2] for computing forces and/or moments based on the kinematics of a body. The robot model developed will not only help in understanding the dynamic behavior but also allow to integrate data acquisition, control, etc. to generate a virtual robot. Such virtual robot in turn may also be used as a training tool if connected with an external device like the robots teach pendant [3, 4].

For analysis of loads of mechanical systems element under the effect of given external and inertial forces from members movements, the kinetostatics method is used. This method is based on the D’Alembert’s principle which states that, the forces acting to a given body and inertial forces from the movement are in a fictitious balance. This method makes it possible to use lows for static reduction and equilibrium in dynamic analysis associated with inertial forces which often determine the strength, longevity, and reliability of modern structures.

The robot manipulator is considered as a system of rigid bodies with defined masses and its own inertial moments, mechanical model of two link manipulator can be found in [5]. The Effect of different sets of initial and boundary conditions on the joints torques is investigated in [6] and control simulation of two link robot manipulator to get the desired position by using computed torque control method is presented in [7]. The combination of Matlab and Simulink is proposed in [8], the method allows to manipulate the robotic system and to visualize the robot’s behavior from different perspectives. The D-H method is used in [9] to establish a connecting rod coordinate system of six-degree-of-freedom moving robot and combined with Solid Works and ADAMS is simulated the moving robot to verify the correctness of the kinematic model.

Equations that define the model dynamics of the robot manipulator are ordinary differential equations where variables are components of position and velocity vectors. These equations are obtained using the Newton-Euler or by Lagrange method which is applied and presented in following. Using the Lagrangian method for any system, a system of n nonlinear second-order equations is obtained in the following form:

d d t E k q ˙ i - E k q i = Q i ,       i = 1,2 , , n .

The number of system equations n is determined by the number of generalized coordinate qi which can describe the movement of the system.

Further, the possible displacements of each of the joints are considered individually, and by using the principle of virtual work, equations for each joint are written in the following form:

δ A i = Q i δ φ i .

By equalizing the two obtained equations for each joint, control moments and forces are obtained. For kinetostatic analysis of the robot manipulator, Lagrange equation and principle of virtual work will be presented. The objective of this paper is to present a method for forces and moments determination in kinematic joints of a three-member manipulator analytically and also by using simulation dynamical model in the Matlab/Simulink program package.

2. Manipulator characteristics

For determination of control force and moment, three-member manipulator from Fig. 1 will be used. Equations of motion of the manipulator are:

φ 2 = - 0.4 c o s 2 π t 2 r a d ,       S 3 = 1.2 - 8 t 3   m ,       t = 0.5   s .

Dimensions of manipulator member are: l1= 0.9 m, l2= 0.5 m, l3= 0.7 m. External forces on the manipulator are: Fx= 2 N, Fy= –3 N, Fz= 4 N and cross section area is A= 1 cm2.

3. Manipulator kinetostatic analysis by Lagrange’s equation and principle of virtual work

The second-order Lagrange’s equation for the manipulator:

d d t E k φ ˙ 2 - E k φ 2 = Q 1 ,       d d t E k S ˙ 3 - E k S 3 = Q 2   .

where Q1 and Q2 are generalized motion forces, respectively to generalized coordinates q1 and q2. Generalized coordinates are:

q 1 = φ 2 = - 0.4 c o s 2 π t 2   r a d ,       q 2 = S 3 = 1.2 - 8 t 3   m .

Fig. 1. Three-member manipulator

 Three-member manipulator

Manipulator kinetic energy which include kinetic energy of all manipulator members, is given by equation:

E k = E K i = E k 1 + E k 2 + E k 3 .

where for Ek1= 0 manipulator kinetic energy is sum of kinetic energy of member 2 and 3. Member 2 makes rotation with angular velocity φ˙2, and kinetic energy is:

E k 2 = J x 2 ω 2 2 2 = m 2 l 2 2 φ ˙ 2 2 3 2 ,

where Jx2=m2l22/3 and ω2=φ˙2.

Member 3 makes translation with velocity S˙3, and kinetic energy is:

E k 3 = m 3 V C 3 2 2 =   m 3 2 l 2 φ ˙ 2 2 + S ˙ 3 2 ,    


V C 3 = X ˙ C 3 2 + Y ˙ C 3 2 + Z ˙ C 3 2 = - S ˙ 3 2 + ( - l 2 φ ˙ 2 c o s φ 2 ) 2
        + ( - l 2 φ ˙ 2 s i n φ 2 ) 2 = l 2 φ ˙ 2 2 + S ˙ 3 2 .

The total kinetic energy is:

E k = 1 2 a φ ˙ 2 2 + b S ˙ 3 2 ,

where a=m2/3+m3 and b=m3.

We compute the partial derivatives of kinetic energy in terms of generalized coordinates:

E k φ ˙ 2 = φ ˙ 2 1 2 a φ ˙ 2 2 + b S ˙ 3 2 = a φ ˙ 2 ,
E k φ 2 = φ 2 1 2 a φ ˙ 2 2 + b S ˙ 3 2 = 0 ,
d d t E k φ ˙ 2 = d d t a φ ˙ 2 = a φ ¨ 2 ,

and velocities:

E k S ˙ 3 = S ˙ 3 1 2 a φ ˙ 2 2 + b S ˙ 3 2 = b S ˙ 3 ,
E k S 3 = S 3 1 2 a φ ˙ 2 2 + b S ˙ 3 2 = 0 ,
d d t E k S 3 = d d t b S ˙ 3 = b S ¨ 3 .

To determine the control force of member 3 (Fig. 2), the possible displacement only for generalized coordinate q2, where:

δ q 1 = 0 ,         δ q 2 0 ,         δ φ 2 = 0 ,         δ S 3 0 .

The expression for total work of motion forces for this displacement, from which can be determine the generalized force Q2 is:

δ A 2 = - Q 2 δ S 3 = F x δ S 3 - F 23 δ S 3 ,         - Q 2 = δ A 2 δ S 3 = F x - F 23 .

Equalizing with the Lagrange’s equation for member 3, the control force is obtained as:

b S ¨ 3 = - F x + F 23 ,       F 23 = b S ¨ 3 + F x = m 3 ( - 48 t ) + 2 ,


t = 0.5   s ,         F 23 = 0.546 24 + 2 = 11.104   N .

Fig. 2. Determination of force F23

 Determination of force F23

To determine the control moment of member 2, from possible displacement only for the generalized coordinate q1, where:

δ q 1 0 ,         δ q 2 = 0 ,         δ φ 2 0 ,       δ S 3 = 0 .

The expression for total work of the motion forces for this possible displacement, from which can be determine generalized force Q1 is:

δ A 1 = Q 1 δ φ 2 = ( G 2 0.5 + G 3 - F z ) l 2 s i n φ 2 δ φ 2 -   F y l 2 c o s φ 2 δ φ 2 + M 12 δ φ 2 ,
Q 2 = δ A 2 δ S 3 = ( G 2 0.5 + G 3 - F z ) l 2 s i n φ 2 -   F y l 2 c o s φ 2 + M 12 .

By leveling with the Lagrange's equation for member 2, the control moment is obtained as:

φ ¨ 2 = ( G 2 0.5 + G 3 - F z ) l 2 s i n φ 2 - F y l 2 c o s φ 2 + M 12 ,
M 12 = m 2 3 + m 3 φ ¨ 2 - ( G 2 0.5 + G 3 - F z ) l 2 s i n φ 2 +   F y l 2 c o s φ 2 .


t = 0.5   s ,         M 12 = 0 - 0.324 + 1.47 = 1.146   N m .

Fig. 3. Determination of moment M12

 Determination of moment M12

4. Design of simulation model of three-member manipulator in Matlab-Simulink

Analysis of three-member manipulator is based on a simulation model of the robot manipulator in Simulink and the obtained results will be compared with a mathematical calculation. First, laws of motion of the characteristic points from the geometry of the manipulator are written, and value of time is t= 0.5 s. Manipulator kinematical and kinetostatic analysis requires to configure two joint blocks, Revolute and Prismatic. Through these two blocks the laws of motion are given φ2 and S3.

Fig. 4 shows the configuration of the Joint Blot Revolute, which refers to the kinematic joint A. By increase the number of sensors/actuators to 1, so that can be define the law of motion with Joint Actuator φ2. The same procedure is repeat for the Prismatic Joint blocks and Fig. 5 which refers to the kinematic joint B. By increase the number of sensors/actuators to 1 so that can be define the low of motion with the Joint actuator S3. Using the Simulink blocks, the lows of motion are apply φ2 and S3 which are in function of time t, and by time differentiation angular velocity φ˙2 and angular acceleration φ¨2, as well as velocity S˙3 and acceleration S¨3, are obtained respectively. Fig. 6 shows blocks connections, signal from Clock block is connected with laws of motion φ2 and S3 and outputs are connected to the corresponding Joint Actuators, which are connected accordingly to the actuated Revolute and Prismatic Joint blocks.

Fig. 4. Low of motion φ2

 Low of motion φ2

Fig. 5. Low of motion S3

 Low of motion S3

Fig. 6. Block connections

 Block connections

Fig. 7. Manipulator simulation model

 Manipulator simulation model

To solve the kinetostatics and to determine the control moments and forces in already created kinematic model with given control equations, first through the Body Actuator block the external forces in gripper D are applied. Additionally, in all kinematic pairs, in associated joint blocks another sensor port is added on which is connect sensors to measure the forces and moments in kinematic joints.

Projections of forces and moments in the joints can be obtained by connecting Joint sensor blocks associate already to configured Weld, Revolute and Prismatic blocks, i.e., allowing to measure the motion force and moment. Two outputs of the sensors are connected to displays showing the projections along the coordinate axes of motion force and moment. In addition, two scopes are added on which can be monitored the changes of control moment and force as function on time. This completes all settings for kinetostatic analysis of the manipulator. After simulating the model, the variations of forces and moments projections along the axes in manipulator joints at t= 0.5 s can be displays.

Fig. 7 shows the complete model simulation and moments and forces in kinematic joints can be analyzed. Greater precision in Solver parameters, by select fixed-step time and in sample time can be obtained by enter a value of 0.0001.

In Simulation stop time, by entering value t= 0.5 s and repeat the simulation, from Fig. 8(a) can be read the values for control force F23, and control moment M12 from Fig. 8(b) which are determinate that are same as presented analytical calculations.

Fig. 8. a) Control force F23, b) control moment M12

 a) Control force F23, b) control moment M12


 a) Control force F23, b) control moment M12


5. Conclusions

Dynamic model analysis of three-member manipulator as mechanical structure is presented. The simulation of the model provides determination of motion moment M12 in the revolute kinematic joint and motion force F23 in prismatic kinematic joint. Mathematical analysis was performed at time t= 0.5 s of force and moment by using the Lagrangian second-order equation and the principle of virtual work. The values for moments M12 and force F23 obtained by the analytical calculation and the values obtained by the simulation of presented dynamic model are the same. As following, this method can also be used for more complex mechanical structures for which it is difficult to analyse their dynamics, due to the fact that formation of equations of motion and solving them increase, especially if it accounts multiple points.

From presented simulation model, motion forces and moments can be determinate and through the diagrams can be analysed their values in all the kinematic joints taking in account external forces and moments as essential for designing and modelling of kinematic joints and also for control systems design.


  1. Gouasmi M., Ouali M., Fernini B., Meghatria M. Kinematic modelling and simulation of a 2-R robot using solidworks and verification by MATLAB/Simulink. International Journal of Advanced Robotic Systems, Vol. 9, Issue 6, 2012, https://doi.org/10.5772/50203. [Publisher]
  2. Damic V., Cohodar M., Tvrtkovic M. Inverse dynamic analysis of hobby robot uArm by Matlab/Simulink. Annals of DAAAM and Proceedings, Vol. 27, 2016, p. 95-101. [Publisher]
  3. Arun Dayal U., Rajeevlochana C. G., Subir Kumar S. Dynamic simulation of a KUKA KR5 industrial robot using MATLAB SimMechanics. 15th National Conference on Machines and Mechanisms, 2011. [Search CrossRef]
  4. Pratap D., Mohan Reddy Y. V. Kineto-elasto dynamic analysis of robot manipulator Puma-560. IOSR Journal of Mechanical and Civil Engineering (IOSR-JMCE), Vol. 8, Issue 3, 2013, p. 33-40. [Publisher]
  5. Frankovský P., Hroncová D., Delyová I., Hudák P. Inverse and forward dynamic analysis of two link manipulator. Procedia Engineering, Vol. 48, 2012, p. 158-163. [Publisher]
  6. Atef A. A., Waleed F. F., Sa’adeh M. Y. Dynamic analysis of a two-link flexible manipulator subject to different sets of conditions. International Symposium on Robotics and Intelligent Sensors, 2012. [Search CrossRef]
  7. Shah J., Rattan S. S., Nakra B. C. Dynamic analysis of two link robot manipulator for control design using computed torque control. International Journal of Research in Computer Applications and Robotics, Vol. 3, Issue 1, 2015, p. 52-59. [Search CrossRef]
  8. Velarde-Sanchez J. A., Rodriguez-Gutierrez S. A., Garcia-Valdovinos L. G., Pedraza-Ortega J. C. 5DOF manipulator simulation based on MATLAB-Simulink methodology. 20th International Conference on Electronics Communications and Computers, Cholula, 2010, p. 295-300. [Search CrossRef]
  9. Zhao Y., Wang H. Kinematics simulation analysis and trajectory planning of a moving robot based on ADAMS. Mathematical Models in Engineering, Vol. 31, Issues 3-2, 2017, p. 71-77. [Publisher]