6
AbstractThis paper deals with joint stiffness identification with a new closed-loop output error method which avoids the use of positions measurements. This method called DIDIM (Direct and Inverse Identification Model) was previously validated on rigid robots and it is now applied to a flexible joint robot. A non linear least squares solution minimizes the quadratic error between the actual motor force/torque and the simulated one. To assume a fast algorithm convergence and a good robustness to initial values, a gains updating is performed to keep the frequency of the bandwidth of the rigid controlled degree of freedom (dof) and the natural frequency of the flexible dof close to the actual ones in the simulated robot. The gains updating requires to identify these frequencies with a non linear programming during a first step before applying DIDIM method in a second step. An experimental setup exhibits identification results and shows the effectiveness of our approach compared to two classical output error methods. I. INTRODUCTION CCURATE dynamic robots models are needed to control and simulate their motions with precision and reliability. Identification of rigid robots has been widely investigated in the last decades. The usual identification process is based on the inverse dynamic model and the ordinary or weighted least squares estimation. This method, called IDIM (Inverse Dynamic Identification Model), has been performed on several prototypes and industrial robots with accurate results [1]. Identification of flexibilities is more complex than identification of rigid body dynamics: only a subset of state variables is measured and one cannot use directly linear regressions [2]. This can be solved by adding sensors [3] and/or external excitations [4]. In [5] a 6 dof flexible robot is identified with motion capture but it is quit difficult to have accurate motion capture measurements. In [6], the authors have rigorously compared three minimal identification models previously developed in [7] and [8]. All these techniques provide good results and require little computation time but they need either the flexibility measures variables or high-order derivatives of motor position (1 to 4) and motor force (1 to 2). In [9], the authors use the System Identification Toolbox for Matlab [10] to identify both joint and structural flexibilities of one axis of an industrial robot: inertia and stiffness parameters seem well identified. But, they do not M. Gautier is with the Institut de Recherche en Communications et Cybernétique de Nantes (IRCCyN) and with University of Nantes, Nantes, France (e-mail: [email protected]). A. Jubien is with the IRCCyN and the ONERA (DCSD) the French Aerospace Lab, Tousouse, France (e-mail: [email protected] nantes.fr). A. Janot is with ONERA (DCSD), Tousouse, France (e-mail: [email protected]). discuss about the repartition of Coulomb friction and data filtering. In [11], a three mass flexible model of robot arm is identified with only motor position but the methodology needs three steps and uses a nonlinear grey-box identification method. Recently, a new identification process needing only actual force/torque data was validated on rigid robots [12]. This method called DIDIM (Direct and Inverse Dynamic Identification Model) is now extended to joint stiffness identification. A first attempt is presented in [13]: the non- linear Least Square (LS) problem is solved by using the Nelder Mead simplex algorithm. Good results are obtained but the algorithm converges slowly and it is quite sensitive to initialization. This paper presents significant improvements of the DIDIM for identifying dynamic parameters of a flexible joint robot. This method requires to have the simulated positions, velocities and accelerations close to the actual ones. That is the reason why a gains updating is performed in the simulated robot in order to keep the bandwidth of the rigid controlled dof and to keep the natural frequency of the flexible dof close to the actual ones, at each step of the recursive Gauss Newton non linear programming algorithm. The identification procedure consists of two steps. The first step is a first identification of the parameters using only the bandwidth of the rigid controlled dof and the natural frequency of the flexible dof as two optimization variables in a fast non linear programming algorithm based on the Nelder Mead simplex algorithm [14]. The simulated motor force is calculated using one iteration of the DIDIM procedure. The second step is a second identification of all dynamic parameters of the robot with DIDIM method using the bandwidth of the rigid controlled dof and the natural frequency of the flexible dof identified in the first step for gains updating. This paper is divided into six sections. Section II describes the experimental setup and its modeling. Section III reminds the classical identification method called IDIM while section IV presents the new identification method called DIDIM. Section V presents the extension of this method to joint stiffness identification and the two steps of the identification procedure. Section VI is devoted to the experimental identification based on DIDIM of one prismatic flexible joint manipulator. The identified values are compared with those identified with IDIM and two classical Output Error (OE) methods. II. DESCRIPTION AND MODELING OF A FLEXIBLE JOINT ROBOT A. Experimental setup The EMPS is a high-precision linear Electro-Mechanical Positioning System (see fig. 1). It is a standard configuration New Closed-Loop Output Error method for Robot Joint Stiffness Identification with Motor Force/Torque data M. Gautier, A. Jubien, A. Janot A

