# Nonlinear Friction and Dynamical Identification for a Robot Manipulator with Improved Cuckoo Search Algorithm

Authors: Li Ding; Xingcheng Li; Qilin Li; Yuan Chao
Journal: Journal of Robotics
 (2018)

---

## Abstract

This paper concerns the problem of dynamical identification for an industrial robot manipulator and presents an identification procedure based on an improved cuckoo search algorithm. Firstly, a dynamical model of a 6-DOF industrial serial robot has been derived. And a nonlinear friction model is added to describe the friction characteristic at motion reversal. Secondly, we use a cuckoo search algorithm to identify the unknown parameters. To enhance the performance of the original algorithm, both chaotic operator and emotion operator are employed to help the algorithm jump out of local optimum. Then, the proposed algorithm has been implemented on the first three joints of the ER-16 robot manipulator through an identification experiment. The results show that (1) the proposed algorithm has higher identification accuracy over the cuckoo search algorithm or particle swarm optimization algorithm and (2) compared to linear friction model the nonlinear model can describe the friction characteristic of joints better.


---

## Body

## 1. Introduction

Modern industry is increasingly oriented towards the production of small batches of a large variety of products, asking for flexibility and automation in the manufacturing systems [1, 2]. Additionally, the increasing quality standards, international competition, and economic reasons put higher requirements on reliability and accuracy and especially on the speed of production processes. In this context, industrial serial robot manipulators have become an indispensable means of automation to increase productivity and flexibility of production units. Robots are programmed by teaching the sequence of the attitude and position which are necessary to execute the desired task. To reach a sufficient accuracy, this teaching is mostly done on-site and relies on a good repeatability, rather than on a good absolute accuracy. To improve the operation accuracy, a precise dynamical model is essential for accurate offline programming.In the academic aspect, a typical manipulator identification procedure consists of dynamic modelling, excitation trajectory design, data collection, signal preprocess, parameter identification, and model validation [3]. When a priori knowledge is available about the robot system, parametric models can be derived based on the laws of physics and mechanics resulting in a set of differential equations. The unknown dynamical parameters have a physical meaning and can be identified by several approaches. Atkeson et al. [4] used the least square method (LS) to implement the load estimation of dynamical parameters on a PUMA600 robot. According to weighted least squares method (WLS), Gautier and Poignet [5] proposed a dynamical identification approach only from the torque data, without other sensors. Grotjahn et al. [6] used the two-step method to execute the friction and rigid body identification of robot dynamics. Considering the effect of measurement noise, Olsen and Petersen [7] used the maximum likelihood estimating (MLE) method for parameters identification of an industrial robot with a statistical framework. Recently, some novel dynamical identification methods for robot manipulators have been reported using intelligence algorithms. For instance, Bingül and Karahan [8] integrated the particle swarm optimization (PSO) algorithm with LS algorithm to estimate the dynamical parameters of Staubli RX-60 robots. In the identification experiment, the velocity and acceleration are measured by three high-speed cameras, and the joint torques are measured by six load cell sensors. Without velocity and acceleration sensors, Ding et al.  [9] used the motor current and joint positions to calculate the torques, velocity, and acceleration of joints and proposed an artificial bee colony algorithm (ABC) to obtain the unknown dynamical parameters. Nevertheless, when handling complicated and high-dimensional parameters identification problems, the flaw that the premature convergence can make those intelligence computation algorithms stuck in a local optimum.As known, the friction is a major source of disturbances affecting motion quality. Therefore, it must be included as an additional component in robot modelling. In robot identification applications, a model including Coulomb and viscous friction is frequently applied [10, 11]. With such linear model, the parameters estimation is significantly simplified. However, this friction model is not capable of describing the experimentally measured friction characteristic, especially the static model at joint reversal. Aiming at these problems, we add a nonlinear friction model into the dynamical model of a 6-DOF industrial serial manipulator and use an improved cuckoo search (ICS) algorithm for dynamical identification. The idea of the method is to measure the positions and gravitational torques of different joints through designing Fourier series as excitation trajectories. The collected values are used to calculate the dynamical parameters based on ICS. In ICS, considering the outstanding performance of chaotic operator and emotion operator, these improved operators are used to enhance the performance of the classical CS. And the comparison of three different identification methods, CS, PSO, and ICS, illustrated the superiority of our proposed algorithm in the application of dynamical identification.This article is organized as follows. The dynamical model with a nonlinear friction model of a robot manipulator is given in Section2. For the unknown dynamical parameters, the improved cuckoo search algorithm is introduced to realize the parameters estimation in Section 3. Then, the design of excitation trajectory, data collection, and preprocessing are presented in Section 4. Later, an ER-16 robot is used as a test platform for identification experiment, and the results are analyzed in Section 5. In addition, the superiority of linear and nonlinear friction model has been compared through the model validation in Section 6. Finally, Section 7 discussed the key findings and prospective research target.


