S Briot

V Arakelian
email: vigen.arakelyan@insa-rennes.fr

A New Energy-free Gravity-compensation Adaptive System for Balancing of 4-DOF Robot Manipulators with Variable Payloads

Keywords: robot manipulators, gravity compensation, static balancing, variable payload

In most of gravity balancing approaches devoted to robot manipulators, the gravity compensation is carried out for cancelling of the static efforts due to robot element masses, as well as a fixed payload. When the payload is variable, i.e. if for each cycle of the robot operation it is different, the known compensation techniques are not efficient. Some solutions permitting to compensate the gravity effects of variable payloads have been developed. However, they have similar drawbacks. To adapt the robot to the changing payload it is necessary: i) to increase the number of actuators and ii) to bring energy inside the system, i.e. the adaption technique is not energy efficient.

This paper deals with a new gravity-compensation system for cancellation of the static loads of the changing payload. It is shown that the adaption to a new manipulated payload does not need to bring energy inside the system, i.e. the adaption technique is energy efficient. Simulations of the suggested mechanism by using ADAMS software are performed and show the efficiency of the proposed solution.

I. Introduction

Any mechanism is statically balanced (also denoted as gravity-balanced) if its potential energy is constant for all possible configurations. With regard to the static balancing in robotics, this term differs from the first definition because in this case, the aim of the balancing is the minimization or cancellation of input efforts of a mechanical system by means of gravitational force balancing. This means that the mechanism is statically stable for any configuration; i.e., zero actuator input efforts due to the static loads are required.

For static balancing of robot mechanisms, different approaches and solutions have been developed and documented. The balancing schemes for robotic systems can be systematized by taking into account the nature of the compensation force:

• with counterweights (group A): this is a classical approach which consists in adding counterweights in order to keep the total centre of mass of moving links stationary [START_REF] Dunlop | Gravity counter balancing of parallel robot for antenna aiming[END_REF][START_REF] Kazerooni | A new architecture for direct drive robots[END_REF][START_REF] Kazerooni | Statically balanced direct drive manipulator[END_REF][START_REF] Gosselin | On the design of gravity-compensated six-degree-of-freedom parallel mechanisms[END_REF][START_REF] Wang | Static balancing of spatial three-degreeof-freedom parallel mechanisms[END_REF][START_REF] Newman | the optimal control of balanced manipulators[END_REF][START_REF] Gosselin | Smart Devices and Machines for Advanced Manufacturing, chapter Gravity compensation, static balancing and dynamic balancing of parallel mechanisms[END_REF][START_REF] Wang | Static balancing of spatial four-degreeof-freedom parallel mechanisms[END_REF][START_REF] Laliberté | Static balancing of 3-DOF planar parallel mechanisms[END_REF].

• with spring (group B): the approaches developed in this group are based on the use of either zero-free length springs or non zero-free length springs [START_REF] Gopalswamy | A new parallelogram linkage configuration for gravity compensation using torsional springs[END_REF][START_REF] Shin | Spring equilibrator theory for static balancing of planar pantograph linkages[END_REF][START_REF] Streit | Equilibrators for planar linkages[END_REF][START_REF] Rahman | A simple technique to passively gravity-balance articulated mechanisms[END_REF][START_REF] Pons | Quasi-exact linear spring counter gravity system for robotic manipulators[END_REF][START_REF] Gosselin | Computational Methods in Mechanical Systems: Mechanism Analysis, Synthesis, and Optimization, chapter On the design of efficient parallel mechanisms[END_REF][START_REF] Herder | Design of spring force compensation systems[END_REF][START_REF] Ebert-Uphoff | Static balancing of spatial parallel mechanisms revisited[END_REF][START_REF] Tuijthof | Design, actuation and control of an antropomorphic robot arm[END_REF][START_REF] Ono | An underactuated manipulation method using a mechanical gravity canceller[END_REF][START_REF] Lin | Design of perfectly statically balanced one-DOF planar linkage with revolute joints only[END_REF][START_REF] Lin | A stiffness matrix approach for the design of statically balanced planar articulated manipulators[END_REF][START_REF] Lu | Passive gravity compensation mechanisms: Technologies and applications[END_REF][START_REF] Lin | Design of statically balanced planar articulated manipulator with spring suspension[END_REF][START_REF] Deepak | Static balancing of a four-bar linkage and its cognates[END_REF][START_REF] Deepak | Perfect static balancing of linkages by addition of springs but not auxiliary bodies[END_REF].

• with a complementary actuator which can be a pneumatic or hydraulic cylinder, electromagnetic device, etc. (group C): In this case, a pneumatic or hydraulic cylinder is connected with some manipulator links [START_REF] Bayer | Industrial robot with a weight balancing system[END_REF][START_REF] Belyanin | Balanced manipulators[END_REF][START_REF] Fahim | Performance enhancement of robot arms through active counterbalancing[END_REF][START_REF] Yamamoto | Load balancer with automatic lifting force compensation[END_REF] or directly with the moving platform [START_REF] Wildenberg | Compensating system for a hexapod[END_REF]. There are also some approaches based on special counterweights, which are fluid reservoirs. Continuous gravity compensation is achieved by the pumping of fluid from the first reservoir-counterweight to the second.

The main drawbacks of the mentioned solutions when applied to robotics is that they ensure the gravity balancing of the robot for a given gravity load. However, when this load is varying (for example, during a palletizing task), they cannot ensure the cancellation of the gravity effects due to change of the payload. To overcome this difficulty, a few solutions have been proposed. The most resourceful ones are listed below:

• The use of active counterweights, such as in [START_REF] Fahim | Performance enhancement of robot arms through active counterbalancing[END_REF][START_REF] Carricato | A statically balanced Gough/Stewart-type platform: Conception, design, and simulation[END_REF] where the position of the counterweights on the balanced links varies and is modified through the use of additional actuators. This leads to the increase of the number of actuators and, obviously, to the development of a more complex controller.

• In [START_REF] Takesue | Design and prototype of variable gravity compensation mechanism[END_REF], a variable gravity compensation mechanism is proposed. It uses two types of linear springs and changes the equilibrium position of one of these. This also leads to the considerable increase of the number of actuators and the achievement of more complex controllers.

• The gravity compensation technique developed in [START_REF] Lauzier | Adaptive gravity compensation of decoupled parallel and serial manipulators using a passive hydraulic transmission[END_REF][START_REF] Lacasse | On the design of a statically balanced serial robot using remote counterweights[END_REF][START_REF] Laliberté | Closed-loop actuation routings for cartesian scara-type manipulators[END_REF] uses remote counterweights connected to the robot via a hydraulic transmission. As it has been shown in [START_REF] Lacasse | On the design of a statically balanced serial robot using remote counterweights[END_REF] the built prototype of the 7-degrees-of-freedom (DOF) robot is able to adapt its balancing counterweights to a payload of up to 10 kg, which was a maximal payload for the tested prototype. The main drawbacks of this technique is the use of hydraulic power systems (while the robot energy is provided by electricity) and the increase of the system footprint.

An additional drawback of all these techniques is the fol- lowing. When the payload is changing from a mass m 1 to a mass m 2 , there is a change of potential energy in the system equal to ∆V = gz(m 2 -m 1 ) (where g is the gravitational constant and z the altitude at which the load is changed). Therefore, if m 2 > m 1 , energy must be brought in the system to be able to adapt and to compensate the new payload. If m 2 < m 1 , if the robot was ideal, it should be able to stock the non necessary energy in capacitors or batteries. However, even if most robot actuators are now equipped with four-quadrant amplifiers which are able to stock additional energy in capacitors, as the stocking performance of capacitors is limited, many energy is still dissipated (under the form of heat) to avoid the overload of the capacitors.

Thus, all existing adaptive gravity-compensation systems of robots are not energy efficient. Please note that the energy efficiency of machines (but not only machines) in EU will becomes soon an important research problem as the ac-tual european policy is to target a decrease of 20% of consumed energy for 2020 (and 40% for 2030). In the present paper, taking into account that many robots used for the pick-and-place operations of heavy devices (such as palletization operations) are 4-DOF industrial robots such as the Kuka KR 700 PA presented in Fig. 1, we present an active balancing system able to compensate the gravity effects of a variable payload without the need of bringing additional energy in the whole robotic system. In the Section II, we show that it is possible to fully balance the gravity effects on the manipulator. Then, in Section III, we present the adaptive-gravity balancing system able to compensate the gravity effect of variable payloads. In Section IV, numerical validations made with the software ADAMS are performed. Finally, in Section V, conclusions are drawn.

It should be noticed that a patent on the proposed balancing system is currently pending [START_REF] Briot | Dispositif déquilibrage de charge pour bras articulé, appareil et procédé de manipulation de charge associé[END_REF].

II. Gravity-balacing of the manipulator only

A. Description of the robot architecture to balance without payload

Let us consider the kinematic architecture of the 4-DOF industrial robot depicted at Fig. 1(b). This architecture, made of revolute (R) joints only, allows the robot to perform Schönflies motions (i.e. its effector located at point P is able to carry out three translations along the base frame axes x 0 , y 0 and z 0 and one rotation around z 0 ). These four DOF are controlled through the actuation of motors linked to the R joints located at points A, B (two R joints are located at this point, one controlling the angle α, the second one the angle β) and P .

The links attached to the R joints located at: • B, C, F and E, • B, C, G and I, • C, D, H and G, form articulated planar parallelograms (also denoted as Π joints). The Π joints BCGI and CDHG ensure the axis of the R joints located at point P to be always vertical, while the Π joint BCF E allows for remoting the actuation of the link CD as close as possible to the base.

In the following of the paper, the gravity field g is equal to g= [0 0 -g] T (g > 0) and is directed along z 0 . Moreover, we denote as:

• S i the centre of mass of the link i, • m i the mass of the link i,

• ℓ QR the length between two arbitrary points Q and R, • z Q the position along the z 0 axis of anarbitrary point Q.

B. Computation of the gravitational potential energy

The robot (without payload) gravitational potential energy V is given by:

V = g 10 i=1 m i z Si (1)
in which

z S1 = z B + ℓ BS1 cos α (2) z S2 = z B + ℓ BS2 cos β (3) z S3 = z B + ℓ BE cos β + ℓ ES3 cos α (4) z S4 = z B + ℓ BC cos α -ℓ CS4 cos β (5) z S5 = constant (6) z S6 = z I + ℓ IS6 cos α (7) z S7 = z B + ℓ BC cos α + l CS7 (8) z S8 = z B + ℓ BC cos α + l CG -ℓ GS8 cos β (9) z S9 = z B + ℓ BC cos α -ℓ CD cos β + ℓ DS9 (10) z S10 = z B + ℓ BC cos α -ℓ CD cos β (11)
taking into account that z B and z I have constant values. Introducing ( 2)-( 11) into (1), and simplifying, we obtain

V = a cos α + b cos β + c (12) with a =g(m 1 ℓ BS1 + m 3 ℓ ES3 + m 4 ℓ BC + m 6 ℓ IS6 ) + g(m 7 ℓ BC + m 8 ℓ BC + m 9 ℓ BC + m 10 ℓ BC ) (13) b =g(m 2 ℓ BS2 + m 3 ℓ BE -m 4 ℓ CS4 -m 8 ℓ GS8 ) -g(m 9 ℓ CD + m 10 ℓ CD ) (14)
c =g z B ( 4
i=1 m i + 10 i=7 m i ) + g(m 5 z S5 + m 6 z I ) + g(m 7 l CS7 + m 8 l CG + m 9 ℓ DS9 ) = const (15)

C. Balancing of the manipulator

