Next Article in Journal
Estimating Critical Latency Affecting Ship’s Collision in Re-Mote Maneuvering of Autonomous Ships
Previous Article in Journal
Theoretical Investigation on the Impact of Two HDR Dampers on First Modal Damping Ratio of Stay Cable
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

A Graph Theory-Based Method for Dynamic Modeling and Parameter Identification of 6-DOF Industrial Robots

1
Robotics Institute, Beihang University, Beijing 100191, China
2
AVIC Manufacturing Technology Institute, Beijing 100024, China
*
Author to whom correspondence should be addressed.
Appl. Sci. 2021, 11(22), 10988; https://doi.org/10.3390/app112210988
Submission received: 22 September 2021 / Revised: 12 November 2021 / Accepted: 15 November 2021 / Published: 19 November 2021
(This article belongs to the Topic Industrial Robotics)

Abstract

:
At present, the absolute positioning accuracy and control accuracy of industrial serial robots need to be improved to meet the accuracy requirements of precision manufacturing and precise control. An accurate dynamic model is an important theoretical basis for solving this problem, and precise dynamic parameters are the prerequisite for precise control. The research of dynamics and parameter identification can greatly promote the application of robots in the field of precision manufacturing and automation. In this paper, we study the dynamical modeling and dynamic parameter identification of an industrial robot system with six rotational DOF (6R robot system) and propose a new method for identifying dynamic parameters. Our aim is to provide an accurate mathematical description of the dynamics of the 6R robot and to accurately identify its dynamic parameters. First, we establish an unconstrained dynamic model for the 6R robot system and rewrite it to obtain the dynamic parameter identification model. Second, we establish the constraint equations of the 6R robot system. Finally, we establish the dynamic model of the constrained 6R robot system. Through the ADAMS simulation experiment, we verify the correctness and accuracy of the dynamic model. The experiments prove that the result of parameter identification has extremely high accuracy and the dynamic model can accurately describe the 6R robot system mathematically. The dynamic modeling method proposed in this paper can be used as the theoretical basis for the study of 6R robot system dynamics and the study of dynamics-based control theory.

1. Introduction

For the manufacturing industry, which uses industrial robots for processing and production, especially large-scale manufacturing such as aircraft manufacturing, there is a dilemma whereby the absolute positioning accuracy of industrial robots is low and cannot meet the accuracy requirements, which at the same time limits the development of robots and manufacturing. The key to solving this problem is to establish an accurate dynamic model of the robot, so as to achieve precise control and improve accuracy. Therefore, the research of robot dynamics is of great significance both in theory and application.
Nowadays, with the development of the robot industry, the mobility, collaboration, and adaptability of robots have become stronger, and the manufacturing industry, which is the main application scenario of industrial robots, has shown a trend towards intelligence [1]. As a large-scale manufacturing industry, many processes in the aviation industry currently rely on manual work by workers [2], and the following problems need to be resolved: the high labor intensity of workers leads to poor consistency, the limited working time leads to low efficiency, and the fatigue caused by long-term labor leads to low precision. To meet the requirements of long life, fast cycle, high precision and low cost of aircraft, industrial robots are urgently needed to replace workers’ positions [3,4]. The main task of the aircraft manufacturing industry is to process and assemble aircraft components. Aircraft components have the characteristics of complex structure and large size. Accordingly, the robots require high precision and large working space [5,6]. The accuracy of the robot can be divided into two categories: absolute positioning accuracy and repeated positioning accuracy. Industrial robots can be divided into two types: serial robots and parallel robots. The absolute positioning accuracy and repetitive positioning accuracy of parallel robots are very high, but the working space is small; the repetitive positioning accuracy of serial robots is high and the working space is large, but the absolute positioning accuracy is low [7,8]. The shortcoming of the small working space of the parallel robot cannot be improved, so it cannot meet the requirements of the aircraft industry. In contrast, serial robots can meet these requirements by improving their absolute positioning accuracy [9]. Therefore, research into serial robots is of great significance to the manufacturing industry.
To ensure the processing quality of aircraft components, requirements for precise control and vibration reduction have been put forward for serial robots [10]. An accurate dynamic model is one of the theoretical foundations for serial robots meeting the above requirements. On the one hand, control systems based on accurate dynamic models will have high precision [11], thus improving the absolute positioning accuracy of the robot, and at the same time, the vibration reduction of the robot can also be achieved by active control [12]. On the other hand, the dynamic model can be used to identify the dynamic parameters of the robot system, that is, the mass and principal moment of inertia of each rigid body. The dynamic parameters and stiffness are the input conditions of the modal analysis, and the modal analysis is used for the vibration reduction of the robot system. Therefore, vibration reduction is one of the application prospects of dynamic models. Therefore, the research on the dynamics of serial industrial robot is very important for the application prospect of robot in manufacturing industry. Zhang, L et al. [13] proposed a WOA-GA method to establish a six-degrees-of-freedom (DOF) robot dynamic model, thereby improving the robot’s motion accuracy. Koopaee, M et al. [14] used Euler-Lagrange equations to establish a dynamic model of a planar serial robot and adaptively control it so that the robot can successfully avoid obstacles without knowing the exact location of the obstacle. Cui et al. [15] established the Hamilton dynamics model of the multi-joint serial robot and then realized the precise tracking control of the robot. Liu, S et al. [16] established a dynamic model of a dual-arm robot for capturing objects based on the Lagrange formula and then studied the structural vibration problem in the capturing process. Xu, W et al. [17] established the dynamic equations of a 7-DOF robot arm and realized the vibration reduction of the robot’s elastic structure by the dynamic analysis of the coupling effect of rigid motion and elastic vibration direction. H. Wu et al. [18] proposed two methods to reduce the vibration of a serial robot, namely passive control and active control. Passive vibration control is achieved by designing a parallel mechanism to increase the stiffness of the robot. Active vibration control is realized by proposing a hybrid control method of feedforward control and nonlinear feedback control.
Dynamic parameter identification is an important application of the dynamic model. Generally speaking, dynamic parameters can be measured by physical experiment, that is, the robot is disassembled into rigid bodies and then the mass is obtained by weighing and the principal moment of inertia is measured by the pendular motions [19]. However, obtaining the dynamic parameters of the serial industrial robot requires the use of a parameter identification method. The reason is that industrial robots used in large-scale manufacturing industries require high rigidity to ensure the stability and processing quality of their working process. The high rigidity requirements make industrial robots heavy. Moreover, as a precision instrument, industrial robots are not easy to disassemble. All this makes it difficult to obtain the dynamic parameters of industrial robots by measurement methods. Dynamic parameter identification is a calculation method for obtaining dynamic parameters by measuring the data of variables other than the dynamic parameters in the equations where the dynamic parameters appear. The equations in which dynamic parameters appear are mainly momentum conservation equations and dynamic equations. The momentum conservation equations are only applicable to free-floating space robots, and ground-fixed robots need to use dynamic equations [20]. There are many calculation methods, such as the least squares method, the gradient correction method, the maximum likelihood method and the prediction error method. The fundamental idea of parameter identification is to perform “input/output” analysis on the mathematical models where the dynamic parameters appear and to estimate the parameter value by minimizing the difference between the real dynamic parameters and the dynamic parameters of the mathematical model. The calculated dynamic parameters have high accuracy [21]. The identification process includes modeling, designing experiments, collecting data, signal processing, parameter estimation and model verification [11]. Dynamic parameters are very important for control algorithms based on dynamic models and verification of simulation results [22]. Accurate dynamic parameters are the premise of accurate dynamic models, and accurate control can be achieved on the basis of accurate dynamic models [23,24]; precise control determines the application prospects of robots in the field of automation [25,26]. Therefore, as an important application of the dynamic model, dynamic parameter identification is of great significance to the application of industrial robots in manufacturing. Gaz, C et al. [27] established the Newton–Euler dynamics equations of the Panda robot and used the least squares method to identify its dynamic parameters. Urrea, C et al. [28] established the 5-DOF Lagrange dynamics model of the industrial SCARA robot and obtained the dynamic parameters of the SCARA robot by measuring the acceleration, velocity, position, and voltage using parameter estimation technology. Olsen et al. [29] proposed a maximum likelihood method for identifying robot dynamics parameters. Physical experiments proved that the maximum likelihood method has the same identification effect as the weighted least squares method. Gautier, M et al. [30] proposed an error method called the DIDIM method to identify the dynamic parameters of the dynamic equations and the new method was proved to be effective through an experiment with a 2-DOF rigid body robot.
The dynamic model is established based on vector mechanics or analytical mechanics [31]. The modeling methods mainly include the Newton–Euler method [32] and the screw method [33], which are based on vector mechanics, as well as the Lagrange method [34], the Hamilton method [35,36], the Udwadia–Kalaba method [37] and the Birkhoff method [38], which are based on analytical mechanics. There are also some methods that combine the characteristics of vector mechanics and analytical mechanics, such as the Kane method [39]. Khalil, W et al. [40] established the dynamic model of the Gough–Stewart parallel robot by using the Newton–Euler method; Shao, P et al. [41] established the dynamic model of the Helix robot with the screw method; Mancisidor, A et al. [42] used the Lagrange method to establish a dynamic model of a multi-purpose upper limb rehabilitation robot; Huang, P et al. [43] used Hamilton method to establish a dynamic model of a rope-net space robot; Nielsen, M. C, et al. [44] used the Udwadia–Kalaba method to establish a dynamic model of a modular underwater robot; and Xu, F et al. [45] used the Kane method to establish a dynamic model of a soft robot.
At present, a large number of scholars have conducted in-depth research on the two-dimensional dynamics of industrial robots with few DOFs. However, the research on three-dimensional multi-DOF dynamics is relatively weak and it is very rare to use graph theory to describe industrial robots to establish dynamic models. Compared with the two-dimensional dynamics problem with few DOFs, the three-dimensional multi-DOF dynamics problem has a significant increase in the number of variables and equations, resulting in a very complicated and long expression, which is difficult to calculate and solve. Therefore, the traditional method is no longer applicable [46] and needs to be improved. We consider that the key to solving this problem lies in the expression of the system of dynamic equations formed by the combination of many dynamic equations in the form of a matrix. The matrix expression needs to decouple the dynamic parameters of the rigid bodies that make up the robot system to realize the modularization of the dynamic equations, which is convenient for computer solving and control. We believe that the use of graph theory to describe the robot system can meet the requirements well.
This paper selects the most commonly used industrial robot—an industrial robot with six rotational DOFs (6R robot system)—as the research object. The 6R robot system is composed of six rigid bodies and has six rotational DOFs, as shown in Figure 1. In this paper, a three-dimensional dynamic model of the 6R robot system is established based on graph theory. On this basis, a new method of dynamic parameter identification is proposed. A simulation experiment is designed by ADAMS software. The experimental results show that the result of parameter identification is extremely accurate and the dynamic model is accurate enough for the mathematical description of the 6R robot system. This proves the correctness and applicability of the dynamic theory and method used in this article. The 6R robot dynamics modeling theory and method proposed in this paper can realize the accurate 3D dynamic modeling of the 6R robot system. At present, there are very few studies in this area, so our exploratory research is very meaningful. At the same time, we propose for the first time a 6R robot dynamic parameter identification algorithm. The dynamic parameters obtained by this algorithm have extremely high precision, which is a meaningful innovation. The 6R robot dynamics modeling theory and method proposed in this paper can be used as the theoretical basis for precision manufacturing and precise control and it is of great significance to improve the automation and production efficiency of the manufacturing industry.
The rest of this paper is organized as follows. Section 2 introduces the dynamic modeling method and dynamic parameter identification method of the 6R robot system. In Section 3, an ADAMS simulation experiment is designed. The dynamic parameters and Lagrange multipliers of the 6R robot system are obtained by the calculation and identification of the experimental data and the calculation results are analyzed and discussed. Section 4 gives conclusions.

