Next Article in Journal
Robotic Writing of Arbitrary Unicode Characters Using Paintbrushes
Previous Article in Journal
Occupancy Grid Mapping via Resource-Constrained Robotic Swarms: A Collaborative Exploration Strategy
Order Article Reprints
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:

A Comprehensive Multibody Model of a Collaborative Robot to Support Model-Based Health Management

Department of Mechanical and Aerospace Engineering, Politecnico di Torino, Corso Duca degli Abruzzi 24, 10129 Torino, Italy
Author to whom correspondence should be addressed.
Robotics 2023, 12(3), 71;
Received: 31 March 2023 / Revised: 26 April 2023 / Accepted: 5 May 2023 / Published: 9 May 2023
(This article belongs to the Section Industrial Robots and Automation)


Digital models of industrial and collaborative manipulators are widely used for several applications, such as power-efficient trajectory definition, human–robot cooperation safety improvement, and prognostics and health management (PHM) algorithm development. Currently, models with simplified joints present in the literature have been used to evaluate robot macroscopic behavior. However, they are not suitable for the in-depth analyses required by those activities, such as PHM, which demand a punctual description of each subcomponent. This paper aims to fill this gap by presenting a high-fidelity multibody model of a UR5 collaborative robot, containing an accurate description of its full dynamics, electric motors, and gearboxes. Harmonic reducers were described through a translational equivalent lumped parameter model, allowing each constitutive element of the reducer to have its decoupled dynamics and mating forces through non-linear penalty contact models. To conclude, both the mathematical model and the real robot on a test rig were tested with a set of different trajectories. The experimental results highlight the ability of the proposed model to accurately replicate joint angular rotation, speed and torques in a wide range of operational scenarios. This research provides the basis for the development of a model-based PHM-oriented framework to carry out detailed and advanced analyses on the effects of manipulator degradations.

1. Introduction

Recent years have seen a significant growth in the adoption of collaborative robots (cobots) in industrial environments, since their low entry-point cost and relative simplicity has popularized the adoption of increased automation levels in small and medium enterprises [1]. Since these manipulators are largely employed in assembly lines [2], inspection [3], or repair operations [4,5], their malfunctioning might jeopardize the operators’ safety and cause unexpected downtimes. To mitigate these risks, preventive actions, such as scheduled maintenance, are usually adopted. Nevertheless, since each robot is programmed to execute a specific task, its load history and degradation rate are not equal to the ones of the same machine performing a different task. Other possible solutions are represented by stand-by working stations, backup manipulators, and fault-tolerant control algorithms [6], which, however, are not always applicable.
Within this context, condition-based maintenance represents a key technology to ensure line availability and prevent economical losses. The ability to detect a fault at its early stage allows scheduling the replacement of the faulty components during periods of lower production, or before the robot can cause any damage to the operators with which the cobot shares its workspace or the production line itself. To do so, data-driven models (DDMs) are often used to extract health indicators from the machine and predict its remaining useful life using the obtained dataset to test machine learning algorithms [7]; for example, confronting simulated acceleration and measured acceleration by means of an accelerometer mounted on the tip of the robot [8,9]. While these algorithms can also be used to detect motor failures [10], according to [11], electric faults are likely to be autonomously detected by the built-in control logic of the joint. As such, prognostics and health management (PHM) studies on robotic systems are mainly focused on the detection and classification of mechanical faults on bearings [12] and gearboxes. By adding several sensors [13,14,15,16], it is possible to obtain information about, for example, speeds and accelerations. After the definition of the dataset, the analysis of these data can be performed using, for example, generative adversarial networks [13,14,15,16] to solve the problem of data imbalance and multiscale convolutional neural network to realize the fault diagnosis of the harmonic drive. Another approach is based on the use of deep learning [13,14,15,16] to extract, optimize, and classify different features. However, the main drawback of this approach is the need for large datasets of both healthy and faulty robot behavior, which are rarely available [17,18] due to an average mean time between failures of tens of thousands of hours [19]. To overcome this limitation, a database of simulated data in the presence of faults and failures can be built through a high-fidelity model of the robot arm. Such data, together with the experimental data, can be used to train DDMs for the proper detection and classification of the failure modes to which the machine is subjected. In [20,21], the authors proposed the application of a prognostic framework based on a long short-term memory neural network and the automatic recognition of the assembly task to detect mechanical faults in a robot for roller hemming employed in the automotive sector. Another example is represented by [20,21], in which physics-based simulation models, based on the digital twin concept, are used to obtain an estimate of the remaining useful life of machinery equipment.
With this aim, several studies focused on researching kinematic analyses and calibration of anthropomorphic robot manipulators, such as the UR5 collaborative robot from Universal Robots A/S, and on the creation of its digital twin to replicate the dynamic behavior, have obtained insights on internal quantities and studied the effects of specific degradations on both its position accuracy and overall performance. In Ref. [22], the authors present a kinematic model of a 6-DoF manipulator that utilizes the Denavit–Hartenberg convention to describe the relationships between the reference frames of each joint in the robot. The same approach was followed in [23] to obtain a simplified mass-concentrated model of a 3-DoF anthropomorphic manipulator: this kind of model can be used for kinematic calibration, as in [24]. In Ref. [25], a similar approach was used to perform forward and inverse kinematics to obtain the joint angular rotations from the desired Tool Center Point (TCP) pose and vice versa. To achieve this, a specific trajectory must be followed, and the inverse dynamic modeling approach allows calculating the torques required for such a trajectory. This requires considering the inertia of the links, Coriolis forces, gravity, and every exogenous force or torque applied on the robot, as shown in [26].
However, in high-fidelity models, particularly those involved in the creation of non-nominal behavior datasets for PHM purposes, a causal forward dynamic approach is preferred since it is dynamically consistent and satisfies the fundamental laws of physics at each point of the simulation.
The ability to replicate not only the actual joint positions, but also the torques necessary to perform the desired trajectory, is crucial for several studies, such as the ones aiming to minimize the power consumption of industrial manipulators [27,28] or the ones focused on using robot digital twins to evaluate the safety and ergonomics of specific applications [29,30]. The development of accurate models allows improvements in productivity and accuracy [31] as well. For these reasons, dynamic models of increasing complexity have been developed according to the specific objective and needs [32]. One of the main purposes related to the definition of dynamic models concerns the design and testing of the control algorithms. In Ref. [33], the PID controller of the robot was tuned based on the Ziegler–Nichols method, exploiting a classic dynamic model of a robot obtained by means of Lagrange equations [23]. In Ref. [34], the authors developed a simplified dynamic model by means of the Kane equation to study a robot design environment for the use of collaborative robots for rehabilitation purposes.
Good et al. [35] investigated the robot control algorithm and underlined the importance of taking into account the interactions between the robotic arm and the electromechanical drives. The model presented in [36] enhanced the mathematical representation of the robot structure, considering a simplified electric motor model. Tarn et al. [37] developed a third-order dynamic model of the robot obtained by combining the manipulator and the motor dynamics to study the effect of a nonlinear feedback control. Here, the model received as input the motor’s armature voltage and returned as output the kinematic quantities of each joint.
An effective description of robot dynamics is necessary to achieve simulation models with high accuracy. For this reason, in both forward and inverse dynamics approaches, it is vital to know the correct dynamic parameters of the robot. On this topic, several studies concentrated on the development of identification techniques for these parameters [31], minimizing the error between the signal measured on the real robot, subjected to a proper excitation trajectory [38], and those obtained from the model simulation. Kovincic et al. [26] identified the dynamic parameters using a Moore–Penrose pseudo-inverse of the regressor of a UR5, obtaining a functional set of parameters to reproduce the robot’s trajectory. However, this approach did not include any constraints on the values of the dynamic parameters, which can lead to a physically meaningless set of parameters. To solve this problem, in [39], a different method of identification of the dynamic parameters was proposed. Such an approach offers promising results, but requires the use of additional sensors such as accelerometers to measure the motion of each joint. An alternative way to identify the dynamic parameters involves the use of statistical techniques [36]. This method can provide excellent results in terms of overlapping of the model with the experimental results, but suffers from a very loose representation of the system physics. An alternative approach was developed by Raviola et al. [40], which applied a constrained genetic algorithm minimization, taking into account also the effect of mounting configuration for different temperature conditions.
Hitherto, in the literature, the majority of dynamic models of robotic manipulators were developed with the goal of describing the macroscopic behavior of the entire system without taking into account the punctual description of each subsystem of the robot and their interaction. However, if a physics-based description of faults and degradation in the system has to be inserted for PHM analyses, a high level of detail and fidelity of the model is required, and the dynamic behavior and mutual interaction of each subsystem should be taken into account.
To solve these issues, the present paper describes a high-fidelity model of a UR5, a six-degrees-of-freedom (DoF) collaborative robot from Universal Robots A/S. Hayati’s additional kinematic parameters were introduced to model assembly errors and obtain more physically representative kinematic calibration parameters. From a dynamic perspective, the dynamic parameters were identified for the UR5 under study according to [40]. Additionally, a detailed joint model was developed to accurately model the elements of each joint, including the electric motor and the reducer. For the latter, a strain wave gear dynamic model was considered together with the description of the internal interactions between its main elements, enabling a comparison between real robot currents and those generated by the model. The proper modeling and implementation of the reducer in the description of the robot dynamic behavior is of paramount importance in the robot design phases as well. The harmonic reducer is not the only element that can be exploited in the joint architecture of a robot. Another possible solution is the Zero-backlash High-Precision Roller Enveloping Reducer (ZHPRER) proposed in [41]. In their work, Wang et al. tested and verified the applicability of such a novel reducer by means of a dynamic model established using multibody dynamics. A further alternative is represented by the Rotate Vector (RV) reducer, whose applicability and performance were tested by means of a high-fidelity model as discussed in [42,43].
Finally, friction effects were included in each joint by means of the LuGre model, which allows a representation of both stiction and dynamic viscous friction depending on the operative conditions, temperature, and joint configuration [40]. The same logic can be applied to the development of digital twins of other manipulators with a different number of degrees of freedom. The major novelty of the present work regards the integration of the robot joint model in an electro-mechanical actuator architecture to obtain a physical-based description of the joint torque. This approach allows a better description of the dynamic behavior of the overall manipulator with respect to the previous literature, also obtaining a good approximation on the single joint’s torque evaluation.
The present paper is organized as follows: first, the structure and characteristics of the UR5 robot under analysis are briefly recalled. Then, the mathematical model of the aforementioned robot is presented, and the strain wave gear mathematical representation is introduced, as well as that of the electric motor. Next, the performed experimental procedure is described and, to conclude, the comparison between the simulated data and experimental signals is presented in terms of position, speed, and torque for each joint. In particular, two quite different trajectories were tested in order to investigate the model ability of replicating the real robot behavior in different operational scenarios.