## 2. Dynamic Modelling

According to the literature [12], a n-DOF serial manipulator is described as a kinematic chain of several rigid bodies. Hence, we can utilize the Newton-Euler method to deduce the dynamical model of the manipulator:(1)τ=τf+Mqq¨+Cq,q˙+Gq,where joint torque τ, joint position q, joint velocity q˙, and joint acceleration q¨ are n-dimensional vector. τf denotes the n-dimensional joint friction vector. M(q) represents n×n inertial matrix, C(q,q˙) is a n-dimensional vector including Coriolis and centrifugal forces, and G(q) is n-dimensional gravity vector.Equation (1) except for friction torques can be rewritten as a linear form if using the modified Newton-Euler parameters [13] or the barycentric parameters [11]:(2)τs=Φsq,q˙,q¨θs,where Φs only contains the motion data, which can be treated as n×10n identification matrix or observation matrix. θs is the barycentric parameter vector. This conversion vastly reduces the complexity of parameters identification. In addition, the dynamical parameters of link i are governed by the form(3)θsi=Ixxi,Ixyi,Ixzi,Iyyi,Iyzi,Izzi,mirxi,miryi,mirzi,miT,where Iζζi(ζ=x,y,z) is the inertial tensor of the link i. Similarly, mi is the mass of the link i and mirζi is the inertia moment.Generally, the identification matrixΦs in (2) is not full of rank, that is, not all dynamical parameters give contribution to the joint torques. In the literature [14], some methods like case-by-case analysis or singular value decomposition are adopted to eliminate the redundant parameters. And the barycentric parameter vector θs can be replaced by a vector of minimal barycentric parameters θ∈Rp with p<13n. Hence, (2) can be transformed into another form(4)τ=Φq,q˙,q¨θ,where Φ denotes the n×p observation or identification matrix and p is the number of minimal barycentric parameters.Except for the dynamical parameters in (2), there also exists friction torques and extra torques caused by inertias of motor rotors. In general, the inertias of motor rotors are provided by manufacturers, and corresponding torques can easily be compensated to the dynamical model. As for joint friction model, it is regarded as a complex nonlinear model. To simplify the model, the Coulomb and viscous friction were used to describe the friction model. But the researchers found [15] that the friction torques of some joints exceeded their full speed range, and the simple friction model could not cover the characteristics, especially at motion reversal. A better description of the joint friction characteristics may be based on the following nonlinear equations:(5)τf=f0+fcsign⁡q˙i+fvq˙i+faatan⁡fbq˙i,where f0 is the zero drift error of friction torque, fc is the Coulomb friction coefficient, fv is the viscous friction coefficient, and fa and fb are the experiential friction coefficients. It should be noted that this model has a discontinuity at zero velocity.In summary, using the nonlinear friction model yields the whole dynamical model of the 6-DOF robot as(6)τ=Φq,q˙,q¨θ+τf,where τf denotes the 5n friction torques vector and 5n is the number of friction coefficients. Obviously, the classical least square method could not solve the above nonlinear equation. Hence, applying an intelligence algorithm for solving this problem may be a feasible method.


## 3. Identification Algorithm

### 3.1. Introduction to Chaos Theory

Chaos theory is epitomised by the so-called “buttery” detailed by Lorenz [16]. He discovered that tiny changes in an initial state would make a radically different final result and typically rendering long-term prediction impossible. Chaotic map has ergodic and stochastic properties, which is regarded as a bounded nonlinear system with deterministic dynamical behavior. Moreover, it has a very sensitive dependence on initial conditions. There are many forms about chaotic map, such as tent map, Gauss map, logistic map, and tent map [17]. Considering the high robustness and stability of tent map, we choose it to generate the chaotic sequence. The description of the tent map is written as(7)xn+1=2γxn0≤xn≤0.52γ1-xn0.5<xn≤1,where n is iterations and γ denotes a positive number. The value of xn is updated with the initial condition xn∈(0,1). A tent map for γ=0.65 after 500 iterations is shown in Figure 1. As the value of n increases, xn+1 gets a new value. In this paper, the parameter γ is chosen as 0.6 after many trials.Figure 1
A tent map.