2. Dynamic Modeling of 6R Robot System

The 6R robot system consists of six rigid bodies (including the end effector) and six revolute joints, each rigid body has six DOF when it is unconstrained, that is, three DOF for movement and three DOF for rotation. The inside joint of a rigid body imposes five constraints on the rigid body, including three movement constraints and two rotation constraints and the constrained single rigid body has one rotational DOF. By extension, the unconstrained 6R robot system has a total of 36 DOF for the six rigid bodies and a total of 30 constraints provided by the six revolute joints, so that the constrained 6R robot system has a total of six rotational DOFs. That is, the number of DOF of the unconstrained 6R robot system minus the number of constraints on the system is equal to the number of DOF of the system.
First, the mathematical description of the 6R robot is defined based on graph theory and then the dynamic equations of the unconstrained 6R robot system are established. Taking a single rigid body as the object of study, the active force of the joint is regarded as the joint force element and the joint force element and gravity are the external forces on the rigid body. The virtual power principle is used to establish the kinetic equations for a single rigid body. The dynamic equations of the six rigid bodies are combined into a matrix form, that is, the dynamic equations of the unconstrained 6R robot system. Here, by rewriting the dynamic equation of the unconstrained 6R robot system, the mass and the principal moment of inertias of the rigid body are separated as the dynamic parameters to be identified, and we identified the dynamical parameters of the 6R robot system by using least squares method.
Second, the revolute joints provide five scleronomic and holonomic constraints (A constraint that restricts only the pose and does not contain time is called a scleronomic and holonomic constraint) on the outside connecting body, thereby the constraint equations of a single rigid body are established. The constraint equations of the six rigid bodies are combined to form the constraint equations of the 6R robot system.
Finally, the constrained equations of the 6R robot system are twice derived with respect to time and changed into the second-order derivative form in generalized coordinates, The Lagrange multiplier method is then used to combine the constraint equations with the dynamics equation of the unconstrained 6R robot system to become the dynamics equation of the constrained 6R robot system.

2.1. Graphical Description of the 6R Robot System

The six rigid bodies that make up the 6R robot system are simply represented as homogeneous cylinders, denoted as B i   ( i = 1 , 2 , , 6 ) , the length of B i is denoted as l i and the radius is denoted as R i , the center of mass of each rigid body is its geometric center, denoted as O c i ( i = 1 , 2 , , 6 ) . Establish the body-fixed base of each rigid body at the center of mass of each rigid body, denoted as ( O i , e ¯ ( i ) ) ( i = 1 , 2 , , 6 ) (The underscore ¯ indicates the matrix form), the three vectors e 1 ( i ) , e 2 ( i ) and e 3 ( i ) are the base vectors for each coordinate axis, the base vectors point to the direction of the central principal inertia axes. The body-fixed bases of the 6R robot system are shown in Figure 2, with the pose shown as the initial pose, the e 1 ( i ) axis points from the inside to the outside along the length of the rigid body, the e 2 ( i ) axis direction is perpendicular to the paper surface inwards and the e 3 ( i ) axis direction is determined by the right-hand rule.
Since B 0 is firmly connected to the ground, in order to simplify the model and facilitate calculations, its volume and mass are both considered to be 0, its body-fixed base is ( O 0 , e ¯ ( 0 ) ) , which is located at O 1 , ( O 0 , e ¯ ( 0 ) ) is used as a fixed reference base and O 0 is used as a fixed reference point for this paper, the position of each center of mass is expressed relative to O 0 and the posture of each rigid body is expressed relative to ( O 0 , e ¯ ( 0 ) ) . The remaining rigid bodies are B 1 , B 2 , , B 6 in the direction from B 0 to the end-effector, the body-fixed bases are ( O 1 , e ¯ ( 1 ) ) , ( O 2 , e ¯ ( 2 ) ) , , ( O 6 , e ¯ ( 6 ) ) , the joint points are O 1 , O 2 , , O 6 and the center of mass is O c 1 , O c 2 , , O c 6 in that order.
The generalized coordinates of B i are determined by the Cartesian coordinates x i , y i , z i of O c i with respect to O 0 and the Cardano angles α i , β i , γ i of ( O i , e ¯ ( i ) ) with respect to ( O 0 , e ¯ ( 0 ) ) .
The pose of B i is recorded in the form of a coordinate matrix as:
r ¯ i = ( x i   y i   z i ) T , θ ¯ i = ( α i   β i   γ i ) T .
q ¯ i = ( r ¯ i   θ ¯ i ) T = ( x i   y i   z i   α i   β i   γ i ) T .
where r ¯ i is the position coordinate of B i , θ ¯ i is the angular coordinate of B i and the combination of the two, q ¯ i , is the generalized coordinate of B i . The generalized velocity column matrix and the generalized acceleration column matrix of B i are obtained by deriving:
r ˙ ¯ i = ( x ˙ i   y ˙ i   z ˙ i ) T , θ ˙ ¯ i = ( α ˙ i   β ˙ i   γ ˙ i ) T .
r ¨ ¯ i = ( x ¨ i   y ¨ i   z ¨ i ) T , θ ¨ ¯ i = ( α ¨ i   β ¨ i   γ ¨ i ) T .
q ˙ ¯ i = ( x ˙ i   y ˙ i   z ˙ i   α ˙ i   β ˙ i   γ ˙ i ) T .
q ¯ i = ( r ¯ i   θ ¯ i ) T = ( x i   y i   z i   α i   β i   γ i ) T .
The generalized coordinate column matrix of the multibody 6R robot system is composed of the coordinate column matrix of each single rigid body B i and expressed as a 36-dimensional coordinate column matrix:
q ¯ = ( q ¯ 1 T   q ¯ 2 T   q ¯ 6 T ) T = ( q 1 , q 2 , , q 36 ) T .
Some basic concepts of 6R robotics are defined according to graph theory:
The relationship between a joint and a rigid body is called an incidence. A rigid body B i reaches B j via a series of rigid bodies and joints without repetition and the rigid bodies and joints B i passes through are called the path from B i to B j . A system with only a unique path between any two joint points is called a system with tree structure. The system with tree structure and the structure diagram of the system with tree structure of the 6R robot system are shown in Figure 3.
If B j is on the path from B 0 to B i , then B j is called the inside body of B i and B i is called the outside body of B i . In particular, if the inside rigid body B j has incidence with B i , then B j is called the inside connecting body of B i and the O i connecting B j and B i is called the inside joint of B i . For B j , B i is called the outside connecting body of B j and O i is called the outside joint of B j .
Based on the above basic concepts, we established the incidence matrix, the matrix of body–joint vector, the path matrix of force element and the vector matrix of force element of the 6R robot system by graph theory, and deduced the resultant force and the resultant moment of the force element received by the rigid body.
First, the incidence matrix S _ of the 6R robot system is established.
Assuming that the robot system has n rigid bodies, define an element:
S i j = 1 O j   has   incidence   with   B i   and   starts   with   B i 1 O j   has   incidence   with   B i   and   ends   with   B i 0 O j   has   no   incidence   with   B i                                                         i , j = 1 , 2 , , n .
The n × n square matrix composed of S i j is called the incidence matrix of the system, denoted as S _ .
S ¯ = S 11 S 1 n S n 1 S n n .
For the 6R robot system,
S ¯ = 1 1 0 0 0 0 0 1 1 0 0 0 0 0 1 1 0 0 0 0 0 1 1 0 0 0 0 0 1 1 0 0 0 0 0 1 .
Second, the matrix of body–joint vector C _ of the 6R robot system is established.
The vector pointing from O c i to any joint O j that has incidence with B j B i is called the body–joint vector, denoted as c i j . The multiplication of c i j and S i j is called the weighted body–joint vector, denoted as C i j . The direction of C i j is away from B 0 and points to the outside. In particular, c 01 = C 01 = 0 . The n × n square matrix composed of C i j is called the matrix of the body–joint vector of the system, denoted as C _ . C _ reflects the distribution of joints that has incidence with the rigid bodies of the system.
For the 6R robot system,
C ¯ = l 1 2 e 1 ( 1 ) l 1 2 e 1 ( 1 ) 0 0 0 0 0 l 2 2 e 1 ( 2 ) l 2 2 e 1 ( 2 ) 0 0 0 0 0 l 3 2 e 1 ( 3 ) l 3 2 e 1 ( 3 ) 0 0 0 0 0 l 4 2 e 1 ( 4 ) l 4 2 e 1 ( 4 ) 0 0 0 0 0 l 5 2 e 1 ( 5 ) l 5 2 e 1 ( 5 ) 0 0 0 0 0 l 6 2 e 1 ( 6 ) .
The body-joint vector is shown in Figure 4.
The distribution of body-joint vectors of the 6R robot system is shown in Figure 5.
Third, the path matrix of force element for the 6R robot system is established and the resultant force of the force elements on the rigid body are derived.
The force element is the internal force doing work in the system, noted as E k .
The force elements in this paper are only the joint force elements, that is, the active forces of the inside joint and the outside joint on the rigid body.
The k -th joint force element, E k , has incidence with a pair of rigid bodies, the inside connecting body of the hinge is also called the inside connecting body of the force element and is denoted as B e + ( k ) . The outside connecting body of the joint is also called the outside connecting body of the force element and is denoted as B e ( k ) . The points of action of E k on the outside connecting body and outside connecting body are noted as P k + and P k , respectively. As shown in Figure 6. The force of E k on a body is denoted as F k e   k = 1 , 2 , , n e . The force F k e of B e + ( k ) on B e ( k ) points from P k + to P k and the force F k e of B e ( k ) on B e + ( k ) points from P k to P k + .
Assuming that the robot system has n e force elements, define an element:
S i k e = 1 P k +   has   incidence   with   B i   1 P k   has   incidence   with   B i 0 B i   has   no   incidence   with   P k +   or   P k                                                           i = 1 , 2 , , n k = 1 , 2 , , n e .
The n × n e square matrix composed of S i k e is called the path matrix of force element of the system, denoted as S _ e . For the 6R robot system,
S ¯ e = - 1 1 0 0 0 0 0 - 1 1 0 0 0 0 0 - 1 1 0 0 0 0 0 - 1 1 0 0 0 0 0 - 1 1 0 0 0 0 0 - 1 .
The resultant force of all the joint elements on B i is denoted as F i e ^             i = 1 , 2 , , n .
F i e ^ = k = 1 n e S i k e F k e                 i = 1 , 2 , , n .
The n e -order vector column matrix F _ e formed by F k e     k = 1 , 2 , , n e and the n -order vector column matrix F _ e ^ formed by F i e ^     i = 1 , 2 , , n have the following relationship:
F _ e ^ = S _ e F _ e .
For the 6R robot system,
F ¯ e ^ = F 1 e ^ F 2 e ^ F 3 e ^ F 4 e ^ F 5 e ^ F 6 e ^ = F 1 e F 2 e F 2 e F 3 e F 3 e F 4 e F 4 e F 5 e F 5 e F 6 e F 6 e .
Finally, the vector matrix of force element of the 6R robot system is established and the resultant moment of the force elements on the rigid body are derived.
The vectors pointing from the centers of mass of rigid bodies B e + ( k ) and B e ( k ) to the action points P k + and P k of E k , respectively, are called force element vectors and are denoted as c i k e     i = e + ( k )     o r     e ( k ) .
The weighted force element vector is defined as:
C i k e = S i k e c i k e     i = 1 , 2 , , n k = 1 , 2 , , n e .
C i k e that has incidence with B i is directed from the inside to the outside, and C i k e that has no incidence with B i is zero.
The n × n e square matrix composed of C i k e is called the vector matrix of force element of the system, denoted as C _ e . C _ e is used to describe the distribution of force elements in each rigid body of the system. For the 6R robot system,
C ¯ e = l 1 2 e 1 ( 1 ) l 1 2 e 1 ( 1 ) 0 0 0 0 0 l 2 2 e 1 ( 2 ) l 2 2 e 1 ( 2 ) 0 0 0 0 0 l 3 2 e 1 ( 3 ) l 3 2 e 1 ( 3 ) 0 0 0 0 0 l 4 2 e 1 ( 4 ) l 4 2 e 1 ( 4 ) 0 0 0 0 0 l 5 2 e 1 ( 5 ) l 5 2 e 1 ( 5 ) 0 0 0 0 0 l 6 2 e 1 ( 6 ) .
Therefore, the moment M i e ^     i = 1 , 2 , , n of the force element that has incidence with B i to the center of mass O c i is expressed as:
M i e ^   = k = 1 n e C i k e × F k e     i = 1 , 2 , , n .
For the 6R robot system,
M ¯ e ^ = C ¯ e × F ¯ e = ( F 1 e + F 2 e ) × l 1 2 e 1 ( 1 ) ( F 2 e + F 3 e ) × l 2 2 e 1 ( 2 ) ( F 3 e + F 4 e ) × l 3 2 e 1 ( 3 ) ( F 4 e + F 5 e ) × l 4 2 e 1 ( 4 ) ( F 5 e + F 6 e ) × l 5 2 e 1 ( 5 ) ( F 6 e ) × l 6 2 e 1 ( 6 ) .
M ¯ e ^ = M 1 e ^   M 2 e ^ M 3 e ^ M 4 e ^ M 5 e ^ M 6 e ^ T is the column matrix composed of M i e ^     i = 1 , 2 , , 6 .