2. Mathematical Model of the UR5

The case study faced in this work concerns the development of a high-fidelity model of the UR5 robot of Universal Robots A/S depicted in in Figure 1. The UR5 is a collaborative anthropomorphic robot with six degrees of freedom, which corresponds to the same number of revolute joints. A peculiarity of the UR5 structure is that it does not have a spherical wrist; therefore, there is no point in which the three axes of the wrist joints intersect. From an implementation point of view, the first three joints are equal to each other, as are the last three.
The mathematical model of the UR5 collaborative robot, whose structure is reported in Figure 2, was developed in the MATLAB-Simulink environment.
As for the real manipulator, the set of the joints’ angular positions ( q s e t = [ q s e t , 1 ,   q s e t , 2 , q s e t , 3 , q s e t , 4 , q s e t , 5 , q s e t , 6 ] ) is provided as input to the six joints of the robot digital replica. The main elements of each joint (e.g., control logic, power electronics, electric motor, gearbox, and sensors) were modeled by finding a good compromise between simulation time and level of detail. To simulate one second, a computer with an Intel® i7-8750H processor at 3.91 GHz equipped with 16 GB of RAM DDR4 takes about five minutes.
For each joint, by means of three nested control loops (joint position, motor velocity, and motor current), the reference voltage ( V r e f ) is calculated and provided as input to the power electronics block, where, through Pulse Width Modulation (PWM), the supply voltage ( V s u p ) is obtained. Inside the electric motor block, the motor current ( i ) and velocity ( q ˙ M ) are computed and used as inputs to the current sensor and the optical encoder, respectively, to obtain the relative feedback signals ( i F B , q ˙ M , F B ). The gearbox model compares the motor and the joint angular positions and velocities ( q M and q , q ˙ M and q ˙ ) to calculate the reaction torque to the motor/input shaft ( T S W G , i n ) and the joint output torque ( T j = T S W G , o u t ). To this last value, the friction torque ( T f ) is then subtracted to obtain the useful torque ( T u ) acting on the joint shaft. The useful torques of each of the six joints of the manipulator are used in the robot arm block to solve the forward dynamics from which the joints’ angular accelerations are obtained. Once integrated, they provide the joints’ angular positions ( q ), which are given as inputs to the magnetic encoder to determine the feedback signal ( q F B ). Finally, through the forward kinematics of the robot arm, the pose (position and orientation) of the TCP is computed.

2.1. Control Logic and Power Electronics

Since the actual control algorithms implemented by the robot manufacturer on the real robot are unavailable, for the simulated manipulator a control logic based on proportional and integrative (PI) gains was adopted, similar to the ones proposed by [25,33]. The control parameters reported in Table 1 were tuned by analyzing the frequency response function derived for each joint as described in Appendix A.
The joint control logic was structured into three nested loops. The outer one compares the desired ( q s e t ) and the feedback ( q F B ) signals of the joints’ angular positions to determine the position error ( e p o s ) of each joint. Such value is then multiplied by a proportional gain (P), to which the desired motor angular velocity ( q ˙ M , t a r g e t ) is summed to obtain the reference motor angular velocity ( q ˙ M , r e f ). This approach adds a speed feedforward branch to enhance the control capabilities, exploiting the a priori knowledge of the entire trajectory, usually known in classic robot operations. The mismatch ( e v e l ) between such signal ( q ˙ M , r e f ) and the feedback value ( q ˙ M , F B ) coming from the optical encoder determines the velocity error which, once compensated, becomes the reference current signal.
The motor current control loop evaluates the reference voltage ( V r e f ) as a function of the mismatch ( e c u r ) between the reference ( i r e f ) and the feedback ( i F B ) motor currents. This is used by the power electronics block, which regulates the network voltage ( V n e t = 48 V) providing the PWM supply voltage ( V s u p ) to the electric motors.

2.2. Electric Motor