New Closed-Loop Output Error Method for Robot Joint Stiffness Identification

  • Upload
    onera

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

Abstract— This paper deals with joint stiffness identification with a new closed-loop output error method which avoids the use of positions measurements. This method called DIDIM (Direct and Inverse Identification Model) was previously validated on rigid robots and it is now applied to a flexible joint robot. A non linear least squares solution minimizes the quadratic error between the actual motor force/torque and the simulated one. To assume a fast algorithm convergence and a good robustness to initial values, a gains updating is performed to keep the frequency of the bandwidth of the rigid controlled degree of freedom (dof) and the natural frequency of the flexible dof close to the actual ones in the simulated robot. The gains updating requires to identify these frequencies with a non linear programming during a first step before applying DIDIM method in a second step. An experimental setup exhibits identification results and shows the effectiveness of our approach compared to two classical output error methods.

I. INTRODUCTION

CCURATE dynamic robots models are needed to control and simulate their motions with precision and reliability. Identification of rigid robots has been widely investigated in the last decades. The usual

identification process is based on the inverse dynamic model and the ordinary or weighted least squares estimation. This method, called IDIM (Inverse Dynamic Identification Model), has been performed on several prototypes and industrial robots with accurate results [1].

Identification of flexibilities is more complex than identification of rigid body dynamics: only a subset of state variables is measured and one cannot use directly linear regressions [2]. This can be solved by adding sensors [3] and/or external excitations [4]. In [5] a 6 dof flexible robot is identified with motion capture but it is quit difficult to have accurate motion capture measurements. In [6], the authors have rigorously compared three minimal identification models previously developed in [7] and [8]. All these techniques provide good results and require little computation time but they need either the flexibility measures variables or high-order derivatives of motor position (1 to 4) and motor force (1 to 2).

In [9], the authors use the System Identification Toolbox for Matlab [10] to identify both joint and structural flexibilities of one axis of an industrial robot: inertia and stiffness parameters seem well identified. But, they do not

M. Gautier is with the Institut de Recherche en Communications et

Cybernétique de Nantes (IRCCyN) and with University of Nantes, Nantes, France (e-mail: [email protected]).

A. Jubien is with the IRCCyN and the ONERA (DCSD) the French Aerospace Lab, Tousouse, France (e-mail: [email protected]).

A. Janot is with ONERA (DCSD), Tousouse, France (e-mail: [email protected]).

discuss about the repartition of Coulomb friction and data filtering. In [11], a three mass flexible model of robot arm is identified with only motor position but the methodology needs three steps and uses a nonlinear grey-box identification method.

Recently, a new identification process needing only actual force/torque data was validated on rigid robots [12]. This method called DIDIM (Direct and Inverse Dynamic Identification Model) is now extended to joint stiffness identification. A first attempt is presented in [13]: the non-linear Least Square (LS) problem is solved by using the Nelder – Mead simplex algorithm. Good results are obtained but the algorithm converges slowly and it is quite sensitive to initialization.

This paper presents significant improvements of the DIDIM for identifying dynamic parameters of a flexible joint robot. This method requires to have the simulated positions, velocities and accelerations close to the actual ones. That is the reason why a gains updating is performed in the simulated robot in order to keep the bandwidth of the rigid controlled dof and to keep the natural frequency of the flexible dof close to the actual ones, at each step of the recursive Gauss Newton non linear programming algorithm.

The identification procedure consists of two steps. The first step is a first identification of the parameters using only the bandwidth of the rigid controlled dof and the natural frequency of the flexible dof as two optimization variables in a fast non linear programming algorithm based on the Nelder – Mead simplex algorithm [14]. The simulated motor force is calculated using one iteration of the DIDIM procedure. The second step is a second identification of all dynamic parameters of the robot with DIDIM method using the bandwidth of the rigid controlled dof and the natural frequency of the flexible dof identified in the first step for gains updating.

This paper is divided into six sections. Section II describes the experimental setup and its modeling. Section III reminds the classical identification method called IDIM while section IV presents the new identification method called DIDIM. Section V presents the extension of this method to joint stiffness identification and the two steps of the identification procedure. Section VI is devoted to the experimental identification based on DIDIM of one prismatic flexible joint manipulator. The identified values are compared with those identified with IDIM and two classical Output Error (OE) methods.