### 3.2. Basic Principles of CS

The Cuckoo search algorithm (CS) is a new metaheuristic algorithm formulated by Professor Yang and Deb in 2009 [18]. It is a swarm intelligence type of algorithm inspired by the behaviors of cuckoos, consisting of locating nests, laying eggs, and the Lévy flight. With a simple structure and a few control parameters, CS has been widely used in practical engineering optimization problems. There are three basic rules in CS. (1) Each cuckoo chooses a random nest to lay an egg once. (2) Only the best nests with a high quality of eggs would be retained to the next generations. (3) A host cuckoo has a probability of Pa∈[0,1] to detect the egg of another cuckoo in its own nest. Through the switching coefficient Pa, CS can subtly combine a global search and a local search.The local search can be described as the following formulation, which gains an insight into CS search mechanisms:(8)xit+1=xit+αs⊗HPa-ε⊗xjt-xkt,where xjt and xkt are two different random solutions, H(·) represents a Heaviside function, the symbol “⊗” represents point-to-point multiplication, ε is a random parameter which satisfied a uniform distribution, s is step size, and α is a scaling coefficient over zero.For the global search, the process is controlled by a Lévy flight behavior. The mathematical formula for this behavior is described as follows:(9)xit+1=xit+αLs,λLs,λ=λΓλsin⁡πλ/2π1s1+λ,where L(s,λ) is a Lévy flight function that complicates integration, λ represents the power coefficient, and Γ(λ)=∫0∞e-ttλ-1dt.The basic steps of CS are presented as follows.Step 1 (parameters initialization).
The initial positions of nests are randomly generated from(10)xij=lbj+rand⁡0,1ubj-lbj,where i∈{1,…,FN}, j∈{1,…,D}, FN is the position size, D is the dimensionality of unknown dynamical parameters, and lbj and ubj are the lower and upper limits in the solution space.Step 2 (objective value calculated).
In this paper, CS searched for the dynamical identification by minimizing the objective function written as follows:(11)Fi=1N∑i=1Nδ1τ1i-τp1i+δ2τ2i-τp2i+δ3τ3i-τp3i,where Fi is the objective function, N is the data length, and τξi(ξ=1,2,3) denotes joint torques measured from the first three joints. Similarly, τpξi(ξ=1,2,3) denotes predicted torques calculated by the identified model. δξ(ξ=1,2,3) is a weight coefficient between 0 and 1.Step 3.
Through (8)-(9), the nest positions can be updated. After generating a group of new nest positions, the superior positions are retained to the next generation by comparing the objective value between the original positions and the postupdate nest positions.Step 4.
A random number of uniform distributionsr∈[0,1] is compared with Pa. If r>Pa, then the located nest is changed randomly. Otherwise, the nest remains unchanged.Step 5.
The termination condition of the CS is determined. If the condition is satisfied, then the optimal solution becomes an output. Otherwise, Step3 is repeated.


### 3.3. Improved Operator

In general, the parameterα in Lévy flight is the key factor to affect the convergence of CS. Due to the infinite variance and mean, the classical CS algorithm may have a premature search process. To overcome this problem, the tent map is used to generate a chaotic sequence for parameter α. In that case, the algorithm searches the new position in the neighborhood of the current optimal position. Meanwhile, a new emotional acceptance criterion is used to prevent the algorithm from getting trapped into local optima.In the ICS, two cuckoos’ emotions (positive and negative) can be described as follows:(12)e=-klnSFxi-FxjS0IFα<eThen positive Else negative,where e represents the function of cuckoo’s emotion, k is a constant, S is the stimulus function, S0 is a stimulus threshold, and F is the objective function. It should be noted that k is selected as 1 and S=ex.


## 3.1. Introduction to Chaos Theory