2.2. Dynamical Modeling of Unconstrained 6R Robot System

The vector of O c i relative to O 0 is denoted as r i , the angular velocity of B i   relative to ( O 0 , e ¯ ( 0 ) ) is denoted as ω i , the mass and central inertia tensor of B i   are denoted as m i and J i , respectively, and each component e 1 ( i ) , e 2 ( i ) , e 3 ( i ) of ( O i , e ¯ ( i ) ) is the central principal inertia axes of B i   . Equating each rigid body to a homogeneous cylinder, the central inertia tensor of each rigid body is expressed as:
J ¯ i ( i ) = J i 11 ( i ) 0 0 0 J i 22 ( i ) 0 0 0 J i 33 ( i ) = 1 2 m i R i 2 0 0 0 1 12 m i ( 3 R i 2 + l i 2 ) 0 0 0 1 12 m i ( 3 R i 2 + l i 2 ) .
The right-hand superscript ( i ) indicates an expression in ( O i , e ¯ ( i ) ) and no right-hand superscript is an expression in ( O 0 , e ¯ ( 0 ) ) . J i 11 ( i ) , J i 22 ( i ) , J i 33 ( i ) are the three principal moments of inertia.
The Newton-Euler equations are derived by the principle of virtual power as follows:
m i r ¨ i = F i     ( i = 1 , 2 , , 6 ) .
J i ω ˙ i + ω i × ( J i ω i ) = M i     ( i = 1 , 2 , , 6 ) .
Here,
F i = F i g F i e ^ = F i g k = 1 n e S i k e F k e .
M i = M i e ^ + M i a ^ = k = 1 n e ( C i k e × F k e + S i k × M k a ) .
F i g is the gravity of B i , M i a is the active moment of O i on B i , M i a ^ = S i k × M k a M i a ^ = k = 1 n e S i k × M k a is the active resultant moment of the joints that has incidence with B i on B i .
For the 6R robot system,
M ¯ a ^ = S ¯ × M ¯ a = M 1 a M 2 a M 2 a M 3 a M 3 a M 4 a M 4 a M 5 a M 5 a M 6 a M 6 a .
M ¯ a = M 1 a   M 2 a   M 3 a   M 4 a   M 5 a   M 6 a   T is the column matrix composed of M i a     i = 1 , 2 , , 6 .
Therefore, for the 6R robotics system,
M ¯ = M e ^ + M a ^ = ( F 1 e + F 2 e ) × l 1 2 e 1 ( 1 ) ( F 2 e + F 3 e ) × l 2 2 e 1 ( 2 ) ( F 3 e + F 4 e ) × l 3 2 e 1 ( 3 ) ( F 4 e + F 5 e ) × l 4 2 e 1 ( 4 ) ( F 5 e + F 6 e ) × l 5 2 e 1 ( 5 ) ( F 6 e ) × l 6 2 e 1 ( 6 ) + M 1 a M 2 a M 2 a M 3 a M 3 a M 4 a M 4 a M 5 a M 5 a M 6 a M 6 a .
M ¯ = M 1   M 2   M 3   M 4   M 5   M 6   T is the column matrix composed of M i     i = 1 , 2 , , 6 .
We call Equation (22) the center of mass motion equation and Equation (23) the posture motion equation. Both equations need to be expressed in the form of a matrix of generalized coordinates.
First, the center of mass motion equation, Equation (22), is written in matrix form:
m i r ¨ ¯ i = A ¯ ( 0 i ) F ¯ i ( i ) = F ¯ i         ( i = 1 , 2 , , 6 ) .
A ¯ ( 0 i ) is the coordinate transformation matrix expressed by Cardano angles.
A ¯ ( 0 i ) = c β i c γ i c β i s γ i s β i c α i s γ i + s α i s β i c γ i c α i c γ i s α i s β i s γ i s α i c β i s α i s γ i c α i s β i c γ i s α i c γ i + c α i s β i s γ i c α i c β i .
Then, the posture motion equation, Equation (23), is expressed in matrix form relative to ( O i , e ¯ ( i ) ) as:
J ¯ i ( i ) ω ˙ ¯ i ( i ) + ω ˜ ¯ i ( i ) J ¯ i ( i ) ω ¯ i ( i ) = M ¯ i ( i )     ( i = 1 , 2 , , 6 ) .
Here, the matrix symbol a ˜ ¯ with tilde denotes the following three-order antisymmetric matrix:
a ˜ ¯ = 0 a 3 a 2 a 3 0 a 1 a 2 a 1 0 .
Express posture motion equation, Equation (30), by generalized angular coordinates as follows:
J ¯ i ( i ) D ¯ i θ ¨ ¯ i + ( J ¯ i ( i ) D ˙ ¯ i + D ¯ i θ ˙ ¯ i ˜ J ¯ i ( i ) D ¯ i ) θ ˙ ¯ i = M ¯ i ( i )     ( i = 1 , 2 , , 6 ) .
Here,
D ¯ i = c β i c γ i s γ i 0 c β i s γ i c γ i 0 s β i 0 1         ( i = 1 , 2 , , 6 ) .
D ˙ ¯ i = β ˙ i s β i c γ i γ ˙ i c β i s γ i γ ˙ i c γ i 0 β ˙ i s β i s γ i γ ˙ i c β i c γ i γ ˙ i s γ i 0 β ˙ i c β i 0 1         ( i = 1 , 2 , , 6 ) .
The dynamic equation of the rigid body expressed by generalized coordinates is obtained by combining Equations (28) and (32) as follows:
m i E ¯ 0 ¯ 0 ¯ J ¯ i ( i ) D ¯ i r ¨ ¯ i θ ¨ ¯ i = 0 ¯ ( J ¯ i ( i ) D ˙ ¯ i + D ¯ i θ ˙ ¯ i ˜ J ¯ i ( i ) D ¯ i ) θ ˙ ¯ i + A ¯ ( 0 i ) F ¯ i ( i ) M ¯ i ( i )         ( i = 1 , 2 , , 6 ) .
Equation (35) is abbreviated as:
A ¯ i q ¨ ¯ i = B ¯ i         ( i = 1 , 2 , , 6 ) .
Here,
A ¯ i = m i E ¯ 0 ¯ 0 ¯ J ¯ i ( i ) D ¯ i B ¯ i = A ¯ ( 0 i ) F ¯ i ( i ) ( J ¯ i ( i ) D ˙ ¯ i + D ¯ i θ ˙ ¯ i ˜ J ¯ i ( i ) D ¯ i ) θ ˙ ¯ i + M ¯ i ( i )                 ( i = 1 , 2 , , 6 ) .
The dynamic equation for the unconstrained 6R robot system is derived as:
A ¯ q ¨ ¯ = B ¯ .
Here,
A ¯ = d i a g ( A ¯ 1     A ¯   2       A ¯ 6 ) ,         B ¯ = ( B ¯ 1 T     B ¯ 2 T         B ¯ 6 T ) T .
A ¯ is a 36-order square matrix and B ¯ is a 36-order column matrix.