II. DESCRIPTION AND MODELING OF A FLEXIBLE JOINT

ROBOT

A. Experimental setup

The EMPS is a high-precision linear Electro-Mechanical Positioning System (see fig. 1). It is a standard configuration

New Closed-Loop Output Error method for Robot Joint Stiffness Identification with Motor Force/Torque data

M. Gautier, A. Jubien, A. Janot

A

of a drive system for prismatic joint of robots or machine tools.

Its main components are: - A Maxon DC motor equipped with an incremental

encoder to make a PD motor position control. - A Star high-precision low-friction ball screw drive

positioning unit. An incremental encoder measures the angular position of the screw.

- A carriage which moves a load in translation.

Fig. 1: EMPS prototype and flexible coupling

These components are presented in fig. 2.

12q

v

DC motor

Encoder on the motor side

Encoder on the load side

Gravity vector

Flexible coupling

Load on prismatic link

Fig. 2: EMPS Components

All variables and parameters are given in ISO units on the load side.

B. Inverse Dynamic Model (IDM)

The mechanical system has 2n dof, one rigid dof 1q

and one flexible dof . In our case the robot is not affected by gravity and is modeled with two inertias, one spring, and friction forces (see fig. 3).

1q

12q

2q

12K

2M

x

O

z

1x

1O

1z

2x

2O

2z

1M

Fig. 3: EMPS modeling

The IDM calculates the motor force according to the joint positions and their derivatives. Newton–Euler equations give the following IDM [15]:

idm1 1 1 v1 1 c1 1 12 2

2 12 v2 12 c2 12 12 2

M q F q F sign( q ) K q

0 M q F q F sign( q ) K q

(1)

Where: 1q , 1q , 1q , are respectively the motor position,

velocity and acceleration; 1 (N) is the motor force; 12q , 12q ,

12q are respectively the load position, velocity and

acceleration; 2q , 2q , 2q are respectively the flexible dof

position, velocity and acceleration with, 12 1 2q q q ,

12 1 2q q q and 12 1 2q q q ; 1M (Kg) is the total motor

side equivalent mass, v1F (N/m/s) and c1F (N) are

respectively the viscous and Coulomb motor side friction

parameters; 2M (Kg) is the total load side equivalent mass

(screw, nut, carriage and load), v2F (N/m/s) and c2F (N) are

respectively the viscous and Coulomb load side friction

parameters; 12K (N/m) is the stiffness of the flexible joint.

The IDM can be written as follows:

idm M q q N q,q Kq (2)

With: 1

12

qq

q

, 1

12

qq

q

,

1

12

qq

q

,

idm1

idm0

,

1 v1 1 c1 1 12 12

v 2 12 c 2 12 12 122

M 0 F q F sign q K KM( q ) , N q,q ,K

F q F sign q K K0 M

The IDM (2) can be written in a linear relation to the dynamic parameters as follows:

idm IDM (3)

With:

1

T

v1 c1 2 v2 c2 12M F F M F F K

1 1 1 2

12 12 12 2

q q sign( q ) 0 0 0 qIDM

0 0 0 q q sign( q ) q

There are b 7 parameters to be identified.

C. Direct Dynamic Model (DDM)

From the IDM (2), the implicit form of the DDM is given by:

idmM q q N q,q Kq (4)

III. IDIM-LS: INVERSE DYNAMIC

IDENTIFICATION MODEL AND LEAST SQUARES

METHOD

Because of perturbations due to noise measurement and

modeling errors, the actual force/torque differs from idm

by an error e , such that:

idm e IDM q,q,q χ e (5)

The vector is the LS solution of an over determined

system built from the sampling of (5):

Y =Wχ+ ρ (6)

Where: Y is the ( x1)r measurement vector, W the

( x )r b observation matrix, is the ( x1)b vector of

parameters to be identified and is the ( x1)r vector of

errors. We have er n* n , where en is the number of

collected samples. The unicity of the LS solution is assumed

if W is a full rank matrix i.e. if rank(W ) b . To avoid rank

deficiency, only the b base parameters must be considered

[16] [17] and trajectories must be exciting enough [18] [19].

