1. Introduction
As industrial robot manipulators evolve toward faster operating speed and more complex applications, the dynamic parameters of manipulators are necessary to design model-based control strategies, for instance, model-based trajectory control and force control [Reference Wang, Jiang, Chen and Wu1, Reference Zeng, Xiao and Liu2]. However, the dynamic parameters are usually not provided from the manufacturer. Although they can be obtained based on computer-aided design (CAD) model, manufacturing and assemble errors cannot be avoided [Reference Wu, Wang and You3]. As a result, dynamic parameter identification methods are critical.
The rigid body dynamic model has been widely used in describing the dynamics of the manipulators, and lots of parameter identification methods have been proposed based on the model. Since the Inverse Dynamic Identification Model (IDIM) is linear with respect to dynamics parameters, Least squares (LS) scheme can be utilised [Reference Siciliano and Khatib4]. To improve the robustness of the IDIM-LS methods, different excitation trajectories have been proposed, such as trigonometric methods and polynomial methods [Reference Park5]. In this framework, Gautier proposed the Direct Inverse Dynamic Identification Model (DIDIM) method without calculating the velocity and acceleration through a band pass filter [Reference Gautier, Vandanjon and Janot6]. Brunot employed instrumental variable approach to solve the identification equation, in order to reduce the bias caused by noises [Reference Brunot, Janot, Young and Carrillo7]. Similarly, Jia used joint torque sensors and maximum likelihood estimation approach to obtain robot’s dynamic parameters [Reference Jia, Zhang, Zang, Zhang and Zhao8].
The basic idea of rigid-body dynamic model is that the motor-side motion is equal to link-side motion. However, due to the joint flexibility caused by reducers and other transmission components, the rigid-body model is insufficient in modern applications. To achieve better identification results, the flexible-joint dynamic models of robots can be adopted. By using Lagrangian formulation and taking joint flexibility into consideration, Zollo expressed the torque as the product of a regressor matrix and dynamic parameter vector, and then employed LS method to obtain dynamic parameters [Reference Zollo, Lopez, Spedaliere, Garcia Aracil and Guglielmelli9]. This method is developed from IDIM-LS used in rigid robots and thus has the similar accuracy. Miranda-Colorado built the filtered model and used the LS and forgetting factors to identify the parameters [Reference Miranda-Colorado and Moreno-Valenzuela10]. Gautier also extended the DIDIM method to the identification of flexible system [Reference Gautier, Janot, Jubien and Vandanjon11]. Based on automatic control theory, Fagiolini employed input observers and controllers to identify joint stiffness [Reference Fagiolini, Trumić and Jovanović12]. However, these methods are practicable only when the link-side motion data are available. For general industrial robots, only motor-side encoders are available [Reference Ni, Zhang, Hu, Wang, Chen and Chen13]. Thus, these methods have deficiencies for industrial applications. In this regard, Gautier proposed a CLIE (Closed Loop Input Error) method for identification dynamic parameters with only input torque and motor-side position [Reference Jubien, Gautier and Janot14]. However, this method has been verified only in 1-DOF (degree-of-freedom) robots. When being applied to multi-DOF robots, this method is sensitive to initial values used in the optimization computing process and can easily lead to divergence of estimation results. In addition, the linearization process is difficult to establish, the design methods of excitation trajectory have not been exhibited, and local optimum is hard to manage. These two major problems make it unsuitable to multi-DOF robots. Ni divided the dynamic parameters as motion-dependent and motion-independent parameters [Reference Ni, Zhang, Hu, Wang, Chen and Chen13]. Then based on different identification methods, the parameters can be identified separately. However, the method needs to obtain joint stiffness by static force/torque-deformation experiments, which need complicated and expensive equipment. To sum up, novel identification methods using input torque and motor-side movement data will bepreferable.
In this report, a novel dynamic parameter identification method is proposed. Compared with Jubien and Gautier’s method, [Reference Jubien, Gautier and Janot14] the proposed method avoids the two major problems and is able to identify multi-DOF flexible-joint robots, as shown in the simulation and experimental section. According to the data available, this report first introduces a novel parameter identification method for multi-DOF flexible-joint robots using input torque and motor-side motion data. First, link-side dynamics are modified as a nonlinear equation of input torque, motor-side movement and dynamic parameters, which can help eliminate link-side movement information. Then, to obtain the high-order state of the dynamics, extended-state observers (ESOs) are employed [Reference Jin and Gans15, Reference Talole, Kolhe and Phadke16]. After that, simulation results of different exciting trajectory-payload groups are added to exhibit the influence patterns. As shown in the simulation results, a proper exciting trajectory-payload group can help improve identification accuracy and convergence speed. Finally, experiments are carried out on a 2 DOF flexible-joint robot to verify the method. Different observer gains are tested to exhibit the selection method. By comparing with IDM-based identification methods and LS scheme, the effectiveness of the proposed method is shown.
The remainder of this report is organized as follows. In the second section, the flexible-joint model and its modification are shown. Third section describes the solving method of the equation and exhibits the influence of excitation trajectory-payload groups by using simulation examples. In the fourth section, experiments are carried out to verify the proposed method. And, the conclusion is given in the fifth section.
2. High-order identification model of flexible-joint robots
Ingeneral, an n-DOF flexible-joint robot can be modeled as
where ${{\boldsymbol{q}}},{\dot{{\boldsymbol{q}}}},{\ddot{{\boldsymbol{q}}}},{\boldsymbol{\theta }},{\dot{\boldsymbol\theta }},{\ddot{\boldsymbol\theta }} \in { {\Re} ^{n \times 1}}$ represent the link-side and motor-side position, velocity, and acceleration, respectively. ${{\boldsymbol{M}}}( {{\boldsymbol{q}}} ),{{\boldsymbol{C}}}( {{{\boldsymbol{q}}},{\dot{{\boldsymbol{q}}}}} ) \in { {\Re} ^{n \times n}}$ are the link-side inertia matrix and Coriolis matrix, respectively. ${{\boldsymbol{G}}}( {{\boldsymbol{q}}} ) \in { {\Re} ^{n \times 1}}$ denotes the gravity vector. ${{{\boldsymbol{f}}}_{\!{{\boldsymbol{1,m}}}}} \in { {\Re} ^{n \times 1}}$ are the link-side and motor-side friction vector, respectively. ${{\boldsymbol{K}}} \in { {\Re} ^{n \times n}}$ is the diagonal-joint stiffness matrix. ${{\boldsymbol{I}}} \in { {\Re} ^{n \times n}}$ denotes the diagonal motor-side inertia matrix. ${\boldsymbol{\tau }} \in { {\Re} ^{n \times 1}}$ represents input torque of the motor.
Link-side friction is often influenced by the temperature, lubrication condition, and loads, and thus is difficult to be modeled. As a result, linearized models are often selected during identification process. Compared with link-side friction, motor-side friction is more likely to remain unchanged, and thus can be modeled as viscous friction. The friction model is shown as follows:
where index i denotes the ith joint. ${f_{c,v}}$ denotes the static friction and viscous friction, respectively. ${f_0}$ is the offset of static friction.
Since the link-side dynamics can be modified as linear functions of dynamic parameters, the following function can be obtained
where matrix ${{\boldsymbol{Y}}} \in { {\Re} ^{n \times 10n}}$ is the nonlinear function, $\Gamma \in { {\Re} ^{10n \times 1}}$ denotes the dynamic parameters. By using (1), (2) and (3), inverse dynamic model of flexible-joint robots can be obtained. However, link-side motion data are inevitable, which is unavailable to general industrial robots. To solve the problem, the following equation can be obtained through motor-side dynamic model:
Then the velocity and acceleration of links can be obtained as follows:
Substituting (4) and (5) in link-side dynamic model in (1) and using (3), the following equation can be obtained
In (6), the dynamic parameters to be identified are expressed as a nonlinear function of input torque and motor-side motion. By using the input torque and motor-side motion data, nonlinear identification equations can be obtained. In the equation, dynamic parameters to be identified are constant and cannot be linearized. To obtain the parameters, nonlinear optimization algorithms are necessary.
However, there are two difficulties in solving the equation. First, high-order information is easily influenced by noises and disturbances. Second, it is time consuming to accomplish optimal computation of such a large-scale nonlinear equation. In the following two sections, the solutions arediscussed.
3. High-order state observer and configuration of trajectory-load groups
3.1. High-order state observer
Based on (6), the dynamic model of flexible-joint robots can be written in a state-space form as
where ${{\boldsymbol{x}}_{\textbf{1}}} = {\boldsymbol{\theta }}$ denotes the state variables, ${\;{\boldsymbol{f}}_{\!1,2}}$ are nonlinear functions which can be inferred by (6). By making ${\;{\boldsymbol{f}}_{\!1,2}}$ as unknown disturbances, can be (7) modified as
where ${\boldsymbol{h}}$ is the change rate of the uncertainties. It should be noticed that friction is discontinuity when the velocity is zero, which may lead to distortion in low-speed state estimation process. To solve the problem, identification data should be selected when the velocity is relatively high. Then, a 6-order extended-state observer can be established as follows:
where ${{\boldsymbol{e}}_1} =\,{{\boldsymbol{x}}_1} - {\hat{{\boldsymbol{x}}}_1}$ , ${\hat{{\boldsymbol{x}}}_{1,2,3,4,5,6}}$ denote the state value of the observer. ${{\boldsymbol{\beta }}_{1, 2, 3, 4, 5, 6}}$ is the diagonal matrix of the observer gains, while ${\boldsymbol{g}}({{\boldsymbol{e}}_1})$ denotes the set of suitably constructed nonlinear gain functions satisfying ${{\boldsymbol{e}}_{{1}}}^{\!\!{\boldsymbol{T}}}{\boldsymbol{g}}\!\left({{{\boldsymbol{e}}_{{1}}}} \right) \gt 0, \forall {{\boldsymbol{e}}_1} \ne 0$ . In this report, we choose ${\boldsymbol{g}}\!\left({{{\boldsymbol{e}}_1}} \right)\;=\;{{\boldsymbol{e}}_1}$ , and the observer is then transformed as a linear extend-state observer [Reference Talole, Kolhe and Phadke16]. Compared with 5-order ESO, the 6-order ESO is able to estimate ${{{\boldsymbol{x}}}_4}$ with higher accuracy. By properly selected observer gains, the estimated states can be estimated with bounded errors.
3.2. Configuration of trajectory-load groups and simulation results
Traditional IDIM-based methods often select optimized trajectory to improve the robustness of identification process [Reference Wu, Wang and You3]. However, this method cannot be applied to obtain optimal solutions of nonlinear function. On the other hand, optimization calculation process is time consuming. Consider joint deformation is a function of joint force, different load-trajectory groups can be applied to speed up the convergence of optimization process. To find out the influence pattern of different exciting groups, six group modes are configured, as shown in Table I.
A 2 DOF flexible-joint robot is selected in this part, as shown in Fig. 1. The modified-DH parameters of the robot are shown Table II. To exhibit the robustness of the proposed method, noises with amplitude being $2 \times {10^{ - 5}}rad$ are added to motor-side position sampling results. Besides, noises with amplitude being $2 \times {10^{ - 3}}Nm$ are added to motor-side torque results.
Select exciting trajectories as sinusoidal functions ${\theta _d} = {k_1} - {k_1}\!\sin\!\left({{k_2}t} \right)$ . For trajectories 1-3, the parameters are configured as ${k_1} = \left[ {1,0.7,0.85} \right]rad$ and ${k_2} = \left[ {0.5\pi ,0.3\pi ,0.4\pi } \right]{s^{ - 1}}$ . Payload 1 is configured as zero, while variation of $\left[ {{I_{zz1}},m{r_{x1}},m{r_{y1}},{I_{zz2}},m{r_{x2}},m{r_{x1}}} \right]$ of payloads 2 and 3 are configured as $\left[ {2kg \cdot {m^2},2kg \cdot m,0kg \cdot m,1kg \cdot {m^2},1kg \cdot m,0kg \cdot m} \right]$ and $\left[ {4kg \cdot {m^2},2kg \cdot m,0kg \cdot m,2kg \cdot {m^2},2kg \cdot m,0kg \cdot m} \right]$ , where $I$ and $mr$ denote product of inertia and centroid, respectively. During the simulation process, payloads 1, 2, and 3 are known parameters.
The simulation is carried out on Matlab 2018a, and the optimization algorithm is selected as interior-point method. The maximum number of iterations are configured as 60. The initial value is obtained by using IDM-LS method and then configuring them half-and-half in link-side and motor-side inertia. To utilize nonlinear optimization algorithm, the initial values of joint 1 are selected as $\left[ {{I_{zz1}},m{r_{x1}},m{r_{y1}},{f_{l1}},{B_1},{f_{m1}}} \right]\;=\;\left[ 2.56kg \cdot {m^2},1.00kg \cdot m,0.01kg \cdot m,0.9Nm \cdot s/rad,2.56kg \cdot {m^2},0.9Nm \cdot s/rad \right],$ while the initial values of $\left[ {{I_{zz2}},m{r_{x2}},m{r_{y2}},{f_{l2}},{B_2},{f_{m2}}} \right]$ of joint 2 as are selected as $\left[ 1.49kg \cdot {m^2},\, 0.37kg \cdot m,\, 0.07kg \cdot m, 2.05Nm \cdot s/rad,1.49kg \cdot {m^2},0.01Nm \cdot s/rad \right],$ respectively. It should be noted that these parameters are estimated roughly using IDIM methods and used as an initial value for the iteration process in the nonlinear optimization algorithm. Based on the initial values and Eq. (6), the nonlinear optimization algorithm can then be applied to identify these parameters. Joint stiffness of the two joints is selected as a rough value $\left[ {900,1000} \right]Nm/rad$ . The observer gains are configured as ${\beta _i} = C_6^i{\left( w \right)^i},i = 1,2 \ldots 6,$ where $w = 20$ . CPU of the workstation is AMD Ryzen 3700X. Simulation results are shown in Table III. Cycling time and sampling period are selected as 0.25 and 25 ms, respectively. Simulation time is configured as 10 s.
As shown in table, groups (A-C) realize fast convergence while groups (D-F) failed. The reason is that groups (D-F) have fewer payload modes, which lead to less controllable and changeable influence imposed on flexible joint and input torque. Compared with group (A), the third trajectory-payload combination of group (B) has the ability to calibrate estimation results, which avoid local optimality. Compared with group (C), the first two trajectory-payload combination in group (B) is able to reflect joint flexibility on the input torque, and thus lead to faster convergence and less errors. As a result, estimation errors of group (B) are relatively low and smaller than 2% or 0.01. On the other hand, it should be noticed that estimation errors of link-side and motor-side viscous friction are higher compared with other dynamic parameters, while the sum of estimated link-side and motor-side friction has small errors with the sum of actual friction model. This result is similar to the DIDIM-CLE method proposed by Jubien [Reference Jubien, Gautier and Janot14]. The reason lies in the fact that link-side velocity and motor-side velocity have little difference when the joint stiffness is high, and thus the two coefficients can be coupled in the optimizing process.
4. Experimental validation
A 2-DOF robot equipped with link-side encoders and joint torque sensors are selected to verify the proposed method. The DH parameters are exhibited in Table IV. Based on TwinCAT (The Windows Control and Automation Technology) motion control system, the experimental platform is established as shown in Fig. 2. The joint structure diagram of the experimental robot is shown in Fig. 3. Intel 9700 K is configured as the CPU of the control platform. The motor controlled using a proportional-derivative controller with Kp and Kd selected as 10,000 and 500, respectively. To make sure the input torque is 3-order derivable, another 6-order ESO is configured before importing to the motor driver. The observer gains are selected as ${\beta _i} = C_6^i{\left( w \right)^i}$ , where $w = 50$ . Since the measured torque from the driver has much noise and current loop has relatively high bandwidth, desired input torque is selected in the identification process. Similar with the simulation part, a 6-order ESO is configured to obtain high-order motion data. Sampling time and period time are selected as 20 s and 25 ms. The initial link-side parameters are selected by using IDM-LS method used in rigid robots. Initial motor-side inertia and friction parameters are configured as $\left[ {2, 2} \right]kg/{m^2}$ and $\left[ {0, 0} \right]Nm \cdot s/rad$ , respectively. Joint stiffness is selected as [10,000, 10,000] Nm/rad, the similar with joint-torque sensors. Similar with simulation process, payload 1 is configured as zero, while payloads 2 and 3 are exhibited in Table V. In order to verify the proposed method, IDIM-based flexible-joint robot identification method proposed by Zollo [Reference Zollo, Lopez, Spedaliere, Garcia Aracil and Guglielmelli9] is selected as a comparison.
Compared with simulation process, the dynamics of actual robot manipulator systems are more complicated. In general, low-pass filters are often selected to eliminate high frequency influences, such as position-dependent frictions. However, details can be wiped off, and high-order information can be lost. To solve the problem, observer gains are selected to minimize residual errors between actual torque and computed toque based on the identified parameters. The residual errors can be obtained by $\sum {{{\left( {{\tau _{actual}} - {\tau _{iden}}} \right)}^2}} $ . As shown in Fig. 4, when the observer gains are selected as ${\beta _i} = C_6^i{\left( w \right)^i}$ and $w = 370$ , the residual errors are the smallest. The obtained high-order states of joint 1 using ESOs are shown in Fig. 5. Different with low-pass-filter-based states estimating technique, the selected observer-based method is able to retain more vibration details.
The results of the experiment are shown in Table VI. As shown in table, the estimation difference between the proposed method and IDIM-based flexible-joint robot identification method [Reference Zollo, Lopez, Spedaliere, Garcia Aracil and Guglielmelli9] is less than 9%, except friction coefficients correlated with link-side and motor-side speed. This result is acceptable in controller designing process and estimation of dynamic characteristics of flexible-joint robots, since less than 9% errors of frequency estimation results are introduced. Compared with IDM-based methods, which can achieve 3% or less errors, the result is little bigger. However, it should be noticed that the proposed method is suitable to general industrial robots without link-side sensors and needs less equipment. Compared with DIDIM-CLIE method given by Gautier, the proposed method has two superiorities. First, the propose method does not need to approximate the Jacobian matrix to estimate states of actual robots. Second, the proposed method does not need the hypothesis that the simulated movement have little dependence on dynamic parameters [Reference Jubien, Gautier and Janot14]. As a result, the method is suitable for wider scope of applications. Similar with the simulation results, the proposed method cannot estimate coefficients of viscous friction, while the estimation errors of total viscous friction coefficients are small. The computed torque obtained by identified parameters and known pay-load groups are shown in Fig. 6. As shown in figure, the proposed method is able to realize small residual errors, which is the similar with Ni’s identification strategy [Reference Ni, Zhang, Hu, Wang, Chen and Chen13].
5. Conclusions
This report has described a novel method to identify dynamic parameters of flexible-joint robots using only motor-side position and input torque. Based on dynamic model of flexible-joint robots, a novel high-order nonlinear identification equation is proposed. By using high-order ESO and trajectory-payload groups, the equation can be solved with fast convergence rate and high accuracy, as shown in the simulation section. Although coefficients of link-side and motor-side viscous friction cannot be estimated precisely, experiment results have shown that estimation difference of other parameters between the proposed method and IDIM-based method is less than 9%. In the future, our research will focus on the identification of 6-freedom flexible-joint robots and improving optimal algorithm to reduce time consuming, since much more parameters need to be identified. Besides, attention will also be paid in optimizing exciting trajectory-payload groups to improve the identification accuracy of link-side and motor-side friction coefficients.
Acknowledgment
This work was supported by Henan University of Technology (China).
Conflicts of interest
The authors declare that they have no known competing financial interests or personal relationships that could have appeared to influence the work reported in this paper.