2.3. Dynamic Parameter Identification of 6R Robot System

The dynamic parameters of the 6R robot include the mass m i of each rigid body and the three principal moments of inertia J i 11 ( i ) , J i 22 ( i ) , J i 33 ( i ) .
The force element F i ( i ) exerted by each joint and the moment M i ( i ) of the force element F i ( i ) to the center of mass and the angular velocity and angular acceleration of each rigid body and the acceleration of the center of mass of each rigid body are regarded as known quantities, dynamic parameters are regarded to be unknown quantities. We rewrote the dynamic equation into parameter identification form and identified it by using the least squares method.
First, the center of mass motion equation Equation (22) is rewritten.
The expansion of F i in Equation (22) is written as:
F i = F i g k = 1 n e S i k e F k e = k = 1 n e S i k e F k 1 e k = 1 n e S i k e F k 2 e m i g k = 1 n e S i k e F k 3 e .
Here, F k 1 e , F k 2 e and F k 3 e are the components of F k e on e 1 ( 0 ) , e 2 ( 0 ) and e 3 ( 0 ) respectively.
The expansion of Equation (22) is written as:
m i x ¨ i y ¨ i z ¨ i = k = 1 n e S i k e F k 1 e k = 1 n e S i k e F k 2 e m i g k = 1 n e S i k e F k 3 e     ( i = 1 , 2 , , 6 ) .
Since gravity F i g is a function of the unknown quantity m i to be identified, move it to the left. Equation (41) is rewritten in parameter identification form as follows:
x ¨ i y ¨ i z ¨ i g m i m i m i = k = 1 n e S i k e F k 1 e k = 1 n e S i k e F k 2 e k = 1 n e S i k e F k 3 e     ( i = 1 , 2 , , 6 ) .
Equation (42) is written in matrix form as follows:
id R _ i   id m _ i = F ¯ i R = A ¯ ( 0 i ) F ¯ i R ( i )     ( i = 1 , 2 , , 6 ) .
Here,
  id R _ i = x ¨ i y ¨ i z ¨ i + g ,     id m _ i = m i m i m i ,     F ¯ i R = k = 1 n e S i k e F k 1 e k = 1 n e S i k e F k 2 e k = 1 n e S i k e F k 3 e .
Second, the posture motion equation, Equation (30), is rewritten. The expansion of Equation (30) is written as:
J i 11 ( i ) 0 0 0 J i 22 ( i ) 0 0 0 J i 33 ( i ) ω ˙ i 1 ( i ) ω ˙ i 2 ( i ) ω ˙ i 3 ( i )   +   0 ω i 3 ( i ) ω i 2 ( i ) ω i 3 ( i ) 0 ω i 1 ( i ) ω i 2 ( i ) ω i 1 ( i ) 0 J i 11 ( i ) 0 0 0 J i 22 ( i ) 0 0 0 J i 33 ( i ) ω i 1 ( i ) ω i 2 ( i ) ω i 3 ( i ) = M ¯ i ( i ) ( i = 1 , 2 , , 6 )
Here, ω i 1 ( i ) , ω i 2 ( i ) and ω i 3 ( i ) are the components of ω ( i ) on e 1 ( i ) , e 2 ( i ) and e 3 ( i ) respectively.
Equation (45) is rewritten in parameter identification form as follows:
ω ˙ i 1 ( i ) ω i 2 ( i ) ω i 3 ( i ) ω i 2 ( i ) ω i 3 ( i ) ω i 1 ( i ) ω i 3 ( i ) ω ˙ i 2 ( i ) ω i 1 ( i ) ω i 3 ( i ) ω i 1 ( i ) ω i 2 ( i ) ω i 1 ( i ) ω i 2 ( i ) ω ˙ i 3 ( i ) J i 11 ( i ) J i 22 ( i ) J i 33 ( i ) = M ¯ i ( i )     ( i = 1 , 2 , , 6 ) .
Equation (46) is abbreviated as the following form:
i d S _ i ( i )   i d J ¯ i ( i ) = M ¯ i ( i )     ( i = 1 , 2 , , 6 ) .
Here,
i d S _ i ( i ) = ω ˙ i 1 ( i ) ω i 2 ( i ) ω i 3 ( i ) ω i 2 ( i ) ω i 3 ( i ) ω i 1 ( i ) ω i 3 ( i ) ω ˙ i 2 ( i ) ω i 1 ( i ) ω i 3 ( i ) ω i 1 ( i ) ω i 2 ( i ) ω i 1 ( i ) ω i 2 ( i ) ω ˙ i 3 ( i ) ,       i d J ¯ i ( i ) = J i 11 ( i ) J i 22 ( i ) J i 33 ( i )     ( i = 1 , 2 , , 6 ) .
Finally, the rewritten center of mass motion equation, Equation (43), and the rewritten posture motion equation, Equation (47), are combined and expressed as the following form, that is, a dynamic equation with parameter identification form.
  id R _ i i d S _ i ( i )   id m _ i   id J ¯ i ( i ) = A ¯ ( 0 i ) F ¯ i R ( i ) M ¯ i ( i )     ( i = 1 , 2 , , 6 ) .
Equation (49) is abbreviated as the following form:
i d Y _ i     id X _   i = i d Z _ i .
Here,
i d Y _ i =   id R _ i i d S _ i ( i ) ,         i d X _ i =   id m _ i   id J ¯ i ( i ) ,         i d Z _ i = A ¯ ( 0 i ) F ¯ i R ( i ) M ¯ i ( i ) .
This is the dynamic equation with the parameter identification form of B i and i d X _ i is the dynamic parameter to be identified. i d Y _ i and i d Z _ i are known parameters obtained by sampling the system, sampling at multiple times to obtain multiple sets of data. The dynamic parameter i d X _ i of the 6R robot system is identified by using the least squares method.
For time t j , the dynamic equation with parameter identification form is expressed as:
j i d Y _ i =   id X _ i     j i d Z _ i .
Assuming that there are n sets of data, that is, 1 j n , corresponding to times t j       ( j = 1 , 2 , , n ) respectively, then the following equation is formed.
1 i d Y _ i 2 i d Y _ i n i d Y _ i   id X _ i = 1 i d Z _ i 2 i d Z _ i n i d Z _ i .
Equation (53) is abbreviated as the following form:
  id K _ i   id X _ i =   id L _ i .
Here,
  id K _ i = 1 i d Y _ i 2 i d Y _ i n i d Y _ i ,       id L _ i = 1 i d Z _ i 2 i d Z _ i n i d Z _ i .
Then the least squares solution of Equation (54) is:
  id X _   i = (   id K _   i T     id K _   i ) 1     id K _ i T     id L _ i .
This means that the dynamic parameters of the rigid body can be identified by using least squares method by sampling the acceleration of the center of mass and the angular velocity and angular acceleration and the data of the joint force element of the rigid body at multiple times.
The above is our method for identifying the dynamic parameters of a single rigid body, from which we can further derive a method for identifying the dynamic parameters of the 6R robot system.
The 6R robot system is a combination of rigid bodies, therefore the dynamic equation with parameter identification form is written as:
i d Y _ 1 i d Y _ 2 i d Y _ 3 i d Y _ 4 i d Y _ 5 i d Y _ 6   id X _   1   id X _   2   id X _   3   id X _   4   id X _   5   id X _   6 = i d Z _ 1 i d Z _ 2 i d Z _ 3 i d Z _ 4 i d Z _ 5 i d Z _ 6
Equation (57) is abbreviated as the following form:
i d Y _ =   id X _   i d Z _ .
Here,
i d Y _ = i d Y _ 1 i d Y _ 2 i d Y _ 3 i d Y _ 4 i d Y _ 5 i d Y _ 6 ,               i d X _ =   id X _   1   id X _   2   id X _   3   id X _   4   id X _   5   id X _   6 ,               i d Z _ = i d Z _ 1 i d Z _ 2 i d Z _ 3 i d Z _ 4 i d Z _ 5 i d Z _ 6 .
Among them, i d X _ is the dynamic parameter to be identified, i d Y _ and i d Z _ are the known data obtained by sampling the system. Sampling at multiple times to obtain multiple sets of data, the dynamic parameter i d X _ of the 6R robot system is identified by the least square method.
For time t i , the dynamic equation with parameter identification form is expressed as:
i i d Y _ =   id X _     i i d Z _ .
Assuming that there are n sets of data, that is, 1 i n , corresponding to times t i       ( i = 1 , 2 , , n ) , respectively, the following equation is formed.
1 i d Y _ 2 i d Y _ n i d Y _   id X _ = 1 i d Z _ 2 i d Z _ n i d Z _ .
Equation (61) is abbreviated as the following form:
  id K _   id X _ =   id L _ .
Here,
  id K _ = 1 i d Y _ 2 i d Y _ n i d Y _ ,         id L _ = 1 i d Z _ 2 i d Z _ n i d Z _ .
Then the least square solution of Equation (62) is as follows:
  id X _ = (   id K _ T     id K _ ) 1     id K _ T     id L _ .
This means that the dynamic parameter of the 6R robot system can be identified by using the least squares method by sampling the data of the center of mass acceleration and the angular velocity and the angular acceleration and the data of the joint force elements of rigid bodies at multiple times.

2.4. Constraint Equations for 6R Robotic Systems