The detailed calculation of the standard deviation j

ˆσ and

the relative % standard derivation jr

ˆσ % j

j

ˆˆ100 σ

for jˆ 0 can be found in [20].

Calculating the LS solution of (6) from noisy discrete measurements or estimations of derivatives may lead to bias. if W is correlated to . Then, it is essential to filter data in

Y and W before computing the LS solution. Velocities and

accelerations are estimated by means of a bandpass filtering of the positions. To eliminate high frequency noises and torque ripples, a parallel decimation is performed on Y and on each column of W . More details about data filtering can

be found in [20] and [7].

IV. IDENTIFICATION OF RIGID ROBOT WITH

DIDIM

DIDIM is a Close-Loop Output Error (CLOE) method requiring only force/torque data [12]. The output y , is

the actual joint force/torque , and the simulated output

s idmy , is the simulated joint force/torque. The signal

ddmq χ,t is the result of the integration of the linear implicit

differential equation (4). The optimal solution χ minimizes

the following quadratic criterion:

2

SJ χ Y Y (7)

Where Y τ and S idmY are vectors obtained by

filtering and down sampling the vectors of samples of the

actual force/torque , and of the simulated force/torque idm ,

respectively. This non-linear LS problem is solved by the Gauss-

Newton regression. It is based on a Taylor series expansion

of sy , at a current estimate kχ . Because of the same closed

loop control for the actual and for the simulated robot and the gains tuning of the simulated controller, the simulated position, velocity and acceleration have little dependence on such as:

ddm k ddm k ddm kˆ ˆ ˆq ( χ ),q ( χ ),q ( χ ) q,q,q (8)

Then the jacobian matrix can be approximated by:

k

S k k k

ddm ddm ddm

χ

yˆ ˆ ˆIDM q ( χ ),q ( χ ),q ( χ ) IDM q,q,q

χ

(9)

Taking the approximation (9) of the jacobian matrix into the Taylor series expansion, it becomes:

+1k k k k

ddm ddm ddmˆ ˆ ˆy IDM q ( χ ),q ( χ ),q ( χ ) χ o e (10)

This is the Inverse Dynamic Identification Model, where

q, q, q are estimated with ddm ddm ddmq ,q ,q . After a

sampling and a parallel decimation of (9), we get an over-determined linear system:

, k

s ddm ddm ddmˆY τ W q ,q ,q χ χ ρ (11)

The LS solution of (11) calculates k 1 , at iteration k+1.

This process is iterated until: k 1 k k tol1/ .

Where 1tol is a value ideally chosen to be a small number to

get fast convergence with good accuracy. DIDIM avoids tuning the band pass filter in the IDIM by

using the integration of the DDM in a closed-loop simulation. It combines the IDM and the DDM and validates, in the same identification procedure, both models for computed force motor and for simulation. The robot

controller must be known but this is not a real problem because working on identification for simulation or control of the robot requires a minimal knowledge about it.

V. IDENTIFICATION OF FLEXIBLE ROBOT WITH

DIDIM

A. DIDIM for joint stiffness identification

The success of DIDIM is based on the approximation given by (8) and (9). Difficulties arise with flexible systems

because the flexible dof, 2q is not actuated and not

controlled. The gains updating presented in [12] is no longer efficient for the flexible dof and must be modified. Let us consider the actual PD controlled rigid dof of the flexible joint as shown in fig. 4:

v

12aK

ag

1q

1

1aM

1

s

1

s

1q

1q

12q

2

1aM

1

s

1

s

12q

12q

ap

ap

M

g

vk

rq

pk

1p

2p

2q

Fig. 4: PD controlled rigid dof of the flexible joint

Where: pk is the proportional gain and vk is the

derivative gain of the PD controller; ap g and a g

are the a

priori value and the actual value of drive gain respectively;

rq is the reference position; a

1M , a

2M and a

12K are the

actual values of 1M , 2M and 12K respectively; apM is

the a priori value of the total mass, it can be a CAD value or

can be given by robot manufacturer; 1p and 2p are

perturbation due to friction forces:

1 v1 1 c1 1p F q F sign q and 2 v2 12 c2 12p F q F sign q .

In order to tune the tracking performances of the

reference position rq , the term 1p and the flexible coupling

effect are considered as perturbations ( 1p 0 et 2q 0 ). We