Chaos theory is epitomised by the so-called “buttery” detailed by Lorenz [16]. He discovered that tiny changes in an initial state would make a radically different final result and typically rendering long-term prediction impossible. Chaotic map has ergodic and stochastic properties, which is regarded as a bounded nonlinear system with deterministic dynamical behavior. Moreover, it has a very sensitive dependence on initial conditions. There are many forms about chaotic map, such as tent map, Gauss map, logistic map, and tent map [17]. Considering the high robustness and stability of tent map, we choose it to generate the chaotic sequence. The description of the tent map is written as(7)xn+1=2γxn0≤xn≤0.52γ1-xn0.5<xn≤1,where n is iterations and γ denotes a positive number. The value of xn is updated with the initial condition xn∈(0,1). A tent map for γ=0.65 after 500 iterations is shown in Figure 1. As the value of n increases, xn+1 gets a new value. In this paper, the parameter γ is chosen as 0.6 after many trials.Figure 1
A tent map.


## 3.2. Basic Principles of CS

The Cuckoo search algorithm (CS) is a new metaheuristic algorithm formulated by Professor Yang and Deb in 2009 [18]. It is a swarm intelligence type of algorithm inspired by the behaviors of cuckoos, consisting of locating nests, laying eggs, and the Lévy flight. With a simple structure and a few control parameters, CS has been widely used in practical engineering optimization problems. There are three basic rules in CS. (1) Each cuckoo chooses a random nest to lay an egg once. (2) Only the best nests with a high quality of eggs would be retained to the next generations. (3) A host cuckoo has a probability of Pa∈[0,1] to detect the egg of another cuckoo in its own nest. Through the switching coefficient Pa, CS can subtly combine a global search and a local search.The local search can be described as the following formulation, which gains an insight into CS search mechanisms:(8)xit+1=xit+αs⊗HPa-ε⊗xjt-xkt,where xjt and xkt are two different random solutions, H(·) represents a Heaviside function, the symbol “⊗” represents point-to-point multiplication, ε is a random parameter which satisfied a uniform distribution, s is step size, and α is a scaling coefficient over zero.For the global search, the process is controlled by a Lévy flight behavior. The mathematical formula for this behavior is described as follows:(9)xit+1=xit+αLs,λLs,λ=λΓλsin⁡πλ/2π1s1+λ,where L(s,λ) is a Lévy flight function that complicates integration, λ represents the power coefficient, and Γ(λ)=∫0∞e-ttλ-1dt.The basic steps of CS are presented as follows.Step 1 (parameters initialization).
The initial positions of nests are randomly generated from(10)xij=lbj+rand⁡0,1ubj-lbj,where i∈{1,…,FN}, j∈{1,…,D}, FN is the position size, D is the dimensionality of unknown dynamical parameters, and lbj and ubj are the lower and upper limits in the solution space.Step 2 (objective value calculated).
In this paper, CS searched for the dynamical identification by minimizing the objective function written as follows:(11)Fi=1N∑i=1Nδ1τ1i-τp1i+δ2τ2i-τp2i+δ3τ3i-τp3i,where Fi is the objective function, N is the data length, and τξi(ξ=1,2,3) denotes joint torques measured from the first three joints. Similarly, τpξi(ξ=1,2,3) denotes predicted torques calculated by the identified model. δξ(ξ=1,2,3) is a weight coefficient between 0 and 1.Step 3.
Through (8)-(9), the nest positions can be updated. After generating a group of new nest positions, the superior positions are retained to the next generation by comparing the objective value between the original positions and the postupdate nest positions.Step 4.
A random number of uniform distributionsr∈[0,1] is compared with Pa. If r>Pa, then the located nest is changed randomly. Otherwise, the nest remains unchanged.Step 5.
The termination condition of the CS is determined. If the condition is satisfied, then the optimal solution becomes an output. Otherwise, Step3 is repeated.


## 3.3. Improved Operator

In general, the parameterα in Lévy flight is the key factor to affect the convergence of CS. Due to the infinite variance and mean, the classical CS algorithm may have a premature search process. To overcome this problem, the tent map is used to generate a chaotic sequence for parameter α. In that case, the algorithm searches the new position in the neighborhood of the current optimal position. Meanwhile, a new emotional acceptance criterion is used to prevent the algorithm from getting trapped into local optima.In the ICS, two cuckoos’ emotions (positive and negative) can be described as follows:(12)e=-klnSFxi-FxjS0IFα<eThen positive Else negative,where e represents the function of cuckoo’s emotion, k is a constant, S is the stimulus function, S0 is a stimulus threshold, and F is the objective function. It should be noted that k is selected as 1 and S=ex.


## 4. Design of Exciting Trajectories and Data Preprocess