Each joint of the 6R robot is a single DOF revolute joint and each revolute joint provides five holonomic kinematic constraints. The revolute joints O j         ( j = 1 , 2 , , 6 ) that links rigid body B j to its inside connecting body B i ( j ) has a base vector p j of shaft axis, as shown in Figure 7, the arrows represent the directions of the vectors and the circles represent the joint points in Figure 7.
Then the kinematic constraints imposed by the joint O j acting on the 6R robot system are embodied as follows:
(1)
The joint point on rigid body B j coincides with the joint point on its inside connecting body B i ( j ) as a point.
(2)
The base vector of shaft axis of rigid body B j coincides with the base vector of shaft axis of its inside connecting body B i ( j ) as the same vector p j .
Constraint condition (1) is expressed as follows:
r i + c i j r j c j j = 0 .
Equation (65) is written in matrix form as follows:
r ¯ i ( 0 ) + A ¯ ( 0 i ) c ¯ i j ( i ) r ¯ j ( 0 ) A ¯ ( 0 j ) c ¯ j j ( j ) = 0 .
Equation (66) projecting to ( O 0 , e ¯ ( 0 ) ) produces three scalar equations, namely three constraints as follows:
Φ j 1 = x i + l i 2 c β i c γ i x j + l j 2 c β j c γ j = 0 .
Φ j 2 = y i + l i 2 ( c α i s γ i + s α i s β i c γ i ) y j + l j 2 ( c α j s γ j + s α j s β j c γ j ) .
Φ j 3 = z i + l i 2 ( s α i s γ i c α i s β i c γ i ) z j + l j 2 ( s α j s γ j c α j s β j c γ j ) .
Constraint condition (2) is expressed as follows:
A ¯ ( 0 i ) p _ j ( i ) A ¯ ( 0 j ) p _ j ( j ) = 0 .
The basis vector p j is projected in three directions to obtain three projection equations as follows:
Φ j 4 = p j 1 ( i ) c β i c γ i p j 2 ( i ) c β i s γ i + p j 3 ( i ) s β i p j 1 ( j ) c β j c γ j + p j 2 ( j ) c β j s γ j p j 3 ( j ) s β j = 0 .
Φ j 5 = p j 1 ( i ) ( c α i s γ i + s α i s β i c γ i ) + p j 2 ( i ) ( c α i c γ i s α i s β i s γ i ) p j 3 ( i ) s α i c β i                         p j 1 ( j ) ( c α j s γ j + s α j s β j c γ j ) p j 2 ( j ) ( c α j c γ j s α j s β j s γ j ) + p j 3 ( j ) s α j c β j = 0 .
Φ j 6 = p j 1 ( i ) ( s α i s γ i c α i s β i c γ i ) + p j 2 ( i ) ( s α i c γ i + c α i s β i s γ i ) + p j 3 ( i ) c α i c β i                         p j 1 ( j ) ( s α j s γ j c α j s β j c γ j ) p j 2 ( j ) ( s α j c γ j + c α j s β j s γ j ) p j 3 ( j ) c α j c β j = 0 .
Since the relationship between the projection components p j 1 , p j 2 , p j 3 of p j is as follows:
p j 1 2 + p j 2 2 + p j 3 2 = 1 .
Therefore, only two of the three projection formulas Φ j 4 , Φ j 5 , Φ j 6 are independent. We only take Φ j 4 and Φ j 5 as the constraint equations.
Thus, we established the constraint equations of the 6R robot system as follows:
Φ 11 = x 1 + l 1 2 c β 1 c γ 1 = 0 .
Φ 12 = y 1 + l 1 2 ( c α 1 s γ 1 + s α 1 s β 1 c γ 1 ) = 0 .
Φ 13 = z 1 + l 1 2 ( s α 1 s γ 1 c α 1 s β 1 c γ 1 ) = 0 .
Φ 14 = c β 1 c γ 1 = 0 .
Φ 15 = c α 1 s γ 1 + s α 1 s β 1 c γ 1 = 0 .
Φ 21 = x 1 + l 1 2 c β 1 c γ 1 x 2 + l 2 2 c β 2 c γ 2 = 0 .
Φ 22 = y 1 + l 1 2 ( c α 1 s γ 1 + s α 1 s β 1 c γ 1 ) y 2 + l 2 2 ( c α 2 s γ 2 + s α 2 s β 2 c γ 2 ) = 0 .
Φ 23 = z 1 + l 1 2 ( s α 1 s γ 1 c α 1 s β 1 c γ 1 ) z 2 + l 2 2 ( s α 2 s γ 2 c α 2 s β 2 c γ 2 ) = 0 .
Φ 24 = c β 1 s γ 1 c β 2 s γ 2 = 0 .
Φ 25 = c α 1 c γ 1 s α 1 s β 1 s γ 1 c α 2 c γ 2 + s α 2 s β 2 s γ 2 = 0 .
Φ 31 = x 2 + l 2 2 c β 2 c γ 2 x 3 + l 3 2 c β 3 c γ 3 = 0 .
Φ 32 = y 2 + l 2 2 ( c α 2 s γ 2 + s α 2 s β 2 c γ 2 ) y 3 + l 3 2 ( c α 3 s γ 3 + s α 3 s β 3 c γ 3 ) = 0 .
Φ 33 = z 2 + l 2 2 ( s α 2 s γ 2 c α 2 s β 2 c γ 2 ) z 3 + l 3 2 ( s α 3 s γ 3 c α 3 s β 3 c γ 3 ) = 0 .
Φ 34 = c β 2 s γ 2 c β 3 s γ 3 = 0 .
Φ 35 = c α 2 c γ 2 s α 2 s β 2 s γ 2 c α 3 c γ 3 + s α 3 s β 3 s γ 3 = 0 .
Φ 41 = x 3 + l 3 2 c β 3 c γ 3 x 4 + l 4 2 c β 4 c γ 4 = 0 .
Φ 42 = y 3 + l 3 2 ( c α 3 s γ 3 + s α 3 s β 3 c γ 3 ) y 4 + l 4 2 ( c α 4 s γ 4 + s α 4 s β 4 c γ 4 ) = 0 .
Φ 43 = z 3 + l 3 2 ( s α 3 s γ 3 c α 3 s β 3 c γ 3 ) z 4 + l 4 2 ( s α 4 s γ 4 c α 4 s β 4 c γ 4 ) = 0 .
Φ 44 = c β 3 c γ 3 c β 4 c γ 4 = 0 .
Φ 45 = c α 3 s γ 3 + s α 3 s β 3 c γ 3 c α 4 s γ 4 s α 4 s β 4 c γ 4 = 0 .
Φ 51 = x 4 + l 4 2 c β 4 c γ 4 x 5 + l 5 2 c β 5 c γ 5 = 0 .
Φ 52 = y 4 + l 4 2 ( c α 4 s γ 4 + s α 4 s β 4 c γ 4 ) y 5 + l 5 2 ( c α 5 s γ 5 + s α 5 s β 5 c γ 5 ) = 0 .
Φ 53 = z 4 + l 4 2 ( s α 4 s γ 4 c α 4 s β 4 c γ 4 ) z 5 + l 5 2 ( s α 5 s γ 5 c α 5 s β 5 c γ 5 ) = 0 .
Φ 54 = c β 4 s γ 4 c β 5 s γ 5 = 0 .
Φ 55 = c α 4 c γ 4 s α 4 s β 4 s γ 4 c α 5 c γ 5 + s α 5 s β 5 s γ 5 = 0 .
Φ 61 = x 5 + l 5 2 c β 5 c γ 5 x 6 + l 6 2 c β 6 c γ 6 = 0 .
Φ 62 = y 5 + l 5 2 ( c α 5 s γ 5 + s α 5 s β 5 c γ 5 ) y 6 + l 6 2 ( c α 6 s γ 6 + s α 6 s β 6 c γ 6 ) .
Φ 63 = z 5 + l 5 2 ( s α 5 s γ 5 c α 5 s β 5 c γ 5 ) z 6 + l 6 2 ( s α 6 s γ 6 c α 6 s β 6 c γ 6 ) .
Φ 64 = c β 5 c γ 5 c β 6 c γ 6 = 0 .
Φ 65 = c α 5 s γ 5 + s α 5 s β 5 c γ 5 c α 6 s γ 6 s α 6 s β 6 c γ 6 = 0 .
The 6R robot system consists of six rigid bodies, if each rigid body is not constrained, the 6R robot system has 36 DOFs. After being constrained by six revolute joints, the number of DOF of the constrained 6R robot system is six.

2.5. Dynamic Modeling of Constrained 6R Robot System

The constraint equation for the robot system are as follows:
Φ _ ( q ¯ ) = ( Φ _ 1 T               Φ _ 2 T               Φ _ 3 T               Φ _ 4 T               Φ _ 5 T               Φ _ 6 T ) T   .
There are 30 constraint equations in Equation (105) and its derivative is calculated twice with respect to time to obtain the following equation:
Φ ¯ q q ¨ ¯ + ( Φ ¯ q q ˙ ¯ ) q q ˙ ¯ = 0 ¯ .
Here, the 30 × 36 matrix Φ _ q is the Jacobi matrix of Φ _ ( q ¯ ) , which is defined as:
Φ ¯ q = Φ 11 q 1 Φ 11 q 36 Φ 65 q 1 Φ 65 q 36     .
( Φ ¯ q q ˙ ¯ ) q is the Jacobi matrix of Φ ¯ q q ˙ ¯ ,
Then, the constraint equation in the form of the generalized acceleration coordinate is obtained as follows:
Φ ¯ q q ¨ ¯ = ζ ¯ .
The 30-order column matrix ζ ¯ is defined as:
ζ ¯ = ( Φ ¯ q q ˙ ¯ ) q q ˙ ¯   .
Introduce 30 Lagrange multipliers λ k     ( k = 1 , 2 , , 30 ) and write them in column matrix form λ ¯ = ( λ 1 , λ 2 , , λ 30 ) T .
Then the Lagrange equation of first kind of the unconstrained dynamic equation is obtained as follows:
A ¯ q ¨ ¯ B ¯ + Φ ¯ q T λ ¯ = 0 .
Equation (110) is combined with the constraint equation, Equation (108), and then write them in a unified form as follows:
A ¯ Φ ¯ q T Φ ¯ q 0 ¯ q ¨ ¯ λ ¯ = B ¯ ζ ¯ .
This is the dynamic equation of the 6R robot system with complete constraints expressed in generalized coordinates. The expression of this equation is compact and unified. The ideal constraint force of the 6R robot system is re-added by Lagrange multipliers.
There are 66 equations included in Equation (111), which can solve up to 66 unknown variables.
On the basis of Equation (111), the control of the 6R robot system can be realized. The force control of the system can be realized by planning the trajectory curve of q ¨ ¯ and the drive control of the system can be realized by planning the trajectory curve of λ ¯ . This is the work to be carried out in the future.

3. ADAMS Simulation Verification and Calculation Example of 6R Robot System Dynamics Model