control the double integrator system a 2G / s with:

aap

a

v ap a

1

gMG k

g M

(12)

In the same way in fig. 4, let us define the open-loop

double integrator, ( ) ( )a a 2

12 2K / M * 1 / s , of the flexible dof

obtained with the blocked rigid dof ( rq = 1q =0). Now, let us

consider the flexible joint of the simulated robot as given fig. 5.

1

1ˆkM

1

s

1

s

1 /ddm kq

1 /ddm kq

2

1ˆkM

1

s

1

s

12 /ddm kq

12 /ddm kq

kmg

rq

pk

1 /ddm kp

2 /ddm kp

2 /ddm kq

12ˆkK

kcg

1 /ddm kq

12 /ddm kq

Fig. 5: Simulation of a PD controlled flexible joint

Where: k

1M , k

2M and k

12K are the estimations of 1M ,

2M and 12K , respectively, at step k ; the variables 1ddm/ kq ,

1ddm/ kq , 1ddm/ kq , 12ddm/ kq , 12ddm/ kq , 12ddm/ kq and ddm/ kv ,

1ddm/ kp and 2ddm/ kp are computed by numerical integration

of (4). The two following relations allow to keep the same open-

loop double integrator a 2G / s for the rigid dof and

( ) ( )a a 2

12 2k / M * 1 / s for the flexible dof, for the actual

robot and for the simulated robot:

k a k

m 1ˆg G M (13)

k k k a a

c 2 12 12 2ˆ ˆg M / K K / M (14)

Where k

mg is the gain of rigid dof and k

cg is the gain of

flexible dof. Then, the rigid dof and the flexible dof simulated states remains close to the actual ones for any

value of k , at each step k ( 1ddm/ k 1q q and

12ddm/ k 12q q for any k ). For ease of notation, we introduce:

a a a

n _ flex 12 2f K / M 2 (15)

Where a

n _ flexf is the natural frequency when the rigid

dof is blocked ( 1q 0 ). The equation (14) becomes:

k 2 a 2 k k

c n _ flex 2 12ˆ ˆg 4 f M / K (16)

Relations (13) and (16) require an accurate estimate of G

and n _ flexf

before applying DIDIM because they are

unknown. Note that identifying G and n _ flexf is the same as

identifying actual relations a a

1g M and a a

12 2K M if the

term ap ap

vk M g is known.

B. Step 1: identification of G and n _ flexf

In order to get a fast identification of G and n _ flexf with a

first identification of all the dynamic parameters, we consider a non linear programming algorithm with only two

optimization variables G and n _ flexf :

n _ flex

2

n _ flex sG, f

ˆG, f min Y Y (17)

Where Y τ and S ddmY are vectors obtained by

filtering and down-sampling the vectors of samples of the actual force/torque , and of the simulated force/torque

ddm , respectively. The simulated motor force ddm is

calculated using one iteration of the DIDIM procedure. A first simulation is carried out with the regular

initialization 0χ defined in [12]:

0 0 0

1 2 12M M K 1 , 0 0

v1 v2F F 0 0

c1 c2F F 0 (18)

The gains updating given by (13) and (16) are performed

in this simulation according to 0χ :

k k

mˆg G (19)

k 2 k 2

c n _ flexˆg 4 f (20)

Where kG and k

n _ flexf are the estimations of G and

n _ flexf at step k of the non linear programming algorithm.

Then we calculate 1kχ , the first step estimation of

DIDIM, which is the LS solution of (21).

, 0 k k

s ddm ddm ddm n _ flexˆˆY τ W q ,q ,q χ , G, f χ ρ (21)

The algorithm does not converge if 1kχ is used at step

k+1 in place of 0χ to simulate ddm ddm ddmq ,q ,q because 1kχ

depend directly on kG and k

n _ flexf while 0χ is independent

on kG and k

n _ flexf .

Thanks to the gains updating the simulated positions,

velocities and acceleration depending on kG , k

n _ flexf and

0 are close to the simulated positions, velocities and

accelerations depending on kG , k

n _ flexf and 1kχ . Thus the

simulated force/torque can be approximated by:

k k 1k k k 1k

n _ flex n _ flex

k k 0

n _ flex

1k

ddm

1k

ˆ ˆˆ ˆˆ ˆG, f , χ G, f , χ

ˆG, f ,

ˆIDM χ