It is essential to consider these conditions before designing an identification experiment, that is, (1) whether the excitation trajectory is sufficient to provide fast and accurate parameters estimation and (2) whether the processing of the experimental data is simple and yields stable and accurate results. In fact, the imprecise modelling and measurement noise are assumed to be an additive frequently distributed zero-mean stochastic disturbance, causing bias errors and uncertainty in the dynamical identification. To reduce the effect of the disturbance, an appropriate excitation trajectory must be designed carefully.The choice of parameterization for the excitation trajectory is a very important issue. It directly determines the number of parameters in the optimization problem and the effort needed to calculate velocity and acceleration from the joints positions measurements. The first considerations on finding excitation trajectory for the dynamical identification of manipulator were proposed by Armstrong [19]. Then, Grotjahn and Daemi [20] proposed an interpolated trajectory consisting of two parts, part I overcame the given boundary conditions and part II overcame the homogeneous boundary conditions. Furthermore, Gautier [21] used fifth-order polynomials to obtain smooth joint trajectories to be executed by the manipulator, and the polynomial coefficients are fixed by imposing continuity constraints between the trajectory segments. In this paper, we adopt a finite Fourier series which was proposed by Swevers et al. [22] as excitation trajectories. The trajectory for joint i of a manipulator is designed as(13)qit=qi,0+∑k=1Nai,ksin⁡kωft+∑k=1Nbi,kcos⁡kωft,where qi,0 is the offset term and ωf is the fundamental pulsation of the Fourier series. This Fourier series specifies a periodic function with period Tf=2π/ωf. Each Fourier series contains 2N+1 parameters, and ai,k, bi,k are the amplitudes of the trigonometric functions. It should be noted that although this trajectory is hard to implement on an industrial setup, this parameterization has several advantages. It is possible to calculate the velocity and acceleration in the frequency domain, which avoids phase distortions.The antinoise ability and convergence speed of an identification experiment are related to the constraints of the excitation trajectory. It should be noted that the configurations of measurements must correspond to a good conditional simplified identification matrix, since the corresponding input/output represents some limitations. In literature [23], the constraints of an excitation trajectory are given as(14)min⁡cond⁡Φqmin≤qβ≤qmax,q˙β≤q˙maxq¨β≤q¨maxwqβ⊂Woτmin≤Φqβ,q˙β,q¨βθ≤τmax,where qmin and qmax are the lower and upper of the joint positions, q˙max and q¨max are the upper of velocity and acceleration, β is optimal trajectory parameters, Wo is the available workspace of robot, and τmax is the maximum joint torque.When the robot joints repeatedly track the excitation trajectories with the PID controllers, motor current and joints positions can be sampled in the time domain. The motor current can be transformed into joint torques with a simple torque constant. Since there are measurement noises in experiments, it is necessary to preprocess the collection data before identification. In order to remove outliers and attenuate the effect of interference signal, a five-point triple smoothing method is adopted to smooth the raw data according to the following equation [24]:(15)y-1=17069y1+4y2+y4-6y3-y5y-2=1352y1+y5+27y2+12y3-8y4y-i=135-3yi-2+yi+2+12yi-1+yi+1+17yiy-m-1=1352ym-4+ym-8ym-3+12ym-2+27ym-1y-m=170-ym-4+4ym-3+ym-1-6ym-2+69ym,where i=3,…,m-2, Y=y1,y2,…,ym is the sampled raw data, and Y-=[y-1,…,y-m]T is the data for identification after preprocessing. The more the number of using (15) is, the smoother the curves will be. It should be noted that excessive use (15) to smooth the raw data can lead to the error of the parameters identification enlarging.Due to the shortage of speed sensor and acceleration sensor, the velocity and acceleration of joints cannot be measured directly. The calculation of the joint velocities and acceleration can be performed by analytical differentiation of the measured angles [25]. The velocity and acceleration are given as follows:(16)q˙it=∑k=1Nai,kkωfcos⁡kωft-∑k=1Nbi,kkωfsin⁡kωftq¨it=∑k=1N-ai,kk2ωf2sin⁡kωft-∑k=1Nbi,kk2ωf2cos⁡kωft,For the analytical differentiation, the measured encoder readings are first approximated with the least square method, as a finite sum of trigonometric functions. This approximation corresponds to frequency domain differentiation combined with frequency domain windowing. Firstly, the discrete Fourier transform of the preprocessing encoder readings is calculated and the excited frequency curves are selected by frequency domain windowing. Then, the selected curves are multiplied with the frequency response of a pure single and double differentiator, that is, multiplied withjω and -ω2, with ω being the frequency in radians per second. The obtained frequency spectra are then transformed back into time domain using the inverse discrete Fourier transform, yielding joint velocity and acceleration. The application of a Fourier series gives a trajectory which is continuously differentiable up to any order. And it can avoid the excitation of unknown dynamic effects. It is clear that the finite Fourier series has several advantages over the classical excitation trajectories.