A simulation model of the 6R robot was established using ADAMS software. After the measurement and calculation of the parameters, the results show that the identified dynamic parameters have extremely high accuracy, which verifies the correctness and accuracy of the dynamic model and then the ideal constraint force of the 6R robot at a certain moment is analyzed qualitatively.
The simulation model was established based on the rigid body length parameters of the typical 6R robot KUKA KR500 and then the simulation model was used to verify the dynamic model.
First, the simulation model is established with ADAMS software; second, the required linkages and drivers are set, and the dynamic simulation is performed; third, the required parameters of the simulation process are measured; finally, the dynamic parameter identification model and the dynamic model are verified based on the measured parameters.
The structure parameters of the KR500 robot are shown in Figure 8.
The length of each rigid body B i       ( i = 1 , 2 , , 6 ) is known. To simplify the dynamic model, each B i is regarded as a homogeneous cylinder and the radius of each B i is given, among them, the rigid body B 6 is the end effector and its size parameters are set to 0.3 m in length and 0.3 m in radius.
Then the material type of all rigid bodies B i is set to steel and the mass m i       ( i = 1 , 2 , , 6 ) and the principal moment of inertias J i 11 ( i ) , J i 22 ( i ) , J i 33 ( i )       ( i = 1 , 2 , , 6 ) of each rigid body are generated, then the ADAMS simulation model of the KR500 robot is established, as shown in Figure 9. The establishment and direction of each body-fixed base ( O i , e ¯ ( i ) )       i = 1 , 2 , , n of the model is shown in Figure 2.
To quantify each parameter, set the unit of each physical quantity. The unit of each physical quantity is shown in Table 1. The value of gravitational acceleration is set to 9.80665 and the direction is the e 3 ( 0 ) direction.
The parameters of each rigid body in the ADAMS simulation model obtained from the units of each physical quantity are shown in Table 2. The rigid body sequence is from inside to outside. The principal moment of inertia J i 11 ( i ) , J i 22 ( i ) , J i 33 ( i ) is the expression of each rigid body B i in its own body-fixed base ( O i , e ¯ ( i ) ) . m i and J i 11 ( i ) , J i 22 ( i ) , J i 33 ( i ) retain 4 decimal places.

3.1. Simulation Verification of Dynamic Parameter Identification Model

According to the rigid body dynamics model, Equation (49), in order to identify the mass m i and the principal moment of inertia J i 11 ( i ) , J i 22 ( i ) , J i 33 ( i ) of a single rigid body B i , the following parameters of the rigid body must be known.
1.
The three components of the Cardano angles of ( O i , e ¯ ( i ) ) relative to ( O 0 , e ¯ ( 0 ) ) ,
2.
The three components of F i in ( O 0 , e ¯ ( 0 ) ) ,
3.
The three components of M i in ( O 0 , e ¯ ( 0 ) ) ,
4.
The three components of the acceleration of rigid body’s center of mass in ( O 0 , e ¯ ( 0 ) ) ,
5.
The three components of the angular velocity of rigid body in ( O 0 , e ¯ ( 0 ) ) ,
6.
The three components of the angular acceleration of rigid body in ( O 0 , e ¯ ( 0 ) ) .
To simultaneously identify the dynamic parameters of all rigid bodies with one simulation (only one movement), that is, the parameters collected in this movement can be used to identify each single rigid body, it is necessary for each rigid body to generate the above parameters at the same time in this movement to ensure that the data corresponding to each discrete time is real-time for each rigid body. This is the premise that the measured parameters can be used to identify the dynamic parameters of each rigid body at the same time.
To achieve the above purpose, the simulation is set to make the rigid body B 1 move along the e 1 ( 0 ) direction (that is, the guide rail direction) with an acceleration of 2   m / s 2 , while the joint O 1 and the joint O 2 rotate around the joint axis at the angular acceleration of 9.5493   r a d / s 2 (that is, 30 ° / s 2 ), all other joints are locked so that they do not rotate around the joint axis.
Set the initial state to the static state, and the posture is shown in Figure 9, which is the posture shown in Figure 2. The simulation termination time is 2 s and the number of steps is 100. When the simulation is terminated, the robot posture is shown in Figure 10. The motion process generates various required parameters, and the ADAMS software is used to measure various parameters.
The 6R robot system will inevitably be disturbed during the movement, which will cause errors between the measured data and the true value. To reduce the identification accuracy error caused by data error when a single set of data is used for identification, multiple sets of data can be used to identify dynamic parameters according to the mathematical model of Equation (56) to improve the accuracy and stability of the obtained parameters. Theoretically, the more data is taken, the better the identification effects, but too much data will increase the complexity and time-consuming of calculation. In this experiment, five sets of parameters are selected, respectively, taking the parameters at the five times of 0.3 s, 0.6 s, 0.9 s, 1.2 s and 1.5 s (other arbitrary times can also be randomly selected).
The dynamic parameters of the 6R robot system are identified, as shown in Table 3.
Among them, m i ( e 1 ( 0 ) ), m i ( e 2 ( 0 ) ), m i ( e 3 ( 0 ) ) are the mass parameters of a rigid body B 1 identified in the e 1 ( 0 ) , e 2 ( 0 ) , e 3 ( 0 ) directions, respectively. Since rigid body B 1 does not have acceleration in the e 2 ( 0 ) direction, the mass cannot be identified in this direction.
The absolute error between the dynamic parameters obtained by identifying rigid body B 6 , B 5 , , B 1 from outside to inside and its true value is shown in Table 4.
There are two reasons for the error: 1. The dynamics identification model is a complex system. To obtain the final result, many calculations are required. The result of each calculation will cause absolute errors due to only taking part of the significant digits. Therefore, the greater the number of calculations, the bigger the absolute error accumulated. 2. Since the data measured by ADAMS software retains seven significant digits and the counting rules cannot be changed, the larger the measured number, the more digits of the integer and the fewer digits of the decimals, then the greater the absolute error produced.
It can be seen from Table 4 that the absolute error of the identified mass m   i is very small. This is because the number of calculations for the identified mass is less. The absolute error of m 1 is larger than that of other m i     ( i = 2 , 3 , , 6 ) . This is because the force and moment of rigid body B 1 is larger than that of other B i       ( i = 2 , 3 , , 6 ) . The reduction in the number of decimal places of relevant data increases the absolute error.
The absolute error of the principal moment of inertia J i 11 ( i ) , J i 22 ( i ) , J i 33 ( i ) of rigid body B 6 , B 5 , , B 2 is larger than that of mass m i . This is because the principal moment of inertia J i 11 ( i ) , J i 22 ( i ) , J i 33 ( i ) is identified in the rigid body joint base ( O i , e ¯ ( i ) ) . The calculation process involves the coordinate transformation of parameters such as angular velocity ω i and angular acceleration ω ˙ i , and more calculation times cause the accumulation of absolute errors. The absolute error of the principal moment of inertia J 1 11 ( 1 ) , J 1 22 ( 1 ) , J 1 33 ( 1 ) of B 1 is smaller than that of J i 11 ( i ) , J i 22 ( i ) , J i 33 ( i )     ( i = 2 , 3 , , 6 ) . This is because although the force and moment of B 1 are larger than those of other B i     ( i = 2 , 3 , , 6 ) , the simplification of the identification model of B 1 (only the equation in the e 1 ( 1 ) direction is retained) reduces the number of calculations.
In addition, the dynamic equation with parameter identification form is obtained by deforming the unconstrained dynamic equation, which is essentially the same equation, so the unconstrained dynamic equation is verified at the same time.

3.2. A simulation Example of the Dynamic Equation of the Constrained 6R Robot System

There are 66 equations in the constraint dynamic equation of the robot system, which can solve up to 66 unknowns, usually corresponding to 36 generalized coordinates and 30 Lagrange multipliers. Since the generalized coordinates were measured in the simulation motion, 30 Lagrange multipliers can be solved as unknowns.
Lagrange multipliers λ i i = 1 , 2 , , 30 are written as a Lagrange multiplier matrix λ ¯ i i = 1 , 2 , , 6 , which corresponds to rigid body B i i = 1 , 2 , , 6 . Each multiplier matrix is a five-order column matrix. For ease of description, it is recorded as:
λ ¯ i = λ i 1 λ i 2 λ i 3 λ i 4 λ i 5 .
λ i j j = 1 , 2 , , 5 denotes the five elements of B and each element has its physical meaning. Among them, λ i 1 , λ i 2 , λ i 3 is proportional to the ideal constraint force of the rigid body in the e 1 ( 0 ) , e 2 ( 0 ) , e 3 ( 0 ) direction and corresponds one to one. λ i 4 , λ i 5 is the function of the three Cardan angles α i , β i , γ i of B i , which is proportional to the ideal constraint moment represented by the Cardano angle α i , β i , γ i .
The data at 1.5 s time is taken, and the Lagrange multipliers are calculated.
The result is calculated by Formula (111) as follows (the result retains seven significant digits):
λ ¯ 6 = 1 . 356146 × 10 4 3 . 870958 × 10 4 6 . 489101 × 10 3 1 . 211238 × 10 3 8 . 093237 × 10 2 T .
λ ¯ 5 = 5 . 154353 × 10 4 2 . 726663 × 10 4 9 . 277012 × 10 3 1 . 631801 × 10 10 2 . 442163 × 10 10 T .
λ ¯ 4 = 3 . 836233 × 10 4 30 . 072190 × 10 4 1 . 230526 × 10 4 8 . 285916 × 10 3 5 . 536472 × 10 3 T .
λ ¯ 3 = 2 . 941508 × 10 4 3 . 263078 × 10 4 2 . 393758 × 10 4 1 . 431100 × 10 11 2 . 141792 × 10 11 T .
λ ¯ 2 = 1 . 7977 60 × 10 3 1 . 664961 × 10 4 5 . 086735 × 10 4 1 . 233380 × 10 11 1 . 845883 × 10 11 T .
λ ¯ 1 = 4 . 1977 60 × 10 3 1 . 664961 × 10 4 1 . 136554 × 10 5 5 . 868432 × 10 3 1 . 877410 × 10 4 T .
Qualitative analysis of the data of λ ¯ i i = 1 , 2 , , 6 at 1.5 s time shows that:
To counteract the effect of gravity, the ideal constraint force of the rigid body B i i = 1 , 2 , , 6 in the e 3 ( 0 ) direction in this pose is much greater than in the e 1 ( 0 ) , e 2 ( 0 ) directions, so λ i 3 i = 1 , 2 , , 6 is much greater than λ i 1 , λ i 2 i = 1 , 2 , , 6 . The rigid body B i i = 1 , 2 , , 6 needs to bear all the gravity of B j j > i and the ideal constraint force of the rigid body in the e 3 ( 0 ) direction from the outside to the inside increases, so λ i 3 i = 1 , 2 , , 6 increases with decreasing i number. The ideal constraint force of B i i = 1 , 2 , , 6 in the e 1 ( 0 ) , e 2 ( 0 ) direction does not bear gravity; therefore, its values are all small and basically the same order of magnitude.
The shaft axes of the inside joints O 2 , O 3 , O 5 of the rigid bodies B 2 , B 3 , B 5 are in the e 2 ( i ) direction and need to bear the moment generated by the gravity of the outside body, so the ideal constraint moment O 2 , O 3 , O 5 bear is large. The shaft axes of the inside joints O 1 , O 2 , O 6 of B 1 , B 4 , B 6 are not in the direction e 2 ( i ) and do not need to bear the moment generated by the gravity of the outside body, so the ideal restraining moment of O 1 , O 2 , O 6 is small. Therefore, the value of λ i 4 , λ i 5 i = 2 , 3 , 5 is much greater than λ i 4 , λ i 5 i = 1 , 4 , 6 .
O 2 , O 3 has more outside bodies than O 5 and the moment generated by the gravity of the outside bodies is larger, so λ i 4 , λ i 5 i = 2 , 3 is greater than λ i 4 , λ i 5 i = 5 , the posture of the robot system at 1.5 s is shown in Figure 11. At this moment, the direction of the moment generated by the gravity of B 2 received by O 2 is opposite to the moment generated by the gravity of B i i = 3 , 4 , 5 , 6 received by O 2 , which cancels part of the moment that B i i = 3 , 4 , 5 , 6 enacts on O 2 . Therefore, the ideal constraint moment of O 2 is less than O 3 , so λ i 4 , λ i 5 i = 2 is less than λ i 4 , λ i 5 i = 3 .
This qualitative analysis evaluates ideal constraint force and moment. It not only intuitively describes the force situation of the ideal constraint force and moment of each joint, but also accurately describes the magnitude relationship of each the ideal constraint force and moment by the value of the Lagrange multiplier. This provides a theoretical basis for the analysis of the structural strength and reliability of 6R robot systems.