ˆIDM χ

(22)

Using this approximation avoids a second simulation

with parameters 1kχ , to calculate k k 1k

n _ flexddmˆˆ ˆG, f , χ at each

iteration of the algorithm and saves computational time. The non linear programming algorithm is the Nelder –

Mead simplex algorithm [14] (the "fminsearch" MATLAB function).

The initial conditions of algorithm can be chosen in theses

intervals according to results of section VI-C:

0 0

n _ flexG [75;450], f [15;50]Hz (23)

We note that the search interval of the variable n _ flexf

covers the usual range of flexible joint natural modes of robots.

The iterative procedure stops when the relative decreasing of the criterion (17) is less than a value ideally chosen to be a small number to get fast convergence with good accuracy.

C. Step 2: identification of the flexible model with DIDIM

The estimation 1χ obtained at the first step with only one

optimization variable is improved with the DIDIM method where all the dynamic parameters are the optimization variables.

The optimal parameters minimize the quadratic criterion

(7). Relations k

mg and k

cg are updated at each step k with:

k k

m 1ˆˆg M G (24)

k 2 2 k k

c n _ flex 2 12ˆ ˆ ˆg 4 f M / K (25)

When G and n _ flexf are identified values with the

procedure described in section V-B. Initial parameters 0

are given by the regular initialization (18). The gains updating allows to respect the approximations (8) and (9). We recall the two-step identification procedure in fig. 6.

-reference position rq

-force

- ,ap apM g

Identification of the flexible dynamic model with DIDIM

Identification of _, n flexG f

_ˆˆ , n flexG f

1 1 1 2 2 2 12ˆ ˆ ˆ ˆ ˆ ˆ ˆ, , , , , ,v c v cM F F M F F K

Step 1

Step 2

Fig. 6. Two-step identification procedure

VI. EXPERIMENTAL VALIDATION

A. Data acquisition

Motor and load positions are measured by means of high precision encoders working in quadrature count mode (accuracy of 12500 counts per revolution). The sample acquisition frequency for joint position and current reference (drive force) is 1 KHz.

We calculate the motor force using the relation: ap

1 g v

(26)

where v is the current reference of the amplifier current

loop, and ap g is a priori value of the gain of the joint drive

chain, which is taken as a constant value in the frequency range of the robot (less than 30Hz) because of the large bandwidth of the current loop (700 Hz). The gain of the joint drive chain can be given by the robot manufacturer.

The motor position is controlled with a PD controller and the bandwidth of the closed-loop is tuned at 20Hz.

Exciting reference trajectories are calculated as the sum of a trapezoidal velocity signal with a chirp signal. Trapezoidal velocity excites the inertia and friction parameters while chirp signal excites the flexibility.

B. Identification of the flexible model with IDIM-LS

IDIM-LS is performed with the IDM defined in (3). It

needs the motor force 1 , the motor position 1q and the load

position 12q . The cut-off frequency of the Butterworth filter

and decimate filter are fixed at 100Hz and 60Hz respectively. Because all data are measured with accuracy, the results

given in table 2 are considered as references for the study of DIDIM.

C. Step 1: identification of G and n _ flexf

We need to identify G and n _ flexf before performing

DIDIM method for the gains updating. The cut-off frequency of the decimate filter is fixed at 60Hz. The results are given in table 1.

The algorithm is initialized with a priori value ap

1M if

we consider ap ag g :

ap ap

v 1G k M M (27)

In our case initial G 295 if we estimate values ap

1M and apM to 40 and 78Kg respectively. We estimate

n _ flexf between 15 and 50Hz, so we initialize them at 40Hz.

TABLE 1: IDENTIFIED VALUES

Initialization Identified

values

G 295 183

n _ flexf 40 24.21

s||Y Y || / ||Y || 10.7%

The algorithm converges after 17 iterations (32

simulations of MDD) and 55.7 seconds. The minimization problem is solved with a small number of iterations. The

robustness of the algorithm was analyzed, initial n _ flexf can

be chosen in range of 15 and 50Hz and initial G can be

chosen in range of 75 and 450. This new method allows to identifying only two values

with a non linear programming algorithm instead of 7 parameters. The convergence time is reduced. The identification of robot parameters in step 2 with DIDIM will need only few iterations because the bandwidth of the rigid controlled dof and the natural frequency of the flexible dof will be close to the actual ones due to the fact that G and

