Keywords : silicon carbide device, fault current limiter, serial protection, 2D finite element simulation, DC motor torque control

I. INTRODUCTION

Serial compensation can be done by the adjunction in the electrical circuit of an equivalent variable resistor that can be supra-conductor material, or Gate Turn Off (GTO) Metal Oxide Varistor (MOV) combination. Numerous strategy can be :

1 compensation with supraconductive effect temperature dependence [START_REF] Sugimoto | Principle and characteristics of a Fault Current Limiter with Series Compensation[END_REF],

2 adding resistances in serial to reduce the current and mechanical switch [START_REF] Palma | Etude et Réalisation d'un Disjoncteur Statique Limiteur pour Réseau alternatif 660V/100A[END_REF],

3 polymer based devices also named "Positive Temperature Coefficient (PTC) composite" [START_REF] Chiste | Electronic Systems Protection via Advanced Surge Protective Devices[END_REF],

4 specific semiconductor current limiters [4], [5].

Focusing on first system, high cost of such components constrain the utilization to power plant distribution an no effective commercial systems are available [6]. Concerning the second point, although name "static disjunction", good performances can be expected from this kind of system and some of them are actually used. They required high energy capacity resistance and GTO devices. Main difficulty consist in driving switch to react very quickly to a short circuit [START_REF] Palma | Etude et Réalisation d'un Disjoncteur Statique Limiteur pour Réseau alternatif 660V/100A[END_REF]. Third kind of current limiter is related to lower power application (low voltage and low current) [7]. Current limitation is based on the variation of the serial resistance while temperature rise-up by a modification of the crystalline structure of the composite. The composition change can be due either to self heating or to external temperature variation. Therefore, such devices can react to a short-circuit (current rise up lead to self heating and resistance rise-up) or can prevent effect of temperature rise-up during a battery charging cycle for example [8]. Their advantage is the low cost while theirs drawbacks are time need to restore original structure and time to react to a new electrical default. The silicon CRD can not reach (due to thermal runaway) 200 V while the SiC-CRD overpasses 600 V. It underlines the high voltage and current capabilities of SiC devices. Indeed, because of the strong energy appearance during a short circuit, it is necessary to limit and to dissipate the energy of the short circuit, under high bias. These constraints lead to a feasibility study of a current limiter in 4H silicon carbide.

II. VJFET BASE CURRENT LIMITER

A VJFET structure ("Fig. 2") was retained with the following foreseen characteristics of a nominal current of IN = 1 A and a nominal voltage of VN = 690 V. In normal mode (static state), current flows from drain to source using the path between pburied layers (gate and source). When a default appears in the protected circuit, high voltage is applied on the drain. PN junction is thus reverse biased, pinching the channel and limiting the current flow. The device was optimised, taking into account foreseen characteristics and SiC peculiarities. The VJFET was designed checking the trade-off between a low on-resistance value, high voltage capability and a as good as possible gate transconductance value. The optimisation of device parameters was made using a finite elements solver (ISE tcad software). "Fig. 3" presents the evolution of an optimal term depending on channel length (L) and gate to source distance (W).

III. SERIAL PROTECTION DEMONSTRATION

A first batch of component was made, validating the bi-directional limitation function in both current and voltage mode, (VMAX = 970 V). The efficiency of the protection was validated, demonstrating the capacity of a component to react in very short time (tr < 1 µs) ("Fig. 4"), while plugged in a real electrical system ("Fig. 5"). An additional inductance plugged in serial with the current limiter was used to check over-voltage appearing in the circuit. A 10 time higher inductor value only implies a 3.6 time higher over-voltage. This measure clearly demonstrates both overcurrent and over-voltage reduction using a silicon carbide current limiter. Furthermore, no significant change of the response time was measured (less than 1µs). Using such a device is very suitable in several applications such as short circuit protection, transient over current reduction, power supply factor correction.

III. FORESEEN APPLICATION

Another appropriate use is electrical motor starting phase, allowing soft torque at start up without sensitive modifications of the dynamic behaviour of a continuous current motor. Simulations were carried out using Matlab© to check the effect of the adjunction of a serial current limiter within the electrical system on the dynamic behaviour of the motor. Models of a continuous current motor coupled with a model of the current limiter (resistor dependent on current) were used in a Simulink description of the system

A -MATLAB MODEL DESCRIPTION

A Simulink description of a DC motor is presented in "Fig. 6". The other one is used while current-saturation occurs ("Fig. 8"). Both models were computed in parallel. The torque output of each model is used as a synchronisation signal whereas the current is used to switch the main output between saturated and not saturated model outputs. A suitable utilisation of such a model can be the determination of the most appropriate current limiting device (in terms of current ratings and maximal mechanical power) with respect to dynamic performance.

B -MATLAB MODEL APPLICATION

As shown in "Fig. 10" and "Fig. 11", simulations permits to estimate both the response time and the maximal transient mechanical power for given speed reference and current limitation values. From this can be extracted optimal parameters of a current limiter considering given speed requirements, dynamics and mechanical limitations. Using previous model, the speed evolution was compared for two different reference speeds (250 rpm and at t=9 s, 1600 rpm). The maximum current set in both case was 480 A. In the first case no over-current was observed. For an highest speed reference (1600 rpm) an over-current appears. Using a current limiter didn't change the speed stabilisation time, but limits considerably the maximum transient power as illustrated in ("Fig. 12").

III. CONCLUSION

Adding in serial such a device in application will allow to reduce transient phenomena, such as over-current reduction during starting phase and thereby over-torque limitation. This will allows an increase of the efficiency and life time of the whole system, without the need of a complex electronic driver (as the current limiter acts without control board).

The possibility of integration of an internal current control system as been demonstrated [10] and is the next challenge to get a smart controlled current limiter. Further modelling and experimental validation will be made to illustrate such a benefit.

  Up to now, few specific semiconductor current limiters exist and are limited to very low voltage or current applications. Highest capabilities of Current Regulative Diode (CRD) for example are IN = 5 mA, Vmax = 120 V [9]. Few patents describe other solution such as an IGBT based-on structure [5]. The main problems of actual current limiting devices are the maximal operating temperature of silicon and its voltage capabilities. "Fig. 1" presents temperature and voltage limitations for both silicon and silicon carbide current limiters.

Figure 1 .

 1 Figure 1. Comparison between Si and SiC CRD.

Figure 2 .

 2 Figure 2. Three terminals fault current limiter device structure.

Figure 3 .

 3 Figure 3. Optimal terms channel length "L" and p-type buried layers distance "W" determined by finite element simulations

Figure 4 .

 4 Figure 4. Experimental short circuit waveforms of the current limiter.

Figure 5 .

 5 Figure 5. Description of the electrical circuit used to perform switching tests

Figure 6 .

 6 Figure 6. Simulink block describing the transfer function of a DC motor.

Figure 7 .

 7 Figure 7. Simulink block describing the transfer function of a DC motor in non current-saturation mode.

Figure 8 .

 8 Figure 8. Simulink block describing the transfer function of a DC motor in current-saturation mode.

Figure 9 .

 9 Figure 9. Simulink block describing the whole system.

Figure 10 .

 10 Figure 10. Response time of a DC motor to a speed reference versus current limitation.

Figure 11 .

 11 Figure 11. Maximal transient power during starting phase of a DC motor for given speed reference and current limitation values

Figure 12 .

 12 Figure 12. Transient evolution of speed for two given speed reference and a fixed current limitation value (480A).

The expansion of electricity networks (distribution of energy, telecommunication), strongly contributed to increase the risks of appearance of defects, such as surge or overload. This multiplicity and complexity of electric networks, the need to have reliable systems favoured the development of serial protection devices. Fuse solution allows an efficient and total protection but requires to replace an element in case of failure. Therefore, other solutions have been investigated. Complex systems have been developed, all based on serial compensation, such as supra-conductor material, GTO MOV combination ... Indeed, because of the strong energy appearance during a short circuit, it is necessary to limit and to dissipate the energy of the short circuit, under high bias. This constraint leads to a feasibility study of a current limiter in 4H silicon carbide (4H-SiC). A VJFET structure was retained focusing on a nominal current of IN = 1 A and a nominal voltage of VN = 690 V. The device was optimised, taking into account SiC excellent physical properties. The VJFET was designed checking the trade-off between a low on-resistance value, high voltage capability and the highest gate transconductance value. A first batch of component was made, validating the bi- directional limitation function in both current and voltage mode, (VMAX = 970 V). The efficiency of the protection was validated, demonstrating the capacity of a component to react very quickly (t < 1 µs). Using such a device is very suitable in several applications (protection against short circuit, transient over current…) as it will allow to reduce transient phenomena and thus increase the efficiency and lifetime of the whole system.

  Silicon Carbide Controlled Current Limiter, Current Limitation Strategies, Foreseen Applications and Benefits.

	D. Planson 1 , D. Tournier 1,2 , J-P. Chante 1 ,	Ph. Godignon 2 , J. Millan 2 , X. Jorda 2
	P. Bevilacqua 1 , C. Raynaud 1	2 Centro Nacional de Microelectrónica
	1 CEGELY INSA-LYON, UMR 5005 CNRS,	Campus Universidad de Barcelona,
	Bât L. de Vinci, 21 av. Capelle Ouest,	E-08193 Bellaterra, Spain
	F-69621 Villeurbanne, France	Phone : +34 93 594 77 00 Fx : +34 03 580 14 96
	Phone : +33 4 72 43 87 24 Fx : +33 4 72 43 85 30 e-mail : planson@cegely.insa-lyon.fr	J-F. de Palma 3
		3 Ferraz Shawmut, Newburyport
		MA, USA
		Phone : 978-465-4210
	Abstract--

[4] S.M. Sze, "Physics of Semiconductor Devices", 2 nd ed., New York : J. Whiley and Sons, 1981, 868 p.

[5] J.L Sanchez, Ph.


Corentin Boissy
email: corentin.boissy@math.univ-toulouse.fr

THE AUTOMORPHISM GROUP OF RAUZY DIAGRAMS

published or not. The documents may come

The automorphism group of Rauzy diagrams

Introduction

Rauzy induction was introduced in [START_REF] Rauzy | Échanges d'intervalles et transformations induites[END_REF] as a tool to study interval exchange maps. It is a renormalization process that associates to an interval exchange map, another one obtained as a first return map on a well chosen subinterval. After the major work of Veech [START_REF] Veech | Gauss measures for transformations on the space of interval exchange maps[END_REF], the Rauzy induction became a powerful tool to study the Teichmüller geodesic flow.

A slightly different tool was used by Kerckhoff [START_REF] Kerckhoff | Simplicial systems for interval exchange maps and measured foliations[END_REF], Bufetov [START_REF] Bufetov | Decay of correlations for the Rauzy-Veech-Zorich induction map on the space of interval exchange transformations and the central limit theorem for the Teichmüller flow on the moduli space of abelian differentials[END_REF], and Marmi-Moussa-Yoccoz [START_REF] Marmi | The cohomological equation for roth type interval exchange transformations[END_REF]. It is obtained after labeling the intervals, and keeping track of them during the renormalization process. This small change was a significative improvement, and was used more recently to prove other important results about the Teichmüller geodesic flow, for instance the simplicity of the Liapunov exponents (Avila-Viana [START_REF] Avila | Simplicity of Lyapunov spectra: proof of the Zorich-Kontsevich conjecture[END_REF]), or the exponential decay of correlations (Avila-Gouezel-Yoccoz [START_REF] Avila | Exponential mixing for the Teichmüller flow[END_REF]). See also [START_REF] Gutiérrez-Romo | Classification of rauzy-veech groups: proof of the zorich conjecture[END_REF].

This labeling induces a non trivial automorphism group on the Rauzy diagram D, that corresponds to relabellings that preserves D. The computation of the cardinal of Aut(D) was done by the author in [START_REF] Boissy | Labeled Rauzy classes and framed translation surfaces[END_REF], by considering a geometric interpretation in terms of a moduli space of labeled translation surfaces. However, the precise description of the elements of Aut(D), as permutation elements was not done. In some personnal notes (annoted by the author) that are to be published in the project "Yoccoz archives", Yoccoz [START_REF] Yoccoz | Examples of rauzy classes. Project "Archives Jean-Christophe Yoccoz[END_REF] gives an extensive description of many "small" Rauzy classes, including the one corresponding to the stratum H(1, 1, 1, 1) (see Section 20 of [START_REF] Yoccoz | Examples of rauzy classes. Project "Archives Jean-Christophe Yoccoz[END_REF]). In particular, we can find for such Rauzy class a nice description of the automorphism group. Based on this example, we propose a similar description for the automorphism group of any (non hyperellliptic) Rauzy class.

Acknowledgements. The author thanks Carlos Matheus and Pascal Hubert for giving me the text of Yoccoz that started this project and encouraging me to write this paper. The project was partially supported by the labex CIMI project "GEOMET". A labeled permutation is a pair π = (π t , π b ) of one-to-one maps from A to {1, . . . , d}. We usually represent π by a table:

π = π -1 t (1) π -1 t (2) . . . π -1 t (d) π -1 b (1) π -1 b (2) . . . π -1 b (d)
.

A renumbering of a labeled permutation is the composition of (π t , π b ) by a one-to-one map f from A to A ′ . It just corresponds to changing the labels without changing the underlying permutation

π t • π -1 b . A labeled permutation is irreducible if for any k ∈ {1, . . . , d -1}, π -1 t {1, . . . , k} = π -1 b {1, .
. . , k}. We define the following maps on the set of irreducible permutations, called the combinatorial Rauzy moves.

(1) An automorphism of a Rauzy diagram D with vertices R is a graph automorphism of D that sends a "t" edge (resp. a "b" edge) to a "t" edge (resp. a "b" edge). We can show that it is just given by a renumbering of the vertices, i.e, an element of of the symmetric group S(A) 2.2. Links to translation surfaces. A translation surface is a (real, compact, connected) genus g surface S with a translation atlas i.e. a triple (S, U, Σ) such that Σ is a finite subset of S (whose elements are called singularities) and U = {(U i , z i )} is an atlas of S \ Σ whose transition maps are translations of C ≃ R 2 . We will require that for each s ∈ Σ, there is a neighborhood of s isometric to a Euclidean cone whose total angle is a multiple of 2π. One can show that the holomorphic structure on S \ Σ extends to S and that the holomorphic 1-form ω = dz i extends to a holomorphic 1-form on X where Σ corresponds to the zeroes of ω and maybe some marked points. We usually call ω an Abelian differential. A zero of ω of order k corresponds to a singularity of angle (k + 1)2π.

R t : let k = π b (π -1 t (d)) with k ≤ d -1. Then, R t (π t , π b ) = (π ′ t , π ′ b ) where π t = π ′ t and π ′-1 b (j) =    π -1 b (j) if j ≤ k π -1 b (d) if j = k + 1 π -1 b (j -1) otherwise. (2) R b : let k = π t (π -1 b (d)) with k ≤ d -1. Then, R b (π t , π b ) = (π ′ t , π ′ b ) where π b = π ′ b and π ′-1 t (j) =    π -1 t (j) if j ≤ k π -1 t (d) if j = k + 1 π -1 t (j -1)
For g ≥ 1, we define the moduli space of Abelian differentials H g as the moduli space of pairs (X, ω) where X is a genus g (compact, connected) Riemann surface and ω non-zero holomorphic 1-form defined on X. The term moduli space means that we identify the points (X, ω) and (X ′ , ω ′ ) if there exists an analytic isomorphism f :

X → X ′ such that f * ω ′ = ω.
One can also see a translation surface obtained as a polygon (or a finite union of polygons) whose sides come by pairs, and for each pair, the corresponding segments are parallel and of the same length. These parallel sides are glued together by translation and we assume that this identification preserves the natural orientation of the polygons. In this context, two translation surfaces are identified in the moduli space of Abelian differentials if and only if the corresponding polygons can be obtained from each other by cutting and gluing and preserving the identifications.

The moduli space of Abelian differentials is stratified by the combinatorics of the zeroes; we will denote by H(k n 1 1 , . . . , k nr r ) the stratum of H g consisting of (classes of) pairs (X, ω) such that ω has exactly n 1 zeroes of order k 1 , etc. . . It is well known that this space is (Hausdorff) complex analytic.

There is a natural construction, the Veech construction (or zippered rectangle construction), that associate to an element π ∈ R, and a continuous datum ζ ∈ C d , satisfying the "suspension data condition", a translation surface S(π, ζ) (see for instance [START_REF] Marmi | The cohomological equation for roth type interval exchange transformations[END_REF], or [START_REF] Boissy | Labeled Rauzy classes and framed translation surfaces[END_REF] for details). See Figure 1. Different choices of parameter ζ give surfaces in the same connected component of a stratum in the moduli space of Abelian differentials since the set of suspension data is connex (in fact, convex).

The Veech construction, with the associate Rauzy-Veech induction defines three natural invariants of a Rauzy class:

(1) The set with multiplicities of degree of the conical singularities of S(π, * ), i.e. the stratum where S(π, * ) is. (2) When such stratum is non-connected, the corresponding connected component . (3) The degree of the singularity attached on the left in the construction (denoted as the special singularity).

It is proven in [START_REF] Boissy | Classification of rauzy classes in the moduli space of quadratic differentials[END_REF] that if two labeled permutations share the same above invariant, then up to a renumbering, they are in the same Rauzy class.

In order to have a complete classification of Rauzy classes, one needs a refinement of the invariant (1). From [START_REF] Boissy | Labeled Rauzy classes and framed translation surfaces[END_REF], the letters in the alphabet induce a marking on the set of horizontal separatrices of each singularities, where each (outgoing) horizontal separatrix is marked by a letter, and the one corresponding to the interval in the Veech construction is marked twice (by π -1 t (1) and π -1 b (1)).

AB C D ζ A ζ B ζ C ζ D ζ B ζ D ζ C ζ A Figure 1.
A framing of a surface issued from the Veech construction

Considering the corresponding moduli space H lab of labeled translation surfaces (i.e. translation surfaces with such markings), we see that different choices of parameters ζ define surface in the same connected component of H lab . In [START_REF] Boissy | Labeled Rauzy classes and framed translation surfaces[END_REF], it is proven that two labeled permutations are in the same Rauzy class if and only if:

(1) The letters on the top left and bottom left are the same (they will be denoted by ±∞ as in [START_REF] Yoccoz | Examples of rauzy classes. Project "Archives Jean-Christophe Yoccoz[END_REF]). (2) The canonical cyclic order on the set of labels obtained by rotating clockwise around a singularity must be the same (for one, hence any choice of surfaces built from the labeled permutations). (3) The resulting labeled translation surfaces are in the same connected component of H lab .

Furthermore, once the cyclic order on A and the underlying connected component of the (nonlabeled) translation surface are fixed, we have (see [START_REF] Boissy | Labeled Rauzy classes and framed translation surfaces[END_REF], Theorem 1.1 and Theorem 1.3):

(1) If there are odd degree singularity, then there exists two such Rauzy classes. (2) Otherwise there is only one such Rauzy class.

2.3.

A surgery on translation surfaces. We describe the surgery called "breaking up a singularity", introduced by Kontsevich and Zorich in [START_REF] Kontsevich | Connected components of the moduli spaces of Abelian differentials with prescribed singularities[END_REF]. We start from a zero P of degree k 1 + k 2 . The neighborhood V ε = {x ∈ X, d(x, P ) ≤ ε} of this conical singularity is obtained by considering 2(k 1 + k 2 ) + 2 Euclidean half disks of radii ε and gluing each half side of them to another one in a cyclic order. We can break the zero of order k 1 + k 2 into a pair of singularities of order k 1 , k 2 by changing continuously the way they are glued to each other as in Figure 2. Note that in this surgery, the metric is not modified outside V ε . In particular, the boundary ∂V ε is isometric to (a connected covering) of an Euclidean circle. Note that in this construction, we can "rotate" the two singularities by an angle θ by cutting the surface along ∂V ε , rotating V ε by an angle θ and regluing it.

ε ε ε ε ε ε ε -δ ε -δ ε -δ ε -δ ε + δ ε + δ 6π 4π + 4π ∂Vε Figure 2.
Local surgery that break a zero of degree k 1 + k 2 into two zeroes of degree k 1 and k 2 respectively.

2.4. Yoccoz's example. We start with a geometrical interpretation of Yoccoz's example (see [START_REF] Yoccoz | Examples of rauzy classes. Project "Archives Jean-Christophe Yoccoz[END_REF] Section 20.1). We consider the alphabet

A = {±∞, 0, a 1 , a 2 , b 1 , b 2 , c 1 , c 2 } and the following element: π = -∞ b 2 a 2 b 1 a 1 c 1 0 c 2 ∞ ∞ b 1 a 2 b 2 a 1 c 2 0 c 1 -∞
The Veech construction with labels creates a translation surface in the stratum H(1, 1, 1, 1). Each singularity has angle 4π, hence gives two labeled separatrices where:

• The doubly labeled separatrix is ±∞, and the other separatrix of the corresponding singularity is labeled "0".

• The other three pairs of marked separatrices are {a 1 , a 2 }, {b 1 , b 2 }, and {c 1 , c 2 }. As described in [START_REF] Yoccoz | Examples of rauzy classes. Project "Archives Jean-Christophe Yoccoz[END_REF], the subgroup G ′ of S(A) preserving these pairings has order 2 3 × 3! = 48. The automorphism group of the Rauzy diagram G has order 48 2 = 24 and is a subgroup of G ′ . Hence we want to construct an morphism φ from G ′ to {±1} such that G = ker(φ).

There is a natural map from G ′ onto S(a, b, c), whose kernel N identifies with {-1, 1} 3 . For τ ∈ S(a, b, c), we define σ(τ a,b,c) with H = σ(S(a, b, c)).

) ∈ G ′ by σ(τ )(α i ) = τ (α) i , for α ∈ {a, b, c}. Hence the extension 1 → N → G ′ → S(a, b, c) → 1 is a split extension. Therefore, the group G ′ has a natural semi-direct structure G ′ = N ⋊ H ∼ {±1} 3 ⋊ S(
Claim: Under the above identification, G is the kernel of the map

f : ((ε a , ε b , ε c ), τ ) → ε a ε b ε c sgn(τ )
, where sgn is the signature.

To prove the claim, we observe that:

• f (ε, τ ) = f 1 (ε)f 2 (τ ), with f 1 a morphism from {±1} 3 to {±1},
and f 2 is a morphism from S(a, b, c) to {±1}, hence is either identity or the signature. • The elements ((-1, 1, 1), Id), ((1, -1, 1), Id) and ((1, 1, -1), Id)

are not in G from [START_REF] Boissy | Labeled Rauzy classes and framed translation surfaces[END_REF]. Hence, f 1 (ε a , ε b , ε c ) = ε a ε b ε c . It remains to prove that f 2 = Id. In this particular example (see the author's comment in [START_REF] Yoccoz | Examples of rauzy classes. Project "Archives Jean-Christophe Yoccoz[END_REF]), this can be easily proven by exhibiting a particuliar path in the Rauzy diagram.

In Lemma 3.2, we use a geometric construction to get an element g = ((ε a , ε b , 1), (a, b)) ∈ G (hence with

ε a ε b f 2 ((a, b)) = 1) such that g 2 = ((-1, -1, 1), Id) = 1 G . But a computation gives g 2 = ((ε a ε b , ε a ε b , 1), Id)). This implies f 2 ((a, b)) = -1, hence f 2 = sgn.

General case

Let D be a (nonhyperelliptic) Rauzy diagram whose associate stratum is H(k, k n 1 1 , . . . , k nr r ), and we assume that the degree of the special (left) singularity is k. From [START_REF] Boissy | Labeled Rauzy classes and framed translation surfaces[END_REF] the order of the group Aut(D) is:

ε r i=1 n i !(k i + 1) n i
where ε = 1 if all k i are even and 1 2 otherwise. There is a one-to-one map T : A → A, such that T (-∞) = +∞, and otherwise rotating counterclockwise the separatrix I α by 2π gives the separatrix I T (α) .

We consider the orbits in A for the action of T . Denote by special orbit the one containing ±∞n and by regular orbits the other ones.For i ∈ {1, . . . , r} there are n i regular orbits of length k i + 1. We denote θ i the set of orbits of length k i + 1, Θ i = {Θ i,j , j ∈ {1, . . . , n i }, and we chose for each (i, j) an element α i,j ∈ Θ i,j .

An element σ ∈ Aut(D) ⊂ S(A) satisfies σ•T = T •σ. In particular, σ induces a permutation on the set of (regular) orbits of the same size, and σ fixes all the elements of the special orbit.

This property defines a subgroup G ′ of S(A) of order r i=1 n i !(k i + 1) n i . If all singularities are of even order, then G ′ = Aut(D) and there is nothing to do. If there are singularities of odd order, then G = Aut(D is a subgroup of order 2 of G ′ . We will define a nontrivial homomorphism φ for which G is the kernel.

First, we observe that

G ′ = r i=1 G ′ i where G ′ i are elements of G ′ whose support are in Supp(Θ i ) = ⊔ j Θ i,j .
For each i ∈ {1, . . . , r}, there is a natural map from G ′ i onto the group S({1, . . . , n i }), whose kernel N i identifies with U n i k i +1 , where U p denotes the group of complex p-roots of unity. For τ ∈ S({1, . . . , n i }), we define σ i (τ ) ∈ G ′ i by σ i (τ )(α i,j ) = α i,τ (j) , and extended on Supp(Θ i ) by using T . Hence the extension 1

→ N i → G ′ i → S({1, . . . , n i }) → 1 is a split extension. Therefore, the group G ′ i has a natural semi- direct structure G ′ i = N i ⋊ H i ∼ U n i k i +1 ⋊ S({1, . . . , n i }) with H i = σ(S({1, . . . , n i })).
In order to simplify notations, we identify G ′ i with the image of the canonical homomorphism G ′ i → G ′ . Now the group G is a subgroup of index 2 of G ′ . Hence, is the kernel of a homomorphism φ : G → {±1}, that we write, with a slight abuse of notation as i φ i , where φ i : G ′ i → {±1} is a homomorphism.

Theorem 3.1. Under the above identification, we have:

• If k i is even, then φ i = Id. • Otherwise, let 2p i = k i + 1, then: φ i ((ζ 1 , . . . , ζ n i ), τ i ) = (ζ 1 . . . ζ n i ) p i sgn(τ i ).
where sgn is the signature.

Proof. Let ζ = exp( 2iπ 2p i ). From the proof of Proposition 4.2 in [START_REF] Boissy | Labeled Rauzy classes and framed translation surfaces[END_REF] (see also [START_REF] Boissy | Moduli space of meromorphic differentials with marked horizontal separatrices[END_REF], Section 5.1), the element ((1, . . . , 1, ζ, 1, . . . , 1), Id) is not in G since it corresponds to rotating the separatrices adjacent to an odd degree singularity by 2π, and preserving all the other separatrices. Hence, we have

φ i ((1, . . . , 1, ζ, 1, . . . , 1), Id) = -1 = ζ p i . Hence φ i ((ζ 1 , . . . , ζ n i ), Id) = (ζ 1 . . . ζ n i ) p i . The map f i : τ i → φ i ((1, . . . , 1), τ i )
is a homomorphism hence is either the signature or the identity map. Let g i be the element given by Lemma 3.2. A simple computation gives,

g 2 i = ((ζ 1 ζ 2 , ζ 1 ζ 2 , 1, . . . , 1), Id), hence g 2p i i = ((ζ p i 1 ζ p i 2 , ζ p i 1 ζ p i 2 , 1 . . . , 1), Id) = 1 But φ i (g i ) = (ζ 1 ζ 2 ) p i f i ((1, 2)), hence f i ((1, 2)) = -1.
Lemma 3.2. For each i such that k i is odd, there exists an element

g i ∈ G ∩ G i of the form ((ζ 1 , ζ 2 , 1, . . . , 1), (1, 2)) such that g 2 i is of order 2p i = k i + 1.
Proof. We have defined in Section 2.2 the moduli space of translation surfaces with labeled separatrices H lab . We also define the moduli space H sing of translation surfaces with marked singularities (see [START_REF] Boissy | Labeled Rauzy classes and framed translation surfaces[END_REF] for a precise definition). There are canonical coverings H lab → H sing and H sing → H. For any connected component C of H, the preimage in H sing is connected (once a proper condition on the label is fixed).

We start from a labeled permutation π, and choose a suspension datum ζ to obtain an element S in H lab (k, k n 1 1 , . . . , k nr r ). We describe a path in H lab (k, k n 1 1 , . . . , k nr r ) that will induce the element g i required. Denote by C the underlying connected component of the (usual) moduli space of Abelian differentials.

From [START_REF] Kontsevich | Connected components of the moduli spaces of Abelian differentials with prescribed singularities[END_REF], there exists a surface S 0 ∈ C obtained after breaking up a singularity of order 2k i into a pair of singularities of order k i . We denote by "1" and "2" the singularities corresponding to the permutation in g i . Seeing S, S 0 as elements in H sing , we can assume that the pairs of singularities in S 0 after the breaking up procedure are "1" and "2", and there exists a path γ joining S to S 0 . With the notations of Section 2.3, we cut the surface along ∂V ε , rotate the disc by an angle θ, one gets a family of surfaces (S θ ). One has S π(2k i +1) = S 0 in H, and composing with γ -1 , we obtain a closed path in C. Considering the lift of this path in H lab we see that:

• The two singularities "1" and "2" have been interchanged.

• All the other singularities, and the corresponding labels on horizontal separatrice are fixed, since the surgery (cutting on a circle, rotating, pasting) does not change the metric outside a neighborhood of the two singularities. Hence the resulting element g i in Aut(D) is in G ′ i and of the form ((ζ 1 , ζ 2 , 1, . . . , 1), [START_REF] Avila | Exponential mixing for the Teichmüller flow[END_REF][START_REF] Avila | Simplicity of Lyapunov spectra: proof of the Zorich-Kontsevich conjecture[END_REF]).

Now we look at g 2 i . It corresponds to the following path: consider γ, then the path (S θ ), for θ ∈ [0, . . . 2π(2k i + 1)], then γ -1 . Keeping track of the marked horizontal separatrices, we see at the end that the marked horizontal separatrices for "1", "2" have changed by an angle -2π(2k i + 1) mod 2π(k i + 1), hence 2π. So we have:

2 . Background 2 . 1 .

 221 Combinatorial definition. Definition 2.1. Let A be a finite alphabet that consists of d elements.

g 2 i

 2 = ((ζ, ζ, 1, . . . , 1), Id). With ζ = exp( 2iπ k i +1 ), hence g 2 i is of order k i + 1.


Angel P Del Pobil

Mario Prats

Philippe Martinet

Sukhan Lee

Rüdiger Dillmann

A Sensor-Based Approach for Dependable Physical Interaction

, which allows to specify tasks for sensor-guided dependable interaction. Some guidelines for sensor-based execution of tasks defined under the proposed formalism are also given.

Three different examples of dependable manipulation tasks, performed by three different robots, are presented, making use of the proposed approach and disparate sensor information: book grasping by tactile-force integration, door opening by vision-force control, and force-guided humanoid interaction with kitchen furniture.

I. INTRODUCTION

Autonomous robots need advanced manipulation skills in order to be useful for the end-user [START_REF] Kemp | Challenges for robot manipulation in human environments[END_REF]. Most of current research in robotic manipulation is limited to pick and place tasks, without paying attention to the whole range of different tasks needed in human environments. Apart from grasping objects for pick and place, a dependable service robot working in cooperation with humans needs a complete repertoire of tasks, including opening doors, interacting with furniture and household electrical appliances, switching on/off the lights, etc.

Most of the research in robotic grasping community aims at finding a set of contacts on the object in order to obtain force-closure grasps [START_REF] Bicchi | Robotic grasping and contact: A review[END_REF]. Force-closure guarantees that the grasp can compensate forces in any direction, but is a too restrictive condition in the sense that it would be much more natural to plan a grasp which can generate the force required for the task, instead of all the possible forces. It is worth noting that there are very few approaches on taskoriented robotic grasping in the community [START_REF] Li | Task oriented optimal grasping by multifingered robot hands[END_REF], [START_REF] Ch | Grasp Planning: How to Choose a Suitable Task Wrench Space[END_REF]. In the same way that robotic grasping works usually do not take the task into account, task planning works for robotic compliant interaction rarely consider the grasp planning problem. The grasp depends completely on the intended task, and vice versa. At the same time that the task dictates the way the hand must be arranged around an object, also the grasp dictates the actions that can be safely performed with it.

We propose a common framework where the grasp and the task are closely related, allowing both task and grasp specification and dependable sensor-guided execution in terms of hand, grasp and task frames. The grasp is defined as a desired task-suitable relationship between the robot hand and the object being manipulated, whereas the task is defined under the task frame formalism [START_REF] Bruyninckx | Specification of force-controlled actions in the 'task frame formalism': A synthesis[END_REF], as a desired motion that must be applied to the object. The concept of grasp frame is used for relating the grasp with the task into a common framework. On the one hand, the grasp frame is used as the goal for hand control. On the other hand, it is related to the task, through the object structural model. The grasp frame allows to transform the desired task motion, given in object coordinates, to robot motion, given in robot coordinates, as long as a suitable sensor-based estimation of the hand-to-object relative pose is provided, allowing to deal with modelling errors, grasp uncertainties, sliding, etc. in a dependable way. Having a good estimation of the handto-object pose, the task frame can be estimated in robot coordinates during execution, following a sensor-based task frame tracking approach [START_REF] Bruyninckx | Specification of force-controlled actions in the 'task frame formalism': A synthesis[END_REF], allowing the robot to adapt its motion to the particular object mechanism, even if no detailed model is present. Several examples of dependable sensor-guided compliant physical interaction tasks, based on the proposed framework, are presented, showing the suitability of our approach for the fast implementation of dependable interaction tasks under very different robotic systems.

II. A FRAMEWORK FOR DEPENDABLE PHYSICAL INTERACTION

A. Task-oriented grasp

We make use of three different frames for dependable taskoriented grasping: the task frame, the hand frame and the grasp frame (see Figure 1).

The task frame (T ) is a frame given in object coordinates, thus linked to the object frame (O), where the task is specified according to the task frame formalism [START_REF] Bruyninckx | Specification of force-controlled actions in the 'task frame formalism': A synthesis[END_REF]. The programmer has to choose a suitable task frame, where the axis match the natural constraints imposed by the environment (by the mechanism in our case).

The hand frame (H) is a frame attached to the robot hand (or tool) and it is used for control. Therefore, it is necessary

P = "one-finger preshape" H M G = I 4×4 S c = diag (1, 1, 1, 1, 1, 0) S f = diag (0,
0, 1, 0, 0, 0) v * = (0, 0, 0, 0, 0) f * = (0, 0, 10 N, 0, 0)

P = "precision preshape" H M G = I 4×4 S c = diag (1, 1, 1, 0, 1, 1)
S f = diag (0, 0, 0, 0, 0, 0) v * = (0, 0, 0, 0, 0.01 rad/s) f * = (0, 0, 0, 0, 0) to link it with the robot end-effector frame (E), normally through robot hand kinematics.

P = "power preshape" H M G = I 4×4 S c = diag (1, 1, 1, 1, 0, 1) S f = diag (0, 0, 1, 0, 0, 0) v * = f (t) f * = (0, 0, 10 N, 0, 0)
The grasp frame (G) is a frame given in object coordinates, and related to the task frame through object kinematics. This frame is set to parts of the object which are suitable for grasping and task execution.

The task-oriented grasp is then defined as a desired relative pose (possibly under-constrained) between the hand frame and the grasp frame. If this desired relative pose is achieved, the task, defined in the task frame, can be transformed to the hand frame, through the grasp frame, allowing the robot to make the motion needed for the task. Constrained and free degrees of freedom for the grasp are indicated. For the constrained DOFs, the hand frame must completely reach the desired relative pose with respect to the grasp frame. However, for free degrees of freedom, there is no particular relative pose used as reference. Instead, the robot may select a suitable pose, according to manipulability, joint limit avoidance, etc.

Let T , G, H and E be the task, grasp, hand and endeffector frames respectively. E M H , G M T and H M G are homogeneous matrices relating end-effector frame to hand frame, grasp frame to task frame and hand frame to grasp frame respectively, being i M j = i R j i t j , where i R j is the 3 × 3 rotation matrix between frames i and j, and i t j represents the position of frame j with respect to frame i.

Let P = {m 0 , m 1 , . . . , m n } be the hand posture, m i being the angle for each of the n motors of the hand.

A task-oriented grasp is defined as:

G = P, H, G, H M G , S c (1)
where S c is a 6 × 6 diagonal selection matrix which indicates the controlled degrees of freedom for the task-oriented grasp. The task is defined as a velocity/force reference in the task frame:

T = {T, v * , f * , S f } (2)
where S f is a 6 × 6 diagonal selection matrix, where a value of 1 at the diagonal element i indicates that the corresponding DOF is controlled with a force reference, whereas a value of 0 indicates it is controlled with a velocity reference. A velocity reference is suitable for tasks where a desired motion is expected, whereas a force reference is preferred for dynamic interaction with the environment, where no object motion is expected, but a force must be applied (for polishing a surface, for example). v * and f * are, respectively, the velocity and force reference vectors. A suitable force controller must convert the force references on force-controlled DOFs to velocities, so that the task is finally described as a desired velocity given in the task frame: τ * T .

For task execution, the desired velocity τ * T is converted from the task frame, to the robot end-effector frame as:

τ E = E W H • H W G • G W T • τ * T (3)
where i W j is the 6 × 6 screw transformation matrix associated to i M j .

B. Sensor-guided physical interaction

Whereas E M H and G M T can be computed from robot kinematics and object model respectively, H M G (the estimated relative pose between the robot hand and the part of the object being manipulated) depends on the particular execution and should be estimated online by the robot sensors. The error between the desired relative pose, H M G , and the estimated pose, H M G , can be due to the particular object mechanism, or due to task redundancy, where a particular DOF is controlled by a secondary task. The robot must always estimate the hand-to-task relationship during task execution by means of the model, world knowledge, vision sensors, tactile sensors, force feedback, etc. The estimation of H M G is the key for computing the task frame in robot coordinates, thus allowing the transformation of the task specification into dependable robot motion.

The best sensor to estimate this relationship is vision. A robot could be observing its hand and the object simultaneously, while applying model-based pose estimation techniques. Another interesting sensor is a tactile array, which provides detailed local information about contact, and could be used to detect grasp mistakes or misalignments. In any case, as the robot is in contact with the environment, it is extremely important to design a controller that can deal with unpredicted forces and adapt the hand motion accordingly. In general, the best solution is to combine several sensor modalities for getting a robust estimation.

III. APPLICATION OF THE FRAMEWORK

The proposed framework has been applied to three different robotic systems: the UJI Service robot [START_REF] Prats | Towards multipurpose autonomous manipulation with the uji service robot[END_REF] at the Robotic Intelligence Lab in Castellón (Spain), a mobile manipulator [START_REF] Lee | Robust recognition and pose estimation of 3d objects based on evidence fusion in a sequence of images[END_REF] during a short stay at the Intelligent Systems Research Center in Sungkyunkwan University (South Korea), and the Armar-III Humanoid Robot [START_REF] Asfour | Armar-iii: An integrated humanoid platform for sensory-motor control[END_REF], also during a short stay in Karlsruhe University (Germany). The tasks involved:

• Book grasping by means of tactile and force integration.

• Door opening by vision and force feedback.

• Humanoid physical interaction with several kitchen furniture (drawers, dishwasher, etc.) by force control with joint and task redundancy management. The variety of the tasks that have been implemented shows the versatility of the proposed framework, and its suitability for the fast implementation of dependable physical interaction tasks in very different robotic systems. All the tasks have been described in such a way that no object models are necessary for successful execution. Instead, the robot is able to adapt its motion to the particular case, without being specifically programmed for any particular task.

A. Experiment I: book grasping by tactile-force combination

For the first experiment, the sensor-based compliant physical interaction framework is applied to the task of taking out a book from a bookshelf, using the UJI Service Robot. The goal of the task is to extract a book from a shelf, while standing among other books. The approach is to do it as humans do: only one of the fingers is used, which is placed on the top corner of the target book and is used to make contact and pull back the book, making it turn with respect to the base, as shown in Figure 3. In this task, the force/torque sensor is used to apply a force towards the book and avoid sliding, whereas a tactile array provides detailed information about the contact, and helps estimating the hand and grasp frame relationship. As shown in Figure 2, there is one tactile array on each of the fingertips. This sensor consists of an array of 8 × 5 cells, each of one can measure the local pressure at that point.

1) Planning the task, hand and grasp frame: In Figure 2, a representation of the book grasping task, including the necessary frames, is shown. There are two possibilities for the task frame in this case. The first is to set it to the book base (frame T in Figure 2), so that the task is described as a rotation velocity around this frame. The second possibility is to set the task frame on the top edge of the book (frame T in Figure 2), so that the task is described as a negative translational velocity along X direction. We have opted for the second solution, because, in this case, the task frame coincides with the grasp frame, and, then, there is no need to know the book model. In the first case, the height of the book should be known in order to transform the task velocity from the task frame to the hand frame. By adopting the second solution, we make the approach general for any book size. Two references are set in the task frame, v * and f * . The first one is set to a negative velocity in X axis, in order to perform the task motion, whereas f * is set to a force along Z axis. This force is needed in order to make enough pressure on the book surface and avoid slip. We have set it to 10 N for our particular system, but it depends on the friction coefficient between the fingertip and the book. For small friction, a bigger force would be needed. Therefore, S f is set to diag(0, 0, 1, 0, 0, 0).

For this task, we define a special hand posture where one of the fingers is slightly more closed than the other ones, so that we can easily make contact on the top of the book with one finger, as shown in Figure 2. The hand frame is set to the inner part of the middle finger fingertip, just in the centre of the tactile sensor. The hand frame pose with respect to the robot end-effector, E M H , is computed from hand kinematics.

The fingertip has to make contact on the top of the book. Therefore, we set the grasp frame to the book top surface, which could be located by vision or range sensors. The desired relationship between the hand and the grasp frame, H M G , is set to the identity.

2) Estimating hand-book relative pose: In this case, the task is performed by combining force and tactile feedback. Tactile information is used to estimate and improve the contact between the hand and the book, whereas force feedback is used in order to cope with uncertainties and ensure that a suitable force is performed on the book surface so that there is no sliding.

Contact on the book is performed with the tactile array. Depending on the sensor cells that are activated, the relative pose between the sensor surface and the book can be estimated. It is not possible to compute the complete relative pose only with tactile sensors, because they only provide local information when there is contact. However, we can obtain a qualitative description of the relative pose. For example, if there is contact with the upper part of the sensor, but not with the lower part, we can deduce that the sensor plane is rotated around Y axis with respect to the book top plane.

All the tactile cells lie in the XY plane of the hand frame.

We consider that the finger is completely aligned with the book surface when there are cells activated on each of the four XY quadrants of the hand frame, i.e., all the tactile sensor surface is in contact. If there is contact on the upper half of the sensor, but not on the lower half, or vice versa, we consider that there is a rotation about Y axis, between the sensor (hand frame) and the book surface (grasp frame). Similarly, a rotation around X axis can be detected.

3) Improving the grasp: The goal of this process is to align the finger (tactile sensor) surface with the book surface, taking as input the qualitative description of the relative pose, described in the previous point. We follow a reactive approach, where fingertip rotation around X and Y axis of the hand frame is continuously controlled, in order to obtain contact on each of the XY quadrants of the hand frame. With this approach, the behaviour of the robot is completely reactive to the tactile sensor readings. The goal is to keep the sensor plane always parallel to the book top plane, thus ensuring that H M G = I 4×4 .

4) Task motion and coping with uncertainties: According to the task description, the task motion is performed by moving the hand along negative X axis of the task frame, while applying a force along Z axis. This motion makes the book turn with respect to the base, as shown in Figure 3. Note that, as the fingertip moves backwards and the book turns, the tactile sensor may lose contact with the lower part. This situation is detected by the qualitative pose estimator, and corrected with the control strategy described in the previous point, so that the hand frame is always aligned with the grasp frame, ensuring that task motion can successfully be transformed to dependable end-effector motion by equation 3. Figure 3 shows a sequence of the robot performing the task.

B. Experiment II: door opening by vision-force combination

In this section, the framework for sensor-based compliant physical interaction is applied to the task of pulling open the door of a wardrobe, using a mobile manipulator composed of an Amtec 7DOF ultra light weight robot arm mounted on an ActivMedia PowerBot mobile robot. The hand of the robot is a PowerCube parallel jaw gripper. This robot belongs to the Intelligent Systems Research Center (ISRC, Sungkyunkwan University, South Korea), and is already endowed with recognition and navigation capabilities [START_REF] Lee | Robust recognition and pose estimation of 3d objects based on evidence fusion in a sequence of images[END_REF], so that it is able to recognise the object to manipulate and to retrieve its structural model from a database.

1) Planning the task, hand and grasp frame:

The structural model of the door is shown in Figure 4. The task of pulling open the door can be specified naturally as a rotation around Y axis of frame O, but also as a negative translation velocity along Z axis of the frame G. The second alternative has the advantage that we can set G M T = I 4×4 , without the need to know the door model. We adopt this approach in order to make the solution valid for other doors. Thus, T = G, and we set v * to be a negative translation velocity along Z axis (the desired opening velocity). As there is no need for force references for this task, f * = 0 and S f = 0 6×6 .

For the parallel jaw gripper, there are very few manipulation possibilities. We consider only one possible taskoriented hand preshape, which is the precision The hand frame is set to the middle point between both fingertips, as shown in Figure 4.

As the door contains a handle, the grasp frame is set to the handle, so that the grasp is performed on it. More concretely, the grasp frame is set centered at the handle major axis, as shown in Figure 4. Then, according to the specification of the hand and grasp frames, the desired relationship between both is H M G = I 4×4 , i.e. the identity: when grasping, the hand frame must be completely aligned with the grasp frame (the handle must lie in the middle point between both fingertips).

2) Estimating hand-handle relative pose: As already explained in the previous sections, the relationship between the hand and the handle must be estimated continuously during task execution, in order to be able to transform the task Virtual visual servoing [START_REF] Marchand | Virtual visual servoing: a framework for real-time augmented reality[END_REF] is used to estimate the pose of the hand and the handle, using a set of point features drawn on a pattern whose model and position is known. One pattern is attached to the gripper, in a known position E M GP . Another pattern is attached to the object, also in a known position with respect to the object reference frame: O M OP . As future research we would like to implement a feature extraction algorithm in order to use natural features of the object instead of the markers [START_REF] Comport | Complex articulated object tracking[END_REF]. Figure 4 shows the different frames involved in the relative pose estimation process and the task.

The matrix H M G , which relates hand and handle, is computed directly from the pose estimation of the gripper and the object, according to the following expression:

C M GP • E M -1 GP • E M H -1 • C M OP • O M -1 OP • O M G (4)
where C M GP is an estimation of the pose of gripper pattern, expressed in the camera frame, and C M OP is an estimation of the object pattern pose, also in the camera frame. E M H and O M G are the hand and grasp frame positions with respect to the end-effector and the object reference frame respectively, as set in the previous points.

3) Improving the grasp: After pose estimation, a measure of the error between the desired ( H M G ) and current ( H M G ) hand-grasp relative pose is obtained. It is desirable to design a control strategy so that the grasp is continuously improving during task execution. With a vision-based approach, any misalignment between the gripper and the handle (due to sliding, model errors, etc.) can be detected and corrected through a position-based visual servoing control law [START_REF] Martinet | Position based visual servoing using a nonlinear approach[END_REF]. We set the vector s of visual features to be s = (t uθ)

T , where t is the translational part of the homogeneous matrix H M G , and uθ is the axis/angle representation of the rotational part of H M G . The velocity in the hand frame τ H is computed using a classical visual servoing control law:

τ H = -λe + ∂e ∂t ( 5
)
where e(s, s d ) = L + s (s -s d ) (in our case, s d = 0, as H M G = I 4×4 ). The interaction matrix L s is set for the particular case of position-based visual servoing:

L s = -I 3×3 0 3×3 0 3×3 -L w L w = I 3×3 - θ 2 [u] × + 1 - sinc(θ) sinc 2 ( θ 2 ) [u] 2 ×
where [u] × is the skew anti-symmetric matrix for the rotation axis u. Finally, the end-effector motion is computed as

τ E = E W H • τ H .
4) Task motion and coping with uncertainties: The endeffector velocity that the robot has to achieve in order to perform the task motion, is computed by transforming the task velocity, from the task frame to the end-effector frame, according to equation 3.

Even if the relative pose between the hand and the handle, H M G , is estimated and corrected continuously, this estimation can be subject to important errors, considering that it is based on vision algorithms, that can be strongly affected by illumination, camera calibration errors, etc. Due to this fact, the robot motion is also subject to errors, and cannot match exactly the desired motion for the task. As the hand is in contact with the environment, any deviation of the hand motion regarding the task trajectory will generate important forces on the robot hand that must be taken into account.

We adopt an external vision/force control law [START_REF] Mezouar | External hybrid vision/force control[END_REF] for integrating vision and force and coping with uncertainties. With this approach, the force vector, with current external forces, is used to create a new vision reference according to:

s * = s d + L s • L -1 × • K -1 (f * -f ) (6)
where f * is the desired wrench, added as input to the control loop (null in this particular case), K is the environment stiffness matrix, and s * is the modified reference for visual features. L × relates τ E and ẊE according to ẊE = L × • τ E [START_REF] Martinet | Position based visual servoing using a nonlinear approach[END_REF]. Then, the visual servoing control law, described in the previous point, takes as visual reference the new computed reference, s * .

In conclusion, there are two simultaneous end-effector motions: one, computed by equation 3, which is in charge Fig. 6. The task frame is set to the handle. The task is specified as a velocity reference along negative Z axis. A power grasp is performed.

of performing dependable task motion, and another one, computed by equation 5, in charge of continuously aligning the hand with the handle by vision-force control. For more experimental results of the vision/force-guided door opening task, along with a detailed analysis and a demonstration video, please refer to [START_REF] Prats | Vision/force control in task-oriented grasping and manipulation[END_REF].

C. Experiment III: humanoid physical interaction with kitchen furniture

For this experiment, we focus on tasks that involve forceguided robust physical interaction of a humanoid robot with articulated furniture found in the kitchen, such as opening doors and drawers. The Armar-III humanoid robot, built up by the Collaborative Research Center 588 in Karlsruhe, has been used for these experiments [START_REF] Asfour | Armar-iii: An integrated humanoid platform for sensory-motor control[END_REF]. This robot is composed of a humanoid torso mounted on a holonomic mobile platform, and has a total of 43 DOFs. A complete kitchen has been built in order to validate the robot capabilities in a realistic household environment. The kitchen contains all of the elements that can be found in any common kitchen, like a dishwasher, a fridge, a microwave, different cupboards, drawers, etc.

1) Planning the task, hand and grasp frame: We consider the task of pulling open the different doors and drawers found in a kitchen environment. The task and grasp frames are always set to the handle, as shown in Figure 6, and the task velocity is set to a negative value along Z axis, i.e. v * = (0, 0, -20, 0, 0, 0) T mm/s. This avoids the use of the particular mechanism model, allowing the robot to use the same task description for the different doors and drawers, independently of the particular size or hinge position. The force reference is not required for this particular task, thus S f = 0.

As shown in Figure 6, the hand is set to a power grasp configuration, where the thumb is opposed to the rest of fingers, and the hand frame is set to the center of the grasp. Task redundancy is allowed in the rotational DOFs: S c = diag(1, 1, 1, 0, 0, 0). Normally, only a rotation around the handle axis should be allowed as a task redundant DOF. However, as the robot's hand is highly compliant, and all the DOFs are force-controlled, the three cartesian rotational DOFs are set to be controlled by the secondary task (avoiding joint limits), and not by the main task.

2) Estimating hand-handle relative pose: Due to the task redundancy, the relative rotation between the hand and the handle is not fixed. It can vary during execution according to the cost function minimization approach (see examples of Figure 7). However, this hand-to-handle relative pose, H M G , must be known in order to compute the task jacobian and transform the task velocity into robot joint velocity.

The framework outlined in section II assumes that H M G can be computed through robot sensors. Here, position-force information is used in order to find always the motion direction which minimizes the external forces. The robot starts by pulling the handle. The mechanism of the particular door, as well as the error in the estimation of H M G , generates small forces in the hand, which the robot tries to minimize by updating its position following an impedance force control approach (introduced in point III-C.4). The robot keeps a history of the hand trajectory and aligns the task and grasp frame with the vector tangent to this trajectory, thus updating the hand-to-handle relative pose estimation, H M G . With this approach, the robot autonomously adapts to the particular door, without having any model, and even without knowing the particular mechanism.

3) Improving the grasp: The humanoid robot makes use of two different kinds of redundancy for continuously adopting a confortable grasp during task execution: task and joint redundancy. In the context of this experiment, 8 DOF are used in the Armar-III humanoid robot: 7 in the arm, and 1 in the hip (yaw). Therefore, two redundant degrees of freedom exist at the joint level, allowing the robot to reach a given cartesian pose with many different joint configurations.

We adopt the well-known gradient projection method (GPM) for joint redundancy management [START_REF] Siciliano | Kinematic control of redundant robot manipulators: A tutorial[END_REF]. The general approach is to project a secondary task into the nullspace of the first task, as following:

q = J + E τ E + (I -J + E J E )e j ( 7
)
where q is a vector with joint velocities, τ E is the desired end-effector cartesian velocity, J E is the arm jacobian at the end-effector, (I -J + E J E ) is the nullspace projector, and e j is the secondary task, which is normally computed as the gradient of a cost function h(q), i.e. e j = ∂h ∂q . There are many different possibilities for the cost function: increase manipulability, minimize energy consumption, etc. In our case, we compute h in order to avoid joint limits, thus keeping a natural arm posture. Concretely, e j is taken as:

e j i = ∂h ∂q i =      - q i -q u i q r i if q i > q u i - q i -q l i q r i if q i < q l i 0 in other case
where q u i , q l i and q r i are, respectively, the upper bound, lower bound and range for joint i. By upper and lower bound, we understand the joint value at which the joint limit avoidance secondary task is activated (not the mechanical limit).

For dealing with task redundancy, equation 7 must be transformed to task coordinates, by means of the endeffector-to-task estimation,

E M T = E M H • H M G • G M T .
First, the task jacobian must be computed from the arm jacobian, as:

J T = E W T -1 • J E (8)
A modified task jacobian is then computed, taking into account task redundancy, as J r T = S c • J T , being S c the diagonal selection matrix, introduced in section II, which selects the degrees of freedom of the task frame necessary for the main task. Then, equation 7 is transformed into:

q = J r T + τ * T + (I -J r T + J r T )e j (9)
With this new expression, e j is projected not only on the joint redundant DOFs, but also on the task redundant ones. Therefore, more DOFs are available for the secondary task, allowing the robot to perform the main task, while effectively performing auxiliary motion.

4) Task motion and coping with uncertainties: If the estimation of the task frame with respect to the end-effector, E M T , was perfect, the robot could perform the task without any kind of force feedback. However, in practice, the task frame estimation contains many errors. As the robot is in contact with the environment, an error in the trajectory generates very big forces on the robot hand. Thus, it is necessary to control the force so that no big forces appear on the robot hand. The robot, then, executes the task by trusting on its estimation of the task frame, but locally modifies the trajectory, following an impedance approach, in order to avoid excessive forces.

The force control law running in the robot for compliant cartesian velocity control with joint and task redundancy is the following:

q = J r T + τ * T +(I-J r T + J r T )e j +J + T K -1 ( T W F •f -f * ) (10
) being K the stiffness matrix for force control [START_REF] Khalil | Modeling identification and control of robots[END_REF], T W F the screw transformation matrix associated to the homogeneous matrix T M F , which relates the force sensor frame and the task frame. The matrix T M F can be computed as

T M F = E M T -1 • E M F
, where E M F relates the force Fig. 7. The Armar-III robot interacting with the kitchen furniture: fridge, drawers, dishwasher and cupboards sensor frame with the end-effector. Finally, f is the measured force at the force sensor frame, and f * the desired force at the task frame.

Whereas the first two terms allow to perform the task motion and the auxiliary task, the last term adds a correction to the joint velocities depending on desired and current forces, allowing for a dependable execution of the task, even when important errors exist in the task frame estimation, E M T (and, thus, in J + T ). Figure 7 shows the Armar-III humanoid robot interacting with four different elements found in a common kitchen: a fridge, a drawer, a dishwasher and a cupboard. Each of them have different size and even different mechanism. In the case of the dishwasher, the hinges are located at the bottom part, unlike the fridge and cupboard where the hinges are at left.

In the case of the drawer, the mechanism is not a rotation, but a translation. However, the task description is the same for all of them: pulling the handle. By the on-line force-based estimation of the hand-to-handle relative pose, the robot is able to adapt its motion to the particular case, without being specifically programmed for any particular task.

In addition, because of the high number of redundant DOFs and the task and joint redundancy management, the humanoid robot is able to perform the tasks in a very natural way, by adopting a comfortable arm posture, far from the joint limits, if possible. Figure 8 shows the effects of the secondary task when opening the door of the dishwasher. When the task starts, cost is decreased due to internal motion, using the redundant DOFs, to a value close to zero. The cost remains small during task execution, until the end, when it starts increasing. This point corresponds to the case when the arm is almost completely stretched (see Figure 7, third row, third column, and joint 5 cost in Figure 8 top). At this point, the task is considered as finished, as very little internal motion is possible, making it impossible to avoid the joint limits.

IV. CONCLUSIONS

We have shown three different examples of robotic execution of everyday chores, built on top of a general framework for specifying dependable compliant physical interaction tasks based on multisensor information. First, the framework has been applied to a book grasping task, combining tactile and force feedback. The second application has been a door opening task with a mobile manipulator endowed with a parallel jaw gripper, using vision and force sensors. Finally, a third example has shown the use of a complex humanoid robot for performing everyday tasks in a kitchen environment. The three examples exhibit a considerable degree of robustness, in the sense that the use of multiple sensor feedback on all of them allows to deal with uncertainties and errors, so that the robot can adapt its motion depending on the particular situation, without being specifically programmed for a particular task. The implementation of these examples in very different robotic systems during a short period of time shows the suitability of the framework for versatile specification and fast implementation of disparate multisensor physical interaction tasks.

As future research, we would like to use the proposed framework for the specification and compliant execution of several common tasks in home environments, based on integrated visual, tactile and force feedback. We think that the integration of multiple and disparate sensor information for hand-to-object pose estimation is a key point for successful and dependable robotic physical interaction.

Fig. 1 .

 1 Fig.1. Some task examples supported by the task-oriented grasping framework. First: pushing a button, with a force reference. Second: turning on a tap, with a velocity reference. Third: ironing task, with a velocity and force reference. T , H and G are, respectively, the task, hand and grasp frame.

Fig. 2 .

 2 Fig. 2. Frames involved in the book grasping task. The tactile array is used to estimate the relationship between the hand and the grasp frame, H M G .

Fig. 3 .

 3 Fig. 3. The robot grasping the book by means of force and tactile-based continuous estimation of hand-to-object relative pose.

Fig. 4 .

 4 Fig. 4. The vision task is to align hand frame H with the grasp frame G.

Fig. 5 .

 5 Fig. 5. The mobile manipulator at ISRC opening a door by means of force and vision combination

Fig. 8 .

 8 Fig. 8. Effects of the secondary task. Top: cost for each joint. Down: norm of the cost vector.


Mario Prats

Philippe Martinet

Sukhan Lee

Pedro J Sanz

Compliant Physical Interaction based on External Vision-Force Control and Tactile-Force Combination

des établissements d'enseignement et de recherche français ou étrangers, des laboratoires publics ou privés.

Compliant Physical Interaction based on External Vision-Force Control and

Tactile-Force Combination Mario Prats, Philippe Martinet, Sukhan Lee and Pedro J. Sanz

Abstract-This paper presents external vision-force control and force-tactile integration in three different examples of multisensor integration for robotic manipulation and execution of everyday tasks, based on a general framework, presented in [START_REF] Prats | A framework for compliant physical interaction based on multisensor information[END_REF], that enables sensor-based compliant physical interaction of the robot with the environment. The first experiment is a door opening task where a mobile manipulator has to pull open the handle with a parallel jaw gripper by using vision and force sensors in a novel external vision-force coupling approach [START_REF] Mezouar | External hybrid vision/force control[END_REF] where the combination is done at the control level; the second one is another vision-force door opening task, but including a sliding mechanism and a different robot, endowed with a three-fingered hand; finally, the third task is to grasp a book from a bookshelf by means of tactile and force integration. The purpose of this paper is twofold: first, to show how vision and force modalities can be combined at the control level by means of an external force loop. And, second, to show how the sensorbased manipulation framework proposed in [START_REF] Prats | A framework for compliant physical interaction based on multisensor information[END_REF] can be easily applied to very different physical interaction tasks in the real world, allowing for dependable and versatile manipulation

I. INTRODUCTION

Management of uncertainty is one of the big challenges in the design of robot applications able to operate autonomously in unstructured envirnoments like human or outdoor scenarios. Robot grasping and manipulation of objects is not an exception, but one of the fields in robotics more affected by the uncertainties of the real world. The use of data coming from multiple sensors is a valuable tool to overcome these difficulties.

In particular, vision and force are the most important sensors for task execution. Whereas vision can guide the hand towards the object and supervise the task, force feedback can locally adapt the hand trajectory according to task forces. When dealing with disparate sensors, a fundamental question stands: how to effectively combine the measurements provided by these sensors? One approach is to combine the measurements using multi-sensor fusion techniques [START_REF] Bajcsy | Integrating vision and touch for robotic applications[END_REF]. However, such method is not well adapted to vision and force sensors since the data they provide measure fundamentally different physical phenomena, while multi-sensory fusion is aimed in extracting a single information from disparate sensor data. Another approach is to combine visual and force data at the control level, as we propose in this paper, where a novel vision-force control law [START_REF] Mezouar | External hybrid vision/force control[END_REF], based on the concept of M. Prats and P.J. Sanz are with Robotic Intelligence Lab, Jaume-I University, Castellon, Spain. (mprats@uji.es) P. Martinet is with LASMEA, Blaise Pascal University, Clermont-Ferrand, France.

(Philippe.Martinet@ lasmea.univ-bpclermont.fr) S. Lee is with ISRC, Sungkyunkwan University, Suwon, South Korea. (lsh@ece.skku.ac.kr) external control, does the coupling in sensor-space, which allows to control vision and force on all the degrees of freedom, whereas only the vision control law is directly connected to the robot.

In the literature we can found several applications of robots performing physical interaction tasks in real life environments, as for example [START_REF] Petersson | High-level control of a mobile manipulator for door opening[END_REF], [START_REF] Ott | The robutler: Towards service robots for the human environment[END_REF] and [START_REF] Hillenbrand | The robutler: a vision-controlled hand-arm system for manipulating bottles and glasses[END_REF]. However, very few approaches consider multiple sensors in a general framework. Instead, ad-hoc applications are usually implemented, leading in specialized robots unable to perform many different manipulation tasks.

In [START_REF] Prats | A framework for compliant physical interaction based on multisensor information[END_REF], we have presented a general framework for enabling compliant physical interaction based on multiple sensor information. The purpose of this paper is twofold: first, to show how vision and force modalities can be combined at the control level by means of external vision-force control. And, second, to show how this framework can be used for the fast implementation of sensor-based physical interaction tasks in very different robotic systems, as well as its versatility, allowing to perform very different tasks in household environments, without having specific models of them, and without being specifically programmed for a particular task. For this, three different applications are described in different scenarios, and involving different robots and sensors: the first one is a door opening through vision-force control; the second one is another vision-force door opening task, but including a sliding mechanism and a different robot, endowed with a three-fingered hand; finally, the third task is to grasp a book from a bookshelf by means of tactile and force integration.

The paper is organized as follows: the sensor-based physical interaction framework detailed in [START_REF] Prats | A framework for compliant physical interaction based on multisensor information[END_REF] is outlined in section II. Sections III, IV and V describe three different examples of the framework application, involving different robots and sensor combinations. The novel vision-force coupling approach is introduced in the first experiment. Conclusions and future lines are given in section VI.

II. A FRAMEWORK FOR SENSOR-BASED COMPLIANT PHYSICAL INTERACTION

A framework for describing physical interaction tasks, based on multisensor integration is presented in detail in another paper of this conference [START_REF] Prats | A framework for compliant physical interaction based on multisensor information[END_REF]. Our approach is based on the Task Frame Formalism [START_REF] Bruyninckx | Specification of force-controlled actions in the 'task frame formalism': A synthesis[END_REF], where a task frame is defined as a cartesian coordinate system, given in object coordinates, where the task is defined in terms of velocity and force references, according to the natural constraints imposed by the environment.

• The task frame, T , where the task motion can be naturally described in terms of a velocity/force reference. • The hand frame, H, defined in hand coordinates, and the grasp frame, G, defined in object coordinates, which indicate, respectively, the part of the hand used for performing the task, and the part of the object where to perform the task. • The task velocity, v * , and the task force, f * , given in the task frame. The velocity reference is suitable for tasks where a desired motion is expected, whereas the force reference is preferred for dynamic interaction with the environment, where no object motion is expected, but a force must be applied (for polishing a surface, for example). A 6 × 6 diagonal selection matrix, S f , is used to choose whether a particular task direction needs a velocity or a force reference. A suitable force controller must convert the force references on forcecontrolled DOFs to velocities, so that the task is finally described as a desired velocity given in the task frame: τ * T . In general, the task frame is not rigidly attached to the robot end-effector frame. The task frame, according to its definition, must be always aligned with the natural decomposition of the task. Therefore, sensors must be integrated in order to provide an estimation of the task frame position and orientation during task execution (sensor-based tracking of the task frame [START_REF] Bruyninckx | Specification of force-controlled actions in the 'task frame formalism': A synthesis[END_REF]). This estimation is represented by the homogeneous transformation matrix E M T , so that the desired task velocity, τ * T , can be transformed from the task frame to the robot end-effector frame, according to:

τ E = E W T • τ * T (1)
where E W T is the 6×6 screw transformation matrix associated to E M T , which is computed from the kinematic chain linking the robot end-effector with the object mechanism, i.e.

E M T = E M H • H M G • G M T [1].
The relative pose between the robot end-effector and the task frame depends on the particular execution and must be estimated on-line by the robot sensors, because it can vary during execution due to the particular object mechanism, or due to task redundancy, where a particular DOF is controlled by a secondary task. The robot must always estimate the hand-to-task relationship during task execution by means of the model, world knowledge, vision sensors, tactile sensors, force feedback, etc. so that the task frame is always known with respect to the end-effector frame, thus allowing the robot to perform the desired task motion.

III. EXAMPLE I: PULLING OPEN A DOOR THROUGH VISION-FORCE COMBINATION

In this section, the framework for sensor-based compliant physical interaction is applied to the task of pulling open the door of a wardrobe, using a mobile manipulator composed of an Amtec 7DOF ultra light weight robot arm mounted an ActivMedia PowerBot mobile robot. The hand of the robot is a PowerCube parallel jaw gripper. This robot belongs to the Intelligent Systems Research Center (ISRC, Sungkyunkwan University, South Korea), and is already endowed with recognition and navigation capabilities [START_REF] Lee | Robust recognition and pose estimation of 3d objects based on evidence fusion in a sequence of images[END_REF], so that it is able to recognise the object to manipulate and to retrieve its structural model from a database.

A. Planning the task, hand and grasp frame

The structural model of the door is shown in Figure 1. The task of pulling open the door can be specified naturally as a rotation around Y axis of frame O, but also as a negative translation velocity along Z axis of the frame G. The second alternative has the advantage that we can set G M T = I 4×4 , without the need to know the door model. We adopt this approach in order to make the solution valid for other doors. Thus, T = G, and we set v * to be a negative translation velocity along Z axis (the desired opening velocity). As there is no need for force references for this task, f * = 0 and S f = 0 6×6 .

For the parallel jaw gripper, there are very few manipulation possibilities. We consider only one possible taskoriented hand preshape, which is the precision preshape. The hand frame is set to the middle point between both fingertips, as shown in Figure 1.

As the door contains a handle, the grasp frame is set to the handle, so that the grasp is performed on it. More concretely, the grasp frame is set centered at the handle major axis, as shown in Figure 1. Then, according to the specification of the hand and grasp frames, the desired relationship between both is H M G = I 4×4 , i.e. the identity: when grasping, the hand frame must be completely aligned with the grasp frame (the handle must lie in the middle point between both fingertips).

B. Task execution

For this task, a position-based vision-force servoing closed-loop approach has been adopted. A robot head observes both the gripper and the object and tries to achieve a relative pose between both.

1) Estimating hand-handle relative pose: Virtual visual servoing [START_REF] Marchand | Virtual visual servoing: a framework for real-time augmented reality[END_REF] is used to estimate the pose of the hand and the handle, using a set of point features drawn on a pattern whose model and position is known. One pattern is attached to the gripper, in a known position E M GP . Another pattern is attached to the object, also in a known position with respect to the object reference frame: O M OP . As future research we would like to implement a feature extraction algorithm in order to use natural features of the object instead of the markers. Figure 1 shows the different frames involved in the relative pose estimation process and the task.

The matrix H M G , which relates hand and handle, is computed directly from the pose estimation of the gripper and the object, according to the following expression:

C M GP • E M -1 GP • E M H -1 • C M OP • O M -1 OP • O M G (2)
where C M GP is an estimation of the pose of gripper pattern, expressed in the camera frame, and C M OP is an estimation of the object pattern pose, also in the camera frame. E M H and O M G are the hand and grasp frame positions with respect to the end-effector and the object reference frame respectively, as set in the previous points.

2) Improving the grasp: After pose estimation, a measure of the error between the desired ( H M G ) and current ( H M G ) Fig. 3. Kinematic screw during hand-to-handle alignment, following an exponential decrease, which is the classical behaviour on visual servoing tasks. The kinematic screw converges to zero, when

H M G = H M G .
hand-grasp relative pose is obtained. It is desirable to design a control strategy so that the grasp is continuously improving during task execution. With a vision-based approach, any misalignment between the gripper and the handle (due to sliding, model errors, etc.) can be detected and corrected through a position-based visual servoing control law [START_REF] Martinet | Position based visual servoing using a nonlinear approach[END_REF]. We set the vector s of visual features to be s = (t uθ)

T , where t is the translational part of the homogeneous matrix H M G , and uθ is the axis/angle representation of the rotational part of H M G . The velocity in the hand frame τ H is computed using a classical visual servoing control law:

τ H = -λe + ∂e ∂t (3)
where e(s, s d ) = L + s (ss d ) (in our case, s d = 0, as H M G = I 4×4 ). The interaction matrix L s is set for the particular case of position-based visual servoing:

L s = -I 3×3 0 3×3 0 3×3 -L w L w = I 3×3 - θ 2 [u] × + 1 - sinc(θ) sinc 2 ( θ 2 ) [u] 2 ×
where [u] × is the skew anti-symmetric matrix for the rotation axis u. Finally, the end-effector motion is computed as

τ E = E W H • τ H .
3) Task motion and coping with uncertainties: The endeffector velocity that the robot has to achieve in order to perform the task motion, is computed by transforming the task velocity, from the task frame to the end-effector frame, according to equation 1.

Even if the relative pose between the hand and the handle, H W G , is estimated and corrected continuously, this estimation can be subject to important errors, considering that it is based on vision algorithms, that can be strongly affected by illumination, camera calibration errors, etc. Due to this fact, the robot motion is also subject to errors, and cannot match exactly the desired motion for the task. As the hand is in contact with the environment, any deviation of the hand motion regarding the task trajectory will generate important forces on the robot hand that must be taken into account.

We adopt a novel external vision/force control law (see [START_REF] Mezouar | External hybrid vision/force control[END_REF] for details) for integrating vision and force and coping with uncertainties. With this approach, the force vector, with current external forces, is used to create a new vision reference according to:

s * = s d + L s • L -1 × • K -1 (f * -f ) (4)
where f * is the desired wrench, added as input to the control loop (null in this particular case), K is the environment stiffness matrix, and s * is the modified reference for visual features. L × relates τ E and ẊE according to ẊE = L × • τ E [START_REF] Martinet | Position based visual servoing using a nonlinear approach[END_REF]. Then, the visual servoing control law, described in the previous point, takes as visual reference the new computed reference, s * . Unlike most of existing approaches, our approach for vision-force coupling does the coupling in sensor-space, which allows to control vision and force on all the degrees of freedom, whereas only the vision control law is directly connected to the robot, thus avoiding local minima [START_REF] Mezouar | External hybrid vision/force control[END_REF].

In conclusion, there are two simultaneous end-effector motions: one, computed by equation 1, which is in charge of performing the task motion, and another one, computed by equation 3, in charge of continuously aligning the hand with the handle by external vision-force control. Figure 3 shows the kinematic screw, computed by equation 3 from the error between the desired ( H M G ) and the current ( H M G ) relative pose of the hand and the grasp frame during reaching the handle. For more experimental results of the vision/forceguided door opening task, along with a detailed analysis and a demonstration video, please refer to [START_REF] Prats | Vision/force control in task-oriented grasping and manipulation[END_REF].

IV. EXAMPLE II: OPENING A SLIDING DOOR THROUGH VISION-FORCE COMBINATION

This experiment is very similar to the previous one in the sense that two complementary sensors (vision and force) are used for a door opening task. However, in this case, we deal with a sliding door and a more complex robot: a mobile manipulator composed of a PA-10 arm, endowed with a three-fingered Barrett Hand, and mounted on an ActivMedia PowerBot mobile robot (the UJI Service Robot).

A. Planning the task, hand and grasp frame

The structural model of the new door is shown in Figure 4. The only difference with the previous case is that the task is now specified as a negative velocity along X axis of frame O. However, as before, we choose to specify it as a positive translation velocity along Z axis of the frame G, so that we can set G M T = I 4×4 , without the need to know the door geometric model. The Barrett Hand offers more advanced capabilities than the parallel jaw gripper. A task-oriented grasp planner [START_REF] Prats | Task-oriented grasping using hand preshapes and task frames[END_REF] selects a hook preshape as the more suitable hand configuration for the intended task, and the hand frame is set to the inner part of the fingertips, as shown in Figure 4.

The grasp frame is also set by the task-oriented grasp planner to the right part of the handle. Then, according to the specification of the hand and grasp frames, the desired relationship between both is H M G = I 4×4 , which means that the robot has to use the fingertips to make contact with the right face of the handle.

B. Task Execution

Once the task has been specified, it is performed by the same methods explained in the previous experiment, supporting the claim that the robot is not specifically programmed for one particular task. Instead, the same algorithms are applied, but its execution depends on the task specification and the multisensor information that the robot receives during execution. As in the previous example, an external camera tracks the robot hand and the object simultaneously and a position-based visual servoing control is performed in order to reach and keep the desired relative hand-object configuration, H M G . At the same time, force control is used for dealing with vision errors and ensuring a successful execution of the task, even in the presence of uncertainties and errors.

V. EXAMPLE III: GRASPING A BOOK THROUGH FORCE-TACTILE COMBINATION

Now, the sensor-based compliant physical interaction framework is applied to the task of taking out a book from a bookshelf, using the UJI Service Robot and force-tactile combination. The goal of the task is to extract a book from a shelf, while standing among other books. The approach is to do it as humans do: only one of the fingers is used, which is placed on the top of the target book and is used to make contact and pull back the book, making it turn with respect to the base, as shown in Figure 6. In this task, the force/torque sensor is used to apply a force towards the book and avoid sliding, whereas a tactile array provides detailed information about the contact, and helps estimating the hand and grasp frame relationship. As shown in Figure 5, there is one tactile array on each of the fingertips. This sensor consists of an array of 8 × 5 cells, each of one can measure the local pressure at that point.

A. Planning the task, hand and grasp frame

In Figure 5, a representation of the book grasping task, including the necessary frames, is shown. There are two possibilities for the task frame in this case. The first is to set it to the book base (frame T ′ in Figure 5), so that the task is described as a rotation velocity around this frame. The second possibility is to set the task frame on the top edge of the book (frame T in Figure 5), so that the task is described as a negative translational velocity along X direction. We have opted for the second solution, because, in this case, the task frame coincides with the grasp frame, and, then, there is no need to know the book model. In the first case, the height of the book should be known in order to transform the task velocity from the task frame to the hand frame. By adopting the second solution, we make the approach general for any book size. Two references are set in the task frame, v * and f * . The first one is set to a negative velocity in X axis, in order to perform the task motion, whereas f * is set to a force along Z axis. This force is needed in order to make enough pressure on the book surface and avoid slip. We have set it to 10 N for our particular system, but it depends on the friction coefficient between the fingertip and the book. For small friction, a bigger force would be needed. Therefore, S f is set to diag(0, 0, 1, 0, 0, 0).

For this task, we define a special hand posture where one of the fingers is slightly more closed than the other ones, so that we can easily make contact on the top of the book with one finger, as shown in Figure 5. The hand frame is set to the inner part of the middle finger fingertip, just in the centre of the tactile sensor. The hand frame pose with respect to the robot end-effector, E M H , is computed from hand kinematics. The fingertip has to make contact on the top of the book. Therefore, we set the grasp frame to the book top surface, which could be located by vision or range sensors. The desired relationship between the hand and the grasp frame, H M G , is set to the identity.

B. Task execution

In this case, the task is performed by combining force and tactile feedback. Tactile information is used to estimate and improve the contact between the hand and the book, whereas force feedback is used in order to cope with uncertainties and ensure that a suitable force is performed on the book surface so that there is no sliding.

1) Estimating hand-book relative pose: Contact on the book is performed with the tactile array. Depending on the sensor cells that are activated, the relative pose between the sensor surface and the book can be estimated. It is not possible to compute the complete relative pose only with tactile sensors, because they only provide local information when there is contact. However, we can obtain a qualitative description of the relative pose. For example, if there is contact with the upper part of the sensor, but not with the lower part, we can deduce that the sensor plane is rotated around Y axis with respect to the book top plane.

All the tactile cells lie in the XY plane of the hand frame. We consider that the finger is completely aligned with the book surface when there are cells activated on each of the four XY quadrants of the hand frame, i.e., all the tactile sensor surface is in contact. If there is contact on the upper half of the sensor, but not on the lower half, or vice versa, we consider that there is a rotation about Y axis, between the sensor (hand frame) and the book surface (grasp frame). Similarly, a rotation around X axis can be detected.

2) Improving the grasp: The goal of this process is to align the finger (tactile sensor) surface with the book surface, taking as input the qualitative description of the relative pose, described in the previous point. We follow a reactive approach, where fingertip rotation around X and Y axis of the hand frame is continuously controlled, in order to obtain contact on each of the XY quadrants of the hand frame. With this approach, the behaviour of the robot is completely reactive to the tactile sensor readings. The goal is to keep the sensor plane always parallel to the book top plane, thus ensuring that H M G = I 4×4 .

3) Task motion and coping with uncertainties: According to the task description, the task motion is performed by moving the hand along negative X axis of the task frame, while applying a force along Z axis. This motion makes the book turn with respect to the base, as shown in Figure 6. Note that, as the fingertip moves backwards and the book turns, the tactile sensor may lose contact with the lower part. This situation is detected by the qualitative pose estimator, and corrected with the control strategy described in the previous point, so that the hand frame is always aligned with the grasp frame, ensuring that task motion can successfully be transformed to end-effector coordinates by equation 1. Figure 6 shows a sequence of the robot performing the task.

VI. CONCLUSION

We have shown three different examples of robotic execution of everyday chores, built on top of a new visionforce controller [START_REF] Mezouar | External hybrid vision/force control[END_REF] and a general framework for specifying multisensor compliant physical interaction tasks, presented on a separate paper [START_REF] Prats | A framework for compliant physical interaction based on multisensor information[END_REF]. Two door-opening tasks with different robotic systems and a book grasping task have been implemented making use of external vision-force control and force-tactile integration. The three examples exhibit a reasonable degree of robustness, in the sense that the use of force feedback allows to deal with uncertainties and errors. External vision-force control allows to avoid local minima which is one of the main drawbacks of the existing approaches. The implementation of these examples in very different robotic systems during a short period of time shows the suitability of the framework for versatile specification of disparate multisensor physical interaction tasks.

As future research, we would like to use the proposed framework for the specification and compliant execution of several common tasks in home environments, based on integrated visual, tactile and force feedback. We think that the integration of multiple and disparate sensor information for hand-to-object pose estimation is a key point for successful and dependable robotic physical interaction.

Fig. 1 .

 1 Fig. 1. The vision task is to align hand frame H with the grasp frame G.

Fig. 2 .

 2 Fig. 2. The mobile manipulator at ISRC opening a door by means of force and vision combination

Fig. 4 .

 4 Fig. 4. Specification of the sliding door opening task with the proposed formalism (top), and the mobile manipulator at Jaume-I University opening a sliding door through force and vision combination (bottom).

Fig. 5 .

 5 Fig. 5. Frames involved in the book grasping task. The tactile array is used to estimate the relationship between the hand and the grasp frame, H M G .

Fig. 6 .

 6 Fig. 6. The robot grasping the book by means of force and tactile-based continuous estimation of hand-to-object relative pose.

ACKNOWLEDGMENT

The authors would like to thank Universitat Jaume-I/Bancaja, under project PI1B2005-28, and Generalitat Valenciana, under projects CTBPRB/2005/052 and GV-2007-109 for their invaluable support in this research.