4. Conclusions

6R robot dynamics research is of great significance to the application of robots in the manufacturing industry. Motivated by this, this article systematically studied the 6R robot dynamic model in three respects: modeling, experiment and solution.
First, we established the unconstrained dynamics equation of 6-DOF industrial robots based on graph theory. On this basis, we proposed a new method of dynamic parameter identification. The results of the ADAMS simulation experiment showed that the identified dynamic parameters have extremely high accuracy, with a maximum absolute error of 0.0424, verifying the correctness and accuracy of the dynamic equation.
Second, we established the system of constraint equations for the robot system, consisting of 30 constraint equations.
Finally, we used the Lagrange multiplier method to establish the constrained dynamics equation of the 6-DOF industrial robot and pointed out that the Lagrange multiplier was proportional to the ideal constraint force and moment.
By calculating the constraint dynamics equation at the time of 1.5 s, the values of the Lagrange multipliers were calculated, and from this, the ideal constraint force and moment of the 6R robot system was qualitatively analyzed. A method to evaluate the ideal constraint force and moment was proposed.
The results of experimental research and numerical calculation show that the modeling theory and method proposed in this paper are correct and effective, and the dynamic model has high accuracy.
In future work, we will realize force control and drive control based on the constrained dynamic equation of 6-DOF industrial robots.

Author Contributions

Conceptualization, J.C. and S.B.; methodology, J.C.; software, J.C. and L.C.; validation, J.C., C.Y. and S.B.; formal analysis, J.C. and C.Y.; investigation, J.C. and C.Y.; resources, S.B.; data curation, J.C.; writing—original draft preparation, J.C.; writing—review and editing, J.C., and S.B.; visualization, C.Y.; supervision, S.B.; project administration, J.C., Y.C., Y.Y. and C.Y.; and funding acquisition, S.B. All authors have read and agreed to the published version of the manuscript.

Funding

This work was supported by “the National Key R&D Program of China (No. 2017YFB1301700)”.

Acknowledgments

We thank Yanan Wang for technical support.

Conflicts of Interest

The authors declare no conflict of interest.

References

  1. Pham, A.-D.; Ahn, H.-J. High Precision Reducers for Industrial Robots Driving 4th Industrial Revolution: State of Arts, Analysis, Design, Performance Evaluation and Perspective. Int. J. Precis. Eng. Manuf.-Green Technol. 2018, 5, 519–533. [Google Scholar] [CrossRef]
  2. Menon, M.; Asada, H. Design and Control of Paired Mobile Robots Working Across a Thin Plate with Application to Aircraft Manufacturing. IEEE Trans. Autom. Sci. Eng. 2011, 8, 614–624. [Google Scholar] [CrossRef]
  3. Verl, A.; Valente, A.; Melkote, S.; Brecher, C.; Ozturk, E.; Tunc, L.T. Robots in machining. CIRP Ann.-Manuf. Technol. 2019, 68, 799–822. [Google Scholar] [CrossRef]
  4. Kim, S.H.; Nam, E.; Ha, T.I.; Hwang, S.-H.; Lee, J.H.; Park, S.-H.; Min, B.-K. Robotic Machining: A Review of Recent Progress. Int. J. Precis. Eng. Manuf. 2019, 20, 1629–1642. [Google Scholar] [CrossRef]
  5. Kheddar, A.; Caron, S.; Gergondet, P.; Comport, A.; Tanguy, A.; Ott, C.; Henze, B.; Mesesan, G.; Englsberger, J.; Roa, M.A.; et al. Humanoid Robots in Aircraft Manufacturing: The Airbus Use Cases. IEEE Robot. Autom. Mag. 2019, 26, 30–45. [Google Scholar] [CrossRef] [Green Version]
  6. Summers, M. Robot Capability Test and Development of Industrial Robot Positioning System for the Aerospace Industry. SAE Trans. 2005, 114, 1108–1118. [Google Scholar] [CrossRef]
  7. Yun, Y.; Li, Y. Design and analysis of a novel 6-DOF redundant actuated parallel robot with compliant hinges for high precision positioning. Nonlinear Dyn. 2010, 61, 829–845. [Google Scholar] [CrossRef]
  8. Shirinzadeh, B.; Teoh, P.L.; Tian, Y.; Dalvand, M.M.; Zhong, Y.; Liaw, H.C. Laser interferometry-based guidance methodology for high precision positioning of mechanisms and robots. Robot. Comput. Manuf. 2010, 26, 74–82. [Google Scholar] [CrossRef]
  9. Nubiola, A.; Bonev, I.A. Absolute calibration of an ABB IRB 1600 robot using a laser tracker. Robot. Comput. Integr. Manuf. 2013, 29, 236–245. [Google Scholar] [CrossRef]
  10. Pan, Z.; Zhang, H.; Zhu, Z.; Wang, J. Chatter analysis of robotic machining process. J. Mater. Process. Technol. 2006, 173, 301–309. [Google Scholar] [CrossRef]
  11. Swevers, J.; Verdonck, W.; De Schutter, J. Dynamic Model Identification for Industrial Robots. IEEE Control Syst. Mag. 2007, 27, 58–71. [Google Scholar] [CrossRef]
  12. Guo, Y.; Dong, H.; Wang, G.; Ke, Y. Vibration analysis and suppression in robotic boring process. Int. J. Mach. Tools Manuf. 2016, 101, 102–110. [Google Scholar] [CrossRef]
  13. Zhang, L.; Wang, J.; Chen, J.; Chen, K.; Lin, B.; Xu, F. Dynamic modeling for a 6-DOF robot manipulator based on a centrosymmetric static friction model and whale genetic optimization algorithm. Adv. Eng. Softw. 2019, 135, 102684. [Google Scholar] [CrossRef]
  14. Koopaee, M.J.; Pretty, C.; Classens, K.; Chen, X. Dynamical Modeling and Control of Modular Snake Robots with Series Elastic Actuators for Pedal Wave Locomotion on Uneven Terrain. J. Mech. Des. 2020, 142, 1–46. [Google Scholar] [CrossRef]
  15. Cui, M.-Y.; Xie, X.-J.; Wu, Z.-J. Dynamics Modeling and Tracking Control of Robot Manipulators in Random Vibration Environment. IEEE Trans. Autom. Control. 2012, 58, 1540–1545. [Google Scholar] [CrossRef]
  16. Liu, S.; Wu, L.; Lu, Z. Impact dynamics and control of a flexible dual-arm space robot capturing an object. Appl. Math. Comput. 2007, 185, 1149–1159. [Google Scholar] [CrossRef]
  17. Xu, W.; Meng, D.; Chen, Y.; Qian, H.; Xu, Y. Dynamics modeling and analysis of a flexible-base space robot for capturing large flexible spacecraft. Multibody Syst. Dyn. 2014, 32, 357–401. [Google Scholar] [CrossRef]
  18. Wu, H.; Wang, Y.; Li, M.; Alsaedi, M.; Handroos, H. Chatter suppression methods of a robot machine for ITER vacuum vessel assembly and maintenance. Fusion Eng. Des. 2014, 89, 2357–2362. [Google Scholar] [CrossRef]
  19. Armstrong, B.; Khatib, O.; Burdick, J. The explicit dynamic model and inertial parameters of the PUMA 560 arm. In Proceedings of the IEEE International Conference on Robotics and Automation, San Francisco, CA, USA, 7–10 April 1986; pp. 510–518. [Google Scholar]
  20. Zhou, Y.; Luo, J.; Wang, M. Dynamic coupling analysis of multi-arm space robot. Acta Astronaut. 2019, 160, 583–593. [Google Scholar] [CrossRef]
  21. Khalil, W.; Dombre, E. Modeling, Identification and Control of Robots; Hermes Penton Ltd.: London, UK, 2002. [Google Scholar]
  22. Wu, J.; Wang, J.; You, Z. An overview of dynamic parameter identification of robots. Robot. Comput.-Integr. Manuf. 2010, 26, 414–419. [Google Scholar] [CrossRef]
  23. Liu, W.; Huo, X.; Liu, J.; Wang, L. Parameter identification for a quadrotor helicopter using multivariable extremum seeking algorithm. Int. J. Control Autom. Syst. 2018, 16, 1951–1961. [Google Scholar] [CrossRef]
  24. Urrea, C.; Saa, D. Design and Implementation of a Graphic Simulator for Calculating the Inverse Kinematics of a Redundant Planar Manipulator Robot. Appl. Sci. 2020, 10, 6770. [Google Scholar] [CrossRef]
  25. Urrea, C.; Pascal, J. Parameter identification methods for real redundant manipulators. J. Appl. Res. Technol. 2017, 15, 320–331. [Google Scholar] [CrossRef]
  26. Garcia, R.R.; Bittencourt, A.C.; Villani, E. Relevant factors for the energy consumption of industrial robots. J. Braz. Soc. Mech. Sci. Eng. 2018, 40, 1–15. [Google Scholar] [CrossRef]
  27. Gaz, C.; Cognetti, M.; Oliva, A.; Giordano, P.R.; De Luca, A. Dynamic Identification of the Franka Emika Panda Robot with Retrieval of Feasible Parameters Using Penalty-Based Optimization. IEEE Robot. Autom. Lett. 2019, 4, 4147–4154. [Google Scholar] [CrossRef] [Green Version]
  28. Urrea, C.; Pascal, J. Dynamic Parameter Identification Based on Lagrangian Formulation and Servomotor-type Actuators for Industrial Robots. Int. J. Control. Autom. Syst. 2021, 19, 2902–2909. [Google Scholar] [CrossRef]
  29. Olsen, M.M.; Swevers, J.; Verdonck, W. Maximum Likelihood Identification of a Dynamic Robot Model: Implementation Issues. Int. J. Robot. Res. 2002, 21, 89–96. [Google Scholar] [CrossRef]
  30. Gautier, M.; Janot, A.; Vandanjon, P.-O. A New Closed-Loop Output Error Method for Parameter Identification of Robot Dynamics. IEEE Trans. Control. Syst. Technol. 2012, 21, 428–444. [Google Scholar] [CrossRef] [Green Version]
  31. Featherstone, R.; Orin, D. Robot dynamics: Equations and algorithms. In Proceedings of the 2000 ICRA. Millennium Conference. IEEE International Conference on Robotics and Automation. Symposia Proceedings (Cat. No.00CH37065), San Francisco, CA, USA, 24–28 April 2002; Volume 1, pp. 826–834. [Google Scholar] [CrossRef] [Green Version]
  32. Williams, J.H. Fundamentals of Applied Dynamics; John Wiley and Sons Inc.: New York, NY, USA, 1996. [Google Scholar]
  33. Selig, J.M. Geometrical Methods in Robotics; Springer: Singapore, 1996. [Google Scholar]
  34. Josephs, H.; Huston, R.L. Dynamics of Mechanical Systems; CRC Press: New York, NY, USA, 2002. [Google Scholar]
  35. Hamilton, S.W.R. On a General Method in Dynamics; Philosophical Transactions of the Royal Society: London, UK, 1834; p. 247. [Google Scholar]
  36. Hamilton, W.R. Second essay on a general method in dynamics. Philos. Trans. R. Soc. Lond. 1835, 125, 95–144. [Google Scholar] [CrossRef]
  37. Udwadia, F.E.; Kalaba, R.E. Analytical Dynamics: A New Approach; Cambridge University Press: Cambridge, UK, 2007. [Google Scholar]
  38. Birkhoff, G.D. Dynamical Systems; American Mathematical Society: Providence, RI, USA, 1927; Volume 9. [Google Scholar]
  39. Kane, T.R. Dynamics of nonholonomic systems. J. Appl. Mech. 1961, 28, 574–578. [Google Scholar] [CrossRef]
  40. Khalil, W.; Guegan, S. Inverse and Direct Dynamic Modeling of Gough–Stewart Robots. IEEE Trans. Robot. 2004, 20, 754–761. [Google Scholar] [CrossRef] [Green Version]
  41. Shao, P.; Wang, Z.; Yang, S.; Liu, Z. Dynamic modeling of a two-DoF rotational parallel robot with changeable rotational axes. Mech. Mach. Theory 2019, 131, 318–335. [Google Scholar] [CrossRef]
  42. Mancisidor, A.; Zubizarreta, A.; Cabanes, I.; Bengoa, P.; Jung, J.H. Kinematical and dynamical modeling of a multipurpose upper limbs rehabilitation robot. Robot. Comput. Manuf. 2018, 49, 374–387. [Google Scholar] [CrossRef]
  43. Huang, P.; Hu, Z.; Zhang, F. Dynamic modelling and coordinated controller designing for the manoeuvrable tether-net space robot system. Multibody Syst. Dyn. 2016, 36, 115–141. [Google Scholar] [CrossRef]
  44. Nielsen, M.C.; Eidsvik, O.A.; Blanke, M.; Schjølberg, I. Constrained multi-body dynamics for modular underwater robots—Theory and experiments. Ocean Eng. 2018, 149, 358–372. [Google Scholar] [CrossRef] [Green Version]
  45. Xu, F.; Wang, H.; Au, K.W.S.; Chen, W.; Miao, Y. Underwater Dynamic Modeling for a Cable-Driven Soft Robot Arm. IEEE/ASME Trans. Mechatron. 2018, 23, 2726–2738. [Google Scholar] [CrossRef]
  46. Djuric, A.M.; ElMaraghy, W.H. Automatic separation method for generation of reconfigurable 6R robot dynamics equations. Int. J. Adv. Manuf. Technol. 2010, 46, 831–842. [Google Scholar] [CrossRef]
  47. Introduction of KUKA KR500 Robot System and Its Structural Parameters. Available online: https://www.kuka.com/en-cn/products/robotics-systems/industrial-robots/kr-500-fortec (accessed on 15 October 2021).