n _ flexf were initially indentified.

D. Step 2: global identification of the flexible model with DIDIM

DIDIM is carried out. The cut-off frequency of the decimate filter is fixed at 60Hz. Only the actual motor force is needed. We get the simulated states by simulating (4). The gains updating given by (24) and (25) are performed at each

step of the algorithm according to k , G and n _ flexf . The

algorithm is initialized with the regular initialization (18). DIDIM converges after only 3 iterations and around 6

seconds. The results are given in table 2 and are close to the identified values with IDIM-LS. The initialization (18) has no effect on the identification of inertia and stiffness. However, we cannot dissociate motor friction from load friction. But the sum of the two viscous frictions and the sum of two coulomb frictions are close to these ones obtained by IDIM.

DIDIM provides excellent results although only one variable measurement is used. The estimated motor force follows closely the measured one as illustrated fig. 7. Finally, the results emphasize the effectiveness of performing the gains updating given by (24) and (25).

TABLE 2: IDIM-LS AND DIDIM IDENTIFIED VALUES

Method IDIM-LS DIDIM

Parameter χ (%)r

3χ (%)3r

1M (Kg) 68.0 0.3 66.3 0.3

v1F (N/m/s) 104 1.3 213 0.7

c1F (N) 10.0 0.8 17.8 0.7

2M (Kg) 38.0 0.7 37.1 0.5

v2F (N/m/s) 96.5 1.4 - -

c2F (N) 9.5 1.3 - -

12K (N/m) 8.8 105 0.7 8.6 105 0.5

v1 v2F F 211 - 213 -

c1 c2F F 19.5 - 17.8 -

||Y W.X || / ||Y || 6.81% 8.03%

Fig. 7: Cross test validation with DIDIM. Red: measurement, Blue: Simulated force, Black: error

E. Comparison with other OE methods

In this section, the non-linear LS problem is solved by using the Nelder – Mead simplex algorithm and this method is compared with DIDIM. Details about the procedure can be found in [13]. The optimal values are estimated with "fminsearch" MATLAB function. Two criteria are evaluated, the first one depends on the motor position and the second one depends on the motor force:

1q 1ddm 1 1C ||q q ||/ ||q || (28)

1ddm 1 1C || ||/ || || (29)

Where: 1ddmq is the simulated motor position, 1q is the

actual motor position, 1ddm is the simulated motor force and

1 is the actual motor force. The cut-off frequency of the

decimate filter is fixed at 60Hz. The algorithm is initialized with the pseudo regular initialization described in [13]. The gains updating given by (24) and (25) is not performed. The results are given in table 3.

The Nelder – Mead simplex algorithm converges after 172 iterations (276 simulations of MDD) and 547 seconds for the first criterion (28). 129 iterations (221 simulations of MDD) and 438 seconds are needed for the second criterion (29). The computation time is more 7 times lower than DIDIM.

The results are very close to those given by DIDIM except for frictions parameters. However, the algorithm is not as robust as DIDIM with respect to the initialization. If the regular initialization is chosen, it do not converge. DIDIM is a dramatic improvement of the usual CLOE method.

TABLE 3: NELDER-MEAD IDENTIFIED VALUES

Criterion 1qC C

Parameter 172χ (%)172r

129χ (%)129r

1M (Kg) 67.1 0.27 64.1 0.25

v1F (N/m/s) 76.5 1.9 126 0.97

c1F (N) 12.1 0.98 13.2 0.80

2M (Kg) 37.8 0.51 40.1 0.44

v2F (N/m/s) 135 1.8 84.6 1.4

c2F (N) 6.40 1.9 5.21 2.1

12K (N/m) 7.68105 0.43 8.75105 0.37

v1 v2F F 212 - 211 -

c1 c2F F 18.5 - 18.4 -

||Y W.X || / ||Y || 7.38% 6.63%

VII. CONCLUSION

This paper has presented a methodology to identify joint stiffness. It requires two steps and only actual force/torque

data. To highlight the effectiveness of our approach, results obtained with DIDIM were compared with those obtained with IDIM-LS and OE methods. The experimental results show that DIDIM results are comparable with IDIM-LS results which need three measurements (actual force/torque data, motor and load positions). However the viscous and the coulomb frictions are not dissociated between the motor and load side. DIDIM with converges 7 times faster than other OE methods thanks to the gains updating. Future works concern the use of DIDIM to identify a multi dof robot with both joint flexibilities and gravity effect.