The gravity balancing of the manipulator will be achieved if and only if the potential energy becomes constant. For that, two usual methods are possible:

• the addition of two counterweights on links BC and EB (Fig. 2(a)),

• the addition of two zero-free length springs on links BC and EB (Fig. 2(b)).

C.1 Balancing of the manipulator by adding counterweights

Let us denote as (Fig. 2(a)): • m cw1 the mass of the counterweight on link BC which is located at the distance r cw1 of the R joint at point B,

• m cw2 the mass of the counterweight on link EB which is located at the distance r cw2 of the R joint at point B.

The potential energy V cw of the counterweights is given by:

V cw = -g(m cw1 r cw1 cos α + m cw2 r cw2 cos β) (16)
The total potential energy V + V cw is thus constant (i.e. the robot is gravity-balanced) if and only if the counterweights are designed such that:

m cw1 = a/(g r cw1 ) (17) m cw2 = b/(g r cw2 ) (18) A B C D P E F G H I x 0 z 0 y 0 O β α m cw2 m cw1 r cw1 r cw2 (a) A B C D P E F G H I x 0 z 0 y 0 O β α k 1 k 2 Q 1 Q 2 R 2 R 1 (b)

C.2 Balancing of the manipulator by adding zero-free length springs

Let us denote as (Fig. 2(b)):

• k 1 the stiffness of the spring on link BC acting between the points Q 1 and Q 2 ,

• k 2 the stiffness of the spring on link EB acting between the points R 1 and R 2 .

The potential energy V sp of the zero-free length springs is given by: Noting the fact that:

V sp = k 1 ℓ 2 Q1Q2 + k 2 ℓ 2 R1R2 2 (19)
ℓ 2 Q1Q2 = ℓ 2 BQ1 + ℓ 2 BQ2 -2ℓ BQ1 ℓ BQ2 cos α (20) ℓ 2 R1R2 = ℓ 2 BR1 + ℓ 2 BR2 -2ℓ BR1 ℓ BR2 cos β (21)
and introducing it into [START_REF] Ono | An underactuated manipulation method using a mechanical gravity canceller[END_REF], we get:

V sp = -k 1 ℓ BQ1 ℓ BQ2 cos α-k 2 ℓ BR1 ℓ BR2 cos β +d (22)
where d is a constant equal to

d = k 1 (ℓ 2 BQ1 + ℓ 2 BQ2 ) + k 2 (ℓ 2 BR1 + ℓ 2 BR2 ) 2 (23)
The total potential energy V + V sp is thus constant (i.e. the robot is gravity-balanced) if and only if the springs are designed such that:

k 1 ℓ BQ1 ℓ BQ2 = a (24) k 2 ℓ BR1 ℓ BR2 = b (25)
Now that we have considered the balancing of the robot, let us consider the balancing of the variable payload.

III. Adaptive gravity-balacing system

In the following of this Section, we consider that the robot manipulator is self-balanced using one of the method proposed in the previous Section (the balancing solutions will not be drawn on the following pictures for reason of drawing clarity) and we only focus on the balancing of the variable payload.

A. Description of the adaptive gravity-balacing system

In order to ensure the balancing of the variable payload, it is necessary to achieve the following modifications to the robot architecture.

First, we slightly modify the robot architecture by adding a revolute joint on the link EF at a new point J defined such that the points B, D and J are aligned (Fig. 3). With the new design, the robot becomes a pantograph linkage [START_REF] Arakelian | équilibrage des manipulateurs manuels[END_REF] with a magnification factor p = ℓ EF /ℓ EJ which links the position of point D to the position of point J such that:

z D -z B = p(z B -z J ) (26)
Thanks to this design and the well-kown pantograph properties [START_REF] Briot | Paminsa: a new family of decoupled parallel manipulators[END_REF], it is possible to cancel the gravity effect of a mass m applied at point P (f = m g) by applying a vertical balancing force of magnitude f bal = p g m at point J.

Then, in order to apply the vertical balancing force at point J, we add the balancing module to the robot (see Fig. 4). This module is made of four joints (three prismatic (P) joints located at points K, L and N and one revolute (R) joint at point M ) and one zero-free length spring of stiffness k p attached at points T 1 and T 2 with the lengths ℓ M T1 and ℓ M T2 always constant. In this module:

• the P joint at point K is passive but it integrates a brake that is activated when the robot is manipulating a constant load and deactivated when the balancing module is adapting to a new payload,

• the P joint at point N integrates a motor plus a brake: when the robot manipulates a constant load, the brake is activated and the motor is shut down, while, when the balancing module is adapting to a new payload, the motor is activated and the brake is deactivated,

• the R joint at point M and the P joint at point L are passive but they integrate brakes that are deactivated when the robot is manipulating a constant load and activated when the balancing module is adapting to a new payload. This adaptive module is able to ensure the balancing of the variable payload for any robot configuration. Moreover, the adaption does not need to bring additional energy as all the requested energy is already stored in the spring of stiffness k p . In the following sections, we explain how it works.

B. Balancing conditions B.1 For a payload mass m

As mentioned previously, during the manipulation of a constant payload of mass m, the P joints at points K and N are fixed via brakes, while the other joints are passive, and the resulting mechanism is depicted at Fig. 5. When the P joints at points K and N are fixed, the balancing module has two planar passive DOF which makes it possible to follow the displacement of the point J. Moreover, • the length ℓ M J becomes constant and will be denoted as ℓ M J = ℓ m , • the altitude z M of the point M becomes constant.

Let us show that under certain conditions, the balancing module ensure the gravity compensation of the payload. We define the angle γ as γ∠T 1 M T 2 (γ is not constant and depends on the robot configuration). The energy of the zerofree length spring with a stiffness k p is equal to:

V bal = k p ℓ 2 T1T2 2 (27)
or also, when considering that

ℓ 2 T1T2 = ℓ 2 M T1 + ℓ 2 M T2 - 2ℓ M T1 ℓ M T2 cos γ V bal = e -k p ℓ M T1 ℓ M T2 cos γ (28)
where

e = k p (ℓ 2 M T1 + ℓ 2 M T2 ) 2
For reasons of simplicity of computation, we consider that the centre of mass:

• of the link between points M and N is located at M ,

• of the link between points N and J is located at J and has a mass m J . Such conditions can be obtained through a proper link design and, eventually, the use of counterweights. Note that these conditions are not necessary, but simplifies the explanation of the ways the balancing module works.

The potential energy of the payload mass plus the balancing module is

V m = m g z P + m J z J + m mod g z M ( 29
)
where m mod is the total mass of the links a, b, c and d, and z M is the constant altitude of the point M . Noting the fact that z P = z D and introducing ( 26) into ( 29), we get

V m =m g (p(z B -z J ) + z B ) + m J g z J + m mod g z M =h + (m J -p m) g z J (30)
with h = m g (p + 1)z B + m mod g z M = constant. Finally, as

z J = z M -ℓ M J cos γ = z M -ℓ m cos γ, we get V m =h + (m J -p m) g (z M -ℓ m cos γ) =l + (p m -m J ) g ℓ m cos γ (31)
with l = h + (m J -p m) g z M = constant.
The balancing module can cancel the gravity effects of the payload mass m if the total potential energy V tot = V m + V bal is equal to a constant, which can be obtained if and only if (for fixed lengths ℓ M T1 , ℓ M T2 and stiffness k p ):

ℓ m = k p ℓ M T1 ℓ M T2 (p m -m J ) g (32)
resulting in V tot = e + l = constant. Thus, by properly fixing the length ℓ m = ℓ M J , we can balance the payload mass. Note that in general, (p mm J ) > 0, which means that ℓ m > 0.

B.2 Adaption to a new payload mass m ′

If now we want to balance a payload mass m ′ , by using the equation ( 32), we see that the length ℓ M J should adapt to a new constant length ℓ ′ m defined as:

ℓ ′ m = k p ℓ M T1 ℓ M T2 (p m ′ -m J ) g (33)
This adaption can be energy-free by using the following procedure. First, the robot must be stopped at the position the payload should be changed (fig. 6(a)). Thus, the altitude z P becomes constant. Then, the R joint at point M is also fixed while the brake of joint K is deactivated such that the global system is equivalent to the one depicted in Fig. 6. Note that, when the R joint at point M is fixed, this also fix the length ℓ P1P2 of the spring. As a result, during the adaption phase, the spring energy is totally stored (no energy dissipation).

The P joints at points K and L are passive while the P joint at point N is actuated. A simple mobility analysis shows that the balancing module has thus 1 DOF which can be controlled by the actuator in the P joint located at point N . This active P joint will be used to adapt the length ℓ M J to become equal to ℓ ′ m (Fig. 6(b)). The robot being fixed, when the active P joint is moving, the change of potential energy is only due to the displacement of the links of the balancing module during its adaption. This variation ∆V of energy is equal to:

∆V = m mod g ∆z M (34)
where ∆z M is the variation of altitude of the point M due to the module adaption. This variation of potential energy can be cancelled through a proper balancing system such as the one presented in [START_REF] Arakelian | Dynamic balancing of the scara robot[END_REF] which is depicted at Fig. 7. Thus, as the variation of potential energy is null during the adaption phase, the robot does not need (theoretically) any additional energy to adapt to the new payload m ′ , that will be compensated thanks to the optimal adjustment of the length ℓ ′ m defined in [START_REF] Lauzier | Adaptive gravity compensation of decoupled parallel and serial manipulators using a passive hydraulic transmission[END_REF]. Once the adaption is done, the robot is gravity-balanced for the new payload m ′ , i.e. the robot actuators do not need to compensate the gravity effects of the mass m ′ (Fig. 6(c)).

C. Discussion

In the previous Section, it has been mentioned that, during the adaption phase, the robot must be stopped, which will lead to a increase of the operation cycle time. However, in the other techniques [START_REF] Fahim | Performance enhancement of robot arms through active counterbalancing[END_REF][START_REF] Carricato | A statically balanced Gough/Stewart-type platform: Conception, design, and simulation[END_REF][START_REF] Takesue | Design and prototype of variable gravity compensation mechanism[END_REF][START_REF] Lauzier | Adaptive gravity compensation of decoupled parallel and serial manipulators using a passive hydraulic transmission[END_REF][START_REF] Lacasse | On the design of a statically balanced serial robot using remote counterweights[END_REF][START_REF] Laliberté | Closed-loop actuation routings for cartesian scara-type manipulators[END_REF] able to balance a variable load, the robot should also be stopped during the adaption. Thus, stopping the robot is not a drawback due to our balancing technique, but to all adaptive balancing techniques. In order to overcome this drawback, the adaption can be down when the robot is moving. However, this does 14th World Congress in Mechanism and Machine Science, Taipei, Taiwan, 25-30 October, 2015 OS13-038 not ensure anymore the system to be energy-free during the adaption phase.

Please note also that we claim that the adaption is energyfree. However, we do not take into account the fact that the actuator in the P joint located at point N needs energy to move against the friction in the joint. However, our experience in the field has shown that the friction effects are usually very small with respect to the gravity effects which have been compensated.

Finally, the conditions of balancing for the payload described in [START_REF] Takesue | Design and prototype of variable gravity compensation mechanism[END_REF] show that, if m = 0, the length ℓ M should be negative, which is unconvenient from a design point of view. In order to overcome this difficulty, two ways are proposed: 1. we can put a load m c > m J on the robot end-effector that will never be removed to ensure that the length ℓ M will be always positive. 2. it is possible to show in Section II-C that a partial gravity-balancing of the robot architecture can be achieved with counterweights and/or springs so that the potential gravitational energy of the robot becomes a linear function of z P only, i.e. the robot potential energy has the form V = m P z P + constant, with m P > 0. In such a case, the balancing condition (32) can be rewritten as:

ℓ m = k p ℓ M T1 ℓ M T2 (p (m + m P ) -m J ) g (35)
As a result, an optimal design of the robot can ensure that the term (p m + m P -m J ) is always positive.

IV. Numerical validations

In this Section, we present numerical validations made with ADAMS showing that the balancing system is able to compensate a variable payload. We will consider in the following of the Section that the robot is self-balanced by using one of the techniques of Section II. This assumption is made because the paper does not focus on the balancing of the robot itself (which is achieved trough the use of very common techniques which have already been validated in the past) but on the gravity-compensation obtained by the use of the adaptive module.

The simulated robot has the following characteristics: • the origin of the base frame is at point B, and the point P (position of the end-effector) is superposed with the point D,

• the robot length are: tem designed in Fig. 7 with counterweights of total mass equal to 10 kg,

ℓ BC = 1.3 m, ℓ CD = 1.3 m, ℓ GH = 1.3 m, ℓ BE = 0.3 m, ℓ CF = 0.3 m, ℓ BI = 0.3 m, ℓ CG = 0.
• the total centre of mass of links b, c and d is located at point M ,

• the mass of the link e is m J = 5 kg and its centre of mass is located in point J,

• the spring has a stiffness k p = 20000 N/m. First, the robot has to manipulate a payload of mass m = 100 kg. As a result, the length ℓ M J of the module should be equal to ℓ M = 0.467 m to balance the gravity effects of the payload m. The payload is manipulated by the robot on the trajectory defined in Fig. 8. The results in terms of robot input torques (Fig. 9) required for manipulating this payload without the gravity-compensation module (full line) and with the gravity-compensation module with the length ℓ M J equal to ℓ M = 0.467 m (dotted line) show that, with the use of the adaptive module, no input torques are required to move the payload.

Then, at the end of the trajectory defined in Fig. 8 (at the point x P = 1.35 m, y P = 0 m and z P = 0.63 m), we change the load and the robot must be able to carry out a mass of m ′ = 300 kg. As a result, the length ℓ M J of the module should be equal to ℓ ′ M = 0.155 m to balance the gravity effects of the payload m ′ . We do not show here the variation of potential energy during the process of adaption to the new length because it is equal to zero all the time, i.e. the compensation module does not bring energy to adapt to the new length. The new payload is manipulated by the robot on the trajectory defined in Fig. 10. The results in terms of robot input torques (Fig. 11) required for manipulating this payload without the gravity-compensation module (full line) and with the gravity-compensation module with the length ℓ M J equal to ℓ M = 0.467 m (dotted line) show that, with the use of the adaptive module, no input torques are required to move the payload.

V. Conclusion

In this paper, a new gravity-compensation module for 4-DOF robot manipulating variable and heavy loads has been proposed. The new balancing scheme allows for the compensation of the gravity effects of the manipulated payload which may vary. Contrary to most of gravity balancing techniques able to compensate the gravity effects of variable loads, this compensation module is energy efficient, i.e. the adaption to the new manipulated payload does not require to bring energy inside the system.

Simulations of the mechanism with ADAMS have been performed and have shown the efficiency of the proposed approach.

Future works will concern the optimal design of a prototype in order to experimentally validate this balancing technique which can find wide applications to the solution of practical problems.

14thFig. 1 .

 1 Fig.1. The Kuka KR 700 PA able to carry out variable payloads up to 700 kg.

Fig. 2 .

 2 Fig. 2. Balancing of the robot manipulator under consideration. (a) via counterweights, (b) via zero-free length springs

14th

  World Congress in Mechanism and Machine Science, Taipei, Taiwan, 25-30 October, 2015 OS13-038

Fig. 3 .Fig. 4 .

 34 Fig.3. Modification of the robot architecture so that it becomes a pantograph linkage.

14thFig. 5 .

 5 Fig. 5. The robot with the adaptive balancing module and a payload mass m: the P joints at points K and N are fixed while the others joints of the adaptive module are passive.

14thFig. 6 .Fig. 7 .

 67 Fig. 6. Adaption of the balancing system

Fig. 8 .

 8 Fig. 8. Trajectory during the manipulation of the payload m = 100 kg, defined for y P = 0 m.

14thFig. 9 .

 9 Fig. 9. Input torques for manipulating the payload m = 100 kg: without (full line) and with (dotted line) the gravity-compensation module.

Fig. 10 .Fig. 11 .

 1011 Fig. 10. Trajectory during the manipulation of the payload m ′ = 300 kg, defined for y P = 0 m.

14th World Congress in Mechanism and Machine Science, Taipei, Taiwan,25-30 October, 2015


Georges Pagis
email: georges.pagis@irccyn.ec-nantes.fr

Sébastien Briot
email: sebastien.briot@irccyn.ec-nantes.fr

Nicolas Bouton
email: nicolas.bouton@ifma.fr

Philippe Martinet
email: philippe.martinet@irccyn.ec-nantes.fr

DRAFT : Optimal Motion Generation for Exiting a Parallel Manipulator from a Type 2 Singularity

Parallel robots have proved they can have better performances than serial ones in term of rigidity and payload-to-weight ratio. Nevertheless their workspace is largely reduced by the presence of singularities. In particular, the Type 2 singularities (parallel singularities) separate the workspace in different aspects, corresponding to one (or more) robot assembly modes. In order to enlarge the workspace size, it has been proved that a mechanism can cross the singularity loci by using an optimal motion planning. However, if the trajectory is not robust to modeling errors, the robot can stop in the singularity and stay blocked.

Therefore, the objective of this paper is to show new general procedure that allows the exit of a parallel manipulator from a Type 2 singularity. Two strategies are presented. The first one proposes the computation of an optimal trajectory that makes it possible for the robot to exit the singularity. This trajectory must respect a criterion that ensures the consistency of the robot dynamic model all along the singularity loci. The second trajectory consists in declutching one of the robot actuator in order to change the kinematic and dynamic behavior of the mechanism so that no singularity exists anymore. Theoretical works are il-

Introduction

Parallel manipulators have many advantages in terms of acceleration capacities and payload-to-weight ratio, but one of their main drawbacks concerns the presence of singularities [START_REF] Bonev | Singularity analysis of 3-dof planar parallel mechanisms via screw theory[END_REF][START_REF] Gosselin | Singularity analysis of closed-loop kinematic chains[END_REF][START_REF] Conconi | A new assessment of singularities of parallel kinematic chains[END_REF][START_REF] Arakelian | Increase of singularity-free zones in the workspace of parallel manipulators using mechanisms of variable structure[END_REF][START_REF] Zlatanov | Constraint singularities of parallel mechanisms[END_REF] which divide the workspace into different aspects, each aspect corresponding to one (or more) assembly modes [START_REF] Merlet | Parallel Robots[END_REF]. The physical interpretation of a singularity in kinematics refers to the parallel manipulators configurations in which either the manipulator loses the ability to move in some directions, or its platform gains instantaneously some unconstrained motions.

In [START_REF] Gosselin | Singularity analysis of closed-loop kinematic chains[END_REF], three different types of singularities are described:

• Type 1 singularities are configurations where the platform loses a degree of freedom; the Type 1 singularities are configurations where the endeffector reaches the limits of the workspace,

• Type 2 singularities are configurations where an uncontrollable motion of the platform appears; the Type 2 singularities have much more complex loci, which divides the workspace in differ-ent aspects, resulting in a reduction of the manipulator's workspace; in general, in the neighborhood of such singularities, the reaction in passive and active joints considerably increase, thus preventing the manipulator to cross them,

• Type 3 singularities are configurations where both Type 1 and Type 2 singular configurations appear at the same time.

Moreover, in addition of these first works, other types of singularities, such as the constraint singularities [START_REF] Zlatanov | Constraint singularities of parallel mechanisms[END_REF], have been studied. For a global overview of the singularity problem, the reader is referred to [START_REF] Conconi | A new assessment of singularities of parallel kinematic chains[END_REF]. However, the present paper focus only on Type 2 singularities as they are probably the most constraining singularities a parallel manipulator can meet.

In order to increase the workspace size, largely reduced by Type 2 singularity, several approaches have been envisaged in the literature. The most usual one is the design of parallel robots without singularities. Many works have been proposed in this direction, using optimal design approaches [START_REF] Briot | Optimal technology-oriented design of parallel robots for high-speed machining applications[END_REF][START_REF] Liu | Performance atlases and optimum design of planar 5r symmetrical parallel mechanisms[END_REF] or even the creation of decoupled mechanisms without any singularity [START_REF] Kong | A class of 3-dof translational parallel manipulators with linear input-output equations[END_REF][START_REF] Gogu | Structural synthesis of fullyisotropic translational parallel robots via theory of linear transformations[END_REF]. However, except in the case of decoupled robot that have a lack of stiffness, the design of robots in which only a portion of the workspace is free of singularity is generally envisaged.

Another solution was to use redundancy [START_REF] Kurtz | Multiplegoal kinematic optimization of a parallel spherical mechanism with actuator redundancy[END_REF][START_REF] Yi | Force and stiffness transmission in redundantly actuated mechanisms: The case for a spherical shoulder mechanism[END_REF][START_REF] Kotlarski | Optimization strategies for additional actuators of kinematically redundant parallel kinematic machines[END_REF]. However, this solution is costly and increase the control complexity. To avoid this problem, it has been proposed in [START_REF] Arakelian | Increase of singularity-free zones in the workspace of parallel manipulators using mechanisms of variable structure[END_REF] to use mechanisms with variable actuation modes to increase the size of the workspace. These mechanisms allow, without the addition of any supplementary actuators, to change the way they are actuated, via the use of clutches. This low-cost solution is attractive, however, the change in the actuation mode must be done when the manipulator is stopped, thus increasing the time for doing the requested trajectory.

A last solution is to create mechanisms with singularities inside the workspace, but to plan trajectories that allow the manipulators to go from one assembly mode to another. Two types of approaches have been developed in this direction:

1. the non singular assembly mode changing [START_REF] Mcaree | An Explanation of Never-Special Assembly Changing Motions for 3-3 Parallel Manipulators[END_REF][START_REF] Zein | Non-singular assembly-mode changing motions for 3-rpr parallel manipulators[END_REF]: by encircling cusp points, it has been demonstrated that the robot assembly modes can be changed; however, the computation of the cusp point loci is still a challenge in kinematics and such solution requires high mathematical skills. Moreover, it does not guaranty that the manipulator will be able to reach the whole workspace aspects, 2. the singular assembly mode changing [START_REF] Briot | Optimal force generation of parallel manipulators for passing through the singular positions[END_REF][START_REF] Ider | Inverse dynamics of parallel manipulators in the presence of drive singularities[END_REF][START_REF] Jui | Path tracking of parallel manipulators in the presence of force singularity[END_REF]: using the manipulator inertial properties, it has been demonstrated that it was possible to cross a Type 2 singularity without any considerable increase in the joint reactions and input torques; in [START_REF] Briot | Optimal force generation of parallel manipulators for passing through the singular positions[END_REF], the physical condition for crossing a Type 2 singularity has been demonstrated.

The last approach is promising. However, if the trajectory for crossing the singularity is poorly planned (because of problems of robustness to modeling errors, for example), there is a risk that the mechanism can stop on the singularity and stay blocked inside. If such case appears, some methodologies for exiting the singularities must be found. Therefore the present paper aims at defining two strategies for exiting a Type 2 singularity if the manipulator is stopped inside.

Dynamic modelling of parallel mechanisms

Lagrangian formalism