## 5. Parameters Identification

To test the effectiveness and viability of our proposed method, the identification procedure was implemented on the first three joints of the ER-16 6-DOF industrial robot manipulator without payload, as shown in Figure2. It should be noted that the values of the dynamical parameters of the first three joints are much bigger than those of the other three joints. It is reasonable to ignore the effect of the torques caused by the 4~6 joints [26]. The motion constraints of the ER-16 are given in Table 1.Table 1
Motion constraints of robot.
Parameters
Joint
Min
Max
q/(∘)
1
-
180
180
2
-
60
60
3
-
170
80
q
˙/(∘⋅s−1)
1
-
145
145
2
-
105
105
3
-
170
170
q
¨/(∘⋅s−2)
1
-
50
50
2
-
40
40
3
-
65
65
τ/(N⋅m)
1
-
1200
2
-
1000
3
-
600Figure 2
ER-16 6-DOF robot manipulator.We use 5th order Fourier series as the excitation trajectories in the experiment. The fundament pulsation is 0.05 Hz, resulting in a period of 25 s. The data is sampled with 1 Hz. The excitation trajectories with 0.25 Hz bandwidth are shown in Figure3, containing 11 optimal parameters in each joint. These parameters are listed in Appendix A. Figure 4 shows the trajectory of the effect center point of the ER-16 in the workspace.Figure 3
Optimized exciting trajectories in joint space.Figure 4
3D excitation trajectory in work space.Identification procedures discussed above are carried out with ICS algorithm in MATLAB 2016b programming environment on an Intel Core i7-3770 PC running Windows 7.  No commercial tools are used. In order to test the performance of the proposed algorithm, the classical CS algorithm and PSO algorithm [27] are employed as the comparison. The initial parameters of the three algorithms are listed in Table 2. All the algorithms are run three times and the maximal iteration is 200. The best results would be retained. Theoretically, those results are large probability global optimum. Additionally, the search scope of the unknown parameters is also listed in Appendix B.Table 2
The initial parameters of the three algorithms.
Algorithm
Parameters
CS
Population size = 25,Pa=0.4, α=0.25, λ=1.5
ICS
Population size = 25,Pa=0.4, α=0.25, λ=1.5
PSO
Population size = 25, inertia weight = 0.5, acceleration coefficients = 0.2Figure5 shows the evolution curves of the above three algorithms regarding (11). The figure demonstrates that the objective value increases as the generation iterates with time, gradually converging to an optimal result. Compared with CS and PSO, ICS achieves a better result with the higher objective value after 50 iterations. The optimal objective value of ICS is 29.0753, whereas those of CS and PSO are 30.2513 and 31.8865, respectively. Obviously, ICS has found the optimum with the objective value equal to 29.0753 which is a 4.04% or 9.67% increase with respect to the CS or PSO. It can be seen from the result that the chaotic operator can not only avoid the traditional CS being trapped in a local optimum but also improve its robustness and efficiency.Figure 5
Evolutionary curves of ICS.The dynamical model of the first three joints contains 15 barycentric parameters and 15 friction parameters. These parameters identified by our proposed algorithm are listed in Table3.Table 3
Dynamical parameters of ER-16.
Parameter
Value
I
z
z
1 (kg⋅m2)
51.3846
I
x
x
2 (kg⋅m2)
-
24.4871
I
x
y
2 (kg⋅m2)
1.1452
I
x
z
2 (kg⋅m2)
-
0.3699
I
y
z
2 (kg⋅m2)
0.4574
I
z
z
2 (kg⋅m2)
44.5863
m
2
r
x
2 (kg⋅m)
32.1287
m
2
r
y
2 (kg⋅m)
5.4040
I
x
x
3 (kg⋅m2)
3.1263
I
x
y
3 (kg⋅m2)
1.9361
I
x
z
3 (kg⋅m2)
0.4849
I
y
z
3 (kg⋅m2)
0.6900
I
z
z
3 (kg⋅m2)
11.7725
m
3
r
x
3 (kg⋅m)
5.1317
m
3
r
y
3 (kg⋅m)
10.3145
f
01 (N⋅m)
0.7044
f
c
1 (N⋅m)
3.9877
f
v
1 (Nm⋅s/rad)
8.0000
f
a
1 (N⋅m)
32.3929
f
b
1
6.9975
f
02 (N⋅m)
53.2922
f
c
2 (N⋅m)
-
2.8909
f
v
2 (Nm⋅s/rad)
-
70.0174
f
a
2 (N⋅m)
70.0243
f
b
2
19.7363
f
03 (N⋅m)
-
3.4499
f
c
3 (N⋅m)
30.6465
f
v
3 (Nm⋅s/rad)
4.3297
f
a
3 (N⋅m)
-
2.7533
f
b
3
5.0000Figure6 compares the measured torques for the excitation trajectory with the predicted torques based on the identified dynamical parameters. The results show that the identified data by applying the three algorithms have the same trend as the measured data. Nonetheless, it turns out that the predicted torques generated by ICS approximate the actual test torques best.Figure 6
Comparison of the measured torques and predicted torques.
(a)
Joint 1
(b)
Joint 2
(c)
Joint 3To verify the precision of the identified model by the above three algorithms, the correlation coefficient between the measured torquesτi and predicted torques τmi, defined as the normalized cross-covariance function, is used to estimate how well the identified model can reproduce the measured torques, and the function is defined as(17)ρ=∑i=1Nτi-τ-τmi-τ-m∑i=1Nτi-τ-2∑i=1Nτmi-τ-m2,where τ-=(1/N)∑i=1Nτi and τ-m=(1/N)∑i=1Nτ-mi. The closer the correlation coefficient is to unity, the better the identified model is. While the coefficient is close to zero, the identified model is poor. From Table 4, we can clearly see that the correlation coefficient of the identification results produced by ICS is better than those of other algorithms. It indicates that the identified procedure based on ICS has a higher identification precision due to the strong search ability of ICS.Table 4
Comparison of the correlation coefficient.
Joint
PSO
CS
ICS
1
97.22
%
98.03
%
99.07
%
2
99.10
%
99.27
%
99.50
%
3
99.18
%
99.28
%
99.67
%