The UR5 is equipped with six Permanent Magnets AC Synchronous Motors (PMSMs), which combine the high precision in speed control typical of a synchronous motor with the simple and robust design of an asynchronous one. To reduce the model complexity, the motors of the simulated manipulator were described through their equivalent DC monophase models receiving as input the supply voltage ( V s u p ) and providing, as output, the motor torque T M = k t i , where k t is the torque constant and i is the motor current. The motor dynamics are described through two electrical and mechanical equilibrium equations:
{ V s u p = L d i d t + R i + k e q ˙ M J M d q ˙ M d t = k t i T S W G , i n ,
where R and L are, respectively, the equivalent DC motor winding resistance and inductance, k e is the motor back-EMF constant, assumed, at first approximation, to be equal to k t , q ˙ M is the motor angular velocity, J M is the rotor inertia, and T S W G , i n is the reaction torque generated by the reducer on the motor shaft and represents the disturbance torque to the electric motor. The values of the aforementioned parameters are provided in Table 2.

2.3. Gearbox

The Strain Wave Gear (SWG), also known as harmonic drive, is a reducer widely adopted in several industrial fields, ranging from industrial and collaborative robotics [44,45] to aerospace applications [46], due to its high reduction ratio, virtually zero-backlash, and compact and light-weight design. This gear can be functionally described through its three main components: Wave Generator (WG), Flexspline (FS), and Circular Spline (CS). The WG consists of an elliptical cam (wave generator plug) inserted in a deformable ball bearing which is then pushed inside the FS, a thin-walled gear with external toothing engaging with the CS, a rigid gear with internal toothing. The behavior of the gear changes according to the mounting configuration of these three components. As an example, for the UR5 manipulator, the input shaft is always integral to the WG, while the output one is integral to the CS, as the FS fixed to the joint case. This leads to a reduction ratio ( τ ), defined as:
τ = Z C S Z C S Z F S
where Z F S and Z C S are, respectively, the number of the flexspline and the circular spline teeth. Since, for the robot under analysis, Z F S = 200 and Z C S = 202 , the gear ratio reported in Equation (2) is τ = 101 . Due to its elliptical shape, the rotation of the wave generator elastically deforms the flexspline along its major axis, allowing it to mesh with the circular spline. Since the number of FS teeth is two fewer than the one of CS, for a full rotation of the input shaft, the output one rotates of an angle corresponding to two teeth. For the proposed case study, according to Equation (2), for each 360° of rotation of the WG, the CS rotates, in the same direction, by about 3.56°.
To replicate the behavior of the strain wave gear, a translation equivalent model, based on the research in [47,48], was implemented on each joint of the UR5 manipulator. This allows describing the cyclic deformation of the flexspline and its interaction with the circular spline through equivalent tangential and radial displacements. Damping–stiffness ( c k ) coefficients [49] were used to describe the interactions not only between the contact interfaces within the SWG, but also between the motor shaft and the WG, and between the CS and the joint output flange. Therefore, it is possible to decouple the dynamics of the SWG from those of the input and the output shafts, leading to a four-DoF model. The schematic representations of the proposed gear model is reported in Figure 3. Here, the curved continuous arrows are used to schematize the rotation of the gear elements, while the dashed ones represent their small oscillations due to their compliant connections to the joint housing represented through a damper and a torsional stiffness.
To properly describe the behavior of the gearbox, both the kinematic and dynamic parameters (e.g., inertia and torsional stiffness) of the gears were characterized. According to [50], the UR5 collaborative robot was equipped with the same joint/reducer size for the first three joints (base, shoulder, and elbow), while a smaller one is mounted on the last three (wrist 1, wrist 2, and wrist 3). For convenience, in the present document, these two sizes will be labeled as A and B, respectively, for the bigger and the smaller reducers.
The translation model of the SWG reported in Figure 3b is based on the possibility to correlate the angular quantities of the actual gear (e.g., input and output shaft rotations) to the equivalent translational ones through a primitive equivalent radius ( r g ) equal to the undeformed FS radius. To respect the actual transmission ratio, the elliptical cam equivalent angle ( α n ) was described as a function of the gear ratio ( τ ) and the tooth pressure angle ( α t ) as:
α n = arctan ( 1 τ tan α t )
While the inertia values of the wave generator ( J W G ), the flexspline ( J F S ), and the circular spline ( J C S ) for the two reducers were derived from the CAD files, the torsional stiffness ( K W G , K F S , K C S ) of the single elements of the strain wave gears were approximated using the formula for hollow cylinders:
K = π E ( d e x t 4 d i n t 4 ) 64 l ( 1 + ν )
where E = 206 × 10 9   N / m 2 and ν = 0.26 are the steel Young modulus and Poisson coefficient, l is the shaft length, and d e x t and d i n t are, respectively, the external and internal diameters of the single component. On the contrary, the linear stiffnesses used to model the contact between the WG outer race and the FS inner surface ( K b ) and the one associated with the FS-CS teeth meshing ( K m ) were derived from the literature [51], while all the damping factors were set equal to 0.1. The values used in the proposed model are summarized in Table 3.
To calculate the torque transmitted by the reducer ( T j = T S W G , o u t equal to T F S or T C S , according to the gear mounting configuration), it is necessary to solve the dynamic equilibrium of the WG, the FS, and the CS schematized in Figure 3b. The equations describing the interactions among the single elements of the gear are [51]:
{ J W G q ¨ W G = T S W G , i n F b r g s α n c α n J F S x ¨ F S r g 2 = F b F m s α t J F S y ¨ F S r g 2 = F m c α t F t J C S q ¨ C S = F m r g c α t T C S T S W G , i n = K W G ( q M q W G ) + c W G ( q ˙ M q ˙ W G ) F b = K b ( x W G x F S ) + c b ( x ˙ W G x ˙ F S ) F m = K m [ x F S s α t ( y C S + y F S ) c α t ] + c m [ x ˙ F S s α t ( y ˙ C S + y ˙ F S ) c α t ] F t = K F S y F S r g 2 + c F S y ˙ F S r g 2 T C S = K C S ( q C S q ) + c C S ( q ˙ C S q ˙ )
where, for better clarity, the general notation c x = cos ( x ) and s x = sin ( x ) was adopted. The nine equations used to describe the kinematic and dynamic behavior of the single reducer can be classified into two groups:
  • Group 1: comprised of the first four equations describing, respectively, the dynamic equilibrium of the wave generator, the flexspline radial and tangential contributions, and the one of the circular spline;
  • Group 2: comprised of the last five equations, representing the interactions between the input shaft and the elliptical cam, through the WG bearing, between the FS and the CS teeth, and between the FS and the joint case and the CS with the output shaft.
To ensure the correct functioning of the proposed gear models, the initial conditions were defined according to the starting angular positions of the input/motor shafts and the output/joint shafts, obtained from the solution of the following set of equations:
[ K W G K b r g s α n c α n K b r g s α n c α n 0 0 0 0 K b ( K b + K m s α t 2 ) K m s α t c α t K m s α t c α t 0 0 0 K m s α t c α t K m c α t 2 + K F S r g 2 K m c α t 2 0 0 0 K m r g s α t c α t K m r g c α t 2 K m r g c α t 2 K C S r g tan α n 1 0 0 0 0 0 0 0 0 1 r g ] ( q W G , 0 x W G , 0 x F S , 0 y F S , 0 y C S , 0 q C S , 0 ) = ( K W G q M , 0 0 0 K C S q 0 0 0 )

2.4. Friction

In contrast with [48], friction was not implemented at the single contact interfaces of the SWG, but defined as an overall joint friction torque. This was chosen to implement the Coulomb ( f c ) and the viscous ( f v ) friction coefficients derived through the base dynamic parameters identification process in the proposed robot model, as described in [52]. However, the friction model used to build the regression matrix in [40] does not properly replicate the actual trend of a joint friction. To describe the behavior associated with the input and output bearings inside the robot joint, the Stribeck curve proposed in [53] was modified in the one reported in Equation (7) through the exponent associated with the joint angular velocity ( q ˙ ) [51]. The friction torque T f between the input and output of each joint was modeled through the interaction of the LuGre elastic bristles as proposed in [54], leading to:
{ T f = σ 0 z + σ 1 z ˙ z ˙ = q ˙ | q ˙ | z g ( q ˙ ) σ 0 g ( q ˙ ) = f c ( 1 + K s t a t i c e k q | q ˙ | | q ˙ s | ) + f v q ˙ 2 3
where σ 0 = 5 × 10 6   Nm / rad and σ 1 = 100   Nms / rad are, respectively, the stiffness and the damping coefficient of the bristles subjected to an average deflection z at a speed z ˙ , q ˙ is the joint angular velocity (equal to the relative velocity of the two contact surfaces), g ( q ˙ ) also depends on surface materials, lubrication regime, and temperature, q ˙ s = 0.5   rad / s is the sliding speed threshold used to describe the Stribeck effect, K s t a t i c = 0.3 is the static friction increment with respect to the Coulomb friction f c which leads to the stiction friction force, while k q and f v are the Stribeck parameter and the viscous friction coefficient, respectively, selected in order to reproduce the experimental behavior [52]. Other possible formulations of the friction curve for a robot joint can be found in [55,56]. The LuGre model allows considering micro-displacements, which are represented with a spring-like behavior.

2.5. Sensors

According to the scheme reported in Figure 2, each joint of the robot was equipped with three sensors:
  • Optical encoder: an encoder integral to the motor/input shaft used to derive the motor angular velocity ( q ˙ M ) used to provide the feedback signal ( q ˙ M , F B ) to the velocity control loop;
  • Magnetic encoder: an encoder integral to the joint/output shaft used to measure the joint actual angular position ( q ) used to close the position control loop through the feedback signal ( q F B );
  • Current sensor: used to measure the motor current ( i ) necessary to close the current control loop through the feedback signal ( i F B ).
Such sensors were modeled using first-order transfer functions for the current sensors, while second-order ones were implemented for both input and output encoders. For a more realistic description of the real sensors, noise was added to the feedback signals, which were then digitalized by means of a sample and hold circuit and a quantizer. The noise standard deviation was the same as the one measured from the UR5.
Moreover, in the real robot, each joint is also equipped with a thermocouple used to measure the joint temperature. However, since heat transfer was neglected in the proposed joint model, this sensor was not implemented.

2.6. Six-DoF Forward Kinematics and Dynamics

The robot arm subsystem, shown in Figure 2, contains the Simscape Multibody model with which the single joints and links of the UR5 digital replica are connected, as depicted in Figure 4.
The relative position and orientation of the joint reference frame i with respect to the previous one i 1 are described through the 4 × 4 roto-translation matrix i−1Ai as:
i 1 A i = Transl ( z i , d i ) · Rot ( z i , θ i ) · Transl ( x i , a i ) · Rot ( x i , α i ) · Rot ( y i , β i ) i 1 A i = [ c θ i c β i s θ i s α i s β i s θ i c α i c θ i s β i + s θ i s α i c β i a i c θ i s θ i c β i + c θ i s α i s β i c θ i c α i s θ i s β i c θ i s α i c β i a i s θ i c α i s β i s α i c α i c β i d i 0 0 0 1 ]
As in Section 2.3, for better clarity, the general notation c x = cos ( x ) and s x = sin ( x ) was adopted. The values of the variables in Equation (8) were obtained through post-processing of the ones derived from the dual robot calibration performed by the manufacturer [57]. Nominally, each UR5 collaborative robot is geometrically described by the Denavit–Hartenberg (DH) parameters provided in [58]. However, due to production tolerances and mounting errors, it is necessary to calibrate each robot to achieve the desired position accuracy and repeatability. According to [59], through the DH convention, for links between two nearly parallel joints, it is not possible to obtain, after the calibration process, corrections to the robot geometric parameters with a physical meaning. In the proposed use case, for example, the values of the DH parameter d for links 2 and 3 have an order of magnitude of kilometers. To avoid using unrealistic numbers, it was necessary to merge the Denavit–Hartemberg convention with the one proposed by Hayati in [59], leading to the roto-translation matrix shown in Equation (8) and to the kinematic parameters reported in Table 4.
To complete the description of the robot arm, the dynamic properties reported in Table 5 were associated with the single links of the manipulator.
From a dynamic point of view, the description of the behavior of the manipulator was obtained by exploiting the Simulink/Simscape environment. Within it, a casual object-oriented programming language, individual system model, and its interconnections describe the underlying dynamics equation. This approach allows the design of the model to be based on the actual structure of the physical system. The kinematic and dynamic parameters reported in Table 4 and Table 5 were used to build the multibody Simscape model schematized in Figure 5.
As shown in Figure 2, each joint j sub-model receives as input the torque ( T j ) provided by the reducer and calculated through Equation (5). As an output, each block provides the joint angular position ( q j ). Within the sub model of each joint, mass, Coriolis, and gravity matrices are automatically constructed, while the friction matrix is provided by exploiting the LuGre model as illustrated in Section 2.4, to compute the direct dynamics of the manipulator.

3. Experimental Testing

To examine the goodness of the proposed model, several trajectories were applied to both the UR5 and its digital replica. As an example, in the present paper, two different test trajectories were analyzed. On one hand, specific movements designed to properly excite the robot dynamic parameters, such as the ones reported in [26,61,62], were provided as inputs to evaluate the ability of the proposed model to replicate a high-dynamic behavior of the real robot. On the other hand, since, according to [63], pick-and-place is the most common application for both industrial and collaborative robots, the model performance was also evaluated with a trajectory representative of such movements. In both cases, the desired joints’ angular positions of the test trajectories, reported in Figure 6, were applied to the UR5 through port 29999 [64], while the joints’ angular positions and velocities and the motors’ current signals were acquired at a frequency of 125 Hz using port 30003.
For both trajectories, to clearly plot the joints’ torques and to improve the paper readability, the current signals were filtered with a low-pass filter at a cutoff frequency of 10 Hz. On the contrary, no filtering was required for the joints’ angular positions.

3.1. Dynamic Parameters Excitation Trajectory

Due to the complexity of such excitation trajectory, to move the real manipulator, the robot built-in function servoj (target joint configuration, acceleration, velocity, time, lookahead time, gain) was adopted [65]. The numerical values of acceleration, velocity, time, lookahead time, and gain were set equal to 0 rad/s2, 0 rad/s, 0.08 ms, 0.03, and 500, respectively.
The ability of the proposed model to follow the desired trajectory can be seen in Figure 7, where both set and feedback joints’ angular position signals are reported.
Since, for all the joints, the trends of the three curves well overlap, Figure 8 reports the mismatches between such set and feedback signals to better highlight the tracking error of both the real and the simulated robots. For better comparison, the axes scales are the same for all the joint plots.
By analyzing the position errors for each joint, it can be seen that they not only have the same order of magnitude for both manipulators, but they also share similar trends, proving that the proposed model is able to replicate the actual behavior of the real UR5. It should be also noticed that the position error of the proposed model is lower than that of the real robot, with a maximum value of about 0.08°. However, the apparent better performance of the proposed model is likely related to the simplifications adopted. Among all, the strain wave gear torsional hysteresis [66] was not modeled in the translation equivalent model of the strain wave gear of Figure 3. Such a simplification leads to the gears always having the same torsional stiffness during the entire trajectory, while studies in the literature [67,68] showed that this is a function of the applied torque. This, together with the approximations of the gear stiffness values, might lead the digital replica to be stiffer than the real robot, allowing its control logic to better compensate for position errors.
Nevertheless, the low tracking errors between the set and feedback joints’ angular positions translate into an actual path of the TCP close to the ideal/desired one, which is of paramount importance for applications such as welding, dispensing, and gluing. The position and the orientation of the robot TCP with respect to the fixed base reference frame (0A6), in fact, are described by the combination of rigid body transformation matrices described in Equation (8) for each joint as:
A   0 6 = i = 0 5 A   i i + 1
According to the control logic reported in Figure 2, the position error was used to compute the target/reference motor angular velocity whose difference with the feedback signal, once compensated, provides the motor current for each joint. By multiplying the feedback currents ( i F B ) by the reduction ratio ( τ ) and the motor torque constants ( k t ) reported in Table 2, the joint reducer output torques of the two manipulators are derived and compared in Figure 9.
Even though the simulated torques (Model) well approximate the measured ones (UR5), some intervals of the tested trajectory show higher mismatches between the two sets of data. Such a residual difference might be related to several causes, such as:
  • Implementation of simplified DC models of the joint motors instead of using three-phase ones, whose parameters, such as resistance and inductance, are not fully known. Moreover, the motor back-EMF constant ( k e ) was assumed to be constant for the entire trajectory, while it slightly changes with the applied load.
  • A possible incorrect description of the joint friction. As already mentioned, the identification algorithms provided by [40,52] only take into account viscous and Coulomb friction, while they are not able to describe more complex trends, such as the ones affecting the real robot. To do so, friction was modeled through Equation (7), whose coefficients were tuned according to several experimental campaigns aiming to reach a good overall fit between simulated and measured motor currents.
  • Lack of both the kinematic error and the gear torsional hysteresis in the translation-equivalent models of the strain wave gears.
  • The joint control logic schematized in Figure 2 is not the same as the one implemented in the real robot, which is unknown. As an example, studies such as [69,70] highlight how manipulators from Universal Robots are equipped with vibration suppression algorithms, which were not implemented in the current model. Having two different control logics deeply affects the torque trends. Since, according to the scheme reported in Figure 2, the current control loop is the most internal one, the reference value of the motor current is affected by both the position and the velocity control loops. As a direct consequence, since, as depicted in Figure 8, the joint position error is different between the two manipulators, the velocity reference signal will also be different. Hence, based on the adopted PI gains, the motor angular velocity error differs from the one of the real robot as well.
  • While the control parameters reported in Table 1 are constant, it should not be excluded that Universal Robots A/S might adopt variable settings according to the specific operating conditions of the manipulator. such as very fast or very slow movements.
All the aforementioned major simplifications adopted in the present work increase the difficulty of building a digital shadow of the UR5 able to replicate the actual joint torques. More accurate estimates could be reached with a more detailed model of the single components of the robot arm, but this would negatively affect the computational cost of the robot digital replica, leading to simulation times high enough to nullify the advantage of higher precision in describing the actual dynamic behavior of the manipulator. Nevertheless, the obtained results on the torque signals are quite representative of the real behavior and constitute an innovation with respect to the usually employed literature models, in which a much lighter description of the internal quantities of the robot is present.

3.2. Pick-and-Place Trajectory

In contrast with the previous trajectory, the pick-and-place trajectory was obtained using the movel and movej commands [65] with different settings of speed and acceleration using the Polyscope programming interface on the robot teach pendant. An analysis, similar to the one reported in Section 3.1 for the dynamic parameters identification trajectory, was also conducted for the pick-and-place trajectory. The results are reported in Figure 10, Figure 11 and Figure 12.
By comparing Figure 11 with Figure 8, it can be seen that, on average, the joints’ angular positions errors are lower for the pick-and-place trajectory. This is most likely related to the lower dynamics involved in this task with respect to the rapid and continuously changing movements required to identify the UR5 base dynamic parameters.
The lower angular velocities involved during the pick-and-place give more time to the joint control logic to compensate for a mismatch between the desired and actual joint positions. This is particularly true for the last joint, which rotates a few tenths of degrees just to maintain the desired orientation of the TCP.
However, a position error of approximately 0.24°, about 0.05° higher than the one of the UR5, is visible at about 8.5 s in the second wrist. This is caused by a rapid deceleration of the joint from a speed of 180°/s to 0 in a short interval. In so doing, the control logic is required to rapidly adjust its target from keeping the joint at its highest rotation speed to break it according to a trapezoidal velocity trend. This rapid change generates a current spike, visible in the torque peak in Figure 12.
For the tested trajectory, the shoulder joint was affected by the highest errors. However, it should be noted that it was also the most loaded joint and its dynamics are directly affected by those of the other four following joints. It should be pointed out that, while, as shown in Figure 9, there is a good match between the measured and the simulated torques of the last joint (wrist 3), the same is not demonstrated for the pick-and-place trajectory in Figure 12. The difference in the two trends is probably caused by the possible different control logic adopted by Universal Robots A/S to handle very low movements, which would lead to extremely low angular velocity errors, as in the proposed case study where the maximum error between reference and feedback speed for all the joints is about 0.2°/s over the entire trajectory. In this scenario, the joint is almost still, but since the velocity error, even if low, is still present, it generates a current signal which is proportional to such error.

4. Conclusions

The present paper describes a high-fidelity dynamic model of a UR5 collaborative robot where the main components of robot joints were described in a detailed and physically representative way. Testing trajectories of different types were applied to both the real robot and its digital replica, showing a good match between experimental and simulated signals in terms of position, speed, and joint torques. In particular, the latter information represents the innovation with respect to a dynamic literature model, which usually disregards the dynamics of the joint electric drives.
Future work will be focused on simulating the presence of faults and failures of different origins and magnitudes to evaluate their impact on the overall behavior of the manipulator. The digital replica of the real robot will be used as a virtual test bench to generate a dataset of nominal and degraded responses, paving the way for a more detailed and thorough model-based PHM investigation. In addition, the proposed model of the strain wave gear will be improved to take into account additional dynamic effects, such as the kinematic error, the load-dependent torsional stiffness, and its relative degradation in time, due to an in-depth analysis of the internal interactions among the gear’s constitutive elements.

Author Contributions

Conceptualization, A.R., R.G., A.C.B. and A.D.M.; methodology, A.R., R.G., A.C.B. and A.D.M.; software, A.R., R.G. and A.D.M.; validation, A.R. and R.G.; formal analysis, A.R., R.G., A.C.B. and A.D.M.; investigation, A.R., R.G., A.C.B. and A.D.M.; writing—original draft preparation, A.R., R.G., A.C.B. and A.D.M.; writing—review and editing, A.R., R.G., A.C.B. and A.D.M.; supervision, A.C.B., A.D.M., S.M. and M.S.; project administration, S.M. and M.S. All authors have read and agreed to the published version of the manuscript.


This study was carried out within the MOST—Sustainable Mobility National Research Center and received funding from the European Union Next-GenerationEU (PIANO NAZIONALE DI RIPRESA E RESILIENZA (PNRR)—MISSIONE 4 COMPONENTE 2, INVESTIMENTO 1.4—D.D. 1033 17/06/2022, CN00000023). This manuscript reflects only the authors’ views and opinions, neither the European Union nor the European Commission can be considered responsible for them.

Conflicts of Interest

The authors declare no conflict of interest.


The following symbols are used in the manuscript:
q Joint position α t Teeth pressure angle
q s e t Joint set position K W G WG torsional stiffness
q F B Joint feedback position c W G WG damping coefficient
e p o s Joint position error K b Bearing radial stiffness
q ˙ M Motor velocity c b Bearing radial damping coefficient
q ˙ M , r e f Motor reference velocity K F S FS torsional stiffness
q ˙ M , F B Motor feedback velocity c F S FS damping coefficient
e v e l Motor velocity error K m Meshing stiffness between FS and CS
i Motor current c m Meshing damping coefficient
i r e f Motor reference current K C S CS torsional stiffness
i F B Motor feedback current c C S CS damping coefficient
e c u r Motor current error τ Gear ratio
V r e f Reference voltage J W G WG inertia
V s u p Supply voltage J F S FS inertia
V n e t Network voltage J C S CS inertia
L DC motor equivalent inductance q W G WG angular position
R DC motor equivalent resistance q C S CS angular position
k t Motor torque constant x W G Radial displacement of the bearing outer rings
k e Motor voltage constant x F S Radial displacement of the FS
T M Motor electromechanical torque y F S Tangential displacement of the FS free edge
J M Motor rotor moment of inertia y C S Tangential displacement of the CS
T S W G , i n Strain wave gear input torque T f Joint friction torque
T S W G , o u t Strain wave gear output torque T f , s Static friction torque
r g Strain wave gear primitive equivalent radius T f , C Coulomb friction torque
Z F S FS teeth number f v Viscous friction coefficient
Z C S CS teeth number T u Joint useful torque

Appendix A

The control parameters reported in Table 1 were obtained by analyzing the joints Frequency Response Function (FRF) to ensure the stable dynamic behavior of the robot. To do so, each control loop (in the order: current, velocity, and position) was tested with sinusoidal signals of different frequencies to test the ability of the joint to follow the reference signals under different operating conditions. In detail, the frequency ranges were 10–10,000 Hz, 1–200 Hz, and 0.1–10 Hz, respectively, for the current, velocity, and position control loops. The equivalent joint model used for this study is similar to the one reported in Figure 2, and it is schematized in Figure A1.
Figure A1. Single joint model used to derive frequency response function.
Figure A1. Single joint model used to derive frequency response function.
Robotics 12 00071 g0a1
The proportional (P) and integrative (I) parameters of each control loop were tuned from the inner (current) to the outer (position) loop using the model in Figure A1 configured as:
  • Current loop: switch A not influent, switch B in position 2, switches C and D open;
  • Velocity loop: switches A and B both in position 1, switch C closed, switch D open;
  • Position loop: switch A in position 2 and switch B in position 1, switches C and D closed.
The required stability thresholds for the proposed model were a phase and a gain margin of at least 60° and 8 dB.
The joint load ( J e q ), represented by the “robot equivalent inertia” block in Figure A1, was chosen as the mean value of the diagonal elements M i i of the positive definite symmetric inertia matrix M ( q ) , as a function of the robot joints’ angular positions q [71]. Figure A2 shows how the robot equivalent inertia acting on the base ( M 11 ), shoulder ( M 22 ), elbow ( M 33 ), and first wrist ( M 44 ) joints varies as a function of the position of the two consecutive joints.
Figure A2. (a) Base inertia as a function of shoulder and elbow angles; (b) shoulder inertia as a function of elbow and wrist 1 angles; (c) elbow inertia as a function of wrist 1 and 2 angles; (d) wrist 1 inertia as a function of wrist 2 and 3 angles.
Figure A2. (a) Base inertia as a function of shoulder and elbow angles; (b) shoulder inertia as a function of elbow and wrist 1 angles; (c) elbow inertia as a function of wrist 1 and 2 angles; (d) wrist 1 inertia as a function of wrist 2 and 3 angles.
Robotics 12 00071 g0a2aRobotics 12 00071 g0a2b
The values for the last two wrists of the UR5 are not reported because, since the robot wrist group is quite compact, the angular positions of the second wrist almost do not affect the equivalent inertia to which the first one is subjected. The same reasoning can be applied to wrist 3, which moves link 6 and which can be approximated with a cylinder. This is clearly visible from Table A1, where the maximum, mean, and minimum values of the robot equivalent inertia are listed. For the wrist group, the equivalent inertia M i i is almost constant for the fourth joint of the robot, while no sensitive variations are present for the last two joints.
Table A1. Maximum, mean, and minimum robot equivalent inertia M i i for the UR5 joints.
Table A1. Maximum, mean, and minimum robot equivalent inertia M i i for the UR5 joints.
[kgm2]BaseShoulderElbowWrist 1Wrist 2Wrist 3


  1. International Federation of Robotics. The Impact of Robots on Productivity, Employment and Jobs; International Federation of Robotics: Frankfurt, Germany, 2017. [Google Scholar]
  2. Matheson, E.; Minto, R.; Zampieri, E.G.G.; Faccio, M.; Rosati, G. Human-Robot Collaboration in Manufacturing Applications: A Review. Robotics 2019, 4, 100. [Google Scholar] [CrossRef]
  3. González, J.C.; Martínez, S.; Jardón, A.; Balaguer, C. Robot-aided tunnel inspection and maintenance system. In Proceedings of the 26th International Symposium on Automation and Robotics in Construction, ISARC 2009, Austin, TX, USA, 24–27 June 2009; pp. 420–426. [Google Scholar]
  4. Raviola, A.; Antonacci, M.; Marino, F.; Jacazio, G.; Sorli, M.; Wende, G. Collaborative robotics: Enhance maintenance procedures on primary flight control servo-actuators. Appl. Sci. 2021, 11, 4929. [Google Scholar] [CrossRef]
  5. Parker, L.E.; Draper, J.V. Robotics applications in maintenance and repair. In Handbook of Industrial Robotics; Wiley Online Books: Hoboken, NJ, USA, 1998; p. 1378. ISBN 0471177830. [Google Scholar]
  6. Abdi, H.; Nahavandi, S.; Frayman, Y.; Maciejewski, A.A. Optimal mapping of joint faults into healthy joint velocity space for fault-tolerant redundant manipulators. Robotica 2011, 30, 671. [Google Scholar] [CrossRef]
  7. Pinto, R.; Cerquitelli, T. Robot fault detection and remaining life estimation for predictive maintenance. Procedia Comput. Sci. 2019, 151, 709–716. [Google Scholar] [CrossRef]
  8. Liu, H.; Wei, T.; Wang, X. Signal Decomposition and Fault Diagnosis of a SCARA Robot Based Only on Tip Acceleration Measurement. In Proceedings of the 2009 International Conference on Mechatronics and Automation (ICMA 2009), Changchun, China, 9–12 August 2009; pp. 4811–4816. [Google Scholar] [CrossRef]
  9. De Martin, A.; Jacazio, G.; Nesci, A.; Sorli, M. In-depth Feature Selection for PHM System’s Feasibility Study for Helicopters’ Main and Tail Rotor Actuators. In Proceedings of the European Conference of the PHM Society 2020, Turin, Italy, 27–31 July 2020; pp. 1–9. [Google Scholar]
  10. De Martin, A.; Jacazio, G.; Vachtsevanos, G. Windings Fault Detection and Prognosis in Electro-Mechanical Flight Control Actuators Operating in Active-Active Configuration. Int. J. Progn. Health Manag. 2017, 8. [Google Scholar] [CrossRef]
  11. Raviola, A.; De Martin, A.; Guida, R.; Jacazio, G.; Mauro, S.; Sorli, M. Harmonic Drive Gear Failures in Industrial Robots Applications: An Overview. In Proceedings of the European Conference of the PHM Society 2021, Online, 6–8 July 2021. [Google Scholar]
  12. Jaber, A.A.; Bicker, R. Fault Diagnosis of Industrial Robot Bearings Based on Discrete Wavelet Transform and Artificial Neural Network. Insight-Non-Destr. Test. Cond. Monit. 2016, 58, 179–186. [Google Scholar] [CrossRef]
  13. Kdqj, H.; Pdqglqh, P.; Vxq, K.; Dee, F.Q.; Lqfoxglqj, P.; Sh, V.W.; Dqg, V.; Wudfwlrq, I.H.; Vroxwlrq, S.; Yhulilhg, L.V.; et al. Health Monitoring of Strain Wave Gear on Industrial Robots. In Proceedings of the IEEE 8th Data Driven Control and Learning Systems Conference, Dali, China, 24–27 May 2019; pp. 1166–1170. [Google Scholar]
  14. Yang, G.; Zhong, Y.; Yang, L.; Du, R. Fault Detection of Harmonic Drive Using Multiscale Convolutional Neural Network. IEEE Trans. Instrum. Meas. 2021, 70, 1–11. [Google Scholar] [CrossRef]
  15. Yang, G.; Zhong, Y.; Yang, L.; Tao, H.; Li, J.; Du, R. Fault Diagnosis of Harmonic Drive with Imbalanced Data Using Generative Adversarial Network. IEEE Trans. Instrum. Meas. 2021, 70, 1–11. [Google Scholar] [CrossRef]
  16. Raouf, I.; Lee, H.; Noh, Y.R.; Youn, B.D.; Kim, H.S. Prognostic health management of the robotic strain wave gear reducer based on variable speed of operation: A data-driven via deep learning approach. J. Comput. Des. Eng. 2022, 1775–1788. [Google Scholar] [CrossRef]
  17. Zhou, Q.; Wang, Y.; Jianming, X. A Summary of Health Prognostics Methods for Industrial Robots. In Proceedings of the 2019 Prognostics & System Health Management Conference, Qingdao, China, 25–27 October 2019; pp. 5–10. [Google Scholar]
  18. Qiao, G.; Weiss, B.A. Accuracy degradation analysis for industrial robot systems. In Proceedings of the ASME 2017 12th International Manufacturing Science and Engineering Conference, MSEC 2017 collocated with the JSME/ASME 2017 6th International Conference on Materials and Processing, Los Angeles, CA, USA, 4–8 June 2017; Volume 3, p. 9. [Google Scholar]
  19. Majid, M.A.A.; Fudzin, F. Study on robots failures in automotive painting line. ARPN J. Eng. Appl. Sci. 2017, 12, 62–67. [Google Scholar]
  20. Grosso, L.A.; De Martin, A.; Jacazio, G.; Sorli, M. Development of data-driven PHM solutions for robot hemming in automotive production lines. Int. J. Progn. Health Manag. 2020, 11. [Google Scholar]
  21. Aivaliotis, P.; Georgoulias, K.; Chryssolouris, G. The use of Digital Twin for predictive maintenance in manufacturing. Int. J. Comput. Integr. Manuf. 2019, 32, 1067–1080. [Google Scholar] [CrossRef]
  22. Guida, R.; De Simone, M.C.; Dašić, P.; Guida, D. Modeling techniques for kinematic analysis of a six-axis robotic arm. IOP Conf. Ser. Mater. Sci. Eng. 2019, 568, 012115. [Google Scholar]
  23. Kardoš, J. The Simplified Dynamic Model of a Robot Manipulator. In Proceedings of the 18th International Conference on Technical Computing, Bratislava, Slovakia, 8–10 January 2010; Volume 1, pp. 1–6. [Google Scholar]
  24. Liang, B.; Cheng, Y.; Zhu, X.; Liu, H.; Wang, X. Calibration of UR5 manipulator based on kinematic models. In Proceedings of the 30th Chinese Control and Decision Conference, CCDC 2018, Shenyang, China, 9–11 June 2018; pp. 3552–3557. [Google Scholar]
  25. Kebria, P.M.; Al-Wais, S.; Abdi, H.; Nahavandi, S. Kinematic and dynamic modelling of UR5 manipulator. In Proceedings of the International Conference on Systems, Man, and Cybernetics, SMC 2016, Budapest, Hungary, 9–12 October 2016; pp. 4229–4234. [Google Scholar]
  26. Kovincic, N.; Müller, A.; Gattringer, H.; Weyrer, M.; Schlotzhauer, A.; Brandstötter, M. Dynamic parameter identification of the Universal Robots UR5. In Proceedings of the Austrian Robotics Workshop and OAGM Joint Workshop on Vision and Robotics, Steyr, Austria, 9–10 May 2019. [Google Scholar]
  27. Boscariol, P.; Caracciolo, R.; Richiedei, D.; Trevisani, A. Energy Optimization of Functionally Redundant Robots through Motion Design. Appl. Sci. 2020, 10, 3022. [Google Scholar] [CrossRef]
  28. Paryanto; Brossog, M.; Bornschlegl, M.; Franke, J. Reducing the energy consumption of industrial robots in manufacturing systems. Int. J. Adv. Manuf. Technol. 2015, 78, 1315–1328. [Google Scholar] [CrossRef]
  29. Bilberg, A.; Malik, A.A. Digital twin driven human–robot collaborative assembly. CIRP Ann. 2019, 68, 499–502. [Google Scholar] [CrossRef]
  30. Weistroffer, V.; Keith, F.; Bisiaux, A.; Andriot, C.; Lasnier, A. Using Physics-Based Digital Twins and Extended Reality for the Safety and Ergonomics Evaluation of Cobotic Workstations. Front. Virtual Real. 2022, 3, 18. [Google Scholar] [CrossRef]
  31. Leboutet, Q.; Roux, J.; Janot, A.; Guadarrama-Olvera, J.R.; Cheng, G. Inertial Parameter Identification in Robotics: A Survey. Appl. Sci. 2021, 11, 4303. [Google Scholar] [CrossRef]
  32. Bejczy, A.K. Robot Arm Dynamics and Control (No. NASA-CR-136935). 1974. Available online: (accessed on 25 April 2023).
  33. Wahyuningtri, S.; Adzkiya, D.; Nurhadi, H. Motion Control Design and Analysis of UR5 Collaborative Robots Using Proportional Integral Derivative (PID) Method. In Proceedings of the International Conference on Advanced Mechatronics, Intelligent Manufacture and Industrial Automation, Surabaya, Indonesya, 8–9 December 2021; pp. 157–161. [Google Scholar]
  34. Sheng, B.; Meng, W.; Deng, C.; Xie, S. Model based kinematic & dynamic simulation of 6-DOF upper-limb rehabilitation robot. In Proceedings of the 2016 Asia-Pacific Conference on Intelligent Robot Systems, Tokyo, Japan, 20–22 July 2016; pp. 21–25. [Google Scholar]
  35. Good, M.C.; Sweet, L.M.; Strobel, K.L. Dynamic models for control system design of integrated robot and drive systems. J. Dyn. Syst. Meas. Control. Trans. ASME 1985, 107, 53–59. [Google Scholar] [CrossRef]
  36. Abedinifar, M.; Ertugrul, S.; Arguz, S.H. Nonlinear model identification and statistical verification using experimental data with a case study of the UR5 manipulator joint parameters. Robotica 2022, 41, 1348–1370. [Google Scholar] [CrossRef]
  37. Tarn, T.-J.; Bejczy, A.K.; Yun, X.; Li, Z. Effect of Motor Dynamics on Nonlinear Feedback Rotor Arm Control. In Proceedings of the IEEE Transactions on Robotics and Automation, Sacramento, CA, USA, 7–12 April 1991; Volume 7, pp. 1–9. [Google Scholar]
  38. Wu, W.; Zhu, S.; Wang, X.; Liu, H. Closed-loop dynamic parameter identification of robot manipulators using modified fourier series. Int. J. Adv. Robot. Syst. 2012, 9, 45818. [Google Scholar] [CrossRef]
  39. Qin, Z.; Baron, L.; Birglen, L. A new approach to the dynamic parameter identification of robotic manipulators. Robotica 2010, 28, 539–547. [Google Scholar] [CrossRef]
  40. Raviola, A.; Guida, R.; De Martin, A.; Pastorelli, S.; Mauro, S.; Sorli, M. Effects of temperature and mounting configuration on the dynamic parameters identification of industrial robots. Robotics 2021, 10, 83. [Google Scholar] [CrossRef]
  41. Wang, S.; Deng, X.; Feng, H.; Ren, K.; Li, F.; Liu, Y. Dynamic simulation analysis and experimental study of an industrial robot with novel joint reducers. Multibody Syst. Dyn. 2023, 57, 107–131. [Google Scholar] [CrossRef]
  42. Zhang, D.; Li, X.; Yang, M.; Wang, F.; Han, X. Non-random vibration analysis of rotate vector reducer. J. Sound Vib. 2023, 542, 117380. [Google Scholar] [CrossRef]
  43. Xu, L.X.; Chen, B.K.; Li, C.Y. Dynamic modelling and contact analysis of bearing-cycloid-pinwheel transmission mechanisms used in joint rotate vector reducers. Mech. Mach. Theory 2019, 137, 432–458. [Google Scholar] [CrossRef]
  44. Kircanski, N.M.; Goldenberg, A.A. An Experimental Study of Nonlinear Stiffness, Hysteresis, and Friction Effects in Robot Joints with Harmonic Drives and Torque Sensors. Int. J. Rob. Res. 1993, 16, 214–239. [Google Scholar] [CrossRef]
  45. Zhao, J.; Yan, S.; Wu, J. Analysis of parameter sensitivity of space manipulator with harmonic drive based on the revised response surface method. Acta Astronaut. 2014, 98, 86–96. [Google Scholar] [CrossRef]
  46. Ueura, K.; Kiyosawa, Y.; Kurogi, J.N.I.; Kanai, S.; Miyaba, H.; Maniwa, K.; Suzuki, M.; Obara, S. Development of strain wave gearing for space applications. In Proceedings of the 12th European Space Mechanisms & Tribology Symposium (ESMATS), Liverpool, UK, 19–21 September 2007; Volume 2007. [Google Scholar]
  47. Tuttle, T.D.; Seering, W.P. A nonlinear model of a harmonic drive gear transmission. IEEE Trans. Robot. Autom. 1996, 12, 368–374. [Google Scholar] [CrossRef]
  48. Zou, C.; Tao, T.; Jiang, G.; Mei, X.; Wu, J. A harmonic drive model considering geometry and internal interaction. Proc. Inst. Mech. Eng. Part C J. Mech. Eng. Sci. 2017, 231, 728–743. [Google Scholar] [CrossRef]
  49. Akoto, C.L.; Spangenberg, H. Modeling of backlash in drivetrains. In Proceedings of the 4th CEAS Air & Space Conference, Linköping, Sweden, 16–19 September 2013. [Google Scholar]
  50. Universal Robots-Max. Joint Torques. Available online: (accessed on 22 November 2022).
  51. Zhang, X.; Tao, T.; Jiang, G.; Mei, X.; Zou, C. A Refined Dynamic Model of Harmonic Drive and Its Dynamic Response Analysis. Shock Vib. 2020, 2020, 1841724. [Google Scholar] [CrossRef]
  52. Raviola, A.; De Martin, A.; Guida, R.; Pastorelli, S.; Mauro, S.; Sorli, M. Identification of a UR5 Collaborative Robot Ddynamic Parameters. In Proceedings of the International Conference on Robotics in Alpe-Adria Danube Region, Klagenfurt am Wörthersee, Austria, 17 March 2021; Volume 102, pp. 69–77. [Google Scholar]
  53. Guida, R.; Raviola, A.; Migliore, D.F.; De Martin, A.; Mauro, S.; Sorli, M. Simulation of the Effects of Backlash on the Performance of a Collaborative Robot: A Preliminary Case Study. In Proceedings of the International Conference on Robotics in Alpe-Adria Danube Region, Klagenfurt am Wörthersee, Austria, 8–10 June 2022; Volume 120, pp. 28–35. [Google Scholar]
  54. de Wit, C.C.; Lischinsky, P.; Åström, K.J.; Olsson, H. A New Model for Control of Systems with Friction. IEEE Trans. Automat. Contr. 1995, 40, 419–425. [Google Scholar] [CrossRef]
  55. Simoni, L.; Beschi, M.; Legnani, G.; Visioli, A. Friction modeling with temperature effects for industrial robot manipulators. In Proceedings of the IEEE International Conference on Intelligent Robots and Systems, Hamburg, Germany, 28 September–2 October 2015; Volume 2015, pp. 3524–3529. [Google Scholar]
  56. Truc, L.N.; Lam, N.T. Quasi-physical modeling of robot IRB 120 using Simscape Multibody for dynamic and control simulation. Turkish J. Electr. Eng. Comput. Sci. 2020, 28, 1949–1964. [Google Scholar] [CrossRef]
  57. Soe-Knudsen, R.; Østergaard, E.H.; Petersen, H.G. Calibration and Programming of Robots. U.S. Patent No 9,248,573, 2 February 2016. [Google Scholar]
  58. Universal Robots—DH Parameters for Calculations of Kinematics and Dynamics. Available online: (accessed on 27 October 2022).
  59. Hayati, S.; Tso, K.; Roston, G. Robot geometry calibration. In Proceedings of the IEEE International Conference on Robotics and Automation, Philadelphia, PA, USA, 24–29 April 1988; pp. 947–951. [Google Scholar]
  60. Kufieta, K. Force Estimation in Robotic Manipulators: Modeling, Simulation and Experiments. Master’s Thesis, Norwegian University of Science and Technology, Trondheim, Norway, 2014. [Google Scholar]
  61. Neubauer, M.; Gattringer, H.; Bremer, H. A persistent method for parameter identification of a seven-axes manipulator. Robotica 2015, 33, 1099–1112. [Google Scholar] [CrossRef]
  62. Swevers, J.; Ganseman, C.; Bilgin Tükel, D.; De Schutter, J.; Van Brüssel, H. Optimal robot excitation and identification. IEEE Trans. Robot. Autom. 1997, 13, 730–740. [Google Scholar] [CrossRef]
  63. International Federation of Robotics. Presentation World Robotics 2021; International Federation of Robotics: Frankfurt, Germany, 2021. [Google Scholar]
  64. Remote Control via TCP/IP-16496. Available online: (accessed on 22 November 2022).
  65. Universal Robots the URScript Programming Language; Universal Robots: Odense, Denmark, 2019.
  66. Raviola, A.; De Martin, A.; Sorli, M.; Raviola, A.; De Martin, A.; Sorli, M. A Preliminary Experimental Study on the Effects of Wear on on the Torsional Stiffness of Strain Wave Gears. Actuators 2022, 11, 305. [Google Scholar] [CrossRef]
  67. Zhang, H.; Ahmad, S.; Liu, G.; Member, S. Modeling of Torsional Compliance and Hysteresis Behaviors in Harmonic Drives. IEEE/ASME Trans. Mechatron. 2014, 20, 178–185. [Google Scholar] [CrossRef]
  68. Madsen, E.; Rosenlund, O.S.; Brandt, D.; Zhang, X. Model-Based On-line Estimation of Time-Varying Nonlinear Joint Stiffness on an e-Series Universal Robots Manipulator. In Proceedings of the IEEE International Conference on Robotics and Automation, Montreal, QC, Canada, 20–24 May 2019; Volume 2019, pp. 8408–8414. [Google Scholar]
  69. Thomsen, D.K.; Søe-Knudsen, R.; Balling, O.; Zhang, X. Vibration control of industrial robot arms by multi-mode time-varying input shaping. Mech. Mach. Theory 2021, 155, 104072. [Google Scholar] [CrossRef]
  70. Thomsen, D.K.; Søe-Knudsen, R.; Brandt, D.; Zhang, X. Experimental implementation of time-varying input shaping on UR robots. In Proceedings of the ICINCO 2019-16th International Conference of Informatics Control, Automation and Robotics, Prague, Czech Republic, 29–31 July 2019; Volume 1, pp. 488–498. [Google Scholar] [CrossRef]
  71. Corke, P. Robotics, Vision and Control; Springer Tracts in Advanced Robotics; Springer International Publishing: Cham, Switzerland, 2017; Volume 118, ISBN 978-3-319-54412-0. [Google Scholar]
Figure 1. UR5 robot structure and joints.
Figure 1. UR5 robot structure and joints.
Robotics 12 00071 g001
Figure 2. Overview of the UR5 model.
Figure 2. Overview of the UR5 model.
Robotics 12 00071 g002
Figure 3. (a) Schematic representation of the strain wave gear mounted; (b) equivalent translational model of the gearbox.
Figure 3. (a) Schematic representation of the strain wave gear mounted; (b) equivalent translational model of the gearbox.
Robotics 12 00071 g003
Figure 4. Schematic representation of the UR5 collaborative robot.
Figure 4. Schematic representation of the UR5 collaborative robot.
Robotics 12 00071 g004
Figure 5. Scheme of the Simscape multibody model of the UR5.
Figure 5. Scheme of the Simscape multibody model of the UR5.
Robotics 12 00071 g005
Figure 6. (a) Joints’ angular positions of the excitation trajectory; (b) joints’ angular positions of the pick and place trajectory.
Figure 6. (a) Joints’ angular positions of the excitation trajectory; (b) joints’ angular positions of the pick and place trajectory.
Robotics 12 00071 g006
Figure 7. Comparison between the joints’ angular positions measured from the UR5 and estimated through the proposed model ( q F B ) compared with the target/set ( q s e t ) values for the excitation trajectory.
Figure 7. Comparison between the joints’ angular positions measured from the UR5 and estimated through the proposed model ( q F B ) compared with the target/set ( q s e t ) values for the excitation trajectory.
Robotics 12 00071 g007
Figure 8. Mismatch between the target/set ( q s e t ) and the feedback/measured joints’ angular positions ( q F B ) of the UR5 and the proposed model for the excitation trajectory for the excitation trajectory.
Figure 8. Mismatch between the target/set ( q s e t ) and the feedback/measured joints’ angular positions ( q F B ) of the UR5 and the proposed model for the excitation trajectory for the excitation trajectory.
Robotics 12 00071 g008
Figure 9. Comparison between the joints’ torques derived from the UR5 motor currents, that estimated through the proposed model ( i F B ) for the excitation trajectory and that calculated by exploiting the Corke model.
Figure 9. Comparison between the joints’ torques derived from the UR5 motor currents, that estimated through the proposed model ( i F B ) for the excitation trajectory and that calculated by exploiting the Corke model.
Robotics 12 00071 g009
Figure 10. Comparison between the joints’ angular positions measured from the UR5 and estimated through the proposed model ( q F B ) compared with the target/set ( q s e t ) values for the pick-and-place trajectory.
Figure 10. Comparison between the joints’ angular positions measured from the UR5 and estimated through the proposed model ( q F B ) compared with the target/set ( q s e t ) values for the pick-and-place trajectory.
Robotics 12 00071 g010
Figure 11. Mismatch between the target/set ( q s e t ) and the feedback/measured joints’ angular positions ( q F B ) of the UR5 and the proposed model for the excitation trajectory for the pick-and-place trajectory.
Figure 11. Mismatch between the target/set ( q s e t ) and the feedback/measured joints’ angular positions ( q F B ) of the UR5 and the proposed model for the excitation trajectory for the pick-and-place trajectory.
Robotics 12 00071 g011
Figure 12. Comparison between the joints torques derived from the UR5 motor currents, the one estimated through the proposed model ( i F B ) for the pick-and-place trajectory and the one calculated by exploiting the Corke model.
Figure 12. Comparison between the joints torques derived from the UR5 motor currents, the one estimated through the proposed model ( i F B ) for the pick-and-place trajectory and the one calculated by exploiting the Corke model.
Robotics 12 00071 g012
Table 1. Control logic parameters of the UR5 model.
Table 1. Control logic parameters of the UR5 model.
P [s−1]P [As/rad]I [A/rad]P [V/A]I [V/As]
Wrist 129000.80.23010,000
Wrist 2300010.23010,000
Wrist 3325010.23010,000
Table 2. UR5 motor parameters.
Table 2. UR5 motor parameters.
Joint J M   [ kgm 2 ] R   [ Ω ] L   [ H ] k t   [ Nm / A ]
Base, shoulder, elbow1.877 × 10−40.300.83 × 10−3[0.1350, 0.1361, 0.1355]
Wrist 1, Wrist 2, Wrist 32.076 × 10−51.652.50 × 10−3[0.0957, 0.0865, 0.0893]
Table 3. Strain wave gear parameters.
Table 3. Strain wave gear parameters.
ParameterUnitsSize ASize B
r g mm30.6516.90
α t deg3030
K W G Nm/rad1.92 × 1051.77 × 104
K b N/m1.9 × 1081.2 × 108
K F S Nm/rad3.99 × 1057.26 × 104
K m N/m5.70 × 1083.20 × 108
K C S Nm/rad1.98 × 1076.23 × 106
J W G kgm22.60 × 10−52.21 × 10−6
J F S kgm22.65 × 10−43.75 × 10−5
J C S kgm22.43 × 10−41.85 × 10−5
Table 4. Kinematic parameters of the UR5 after calibration.
Table 4. Kinematic parameters of the UR5 after calibration.
Link a [mm] α [°] β [°] d [mm] θ [°]
Link 10.11089.905089.0840.003
Link 2−425.1560.0040.0130−0.019
Link 3−392.066−0.2320.0710−0.013
Link 40.02589.9660110.212−0.008
Link 5−0.069−90.013094.8790.009
Link 600082.494−0.006
Table 5. Dynamic parameters of the UR5 [58,60].
Table 5. Dynamic parameters of the UR5 [58,60].
LinkMass [kg]Center of Mass [x, y, z] [m]Inertia Tensor
[Ixx, Iyy, Izz, Ixy = Iyx, Ixz = Izx, Iyz = Izzy] [kgm2]
Link 13.7[0, −0.02561, 0.00193][67, 64, 67, 0, 0, 0]
Link 28.393[0.2125, 0, 0.11336][149, 3564, 3553, 0, 0, 0] × 10−4
Link 32.33[0.15, 0, 0.0265][25, 551, 546, 0, 34, 0] × 10−4
Link 41.219[0, −0.0018, 0.01634][12, 12, 9, 0, 0, 0] × 10−4
Link 51.219[0, 0.0018, 0.01634][12, 12, 9, 0, 0, 0] × 10−4
Link 60.1879[0, 0, −0.001159][1, 1, 1, 0, 0, 0] × 10−4
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content.

Share and Cite

MDPI and ACS Style

Raviola, A.; Guida, R.; Bertolino, A.C.; De Martin, A.; Mauro, S.; Sorli, M. A Comprehensive Multibody Model of a Collaborative Robot to Support Model-Based Health Management. Robotics 2023, 12, 71.

AMA Style

Raviola A, Guida R, Bertolino AC, De Martin A, Mauro S, Sorli M. A Comprehensive Multibody Model of a Collaborative Robot to Support Model-Based Health Management. Robotics. 2023; 12(3):71.

Chicago/Turabian Style

Raviola, Andrea, Roberto Guida, Antonio Carlo Bertolino, Andrea De Martin, Stefano Mauro, and Massimo Sorli. 2023. "A Comprehensive Multibody Model of a Collaborative Robot to Support Model-Based Health Management" Robotics 12, no. 3: 71.

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