Let us consider a parallel manipulator composed of m links, n degrees of freedom (dof ) and driven by n actuators. In general, for such mechanism, the Lagrangian L of the system is expressed as a function of both the actuator and platform coordinates, i.e.

L = L (q, q, x, v) (1)
where

• q = [q 1 ,
q 2 , ..., q n ] T and q = [ q1 , q2 , ..., q n ] T represent respectively the vector of active joints variables and active joints velocities,

• x = [x, y, z, φ, ψ, θ] T and v = ẋ, ẏ, ż, φ, ψ, θ T are the end-effector pose parameters and their derivatives with respect to time, respectively. x, y and z represent the position of the platform controlled point and φ, ψ and θ the orientation parameters of the platform about three axes a φ , a ψ and a θ .

The Lagrangian dynamic formulation for the considered parallel manipulator can be thus expressed as [START_REF] Khalil | Modeling, Identification and Control of Robots[END_REF],

τ = d dt ∂L ∂ q - ∂L ∂q + B T λ (2)
where

• τ is the vector of the input efforts,

• λ is the vector of the Lagrange multipliers, whose expression can be computed using

A T λ = d dt ∂L ∂v - ∂L ∂x = w p (3)
in which

• A and B are two matrices deduced from the kinematic model, such that Av = B q [6],

• w p is the wrench applied to the platform by the legs and external forces [START_REF] Khalil | A novel solution for the dynamic modeling of gough-stewart manipulators[END_REF].

Then, by substituting (3) into (2), and assuming that the matrix A is regular, one can obtain [START_REF] Khalil | Modeling, Identification and Control of Robots[END_REF]:

τ = w b + J T 0 w p , in which w b = d dt ∂L ∂ q - ∂L ∂q (4) where
• 0 w p is the expression of the wrench w p in the base frame, i.e. 0 w p = Dw p with D the matrix relating the platform twist t (expressed in the base frame) to the vector v by t = Dv [START_REF] Merlet | Parallel Robots[END_REF],

• J = 0 A -1 B is the Jacobian matrix between the platform twist t and q, with 0 A is the expression of the matrix A in the base frame, i.e. 0 A = AD -1 .

Thus, by analyzing (4), it can be deduced that if matrix 0 A is singular, the dynamic model (4) cannot be computed. As a consequence, the next part deals with the conditions of singularity for matrix 0 A.

Parallel mechanism's singularities

As presented in the introduction, the authors of [START_REF] Gosselin | Singularity analysis of closed-loop kinematic chains[END_REF] present three different types of singularities that can be obtained through the analysis of the kinematic model:

0 At = B q (5)
Type 1 singularities occur when the mechanism is in a position such as the kinematic matrix B becomes rank deficient. In such configurations, the mechanism loses the ability to move in one given direction.

Type 2 singularities occur when the kinematic matrix 0 A becomes rank deficient. The Type 2 singularities divides the workspace in different aspects, resulting in a reduction of the manipulator's workspace. Moreover, in the presence of such singularities, the robot may also not be able to resist to an external wrench applied on the platform and the reaction in joints grows to infinity.

Type 3 singularities are configurations where both Type 1 and Type 2 singular configurations appear at the same time. They are discarded in the following of the paper as they appear if both Types 1 and 2 singularity exist.

In the next section, it is explained how to pass through a Type 2 singularity without making the dynamic model (4) degenerating, thus keeping the joint reactions in the parallel manipulator finite.

Condition for passing through a Type 2 singularity

In [START_REF] Briot | Optimal force generation of parallel manipulators for passing through the singular positions[END_REF], it has been proved that a parallel mechanism can cross a Type 2 singularity without making the dynamic model (4) degenerating if and only if the trajectory respects a particular criterion at the singular point. Indeed, on a Type 2 singularity, the columns of 0 A are linearly dependent, i.e. there exist a vector t s such that:

0 At s = 0 ⇔ t s T 0 A T = 0 (6)
The vector t s represents the twist of the uncontrollable motion of the platform in the singularity locus [START_REF] Merlet | Parallel Robots[END_REF]. Thus, multiplying (3) by t T s leads to :

t T s 0 A T λ = 0 ⇒ t T s 0 w p = 0 (7)
As a result, if the desired manipulator motion doesn't guaranty the creation of a wrench w p that respects the condition ( 7), the dynamic model is degenerated and the manipulator desired input efforts must grow to infinity to produce the desired platform motion. Physically, this condition means that the parallel manipulator can cross the Type 2 singularity if and only if the wrench 0 w p exerted by the legs and external efforts on the platform is reciprocal to the twist t s of the uncontrollable motion in the Type 2 singularity. Based on this observation, it has been proved in [START_REF] Briot | Optimal force generation of parallel manipulators for passing through the singular positions[END_REF] that it is possible to plan a trajectory that crosses a Type 2 singularity as long as the criterion ( 7) is respected on the singularity. It should be finally mentioned that, for one given set of robot inertial parameters, this condition depends only on the input joint and platform coordinates, velocities and accelerations.

Methodologies for exiting a singularity

If any parallel manipulator user wants to cross a Type 2 singularity by applying the criterion [START_REF] Briot | Optimal technology-oriented design of parallel robots for high-speed machining applications[END_REF], it should be aware that if the trajectory is poorly planned (because of problems of robustness to modeling errors, for example), the mechanism can stop on the singularity and stay blocked inside. If such case appears, some methodologies for exiting the singularities must be found. This part aims at defining two strategies for getting out of Type 2 singularities. The first one consists in generating an optimal motion for the mechanism in order to follow an exit trajectory that guaranties the input efforts continuity all along the path. The second solution proposed relies on declutching one of the motor in order to change the mechanism's dynamical behaviour.

First solution: generation of an optimal motion

The main idea of this solution can be explained as follows. Let us assume that the mechanism is stopped on the singularity locus at a point of coordinate x s (as the 5R mechanism presented in Fig. 1). To exit the singularity, the mechanism must generate a trajectory that:

• is tangent to the singularity locus at point x s as, when stopped, it cannot generate a motion ortogonal to the singularity locus,

• is C 2 continuous to ensure the input effort continuity all along the path,

• respects the criterion (7) at point x s .

However, the mechanism being stopped into the singularity, i.e. its velocity being null when starting the motion at x s , if there is no external wrench applied such as the gravity field, this trajectory may fail exiting the robot from the singularity as it may have not enough energy to compensate the friction and local mechanical instability effects (due to the robot loss of stiffness) around the singularity point. As a result, in order to acquire enough energy, it is worth moving the robot inside the singularity loci during a certain amount of time before exiting the singularity. Thus, the trajectory can be cut into two parts:

1. a first trajectory that makes the robot platform move along the singularity locus, 2. a second trajectory that is C 2 continuous with the first one and able to make the robot go away from the singularity locus.

Obviously, the whole trajectory must guarantee that the input efforts remain finite during the whole motion. The way to compute these two different trajectories is detailed in the next sections.

First trajectory: moving along the singularity locus

Trajectory generation along the singularity

In general, the computation of the singularity loci in the workspace is not an easy and straightforward problem [START_REF] Merlet | Parallel Robots[END_REF]. Therefore, it is mostly difficult to get the symbolic constraint equations for the platform pose coordinates that impose the robot to stay in singularity. On the contrary, it is shown below that it is possible to find some sets of platform velocity parameters that can guaranty the robot to stay on the singularity loci. Differentiating ( 6) with respect to time, it comes that:

0 A ṫs + 0 Ȧt s = 0 [START_REF] Liu | Performance atlases and optimum design of planar 5r symmetrical parallel mechanisms[END_REF] in which, as matrix 0 A depends on the variables x and q only [6],

0 Ȧ = i ∂ 0 A ∂x i ẋi + ∂ 0 A ∂q i qi (9)
where x i (q i , resp.) is the i-th coordinate of the vector x (q, resp.). Multiplying the right side of (9) by t s , it comes:

0 Ȧt s = i ∂ 0 A ∂x i t s ẋi + ∂ 0 A ∂q i t s qi = A d x v + A d q q = A d x D -1 t + A d q q ( 10
)
where the i-th column of A d x (A d q , resp.) is equal to

∂ 0 A ∂x i t s ( ∂ 0 A ∂q i t s , resp.
). Introducing (5) into (10) leads to

0 Ȧt s = A d x D -1 t + A d q B -1 0 At = A d x D -1 + A d q B -1 0 A t = A x t (11)
Putting this expression into [START_REF] Liu | Performance atlases and optimum design of planar 5r symmetrical parallel mechanisms[END_REF], it comes that

0 A ṫs + A x t = 0 ⇒ t = -A -1 x 0 A ṫs = A t ṫs (12)
As vectors t s and ṫs are only defined on the singularity loci, [START_REF] Yi | Force and stiffness transmission in redundantly actuated mechanisms: The case for a spherical shoulder mechanism[END_REF] gives the conditions such that the robot stays in singularity. If the condition ( 12) is not verified for at least one value of the vector ṫs , the manipulator could potentially exit the singularity.

As a result, to move the robot on the singularity, two conditions must be achieved:

• (12) for obtaining the kinematic constraints such that the robot can stay in singularity,

•

for obtaining the dynamic constraints that guarantee the dynamic model to be not degenerated.

Introducing ( 12) into ( 7) leads to the obtention of a nonlinear differential equation of the second order that must be solved for computing the robot displacement on the singularity loci.

Computation of the input efforts

Even if the criterion ( 7) is respected, it is still problematic to compute the input efforts when the robot is in the singularity. Having a look at (3), if p denotes the rank of the matrix A in singularity (p < n), it appears that only p equations are linearly dependent. Thus, there is an infinity of possible sets for the values of the n Lagrange multipliers λ that satisfies the equation [START_REF] Conconi | A new assessment of singularities of parallel kinematic chains[END_REF]. Physically speaking, this means that the robot is locally over-constrained in the singularity. As a result, several approaches could be chosen to compute the values of the Lagrange multipliers such as the use of the pseudo-inverse of the matrix A (as it was done in the case of actuation redundant parallel robots [START_REF] Müller | Internal preload control of redundantly actuated parallel manipulators -its application to backlash avoiding control[END_REF]) or setting (n -p) Lagrange multipliers to a given constant value. This last approach will be used in the following of the paper.

Second trajectory: exiting the singularity locus

Trajectory generation for exiting the singularity

Once the mechanism has acquired enough energy, the second trajectory that allows the exit from the singularity loci must be followed. This trajectory must be C 2 continuous with the first one in order to avoid any torque discontinuity (Fig. 1). Several types of C 2 curves can thus be used, such as Lamé curves [START_REF] Gauthier | Optimization of a test trajectory for scara systems[END_REF], clothoids [START_REF] Kanayama | Trajectory generation for mobile robots[END_REF][START_REF] Walton | A controlled clothoid spline[END_REF] or also S-curves [START_REF] Meckl | Optimized s-curve motion profiles for minimum residual vibration[END_REF]. In the following of the paper, clothoids are used. The way to link the clothoids to the trajectory defined in the section 3 is not detailed here. For more informations the reader is referred to [START_REF] Wilde | Computing clothoid segments for trajectory generation[END_REF].

One could wonder how to choose the aspect of the workspace in which the robot must go after exiting the singularity? Indeed, as on the singularity loci, one platform dof is not constrained, the robot is locally under-actuated. As a result, it seems impossible to plan a trajectory that is opposed to the free dynamics of this unconstrained dof. To know what is the best assembly mode to reach, the natural direction of motion of the mechanism free of actuation forces must be defined at the exit point. This can be done in simulation by declutching all actuators at the exit point after the motion along the singularity locus and by using the direct dynamic model that express the mechanism acceleration as a function of the input efforts (that are null in this case) to compute the robot displacement [START_REF] Khalil | Modeling, Identification and Control of Robots[END_REF]. The mechanism will spontaneously move to one of the workspace aspects that will be the one to reach with the exit trajectory.