## 6. Validation Experiment

According to literature [9], the peaks in the prediction error would abruptly increase when the joints reverse. And the following linear friction model, which includes viscous and Coulomb friction only, is unable to capture the complex dynamical friction behavior. With the linear friction model, the dynamical model of the robot is linear and the unknown parameters can be identified by the least square method or intelligence algorithms.(18)τf=fcsign⁡q˙i+fvq˙i,In order to validate the accuracy of the dynamical model with the nonlinear friction model, we used the linear friction model as a comparison. Similarly, the dynamical parameters of the two models are identified by the ICS algorithm. The excitation trajectories and simulation conditions are set the same as those in Section5. The comparison of the measured torques and the predicted torques based on different friction models is given in Figure 7. As we have seen, both the predicted torques from linear and nonlinear dynamical models can match the measured torques well. Nonetheless, the nonlinear model describes the friction behavior better for the points of joint inversion, obviously in Figure 8. The nonlinear friction model can reduce the error peak, which is beneficial to the design of the controllers.Figure 7
Comparison of the different friction models.
(a)
Joint 1
(b)
Joint 2
(c)
Joint 3Figure 8
Comparison of linear and nonlinear models.
(a)
Joint 1
(b)
Joint 2
(c)
Joint 3


## 7. Conclusions

In this paper, an improved cuckoo search algorithm has been proposed to solve the dynamical parameters identification for a robot manipulator with nonlinear friction property. The dynamical model has been established by Newton-Euler method and processed into a linear form. Then, a nonlinear friction model is added to the joint model for realizable friction compensation at motion reversal. Based on the experimental data collected from identification experiment, we use a novel identification algorithm ICS including CS methods, the chaotic operator, and emotion operator to identify the unknown parameters of the robot model. Compared to other two identification algorithms, CS and PSO, the model generated by using our proposed algorithm matches the actual torques better. What is more, ICS has a fast convergence speed and strong search ability. Furthermore, a linear friction model is used as a comparison to test the effect of the nonlinear friction model in describing the friction characteristic. The results show that the nonlinear friction model can restrain the saltation at motion reversal, resulting in higher identification accuracy. In the future, we will attempt to study the controller design based on the identification dynamical model.



---

*Source: 8219123-2018-01-08.xml*