REFERENCES

[1] J. Hollerbach, W. Khalil, and M. Gautier, « Model Identification » in Springer Handbook of Robotics, vol. 14. Springer, 2008.

[2] M. W. Spong, « Modeling and control of elastic joint robots », Journal of Dynamic Systems Measurement and Control, vol. 109(4), p. 310–319, 1987.

[3] F. Pfeiffer and J. Holzl, « Parameter identification for industrial robots », in Proc. Conf. IEEE Int Robotics and Automation, 1995, vol. 2, p. 1468–1476.

[4] A. Albu-Schaffer and G. Hirzinger, « Parameter identification and passivity based joint control for a 7 DOF torque controlled light weight robot », in Proc. ICRA Robotics and Automation IEEE Int. Conf, 2001, vol. 3, p. 2852–2858.

[5] C. Lightcap and S. Banks, « Dynamic Identification of a Mitsubishi PA10-6CE Robot using Motion Capture », in IEEE International Conference on Intelligent Tobots and Systems, 2007, p. 3860–3865.

[6] A. Janot, M. Gautier, A. Jubien, and P. O. Vandanjon, « Experimental Joint Stiffness Identification Depending on Measurement Avaibility », in Proc. IEEE Int. Conf. on Decision and Control, Orlando, USA, 2011, p. 5112–5117.

[7] M. . Pham, M. Gautier, and P. Poignet, « Identification of joint stiffness wih bandpass filtering », Int. Conf. On Robotics and Automation, Séoul, Corée, 2001.

[8] M. T. Pham, M. Gautier, and P. Poignet, « Accelerometer based identification of mechanical systems », in Proc. IEEE Int. Conf. Robotics and Automation ICRA ’02, 2002, vol. 4, p. 4293–4298.

[9] M. Östring, S. Gunnarsson, and M. Norrlöf, « Closed-loop identification of an industrial robot containing flexibilities », Control Engineering Practice, vol. 11, p. 291–300, 2003.

[10] L. Ljung, System identification toolbox—user’s guide. herborn, MA, USA: The MathWorks Inc., 2000.

[11] E. Wernholt and M. Gunnarsson, « Nonlinear identification of a physically parameterized robot model », in 14th IFAC Symposium on System Identification, 2006, vol. 4.

[12] M. Gautier, A. Janot and P.O. Vandanjon, « A New Closed-Loop Output Error Method for Parameter Identification of Robot Dynamics », in IEEE Transactions on Control Systems Technology, 2012, p. 1–17.

[13] M. Gautier, A. Janot, A. Jubien, and P. O. Vandanjon, « Joint Stiffness Identification from only Motor Force/Torque », in Proc. IEEE Int. Conf. on Decision and Control, Orlando, USA, 2011, p. 5088–5093.

[14] J. C. Lagarias, J. A. Reeds, M. H. Wright, and P. E. Wright, « Convergence Properties of the Nelder – Mead Simplex Method in Low Dimensions », Society for Industrial and Applied Mathematics,, vol. 9, p. 112–147, 1998.

[15] W. Khalil and E. Dombre, Modeling, Identification and Control of Robots. Taylor and Francis Group, New York, 3rd edition, 2002.

[16] M. Gautier and W. Khalil, « Direct calculation of minimum set of inertial parameters of serial robots », IEEE Transactions on Robotics and Automation, vol. 6, no. 3, p. 368–373, 1990.

[17] H. Mayeda, K. Yoshida, and K. Osuka, « Base parameters of manipulator dynamic models », IEEE Transactions on Robotics and Automation, vol. 6, no. 3, p. 312–321, 1990.

[18] C. Presse and M. Gautier, « New criteria of exciting trajectories for robot identification », in Proc. Conf. IEEE Int Robotics and Automation, 1993, p. 907–912.

[19] M. Gautier and W. Khalil, « Exciting trajectories for the identification of base inertial parameters of robots », in Proc. 30th IEEE Conf. Decision and Control, 1991, p. 494–499.

[20] M. Gautier, « Dynamic identification of robots with power model », in Proc. Conf. IEEE Int Robotics and Automation, 1997, vol. 3, p. 1922–1927.