Computation of the input efforts

Theoretically, the matrix 0 A is not invertible only on the Type 2 singularity locus. However when the mechanism is very close to a singular position, the conditioning of the matrix 0 A is very high (Fig. 1). The dynamic model is therefore still degenerated in a area around the singularity locus. Inside this zone, it is irrelevant to use the numerical invert of 0 A to compute the input efforts. The best way to do is to consider that the robot is still in singularity in this area and to compute the input efforts using the methods presented in the Section 3.1.1.

When the robot exits this zone, i.e. when the conditioning of the matrix 0 A becomes acceptable, the input efforts can be computed using ( 2) and (3). In the following of the paper, the value of the conditioning of the matrix 0 A is said acceptable if it is equal or inferior to 100. Obviously, this value is arbitrary, but it will be shown in the next section that it leads to correct results.

Discussion on the amount of energy necessary for exiting the singularity

It has been explained above that the change between the two trajectories must be achieved when the mechanism has acquired enough energy to exit the singularity. So, when does this appear and how to have the corresponding information? This point is still an open question for the moment, however, one possible answer is to consider the energy consumpted by the actuators for compensating the friction in the passive joints and the energy of the moving robot platform and passive links. If the amount of the robot platform and passive links energy is large enough (e.g. 5 times larger) with respect to the amount of energy for compensating the dissipative terms, thus the change on the trajectory can be done. This point must be deeply analyzed in our future work.

Second solution: declutch one of the actuators

A second solution for exiting the singularity is to change the robot dynamics by changing its actuation mode, e.g. by declutching one of the actuators from the rest of the robot. As a consequence, the parallel mechanism becomes underactuated, which completely changes its singular configurations and dynamic properties. Without loss of generality, let us assume that the input effort of the actuator n is vanished, i.e. the last component of vector τ of ( 2) is set to 0. Rewritting [START_REF] Gosselin | Singularity analysis of closed-loop kinematic chains[END_REF], it comes that:

     τ 1 . . . τ n-1 0      =      w b 1 . . . w b n-1 w b n      +      b 1 . . . b n-1 b n      λ, w p =      a 1 . . . a n-1 a n      λ (13
) where τ i is the i-th component of the vector τ , w b i the i-th component of the vector w b , λ i is the i-th component of the vector λ, a i the i-th row of the matrix A T and b i the i-th row of the matrix B T . Rearranging these equations,

   τ 1 . . . τ n-1    =    w b 1 . . . w b n-1    +    b 1 . . . b n-1    λ (14) w p -w b n =        a 1 . . . a n-1 a n b n        λ = A * λ ( 15
)
in which the matrix A * is now invertible and can be used to compute the Lagrange multipliers in the singularity loci. Obviously, the expression (15) must be used on the singularity only (and also in a small zone around, as explained in the Section 3.1.2). As soon as the robot is nomore on the singularity, matrix A becomes regular and ( 13) can be used as it. However, as one actuator is declutched and as the robot is under-actuated, the direct dynamic model must be used for computing the robot displacement and being sure that there is no link collision during the motion [START_REF] Khalil | Modeling, Identification and Control of Robots[END_REF]. In order to avoid this problem, the best way to proceed is to give a small impulse of motion to only one of the actuators and to stop it quite quickly in order to avoid a too large platform displacement.

Discussion

The two proposed solutions have advantages and drawbacks. In the first solution, the mechanism is fully controlled during its whole motion while in the second one, as one actuator is declutched, there is a risk that the robot falls down under the application of external efforts such as the gravity. However, the first solution requires larger computational skills and needs to define two special types of trajectories whereas the second one seems simpler in terms of computation complexity. Therefore, both solutions have interests, depending of robots on which they are applied.

A B C (x,y) D E O x y q 2 q 1 ψ 1 L 1 a L 4 L 3 L 2 ψ 2
Another question concerns the fact that, in reality, the mechanism will never be exactly stopped on the singularity locus. However, it can be decided that, if the determinant of the matrix A is greater than a given value, the eigenvector of A corresponding to the smallest eigenvalue is equal to the twist t s and all derivations can be achieved using this assumption.

Illustrative example

The two methodologies proposed to exit a Type 2 singularity are applied and simulated using the model of a 5R planar mechanism.

Description and modelling of the 5R mechanism

The planar 5R parallel mechanism is composed of two legs connecting the end-effector located at point C to the base by a revolute joint, as shown in Fig. 2. Each leg is composed of two rigid elements, called the proximal and distal elements, respectively. The proximal element is linked to the base via an actuated revolute joint and to the proximal element via a passive revolute joint. The two revolute joints connecting the legs to the base are actuated (located at the points A and E on the Fig. 2), which enables the end-effector located at point C to be positionned in the plane (Oxy). The notations used in the following of the paper are:

• q 1 and q 2 are the angles of the actuated revolute joints

• ψ 1 and ψ 2 are the passive angles of joints located at points B and D

• L i is the length of the leg i

• x and y are the end-effector's positions along the x and y axes, respectively,

• a is the distance between the two actuators.

For the 5R planar mechanism, Type 2 singularities occur when the two distal elements are parallel [START_REF] Liu | Kinematics, singularity and workspace of planar 5r symmetrical parallel mechanisms[END_REF]. Two different cases may appear, as shown on the Fig. 3, either ψ 1 = ψ 2 (Fig. 3(a)) or ψ 1 = ψ 2 + π (Fig. 3(b)).

In the following of the paper, the gravity field is directed along the z-axis. The equations of the dynamic model for the 5R mechanisms have been described in [START_REF] Briot | Optimal force generation of parallel manipulators for passing through the singular positions[END_REF], and the vectors and matrices necessary for com- puting the dynamic model ( 2) take the form:

w b = m B 1 L 2 1 q1 + m C 1 L 1 (ÿ cos q 1 -ẍ sin q 1 ) m D 2 L 2 4 q2 + m C 3 L 4 (ÿ cos q 2 -ẍ sin q 2 ) (16)
w p = m C 2 ẍ -m C 1 L 1 q1 sin q 1 + q1 2 cos q 1 m C 2 ÿ + m C 1 L 1 q1 cos q 1 -q1 2 sin q 1 + -m C 3 L 4 q2 sin q 2 + q2 2 cos q 2 m C 3 L 4 q2 cos q 2 -q2 2 sin q 2 (17)
A = x + a/2 -L 1 cos q 1 y -L 1 sin q 1 x -a/2 -L 4 cos q 2 y -L 4 sin q 2 = a 11 a 12 a 21 a 22 (18) B = - L 1 (sin q 1 a 11 -cos q 1 a 12 ) 0 0 L 4 (sin q 2 a 21 -cos q 2 a 22 ) (19) with q1 q2 = B -1 A ẋ ẏ q1 q2 = B -1 A ẍ ÿ + Ȧ ẋ ẏ -Ḃ q1 q2 (20)
and

m C 1 = m 22 r 2 (1 -r 2 ) m C 2 = m 22 r 2 2 + m 32 r 2 3 + m 23 + m 21 m C 3 = m 32 r 3 (1 -r 3 ) m B 1 = m 12 r 2 1 + m 22 (1 -r 2 ) 2 + m 13 + m 21 m D 2 = m 32 (1 -r 3 ) 2 + m 42 r 2 4 + m 31 + m 41 (21)
in which r 1 (r 2 , r 3 , r 4 , resp.) is a ratio such that r 1 L 1 (r 2 L 2 , r 3 L 3 , r 4 L 4 , resp.) is the distance between the center of masses of the element 1 (2, 3, 4, resp.) and the point A (B, D, E, resp.), and

  m j1 m j2 m j3   =   1 1 1 r j 0 1 -r j r 2 j L 2 j 0 (1 -r j ) 2 L 2 j   -1   m j 0 I j   , for j = 1, ..., 4 (22)
where m j is the mass of the link j and I j its axial moment of inertia expressed at the center of masses (for j = 1, ..., 4). For deeper explanations on the way to obtain these expressions, the reader is referred to [START_REF] Briot | Optimal force generation of parallel manipulators for passing through the singular positions[END_REF].

In the following of the paper, the values of the geometric and inertial parameters of the robot are set to:

• L 1 = L 2 = L 3 = L 4 = 0.

Moving a 5R mechanism out of a singular position

Let us now assume that the 5R mechanism is blocked on the singularity, such as represented in Fig. 4.

In this example, the end-effector position is set at: x 0 = [0.13m, 0.12m] T . This section presents the calculation of the exit trajectory computed using the two methodologies.

Moving along the singularity locus

In order to move along the singularity, it has been shown in Section 3 that the two conditions ( 7) and ( 12) must be respected. For the studied robot, the vector t s that defined the uncontrollable twist of the robot in the Type 2 singularity is equal to [-sin ψ, cos ψ] T [START_REF] Briot | Optimal force generation of parallel manipulators for passing through the singular positions[END_REF], where

ψ = tan -1 y -L 1 sin q 1 x -L 1 cos q 1 -a/
-sin ψ [m C 2 ẍ -m C 1 L 1 q1 sin q 1 + q1 2 cos q 1 -m C 3 L 4 q2 sin q 2 + q2 2 cos q 2 ] + cos ψ [m C 2 ÿ + m C 1 L 1 q1 cos q 1 -q1 2 sin q 1 +m C 3 L 4 q2 cos q 2 -q2 2 sin q 2 ] = 0 (24)
in which the values of qi and qi are expressed in [START_REF] Khalil | A novel solution for the dynamic modeling of gough-stewart manipulators[END_REF]. Moreover, developping condition [START_REF] Yi | Force and stiffness transmission in redundantly actuated mechanisms: The case for a spherical shoulder mechanism[END_REF], it comes that:

ẋ ẏ = A -1 x A ψ cos ψ ψ sin ψ where A x = A d x + A d q A (25) A d x = -sin ψ cos ψ -sin ψ cos ψ , A d q = - L 1 cos(ψ -q 1 ) 0 0 L 4 cos(ψ -q 2 ) (26)
Starting with ẋ = -0.0127 m/s and ẏ = 0.0124 m/s, the non-linear differential equations are solved using Matlab toolboxes for a trajectory duration of 1 s. The resulting values are plotted in Fig. 5 for t ≤ 1s.

After 1 s of motion, the mechanism is in the position x s = [0.11, 0.15] T (Fig. 6), with a velocity of 0.26 m/s and an acceleration of 0.44 m/s 2 . To know in which workspace aspect the mechanism should exit, its free behavior is simulated, i.e. the actuators are virtually suppressed in simulation at t = 1s. In the studied case, the mechanism is spontaneously moving to workspace aspect numbered as the aspect 1 in the Fig. 6.

It can be demonstrated that the radius of curvature of the singularity locus at x s is equal to R c = 0.137m, which permits to define the clothoid that can extend the exit trajectory after t = 1s. The values of the end-effector position when moving along the clothoid path are presented in Fig. 5 when t > 1s. The total trajectory in the workspace is shown in Fig. 6.

Using the methodology presented in section 3.1, the input torques are computed with a constant value for the Lagrange multiplier λ 2 = λ 2 (X r ) = 1.72 till the mechanism is on the singularity (or in the zone of bad conditionning of matrix A). The input torques values are shown in Fig. 7. It can be observed that the input torques are completely finite on the whole trajectory, even when moving on the singularity loci.

Second Solution: Declutch one of the actuators

In this section the mechanism is stopped in the same singular position as in Section 4. The second actuator is declutched and a constant torque equal to 0.3 N.m is applied on the first actuator. Using the equations defined in section 3.2, the mechanism displacement can be computed. After 250 ms, the mechanism is out of the area where the condition number of the matrix A is superior to 100. Figure 8 represents the computed exit trajectory in the mechanism workspace. It can be shown that the mechanism exit the singularity in the workspace aspect number 1. The end effector coordinates along this trajectory are represented on Figure 9.

It could also be shown that by applying on motor 1 the opposite torque, the mechanism exit the singularity in the other workspace aspect (number 2). Based on the initial singular position, the input torques can be adjusted in order to move the mechanism in the desired assembly mode.

Conclusion

In order to increase the workspace size, past works have proved that a mechanism can cross the singularity loci by using an optimal motion planning. However, if the trajectory is not robust to modelling errors, the robot can stop in the singularity and stay blocked. Therefore, this paper proposes a new generic method dedicated to parallel manipulators in order to allow the exit from a Type 2 singularity. Based on the robot dynamic model, two strategies have been presented. The first one consists in a new algorithm dedicated to the computation of an optimal trajec-tory that allows the robot to exit the singularity. More precisely, the optimal trajectory is computed according to a specific dynamic criterion that ensures the consistency of the robot dynamic model all along the singularity loci. Then, the second trajectory is characterized by the declutching of one of the robot actuator in order to change the kinematic and dynamic behavior of the mechanism. Therefore, the under-actuated mechanism is no longer in a singular position, and its dynamic model is used to move away from the original mechanism Type 2 singularity.

Theoretical developments are illustrated, discussed and analysed through advanced simulations achieved on a planar five-bar mechanism. Simulations results demonstrate that the proposed algorithms permit to exit the parallel manipulator from the singularity. Furthermore, the optimal trajectory planning guarantee that the mechanism input torques stay finite even when the mechanism is moving on a singularity. Future works will be dedicated to the implementation of the proposed algorithms on a real five-bar mechanism that is currently being developed.

Figure 1 :

 1 Figure 1: A PLANAR 5R MECHANISM BLOCKED ON A TYPE 2 SINGULARITY

Figure 2 :

 2 Figure 2: PLANAR 5R PARALLEL MECHANISM DESCRIPTION

ψ 1 =Figure 3 :

 13 Figure 3: TYPE 2 SINGULARITIES OF THE 5R PLANAR MECHANISM.

Figure 4 :

 4 Figure 4: SINGULARITY LOCI FOR THE PLA-NAR 5R MECHANISM UNDER STUDY.

2 • I 2 =

 22 25 m and a=0.2 m • m 1 = m 4 = 2.81 kg • m 2 = m 3 = 1.41 kg • I 1 = I 4 = 0.02 kg.m I 3 = 0.01 kg.m 2

Figure 5 :Wo r kspace aspect no 1 Wo r kspace aspect no 2 Figure 6 : 4 . 2 . 1 First

 5126421 Figure 5: EVOLUTION OF THE END EFFEC-TOR COORDINATES ALONG THE EXIT TRA-JECTORY y (m)

Figure 7 :

 7 Figure 7: TORQUES VALUES ON THE EXIT TRAJECTORY

Figure 8 :

 8 Figure 8: EXIT TRAJECTORY WITH THE SEC-OND ACTUATOR DECLUTCHED

Figure 9 :

 9 Figure 9: EVOLUTION OF THE END EFFECTOR COORDINATES ALONG THE DECLUTCHED TRAJECTORY

  2.1.

	x (m) (solid line)								y (m) (dashed line)
	0.25											0.166
	0.2											0.164
	0.15											0.162
	0.1											0.16
	0 0	0. 1 0. 1	0. 2 0. 2	0. 3 0. 3	0. 4 0. 4	0. 5 0. 5	0. 6 0. 6	0. 7 0. 7	0. 8 0. 8	0. 9 0. 9	1 1	t (s)


Maxime Gautier

Sébastien Briot

Identification of Consistent Standard Dynamic Parameters of Industrial Robots

come   L'archive ouverte pluridisciplinaire

I. INTRODUCTION

ENTIFICATION of robot dynamic parameters is a field that has been vastly studied in the past but for which several opened and fundamental questions still exist. One of them concerns the positive definiteness of the identified robot inertia matrix for some configurations.

Each robot link can be defined by a set of 10 inertial parameters plus 4 terms characterizing the drive chain of the joint. This set of parameters is called the standard inertial parameters [START_REF] Khalil | Modeling, identification and control of robots[END_REF]. The base parameters set is defined to be a minimum set of inertial parameters that are used for calculating the joint torque uniquely; they constitute also the dynamic identifiable parameters [START_REF] Mayeda | Base parameters of manipulator dynamic models[END_REF]- [START_REF] Gautier | Direct calculation of minimum set of inertial parameters of serial robots[END_REF]. Some base parameters may almost be too small or are poorly excited to have a significant contribution to the joint torque/force. They are poorly identified and cancelled to keep a set of essential parameters M. Gautier is with the Institut de Recherche en Communication et Cybernétique de Nantes (IRCCyN) and with the LUNAM, University of Nantes, 44321 Nantes, France (phone: +33(0)240376960; fax: +33(0)240376930; e-mail: Maxime.Gautier@irccyn.ec-nantes.fr).

S. Briot is with the French CNRS and the IRCCyN, 44321 Nantes, France (e-mail: Sebastien.Briot@irccyn.ec-nantes.fr).

Gentiane Venture is with with the Department of Mechanical Systems Engineering, Tokyo University of Agriculture and Technology, 2-24-16 Nakacho, Koganei, Tokyo, Japan (e-mail: venture@cc.tuat.ac.jp).

of a simplified dynamic model without loss of joint torque/force model accuracy [START_REF] Pham | Essential parameters of robots[END_REF].

The authors of [START_REF] Yoshida | When is the set of base-parameter values physically impossible?[END_REF] noted that some sets of values of the base or essential parameters for a manipulator are physically impossible due to measurement noise: they determine the inertia matrix not to be positive definite for some configurations of the manipulator. Therefore it has been proposed in [START_REF] Yoshida | Verification of the positive definiteness of the inertial matrix of manipulators using base inertial parameters[END_REF] a method for finding a set of virtual standard inertial parameters that can be related to the base or essential parameters and that guaranty the positive definiteness of the inertia matrix. However, this method is based on a trial and error algorithm and is quite complicated and time-consuming.

In our previous work [START_REF] Venture | Optimal estimation of human body segments using real-time visual feedback[END_REF] and in other works [START_REF] Ayusawa | Identification of standard inertial parameters for large-dof robots considering physical consistency[END_REF]- [START_REF] Nakanishi | Operational space control: a theoretical and empirical comparison[END_REF] the approaches are based on adding constraints to the system so that the inertia matrices are positive definite, the masses are positive and eventually that the center of mass are located into a convex hull that represents the segment. Because of the added constraints, these results are not optimal because the identified standard parameters do not minimize the norm of the model error.

All the previous works do not use a priori values of the standard parameters. However, it is now easy for robot manufacturers to get good a priori values of the robot dynamic standard parameters from their CAD data. This information should be taken as an advantage for finding a set of updated standard parameters as close as possible to the a priori parameter values, and corresponding to the actual robot parameters, taking into account the actual behaviour and the actual data of each robot which are not included in the nominal CAD data.

A method to calibrate the standard parameters with respect to a priori known values using the Singular Value Decomposition (SVD) of the regressor matrix is proposed. The obtained solution minimizes the residual norm error, thus it is one of the possible best solutions. It is also shown that if the a priori value of the parameters is physically consistent and well chosen, and if the measurement errors are small enough, then the calibrated parameters are physically consistent.

The result of the study on physical consistency of the set of base-parameter values gives an important piece of information to the knowledge on dynamics. It can be used for analyzing the integrity of a robot after a shock with its environment. Also it can be used to check if a set of base-parameter values, which are obtained through parameter identification or other methods, is physically consistent or not and to modify the set of base parameter values that was judged to be physically impossible. Hence, the result directly contributes to model-based control or motion simulation for

Identification of Consistent Standard Dynamic Parameters of Industrial Robots

Maxime Gautier, Sébastien Briot and Gentiane Venture I manipulators, where the use of a dynamic model with non-positive inertia matrix leads to an unstable system.

II. THE INVERSE DYNAMIC IDENTIFICATION MODEL

The inverse dynamic model (IDM) of a rigid robot composed of n moving links calculates the (n×1) motor torque vector τ IDM , as a function of the generalized coordinates and their derivatives. It can be obtained from the Newton-Euler or the Lagrange equations [START_REF] Khalil | Modeling, identification and control of robots[END_REF], [START_REF] Featherstone | Dynamics[END_REF]. It is given by the following relation:

= ( ) + ( , )

idm τ M q q N q q  
(1) where q , q  and q  are respectively the (n×1) vectors of generalized joint positions, velocities and accelerations, ( ) M q is the (n×n) robot inertia matrix, and ( , )

N q q  is the (n×1) vector of centrifugal, Coriolis, gravitational and friction forces/torques. It is known that the dynamic model of any manipulator with n actuators can be linearly written in term of a (n×1) vector of standard parameters χ st [START_REF] Khalil | Modeling, identification and control of robots[END_REF], [START_REF] Gautier | Identification of robots dynamics[END_REF], [START_REF] Hollerbach | Model Identification[END_REF]:

( ) ( )     idm st st st
q,q,q, IDM q,q,q    

(2) where: st IDM is the (n×n st ) jacobian matrix of idm τ , with respect to the (n st ×1) vector χ st of the standard parameters given by 1 2

...

T T T n T st st st st        
 . For rigid robots, there are 14 standard parameters by link and joint. For the joint and link j, these parameters can be regrouped into the (14×1) vector j st  [START_REF] Khalil | Modeling, identification and control of robots[END_REF]:

j j T s t j j j j j j j j j j j j j o f f XX XY XZ YY YZ ZZ MX MY MZ M Ia Fv Fc        (3)
where: XX j , XY j , XZ j , YY j , YZ j , ZZ j are the 6 components of the inertia matrix of link j at the origin of frame j.

MX j , MY j , MZ j are the 3 components of the first moment of link j, M j is the mass of link j, Ia j is a total inertia moment for rotor and gears of actuator j. Fv j , Fs j are the viscous and Coulomb friction coefficients of the transmission chain, respectively, Because of perturbations due to measurement noise and modelling errors, the actual force/torque τ differs from τ idm by an error, e, such that:

( )

idm st st e IDM q,q,q e          (4
) where τ is calculated with the drive chain relations:

1 1 0 0 0 0 0 0 n n v g v g v g                           ( 5
)
v τ is the (n×n) matrix of the actual motor current references of the current amplifiers ( j v  corresponds to actuator j) and g τ is the (n×1) vector of the joint drive gains ( j g  corresponds to actuator j) that is given by a priori manufacturer's data or identified [START_REF] Corke | In situ measurement of robot motor electrical constants[END_REF] [START_REF] Gautier | Global Identification of Drive Gains Parameters of Robots Using a Known Payload[END_REF]. Equation (4) represents the Inverse Dynamic Identification Model (IDIM).

III. WEIGHTED LEAST SQUARES IDENTIFICATION OF ESSENTIAL BASE PARAMETERS WITH QR FACTORIZATION (IDIM-WLS)

The general identification problem after sampling and low-pass filtering (4) can be written as follows:

    a st st a Y W (6)
Where, for r samples in total:

-Y is the (r×1) sampled vector of motor torques τ, -a st W is the (r×n st ) sampled regressor IDM st , -ρ a is the (r×1) of errors due to measurement noise and modelling error. The identification problem consists in finding χ st that minimizes the square norm of the error ρ a :

st st 2 2 a a s t s t min min Y W       (7)
Usually, the vector of standard parameters is not calculated directly when solving the linear problem [START_REF] Yoshida | Verification of the positive definiteness of the inertial matrix of manipulators using base inertial parameters[END_REF] as there is a structural rank deficiency of a st W because the n st columns of the regressor IDM st are not independent: rank( a st W ) = n b such that n b ≤ n st . Consequently, there exists infinity of solutions for χ st from which only some are physically consistent: the mass positive, the inertia matrix positive definite, and the center of mass located inside the segment. It is thus common to identify the base parameters χ b which are the minimal set of parameters that calculates the motor torque with the IDIM (2) and which can be identified using linear least squares .They are obtained by linear combinations of the standard parameters which depend on the choice of the independent columns in a st W and which can be determined for the serial robots using simple closed-form rules [START_REF] Mayeda | Base parameters of manipulator dynamic models[END_REF], or by numerical method based on the QR or SVD decomposition [3]- [START_REF] Gautier | Direct calculation of minimum set of inertial parameters of serial robots[END_REF]. This leads to a non-unique minimal model, and a non-unique set of base parameters such that (6) becomes:

a a b b b b Ŷ W W Y         (8)
with a rather small difference between  and  a in [START_REF] Yoshida | When is the set of base-parameter values physically impossible?[END_REF] and where

     T a a r C E ρ ρ I (9)
E is the expectation operator and I r , (r×r) identity matrix. An unbiased estimation of the standard deviation   is:

2 2 ( )      a b b b Ŷ -W
r n [START_REF] Diaz-Rodriguez | A methodology for dynamic parameters identification of 3-dof parallel robots in terms of relevant parameters[END_REF] The covariance matrix of the estimation error is given by:

T 2 1 [( )( ) ] ( )         aT a ˆˆb b b b b b Ĉ E χ χ χ χ W W (11)      i 2 ˆĈ (i,i ) is the i th diagonal coefficient of  ˆĈ The relative standard deviation   ri %
is given by:

     ri i ˆˆi % / χ for i χ ≠ 0 (i-th coefficient of b χ ) (12)
The ordinary LS can be improved by taking into account different standard deviations on joint j equations errors [START_REF] Gautier | Dynamic identification of robots with power model[END_REF].

Data in Y and a b W of ( 8) are sorted and weighted with the inverse of the standard deviation of the error calculated from ordinary LS solution of the equations of joint j [START_REF] Gautier | Dynamic identification of robots with power model[END_REF].

Some small parameters remain poorly identifiable because they have no significant contribution in the joint torques. These parameters have no significant estimations and can be cancelled in order to simplify the dynamic model. Thus parameters such that the relative standard deviation   ri % is too high are cancelled to keep a set of essential parameters χ e of a simplified dynamic model with a good accuracy [START_REF] Pham | Essential parameters of robots[END_REF]. The essential parameters are calculated using an iterative procedure starting from the base parameters estimation. At each step the base parameter which has the largest relative standard deviation is cancelled.

A new LS parameter estimation of the simplified model is carried out with new relative error standard deviation

IV. STANDARD ESSENTIAL CONSISTENT PARAMETERS IDENTIFICATION WITH SVD FACTORIZATION

A. Standard parameters identification with SVD

A solution of a linear over-determined system, such as the identification model [START_REF] Yoshida | When is the set of base-parameter values physically impossible?[END_REF], can be obtained using the SVD. As the standard identification model is considered, from the n st columns of a st W a distinction is made between the n b independent columns and the others. Thus the following decomposition is obtained:

  a st a a a W V U ,               b s t b st b b a 1 n, n n a a n n ,n 2 0 0 ( 13
)
where: In the ideal case, i.e. without noise and perturbations on the data, a st W must be rank-deficient and  a 2 a zero matrix. However, with measured data, this is not the case but the values of  a 2 are very small and can be set to zero. The system (13) thus becomes

       st st n n a a a a 1 2 V R ,V V ,V is a matrix composed of two submatrices a 1 V and a 2 V of respective dimensions n st ×n b and n st ×(n st -n b )        st r n a a a a 1 2 U R ,U U ,U is a matrix composed of two
              b s t b st b b st b st b 1 n, ( n n) st ( n n ),n ( n n ),( n n ) 0 W V U 0 0 , ( 14
)
where st W is the rank deficient matrix closest to a st W with respect to the Frobenius norm and is given by [START_REF] Gautier | Global Identification of Drive Gains Parameters of Robots Using a Known Payload[END_REF]:

     st b n a a a T st st k k k k n 1 W W s U V , (15)
with s k is the k-th value on the diagonal of  a and a k U ( a k V , resp.) the k-th column of U a (V a , resp.) corresponding to s k , and The rank-deficient system closest to the actual one (8) is thus described by:

     st st n n 1 2 V R ,V V ,V is a matrix composed of two sub- matrices 1 V and 2 V of respective dimensions n st ×n b and n st ×(n st -n b )      st r n 1 2 U R ,U U ,U is a matrix composed of two sub-
    st st Y W ,    a ( 16
)
with a rather small difference between  and  a .

By multiplying Y and st W χ, respectively, on the left by T U , the following relations are obtained:

               T 1 T 1 T 2 2 G U Y U Y G G U Y , (17)
                                   b s t b st b st b b st b st b T T 1 n, ( n n) 1 1 st T 1 st st st T ( n n ),1 ( n n ),n (n n ),( n n ) 2 st 0 V V U W 0 0 0 V ( 18
)
Let us define vector Z as:

                  T 1 T 1 st st T 2 2 st Z V Z V Z V or   st V Z . ( 19
)
(18) can be rewritten as:

          st b 1 1 T st st ( n n ),1 Z U W 0 . ( 20
)
As the product by T U keeps the norm unchanged, the identification problem ( 16) can be expressed by the following equations: Ẑ to this problem is given by:

              2 2 2 T T st st st st 2 2 2 1 1 1 2 Y W U Y U W G Z G Z G . ( 21
)
      1 1 T 1 1 1 1 1 Ẑ G U Y, ( 22
)
and the family of all optimal solution Ẑ is, for any

Z 2          1 2 Ẑ Ẑ Z ( 23
)
Thus, an optimal solution  st ˆ to (21) is given by: 24) into (21), it is shown that, for any optimal solution, the minimal norm of the error  is:

      1 T st 11 1 22 V Z V U Y V Z (24) Introducing (
   T 2 2 min G U Y . ( 25
)
Finally, the optimal solution  opt st ˆ that minimizes both norms of  st ˆ and  at the same time is obtained for

Z 2 = 0, i.e.:     opt 1 T st 1 1 1 ˆV U Y ( 26
)
where

 1 T 1 1 1 V U is the Moore-Penrose pseudo-inverse of st W .

B. Standard parameters closest to a priori values

The minimal norm solution obtained by ( 26) is optimal in term of the error norm (25). However the consistency of the parameters, with respect to its physical meaning is not guaranteed. Here a new approach is proposed that takes benefits of the a priori values  ref st of the inertial parameters calculated with CAD software from the manufacturers' data.

Let us denote as Y ref the joint torques estimated with the a priori values  ref st :

  ref ref st st Y W (27) Substracting (27) to (6), it comes              ref ref st st st st st Y Y W ( ) Y W (28)
where the error  is the same as that of the system (6).

Similarly to (26), the optimal solution  opt st ˆ that minimizes the norm of  st ˆ is given by:

     opt 1 T st 1 1 1 ˆV U Y (29) which leads to        opt ref 1 T ref st st 1 1 1 ˆV U (Y Y ). ( 30

C. Standard essential and consistent parameters

The previous method does not take into account the fact that some parameters may almost be null and thus have no contribution to the system dynamics; or that some parameters can be identified with a very small confidence and have no significant values that lead to the loss of consistency of some standard parameters.

To overcome this problem, let us take advantage of the correct knowledge that it is possible to have on the identified essential parameters denoted as  e ˆ(  e ˆ is composed of the n e values of the essential parameters  e calculated with the IDIM-WLS method proposed in section III and of (n st -n e ) zeros). Weighting the matrix st W in (6) by this vector leads to the new system: W , corresponding to the parameters with small influence on the joint torques in (31), and the image of the transformation which allows to identify the essential parameters which are significant wrt their confidence interval, adding a small increase of the norm error of .

             e e
Thus, solving the system (31) with SVD and applying the previous method for the calibration of the standard parameters, the optimal solution becomes:

        opt ref
0 W V U 0 0 , (33)
where: W ranked in decreasing order. In the next section, the identification of the standard parameters of an industrial Stäubli TX-40 robot is presented. It will be shown that the best results are obtained when using the calibration that takes into account the essential parameters.

 j  j d j  j r j 1 0 0 0 q 1 0 2 0  0 q 2 -/2 0 3 0 0 d 3 = 0.225 (m) q 3 +/2 rl 3 = 0.035 (m) 4 0  0 q 4 rl 4 = 0.225 (m) 5 0  0 q 5 0 6 0  0 q 6+  0       st st n n e e

V. CASE STUDY

A. Description of the TX 40

The Stäubli TX-40 robot (Fig. 1) has a serial structure with six rotational joints. Its kinematics is defined using the modified Denavit and Hartenberg notation (MDH) [START_REF] Khalil | A new geometric notation for open and closed loop robots[END_REF]. In this notation, the link j fixed frame is defined such that the j z axis is taken along joint j axis and the j x axis is along the common normal between j z and j 1 z  (Fig. 1). The geometric parameters defining the robot frames are given in Table I. The parameter 0 j   , means that joint j is rotational, j  and j d parameterize the angle and distance between j 1 z  and j z along j 1 x  , respectively, whereas j  and j r parameterize the angle and distance between j 1 x  and j x along j z , respectively. Since all the joints are rotational then j  is the position variable q j of joint j, except for joint two (

2 2 q /2     ), joint three ( 3 3 q /2    
) and joint 6

( 2 6 q     ), as shown in Table 1.

The TX-40 robot is characterized by a coupling between the joints 5 and 6 such that:

                   5 5 5 6 6 6 6 qr N 45 0 q qr N 32 N 32 q     ,                            5 5 6 6 c r 5 6 6 c r N N 0 N (34)
where j qr  is the velocity of the rotor of motor j, j q  is the velocity of joint j, N j is the transmission gain ratio of axis j, τ cj is the motor torque of joint j, taking into account the coupling effect on the motor side, τ rj is the electro-magnetic torque of motor j. The coupling between joints 5 and 6 also adds the effect of the inertia of rotor Ia q Fvm q Fcm q q q      where τ j already contains the terms   j j j j j j ( Ia q Fv q Fc sign( q ))   

, for j=5 and 6 respectively, with   Ia N Ja (35) Ja j is the moment of inertia of rotor j. (35) is introduced into (4) to obtain the IDIM

B. Identification results

In this section are presented the experimental results. As it is a calibration procedure, the choice of the a priori value  ref st is crucial. However, in the manufacturer's datasheets, the friction parameters and the drive chain inertia Ia j taking into account the gear box inertias are not given.

These values are extracted from a first identification of the dynamic parameters using the IDIM-WLS procedure described section III. They are given in bold font in Table II, with the a priori parameter values  ref st . The TX40 has n st =86 standard parameters, n b =61 base parameters and n e =31 essential parameters.

The standard parameters are calibrated using the approach presented above. The path of the trajectory used for identification consists of 11 intermediate points. The trajectory between the points is carried out using the trapezoidal acceleration interpolation function of the controller CS8C of the Stäubli robots. In Table II, the parameters  0b st ˆ are those computed using the matrix st W [START_REF] Gautier | Global Identification of Drive Gains Parameters of Robots Using a Known Payload[END_REF] defined with the n b =61 independent columns of the base parameters and the parameters  0e st ˆ are those calculated using the matrix e st W (31) defined with the n e =31 independent columns of the essential parameters. The difference with respect to the a priori value is also shown. It can be clearly observed that the difference between the a priori parameters and those estimated using the essential parameters is smaller. In Fig. 2 are also plotted the joint torques calculated with (5) from the measure of the current reference and with the IDIM (2) computed with the parameters  0e st ˆ. It should be mentioned that another trajectory is used for plotting these figures, i.e. the identification results are cross-validated. It can be observed that the joint torques are well estimated.

Let us now verify the physical consistency of the identified parameters. The identified parameters are computed at the joint centre position of each link. They are physically consistent if the identified mass is positive and the inertia matrix written at the center of mass (CoM) of each link is positive definite. We use the Huygens theorem matrix transformation formula to compute the inertia matrix J j at the CoM, from the identified parameters according to:

                               2 2 j j j j j j j j j 2 2 j j j j j j j j j j j 2 2 j j j j j j j j j XX XY XZ MY MZ MX MY MX MZ 1 J XY Y Y Y Z M X MY M X M Z M YM Z M XZ YZ ZZ MX MZ MY MZ MX MY (36)
The positive definitiveness of J j can be tested either with eigenvalue decomposition, with the Sylvester theorem, or a Cholesky decomposition. Each method is equivalent; however, as noted in [START_REF] Yoshida | Verification of the positive definiteness of the inertial matrix of manipulators using base inertial parameters[END_REF], the Sylvester theorem allows us to find conditions that the parameters must verify to obtain the positive definitiveness. In the case of a failed test, these conditions make it possible to adjust the parameters to obtain a positive definite matrix by modifying the inertial parameters that are in the null-space of the regressor, i.e. the non-base parameters.

The parameters are not independent, thus modifying one parameter results in the modification of all the non-base parameters and manipulations need precautions.

The Cholesky decomposition presents the advantage that a tolerance ε ≤ 0 can be set in the algorithm and allows for taking into account noise and measurement error, which in the case of experimental data is of importance. It is similar to setting the tolerance that defines a numerical rank in the SVD or QR decomposition. The tolerance is chosen according to the error and the level of noise in the collected data. Results on the positiveness of inertia matrices using the Cholesky decomposition are shown in Table III. The parameters obtained with the base parameters  0b st ˆ need a tolerance | ≥ 0.04 to obtain definitive positive matrices for all the links, while the use of essential parameters needs only the zero tolerance.

VI. CONCLUSION

A new method for computing a set of standard essential and consistent dynamic parameters closest to a priori CAD values, using SVD factorization and LS techniques, was presented. This method was experimentally validated on an industrial Stäubli TX-40 robot and give extremely conclusive results. The positiveness of inertia matrices using the 3,62e-01 3,62e-01 3,62e-01 0,00 0,00 MY 4 -7,24e-03 -7,55e-03 -7,24e-03 0,00 0,00 Fv 1 7,96e+00 7,96e+00 7,93e+00 0,00 0,03 MZ 4 -5,86e-01 -5,86e-01 -5,86e-01 0,00 0,00 Fs 1 6,79e+00 6,81e+00 6,86e+00 0,02 0,07 M 4 3,62e+00 3,62e+00 3,62e+00 0,00 0,00 τ off1 0,00e+00 5,07e-01 5,07e-01 5,07e-01 0,00 0,00 MX 5 0,00e+00 8,24e-03 0,00e+00 0,01 0,00 Fv 2 5,92e+00 5,93e+00 5,92e+00 0,01 0,00 MY 5 -3,06e-03 -1,05e-02 2,39e-03 0,01 0,01 Fs 2 7,38e+00 7,47e+00 7,42e+00 0,09 0,04 MZ 5 -1,02e-03 -1,02e-03 -1,02e-03 0,00 0,00 τ off2 0,00e+00 8,60e-01 0,00e+00 0,86 0,00 M 5 1,02e+00 1,02e+00 1,02e+00 0,00 0,00 XX [START_REF] Gautier | Numerical calculation of the base inertial parameters[END_REF] 2,23e-02 1,30e-01 6,91e-02 0,11 0,05 Ia 5 3,61e-02 3,22e-02 3,46e-02 0,00 0,00 XY 3 -1,95e-04 -6,97e-03 -1,95e-04 0,01 0,00 Fv 5 1,24e+00 1,24e+00 1,24e+00 0,00 0,00 XZ 3 -1,16e-02 2,20e-03 -1,16e-02 0,01 0,00 Fs 5 2,62e+00 2,60e+00 2,62e+00 0,02 0,00 YY [START_REF] Gautier | Numerical calculation of the base inertial parameters[END_REF] 2,24e-02 2,24e-02 2,24e-02 0,00 0,00 τ off5 0,00e+00 1,05e-01 0,00e+00 0,11 0,00 YZ 3 -2,22e-03 4,53e-03 -2,22e-03 0,01 0,00 XX 6 3,53e-04 4,71e-04 3,53e-04 0,00 0,00 ZZ [START_REF] Gautier | Numerical calculation of the base inertial parameters[END_REF] 4,41e-03 1,08e-01 4,20e-02 0,10 0,04 XY 6 0,00e+00 8,46e-04 0,00e+00 0,00 0,00 MX [START_REF] Gautier | Numerical calculation of the base inertial parameters[END_REF] 3,26e-02 8,41e-02 3,08e-02 0,05 0,00 XZ 6 0,00e+00 3,53e-04 0,00e+00 0,00 0,00 MY [START_REF] Gautier | Numerical calculation of the base inertial parameters[END_REF] 2,44e-02 -6,31e-01 -1,15e-01 0,66 0,14 YY 6 3,53e-04 3,53e-04 3,53e-04 0,00 0,00 MZ [START_REF] Gautier | Numerical calculation of the base inertial parameters[END_REF] 2,65e-01 2,65e-01 2,65e-01 0,00 0,00 YZ 6 0,00e+00 -4,41e-04 0,00e+00 0,00 0,00 M 3 4,07e+00 4,07e+00 4,07e+00 0,00 0,00 ZZ 6 0,00e+00 7,04e-04 0,00e+00 0,00 0,00 Ia 3 8,29e-02 1,02e-01 9,14e-02 0,02 0,01 MX 6 0,00e+00 1,07e-03 0,00e+00 0,00 0,00 Fv 3 1,98e+00 1,99e+00 2,01e+00 0,01 0,03 MY 6 0,00e+00 -3,71e-03 0,00e+00 0,00 0,00 Fs 3 6,43e+00 6,41e+00 6,37e+00 0,02 0,06 MZ 6 8,40e-03 8,40e-03 8,40e-03 0,00 0,00 τ off3 0,00e+00 4,48e-01 0,00e+00 0,45 0,00 M 6 2,00e-01 2,00e-01 2,00e-01 0,00 0,00 XX [START_REF] Gautier | Direct calculation of minimum set of inertial parameters of serial robots[END_REF] 1,09e-01 5,60e-03 1,09e-01 0,10 0,00 Ia 6 1,14e-02 1,10e-02 1,12e-02 0,00 0,00 XY [START_REF] Gautier | Direct calculation of minimum set of inertial parameters of serial robots[END_REF] 2,90e-05 -3,66e-03 2,90e-05 0,00 0,00 Fv 6 6,94e-01 6,40e-01 6,37e-01 0,05 0,06 XZ [START_REF] Gautier | Direct calculation of minimum set of inertial parameters of serial robots[END_REF] 1,35e-03 -2,60e-03 1,35e-03 0,00 0,00 Fs 6 0,00e+00 4,20e-01 4,08e-01 0,42 0,41 YY [START_REF] Gautier | Direct calculation of minimum set of inertial parameters of serial robots[END_REF] 1,08e-01 1,08e-01 1,08e-01 0,00 0,00 τ off6 0,00e+00 Cholesky decomposition have shown that the standard parameters identified on the space spanned by the n e columns of e st W corresponding to the essential parameters and closest to a priori consistent values, are consistent for all the links with a zero Cholesky tolerance. This is a strong result, which means that the essential parameters, which have significant identified values with respect to their small standard deviation (depending on measurement and modelling errors), are consistent because they lead to identify a set of standard essential consistent parameters. The base parameters which are not well identified are inconsistent because they lead to inconsistent standard parameters.

W

  is the pseudo-inverse of a b W and  b ˆis the least squares (LS) solution of (8) which is computed using the QR factorization of a matrix and ρ a is a zero-mean additive independent Gaussian noise, with a covariance matrix C  , such that:

  where  r is a ratio ideally chosen between 10 and 30 depending on the level of perturbation in Y and a st W .

submatrices a 1 U and a 2 U

 12 of respective dimensions r×n b and r×(n st -n b ) matrix composed of the singular values of W st sorted in decreasing order;  a is decomposed into two submatrices  a 1 and  a 2 of respective dimensions n b ×n b and (n st -n b )×(n st -n b ).

matrices 1 U and 2 U

 2 of respective dimensions r×n b and r×(n st -n b ).

Fig. 1 .

 1 Fig. 1. Link frames of the TX-40 robot

Fig. 2 .

 2 Fig.2. Motor torques (joint side units) estimated from the measure of the current reference (red) and with IDIM (blue) of the TX-40.

  )

	 opt st ˆ minimizes the norm of given in (16) and the norm
	of    ref st s t	at the same time.  opt st ˆ	is the optimal standard
	solution closest to a consistent solution  ref st , then it is the
	best optimal standard solution that can keep the physical
	consistency of  ref st	if the minimal norm of    ref st s t	is
	small and if the measurement errors are small.

TABLE I GEOMETRIC

 I PARAMETERS OF THE TX-40 ROBOT WITH THE PAYLOAD j

  of respective dimensions n st ×n e and n st ×(n st -n e )

	V R	,V	1 e V ,V 2 e	is a matrix composed of two
	submatrices 1e V and 2e
	 r n st U R ,U  e	e	  U ,U 1 e	2 e	 	is a matrix composed of two
	submatrices 1e U and 2e U of respective dimensions r×n e and
	r×(n st -n e )
		1e	  e e n n R	is a diagonal matrix composed of the singular
	values of e st

V

  [START_REF] Yoshida | When is the set of base-parameter values physically impossible?[END_REF] and new viscous and Coulomb friction parameters Fvm 6 and Fcm 6 , to both τ c5 and τ c6 .

		It is possible to write:
		5 c	   5	6 6 Ia q 		6 6 Fvm q 		6 Fcm	sign( ) 6 q  and
		6 c	   6	6 5		6 5		6		sign( + ) sign( )  5 6 6	

TABLE II IDENTIFIED

 II STANDARD DYNAMIC PARAMETERS OF THE TX-40.

	Param.	 ref st	 0b st ˆ	 0e st ˆ	e bi	e ei	Param.	 ref st	 0b st ˆ	 0e st ˆ	e bi	e ei
	ZZ 1	3,92e-02 1,24e+00	3,15e-01	1,20	0,28	MX 4	1,45e-02 -3,26e-02 -1,27e-02	0,05	0,03
	Ia 1

ACKNOWLEDGEMENTS

This research is supported by the special fund for Tech- no-Innovation Park for Platform Construction of Mobility Safety and Security Design Science, Tokyo University of Agriculture and technology, Japan.