Figure 1. 6R robot system [47].
Figure 1. 6R robot system [47].
Applsci 11 10988 g001
Figure 2. Schematic diagram of the 6R robot system body-fixed bases.
Figure 2. Schematic diagram of the 6R robot system body-fixed bases.
Applsci 11 10988 g002
Figure 3. The system with the tree structure and the structure diagram of the system with the tree structure of the 6R robot system. (a) The system with the tree structure of the 6R robot system; (b) the structure diagram of the system with the tree structure of the 6R robot system.
Figure 3. The system with the tree structure and the structure diagram of the system with the tree structure of the 6R robot system. (a) The system with the tree structure of the 6R robot system; (b) the structure diagram of the system with the tree structure of the 6R robot system.
Applsci 11 10988 g003
Figure 4. The body-joint vector.
Figure 4. The body-joint vector.
Applsci 11 10988 g004
Figure 5. The distribution of body-joint vectors of the 6R robot system.
Figure 5. The distribution of body-joint vectors of the 6R robot system.
Applsci 11 10988 g005
Figure 6. Force element vector.
Figure 6. Force element vector.
Applsci 11 10988 g006
Figure 7. Constraints of revolute joint.
Figure 7. Constraints of revolute joint.
Applsci 11 10988 g007
Figure 8. The structure parameters of the KR500 robot [47].
Figure 8. The structure parameters of the KR500 robot [47].
Applsci 11 10988 g008
Figure 9. The ADAMS simulation model of the KR500 robot.
Figure 9. The ADAMS simulation model of the KR500 robot.
Applsci 11 10988 g009
Figure 10. The termination posture of the KR500 robot ADAMS simulation.
Figure 10. The termination posture of the KR500 robot ADAMS simulation.
Applsci 11 10988 g010
Figure 11. Posture of 6R robot system at 1.5 s.
Figure 11. Posture of 6R robot system at 1.5 s.
Applsci 11 10988 g011
Table 1. The unit of each physical quantity.
Table 1. The unit of each physical quantity.
Physical QuantityLengthMassForceTimeAngleFrequency
UnitmkgNs1 (rad)Hz
Table 2. Physical parameters of each rigid body B i .
Table 2. Physical parameters of each rigid body B i .
Rigid   Body   B i B 1 B 2 B 3 B 4 B 5 B 6
Length ( m )1.0451.2451.210.3150.290.3
Radius ( m )0.50.30.20.20.20.3
m 1 ( kg )6402.60122746.07261186.1661308.7953284.2877661.7042
J i 11 ( i ) ( kg · m 2 )800.3251123.573323.72336.17595.685829.7767
J i 22 ( i ) ( kg · m 2 )982.8126416.4934156.58385.64134.835319.8511
J i 33 ( i ) ( kg · m 2 )982.8126416.4934156.58385.64134.835319.8511
Table 3. Identified 6R robot system dynamic parameters.
Table 3. Identified 6R robot system dynamic parameters.
Rigid   Body   B i B 1 B 2 B 3 B 4 B 5 B 6
m i ( e 1 ( 0 ) )( kg )6402.60002746.07201186.1658308.7958284.2875661.7041
m i ( e 2 ( 0 ) )( kg )2746.07231186.1661308.7955284.2875661.7043
m i ( e 3 ( 0 ) )( kg )6402.59422746.07231186.1660308.7955284.2877661.7042
J i 11 ( i ) ( kg m 2 )800.3252123.615723.72066.17615.685629.7769
J i 22 ( i ) ( kg m 2 )982.8120416.4683156.58215.64124.834819.8511
J i 33 ( i ) ( kg m 2 )982.8120416.5109156.57225.46194.835319.8514
Table 4. The absolute error between the dynamic parameters of rigid body B 6 , B 5 , , B 1 and its real value.
Table 4. The absolute error between the dynamic parameters of rigid body B 6 , B 5 , , B 1 and its real value.
Rigid BodyAbsolute Error
m i ( e 1 ( 0 ) )
( kg )
m i ( e 2 ( 0 ) )
( kg )
m i ( e 3 ( 0 ) )
( kg )
J i 11 ( i )
( kg m 2 )
J i 22 ( i )
( kg m 2 )
J i 33 ( i )
( kg m 2 )
B 6 −0.00010.000100.000200.0003
B 5 −0.0002−0.00020−0.0002−0.00050
B 4 0.00050.00020.00020.0002−0.00010.0006
B 3 −0.00020−0.0001−0.0027−0.0017−0.0116
B 2 −0.0006−0.0003−0.00030.0424−0.02510.0175
B 1 −0.0012−0.00700.0001−0.0006−0.0006
Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Share and Cite

MDPI and ACS Style

Cheng, J.; Bi, S.; Yuan, C.; Chen, L.; Cai, Y.; Yao, Y. A Graph Theory-Based Method for Dynamic Modeling and Parameter Identification of 6-DOF Industrial Robots. Appl. Sci. 2021, 11, 10988. https://doi.org/10.3390/app112210988

AMA Style

Cheng J, Bi S, Yuan C, Chen L, Cai Y, Yao Y. A Graph Theory-Based Method for Dynamic Modeling and Parameter Identification of 6-DOF Industrial Robots. Applied Sciences. 2021; 11(22):10988. https://doi.org/10.3390/app112210988

Chicago/Turabian Style

Cheng, Jun, Shusheng Bi, Chang Yuan, Lin Chen, Yueri Cai, and Yanbin Yao. 2021. "A Graph Theory-Based Method for Dynamic Modeling and Parameter Identification of 6-DOF Industrial Robots" Applied Sciences 11, no. 22: 10988. https://doi.org/10.3390/app112210988

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop