Page 1

No d'ordre : 3490

THÈSE présentée

devant l'Université de Rennes 1 pour obtenir le grade de : Do teur de l'Université de Rennes 1 Mention Informatique

par

Ni olas MANSARD

Équipe d'a ueil :

LAGADIC (IRISA, RENNES)

É ole Do torale : Matisse Composante universitaire : IFSIC

Titre de la thèse :

En haînement de Tâ hes Robotiques

Soutenue le 12 dé embre 2006 devant la ommission d'examen Albert

BENVENISTE

Président

Jean-Paul

LAUMOND

Rapporteurs

Luigi

VILLANI

Etienne

DOMBRE

José

SANTOS VICTOR

Examinateurs

François

CHAUMETTE

Dire teur de Thèse

Abderrahmane

KHEDDAR

Membre invité


Remer iements Ils sont nombreux, eux qu'il me faut remer ier de m'avoir menÊ jusqu'à l'Ê riture de e mÊmoire. Cette page est la première de mon mÊmoire, la dernière de ma thèse. Mer i à tout eux qui m'ont donnÊ la han e d'en proter jusqu'au bout. Mer i avant tout à François Chaumette, dire teur de mes re her hes durant es trois annÊes. Ce n'est pas l'usage de remer ier son dire teur de thèse en premier. Je pense que, dans mon as, François mÊrite une ex eption. Il a ÊtÊ tout à la fois un très bon professeur pour mes dÊbuts en asservissement visuel, un très bon onseiller et une Ê oute attentive durant toute ma thèse. Il a su au bon moment m'en ourager, m'orienter, me pousser et me soutenir. Mer i François, si ette thèse est une rÊussite, 'est vraiment grâ e à toi. Mer i à Jean-Paul Laumond et à Luigi Villani d'avoir pris le temps de lire et de ommenter mon mÊmoire, ainsi qu'à Etienne Dombre, JosÊ Santos-Vi tor, Abderramane Kheddar et Albert Benveniste d'avoir parti ipÊ à mon jury de thèse. Mer i tout spÊ ialement à JosÊ et Luigi, pour qui la rÊda tion en

français

n'a pas dÝ rendre la le ture très fa ile.

Mer i à eux qui m'ont a ueilli dans leur laboratoire à l'Êtranger pour des sÊjour ourts mais intenses : Manuel Lopès et JosÊ Santos-Vi tor, pour un mois à Lisbonne en 2005 ; Olivier Stasse et Kazuhito Yokoi pour deux mois à Tsukuba en 2006. On n'a pas for Êment souvent la han e de pouvoir expÊrimenter sur autant de plateformes diÊrentes, et, pour moi, e n'aurait pas ÊtÊ le as sans vous. Mer i aussi aux membres du groupe de travail ROBEA Ego entre, Philippe Souères en tête. Les dis utions lors des rÊunions du groupe ont aussi grandement ontribuÊ à enri hir mon travail. Mer i à tous les membres du projet LAGADIC. Mer i à Muriel, à Éri et Fabien, à CÊdri , Anthony, Anne-Sophie, Andrew et Omar, à Alexandre, à Claire, RomÊo, Odile, Sinisa, Fabien, Fabien, Rak, Hai, Albert, Christophe, Mohammed ... Mer i aux membres de VISTA (l'Êquipe mère de LAGADIC) que j'ai pu toyer, je ne les oublie pas non plus : Thomas, Cybèle, GwenaÍlle, Ivan, Laure, JÊrme, Patri k, ... Mer i aux rele teurs de ma thèse (ils sont nombreux), et spÊ ialement à eux qui, n'Êtant pas de LAGADIC, n'avaient au une raison de le faire : Thomas, HÊlia, Sydney, ZoÊ, GrandPère ... Mer i aussi aux mêmes personnes pour les heures passÊes à rÊpÊter, amÊliorer et larier ma prÊsentation de thèse. En ore une fois, par e que vous y avez passÊ plus d'heures que tous les autres rÊunis, mer i Thomas, mer i HÊlia. Mer i à l'Êquipe Sharp de l'Inrialpes, que j'ai abandonnÊe en n de DEA pour la Bretagne, et en parti ulier à Olivier Ay ard, Pierre Bessière et Manuel Yguel : 'est mon stage de DEA qui m'a poussÊ à faire une thèse. Mer i à mes parents, à mes frangin(e)s, à ma famille, à mes vieux opains pour mille et unes petites hoses, qui sont nalement plus importantes que tout le reste. Enn, mer i HÊloïse, pour tout.


Table des matières

Table des matières

4

1 Introdu tion générale

9

2 État de l'art et appro he proposée 2.1

11

Plani ation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

11

2.1.1

Plani ation de hemin

. . . . . . . . . . . . . . . . . . . . . . . . . .

11

2.1.2

Plani ation dynamique . . . . . . . . . . . . . . . . . . . . . . . . . .

13

2.2

Déformation de traje toire . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

14

2.3

Ar hite tures de ommande

14

2.4

. . . . . . . . . . . . . . . . . . . . . . . . . . . .

2.3.1

Ar hite ture délibérative . . . . . . . . . . . . . . . . . . . . . . . . . .

15

2.3.2

Ar hite ture réa tive . . . . . . . . . . . . . . . . . . . . . . . . . . . .

15

2.3.3

Ar hite ture mixte . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Retour à la ommande référen ée apteur

. . . . . . . . . . . . . . . . . . . .

16 16

2.4.1

Moins de plani ation

2.4.2

Plus de liberté

. . . . . . . . . . . . . . . . . . . . . . . . . . .

16

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

17

2.4.3

Programmation par tâ hes . . . . . . . . . . . . . . . . . . . . . . . . .

17

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

17

2.5

Credo

2.6

Organisation du mémoire

. . . . . . . . . . . . . . . . . . . . . . . . . . . . .

18

I Bas niveau

21

3 Pile de tâ hes

23

3.1

Fondamentaux théoriques 3.1.1

3.2

. . . . . . . . . . . . . . . . . . . . . . . . . . . . .

23

Etat de l'art . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

24

3.1.2

Hiérar hie de tâ hes en utilisant la redondan e

3.1.3

Continuité de la ommande

. . . . . . . . . . . . .

25

. . . . . . . . . . . . . . . . . . . . . . . .

30

3.1.4

Évitement simple en utilisant la méthode du gradient projeté

. . . . .

33

3.1.5

Synthèse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

34

Validation expérimentale sur un robot manipulateur

. . . . . . . . . . . . . .

35

3.2.1

Mise en ÷uvre en utilisant l'asservissement visuel . . . . . . . . . . . .

35

3.2.2

Respe t de la hiérar hie imposée par la pile

36

. . . . . . . . . . . . . . .


6

Table des matières

3.3

3.4

3.2.3

Étude de la ontinuitÊ

3.2.4

Évitement des butÊes . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . .

40

3.2.5

Ordre de l'en haĂŽnement . . . . . . . . . . . . . . . . . . . . . . . . . .

43

3.2.6

Con lusion partielle

. . . . . . . . . . . . . . . . . . . . . . . . . . . .

43

Validation pour des robots mal alibrĂŠs . . . . . . . . . . . . . . . . . . . . . .

43

3.3.1

DÊnition du problème . . . . . . . . . . . . . . . . . . . . . . . . . . .

45

3.3.2

MĂŠthodes d'estimation . . . . . . . . . . . . . . . . . . . . . . . . . . .

46

3.3.3

MĂŠthode d'estimation de Broyden

. . . . . . . . . . . . . . . . . . . .

46

3.3.4

Estimation par orrĂŠlation . . . . . . . . . . . . . . . . . . . . . . . . .

47

3.3.5

Estimation

47

3.3.6

Comparaison expĂŠrimentale . . . . . . . . . . . . . . . . . . . . . . . .

Dire te-Inverse

Con lusions du hapitre

. . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

4 Redondan e dire tionnelle 4.1

4.2

37

48 57

59

DÊnition du problème à partir de la redondan e lassique . . . . . . . . . . .

59

4.1.1

60

Vitesse de onvergen e de la redondan e lassique . . . . . . . . . . . .

4.1.2

Élargissement de la ondition de proje tion

. . . . . . . . . . . . . . .

60

4.1.3

RĂŠĂŠ riture de la ondition ĂŠlargie . . . . . . . . . . . . . . . . . . . . .

61

4.1.4

Constru tion de la proje tion ĂŠlargie . . . . . . . . . . . . . . . . . . .

61

4.1.5

Mise en pratique impossible . . . . . . . . . . . . . . . . . . . . . . . .

62

. . . . . . . . . . . . . . . . . . . . . . .

62

4.2.1

Constru tion de la loi de ommande

Introdu tion des notations diĂŠrentielles . . . . . . . . . . . . . . . . .

64

4.2.2

Élargissement de la ondition de proje tion

64

. . . . . . . . . . . . . . .

4.2.3

RĂŠĂŠ riture de la ondition ĂŠlargie . . . . . . . . . . . . . . . . . . . . .

65

4.2.4

Constru tion de l'espa e libre . . . . . . . . . . . . . . . . . . . . . . .

65

4.2.5

Constru tion de la proje tion ĂŠlargie . . . . . . . . . . . . . . . . . . .

67

4.2.6

Loi de ommande . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

68

4.2.7

Comparaison et on lusion . . . . . . . . . . . . . . . . . . . . . . . . .

68

4.3

Preuve de stabilitĂŠ

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

68

4.4

Validation expĂŠrimentale . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

71

4.5

4.6

4.4.1

Mise en áuvre en utilisant l'asservissement visuel . . . . . . . . . . . .

72

4.4.2

ExpĂŠrien e 1 : simulation

73

. . . . . . . . . . . . . . . . . . . . . . . . .

4.4.3

ExpĂŠrien e 2 : six degrĂŠs de libertĂŠ ontrlĂŠs . . . . . . . . . . . . . . .

82

4.4.4

ExpĂŠrien e 3 : quatre degrĂŠs de libertĂŠ ontrlĂŠs

. . . . . . . . . . . .

82

Lien ave la pile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

86

4.5.1

Appli ation de la redondan e dire tionnelle à deux tâ hes

. . . . . . .

86

4.5.2

Appli ation de la redondan e dire tionnelle à plusieurs tâ hes . . . . .

89

Con lusion du hapitre . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

89

5 Asservissement qualitatif 5.1

5.2

91

Asservissement qualitatif . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

91

5.1.1

Loi de ommande . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

92

5.1.2

Appli ation au ontrle de la visibilitĂŠ

95

5.1.3

. . . . . . . . . . . . . . . . . .

Appli ation Ă l'ĂŠvitement de butĂŠes arti ulaires . . . . . . . . . . . . .

99

IntÊgration dans la pile de tâ hes . . . . . . . . . . . . . . . . . . . . . . . . .

104

5.2.1

104

En haÎnement de tâ hes en Êvitant les butÊes

. . . . . . . . . . . . . .


Table des matières

5.3

7

5.2.2

En haînement de tâ hes qualitatives en évitant les butées

. . . . . . .

106

5.2.3

Utilisation de la redondan e dire tionnelle . . . . . . . . . . . . . . . .

106

5.2.4

Dis ontinuité de la ommande . . . . . . . . . . . . . . . . . . . . . . .

110

Con lusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

111

6 Tâ hes à dimension variable 6.1

6.2

6.3

6.4

6.5

113

État de l'art . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

114

6.1.1

Asservissement visuel statistiquement robuste . . . . . . . . . . . . . .

114

6.1.2

Loi de ommande ontinue malgré les hangements de visibilité

. . . .

114

6.1.3

Asservissement vers une région de référen e

. . . . . . . . . . . . . . .

115

6.1.4

Asservissement qualitatif . . . . . . . . . . . . . . . . . . . . . . . . . .

116

6.1.5

Synthèse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

117

Continuité des tâ hes à dimension variable . . . . . . . . . . . . . . . . . . . .

117

6.2.1

117

Quelques dénitions

. . . . . . . . . . . . . . . . . . . . . . . . . . . .

6.2.2

Dis ontinuités des lois lassiques

6.2.3

Con lusion

. . . . . . . . . . . . . . . . . . . . .

120

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

128

Un nouvel opérateur d'inversion matri ielle

. . . . . . . . . . . . . . . . . . .

129

6.3.1

Dénition formelle

. . . . . . . . . . . . . . . . . . . . . . . . . . . . .

129

6.3.2

Constru tion du nouvel opérateur . . . . . . . . . . . . . . . . . . . . .

130

Loi de ommande . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

132

6.4.1

132

Stabilité de la loi de ommande . . . . . . . . . . . . . . . . . . . . . .

6.4.2

Généralisation de la redondan e aux tâ hes à dimension variable

. . .

132

6.4.3

Première expérien e : ontinuité lors de la perte de visibilité . . . . . .

134

6.4.4

Se onde expérien e : évitement de butées

. . . . . . . . . . . . . . . .

148

Con lusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

151

Synthèse des ommandes bas niveau

153

II Haut niveau

155

Introdu tion à la ommande de haut niveau

157

7 En haînement pour la prise en ompte de ontraintes multiples

159

7.1

État de l'art . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

159

7.2

Constru tion des ontrleurs d'exé ution . . . . . . . . . . . . . . . . . . . . .

161

7.2.1

. . . . . . . . . . . . . . . . . . . . . . . . .

162

7.2.2

Contrleur de remise . . . . . . . . . . . . . . . . . . . . . . . . . . . .

165

7.2.3

Contrleur délibératif

166

Contrleur de ontraintes

. . . . . . . . . . . . . . . . . . . . . . . . . . .

7.3

Mise en ÷uvre pratique pour l'asservissement visuel

7.4

Résultat expérimentaux

7.5

. . . . . . . . . . . . . .

168

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

169

7.4.1

Première expérien e : o ultations et butées . . . . . . . . . . . . . . .

169

7.4.2

Se onde expérien e : évitement d'obsta le et d'o ultation . . . . . . .

170

7.4.3

Troisième expérien e : butées non onvexes

. . . . . . . . . . . . . . .

173

Con lusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

179


8

Table des matières

8 Contrle d'un robot non-holonome par en haînement de tâ hes 8.1

8.2

8.3

8.4

8.5

181

État de l'art . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

181

8.1.1

Commandes à retour d'état

181

8.1.2

Asservissement dans l'espa e apteur . . . . . . . . . . . . . . . . . . .

182

Commande linéaire des robots mobiles . . . . . . . . . . . . . . . . . . . . . .

183

. . . . . . . . . . . . . . . . . . . . . . . .

8.2.1

Modèles du robot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

183

8.2.2

Appli ation à l'asservissement visuel

185

8.2.3

Expérien e 1 : limitations de la ommande linéaire

. . . . . . . . . . .

185

8.2.4

. . . . . . . . . . . . . . . . . . .

Con lusions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

188

Commande pseudo-linéaire des robots mobiles . . . . . . . . . . . . . . . . . .

188

8.3.1

188

Optimisation non linéaire en utilisant des termes d'ordre 2 . . . . . . .

8.3.2

Appli ation au modèle de l'uni y le . . . . . . . . . . . . . . . . . . . .

189

8.3.3

Appli ation au modèle de la voiture

190

8.3.4

Asservissement visuel en utilisant la pseudo-ja obienne . . . . . . . . .

190

8.3.5

Expérien e 2 : asservissement ave une améra embarquée xe . . . . .

191

Utilisation de la pile de tâ hes . . . . . . . . . . . . . . . . . . . . . . . . . . .

195

. . . . . . . . . . . . . . . . . . .

8.4.1

Expérien e 3 : asservissement des quatre degrés de liberté de l'uni y le

196

8.4.2

Expérien e 4 : évitement d'obsta les

197

8.4.3

Expérien e 5 : en haînement vers des buts virtuels pro hes . . . . . . .

199

Con lusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

203

. . . . . . . . . . . . . . . . . . .

9 Appli ation aux robots humanoïdes 9.1 9.2

9.3

9.5

205

Appli ation de la pile de tâ hes à un robot mar heur . . . . . . . . . . . . . .

207

9.2.1

Génération du mouvement de mar he

207

9.2.2

Intégration du

Pattern Generator

Tâ hes de la pile

dans la pile . . . . . . . . . . . . . .

208 210

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

210

9.3.2

Contraintes d'évitement

9.3.3

Contrleurs de tâ hes

Résultat expérimentaux

. . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . .

Implémentation de la tâ he de saisie 9.3.1

9.4

205

État de l'art . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . .

211

. . . . . . . . . . . . . . . . . . . . . . . . . . .

212

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

212

9.4.1

Première expérien e : en haînement pour l'évitement de butées

. . . .

213

9.4.2

Se onde expérien e : saisie pendant la mar he . . . . . . . . . . . . . .

214

Con lusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

219

10 Con lusion et perspe tives

221

A Des ription des tâ hes robotiques utilisées dans les expérimentations

229

A.1

Asservissement visuel basé sur les moments 2D

. . . . . . . . . . . . . . . . .

229

A.2

Tâ hes utilisées pour réaliser la saisie pendant la mar he . . . . . . . . . . . .

232

Bibliographie

245

Publi ations

247


Chapitre 1

Introdu tion gĂŠnĂŠrale

L

e point de dÊpart des travaux prÊsentÊs dans ette thèse est l'asservissement rÊfÊren Ê ;par

1

rapport Ă un apteur , et plus prĂŠ isĂŠment l'asservissement visuel. Le robot est ontrlĂŠ

en utilisant dire tement les informations transmises par les apteurs, sans passer par la

onstru tion d'un modèle de l'environnement ni par une Êtape de raisonnement dans e modèle. Ces te hniques de ommande ont l'avantage de la simpli itÊ, dans le sens oÚ seules sont nÊ essaires les valeurs ourantes et dÊsirÊes des informations apteurs, ainsi que la inÊmatique du système à l'instant ourant. Les onnaissan es sur l'environnement peuvent ainsi être rÊduites au maximum. En s'asservissant dire tement sur les valeurs mesurÊes, il est possible d'obtenir une grande prÊ ision de ontrle, de l'ordre de elle du apteur. De plus, es te hniques sont très robustes aux bruits de mesure, aux erreurs de alibration et aux simpli ations de modèle, en ee tuant un perpÊtuel rebou lage sur les informations apteurs. Enn, es lois de ommande peuvent être asso iÊes à des mÊthodes de minimisation de oÝt permettant de prendre en ompte, pendant l'asservissement, des ontraintes se ondaires de manière rÊa tive. La ommande rÊfÊren Êe apteur est e a e pour une grande lasse d'appli ation. Mais elle ne permet d'assurer en gÊnÊral qu'une onvergen e sur un domaine lo al, qui est de plus di ile à dÊ rire expli itement. De plus, des minima lo aux peuvent exister. En onsÊquen e, si la position initiale est trop ÊloignÊe du but, le système peut être in apable de rejoindre la position dÊsirÊe, voire même diverger ave un omportement (et une vitesse) imprÊvisible. Enn, lorsque la tâ he à rÊaliser est omplexe, 'est-à-dire nÊ essite l'utilisation d'une trop grande partie des degrÊs de libertÊ du robot, les ontraintes se ondaires sont di ilement prises en ompte dans la loi de ommande, et risquent alors de ne pas être respe tÊes au ours de l'asservissement. L'asservissement rÊfÊren Ê apteur permet une très bonne onvergen e lo ale, mais onverge di ilement lorsque le dÊpla ement est grand ou la tâ he omplexe par rapport aux 1

ou asservissement rÊfÊren Ê apteur, omme nous l'emploierons dans la suite du do ument. De la même manière, nous dirons information apteur pour information provenant d'un apteur, ou en ore valeur apteur pour valeur provenant d'un apteur.


10

Introdu tion générale

degrés de liberté disponibles et aux ontraintes à respe ter. Pour mettre en pratique de manière réa tive une telle appli ation, une solution pragmatique est elle de l'en haînement de tâ hes. La tâ he omplexe est divisée en plusieurs obje tifs plus simples à réaliser, qui sont a omplis séquentiellement. Les solutions retenues sont généralement très

ad-ho

et peu de solutions

générales d'en haînement de tâ hes peuvent aujourd'hui être dénies de manière rigoureuse. L'obje tif de nos travaux est de onstruire une méthode générale pour réaliser un en haînement de tâ hes robotiques réa tives permettant d'élargir le domaine d'appli ation de la ommande référen ée apteur. Ces travaux s'arti ulent autour de deux axes prin ipaux, formant les deux parties de e do ument. Dans une première partie, nous onstruisons une stru ture de ontrle nommée pile de tâ hes assurant la réalisation par le robot d'une tâ he omposée de plusieurs sous-tâ hes, et permettant un ontrle du robot à un plus haut niveau en séle tionnant ou en modiant pendant l'asservissement les sous-tâ hes de la pile. Dans la se onde partie, nous proposons d'utiliser les fon tionnalités de la pile de tâ hes pour onstruire une stru ture de ontrle de plus haut niveau réalisant automatiquement l'en haînement des tâ hes permettant d'a omplir la tâ he globale et d'assurer en même temps le respe t des ontraintes. Mais tout d'abord, nous donnons dans le pro hain hapitre un bref aperçu de l'état de l'art général des te hniques de ommande de robot. Ce bref des riptif nous permettra alors de justier plus on rètement l'appro he que nous développons dans la suite du do ument, et d'introduire le plan du mémoire.


Chapitre 2

État de l'art et appro he proposÊe

Ce hapitre propose un rapide aperçu des te hniques de ommande des robots. Les solutions de ommande rÊfÊren Êes apteur introduites dans le hapitre prÊ Êdent sont onnues pour leurs très bonnes propriÊtÊs de prÊ ision et de robustesse aux nombreux problèmes pratiques posÊs par un système rÊel [Samson 91, Espiau 92, Hut hinson 96℄. Mais es solutions ne permettent pas dans le as gÊnÊral d'assurer une onvergen e globale. D'un autre tÊ, de nombreuses te hniques utilisant un plus grand nombre de onnaissan es sur l'environnement permettent d'Êlargir le domaine de onvergen e, voire d'obtenir une onvergen e globale. Dans la première partie de e hapitre, nous nous proposons d'Êtudier les mÊthodes de ontrle globales (par opposition aux mÊthodes purement rÊfÊren Êes apteur lo ales). Cette synthèse de l'Êtat de l'art est aussi une justi ation de l'orientation donnÊe à nos re her hes pendant es trois ans de thèse. Nous poursuivons don e hapitre en exposant de manière argumentÊe l'appro he dÊfendue dans ette thèse, et nous terminons nalement en prÊsentant l'organisation de la suite du mÊmoire.

2.1 Plani ation 2.1.1 Plani ation de hemin La plani ation onsiste à al uler à l'avan e la suite de mouvements que doit ee tuer le robot pour atteindre sa position nale, en utilisant un modèle de l'environnement et du robot. La solution la plus simple onstruit une suite de ongurations joignant les positions initiale et dÊsirÊe, oÚ la onguration du robot est une paramÊtrisation de l'Êtat statique (position et orientation) du robot [LozanoPerez 79℄. On parle alors de plani ation de hemin. La plani ation de hemin repose sur l'hypothèse de base qu'on peut se limiter à l'aspe t gÊomÊtrique du problème, 'est-à-dire nÊgliger l'aspe t dynamique de l'environnement. On distingue gÊnÊralement les mÊthodes de plani ations lo ales et globales.


12

État de l'art et appro he proposÊe

Plani ation lo ale Les mĂŠthodes de plani ations lo ales utilisent Ă haque ĂŠtape du hemin uniquement les informations sur l'environnement pro he du robot pour al uler l'ĂŠtape suivante. On peut nalement les voir omme le al ul Ă  l'avan e de la traje toire qui serait obtenue en exĂŠ utant une ommande rĂŠa tive dans l'environnement modĂŠlisĂŠ. La

potentiels

plani ation par hamps de

est sans doute la mĂŠthode de plani ation lo ale la plus onnue [Khatib 86â„„. Elle a

ÊtÊ appliquÊe à l'asservissement visuel dans [Cowan 02, Mezouar 02℄ Puisque seul l'environnement pro he est onsidÊrÊ lors de la onstru tion du hemin, il est en gÊnÊral di ile de garantir que la mÊthode onverge vers un hemin rejoignant la onguration dÊsirÊe. Pour la mÊthode des hamps de potentiels par exemple, il a ÊtÊ montrÊ qu'il est impossible de garantir l'absen e de minima lo aux dans le as gÊnÊral [Kodits hek 87℄. Des solutions ont proposÊ l'utilisation d'un terme alÊatoire pour sortir des minima lo aux oÚ l'algorithme s'est bloquÊ [Barraquand 92℄. D'autres solutions nÊ essitant l'utilisation de fon tions plus omplexes que les hamps de potentiels ont ÊtÊ proposÊes pour garantir l'absen e de minima lo aux [Rimon 92, Cowan 00℄. La di ultÊ rÊside alors dans la onstru tion de la fon tion de navigation pour garantir la onvergen e. De plus, es mÊthodes restent des mÊthodes lo ales et sont don in apables d'optimiser le hemin par rapport à des ontraintes ou des ritères globaux.

Plani ation globale Les mÊthodes globales permettent de garantir la onvergen e vers un hemin si elui- i existe, et d'optimiser le hemin obtenu par rapport à des ritères intÊgrÊs sur l'ensemble du hemin. On distingue trois appro hes prin ipales.

Plani ation globale dis rète :

la re her he du hemin est faite dans un espa e dis rĂŠ-

tisĂŠ. La dis rĂŠtisation permet de rĂŠduire les temps de al uls, mais surtout de garantir que la re her he aboutira en temps ni [Latombe 91â„„. A partir d'un ensemble dis rets d'ĂŠtats, il est possible d'appliquer dire tement les mĂŠthodes de la thĂŠorie des graphes, omme par exemple l'algorithme

A∗ .

Une solution lassique onsiste Ă dis rĂŠtiser l'environnement en ellule pour

ensuite appliquer la plani ation [Zhu 91℄. Cette mÊthode est très populaire puisqu'elle permet d'utiliser dire tement les grilles d'o upation [Morave 85, Thrun 02℄, qui onstituent un modèle d'environnement très ouramment utilisÊ, parti ulièrement en robotique mobile. NÊanmoins, et algorithme est très oÝteux, et ne peut pas être utilisÊ pour de grands environnements. La

mĂŠthode des roadmap

introduite dans [Canny 88â„„ nĂŠ essite la onstru tion de

l'ensemble des hemins standard, appelĂŠ parmi l'ensemble onstruit. Le

roadmap

roadmap. Il sut alors de hoisir le hemin optimal

peut être onstruit de diÊrentes façons, par exemple

en utilisant le graphe de visibilitĂŠ [Laumond 87â„„. Cette solution est moins oĂťteuse que la prĂŠ ĂŠdente. Cependant, le graphe de visibilitĂŠ reste di ile Ă onstruire en dimension ĂŠlevĂŠe.

Plani ation globale ontinue :

le problème de plani ation est mis sous la forme de

la minimisation d'une fon tion de oÝt intÊgrÊe le long d'une traje toire dÊ rite par le système d'Êquations diÊrentielles dÊ oulant de la dynamique du robot. Ce type de mÊthode a par exemple ÊtÊ utilisÊ pour le al ul de plus ourt hemin respe tant les ontraintes nonholonomes [Laumond 94℄. Contrairement aux mÊthodes dis rètes, e type d'algorithme n'est


2.1

Plani ation

13

pas omplet et il est impossible de dé ider à l'avan e s'il onvergera au bout d'un temps ni.

Plani ation probabiliste :

les méthodes probabilistes permettent de transformer e pro-

blème de omplétude en omplétude probabiliste appli able en pratique. L'algorithme n'est pas omplet mais garantit que la probabilité d'obtenir une solution tend vers 1 au bout d'un

probalisti road02℄ ou en ore le l

temps inni. Parmi les méthodes de plani ation probabiliste on trouve le

map [Kavraki 96℄, le rapidly exploring random tree [LaValle 99, Cheng d'Ariane [Mazer 98℄. Ces algorithmes permettent en pratique de trouver une solution mais la omplexité et le oût de al ul sont très élevés.

2.1.2 Plani ation dynamique L'exé ution d'un hemin planié repose sur l'hypothèse forte que l'environnement orrespond pendant toute la durée de l'exé ution au modèle qui a servi au al ul du hemin. Cette hypothèse n'est bien entendu pas respe tée dès qu'on sort d'un environnement ontrlé et simpliste. Une solution à e problème onsiste à imposer une ontrainte temporelle au hemin planié. On parle alors de traje toire. La notion de onguration-temps a été introduite dans [Erdmann 87℄ pour planier une traje toire en présen e d'obsta les mobiles. L'espa e des onguration-temps permet de voir l'obsta le mobile omme une plage d'espa e-temps interdite à la navigation. Les méthodes de plani ation par roadmap [Kant 86, Erdmann 87℄ ou par dé omposition en ellules [Fiorini 98℄ ont alors été adaptées en onsidérant la plani ation de traje toire omme une plani ation de hemin dans l'espa e des ongurations-temps : le prin ipal problème à résoudre lors de l'adaptation est posé par la variable temps qui ne peut pas être onsidérée omme une variable spatiale supplémentaire (on ne peut pas revenir dans le temps). La se onde hypothèse né essaire au al ul d'un hemin est la liberté de mouvement du robot. En parti ulier on suppose que le robot n'est pas soumis à des ontraintes de nonholonomie. Pour al uler une traje toire admissible pour un robot sujet à des ontraintes dynamiques de e type, une paramétrisation plus omplète du robot est requise, en ajoutant les variables dynamiques à sa onguration. On parle alors généralement d'une re her he dans

l'espa e des états

du robot [Canny 90℄.

La plani ation de traje toire introduit deux problèmes supplémentaires par rapport à la plani ation de hemin. Tout d'abord, la omplexité du al ul de hemin roît exponentiellement ave la dimension de l'espa e onsidéré. Or le al ul de la traje toire augmente la dimension du problème en ajoutant la variable temporelle (espa e des onguration-temps) voire la double (espa e des états). Ce problème a été partiellement résolu par l'introdu tion des méthodes de plani ation probabiliste, qui assent ette roissan e exponentielle de la omplexité. Malgré tout, es méthodes restent très oûteuses en temps de al ul. Le se ond problème provient de la quantité d'informations né essaires au al ul de la traje toire. Outre le modèle statique du monde, et dynamique du robot pour le al ul d'un hemin admissible, il est né essaire pour planier une traje toire en présen e d'obsta les mobiles, de onnaître parfaitement leur mouvements futurs. Cette onnaissan e, di ile à obtenir dans des as réels, est de plus oûteuse et in ertaine [Heinzinger 90, Bennewitz 05, Vasquez 05℄.


14

État de l'art et appro he proposÊe

2.2 DÊformation de traje toire Nous avons vu qu'il est di ile d'espÊrer pouvoir prÊvoir dès le dÊpart (au moment de la plani ation) les dÊpla ements des diÊrents obsta les dans l'espa e libre du robot. En plus de es problèmes inhÊrents à un environnement dynamique s'ajoutent des problèmes d'imprÊ ision ou d'in ertitudes dans la modÊlisation de l'environnement et dans la lo alisation du robot. Il peut don arriver que la traje toire al ulÊe au dÊbut du dÊpla ement ne soit pas valide, et que le robot soit in apable de rejoindre son obje tif à ause d'une erreur de traje toire. Une bonne synthèse de ette problÊmatique est faite dans [Lamiraux 04a℄. Une première solution onsiste à modier le modèle de l'environnement en fon tion des nouvelles informations reçues et à replanier la traje toire en onsÊquen e. Il n'est pas possible de replanier naïvement la traje toire, surtout si la dynamique du robot est omplexe, à ause du oÝt en temps de al ul. Des algorithmes spÊ iques ont ÊtÊ proposÊs pour replanier en ligne. Ils reposent gÊnÊralement sur une stru ture de type graphe, qui est onstruite lors de la première plani ation et utilisÊe pour une plani ation globale dis rète de type

A∗

[Stentz 94, Podsedkowski 98, Koenig 02â„„. Ces mĂŠthodes orent une solution intĂŠressante

pour la replani ation rapide. MalgrÊ tout, elles sont soumises aux problèmes lassiques des mÊthodes de plani ation globale dÊterministe et semblent en même temps di ilement adaptables aux mÊthodes de plani ations probabilistes. Une solution ÊlÊgante onsiste à modier la traje toire en fon tion de l'Êvolution du modèle de l'environnement. Cette solution a tout d'abord ÊtÊ proposÊe dans [Quinlan 93℄. La traje toire est onsidÊrÊe omme une bande Êlastique qui se dÊforme sous l'a tion des for es dÊ rites par un hamp de potentiels reprÊsentant les obsta les. Ces travaux s'ins rivant dans le adre de la robotique holonome furent ensuite Êtendus au as d'un uni y le [Khatib 97℄ puis de n'importe quel système haÎnÊ [Lamiraux 04b℄. L'avantage de ette mÊthode est qu'elle permet une dÊformation lo ale de la traje toire pour de nombreuses lasses de systèmes en utilisant le formalisme lassique des hamps de potentiels pour reprÊsenter les obsta les. MalgrÊ tout, ette mÊthode reste oÝteuse en temps de al ul. La solution trouvÊe est lo ale, e qui implique qu'une replani ation reste requise en as de hangement majeur de l'environnement (par exemple si une porte se ferme). De plus, il est bien Êvidemment nÊ essaire de onstruire la traje toire de dÊpart, Êtape qui reste oÝteuse en temps de al ul et en informations requises sur l'ensemble de l'environnement.

2.3 Ar hite tures de ommande Les premiers robots ont ĂŠtĂŠ onstruits en utilisant l'en haĂŽnement naĂŻf

Sense - Plan - A t

(per eption - dĂŠ ision - a tion). Ce mode d'a tion en bou le ouverte ne saurait onvenir Ă une appli ation dans des as rĂŠels. Nous avons vu qu'il est souvent nĂŠ essaire de modier, au ours du dĂŠpla ement du robot le plan al ulĂŠ au prĂŠalable. Puisqu'une modi ation lo ale n'est pas susante dans les as les plus omplexes, on est gĂŠnĂŠralement amenĂŠ Ă  doubler le module plani ation-exĂŠ ution d'un se ond module qui ontrle le dĂŠroulement du plan et intervient lorsqu'un hangement de stratĂŠgie est requis. Le hoix et l'agen ement des diĂŠrents modules d'exĂŠ ution, de ontrle ou de dĂŠ ision du robot est le domaine de re her he de l'ar hite ture de ontrle. Nous ne her hons pas i i Ă  ĂŠtablir un ĂŠtat de l'art dĂŠtaillĂŠ des nombreuses ar hite tures qui ont vu le jour depuis le dĂŠveloppement de la robotique mobile, mais plutt


2.3

Ar hite tures de ommande

15

à prÊsenter de manière synthÊtique les diÊrents hoix possibles.

2.3.1 Ar hite ture dÊlibÊrative Les ar hite tures dÊlibÊratives reposent sur une stru ture hiÊrar hisÊe. Les informations brutes arrivent en bas de la pyramide via des modules sensitifs simples. Le niveau d'abstra tion augmente au fur et à mesure que les informations montent dans la pyramide. Au sommet de la pyramide se trouve un modèle symbolique de l'environnement qui est utilisÊ pour al uler le plan abstrait global à appliquer. Ce plan est alors transmis au bas de la pyramide en diminuant graduellement son niveau d'abstra tion et en augmentant sa rÊsolution lo ale. Il est nalement onverti en ordres moteurs appliquÊs par les modules a tionneurs les plus simples. Un exemple ara tÊristique des ar hite tures dÊlibÊratives est donnÊ dans [Albus 91℄. Ce type d'ar hite ture repose sur l'hypothèse que la dynamique du monde diminue quand l'abstra tion augmente [Medeiros 97℄, ou plus prÊ isÊment que la dynamique de l'environnement peut être omprise dans un modèle susamment abstrait. Pourtant e type d'ar hite ture soure d'un manque de rÊa tivitÊ dÝ à la distan e qui sÊpare les per eptions immÊdiates de leur intÊgration au modèle.

2.3.2 Ar hite ture rÊa tive Les ar hite tures rÊa tives sont une rÊponse au manque de rÊa tivitÊ des ar hite tures dÊlibÊratives, et des robots du type Sense-Plan-A t de manière gÊnÊrale. La plus onnue de es ar hite tures est l'ar hite ture par Sumbsumption [Brooks 86, Brooks 91, Connell 92℄. Ces ar hite tures ont en ommun une absen e omplète de modèle symbolique du monde. La pro haine a tion à rÊaliser est gÊnÊralement al ulÊe omme la pondÊration de la sortie de plusieurs modules autonomes. Le hoix de la pondÊration est ee tuÊ par des modules de plus haut niveau, mais toujours sans utiliser de modèle de l'environnement. Ces ar hite tures permettent d'obtenir très fa ilement de très bons omportement lo aux et rÊa tifs. Lorsqu'un ÊvÊnement inattendu survient (par exemple un nouvel obsta le) le module appropriÊ prend la main et peut ainsi traiter immÊdiatement le problème. Les ar hite tures rÊa tives se sont nalement avÊrÊes in apables d'anti ipation à ause de l'absen e d'un module dÊlibÊratif [Hartley 91℄. De plus, l'absen e de plan expli itement formulÊ obligeait la onstru tion impli ite d'un plan lors de l'implÊmentation de l'ar hite ture par un hoix dÊlibÊrÊ de l'ordonnan ement des modules. Ce type d'ar hite ture est don rÊservÊ à des tâ hes robotiques semi-autonomes spÊ iques, oÚ l'en haÎnement des a tions à ee tuer est onnu à l'avan e. Elle est parti ulièrement e a e en robotique mobile lorsque la puissan e de al ul embarquÊe est faible (typiquement pour des multi-robots [Stroupe 05, Lerman 06℄). Certains travaux proposèrent l'ajout de apa itÊs dÊlibÊratives par des modules supplÊmentaires [Arkin 87, Gat 91, Bonasso 91℄. Ces ar hite tures restent des ar hite tures rÊa tives ar les modules dÊlibÊrateurs ne ontrlent pas le reste de l'ar hite ture mais sont situÊs sur le même niveau. Les modules rÊa tifs restent apables de fon tionner de manière autonome, mais sont inuen Ês par les plans al ulÊs par les autres modules. Parmi les ar hite tures de e type on trouve frÊquemment les ar hite tures

entralisĂŠes.

La entralisation se fait Ă l'aide

d'une mĂŠmoire partagĂŠe appelĂŠe tableau noir [Simmons 94â„„. La distribution du plan se fait par ommuni ation entre le module plani ateur et les autres modules au travers du tableau noir.


16

État de l'art et appro he proposÊe

On peut repro her Ă e type d'ar hite ture l'insusan e et la di ultĂŠ de dĂŠveloppement de fon tionnalitĂŠs dĂŠlibĂŠratri es de haut niveau, lo alisĂŠes dans un module quel onque et sans moyen parti ulier d'imposer l'appli ation du plan al ulĂŠ.

2.3.3 Ar hite ture mixte Les ar hite tures dÊlibÊratives manquent de rÊa tivitÊ, les ar hite tures rÊa tives manquent au ontraire d'anti ipation. Comme souvent quand deux solutions on urrentes prÊsentent e type de omplÊmentaritÊ, des solutions mixtes ont ÊtÊ proposÊes pour ombiner les avantages de ha un tout en Êliminant leurs in onvÊnients. Parmi les ar hite tures mixtes, on peut iter les ar hite tures 3T [Bonasso 96℄, CLARAty [Volpe 01℄, LAAS [Chatila 95, Alami 98℄, ou en ore l'ar hite ture IDEA, orientÊe multi-robot [Mus ettola 02℄. Ces ar hite tures sont omposÊes de modules rÊa tifs autonomes, 'est-à -dire de modules très pro hes des entrÊes apteurs, ave un Êtat interne rÊduit. Elles sont don apables, grâ e à es modules, de rÊa tions rapides aux ÊvÊnements imprÊvus. D'un autre tÊ, l'exÊ ution est ontrlÊe et ordonnan Êe par un niveau dÊ isionnel qui permet l'Êlaboration d'un omportement de haut niveau et fournit au robot les apa itÊs d'anti ipation qui lui font dÊfaut dans les ar hite tures purement rÊa tives. Ces ar hite tures sont rÊgulièrement utilisÊes pour le dÊploiement de robot en environnement rÊel, par exemple pour les robots semi-autonomes d'exploration planÊtaire [Nesnas 06℄ ou pour le dÊploiement d'un robot dans une foule lors du projet ROBEA HR+ [Alami 00℄.

2.4 Retour à la ommande rÊfÊren Êe apteur Nous avons vu que la plani ation de mouvement ne pouvait rÊpondre à elle seule au problème du dÊpla ement d'un robot en prÊsen e de nombreuses ontraintes. Pour rÊsoudre e problème, la solution privilÊgiÊe semble être de omplexier le système : augmentation de la omplexitÊ du modèle de l'environnement pour essayer d'en apturer la dynamique [Frai hard 99℄ ; ajout de fon tionnalitÊs d'Êvitement rÊa tif pendant le suivi de traje toire [Bro k 02, Xu 03℄ ; ajout de modules de ontrle de l'exÊ ution [Py 04℄, de modi ation de la traje toire [Quinlan 97, Lamiraux 04b℄, ou de rÊparation du plan al ulÊ [Lemai 04℄. On arrive nalement à des ar hite tures omplexes et fon tionnelles, qui sont apables de pro urer une ertaine autonomie au robot dans des environnements omplexes mais demandent ÊnormÊment de travail de modÊlisation et d'implÊmentation aux programmateurs, ainsi que d'Ênormes ressour es en puissan e et en temps de al ul lors de l'exÊ ution. Ces systèmes sont aussi soumis aux problèmes de gÊnie logi iel lassiques inhÊrents à tout logi iel d'une telle omplexitÊ, parti ulièrement les logi iels distribuÊs asyn hrones [Klein 91, Espiau 95℄. Pourtant des solutions alternatives existent qui permettent d'espÊrer des rÊsultats similaires en sur hargeant moins le système, à la fois en ne planiant pas le trajet omplet du robot et en augmentant les degrÊs de libertÊ disponibles pour la prise en ompte rÊa tive de ontraintes se ondaires.

2.4.1 Moins de plani ation D'une part, de nombreux travaux en ommande permettent de rÊaliser des dÊpla ements omplexes, sans re ourir à la plani ation. L'asservissement rÊfÊren Ê apteur n'ore thÊoriquement qu'une onvergen e lo ale. Mais en hoisissant orre tement les variables de ommande, on obtient en pratique un domaine de onvergen e très important, permettant d'appliquer dire tement une ommande rÊa tive pour des as omplexes. En asservissement visuel par exemple, les travaux sur les informations visuelles optimales (asservissement 2-1/2-D [Malis 99, Corke 01℄, asservissement selon les moments de


Credo

2.5

17

l'image [Chaumette 04, Tahri 05℄) permettent quasiment d'assurer une onvergen e, quelle que soit la onguration initiale de l'objet dans l'image. De la même manière, des te hniques de ommande avan Êes permettent d'obtenir de larges domaines de onvergen e pour des robots omplexes à ontrler. Par exemple, en robotique nonholonome, les travaux rÊ ents permettent d'a omplir de grands dÊpla ements sans planier la traje toire à l'avan e [M'Closkey 97, Morin 03, Maya 06, Kolmanovsky 95a, DeLu a 97℄. En robotique humanoïde, des s hÊmas de ontrle rÊa tifs permettent d'exÊ uter un grand nombre de tâ hes simultanÊment en protant de la grande redondan e du robot, tout en gÊrant l'Êquilibre et la dynamique du système [Sian 05, Sentis 05a℄.

2.4.2 Plus de libertÊ En ne planiant pas ses mouvements, es diÊrents travaux orent plus de libertÊ au robot. Au lieu de suivre une traje toire, planiÊe à l'avan e, qui peut s'avÊrer inadÊquate ou fausse, le robot onstruit au fur et à mesure sa traje toire, et peut modier son dÊpla ement instantanÊment en fon tion des ontraintes qu'il ren ontre. Sans renon er omplètement à la plani ation, d'autres travaux proposent de ne pas planier tous les mouvements dès le dÊpart, ou de laisser plus de libertÊ lors de l'exÊ ution. Dans [Yoshida 05℄, seuls les mouvements de la partie basse du robot humanoïde sont planiÊs au dÊpart. Durant l'exÊ ution, si le ontrleur prÊdit une ollision par exemple ave un obsta le situÊ en hauteur, alors une se onde Êtape de plani ation est utilisÊe pour ontrler la partie haute du robot et assurer l'Êvitement de l'obsta le. Dans [Cheah 05℄, le robot navigue à proximitÊ de la traje toire planiÊe, sans être ontraint de suivre exa tement la onsigne. Les degrÊs de libertÊ ainsi obtenus sont alors utilisÊs pour rÊaliser une tâ he se ondaire. Nous prÊsenterons e dernier travail plus en dÊtail puisqu'il est très pro he des travaux rÊalisÊs dans le hapitre 5.

2.4.3 Programmation par tâ hes Ces travaux permettent ainsi de s'abstraire d'une ertaine manière de la ommande bas niveau, et orent un ontrle du robot par tâ hes : plutt que de xer au robot l'ensemble des mouvements à ee tuer pour a omplir sa tâ he, on lui spÊ ie des tâ hes partielles à a omplir, des ontraintes à respe ter, et . Plusieurs travaux ont dÊjà permis d'obtenir des exÊ utions omplexes tout en respe tant des ontraintes. Dans [Soueres 03℄, un en haÎnement de tâ hes ad-ho est proposÊ pour positionner une plateforme mobile ÊquipÊe d'une amÊra en fa e d'une ible, tout en Êvitant les obsta les pla Ês sur le hamp de travail du robot. Dans [Peterson 03℄ un en haÎnement de tâ hes est utilisÊ pour ouvrir une porte à l'aide d'un manipulateur mobile. Un adre de travail rigoureux est introduit dans [Sentis 06℄ pour ee tuer de la programmation par tâ he sur un robot humanoïde. La tâ he globale à rÊaliser est expli itement stipulÊe en termes de sous-tâ hes à a omplir et de ontraintes à respe ter. Enn, un ontrleur a ÊtÊ proposÊ dans [Chesi 03℄ pour en haÎner automatiquement des tâ hes an de respe ter la ontrainte de visibilitÊ lors de l'asservissement.

2.5

Credo

Nous avons prÊsentÊ un Êtat de l'art su in t des appro hes de ommande de robot autonome. Voyons maintenant quelle mÊthode nous en avons retenue pour la suite de ette thèse. Tout d'abord, le travail prin ipal de ette thèse n'est pas de proposer une nouvelle ommande permettant d'Êtendre le domaine de travail du robot. Il ne s'agit pas non plus d'Ê rire une nouvelle ar hite ture de ommande permettant de spÊ ier au robot des missions du type 

situĂŠe Ă l'intĂŠrieur du frigo

rapporter la anette

. Notre travail s'ins rit plutt entre es deux domaines, en s'atta hant

à proposer un système apable de gÊnÊrer un mouvement ayant un large domaine de onvergen e et apable de gÊrer de multiples ontraintes pendant le dÊpla ement, en se basant sur une omposition


18

État de l'art et appro he proposÊe

de ommandes rÊa tive à onvergen e lo ale. De e point de vue, notre travail se pla e don plutt au même niveau que les travaux de plani ation mais en utilisant la ommande rÊa tive. Planier un hemin est en eet la manière la plus rÊpandue d'Êtendre le domaine de travail du robot, mais entraÎne tous les problèmes de lourdeur et de manque de rÊa tivitÊ que nous avons vus plus haut. Nous pensons que les travaux en ommande rÊa tive sont aujourd'hui susamment aboutis pour pouvoir atteindre des niveaux de performan e omparables à eux de la plani ation et du suivi de traje toire, à ondition de les omposer orre tement. Dans ette thèse, nous allons nous atta her à dÊ rire une mÊthode gÊnÊrale pour rÊaliser une tâ he robotique, s'exprimant sous la forme d'une erreur apteur, tout en respe tant un ensemble de ontraintes imposÊes par l'environnement ou par la stru ture du robot. L'idÊe gÊnÊrale est de diviser la tâ he à rÊaliser en plusieurs tâ hes ÊlÊmentaires, qui ne ontraignent ha une qu'une sous-partie de l'ensemble des degrÊs de libertÊ du robot. L'ensemble des tâ hes ÊlÊmentaires doivent être a omplies pour que la tâ he globale soit satisfaite. D'un autre tÊ, ha une des tâ hes ÊlÊmentaires peut être dÊsa tivÊe pour augmenter le nombre de degrÊs de libertÊ disponible pour la prise en ompte des ontraintes. A haque pas de temps, le robot se dÊpla e pour rÊaliser les tâ hes a tives, tout en prenant les ontraintes en ompte. Un ontrleur de plus haut niveau, raisonnant dans l'espa e des tâ hes, vÊrie l'exÊ ution, et se harge de dÊsa tiver les tâ hes adÊquates lorsqu'une ontrainte n'est pas susamment prise en ompte, ou au ontraire de rÊa tiver des tâ hes lorsque les ontraintes sont orre tement respe tÊes, de manière à ontinuer l'exÊ ution de la tâ he globale. Notre travail se base don sur les travaux en ommande rÊfÊren Êe apteur, en parti ulier sur la fon tion de tâ he [Samson 91℄, et sur le formalisme de la redondan e [Liegeois 77, Hanafusa 81, Si iliano 91℄. En pratique, nous avons gÊnÊralement mis en áuvre nos algorithmes en utilisant l'asservissement visuel [Espiau 92, Hut hinson 96, Tahri 05℄ ar une amÊra permet d'obtenir un retour apteur extrêmement ri he et très adaptÊ à un ontrle prÊ is et rapide. Ces travaux sont très pro hes

des travaux sur la ommande ommutative (swit hing

ontrol law )

[Gans 03, Gans 02, Chesi 03â„„, ar

la tâ he globale est rÊalisÊe en en haÎnant des phases de rÊalisation de la tâ he globale seule suivies de phases de prise en ompte des ontraintes. En outre, nos travaux sont Êgalement à rappro her des travaux rÊ ents her hant à raisonner dans l'espa e des tâ hes [Sentis 05a, Sian 05, Sentis 06, DeLu a 06℄.

2.6 Organisation du mÊmoire Dans la suite du do ument, nous prÊsentons un adre de travail gÊnÊral pour ontrler diÊrents types de robots par en haÎnement de tâ hes. Le travail est divisÊ en deux parties. Dans la première partie, nous onstruisons une stru ture de ontrle appelÊe pile de tâ hes, permettant de ommander le robot au niveau des tâ hes et non plus dire tement au niveau arti ulaire. Dans la se onde partie, nous utilisons alors ette stru ture pour proposer une solution gÊnÊrale de ontrle au niveau des tâ hes, et nous l'appliquons sur plusieurs robots diÊrents. La première partie est divisÊe en quatre hapitres.

Première partie ( hapitres 3 à 6) Chapitre 3 : Pile de tâ hes :

Dans le premier hapitre, nous appliquons un formalisme lassique

de la ommande rÊa tive, le formalisme de la redondan e, pour onstruire la pile de tâ hes. Cette stru ture permet de sÊle tionner et d'ordonner un ensemble de sous tâ hes que le robot doit a omplir, et de ontraintes qui doivent être respe tÊes pendant l'asservissement. En appliquant une hiÊrar hie sur les tâ hes a tives, la pile de tâ hes garantit qu'au un onit entre les tâ hes n'apparaÎtra. De plus, la pile de tâ hes permet de modier dynamiquement les tâ hes sÊle tionnÊes ou leur ordre en assurant la ontinuitÊ de la ommande. Cette stru ture a ÊtÊ validÊe expÊrimentalement dans un premier temps ave le robot industriel de l'IRISA. Enn, nous avons Êtendu son utilisation ave des robots moins bien alibrÊs, dans le adre d'une ollaboration ave l'ISR/IST de Lisbonne.


2.6

Organisation du mĂŠmoire

19

Chapitre 4 : Redondan e dire tionnelle :

La pile de tâ hes permet de rÊaliser des tâ hes

omplexes à ondition que susamment de degrÊs de libertÊ soit laissÊs disponibles pour la prise en ompte des ontraintes. Pour amÊliorer les possibilitÊs d'exÊ ution, nous avons tout d'abord her hÊ à augmenter le nombre de degrÊs de libertÊ en modiant le formalisme de la redondan e sous-ja ent à la pile de tâ hes. En eet, la redondan e lassique permet de prendre en ompte une tâ he ou une ontrainte se ondaire en annulant toutes les parties de la ommande qui modie le omportement de la tâ he prin ipale. Cette ontrainte est une hypothèse très forte, que nous proposons d'allÊger pour apporter plus de libertÊ à la tâ he se ondaire. Le formalisme modiÊ est nommÊ redondan e dire tionnelle. Il permet de prendre en ompte tous les mouvements de la tâ he se ondaire à ondition que eux- i ne ralentissent pas l'exÊ ution de la tâ he prin ipale. Ce formalisme a ÊtÊ validÊ sur le robot de l'IRISA, et gÊnÊralisÊ à la pile de tâ hes pour en amÊliorer le omportement global.

Chapitre 5 : Asservissement qualitatif :

Une se onde limitation de la pile de tâ hes est la

nÊ essitÊ de pla er les ontraintes en sommet de pile, 'est-à -dire en queue de le de prioritÊ. Pour permettre l'intÊgration des ontraintes dans la pile, il est nÊ essaire de les Ê rire omme des tâ hes, et non plus omme des fon tions de oÝt à optimiser. L'asservissement qualitatif permet d'asservir le robot au voisinage d'un point, plutt qu'en une position unique. Or 'est justement le omportement voulu dans le as gÊnÊral lorsqu'on souhaite Êviter une zone oÚ la ontrainte n'est pas respe tÊe. Lorsqu'une primitive de la tâ he à a omplir entre dans un intervalle de valeurs satisfaisantes, elle n'est plus prise en ompte dans le al ul de la loi de ommande. De ette manière, le degrÊ de libertÊ orrespondant est libÊrÊ, et peut être utilisÊ pour rÊaliser d'autres tâ hes. L'asservissement qualitatif a ÊtÊ mis en áuvre pour Ê rire les ontraintes de visibilitÊ et d'Êvitement de butÊes arti ulaire lors d'un asservissement visuel. La tâ he qualitative permet de pla er la ontrainte en tâ he prioritaire, et ainsi de garantir le respe t de la ontrainte. De plus, l'asservissement qualitatif permet de relâ her l'asservissement de la tâ he prin ipale, et d'utiliser les degrÊs de libertÊ dÊgagÊs pour exÊ uter une tâ he se ondaire. Enn, les tâ hes qualitatives peuvent être ajoutÊes omme des tâ hes lassiques à la pile de tâ hes.

Chapitre 6 : Tâ hes à dimension variable :

Un in onvĂŠnient important de l'asservissement

qualitatif apparaÎt lorsque la tâ he est omposÊe d'informations non redondante. Dans e as, lors de l'a tivation ou de la dÊsa tivation de primitives, la loi de ommande est dis ontinue et engendre don de fortes a ÊlÊrations sur le robot. Dans le hapitre 6, nous montrons que les tâ hes qualitatives appartiennent à une lasse plus gÊnÊrale appelÊe tâ hes à dimension variable, qui prÊsentent toutes e même type de dis ontinuitÊ. Nous proposons alors une solution pour rÊsoudre e problème dans le as gÊnÊral, reposant sur la onstru tion d'un nouvel opÊrateur d'inversion matri iel ontinu même lorsque la matri e inversÊe hange de rang. Puis ette solution est appliquÊe à la pile de tâ hes. Ce dernier hapitre nous paraÎt parti ulièrement intÊressant ar il s'agit d'une première Êtape pour gÊnÊraliser le formalisme des fon tions de tâ hes en se dispensant de l'hypothèse de rang onstant de la tâ he onsidÊrÊe.

A la n de ette première partie, la stru ture omplète de la pile de tâ hes est onstruite. Elle permet d'exÊ uter un asservissement en prenant en ompte ontraintes et tâ hes dans un ordre quel onque, et en maximisant la prise en ompte des tâ hes non prioritaire grâ e à l'utilisation de la redondan e dire tionnelle. NÊanmoins, ette stru ture n'est pas apable de garantir le respe t des ontraintes et la rÊalisation des tâ hes dans tous les as. La se onde partie du mÊmoire propose don d'utiliser les fon tionnalitÊs de ommande au niveau des tâ hes oertes par la pile pour ontrler le respe t des ontraintes pendant la rÊalisation d'une tâ he prioritaire ontraignant la majeure partie des degrÊs du robot. Cette mÊthode gÊnÊrale est ensuite appliquÊe à plusieurs types de robots.


20

État de l'art et appro he proposÊe

Deuxième partie ( hapitres 7 à 9)

Chapitre 7 : ontrle de haut niveau, appli ation aux robots manipulateurs : Nous dÊveloppons tout d'abord une ar hite ture permettant de rÊaliser le ontrle haut niveau du robot, en utilisant les fon tionnalitÊs d'en haÎnement de la pile de tâ hes. Dans un premier temps, le robot se dÊpla e pour rÊaliser l'ensemble des sous-tâ hes de la pile, omposant la tâ he globale à exÊ uter. Lorsque le ontrleur de haut niveau prÊdit la violation pro haine d'une ontrainte, il sÊle tionne de manière optimale une tâ he de la pile qu'il retire. Des degrÊs de libertÊ sont ainsi dÊgagÊs, et la ontrainte peut alors être respe tÊe. Le ontrleur surveille alors le dÊroulement de l'exÊ ution, et remet dès que possible la tâ he retirÊe dans la pile, pour poursuivre le rÊalisation de la tâ he globale. La mÊthode est appliquÊe dans e hapitre à la rÊalisation de tâ hes de positionnement sur le robot de l'IRISA, en prÊsen e de ontraintes multiples : butÊes arti ulaires, o ultations visuelles et obsta les.

Chapitre 8 : appli ation aux robots non holonomes :

La mĂŠthode proposĂŠe permet de

prendre en ompte des ontraintes pouvant se mettre sous la forme de fon tions de oÝt ou de tâ hes qualitatives, 'est-à -dire des ontraintes intÊgrables. Nous proposons alors une première Êtude pour l'appliquer à des robots non-holonomes, qui ne respe tent pas ette hypothèse. En eet, la ontrainte de non holonomie n'est pas intÊgrable, et ne peut don pas se mettre sous forme d'une fon tion de oÝt. Dans un premier temps, nous prÊsentons une solution pour Ê rire une ommande au se ond ordre du robot non-holonome de manière appro hÊe, en onservant une forme très pro he des ommandes du premier ordre. Cette solution nous permet d'appliquer dire tement les ommandes rÊfÊren Êes apteur de la robotique holonome aux robots mobiles. En utilisant ette ommande, nous appliquons alors la solution d'en haÎnement de tâ hes et de ontrle de haut niveau pour la rÊalisation d'une tâ he de positionnement sur un robot de type uni y le en prÊsen e d'obsta les, et sur un robot de type voiture.

Chapitre 9 : appli ation aux robots humanoĂŻdes :

Enn, le dernier hapitre est une mise

en appli ation dire te des travaux de ette thèse pour des robots humanoïdes. Les travaux prÊsentÊs dans e hapitre ont ÊtÊ rÊalisÊs dans le adre d'une ollaboration ave le laboratoire JRL-Japan de Tsukuba. Dans un premier temps, nous montrons que la pile de tâ hes permet de gÊnÊrer des mouvements pour le robot omplet, en assurant en parti ulier que les perturbations dues à la mar he sont automatiquement orrigÊes lors de la rÊalisation d'une tâ he par le haut du orps. Nous utilisons alors la pile de tâ hes et le ontrle de haut niveau pour rÊaliser une tâ he de saisie pendant la mar he.


Première partie Bas niveau

21


Chapitre 3

Pile de tâ hes

L

a première partie de e mémoire est onsa rée à l'étude et à la onstru tion de lois de ommande référen ée apteur permettant l'exé ution d'une tâ he prin ipale omplexe ( 'est-à-dire requérant

l'utilisation de nombreux degrés de liberté du robot, voire tous) tout en dégageant le maximum de degrés de liberté pour l'appli ation de ontraintes se ondaires lors du dépla ement. Les lois de ommande que nous allons proposer sont basées sur le formalisme des fon tions tâ hes [Samson 91, Espiau 92℄ et du formalisme de la redondan e [Rosen 60, Liegeois 77, Si iliano 91℄. Le premier hapitre propose d'utiliser dire tement es deux formalismes pour onstruire une stru ture appelée

pile de tâ hes

permettant de modier pendant l'asservissement la omplexité de la tâ he prin ipale de manière à augmenter ou diminuer le nombre de degrés de liberté disponibles pour les ontraintes se ondaires. Dans le se ond hapitre, nous proposons de modier le formalisme de la redondan e de manière à augmenter le nombre de degrés de liberté dire tement lors du al ul de la loi de ommande. Nous présentons ensuite au hapitre 5 un s héma de ontrle original nommé

asservissement qualitatif

per-

mettant d'élargir la zone de onvergen e. Nous verrons que ela permet d'exprimer simplement un grand nombre de ontraintes pouvant s'appliquer en ours d'asservissement, an de les intégrer plus simplement à l'intérieur de la pile (par exemple les butées arti ulaires, ou la visibilité des informations visuelles). Ce type d'asservissement présente des dis ontinuités lors de l'a tivation ou de la desa tivation d'une ontrainte, e qui limite son intérêt en pratique et empê he son introdu tion dans la pile. En s'intéressant au problème plus général des tâ hes dont la dimension varie en ours d'asservissement, le dernier hapitre propose une première solution permettant de résoudre e problème de dis ontinuité.

3.1 Fondamentaux théoriques Dans e hapitre, nous présentons la pile de tâ hes. Cette stru ture a été utilisée pour la réalisation des autres travaux présentés dans ette thèse. Elle permet de dénir le omportement du robot omme une omposition de plusieurs tâ hes. En ordonnant les tâ hes, elle permet de d'assurer qu'il n'y aura au un onit entre elles. De plus, ette stru ture apporte aussi plusieurs fon tionnalités pouvant être utilisées par une ommande de plus haut niveau, en permettant d'a tiver ou de désa tiver une tâ he en l'ajoutant ou la retirant de la pile.


24

Pile de tâ hes

3.1.1 Etat de l'art De nombreuse mÊthodes ont ÊtÊ proposÊes pour exÊ uter une tâ he robotique tout en prenant en ompte des ontraintes se ondaires. La première grande famille de solutions onsiste à planier la traje toire pour hoisir à l'avan e le mouvement à exÊ uter pour rejoindre le but prin ipal tout en respe tant de manière optimale les ontraintes. Mais, omme nous l'avons expliquÊ dans le hapitre prÊ Êdent, la solution de la plani ation impose des mÊthodes lourdes et oÝteuses, qui de plus sont di iles à rendre rÊa tives aux hangements de l'environnement. La deuxième lasse de solutions onsiste à prendre en ompte les ontraintes dire tement lors du al ul de la loi de ommande omme une se onde fon tion d'obje tif à minimiser. Cela permet d'obtenir un omportement très rÊa tif puisque la fon tion d'obje tif est fa ilement modiable pendant l'asservissement. La première façon de prendre e se ond obje tif onsiste à rÊaliser un ompromis entre la tâ he prin ipale et les ontraintes [Cheng 94, Mezouar 02, Nelson 95℄. Dans e dernier arti le, le robot bouge en essayant à la fois de rÊaliser la tâ he se ondaire et de rester à distan e des butÊes arti ulaires et des singularitÊs. A l'inverse, une se onde solution onsiste à pondÊrer les omposantes du mouvement al ulÊ d'après la tâ he prin ipale en fon tion des ontraintes, de manière à interdire tout mouvement qui amènerait une violation des ontraintes [Chang 95, Hwang 98℄. De ette manière, le robot ne rÊalise pas de mouvements supplÊmentaires pour prendre la ontrainte en ompte, mais au ontraire diminue l'amplitude des mouvements faisant augmenter la fon tion d'obje tif se ondaire. Cette solution permet ainsi d'Êviter des mouvements inutiles. Toutefois, es mÊthodes modient la ommande de la tâ he prin ipale et peuvent alors en perturber grandement la rÊalisation. Une spÊ i ation supplÊmentaire est gÊnÊralement requise : l'appli ation des ontraintes se ondaires ne doit pas modier la rÊalisation de la tâ he prin ipale. La mÊthode du gradient projetÊ (Gradient

Proje ted Method,

GPM) a ĂŠtĂŠ introduit initialement en minimisation non

linÊaire [Rosen 60, Rosen 61℄. Cette mÊthode a depuis ÊtÊ appliquÊe de nombreuses fois en robotique [Liegeois 77, Hanafusa 81, Samson 91, Espiau 92℄. Comme prÊ Êdemment, les ontraintes se ondaires sont exprimÊes sous la forme d'une fon tion d'obje tif à minimiser. Le gradient de ette fon tion est al ulÊ, puis projetÊ sur l'espa e des mouvements qui laisse la tâ he prin ipale invariante. Le gradient projetÊ est ensuite sommÊ à la loi de ommande al ulÊe d'après la tâ he prin ipale. L'avantage prin ipal de ette mÊthode par rapport aux solutions prÊsentÊes dans le paragraphe prÊ Êdent est de garantir que l'appli ation des ontraintes se ondaires n'aura au un eet sur la tâ he prin ipale, grâ e au hoix du bon opÊrateur de proje tion. On trouve de nombreux exemples de l'utilisation de ette mÊthode pour des as appliquÊs, par exemple pour rÊaliser un Êvitement de butÊes arti ulaires et d'o ultations visuelles [Mar hand 98℄, pour optimiser la rÊpartition des for es sur les jambes d'un robot mar heur [Klein 90℄, pour la hiÊrar hisation de plusieurs obje tifs pour des humanoïdes très redondants [Baerlo her 04℄ ou en ore pour ltrer les mouvements d'un lini ien humain d'après l'anatomie du patient dans une appli ation de oopÊration homme-ma hine pour la hirurgie o ulaire [Hager 02℄. Cette mÊthode permet don d'appliquer fa ilement une tâ he se ondaire tout en garantissant l'exÊ ution de la tâ he prin ipale. Cependant, il peut arriver que la ontrainte de non-perturbation de la tâ he prin ipale soit si forte que les ontraintes se ondaires ne soient que très peu (voire pas du tout) prises en ompte. La loi de ommande globale est alors in apable de respe ter les ontraintes se ondaires lors du dÊpla ement du robot. En fait, seuls les degrÊs de libertÊ inutilisÊs par la tâ he prin ipale sont disponibles pour les ontraintes se ondaires. Plus la tâ he prin ipale est omplexe, plus elle requiert de degrÊs de libertÊ, et moins les ontraintes se ondaires seront prises en ompte. Bien sÝr, si la tâ he prin ipale requiert tous les degrÊs de libertÊ (par exemple lors du positionnement de l'ee teur d'un robot non redondant), il est alors impossible de prendre en ompte des ontraintes se ondaires. Dans le as oÚ la tâ he prin ipale est trop omplexe pour permettre la prise en ompte de ontraintes se ondaires, il est nÊ essaire d'alterner des phases d'exÊ ution de la tâ he prin ipale ave des phases de prises en ompte des ontraintes. Dans [Chesi 03℄, une loi de ommande ommutative (swit hing ontrol law) est proposÊe pour gÊrer la ontrainte de visibilitÊ des informations apteur lors d'un asservissement visuel. Lorsque le mouvement rÊalisÊ par la amÊra pour satisfaire la tâ he


3.1

Fondamentaux thĂŠoriques

25

prin ipale onduit à faire sortir la ible du hamp de vue de la amÊra, les mouvements de rotation sont annulÊs e qui permet de dÊgager les degrÊs de libertÊ nÊ essaires pour garantir la visibilitÊ. Lorsque e n'est plus susant, un mouvement de re ul le long de l'axe optique est ee tuÊ pour gagner en profondeur de hamp et onserver la ible dans le hamp de vue. Dans [Soueres 03℄ le robot en haÎne des phases de positionnement ave des phases d'Êvitement d'obsta les. Une autre loi de ommande ommutative est proposÊe dans [Gans 02℄ pour gÊrer les ontraintes propres aux asservissements visuels 2D et 3D. Les auteurs remarquent que es deux grandes lasses d'asservissements sont omplÊmentaires, et utilisent la loi de ommande ommutative pour passer d'un asservissement 2D à un asservissement 3D (et rÊ iproquement) quand es ontraintes ne sont pas orre tement respe tÊes. Cela permet d'Êtendre le domaine de onvergen e à l'union des domaines de onvergen e des deux mÊthodes prises sÊparÊment. Enn, des solutions pragmatiques ont ÊtÊ proposÊes pour rÊaliser des tâ hes omplexes en en haÎnant des phases de mouvements simples et de prise en ompte des ontraintes [Peterson 03℄. L'en haÎnement est gÊnÊralement rÊalisÊ grâ e à un ontrleur ad-ho onstruit à partir de onnaissan es a priori sur la tâ he à ee tuer. Enn, terminons en itant un domaine de la robotique qui s'intÊresse parti ulièrement à de tels types de ommandes. La robotique humanoïde se ara tÊrise par un grand nombre de degrÊs de libertÊ permettant de rÊaliser simultanÊment plusieurs tâ hes grâ e à la grande redondan e oerte par le système. Ce type de robot est de plus soumis à de nombreuses ontraintes qu'il est di ile de rÊsoudre analytiquement : Êquilibre, onta t (entre autre, onta t des pieds au sol), auto- ollision, butÊes et singularitÊs arti ulaires ... Des travaux rÊ ents her hent à utiliser l'asservissement rÊfÊren Ê apteur omme des briques de base pour le ontrle des robots humanoïdes. Dans [Sian 05℄, un utilisateur donne des onsignes en vitesse artÊsienne dans les repères terminaux du robot, et es onsignes sont appliquÊes sous ontrainte que les moments linÊaires et angulaires du robot restent onstant. Dans [Sentis 05a℄, une solution gÊnÊrale basÊe sur le ja obien Êtendu [Khatib 87℄ est proposÊe pour gÊrer la dynamique du robot. Ce travail a ÊtÊ ensuite Êtendu dans [Sentis 06℄ à des robots en onta t. Dans e dernier arti le, ontraintes, tâ hes et postures sont gÊrÊes de manière hiÊrar hique et permettent de travailler de manière plus intuitive dans l'espa e des tâ hes pour gÊnÊrer des omportements omplexes. Dans la suite de e hapitre, nous dÊnissons une stru ture de ontrle permettant simplement d'en haÎner des phases de positionnement utilisant tous les degrÊs de libertÊ du robot et des phases de ontrle hybride positionnement/prise en ompte des ontraintes.

3.1.2 HiÊrar hie de tâ hes en utilisant la redondan e La pile de tâ hes que nous allons maintenant onstruire permet de dÊnir quelles tâ hes sont a tives et ordonne les tâ hes a tives de manière à Êviter les onits. Des tâ hes peuvent être ajoutÊes ou retirÊes dynamiquement, permettant ainsi de modier le omportement du robot durant l'asservissement. Les tâ hes au bas de la pile sont prioritaires et sont appliquÊes prioritairement en as de onit. La loi de ommande est al ulÊe à partir de toutes les tâ hes de la pile en respe tant les trois règles suivantes :  une tâ he nouvellement ajoutÊe dans la pile ne doit pas perturber les tâ hes dÊjà en pla e ;  la loi de ommande doit être ontinue quelles que soient les manipulations ee tuÊes sur la pile, en parti ulier lors de l'ajout ou du retrait d'une tâ he. En eet, le robot est ontrlÊ en vitesse. Un saut de ontinuitÊ signierait une a ÊlÊration innie pendant un bref instant. Ce i n'est pas rÊalisable par un système rÊel, et la loi de ommande ne serait don pas appliquÊe orre tement par le robot ;  enn, lorsque ela est possible, les ontraintes se ondaires sont ajoutÊes à la loi de ommande, sous la ontrainte de ne pas perturber les tâ hes prÊsentes dans la pile. Toutes les ontraintes sont ajoutÊes en sommet de pile, sans prioritÊ entre elles. La loi de ommande est al ulÊe en utilisant le formalisme de la redondan e [Rosen 61, Si iliano 91, Chiaverini 97℄. Nous rappellerons tout d'abord rapidement la redondan e lassique appliquÊe à deux tâ hes en utilisant le formalisme sous-ja ent des fon tions de tâ hes [Samson 91℄. Puis nous prÊsenterons deux solutions pour Êtendre e formalisme à plus de deux tâ hes, en omparant es deux solutions pour on lure.


26

Pile de tâ hes

Formalisme de la redondan e pour deux tâ hes Soit

q

le ve teur de positions arti ulaires du robot. On note e1 et e2 deux fon tions de tâ hes. i Ji = ∂e ∂q (i = 1, 2) sont dĂŠnis par l'ĂŠquation suivante :

Leurs ja obiens respe tifs

e˙ i = Les tâ hes

nĂ—k

ei

∂ei q˙ = Ji q˙ ∂q

(3.1)

Êtant par hypothèse des fon tions de tâ he, leur ja obien est de rang plein : si on note

k.

la dimension du ja obien, alors son rang vaut

On peut obtenir

qË™

Le robot est ontrlĂŠ en vitesse arti ulaire

qË™ = J+ Ë™ ∗1 + P1 z 1e oĂš

J+ 1

qË™ .

en inversant l'ĂŠquation (3.1) : (3.2)

est la pseudo-inverse (ou inverse des moindres arrĂŠs) de la matri e

J1

[BenIsrael 80â„„,

e˙ ∗1

est

la onsigne, 'est-Ă -dire le mouvement que l'on souhaite obtenir dans l'espa e de la tâ he et P1 est le + proje teur ve toriel sur le noyau du ja obien J1 (P1 = I − J1 J1 ). On suppose i i que les ja obiens Ji sont parfaitement onnus. Dans le as ontraire, la loi de ommande peut ĂŞtre al ulĂŠe Ă  partir d'une approximation du ja obien au paragraphe 3.3. Le ve teur

z

bi , Ă ondition que Ji J bi > 0. Nous examinerons e as plus en J

dĂŠtail

est un ve teur arbitraire, qui peut ĂŞtre utilisĂŠ pour appliquer une

P1 , on garantit que la ommande z sera e1 . En eet, quel que soit z, on a l'ÊgalitÊ J1 P1 z = 0. appliquer la se onde tâ he e2 . hoisir z Êgal à la ommande al ulÊe à partir de la tâ he e2

ommande se ondaire. Grâ e à l'opÊrateur de proje tion appliquÊe sans perturber l'exÊ ution de la tâ he Nous allons utiliser e ve teur

z

pour

Une première solution onsiste Ă + ∗ seule 'est-Ă -dire z = J2 e Ë™ 2 , e qui aboutit Ă  :

qË™ 12 = J+ Ë™ ∗1 + P1 J+ Ë™ ∗2 1e 2e oĂš

e˙ ∗2

est la onsigne de la tâ he

partie de la tâ he

e2

e2 .

(3.3)

Cela revient simplement à appliquer la tâ he prioritaire

e1

et la

ne se situant pas dans le noyau de la première tâ he. Il est fa ile de vÊrier que

ette ommande respe te bien la spÊ i ation de prioritÊ. L'eet de la ommande (3.3) sur la tâ he

e1

est le même qu'en ne onsidÊrant que la tâ he

e1 |qË™

la tâ he

est l'a tion de la ommande

e1

:

= J1 q˙ 12 = J1 J+ ˙ ∗1 + J1 P1 J+ ˙ ∗2 1e 2e + ∗ ∗ = J1 J1 e˙ 1 = e˙ 1

eË™ 1 |qË™ 12 oĂš

e1

qË™

sur la tâ he

seule ( 'est-Ă -dire en hoisissant

z=0

e1

et

qË™ z=0

(3.4)

est la ommande al ulĂŠe Ă partir de

dans (3.2)).

Extension de la redondan e pour plus de deux tâ hes Nous her hons maintenant à Êtendre (3.3) pour prendre en ompte plus de deux tâ hes. Soit

e1 . . . en n

tâ hes diÊrentes. On note

J1 . . . Jn

leurs ja obiens respe tifs.

Une solution tentante onsiste à prendre en ompte la tâ he al ulÊe à partir de

e2

e3

dire tement dans la ommande

:

q˙ 2z2 = J+ ˙ ∗2 + P2 z2 2e

(3.5)

La ommande pour trois tâ hes s'Ê rit alors :

q˙ = J+ ˙ ∗1 + P1 (J+ ˙ ∗2 + P2 z2 ) 1e 2e

(3.6)

On peut alors Êtendre la rÊ urren e à autant de tâ hes que nÊ essaire en hoisissant et . La ommande nale pour

n

z2 = J+ ˙ ∗3 +P3 z3 , 3e

tâ hes est alors :

qË™ = J+ Ë™ ∗1 + P1 J+ Ë™ ∗2 + P1 P2 J+ Ë™ ∗3 + ¡ ¡ ¡ + 1e 2e 3e

 n−1 Y i=1

 ˙ ∗n Pi J+ ne

(3.7)


3.1

Fondamentaux thĂŠoriques

27

Malheureusement, les opĂŠrateurs de proje tion ve toriels ne sont pas ommutatifs (P1 P2 6= P2 P1 + ∗ dans le as gĂŠnĂŠral). On ne peut don pas garantir que P1 P2 J3 e Ë™ 3 est bien dans le noyau de la tâ he e2 . La spĂŠ i ation de prioritĂŠ n'est don pas respe tĂŠe : la tâ he e2 pourra ĂŞtre modiĂŠe par la tâ he

e3

ainsi que par toutes les tâ hes situÊes plus haut dans la pile. Pour respe ter la spÊ i ation de prioritÊ, il est nÊ essaire de garantir que la ommande al ulÊe

à partir de la tâ he

ei+1

i+1

situĂŠ au niveau

de la pile est bien projetĂŠe dans l'ensemble des noyaux

des tâ hes e1 . . . ei , 'est-à -dire dans l'interse tion des noyaux des i premières tâ hes. On dÊnit T N1..i = ip=1 KerJp l'interse tion des noyaux des i premières tâ hes et on note JA p le ja obien des p premières tâ hes :



Le proje teur ve toriel

PA i

dans l'espa e

 JA p =

N1..i

J1 . . .

Jp

  

(3.8)

est simplement le proje teur dans le noyau de

A+ A PA Ji i = I − Ji En utilisant

PA i ,

JA i

:

(3.9)

l'ĂŠquation (3.7) s'ĂŠ rit nalement :

+ ∗ + ∗ + ∗ qË™ = J+ Ë™ ∗1 + PA Ë™ 2 + PA Ë™ 3 + ¡ ¡ ¡ + PA Ë™n 1 J2 e 2 J3 e n−1 Jn e 1e

(3.10)

Redondan e pour plusieurs tâ hes en utilisant une ommande optimale La solution obtenue garantit le respe t des prioritÊs dÊnies dans la pile de tâ hes. Toutefois, ette ommande n'est pas optimale au sens des moindres arrÊs ar la proje tion dans le noyau des tâ hes prioritaires n'est pas prise en ompte lors du al ul des pseudo-inverses des ja obiens [Si iliano 91℄. Une deuxième solution onsiste don à utiliser l'information de proje tion lors du al ul de la pseudo inverse en al ulant le ve teur arbitraire

z

omme le rĂŠsultat d'une ĂŠquation aux moindres arrĂŠs.

Pour ela, on introduit la ommande al ulÊe en (3.2) dans l'Êquation (3.1) d'Êvolution de la tâ he

e2

:

e˙ 2 = J2 J+ ˙ ∗1 + J2 PA 1z 1e

(3.11)

z

Cette ĂŠquation peut se lire omme une ĂŠquation ve torielle oĂš alors al uler

z

est la variable in onnue. On peut (J2 PA 1) :

Ă l'aide des moindres arrĂŠs en utilisant la pseudo-inverse de

+ ∗ z = (J2 PA Ë™ 2 − J2 J+ Ë™ ∗1 ) 1 ) (e 1e Il ne reste plus qu'Ă rĂŠintroduire la valeur de

z

obtenue dans (3.2).

A + ∗ q˙ = J+ ˙ ∗1 + PA ˙ 2 − J2 J+ ˙ ∗1 ) 1 (J2 P1 ) (e 1e 1e Comme

oĂš

PA 1

(3.12)

(3.13)

est idempotent et hermitien ( 'est une matri e de proje tion), (3.13) s'ĂŠ rit nalement :

f2 = J2 PA J 1

est le ja obien de

l'ĂŠvolution dĂŠsirĂŠ de

e2

e2

+ f f2 e q˙ = J+ ˙2 ˙ ∗1 + J 1e

limitĂŠ au noyau de

∗

e1

(3.14)

auquel on a retirĂŠ la partie dĂŠjĂ rĂŠalisĂŠe

de e rĂŠsultat peut ĂŞtre trouvĂŠe dans [Baerlo her 04â„„.

∗ f e Ë™ 2 = eË™ ∗2 − J2 J+ Ë™ ∗1 orrespond Ă 1e par e1 . Une expli ation très intuitive

et oĂš

Il est possible d'Êtendre l'Êquation prÊ Êdente à plusieurs tâ hes, en introduisant la tâ he du al ul du ve teur

z.

e3

lors

En eet la solution (3.12) orrespond Ă la solution de moindre norme. La

solution gĂŠnĂŠrale s'ĂŠ rit :

∗ + + f f2 )z2 f2 J f2 e ˙ 2 + (I − J z=J

(3.15)


28

Pile de tâ hes

Le ve teur Ă

n

z2

peut ĂŞtre utilisĂŠ pour appliquer

( oĂš

e3

. L'ĂŠquation s'ĂŠtend alors fa ilement par rĂŠ urren e

tâ hes [Si iliano 91℄ et on obtient nalement la rÊ urren e suivante :

q˙ 0 = 0 + ∗ q˙ i = q˙ i−1 + Jei e˙ei , i = 1..n

∗ Jei = (Ji PA ˙ei = e˙ ∗i − Ji q˙ i−1 , i−1 ), e

et oĂš

PA i

(3.16)

est le proje teur sur le noyau du ja obien

dans (3.9). La ommande rÊalisant l'ensemble des tâ hes de la pile est

JA i

dĂŠni

qË™ = qË™ n .

Si on applique dire tement ette rĂŠ urren e pour le al ul de la loi de ommande, il est nĂŠ essaire de PA i Ă haque ĂŠtape de la rĂŠ urren e. Une solution moins oĂťteuse a ĂŠtĂŠ proposĂŠe dans [Baerlo her 04â„„ pour al uler rĂŠ ursivement et opĂŠrateur : re al uler l'ensemble du proje teur

( oĂš

Jei = Ji PA i−1

PA 0 =I

(3.17)

A e+e PA i = Pi−1 − Ji Ji

est le ja obien limitÊ de la tâ he i.

Con lusion : optimalitÊ versus singularitÊ Nous avons prÊsentÊ i i deux solutions bien onnues pour appliquer le formalisme de la redondan e à plusieurs tâ hes. Les deux solutions donnent en pratique des rÊsultats très pro hes, en parti ulier dans les as oÚ les tâ hes à appliquer sont bien dÊ ouplÊes et les degrÊs de libertÊ sont susamment nombreux, 'est-à-dire quand l'ensemble du système est bien onditionnÊ. NÊanmoins les lois de ommande rÊsultant de es deux solutions ne sont pas exa tement Êgales. Les diÊren es peuvent s'expliquer de manière très intuitive, une fois qu'on a bien ompris e que signie ha un des termes des deux Êquations. La première solution (3.10) garantit le respe t de la prioritÊ (une tâ he se ondaire ne modie pas les tâ hes prioritaires), sans se sou ier d'appliquer orre tement la tâ he se ondaire. Au ontraire, la se onde solution (3.16) garantit que la tâ he se ondaire sera appliquÊe le mieux possible (au sens des moindres arrÊs) tout en respe tant la prioritÊ. Mais ette optimalitÊ se fait en diminuant le onditionnement de la ja obienne de la tâ he se ondaire. Dans les as oÚ les tâ hes sont pro hes ou bien oÚ les degrÊs de libertÊ disponibles trop peu nombreux, ette diminution du onditionnement d'une matri e qui est ensuite inversÊe peut entraÎner une ommande aberrante. Tout d'abord, il est fa ile de vÊrier que la ommande (3.10) ne permet pas d'a omplir exa tement la tâ he se ondaire dans le as gÊnÊral. En introduisant la loi de ommande (3.10) dans l'Êquation d'Êvolution de la tâ he

e2

(3.1), on obtient :

+ ∗ eË™ 2 = J2 J+ Ë™ ∗1 + J2 PA Ë™2 1 J2 e 1e En dĂŠveloppant le proje teur

PA 1,

(3.18)

et en rĂŠordonnant les termes dĂŠveloppĂŠs, on obtient :

e˙ 2 = e˙ ∗2 + J2 J+ ˙ ∗1 − J1 J+ ˙ ∗2 ) 1 (e 2e ar

J2 J+ 2 = I,

ĂŠtant donnĂŠ que

e2

(3.19)

est par dÊnition une fon tion de tâ he. L'Êvolution de la tâ he

e2

est don exa tement l'ĂŠvolution demandĂŠe en rĂŠfĂŠren e si et seulement si les deux tâ hes e1 et e2 + sont parfaitement dĂŠ ouplĂŠes (dans e as J2 J1 = 0) ou si les deux ĂŠvolutions de rĂŠfĂŠren e des tâ hes e1 et e2 sont ĂŠgales dans l'espa e de la tâ he e1 ( 'est-Ă -dire eË™ ∗1 = J1 J+ Ë™ ∗2 ). Ce dernier as peut se 2e produire de manière pon tuelle et peu probable en ours d'asservissement, mais ne peut ertainement pas ĂŞtre supposĂŠ vrai dans le as gĂŠnĂŠral. En pratique, la tâ he

e2

est don parfaitement a omplie

dans le seul as oÚ les tâ hes sont parfaitement dÊ ouplÊes, 'est-à -dire dans le as oÚ le formalisme de la redondan e est inutile ar il n'y a au un onit entre les tâ hes.


3.1

Fondamentaux thĂŠoriques

29

l

l

(a) Vue de prol

(b) Vue de dessus

Fig. 3.1  Conguration du robot. Il est onstituĂŠ de deux axes ontrlant ha un la mĂŞme rotation de la amĂŠra

(la rotation

l = 0.

tilt). Dans

un premier temps, on onsidère que les deux axes sont parfaitement alignÊs, 'est-à -dire que

Dans l'exemple 3, on onsidère un lÊger dÊ alage des deux axes. Dans e as, le robot ontrle toujours

prin ipalement la rotation

tilt

de la amÊra, mais aussi les translations latÊrales de la amÊra, dans une très faible

mesure.

D'un autre otÊ, on peut vÊrier de la même manière que la loi de ommande (3.16) permet une bien meilleure appli ation de la tâ he tâ he

e2

s'ĂŠ rit :

e2 .

En eet, en introduisant (3.16) dans (3.1), l'ĂŠvolution de la

+

+

f2 J2 − J2 )J+ e˙ ∗1 f2 e˙ ∗2 + (J2 J e˙ 2 = J2 J 1

(3.20)

La loi de ommande (3.16) respe te don exa tement la valeur e Ë™ ∗2 de rĂŠfĂŠren e Ă l'unique ondition + f2 soit ĂŠgale Ă  l'identitĂŠ, 'est-Ă -dire que la matri e ja obienne limitĂŠe J f2 soit de mĂŞme rang que J2 J

que la matri e initiale

J2 .

Cette ondition peut se formuler plus simplement en disant qu'il sut pour

respe ter exa tement la tâ he se ondaire qu'il y ait susamment de degrÊs de libertÊ disponibles pour

a omplir les deux tâ hes simultanÊment. Cette ondition, qui peut paraÎtre Êvidente, n'est pourtant pas susante pour assurer le respe t de la tâ he

e2

si la ommande

(3.10)

est utilisĂŠe.

Cette optimalitÊ est obtenue en intÊgrant la limitation imposÊe par la tâ he al ul de la pseudo-inverse du ja obien de la tâ he se ondaire

e2 .

e1

dire tement lors du

D'une ertaine manière, ela permet

d'augmenter la valeur de la ommande sur les degrÊs laissÊs libres par la tâ he prioritaire, en sa hant que les autres degrÊs sont interdits à ause de la ontrainte de prioritÊ. Mais ela peut entraÎner un très mauvais onditionnement de la matri e ja obienne limitÊe

f2 , J

et don une valeur aberrante de

son inverse. L'utilisation de la loi de ommande (3.16) augmente don le nombre de singularitÊs du système [Chiaverini 97℄.

Prenons l'exemple du système redondant le plus simple qu'il soit : deux axes robotiques ontrlant le même degrÊ de libertÊ. Il est reprÊsentÊ sur la gure 3.1. Un tel système est par exemple une simpli ation extrême d'un robot humanoïde, en ne onsidÊrant que l'arti ulation verti ale du torse, et elle du ou : es deux axes ontrlent tous les deux la rotation

pan

de la tĂŞte.

Premier exemple : la tâ he prin ipale onsiste à ramener l'arti ulation du torse à la position 0. La se onde tâ he onsiste à entrer un point dans l'image de la amÊra xÊe après le se ond axe. Dans e as, les deux ommandes onduisent le robot à utiliser l'arti ulation du torse pour ramener l'axe à 0, et n'utilise pour entrer le point que l'arti ulation du ou. La ommande (3.10) n'est pas apable de respe ter exa tement la onsigne de la tâ he se ondaire, e qui implique un retard dans le suivi, et une mauvaise rÊalisation de la tâ he dans le as oÚ la ible bouge. Au ontraire, la ommande (3.16) permet d'a omplir exa tement la tâ he se ondaire, malgrÊ la ontrainte de prioritÊ. Deuxième exemple : onsidÊrons les deux mêmes tâ hes, mais dans l'ordre inverse. La tâ he prio-


30

Pile de tâ hes

ritaire est de entrer l'objet, la tâ he se ondaire est de ramener si possible le torse Ă sa position zĂŠro. La ommande (3.10) onduit le robot Ă  un mouvement assez intuitif : les deux arti ulations bougent pour suivre la ible, et lorsque la ommande de suivi est susamment faible, la tâ he se ondaire est a omplie et le torse rejoint sa position 0. Au ontraire, la ommande (3.16) impose le respe t exa t de la tâ he se ondaire, puisque susamment de degrĂŠs de libertĂŠ sont disponibles pour a omplir les deux tâ hes. Le torse ne bouge don que pour rejoindre sa position 0, et la tĂŞte seule est utilisĂŠe pour suivre la ible. La loi de ommande est exa tement la mĂŞme quel que soit l'ordre de es tâ hes. Si le omportement impliquĂŠ par la ommande (3.16) est en thĂŠorie meilleur, le omportement (3.10) est sans doute plus pro he de e que le programmeur attendait. De plus, dans le as oĂš l'arti ulation du ou seule n'est pas assez rapide pour suivre la ible en mouvement, la ommande (3.10), en permettant l'utilisation des deux axes pour le suivi, permettra un meilleur respe t de la prioritĂŠ. Troisième exemple : la tâ he prin ipale onsiste Ă  entrer un premier point au milieu de l'axe des abs isses de l'image, la tâ he se ondaire onsiste Ă  entrer un se ond point situĂŠ sur un plan diĂŠrent. Un exemple d'images initiale et dĂŠsirĂŠe est reprĂŠsentĂŠ sur la gure 3.2. Si les deux axes sont parfaitement alignĂŠs, la tâ he se ondaire n'est pas possible Ă  appliquer. Les deux lois de ommande donneront le mĂŞme omportement : seule la tâ he prin ipale est appliquĂŠe. Supposons maintenant que les deux axes sont lĂŠgèrement dĂŠ alĂŠs (voir gure 3.1). Dans e as les ja obiens des deux tâ hes ne ontrlent pas exa tement le mĂŞme degrĂŠ de libertĂŠ. La ommande (3.10) rĂŠalise parfaitement la tâ he prin ipale. Par ontre, la tâ he se ondaire est projetĂŠe sur un espa e pratiquement orthogonal Ă  son + ∗ PA Ë™ 2 est don pratiquement nulle. La tâ he se ondaire 1 J2 e n'est en pratique pas appliquĂŠe. De la mĂŞme manière, la ommande (3.16) rĂŠalise parfaitement la tâ he espa e de travail. La ommande se ondaire

prin ipale. L'espa e de travail de la tâ he se ondaire est presque orthogonal à l'espa e nul de la tâ he prin ipale, le ja obien projetÊ

f2 J

est don très faible. Cette matri e est don très mal onditionnÊe,

et son inverse a une norme très ÊlevÊe. En eet, pour suivre la onsigne de la tâ he se ondaire, il est nÊ essaire d'envoyer des onsignes moteur très ÊlevÊes sur les seuls degrÊs de libertÊ laissÊs libres par la tâ he prioritaire, mais qui sont très peu appropriÊs pour ontrler la tâ he se ondaire. Au nal, la ommande (3.16) risque d'être aberrante par rapport aux apa itÊs des moteurs. Finalement ni la tâ he prin ipale ni la tâ he se ondaire ne seront don orre tement appliquÊes. Il n'est à notre avis pas possible de dÊsigner une des deux ommandes (3.10) ou (3.16) omme fon tionnant mieux dans tous les as. Selon la tâ he robotique à a omplir, il est nÊ essaire de hoisir entre les deux ommandes. Si la tâ he doit être parfaitement a omplie, et qu'on peut garantir à l'avan e qu'elle sera rÊalisable en pratique, alors il vaut mieux hoisir d'utiliser (3.16). D'un autre tÊ, si on peut dire à l'avan e que la tâ he se ondaire sera souvent di ile à appliquer à ause d'un manque de degrÊs de libertÊ, mieux vaut alors appliquer (3.10). Cela permettra d'obtenir une ommande rÊalisable même à proximitÊ des singularitÊs dues à la pile (dans e as, la tâ he se ondaire ne sera bien sur pas orre tement appliquÊe). Enn, on peut signaler qu'il est en pratique parfaitement possible d'utiliser les deux ommandes en même temps, en hoisissant d'appliquer (3.10) à une tâ he qu'on sait di ile à rÊaliser, et en utilisant (3.16) pour une tâ he importante qui doit être parfaitement appliquÊe.

3.1.3 ContinuitĂŠ de la ommande 1 Pour al uler la forme nale de la loi de ommande, il est nĂŠ essaire de hoisir un omportement

e˙ ∗i

de rÊfÊren e. On onsidère dans un premier temps une seule tâ he

e.

Nous nous plaçons dans le

as d'une erreur Ă rĂŠguler Ă  zĂŠro. Le omportement est gĂŠnĂŠralement imposĂŠ Ă  l'aide d'une ĂŠquation diĂŠrentielle, typiquement :

Pour une fon tion de tâ he

e

eË™ ∗ = f1 (e) = âˆ’Îťe

quel onque telle que

eË™ = J qË™ , +

1

qË™ = âˆ’ÎťJ e

(3.21) on obtient la loi de ommande suivante : (3.22)

Les travaux sur la ontinuitÊ de la pile de tâ hes prÊsentÊs dans e paragraphe ont fait l'objet d'une ollaboration ave le do teur P. Souères, du LAAS, dans le adre du projet ROBEA Ego entre.


3.1

Fondamentaux thĂŠoriques

s∗

s1

31

s2

s∗

(a) Image initiale Fig. 3.2 

(b) Image dĂŠsirĂŠe

Troisième exemple : images initiale et dÊsirÊe. Dans l'image dÊsirÊe, les deux points sont entrÊs au

milieu de l'axe des abs isses. La tâ he prioritaire emmène le premier point au milieu de l'axe des abs isses. Si les deux axes du robot sont parfaitement alignÊs, il n'est pas possible d'aligner le se ond point au milieu de l'image. Si les deux axes sont lÊgèrement dÊ alÊs, aligner le se ond point est thÊoriquement possible mais di ile à rÊaliser.

oĂš

Îť

est le gain de la ommande, qui est utilisÊ omme un paramètre pour ongurer la vitesse du

robot. La fon tion f1 dans (3.21) est hoisie lors de la onstru tion de la loi de ommande. On hoisit gĂŠnĂŠralement f1

= âˆ’Îťe

pour imposer une dĂŠ roissan e exponentielle de l'erreur.

Un problème de ontinuitÊ de la loi de ommande se pose alors quand on passe d'une loi de ommande al ulÊe à partir d'une première tâ he à une loi de ommande al ulÊe à partir d'une tâ he diÊrente. Dans e as, rien ne garantit que la vitesse al ulÊe à partir de (3.22) sera ontinue au moment du hangement de tâ he. La dis ontinuitÊ vient en fait de l'absen e de ontrainte sur la valeur initiale de

qË™ .

On note

eA

la première tâ he utilisÊe pour le al ul de la loi de ommande, et

la se onde tâ he appliquÊe à partir de l'instant

t = 0.

eB

On her he Ă ĂŠ rire une loi de ommande qui

garantisse la ontinuitÊ à l'instant de transition. Une première solution a ÊtÊ proposÊe dans [PissardGibolet 96℄. Les auteurs proposent d'utiliser

eA et eB pour passer ontinĂťment t = 0 s'ĂŠ rit alors :  qË™ = 1 − θ(t) qË™ A + θ(t)qË™ B

une pondÊration entre les deux tâ hes

t = 0.

oĂš

de A à B après l'instant

La loi de ommande après l'instant

θ(t)

(3.23)

est une fon tion du temps variant ontinÝment de 0 à 1. La ontinuitÊ obtenue est parfaite ar θ(t) C k - ontinue pour obtenir une ontinuitÊ de ommande de lasse C k . Malheureu-

il sut de hoisir

sement, ette loi de ommande ne permet pas de garantir que la somme de deux tâ hes quel onques orrespondra à un mouvement orre t ou rÊalisable par le robot.

Ave une Êquation diÊrentielle du se ond ordre Souères

et oll.

ont proposÊ une première solution à e problème dans [Soueres 03℄. Les auteurs

proposent d'utiliser une ĂŠquation diĂŠrentielle du se ond ordre Ă la pla e de (3.21) :

e + ι e˙ + β e = 0 ¨ oÚ

ι et β

(3.24)

sont deux paramètres utilisÊs pour ontrler à la fois la vitesse de onvergen e du robot et la

longueur de la pÊriode de transition lors du hangement de tâ he. Cette solution permet de prendre en


32

Pile de tâ hes

ompte deux onditions initiales sur

e(0)

et

e(0) Ë™ .

La loi de ommande obtenue garantit la ontinuitĂŠ

de la loi de ommande. Cependant, il est di ile de rÊgler les deux paramètres

Îą

et

β

pour obtenir le

omportement voulu du robot.

Ave une Êquation diÊrentielle non homogène du premier ordre Nous proposons d'utiliser plutt une Êquation diÊrentielle non homogène du premier ordre pour assurer la onvergen e tout en permettant un bon dÊ ouplage des deux paramètres de onguration. L'Êquation hoisie est :

oÚ le terme non homogène

Le paramètre

eË™ ∗ = f2 (e) = âˆ’Îťe + Ď (t)

Ď (t)

(3.25)

est ĂŠgal Ă :

 Ď (t) = eâˆ’ÂľÂˇt ¡ eË™ A (0) + ÎťeB (0)

(3.26)

Îť est le gain qui permet de ongurer la vitesse de dĂŠ roissan e de l'erreur ( omme dans Âľ permet de ongurer la durĂŠe de la pĂŠriode de transition.

(3.22)). Le paramètre

On peut remarquer que ette dernière Êquation est Êquivalente à une Êquation diÊrentielle homogène du se ond ordre. En eet, en dÊrivant (3.25) par rapport au temps, on obtient :

e + (Ν + ¾) e˙ + (Ν ¾) e = 0 ¨

(3.27)

Îť Âľ. En parti ulier, il est possible de montrer que la n de la pĂŠriode de transition n'est paramĂŠtrĂŠe que par Âľ. En eet, la n de ette pĂŠriode intervient quand la fon tion f2 est numĂŠriquement ĂŠquivalente Ă la fon tion f1 , 'est-Ă -dire quand le terme rĂŠsiduel Ď (t) est nĂŠgligeable par rapport aux autres termes : Mais, Ă  la diĂŠren e de (3.24), ette dernière ĂŠquation permet un bon dĂŠ ouplage des deux paramètres et

f1 (t) â&#x2C6;&#x2019; f2 (t) Ď (0) â&#x2C6;&#x2019;Âľ t = e << 1 ||f1 (t)|| Îť

δ(t) =

La pĂŠriode de transition est une exponentielle paramĂŠtrĂŠe par est une exponentielle paramĂŠtrĂŠe par

Îť.

Âľ.

(3.28)

De la même manière, l'erreur

Il sut don de hoisir

Âľ

plus grand que

Îť

e(t)

pour assurer

que la pĂŠriode de transition est plus ourte que le temps de onvergen e, an de ne pas perturber la onvergen e de

eB .

Plus le paramètre

Âľ

est hoisi grand, plus la pĂŠriode de transition est ourte, mais

plus l'a ĂŠlĂŠration nĂŠ essaire pour rĂŠaliser la transition sera importante. En pratique, nous utilisons gĂŠnĂŠralement

Âľ = 10 Îť.

Nous her hons maintenant à appliquer e rÊsultat aux deux ommandes (3.10) et (3.16) al ulÊe d'après la pile de tâ hes. Soit de es

n

(e1 , . . . , en )

une pile de

n

tâ hes. Soit

(Îť1 , . . . , Îťn )

les gains respe tifs

tâ hes. Le omportement imposÊ de dÊ roissan e de l'erreur est :



 eË&#x2122; â&#x2C6;&#x2014; = 

eË&#x2122; â&#x2C6;&#x2014;1 . . . eË&#x2122; â&#x2C6;&#x2014;n





   = â&#x2C6;&#x2019;

Îť1

0 ..

0

.

Îťn

  



e1 . . .

en

  = â&#x2C6;&#x2019;Î&#x203A;e

Les deux ĂŠquations (3.10) et (3.16) peuvent se mettre sous la forme

qË&#x2122; =

qË&#x2122; =

h

J+ 1



J+ 1

+ PA 1 J2

J2 PA 1

+

...

+ . . . PA nâ&#x2C6;&#x2019;1 Jn

Jn PA nâ&#x2C6;&#x2019;1



   



+ i    

qË&#x2122; = AeË&#x2122;  eË&#x2122; â&#x2C6;&#x2014;1 eË&#x2122; â&#x2C6;&#x2014;2   .  .  . eË&#x2122; â&#x2C6;&#x2014;n  eË&#x2122; â&#x2C6;&#x2014;1 eË&#x2122; â&#x2C6;&#x2014;2   .  .  . eË&#x2122; â&#x2C6;&#x2014;n

(3.29)

:

(3.30)

(3.31)


3.1

Fondamentaux théoriques

33

En utilisant ette forme simple, il est alors possible d'utiliser (3.25) pour obtenir une loi de ommande permettant d'assurer une transition ontinue lors d'une modi ation de la pile. En partant de (3.10), on obtient la loi de ommande suivante :

+ ∗ + ∗ + ∗ q˙ = J+ ˙ ∗1 + PA ˙ 2 + PA ˙ 3 + · · · + PA ˙ n + e−µ 1 J2 e 2 J3 e n−1 Jn e 1e où

τ

(t−τ )

 e(τ ˙ ) + Λe(τ )

(3.32)

est l'instant de dernière modi ation de la pile. En partant de (3.16), on obtient la loi de

ommande suivante :



+ q˙ i = q˙ i−1 + (Ji PA ˙ i−1 ) i−1 ) (−λi ei − Jiq q˙ = q˙ n + e−µ (t−τ ) e(τ ˙ ) + Λe(τ )

(3.33)

Ces deux lois de ommande permettent d'obtenir deux des trois spé i ations xées au début du paragraphe : la hiérar hie imposée par la pile est respe tée et la loi de ommande garantit la ontinuité lors des modi ations de la pile. Nous allons maintenant montrer omment prendre en ompte les ontraintes se ondaires tout en onservant es deux propriétés.

3.1.4 Évitement simple en utilisant la méthode du gradient projeté Les ontraintes se ondaires sont prises en ompte en utilisant la méthode du gradient projeté [Rosen 61, Liegeois 77, Khatib 86℄. La ontrainte est exprimée sous la forme d'une fon tion de oût à minimiser lors du dépla ement du robot. Le gradient de ette fon tion de oût est alors al ulé dire tement dans l'espa e de la ontrainte. Une matri e ja obienne permet ensuite de ramener le gradient dans l'espa e de la ommande. Contrairement à la méthode lassique, nous utilisons la pseudoinverse du ja obien plutt que sa transposée, omme proposé dans [Mezouar 02℄. Nous avons montré la généralité de ette méthode en l'appliquant su essivement ou simultanément pour de l'évitement de butées, de l'évitement d'obsta le et de l'évitement d'o ultation au ours d'un asservissement visuel. On note

V

la fon tion de oût qui doit être minimisée pour respe ter la ontrainte. Considérons

le problème suivant :

min V(q), ave

k

q ∈ Rk

(3.34)

le nombre d'arti ulations du robot. La solution itérative lassique onsiste à dépla er le robot

en suivant le gradient de la fon tion de oût al ulé à la position ourante du robot :

q˙ = −κg(q) = −κ∇⊤ qV où

κ

(3.35)

est réel positif utilisé omme un gain pour paramétrer la vitesse de l'asservissement. Le gradient

de la fon tion de oût

V

peut être vu omme une for e arti ielle qui éloigne le robot des zones de

violation de la ontrainte. Toutefois, il est souvent di ile de al uler ette for e dire tement dans l'espa e arti ulaire ar la fon tion de oût est généralement exprimée dans l'espa e de la ontrainte (par exemple, la fon tion de oût relative à un évitement d'o ultation s'exprime très simplement dans l'espa e image). Pour ette raison, nous proposons plutt de al uler le gradient dans l'espa e d'origine, avant de le onvertir dans l'espa e de ommande. Soit

Φ

une paramétrisation de l'espa e de

la ontrainte. La for e optimale pour satisfaire le problème (3.34) est [Mezouar 02℄ :

gΦ (q) =

 ∂Φ + ∂q

∇⊤ Φ VΦ

(3.36)

Il est à notre avis important de remarquer l'utilisation de la pseudo-inverse lors du al ul de la forme nale de la for e. Les méthodes lassiques utilisent plutt le ja obien transposée, obtenant une for e ∂Φ ⊤ ⊤ de la forme gΦ (q) = ( ∂q ) ∇Φ VΦ . On garantit i i que (3.36) est la plus e a e ar la pseudo inverse orrespond à la solution optimale au sens des moindres arrés. Par exemple, les for es arti ielles orrespondant à un évitement de butées arti ulaires, et à un évitement d'o ultation visuelle s'é rivent :

  +  gq = − ∂q ∇⊤ V joint = −∇⊤ V joint q q q q ∂q    g = − ∂s + ∇⊤ V occ = −J + ∇⊤ V occ s s s s s s ∂q

(3.37)


34

Pile de tâ hes

Nous verrons dans la suite l'ĂŠ riture exa te des fon tions de oĂťt orrespondantes ainsi que l'expression de leur ja obien respe tif.

1 ConsidÊrons maintenant deux ontraintes exprimÊes sous la forme de deux fon tions de oÝt VΌ 2 et VΨ à minimiser, oÚ Ό et Ψ sont des paramÊtrisations des espa es des deux diÊrentes ontraintes. La for e rÊalisant un ompromis entre les deux ontraintes est :

1 2 g = gΌ + γgΨ oÚ

1 gÎŚ

2 gΨ

et

sont al ulĂŠs en utilisant (3.36) et

Îł

(3.38)

est un paramètre permettant d'ajuster l'inuen e

relative des deux ontraintes. Le gradient al ulÊ d'après les ontraintes doit ensuite être ajoutÊ dans la pile, ave une prioritÊ infÊrieure à elle de la dernière tâ he de la pile. Le gradient est don projetÊ sur le noyau de ha une des tâ hes de la pile. En utilisant les notations dÊnies prÊ Êdemment, les formes nales des deux lois de ommande (3.32) et (3.33) s'obtiennent fa ilement. La première s'Ê rit :

qË&#x2122; = â&#x2C6;&#x2019; en notant

PA 0 = I.

n X

+ â&#x2C6;&#x2019;Âľ Îťi PA iâ&#x2C6;&#x2019;1 Ji ei + e

(tâ&#x2C6;&#x2019;Ď&#x201E; )

i=1

 e(Ď&#x201E; Ë&#x2122; ) + Î&#x203A;e(Ď&#x201E; ) â&#x2C6;&#x2019; ÎşPA ng

(3.39)

La se onde s'ĂŠ rit :



3.1.5 Synthèse

+ qË&#x2122; i = qË&#x2122; iâ&#x2C6;&#x2019;1 + (Ji PA Ë&#x2122; iâ&#x2C6;&#x2019;1 ) iâ&#x2C6;&#x2019;1 ) (â&#x2C6;&#x2019;Îťi ei â&#x2C6;&#x2019; Jiq â&#x2C6;&#x2019;Âľ (tâ&#x2C6;&#x2019;Ď&#x201E; ) qË&#x2122; = qË&#x2122; n + e eË&#x2122; (Ď&#x201E; ) + Î&#x203A;e(Ď&#x201E; ) â&#x2C6;&#x2019; ÎşPA ng

(3.40)

Nous avons nalement Ê rit deux lois de ommande pro hes satisfaisant les spÊ i ations xÊes en dÊbut de hapitre : la hiÊrar hie dÊnie par la pile est respe tÊe, la loi de ommande est ontinue malgrÊ les modi ations ee tuÊes sur la pile, et les ontraintes sont prises en ompte, sous la ondition que les tâ hes de la pile n'en soient pas perturbÊes. Cette dernière ondition est très importante pour la mise en appli ation de la pile de tâ hes dans des situations oÚ les ontraintes sont omplexes. En eet, l'appli ation de la for e permettant de respe ter la ontrainte est sujette à deux fa teurs. Tout d'abord, elle dÊpend du gain

a priori

Îş,

qui dĂŠnit

l'importan e des ontraintes dans la valeur de la ommande envoyĂŠe au robot. Si e gain

est trop faible, la ommande ne tiendra ompte que très faiblement de la ontrainte, qui ne sera pas orre tement respe tĂŠe. A l'opposĂŠ, si le gain est trop ĂŠlevĂŠ, le mouvement du robot risque d'ĂŞtre sa adĂŠ, voire d'entraĂŽner des os illations ou des saturations des a tionneurs. Des mĂŠthodes ont ĂŠtĂŠ proposĂŠes pour rĂŠgler e gain automatiquement (par exemple [Chaumette 01â&#x201E;&#x201E; pour l'ĂŠvitement de butĂŠes), mais elles sont di iles Ă gĂŠnĂŠraliser Ă  des as omplexes oĂš plusieurs ontraintes diĂŠrentes sont prises en ompte simultanĂŠment.

A Le se ond fa teur dont dĂŠpend la prise en ompte des ontraintes est le proje teur Pn . Si la pile est A presque vide, alors le rang du proje teur ve toriel Pn est ĂŠlevĂŠ, et le gradient a peu de han e d'ĂŞtre fortement modiĂŠ lors de sa proje tion. Mais lorsque le rang du proje teur diminue, en parti ulier lorsqu'il est pro he de

0

(quand la pile est presque pleine) alors la proje tion modie ĂŠnormĂŠment le

gradient, au point de le rendre ine a e (en parti ulier si la dire tion du gradient orrespond Ă une des dire tions annulĂŠe par le proje teur). Ă&#x2030;videmment, si la pile est pleine, le proje teur est nul, et le gradient n'est plus du tout pris en ompte lors du al ul de la loi de ommande. La pile de tâ hes ne peut don pas sure Ă  elle seule Ă  ontrler le robot dans un environnement omplexe et ontraignant. Au ontraire, la pile de tâ he n'est qu'un outil, orant des fon tionnalitĂŠs d'ajout et de retrait de tâ hes, ainsi que d'ĂŠ hange des prioritĂŠs. Cet outil sera utilisĂŠ dans la se onde partie du mĂŠmoire (Partie II : haut niveau) par des ontrleurs de plus haut niveau, pour prendre des ontraintes diverses ren ontrĂŠes dans des situations rĂŠelles. Dans la suite du hapitre, nous prĂŠsentons les expĂŠrien es rĂŠalisĂŠes pour tester la validitĂŠ de la pile de tâ hes, en parti ulier pour vĂŠrier le respe t des trois spĂŠ i ations xĂŠes en dĂŠbut de hapitre.


3.2

Validation expĂŠrimentale sur un robot manipulateur

35

Nous nous intĂŠresserons plus longuement au as d'un robot faiblement ou mal alibrĂŠ. En eet, dans A e dernier as, il n'est pas possible d'obtenir de valeur exa te des opĂŠrateurs de proje tion Pi , et des mĂŠthodes d'estimation doivent ĂŞtre utilisĂŠes pour permettre de respe ter la hiĂŠrar hie dĂŠnie par la pile.

3.2 Validation expĂŠrimentale sur un robot manipulateur Dans ette se tion, nous prĂŠsentons les expĂŠrien es rĂŠalisĂŠes sur le bras manipulateur de l'IRISA [Spindler 03â&#x201E;&#x201E;. L'Afma6 est un robot manipulateur Ă six degrĂŠs de libertĂŠ de type artĂŠsien. Il est ĂŠquipĂŠ d'une amĂŠra vidĂŠo montĂŠe sur son organe terminal. C'est un robot industriel, parfaitement alibrĂŠ. Les expĂŠrien es ont ĂŠtĂŠ menĂŠes en utilisant des tâ hes d'asservissement visuel al ulĂŠes Ă  partir des informations provenant de la amĂŠra embarquĂŠe. Les quatre tâ hes que nous avons sĂŠle tionnĂŠes pour les expĂŠrien es rĂŠalisĂŠes dans e hapitre (et qui seront rĂŠutilisĂŠes dans de nombreuses autres expĂŠrien es prĂŠsentĂŠes tout au long de e do ument) sont al ulĂŠes Ă  partir des moments d'une ible visuelle. Ces quatre tâ hes, ainsi qu'une fon tion de oĂťt permettant d'appliquer la mĂŠthode du gradient projetĂŠ Ă  l'ĂŠvitement de butĂŠes sont prĂŠsentĂŠes rapidement dans le premier paragraphe de ette se tion (une des ription plus dĂŠtaillĂŠe est donnĂŠe en annexe). Puis nous dĂŠtaillerons quatre sĂŠries d'expĂŠrien es permettant de valider la stru ture de pile pour un robot bien alibrĂŠ. La se tion suivante s'intĂŠressera Ă  la validation pour un robot mal alibrĂŠ.

3.2.1 Mise en áuvre en utilisant l'asservissement visuel L'asservissement visuel fournit un adre intĂŠressant pour dĂŠvelopper des asservissements prĂŠ is et robustes aux bruits de mesure et aux erreurs de alibration [Hut hinson 96â&#x201E;&#x201E;. De plus, 'est un formalisme qui s'ĂŠ rit simplement en utilisant la thĂŠorie des fon tions de tâ hes [Espiau 92â&#x201E;&#x201E;. Une tâ he

ei

se dĂŠnit par une erreur entre les valeurs apteur ourantes et les valeurs dĂŠsirĂŠes xĂŠes en

rĂŠfĂŠren e :

ei = si â&#x2C6;&#x2019; sâ&#x2C6;&#x2014;i oĂš

(3.41)

si est le ve teur ontenant les informations visuelles ourantes et sâ&#x2C6;&#x2014;i le ve teur ontenant leur valeurs si est dĂŠnie par l'ĂŠquation suivante :

dĂŠsirĂŠes. La matri e d'intera tion des informations visuelles

sË&#x2122;i = Lsi v oĂš

v

est la vitesse instantanĂŠe de la amĂŠra. En dĂŠrivant l'ĂŠquation (3.41) par rapport Ă la position

arti ulaire

q

du robot, et en utilisant (3.42), on obtient l'expression du ja obien

fon tion de la matri e d'intera tion et du ja obien arti ulaire

Ji = Lsi MJq oĂš

(3.42)

Jq

Ji

de la tâ he

ei

en

du robot : (3.43)

M est une matri e permettant de passer de la vitesse instantanĂŠe de la amĂŠra v Ă la paramĂŠtrisation r (v = MË&#x2122;r).

hoisie pour la pose de la amĂŠra

De nombreuses informations visuelles ont ĂŠtĂŠ proposĂŠe pour obtenir de bonnes propriĂŠtĂŠs d'asservissement [Hut hinson 96, Malis 99, Corke 01, Tahri 05, Pagès 06â&#x201E;&#x201E;. Nous avons pour notre part hoisi d'utiliser des informations visuelles basĂŠes sur les moments d'un ensemble de points ara tĂŠristiques [Tahri 05â&#x201E;&#x201E;. Ce type d'informations permet en eet d'obtenir de très bonnes propriĂŠtĂŠs de dĂŠ ouplage des mouvements de la amĂŠra. Comme nous l'avons montrĂŠ plus haut, il n'est pas nĂŠ essaire de hoisir des tâ hes parfaitement dĂŠ ouplĂŠes grâ e au formalisme de la redondan e qui garantit l'ordre des tâ hes dans la pile. Toutefois, hoisir des informations approximativement dĂŠ ouplĂŠes permet d'obtenir une rĂŠponse plus intuitive du robot, et garantit aussi que l'exĂŠ ution ne sera pas perturbĂŠe par des singularitĂŠs dues aux ouplages entre les tâ hes. Le se ond avantage des informations basĂŠes sur les moments de l'image est qu'elles peuvent fa ilement s'adapter pour toute forme d'images omplexes.


36

Pile de tâ hes

Pour notre part, nous avons hoisi de simplier au maximum la partie vision pour nous on entrer sur la partie ommande, en utilisant une ible simple omposÊe de quatre points blan s sur fond noir. Nous avons hoisi quatre tâ hes pour ontrler les six degrÊs de libertÊ du robot.  La première tâ he

eg

utilise le entre de gravitĂŠ des points pour ontrler les mouvements de

entrage de la amÊra.  La se onde tâ he

eZ

est basĂŠe sur la surfa e de l'objet. Elle ontrle les translations de la amĂŠra

le long de son axe optique.  La troisième tâ he

eÎą

ontrle la rotation de la amĂŠra autour de son axe optique en utilisant

l'orientation prin ipale de l'ensemble de points (moments d'ordre 2).  Enn, la dernière tâ he

eR

est basĂŠe sur des moments d'ordres supĂŠrieurs pour ontrler les

mouvements de rotation autour de l'objet. Ces quatre tâ hes sont dĂŠtaillĂŠes en Annexe A. Le le teur intĂŠressĂŠ est aussi invitĂŠ Ă se rĂŠfĂŠrer Ă  [Tahri 05â&#x201E;&#x201E; pour plus de dĂŠtails.

Prise en ompte des butĂŠes arti ulaires Dans les expĂŠrien es prĂŠsentĂŠes dans la suite, un ĂŠvitement des butĂŠes arti ulaires est rĂŠalisĂŠ en utilisant la mĂŠthode du gradient projetĂŠ prĂŠsentĂŠe plus haut. Pour haque axe i du robot, on note q ÂŻimin et q ÂŻimax les valeurs limites basse et haute du domaine arti ulaire. On note â&#x2C6;&#x2020;ÂŻ qi = qÂŻimax â&#x2C6;&#x2019; qÂŻimin la largeur du domaine arti ulaire. La valeur ourante qi est dite a eptable si elle est omprise dans l'intervalle min max min max [ÂŻ qâ&#x201E;&#x201C;i , qÂŻâ&#x201E;&#x201C;i ], ave qÂŻâ&#x201E;&#x201C;i = qÂŻimin + Ď â&#x2C6;&#x2020;ÂŻ qi , qÂŻâ&#x201E;&#x201C;i = qÂŻimax â&#x2C6;&#x2019; Ď â&#x2C6;&#x2020;ÂŻ qi , oĂš Ď est un paramètre de onguration 1 ÂŻimax ou qÂŻimin , ompris dans [0, ]. La fon tion de oĂťt est dĂŠnie pour ĂŞtre maximale quand qi vaut q 2 et pour ĂŞtre nulle lorsque la valeur ourante est a eptable. On pose :

n

V jl (q) =

1 X δi 2 2 i=1 â&#x2C6;&#x2020;ÂŻ qi

 min ,  qi â&#x2C6;&#x2019; qÂŻâ&#x201E;&#x201C;i max qi â&#x2C6;&#x2019; qÂŻâ&#x201E;&#x201C;i , δi =  0,

ave

si si

(3.44)

min qi < qÂŻâ&#x201E;&#x201C;i max qi > qÂŻâ&#x201E;&#x201C;i

sinon

Nous prÊsentons dans les quatre pro hains paragraphes les expÊrien es permettant de valider la stru ture de pile omme outil pour rÊaliser de l'en haÎnement de tâ hes. Les trois premières expÊrien es ont pour but de valider les trois spÊ i ations xÊes en dÊbut de hapitre on ernant la pile. La dernière expÊrien e est une première investigation pour hoisir l'ordre d'en haÎnement des tâ hes lors d'un positionnement du bras.

3.2.2 Respe t de la hiÊrar hie imposÊe par la pile Cette première sÊrie d'expÊrien es rÊalisÊe sur le robot manipulateur de l'IRISA permet de vÊrier que la loi de ommande al ulÊe à partir de la pile respe te bien la hiÊrar hie imposÊe. Lorsque la hiÊrar hie n'est pas respe tÊe, la perturbation sur les tâ hes prioritaires est d'autant plus visible que leur erreur est faible, et que la ommande due à la tâ he perturbatri e est forte. Pour mettre en Êviden e l'intÊrêt des ommandes (3.10) et (3.16), nous ajoutons don une nouvelle tâ he dont l'erreur est importante lorsque les tâ hes dÊjà dans la pile sont a omplies. La première expÊrien e onsiste à ajouter la tâ he

eg , eÎą

et

eZ

eR

dans la pile oÚ se trouve dÊjà les tâ hes

(dans et ordre), toutes trois a omplies. Cette opĂŠration est ee tuĂŠe trois fois pour

tester les trois ommandes possibles. La première ommande est elle dÊrivÊe de (3.7), qui a ÊtÊ prouvÊe in apable de garantir la hiÊrar hie imposÊe par la pile. Les deux autres exÊ utions ont testÊ les ommandes (3.10) et (3.16). L'Êvolution des erreurs des quatre tâ hes est donnÊe sur la gure 3.3. On onstate ee tivement que (3.7) ne onserve pas la hiÊrar hie. Par ontre, les deux ommandes (3.10) et (3.16) arrivent parfaitement à maintenir les trois tâ hes a omplies à une erreur nulle : la


3.2

Validation expĂŠrimentale sur un robot manipulateur

37

hiĂŠrar hie est prĂŠservĂŠe. On onstate aussi que la tâ he ajoutĂŠe est rĂŠalisĂŠe d'une manière très pro he qu'on utilise (3.10) ou (3.16), mĂŞme si ette dernière ommande est un tout petit peu plus e a e (Ă l'itĂŠration 200, après 120 itĂŠrations d'asservissement sur les quatre tâ hes, l'erreur de la quatrième â&#x2C6;&#x2019;2 â&#x2C6;&#x2019;2 tâ he vaut 4.2e en utilisant (3.10) et 3.1e en utilisant (3.16)). Cette e a itĂŠ est due Ă  la prise en ompte de la proje tion lors de l'inversion de la matri e ja obienne, omme nous l'avons vu au paragraphe 3.1.2. La se onde expĂŠrien e permet de tester la stru ture de pile lors d'un en haĂŽnement omplet. Les tâ hes sont ajoutĂŠes une par une dans la pile, dans l'ordre suivant :

eg , eÎą , eZ

et enn

eR .

Une

nouvelle tâ he est ajoutÊe dès que la tâ he prÊ Êdente est a omplie ( 'est-à -dire dès que la norme de son erreur passe sous un seuil xÊ à l'avan e). La gure 3.4 prÊsente l'Êvolution des erreurs des tâ hes prÊsentes dans la pile au ours de l'asservissement. Nous ne donnons les rÊsultats que pour les deux ommandes (3.7) et (3.10) (les rÊsultats pour (3.16) sont pratiquement identiques à eux obtenus ave (3.10), la diÊren e n'est pas visible à ette Ê helle). On onstate une fois de plus que (3.7) n'est pas apable de garantir le respe t de la hiÊrar hie imposÊe par la pile. La hiÊrar hie est par ontre orre tement respe tÊe lorsque la ommande (3.10) est appliquÊe. Les erreurs onstatÊes pour les tâ hes a omplies restent très pro hes de zÊro, et on peut onsidÊrer que les perturbations sont dues aux bruits de l'exÊ ution sur un robot rÊel. La dernière expÊrien e est une Êtude prÊliminaire de la robustesse de la loi de ommande en prÊsen e d'erreur de modèle ou de alibration. On rÊpète le même en haÎnement de tâ hes que prÊ Êdemment, la première fois en utilisant ( omme prÊ Êdemment) tous les paramètres nÊ essaires pour le al ul des ja obiens et des opÊrateurs de proje tion, la se onde fois en estimant grossièrement la profondeur de la ible lors du al ul de la matri e d'intera tion. Cette approximation se retrouve alors dans la valeur utilisÊe des matri es ja obiennes et des opÊrateurs de proje tions orrespondants. L'expÊrien e est prÊsentÊe gure 3.5. Comme prÊ Êdemment, la perturbation est très faible lorsque les paramètres exa ts sont utilisÊs (la perturbation peut paraÎtre plus importante ar l'Ê helle a ÊtÊ divisÊe par 50 par rapport aux graphes prÊ Êdents). Par ontre, la perturbation est importante lorsqu'on utilise une approximation de la profondeur de la ible. De plus, la perturbation n'est pas rapidement orrigÊe mais dure tant que l'erreur de la tâ he nouvellement ajoutÊe n'est pas pro he de zÊro. Cette perturbation n'est pas susante pour empê her la onvergen e du système. NÊanmoins elle permet de vÊrier que la stru ture de pile n'est pas aussi robuste aux erreurs de modèle que peut l'être l'asservissement visuel. Ce problème de sensibilitÊ aux erreurs de modèle fait l'objet d'une Êtude plus dÊtaillÊe dans la se tion suivante (se tion 3.3).

3.2.3 Ă&#x2030;tude de la ontinuitĂŠ Cette deuxième sĂŠrie d'expĂŠrien es a permis de valider l'utilisation de la ommande (3.32) ou (3.33) pour assurer la ontinuitĂŠ de la ommande lors d'une modi ation de la pile. Nous avons onsidĂŠrĂŠ les ruptures de ontinuitĂŠ lors de l'ajout et du retrait de tâ hes de la pile. L'expĂŠrien e prĂŠsentĂŠe i i a onsistĂŠ Ă introduire su essivement les quatre tâ hes dans la pile dans l'ordre suivant :

eZ

et enn

eR .

eg , eÎą ,

Une nouvelle tâ he est ajoutÊe quand toutes les tâ hes prÊsentes dans la pile sont

a omplies. Lors de l'ajout de la dernière tâ he, on retire la tâ he

eZ .

La gure 3.6 ompare les deux

lois de ommande (3.10) (sans garantie sur la ontinuitÊ) et (3.32) (garantissant la ontinuitÊ). Nous ne prÊsentons pas les rÊsultats de la omparaison de (3.16) et (3.33), qui sont identiques. On onstate que la ommande (3.10) prÊsente de grandes ruptures de ontinuitÊ à haque modi ation de la pile. Ces sauts de ontinuitÊ impliquent Êvidemment que le robot, qui est un système physique rÊel, est in apable d'appliquer orre tement la onsigne. A l'inverse, la ommande (3.32) est ontinue lors des modi ations de la pile.


38

Pile de tâ hes

1 eg eα

Norme de l’erreur

0.8

e

z

0.6

eR

0.4 0.2 0 50

100

150

200

250

300

350

400

Iterations

(a) 1 eg eα

Norme de l’erreur

0.8

ez eR

0.6 0.4 0.2 0 50

100

150

200

250

300

350

400

Iterations

(b) 1 e

g

e

Norme de l’erreur

0.8

α

e

z

0.6

e

R

0.4 0.2 0 50

100

150

200

250

300

350

400

Iterations

( ) Fig. 3.3  Expérien e 1.1 : respe t de la hiérar hie imposée par la pile lors de l'ajout d'une tâ he. (a) En utilisant

la ommande (3.7) (b) En utilisant la ommande (3.10) ( ) En utilisant la ommande (3.16). Comme prévu, la ommande (3.7) ne respe te pas la hiérar hie imposée par la pile. La hiérar hie est respe tée lorsqu'une des deux autres ommandes est appliquée. On onstate que (3.16) permet une onvergen e légèrement plus rapide que (3.10).


3.2

Validation expérimentale sur un robot manipulateur

39

1

eg

0.9

eZ eα

Erreur normalisee

0.8

eR

0.7 0.6 0.5 0.4 0.3 0.2 0.1 0

0

50

100

150

200

250 300 Iterations

350

400

450

500

550

(a)

1 eg

Erreur normalisee

0.9

eZ

0.8

0.7

eR

0.6 0.5 0.4 0.3 0.2 0.1 0

0

100

200

300 Iterations

400

500

600

(b) Fig. 3.4 

Expérien e 1.2 : respe t de la hiérar hie imposée par la pile lors de l'ajout des quatre tâ hes su es-

sivement. (a) En utilisant la ommande (3.7) (b) En utilisant la ommande (3.10). Comme prévu, la ommande (3.7) ne respe te pas la hiérar hie imposée par la pile. La hiérar hie est respe tée lorsque la ommande (3.10) est appliquée.


40

Pile de tâ hes

0.12 Calibration imparfaite Calibration parfaite

Norme de la perturbation

0.1

0.08

0.06

0.04

0.02

0

0

500

1000

1500 2000 Iterations

2500

3000

3500

Fig. 3.5  ExpÊrien e 1.3 : omparaison de l'inuen e des erreurs de modèle sur la perturbation lors de l'introdu tion

d'une tâ he dans la pile. La perturbation est très faible lorsque le modèle est parfaitement onnu. Si des erreurs de modèle interviennent lors du al ul des opÊrateurs de proje tion, le respe t de la hiÊrar hie n'est plus garanti, et une perturbation apparaÎt lors de l'introdu tion d'une nouvelle tâ he dans la pile.

3.2.4 Ă&#x2030;vitement des butĂŠes Cette troisième sĂŠrie d'expĂŠrien es a pour but de valider l'utilisation de la pile pour prendre en ompte une ontrainte simple. Nous nous sommes intĂŠressĂŠs Ă la ontrainte d'ĂŠvitement de butĂŠes. L'expĂŠrien e est rĂŠsumĂŠe sur la gure 3.7. La ommande omplète (3.39) est utilisĂŠe. Les quatre tâ hes

eg , eÎą , eZ

et enn

eR

sont ajoutÊes à la pile dans ette ordre. Une nouvelle tâ he est ajoutÊe à la pile

lorsque toutes les tâ hes prÊsentes dans la pile sont a omplies. Ce s hÊma global d'asservissement permet de onserver un maximum de degrÊs de libertÊ tout au long de l'asservissement. En eet, le robot est ontrlÊ par une tâ he peu ontraignante en dÊbut d'asservissement, e qui permet de laisser un grand nombre de degrÊs de libertÊ disponible pour rÊaliser l'Êvitement de butÊes. Cette solution permet de fa ilement prendre en ompte les ontraintes se ondaires en dÊbut d'asservissement (quand le nombre de degrÊs de libertÊ disponibles est important). Ainsi, à partir de l'instant (2), le robot appro he d'une butÊe. Le gradient est pris en ompte grâ e aux deux degrÊs de libertÊ en ore disponibles. Par ontre, on ne peut pas garantir que les ontraintes seront prises en ompte à la n de l'asservissement, quand le nombre de degrÊs de libertÊ disponibles est plus faible. En parti ulier, les ontraintes se ondaires ne sont plus prises en ompte à partir du moment oÚ la dernière tâ he est ajoutÊe (la pile est alors pleine, au un degrÊ de libertÊ n'est plus disponible). A partir de l'instant (3), le gradient est projetÊ sur un espa e nul, et n'est don plus pris en ompte dans la loi de ommande. Pour Êviter l'obsta le, la tâ he

eZ

est enlevĂŠe. En utilisant le degrĂŠ de libertĂŠ ainsi dĂŠgagĂŠ, il est possible d'ĂŠviter

la butÊe. La tâ he est nalement remise dans la pile pour terminer l'asservissement. Cette expÊrien e est une première appro he des solutions que nous dÊvelopperons dans la se onde partie du mÊmoire. En parti ulier, dans le hapitre 7, nous proposerons une ar hite ture permettant de hoisir automatiquement quelle tâ he retirer de la pile ou en ore quand la remettre pour rÊaliser l'asservissement tout en garantissant le respe t des ontraintes, même quand la pile est pleine.


3.2

Validation expérimentale sur un robot manipulateur

41

0.15 Tx Ty Tz

Trans. Speed

0.1 0.05 0 −0.05

0

500

1000

1500

Iterations 0.1 Rx Ry Rz

Rot. speed

0 −0.1 −0.2 −0.3

0

500

1000

1500

Iterations

(a) Dis ontinue ( ommande (3.10))

0.1 Tx Ty Tz

Trans. Speed

0.08 0.06 0.04 0.02 0 −0.02

0

500

1000

1500

Iterations 0.1 Rx Ry Rz

Rot. speed

0 −0.1 −0.2 −0.3

0

500

1000

1500

Iterations

(b) Continue ( ommande (3.32)) Fig. 3.6 

Expérien e 2 : ontinuité de la loi de ommande. (a) sans tenir ompte de la ontinuité ( ommande

(3.10)) (b) en tenant ompte de la ontinuité ( ommande (3.32)). La loi de ommande (3.32) permet bien d'assurer la ontinuité de la loi de ommande lors des modi ations de la pile.


42

Pile de tâ hes

1

Positions Articulaires

0.8

0.6

0.4

0.2

Gradient d’evitement

0

0

500

1000

1500

2000

2500

3000

0 0.1

500

1000

1500

2000

2500

3000 Art 1 Art 2 Art 3 Art 4 Art 5 Art 6

0.1 0

Gradient projete

−0.1

0

−0.1 0

500 (1)

1500 (2)

2000

2500

3000

(5)

(3) (4) Iterations

Fig. 3.7  Expérien e 3 : En haînement de tâ hes prenant en ompte les butées. Au lan ement de l'asservissement,

seule la tâ he

eg

est dans la pile. La tâ he

eR

est ajoutée à l'instant (1), puis la tâ he

eZ

à l'instant (2). Le robot

appro he alors de sa butée sur l'axe 2. Le gradient n'est plus nul. Il est pris en ompte ar deux degrés de liberté restent disponibles. A l'instant (3), on rajoute la dernière tâ he. Il n'y a plus de degrés de liberté, et le gradient est projeté sur un espa e nul. A l'instant (4) on retire provisoirement la tâ he (4)eZ pour dégager un degré de liberté. La butée peut alors être évitée. La tâ he est remise à l'instant (5), e qui permet de terminer l'asservissement.


3.3

Validation pour des robots mal alibrĂŠs

43

3.2.5 Ordre de l'en haÎnement Enn ette dernière expÊrien e est une première investigation pour omprendre l'intÊrêt de orre tement hoisir l'ordre dans lequel sont ajoutÊes les tâ hes. Comme pour les prÊ Êdentes expÊrien es, les tâ hes sont ajoutÊes su essivement dans la pile dans l'ordre

eg , eÎą , eZ

et enn

eR

Ă haque fois

que les tâ hes de la pile sont toutes a omplies. Pendant l'asservissement, on s'intÊresse à la distan e sÊparant le ja obien de haque tâ he al ulÊ à la position ourante de sa valeur al ulÊe à la position nale. Cette mesure donne une indi ation de la validitÊ de l'hypothèse de linÊaritÊ impli itement effe tuÊe lors de l'Ê riture de (3.1). En eet, si on suppose que le système est linÊaire, alors le ja obien est onstant ( ar les termes de se ond ordre sont nuls). Dans e as, la mesure doit être nulle. Au ontraire, si la mesure est ÊlevÊe, alors on peut armer que le ja obien varie fortement, e qui signie que l'hypothèse de linÊaritÊ est fausse. L'asservissement visuel permet d'utiliser e type d'hypothèse simpli atri e ar il est très robuste aux erreurs de modèle. NÊanmoins, plus le modèle est exa t, plus l'asservissement sera performant, et pourra alors être ee tue à plus grande vitesse ave autant de prÊ ision. La gure 3.8 montre l'Êvolution de la mesure de linÊaritÊ des quatre matri es d'intera tion au ours de l'asservissement. On onstate que la mesure des trois premières matri es d'intera tions s'annule dès que la tâ he

eg

est a omplie. La quatrième mesure ne s'annule pas mais dÊ roÎt fortement. Autrement

dit, l'exÊ ution de la tâ he

eg

en dÊbut d'asservissement permet d'obtenir une exÊ ution des tâ hes

suivantes de meilleure qualitĂŠ.

3.2.6 Con lusion partielle Cette première sÊrie d'expÊrien es nous a permis de valider la stru ture de pile. Nous avons pu vÊrier que la pile respe te les trois spÊ i ations imposÊes, 'est-à -dire qu'elle permet d'en haÎner des tâ hes de manière ontinue, tout en garantissant que les tâ hes dÊjà a omplies le resteront. Enn, la pile permet de prendre en ompte des ontraintes se ondaires à ondition que susamment de degrÊs de libertÊ soient disponibles. En permettant d'en haÎner su essivement des tâ hes de plus en plus omplexes, la pile permet même de tenir ompte des ontraintes se ondaires plus longtemps que n'aurait su le faire un asservissement lassique. MalgrÊ tout, ette stru ture n'est pas susante, et es premières expÊrien e ont permis d'en montrer les limites. Tout d'abord, la pile nÊ essite une bonne onnaissan e du ja obien de haque tâ he pour garantir le respe t de la hiÊrar hie. Nous avons pu voir qu'une erreur d'estimation d'un paramètre du ja obien engendre une perturbation à ause de l'inexa titude du proje teur. Nous nous intÊresserons spÊ iquement à e premier problème dans la se tion suivante. Le se ond problème est Êvidemment la mauvaise prise en ompte des ontraintes lorsque la pile est pleine. Ce problème gÊnÊral est le áur de l'Êtude prÊsentÊe dans e mÊmoire, et nous allons nous intÊresser tout au long des pro hains hapitres à proposer des solutions pour le rÊsoudre. Plus prÊ isÊment, dans les trois pro hains hapitres (partie I, hapitres 4, 5 et 6), la stru ture de la pile est modiÊe pour dÊgager des degrÊs de libertÊ supplÊmentaires dès le al ul de la loi de ommande. Dans la se onde partie, nous nous intÊresserons plutt à des mÊthodes de plus haut niveau pour dÊgager des degrÊs de libertÊ si nÊ essaire pendant l'asservissement en utilisant dire tement les fon tionnalitÊs d'ajout, de retrait et d'inversion des prioritÊs permises par la pile.

3.3 Validation pour des robots mal alibrÊs Dans ette partie, nous nous intÊressons au problème de sensibilitÊ de la pile au erreurs de modèle. En eet, les expÊrien es prÊsentÊes dans la se tion prÊ Êdente ont mis en Êviden e la forte sensibilitÊ de la pile qui s'avère in apable de maintenir le respe t de la hiÊrar hie entre les tâ hes lorsque les paramètres des opÊrateurs de proje tion ne sont pas parfaitement onnus. Nous proposons don d'utiliser des mÊthodes d'estimation pour optimiser au ours de l'asservissement la valeur des proje teurs


44

Pile de tâ hes

1.4 ||L1−L1*|| ||L2−L2*|| ||L3−L3*|| ||L4−L4*||

1.2

|| L − L* ||

1

0.8

0.6

0.4

0.2

0

0

50

100

150

200

250

Iterations Fig. 3.8  Expérien e 4 : Étude de la linéarité de l'asservissement lors d'un en haînement de tâ hes. La mesure ||Li − Li ∗ || est un ritère de linéarité de la tâ he ei : plus la mesure est faible, plus la tâ he est linéaire (et meilleur

sera l'asservissement). On onstate que l'exé ution de la tâ he

eg

permet d'obtenir une linéarité presque parfaite

des autres tâ hes. Cet ordre d'en haînement permet d'obtenir une exé ution de meilleure qualité.


3.3

Validation pour des robots mal alibrĂŠs

45

2

et ainsi orriger la perturbation .

3.3.1 DĂŠnition du problème Les lois de ommande (3.39) et (3.40) nĂŠ essitent le al ul des ja obiens des tâ hes prĂŠsentes dans la pile. Ce al ul exige des onnaissan es liĂŠes Ă l'ĂŠvolution des mesures apteurs et Ă  la gĂŠomĂŠtrie du robot. Typiquement en asservissement visuel, le al ul du ja obien nĂŠ essite des onnaissan es sur la ible (profondeur de la ible, position des points dans l'image, et ), sur la amĂŠra (paramètres intrinsèques de la amĂŠra) pour le al ul de la matri e d'intera tion, et sur le modèle gĂŠomĂŠtrique du bras pour le al ul du ja obien arti ulaire. Ces informations sont gĂŠnĂŠralement a quises lors d'une phase d'ĂŠtalonnage du système avant de lan er l'asservissement. NĂŠanmoins es paramètres ne sont pas toujours disponibles. Le robot n'est pas for ĂŠment dotĂŠ des fon tionnalitĂŠs de proprio ĂŠption nĂŠ essaire au al ul de son modèle gĂŠomĂŠtrique [Mar hand 01â&#x201E;&#x201E; ; les paramètres des systèmes physiques peuvent hanger au ours du temps, parti ulièrement pour un système rĂŠel dĂŠployĂŠ en extĂŠrieur [Malis 04bâ&#x201E;&#x201E; ; es paramètres peuvent aussi se modier Ă  ause d'une panne ou d'un mauvais fon tionnement. Enn, mĂŞme si le système est parfaitement alibrĂŠ, le al ul de l'ĂŠvolution des informations apteurs nĂŠ essite souvent une estimation de la profondeur de l'objet 3D onsidĂŠrĂŠ [Tahri 05â&#x201E;&#x201E;, qui est di ile Ă  obtenir de manière prĂŠ ise en pratique. Pour toutes es raisons, il peut ĂŞtre di ile voire impossible d'obtenir une valeur parfaite du ja obien et de l'opĂŠrateur de proje tion asso iĂŠ. Plusieurs mĂŠthodes ont ĂŠtĂŠ proposĂŠes pour estimer le ja obien d'une tâ he, la matri e d'intera tion ou en ore le ja obien arti ulaire du robot. Un des premiers travaux dans le domaine de l'asservissement visuel est sans doute [Hosoda 94â&#x201E;&#x201E;, qui propose une mĂŠthode d'estimation tout en apportant une preuve de onvergen e de l'apprentissage. Cette première solution est basĂŠe sur la mĂŠthode d'apprentissage de Broyden, mĂŠthode bien onnue dans le domaine de l'optimisation [Flet her 87â&#x201E;&#x201E;. Elle a depuis ĂŠtĂŠ utilisĂŠe de nombreuses fois en robotique, par exemple pour une tâ he de saisie rĂŠfĂŠren ĂŠe vision [Jagersand 96â&#x201E;&#x201E;. Cette mĂŠthode permet aussi l'apprentissage de modèles plus omplexes. Dans [Dodds 99â&#x201E;&#x201E; par exemple, les auteurs proposent d'utiliser un en haĂŽnement de tâ hes

ad-ho

pour sÊparer les modèles d'appro he

et de saisie proprement dite lors de la tâ he prĂŠ ĂŠdente. Dans [Lopes 05aâ&#x201E;&#x201E;, un modèle plus prĂŠ is d'une fon tion fortement non-linĂŠaire est appris en superposant plusieurs estimations linĂŠaires lo ales. Une deuxième solution pour l'apprentissage des matri es ja obiennes a aussi ĂŠtĂŠ proposĂŠe dans [Piepmeier 99, Piepmeier 02â&#x201E;&#x201E;. L'apprentissage est onsidĂŠrĂŠ omme un problème de minimisation entre la prĂŠdi tion et la mesure. Une estimation du ja obien est obtenue en utilisant une mĂŠthode itĂŠrative de type Gauss-Newtown Ă l'aide des moindres arrĂŠs. A partir de ette mĂŠthode, il a ĂŠtĂŠ proposĂŠ d'estimer dire tement la pseudo-inverse de la matri e pour al uler une ommande d'asservissement visuel [LaprestĂŠ 04â&#x201E;&#x201E;. Enn, il a ĂŠtĂŠ montrĂŠ qu'il est possible d'amĂŠliorer la onvergen e de l'algorithme, en parti ulier d'ĂŠviter les singularitĂŠs d'apprentissage en attĂŠnuant l'apprentissage dans les dire tions qui sont faiblement renseignĂŠes [DeMathelin 99â&#x201E;&#x201E;. Cette dernière rĂŠfĂŠren e propose aussi une très bonne synthèse des diĂŠrentes solutions proposĂŠes dans la littĂŠrature. Toutes es ĂŠtudes s'intĂŠressent prin ipalement Ă  l'apprentissage du ja obien. Il est bien onnu que l'asservissement en bou le fermĂŠe (l'asservissement visuel en parti ulier) est très robuste aux erreurs d'estimation du ja obien. L'asservissement garde don ses bonnes propriĂŠtĂŠs de onvergen e et de prĂŠ ision malgrĂŠ les approximations dues Ă  l'apprentissage. Mais lorsque le formalisme de la redondan e est utilisĂŠ pour non plus une mais plusieurs tâ hes, le ja obien est alors aussi nĂŠ essaire pour le al ul des opĂŠrateurs de proje tion. Or, omme nous l'avons dĂŠjĂ  remarquĂŠ lors de l'expĂŠrien e 1.3 prĂŠsentĂŠe dans la se tion prĂŠ ĂŠdente, le al ul des proje teurs n'est pas robuste aux approximations.

2 Le travail onsernant l'estimation en ligne pour la redondan e, prÊsentÊ dans ette partie, à ÊtÊ rÊalisÊ en ollaboration ave le professeur J. Santos-Vi tor et M. Lopes dans l'Êquipe VisLab (Instituto Superior TÊ ni o, Institute of Systems and Roboti s, Lisbonne, Portugal, http://www.isr.ist.utl.pt/vislab/). J'en prote pour les remer ier de leur haleureux a ueil, et je suis très er de pouvoir (à mon tour) intÊgrer le fruit de ette ollaboration dans ma thèse.


46

Pile de tâ hes

Dans la suite de ette se tion, nous nous proposons d'ĂŠtudier la mise en áuvre des te hniques d'estimation pour permettre d'utiliser la pile de tâ hes sur des systèmes robotiques mal alibrĂŠs. Ce travail a ĂŠtĂŠ rĂŠalisĂŠ en ollaboration ave le laboratoire VisLab de l'ISR/IST de Lisbonne (Portugal). L'ĂŠtude expĂŠrimentale a ĂŠtĂŠ en grande partie rĂŠalisĂŠe dans l'ĂŠquipe VisLab sur le robot torse humanoĂŻde Baltazar [Lopes 04â&#x201E;&#x201E;. A ause d'une ertaine ĂŠlasti itĂŠ de la stru ture et d'un manque de prĂŠ ision des apteurs de positions arti ulaires, un ĂŠtalonnage omplet du système est très di ile Ă obtenir, et impossible Ă  onserver pendant une longue pĂŠriode d'utilisation. L'obje tif prin ipal de ette ollaboration a ĂŠtĂŠ de mettre en áuvre la pile de tâ hes sur le robot Baltazar, et a permis en onsĂŠquen e une ĂŠtude gĂŠnĂŠrale sur l'estimation pour le formalisme de la redondan e. Nous prĂŠsenterons tout d'abord les te hniques lassiques d'estimation que nous avons mises en áuvre sur le robot. Puis nous prĂŠsentons plusieurs sĂŠries d'expĂŠrien es qui permettent de omparer es mĂŠthodes et d'ĂŠvaluer les rĂŠsultats de l'estimation pour la mise en áuvre de la pile de tâ hes.

3.3.2 MÊthodes d'estimation Le ja obien d'une tâ he est gÊnÊralement omposÊ de deux parties distin tes : le ja obien arti ulaire d'une part, et la matri e d'intera tion d'autre part. Par exemple, lorsqu'on onsidère un asservissement visuel, nous avons vu que son ja obien s'Ê rivait

Ji = Li Jq , ave Li = Lsi M (3.43). Le

ja obien arti ulaire nĂŠ essite une alibration du système manipulateur- apteur. La matri e d'intera tion nĂŠ essite des informations sur l'objet onsidĂŠrĂŠ. En parti ulier, lors d'un asservissement visuel, il est gĂŠnĂŠralement nĂŠ essaire de onnaĂŽtre la distan e amĂŠra-objet. De nombreuses solutions sont possibles pour estimer le ja obien de la tâ he. Nous avons hoisi de n'utiliser que des mĂŠthodes pseudo-linĂŠaires qui permettent d'estimer dire tement la valeur de la matri e. Ces mĂŠthodes sont Ă la fois robustes et gĂŠnĂŠriques mais plus simples Ă  mettre en áuvre. D'un autre tĂŠ, l'estimation dire te de la matri e ja obienne d'une tâ he s'est rĂŠvĂŠlĂŠe très di ile lors de sa mise en pratique. En eet, le modèle de la matri e Ă  apprendre est omposĂŠ d'un grand nombre de paramètres non linĂŠaires, qui sont nĂŠgligĂŠs lors de l'apprentissage dire t. Cette onstatation est parti ulièrement importante lorsqu'on ee tue de grand dĂŠpla ement du bras, ar le ja obien arti ulaire n'est pas du tout linĂŠaire [Lopes 05aâ&#x201E;&#x201E;. Plutt que d'estimer dire tement la valeur du ja obien de haque tâ he, nous avons travaillĂŠ ave une approximation

cq J

du ja obien arti ulaire. Une telle approximation est gĂŠnĂŠralement disponible

en utilisant un modèle (même grossier) du robot et une lo alisation approximative dans l'espa e arti ulaire. En utilisant inÊmatique

v.

cq J

qË&#x2122; , il est possible de al uler une approximation du torseur Li . cq . Nous ompenser les approximations ommises lors du al ul de J

et une mesure de

Il ne reste plus alors qu'Ă estimer la valeur appro hĂŠe de la matri e d'intera tion

Cette estimation permet alors de

allons montrer expĂŠrimentalement que ette solution permet d'obtenir une approximation satisfaisante de

Ji ,

et ainsi de mettre en áuvre la pile de tâ hes sur un robot mal alibrÊ ou en l'absen e d'un

modèle omplet de la ible. Mais tout d'abord, nous prÊsentons les mÊthodes d'estimation utilisÊes pour apprendre les matri es

Li .

3.3.3 MÊthode d'estimation de Broyden La première mÊthode d'estimation onsiste à maintenir une estimation de la ja obienne qui est rÊgulièrement remise à jour à partir d'un ouple dÊpla ement moteur ee tuÊ onstatÊ

oĂš

â&#x2C6;&#x2020;e

â&#x2C6;&#x2020;x - mouvement apteur

[Flet her 87, Hosoda 94â&#x201E;&#x201E;.

b + 1) = J(t) b +Îą J(t



 Ë&#x2020; â&#x2C6;&#x2020;e â&#x2C6;&#x2019; J(t)â&#x2C6;&#x2020;x â&#x2C6;&#x2020;xâ&#x160;¤ â&#x2C6;&#x2020;xâ&#x160;¤ â&#x2C6;&#x2020;x

(3.45)

Îą est un gain permettant de ongurer l'importan e de la mise Ă jour par rapport aux informations â&#x2C6;&#x2020;x n'est

prÊ Êdentes. Cette règle de remise à jour devient instable lorsque le dÊpla ement du robot

pas susamment important. Une solution onsiste Ă normaliser le terme au dĂŠnominateur pour ĂŠviter


3.3

Validation pour des robots mal alibrĂŠs

47

les singularitÊs. On peut aussi plus simplement arrêter l'estimation quand le dÊpla ement du robot devient trop faible. Cette mÊthode prÊsente plusieurs avantages. Tout d'abord, elle ne nÊ essite que peu de mÊmoire et un faible oÝt de al ul ar seule la dernière observation est utilisÊe lors de la remise à jour de la matri e. Un seul paramètre de onguration est nÊ essaire, e qui simplie sa mise en áuvre. De plus, elle peut être utilisÊe hors ligne avant l'asservissement à partir d'un orpus d'apprentissage mÊmorisÊ, mais aussi au ours de l'asservissement pour orriger le modèle quand de nouvelles donnÊes sont a quises.

3.3.4 Estimation par orrĂŠlation Une se onde mĂŠthode onsiste Ă utiliser le formalisme des moindres arrĂŠs pour al uler la matri e qui orrespond le mieux Ă  un orpus d'apprentissage [Piepmeier 99, DeMathelin 99â&#x201E;&#x201E;. On onsidère la fon tion de oĂťt suivante :

l=

t X i=0

Îł iâ&#x2C6;&#x2019;t (â&#x2C6;&#x2020;ei â&#x2C6;&#x2019; Jâ&#x2C6;&#x2020;xi )â&#x160;¤ (â&#x2C6;&#x2020;ei â&#x2C6;&#x2019; Jâ&#x2C6;&#x2020;xi )

(â&#x2C6;&#x2020;xi , â&#x2C6;&#x2020;ei ), ette sa hant â&#x2C6;&#x2020;x. ja obienne J est la

Ă&#x2030;tant donnĂŠ un orpus de donnĂŠes qui permet au mieux de prĂŠdire Une bonne estimation de la

fon tion de oĂťt est optimisĂŠe par la matri e

J

â&#x2C6;&#x2020;e

matri e qui optimise le orpus d'apprentissage

pour le ritère l . Cette solution s'Ê rit :

oĂš

Q

et

R

b = QR+ J

sont deux matri es dĂŠnies par :

Q

=

R =

t X

i=0 t X

Îť(tâ&#x2C6;&#x2019;i) â&#x2C6;&#x2020;eâ&#x160;¤ i â&#x2C6;&#x2020;xi Îť(tâ&#x2C6;&#x2019;i) â&#x2C6;&#x2020;xâ&#x160;¤ i â&#x2C6;&#x2020;xi

i=0

Cette formulation permet une estimation hors ligne à partir d'un orpus d'apprentissage omplet. Cette formulation obligerait à re al uler entièrement l'estimation à haque ajout de donnÊes dans le orpus d'apprentissage. Une solution pour remettre le modèle à jour au fur et à mesure de l'arrivÊe des informations a don ÊtÊ proposÊe :

Q R

= =

ÎťQ + â&#x2C6;&#x2020;eâ&#x160;¤ t â&#x2C6;&#x2020;xt ÎťR + â&#x2C6;&#x2020;xâ&#x160;¤ t â&#x2C6;&#x2020;xt

(3.46)

Comme pour la mĂŠthode Broyden, ette mĂŠthode ore l'avantage de pouvoir ĂŞtre utilisĂŠe avant de lan er l'asservissement ou en ours d'asservissement pendant le dĂŠpla ement du robot. Mais il s'est avĂŠrĂŠ di ile d'obtenir une estimation orre te sans passer par une phase prĂŠliminaire d'estimation hors ligne. Nous avons don utilisĂŠ pour les expĂŠrien es un petit orpus d'apprentissage omposĂŠ de mouvement simple du bras, de type

balbutiements.

3.3.5 Estimation Dire te-Inverse Enn, une dernière solution a ĂŠtĂŠ proposĂŠe dans [LaprestĂŠ 04â&#x201E;&#x201E;. Elle onsiste Ă utiliser la mĂŠthode d'estimation par orrĂŠlation pour apprendre dire tement la pseudo-inverse de la matri e. En eet, il est souvent intĂŠressant pour le al ul d'une loi de ommande d'obtenir dire tement la pseudo-inverse.


48

Pile de tâ hes

De plus, il est possible de montrer que la mĂŠthode d'estimation prĂŠsente de meilleures ara tĂŠristiques quand la pseudo-inverse est dire tement apprise [LaprestĂŠ 04â&#x201E;&#x201E;. Le ritère Ă optimiser est alors :

l=

t X i=0

La solution

+ H = Jc

Îł iâ&#x2C6;&#x2019;t (â&#x2C6;&#x2020;x â&#x2C6;&#x2019; Hâ&#x2C6;&#x2020;e)â&#x160;¤ (â&#x2C6;&#x2020;x â&#x2C6;&#x2019; Hâ&#x2C6;&#x2020;e)

s'obtient de la même manière que prÊ Êdemment. En utilisant (3.46) il est aussi

possible de proposer une remise Ă jour de l'estimation au ours de l'asservissement. Comme pour l'estimation par orrĂŠlation lassique, il s'est avĂŠrĂŠ nĂŠ essaire d'utiliser un bref apprentissage hors ligne.

3.3.6 Comparaison expÊrimentale Nous prÊsentons maintenant les rÊsultats expÊrimentaux omparant les diÊrentes solutions pour de l'en haÎnement en utilisant la pile de tâ hes. Les expÊrien es ont ÊtÊ ee tuÊes en utilisant les quatre tâ hes prÊsentÊes au paragraphe 3.2.1. Les trois premières expÊrien es ont ÊtÊ rÊalisÊes sur le robot Baltazar de l'Êquipe VisLab du laboratoire ISR/IST. Ce robot est un torse humanoïde dotÊ d'un bras à six degrÊs de libertÊ ainsi que d'une tête mobile et d'une main omplexe. Seul le bras a ÊtÊ a tionnÊ pendant es expÊrien es. La tête est munie d'une amÊra, dÊportÊe par rapport à l'ee teur du bras, et xe (pour nos expÊrien es). On her he à positionner la main du robot (organe terminal du bras) en translation et rotation par rapport à la amÊra. Pour simplier la partie vision, une ible distin tive est a ro hÊe à la main du robot, et permet omme prÊ Êdemment de fo aliser les expÊrien es sur la partie ommande. Le système expÊrimental est prÊsentÊ sur la gure 3.9. La première expÊrien e a permis de omparer l'e a itÊ des mÊthodes d'apprentissage prÊsentÊes plus haut pour l'estimation d'une matri e ja obienne. Nous avons ensuite gÊnÊralisÊ e premier rÊsultat à un en haÎnement omplet au ours duquel les quatre ja obiens ont ÊtÊ estimÊs. La dernière expÊrien e rÊalisÊe sur Baltazar montre que, si l'estimation est bien apable d'amÊliorer l'exÊ ution de la pile de tâ hes, l'en haÎnement aussi amÊliore la qualitÊ de l'estimation. Enn, une dernière sÊrie d'expÊrien es rÊalisÊes sur le robot Afma6 de l'IRISA a montrÊ que même pour un système robotique parfaitement ÊtalonnÊ, l'estimation amÊliore l'asservissement lorsque le modèle de la ible n'est pas parfaitement onnu.

ExpÊrien e 1 : Estimation d'une tâ he Dans ette première expÊrien e, l'estimation est rÊalisÊe sur une seule tâ he. L'estimation est utilisÊe tout d'abord pour rÊaliser la tâ he en question, puis pour maintenir la tâ he a omplie lors de l'introdu tion d'une se onde tâ he dans la pile. La tâ he estimÊe est

eg , la tâ he de entrage de la ible. Lorsque ette tâ he est rÊalisÊe, la tâ he eι

(rotation autour de l'axe optique) est ajoutÊe à la pile. Dans le as d'un système parfaitement onnu, la rotation s'ee tuerait alors tout en onservant un entrage parfait. Au ontraire, si l'opÊrateur de proje tion est mal al ulÊ, alors le entrage est perturbÊ. On peut mesurer la perturbation en mesurant d'une part la distan e maximale entre le entre de l'image et le entre de la ible, et d'autre part en mesurant le nombre d'itÊrations nÊ essaires à l'asservissement pour ramener la ible au entre de l'image. Si l'estimation de l'opÊrateur de proje tion est trop ÊloignÊ de la valeur rÊelle, la ible risque même de sortir du hamp de vue de la amÊra, e qui implique Êvidemment l'e he de l'asservissement. Les rÊsultats de l'expÊrien e sont prÊsentÊs sur les gures 3.10 et 3.11. L'en haÎnement

eg

-

eÎą

a

ÊtÊ rÊalisÊ en utilisant les diÊrentes mÊthodes d'estimation prÊsentÊes plus haut. La première gure montre l'Êvolution de l'erreur de la tâ he au ours de es asservissements. La gure 3.10(a) prÊsente les rÊsultats obtenus ave les mÊthodes d'estimation hors ligne, la gure 3.10(b) ave les mÊthodes d'estimation en ligne. Les rÊsultats sont omparÊs aux rÊsultats obtenus en utilisant dire tement la matri e ja obienne al ulÊe analytiquement à partir du modèle approximÊ du robot.


3.3

Validation pour des robots mal alibrés

49

(a) Vues externes

(b) Caméra d'asservissement

Fig. 3.9 

Positions initiale et nale du bras du robot Baltazar (a) Vues externes (b) Vues prises à l'aide de la

améra servant à l'asservissement


50

Pile de tâ hes

La première onstatation on erne la qualité de l'exé ution de la première tâ he. Toutes les méthodes sont satisfaisantes, que e soit hors ligne, en ligne, ou en utilisant la matri e analytique erronée. La vitesse de onvergen e est similaire. Ce résultat onrme la robustesse de l'asservissement visuel en présen e d'erreurs de modélisation. Par ontre, ette onstatation n'est plus vraie lorsque une se onde tâ he est ajoutée à la pile. On onstate alors que les méthodes d'estimation hors ligne ou en ore la solution analytique approximée sont in apables de produire une approximation satisfaisante de l'opérateur de proje tion. La tâ he

eg

est fortement perturbée, et l'asservissement est in apable de orriger la perturbation rapidement. En omparaison, les méthodes d'estimation en ours d'asservissement produisent de bien meilleurs résultats, en termes d'amplitude de la perturbation et de temps de onvergen e après la perturbation. Le maximum de la perturbation est omparable à l'amplitude de la perturbation lorsqu'on utilise la valeur analytique du ja obien. Par ontre, l'estimation en ligne est bien plus rapide à orriger la perturbation. Celle- i est réduite à moins d'un tiers de sa valeur maximale au bout de quinze itérations. On arrive même à orriger totalement la perturbation avant onvergen e de la se onde tâ he (à partir de l'itération

100,

soit à la moitié du temps de onvergen e de la tâ he se ondaire).

La gure 3.11 présente l'évolution de l'erreur de la se onde tâ he. Le ja obien de ette tâ he n'est pas estimé, mais est al ulé analytiquement. On remarque que les onvergen es sont identiques, quelle que soit la méthode utilisée pour estimer le ja obien de la tâ he

eg .

L'etimation du ja obien et du

proje teur de la tâ he prioritaire ne modie don pas l'exé ution de la se onde tâ he Enn, nous avons pu noter en reproduisant de nombreuses fois ette expérien e en variant les tâ hes et les positions initiales et désirées que la méthode d'estimation par orrélation en ligne produisait en règle générale de meilleurs résultats, en terme d'amplitude de perturbation, et de vitesse de onvergen e après perturbation. Mais la méthode par orrélation né essite un hoix attentif, et fon tionne beau oup moins bien lorsqu'un gain inadapté est utilisé. D'un autre té, la méthode de Broyden s'est avérée très intéressante ar très robuste, pouvant traiter pratiquement toutes les tâ hes et toutes les situations en utilisant le même paramètre de onguration.


3.3

Validation pour des robots mal alibrés

51

Analytic Broyden Correlation Direct inverse

60

Centering error (in pixel)

50

40

30

20

10

0

0

50

100

150

Iterations

(a) Estimation hors ligne Analytic Broyden Correlation Direct inverse

60

Centering error (in pixel)

50

40

30

20

10

0

0

50

100

150

Iterations

(b) Estimation en ligne

Fig. 3.10  Expérien e 1 : Evolution de l'erreur de la tâ he prioritaire

eg

au ours d'un en haînement de tâ hes (a)

en utilisant des méthodes d'estimation hors ligne avant l'asservissement (b) en utilisant des méthodes d'estimation en ligne en ours d'asservissement. La tâ he

eg

est tout d'abord a omplie seule. A l'itération

50,

la tâ he

est

ajoutée à la pile. L'amplitude et la durée de la perturbation sont alors deux ritères pour mesurer la qualité de l'estimation. On remarque que les méthodes d'estimation en ligne produisent les meilleurs résultats, en amplitude mais surtout en durée né essaire pour orriger la perturbation.


52

Pile de tâ hes

Fig. 3.11 

eg

ExpÊrien e 1 : Evolution de l'erreur de la tâ he se ondaire

est maintenue à zÊro ( f gure 3.10). La tâ he

eÎą

eÎą

alors que l'erreur de la tâ he prioritaire

est ajoutĂŠe Ă la pile Ă  l'itĂŠration

50.

La onvergen e est

identique quelle que soit la mÊthode utilisÊe pour estimer le ja obien de la tâ he prioritaire.

ExpÊrien e 2 : Estimation lors d'un en haÎnement omplet L'expÊrien e prÊ Êdente a permis de omparer les mÊthodes d'estimation en ligne lors d'un en haÎnement simple utilisant une pile de deux tâ hes. Nous prÊsentons maintenant l'appli ation à un en haÎnement omplet lors du positionnement du bras. Le robot en haÎne su essivement les tâ hes

eg , eZ , eÎą

et enn

eR ,

tout en essayant de maintenir les tâ hes a omplies. La perturbation onsta-

tÊe lors de l'ajout d'une nouvelle tâ he sur les tâ hes prioritaires nous permet de juger la qualitÊ de l'estimation. Dans un sou i de on ision et de synthèse, nous ne prÊsentons que les rÊsultats obtenus pour la plus performante des mÊthodes d'estimation (la mÊthode par orrÊlation). Il est nÊ essaire d'ajouter que les rÊsultats en utilisant la mÊthode de Broyden sont pro hes, et ne prÊsentent don pas parti ulièrement d'intÊrêt supplÊmentaire. Les rÊsultats de l'asservissement sont prÊsentÊs sur la gure 3.12. A titre de omparaison, nous donnons les rÊsultats de l'en haÎnement ave estimation (g. 3.12(b)) mais aussi eux de l'asservissement utilisant dire tement la valeur analytique des ja obiens (g. 3.12(a)). On onstate que l'estimation amÊliore grandement le respe t de la hiÊrar hie imposÊe par la pile. L'amplitude de la perturbation n'est jamais aussi ÊlevÊe que lorsque la solution analytique approximÊe est utilisÊe. Mais surtout, l'estimation en ligne permet de orriger la perturbation beau oup plus rapidement. D'un autre tÊ, l'utilisation d'une mÊthode d'estimation ne perturbe pas la vitesse de onvergen e des tâ hes nouvellement ajoutÊes. L'amÊlioration du respe t de la hiÊrar hie ne se fait don pas au dÊpend de la qualitÊ de l'asservissement.

ExpÊrien e 3 : AmÊlioration de l'estimation grâ e à l'en haÎnement Nous avons montrÊ dans les deux expÊrien es prÊ Êdentes que, grâ e aux mÊthodes d'estimation, on peut amÊliorer la qualitÊ de l'en haÎnement de tâ he. RÊ iproquement, ette troisième expÊrien e montre que l'en haÎnement permet d'amÊliorer l'apprentissage en rendant possible un dÊ ouplage des informations dans le orpus d'apprentissage. L'expÊrien e onsiste à exÊ uter trois asservissements diÊrents à partir de la même position initiale et jusqu'à la même position nale. La première exÊ ution est le même en haÎnement de tâ hes


3.3

Validation pour des robots mal alibrés

53

(a) Ja obiens analytiques approximés

(b) Ja obiens estimés en ligne (par orrélation)

Fig. 3.12  Expérien e 2 : En haînement omplet de tâ hes sur un robot mal alibré (a) en utilisant dire tement les

valeurs analytiques approximées des ja obiens (b) en utilisant la méthode de orrélation pour estimer les ja obiens. L'ordre de l'en haînement est

eg , eZ , eα

et enn

eR .

Une nouvelle tâ he est ajoutée à haque itération marquée

d'un trait verti al. On onstate que l'utilisation de l'estimation en ligne permet d'améliorer grandement les résultats en réduisant les perturbations lors de l'ajout d'une nouvelle tâ he.


54

Pile de tâ hes

qu'à l'expÊrien e prÊ Êdente. La se onde exÊ ution utilise la même rÊpartition des tâ hes dans la pile, mais en y insÊrant toutes dès la première itÊration. Autrement dit, l'exÊ ution utilise bien la pile, mais sans ee tuer d'en haÎnement. Enn, la dernière exÊ ution est un asservissement visuel lassique, en utilisant une seule tâ he globale omposÊe des quatre sous-tâ hes utilisÊes habituellement. Pour es trois exÊ utions, les ja obiens des tâ hes sont estimÊs en ligne. Pour omparer la qualitÊ de l'apprentissage, on onsidère le onditionnement de la matri e ja obienne globale ( omposÊe des quatre matri es ja obiennes superposÊes). Les mÊthodes d'estimation basÊes sur la orrÊlation ( orrÊlation simple et dire te-inverse) prÊsentent des rÊsultats identiques, que la pile ou l'en haÎnement soient appliquÊs ou non. Par ontre, les rÊsultats sont très diÊrents si on onsidère la mÊthode de Broyden. La variation du onditionnement lors des trois exÊ utions en utilisant la mÊthode d'estimation de Broyden est tra Êe gure 3.13. Lorsqu'on utilise la pile sans utiliser d'en haÎnement de tâ hes, le onditionnement de la matri e estimÊe augmente ÊnormÊment. Le onditionnement est en ore plus mauvais quand un asservissement lassique (sans utiliser la pile) est appliquÊ. Dans e dernier as, le onditionnement est tellement mauvais que l'algorithme diverge et l'asservissement Ê houe. Par ontre, en utilisant un en haÎnement de tâ hes, le onditionnement reste stable tout au long de l'asservissement. Nous n'avons pas d'expli ations thÊoriques de e rÊsultat expÊrimental. Chaque tâ he orrespond à un mouvement simple de la amÊra. Il semble don que l'en haÎnement permet d'obtenir les bonnes propriÊtÊs de dÊ ouplage des informations pour l'apprentissage, en permettant d'apprendre un seul mouvement simple à la fois.

ExpĂŠrien e 4 : Appli ation Ă un système robotique ĂŠtalonnĂŠ Les trois expĂŠrien es prĂŠ ĂŠdentes ont ĂŠtĂŠ rĂŠalisĂŠes sur un robot di ile Ă  ĂŠtalonner Ă  ause de sa stru ture peu rigide et de son manque de apteurs proprio eptifs. Dans e as, le ja obien al ulĂŠ Ă  partir de la formule analytique en utilisant les paramètres ĂŠrronĂŠs ĂŠtait très approximatif. La dernière sĂŠrie d'expĂŠrien es a ĂŠtĂŠ ee tuĂŠe sur un système robotique parfaitement ĂŠtalonnĂŠ. Le but de ette dernière sĂŠrie d'expĂŠrien es est de montrer que mĂŞme sur un système bien alibrĂŠ, les te hniques d'estimation peuvent ĂŞtre intĂŠressantes, et que l'estimation produite est susamment prĂŠ ise pour orriger de petites approximations du modèle. Le système expĂŠrimental est le mĂŞme qu'Ă  la se tion prĂŠ ĂŠdente : l'asservissement est rĂŠalisĂŠ sur le robot Afma6. Ce robot est parfaitement alibrĂŠ. La amĂŠra est xĂŠe sur l'organe terminal du bras. Lors du al ul des ja obiens des quatre tâ hes, le ja obien arti ulaire est don parfaitement onnu. Par ontre, le al ul de la matri e d'intera tion nĂŠ essite de onnaĂŽtre la distan e de la amĂŠra Ă  l'objet. Dans les expĂŠrien es prĂŠ ĂŠdentes, ette distan e ĂŠtait obtenue par un al ul de pose en utilisant le modèle gĂŠomĂŠtrique de la ible. Pour les expĂŠrien es prĂŠsentĂŠes i i, nous avons volontairement modiĂŠ l'e helle de e modèle. Il en rĂŠsulte une erreur d'estimation de la profondeur de l'objet. Le ja obien des quatre tâ hes nalement al ulĂŠ est don une approximation de la vraie valeur. Les opĂŠrateurs de proje tion sont don approximĂŠs, et, omme dans les expĂŠrien es prĂŠ ĂŠdentes, la hiĂŠrar hie imposĂŠe par la pile n'est pas respe tĂŠe. Nous her hons don Ă  ĂŠvaluer la apa itĂŠ des mĂŠthodes d'estimation Ă  orriger ette perturbation. Les expĂŠrien es sont rĂŠsumĂŠes sur les gures 3.14 et 3.15. La première gure prĂŠsente une omparaison des diĂŠrentes mĂŠthodes. La meilleure exĂŠ ution est obtenue en utilisant le modèle parfait du système. Dans e as, grâ e Ă  la grande qualitĂŠ du robot et de la alibration de la amĂŠra, il est possible d'obtenir un respe t omplet de la hiĂŠrar hie imposĂŠe par la pile. Ce i n'est plus vrai dès qu'une approximation est onsidĂŠrĂŠe, en l'o urren e une erreur dans la profondeur de l'objet. On onstate alors que la pile est perturbĂŠe, et que la perturbation n'est pas orrigĂŠe tant que la tâ he dernièrement ajoutĂŠe n'est pas a omplie. Une perturbation similaire apparaĂŽt si on ne al ule pas les ja obiens au point ourant, mais par exemple au point dĂŠsirĂŠ. Cette approximation est souvent utilisĂŠe en asservissement visuel, ar elle permet d'ĂŠviter ertains minima lo aux [Chaumette 98, Malis 04aâ&#x201E;&#x201E;. L'utilisation des mĂŠthodes d'estimation permet de orriger ette perturbation. Comme dans les expĂŠrien es prĂŠ ĂŠdentes, une estimation hors ligne n'est pas susante pour amĂŠliorer le rĂŠsultat. Par


3.3

Validation pour des robots mal alibrĂŠs

55

Conditionnement

10

6

Premiere execution Seconde execution Troisieme execution 10

10

10

10

10

5

4

3

2

1

0

20

40

60

80

100

120

140

160

180

200

220

ItĂŠration Fig. 3.13 

ExpÊrien e 3 : Conditionnement de la matri e ja obienne estimÊe globale. La première exÊ ution

orrespond à un en haÎnement de tâ hes utilisant la pile. La se onde exÊ ution utilise la pile sans en haÎnement de tâ hes (toutes les tâ hes sont mises dans la pile à la première itÊration). La dernière exÊ ution est un asservissement visuel lassique. On onstate que l'estimation est de meilleure qualitÊ (le onditionnement est meilleur) lorsqu'elle est ee tuÊe pendant un en haÎnement de tâ hes.


56

Pile de tâ hes

Norme de la perturbation

0.06 courrante mesestimee desiree

0.05 0.04 0.03 0.02 0.01 0

0

20

40

60

80

100

120

140

160 Iterations

(a) Matrices analytiques Norme de la perturbation

0.06 courante horsâ&#x2C6;&#x2019;ligne enâ&#x2C6;&#x2019;ligne broyden

0.05 0.04 0.03 0.02 0.01 0

0

20

40

60

80

100

120

140

(b) Matrices estimees

Fig. 3.14 

160 Iterations

ExpÊrien e 4 : Norme de la perturbation ( 'est-à -dire norme de l'erreur des tâ hes dÊjà rÊalisÊes)

durant la tâ he de positionnement. (a) rÊsultats obtenus en utilisant la solution analytique exa te ( ourante), la matri e analytique al ulÊe à partir de la profondeur surestimÊe d'un fa teur 2 (mÊsestimÊ), et la matri e analytique al ulÊe au point dÊsirÊ (dÊsirÊe). (b) omparaison des rÊsultats obtenus ave la valeur analytique exa te ( ourante) ou ave des valeurs estimÊes du ja obien, en utilisant l'estimation par orrÊlation hors ligne (hors-ligne) ou en ligne (en-ligne) ou en utilisant la mÊthode de Broyden à partir de la valeur appro hÊe de la matri e analytique. On remarque que les erreurs d'approximation engendrent de grandes perturbations, qui peuvent être orrigÊes en utilisant une mÊthode d'estimation en ligne. La meilleure solution en termes d'amplitude et de temps de orre tion de la perturbation est la mÊthode de Broyden, dÊtaillÊe g. 3.15.

ontre, l'estimation en ligne permet d'apprendre le modèle et de orriger à la volÊe les approximations obtenues. Enn, une dernière solution ore des rÊsultats très intÊressants : nous utilisons la mÊthode de Broyden en prenant omme valeur initiale de l'estimation la matri e ja obienne analytique approximÊe. En eet, ontrairement à la mÊthode d'estimation par orrÊlation, la mÊthode de Broyden permet de orriger par des mises à jour rÊgulières une valeur quel onque de la matri e re her hÊe. Cependant la matri e ja obienne al ulÊe à partir des paramètres approximÊs est une bonne valeur initiale pour l'estimation. On voit sur la gure 3.14 que la perturbation reste très faible, et surtout qu'elle est très vite orrigÊe. L'Êvolution des erreurs des quatre tâ hes lors d'un asservissement utilisant ette mÊthode d'estimation est dÊtaillÊe sur la gure 3.15. On voit que la perturbation est pratiquement nÊgligeable, même lors de l'ajout d'une tâ he dans la pile.


3.4

Con lusions du hapitre

57

1

Tache 1 Tache 2

0.8

Tache 3 Tache 4

Erreur

0.6

0.4

0.2

0

Fig. 3.15 

0

20

40

60

80 100 Iterations

120

140

160

180

Expérien e 4 : Évolution des erreurs des quatre tâ hes lors d'un asservissement visuel en utilisant la

méthode de Broyden pour orriger les erreurs d'approximation de la matri e d'intera tion. La méthode d'estimation est apable de orriger pratiquement parfaitement les approximations. La perturbation n'apparaît pratiquement pas, et est très rapidement omplètement orrigée.

3.4 Con lusions du hapitre Dans e hapitre, nous avons proposé une stru ture permettant de réaliser simplement de l'en haînement de tâ hes en a tivant ou désa tivant des sous-parties de la tâ he globale, tout en prenant en ompte des ontraintes se ondaires. Nous avons ensuite montré par des expérien es réalisées sur un robot réel que ette stru ture est valide si le système robotique est susamment bien onnu. Les asservissements utilisant la pile de tâ hes ont permis de positionner le robot par rapport à une ible, en garantissant la ontinuité de la ommande, et en prenant en ompte les butées arti ulaires. Enn, nous nous sommes pen hés sur la mise en ÷uvre de ette stru ture quand les paramètres du système robotique sont mal onnus. Dans e as, il est né essaire d'utiliser des méthodes d'estimation en ligne pour orriger les approximations ommises lors du al ul du ja obien. La solution que nous avons proposée permet d'obtenir de très bons résultats, pratiquement omparables à eux obtenus ave une matri e analytique parfaite. Ces résultats montrent don que la stru ture de pile de tâ hes est aussi valide pour des systèmes robotiques mal alibrés. Cette dernière étude est aussi un travail important présentant la faible robustesse aux erreurs d'approximation des lois de ommande utilisant le formalisme de la redondan e. D'un autre té, nous avons montré que la pile de tâ hes ne permet pas de garantir que les ontraintes se ondaires seront toujours respe tées. En parti ulier, lorsque la pile est presque pleine, les ontraintes se ondaires sont très peu prises en ompte. Il est alors né essaire d'utiliser l'en haînement de tâ hes en modiant la pile pour garantir le respe t de es ontraintes. Dans la suite de ette thèse, nous allons nous intéresser plus parti ulièrement à e problème. En parti ulier, les trois autres hapitres de ette partie proposeront deux modi ations du formalisme des fon tions de tâ hes et de la redondan e, pour augmenter la prise en ompte des ontraintes se ondaires dès le al ul de la loi de ommande. Dans la se onde partie du mémoire, nous étudierons des méthodes de plus haut-niveau permettant de modier l'état de la pile pour augmenter la prise en ompte des ontraintes lorsque ela est né essaire.


58

Pile de t창 hes


Chapitre 4

Redondan e dire tionnelle

D

ans le hapitre pré édent, nous avons proposé d'utiliser le formalisme lassique de la redondan e pour onstruire une stru ture de ontrle permettant de réaliser une tâ he référen ée apteur

tout en prenant en ompte des ontraintes se ondaires. La limitation prin ipale de ette stru ture est la faible prise en ompte des ontraintes lorsque la tâ he prin ipale utilise trop de degrés de liberté. Dans e as, le nombre de degrés de liberté disponibles pour les ontraintes se ondaires est trop faible, et elles- i ne peuvent alors plus être respe tées. Dans e hapitre, nous proposons de modier le formalisme de la redondan e pour permettre de dégager plus de degrés de liberté pour les tâ hes se ondaires, tout en garantissant l'a omplissement de la tâ he prioritaire. L'idée prin ipale est de ne pas interdire les mouvements de la tâ he se ondaire qui a élèrent l'exé ution de la tâ he prin ipale. On rappelle que la redondan e lassique garantit que l'évolution de la tâ he prin ipale reste onstante quelle que soit la ommande envoyée par la tâ he se ondaire. Dans e hapitre nous proposons au ontraire de garantir une évolution au moins aussi rapide que lorsque la ommande se ondaire est nulle. La partie de la tâ he se ondaire ne modiant pas la tâ he prin ipale, ou allant dans une dire tion faisant progresser la tâ he prin ipale est onservée. Nous avons don nommé e type de ommande

redondan e dire tionnelle. Cette méthode permet ainsi

de gagner des degrés de liberté lors du al ul de la loi de ommande, e qui améliore l'e a ité de la tâ he se ondaire. Dans un premier temps, nous présenterons e formalisme appliqué à deux tâ hes. La loi de ommande est onstruite à partir du formalisme lassique de la redondan e. Nous proposons dans la partie 4.2 une loi de ommande permettant d'obtenir l'idée générale dé rite au paragraphe pré édent. Nous montrons ensuite que ette ommande est asymptotiquement stable dans la partie 4.3. Les résultats expérimentaux permettant de valider ette méthode originale sont présentés dans la partie 4.4. Enn, la dernière partie présente les travaux réalisés pour généraliser la redondan e dire tionnelle à plusieurs tâ hes et ainsi permettre son utilisation pour la pile de tâ hes.

4.1 Dénition du problème à partir de la redondan e lassique Dans ette se tion, nous rappelons très brièvement les lois de ommande issues du formalisme de la redondan e lassique, présentées dans le hapitre pré édent. Puis, à partir de la redondan e lassique, nous onstruisons un ritère élargi pour le al ul de la proje tion, et nous en déduisons une loi de ommande originale permettant de prendre en ompte une plus grande partie de la ommande


60

Redondan e dire tionnelle

se ondaire.

4.1.1 Vitesse de onvergen e de la redondan e lassique e

Comme dans le hapitre pré édent, on note

q le ve teur de m × n. Dans toute la plein, 'est-à-dire que rang(J) = m. de réguler e à zéro. Classiquement,

la tâ he prin ipale à réaliser et

position arti ulaire du robot. Le ja obien de la tâ he est une matri e de taille suite du hapitre, on fait l'hypothèse que la tâ he

e

est de rang

On her he à onstruire une loi de ommande permettant

la loi de ommande impose une dé roissan e parti ulière de l'erreur. Par exemple, un omportement exponentielle dé roissant est obtenu en imposant une vitesse de dé roissan e désirée :

e˙ ∗ = −λe

(4.1)

La loi de ommande lassique permettant de réaliser la onsigne

e˙ ∗

s'é rit :

q˙ = J+ e˙ ∗ = −λJ+ e

(4.2)

Lorsque le ja obien du robot est parfaitement onnu, ette loi de ommande permet d'obtenir e˙ = e˙ ∗ . Comme on l'a vu au hapitre pré édent, la solution

exa tement la onsigne voulue, 'est-à-dire

(4.2) n'est qu'une solution parti ulière : 'est la solution de norme minimale. Une tâ he se ondaire peut être prise en ompte en onsidérant la solution générale. Dans e as, la loi de ommande s'é rit :

q˙ = J+ e˙ ∗ + Pz où

P

est le proje teur ve toriel sur le noyau de la matri e

quel onque. Le ve teur

z

(4.3)

J (P = I − J+ J )

et

z

est un ve teur

peut alors être utilisé pour prendre en ompte une ommande se ondaire

quel onque, tout en garantissant que l'exé ution de la tâ he prin ipale n'est pas perturbée. Cette ˙ = e˙ ∗ ( ar JP = loi de ommande permet ainsi de réaliser parfaitement la onsigne en obtenant e  + J I − J J = 0). De la même manière, on peut vérier que la vitesse de onvergen e de la tâ he reste la même

quelle que soit

z,

en onsidérant sa fon tion d'énergie. On note :

V = La fon tion

V

1 1 ||e|| = e ⊤ e 2 2

est une fon tion de Lyapunov de la ommande (4.2). Elle est minorée par

est négative :

(4.4)

0 et sa dérivée

V˙ = e ⊤ e˙ = −λ||e||

(4.5)

V ne dépend z, 'est-à-dire que si la loi de ommande al ulée à partir de la tâ he prin ipale est stable, de ommande al ulée à partir de e et z est stable quelle que soit la valeur de z :

Lorsqu'on onsidère la ommande (4.3), on vérie fa ilement que la dérivée de la fon tion pas du terme alors la loi

V˙ = e ⊤ J q˙ = V˙ ∗ où

V˙ ∗

est la vitesse de dé roissan e souhaitée (V˙

(4.6)

, e ⊤ e˙ ∗ ).

4.1.2 Élargissement de la ondition de proje tion z est a omplie sous la ondition que la vitesse V˙ ∗ . Pourtant, pour garantir que la tâ he soit la valeur de la ommande se ondaire z, il sut ∗ aussi rapide que dans le as désiré V˙ . La ondition

Dans l'appro he lassique, la ommande se ondaire de onvergen e

soit exa tement égale à la vitesse désirée

prin ipale est aussi bien exé utée quelle que de garantir que la onvergen e est au moins

d'appli ation de la ommande se ondaire s'é rit alors :

V˙ ≤ V˙ ∗

(4.7)


4.1

DÊnition du problème à partir de la redondan e lassique

61

Par analogie ave la redondan e lassique, on her he une loi de ommande de la forme

qË&#x2122; = J+ eË&#x2122; â&#x2C6;&#x2014; + z

(4.8)

z

pour que ette loi de ommande vĂŠrie la

On her he les onditions nĂŠ essaires et susantes sur ondition (4.7). Lorsque la ommande

qË&#x2122;

est appliquĂŠe,

VË&#x2122;

s'ĂŠ rit :

VË&#x2122; = e â&#x160;¤ eË&#x2122; = e â&#x160;¤ JJ+ eË&#x2122; â&#x2C6;&#x2014; + e â&#x160;¤ Jz ar

eË&#x2122; = J qË&#x2122;

(4.9)

(3.1). En introduisant ette dernière Êquation dans (4.7), on obtient l'inÊgalitÊ suivante :

e â&#x160;¤ eË&#x2122; â&#x2C6;&#x2014; + eJz â&#x2030;¤ e â&#x160;¤ eË&#x2122; â&#x2C6;&#x2014; ar

J+ J = I

et

VË&#x2122; â&#x2C6;&#x2014; = e â&#x160;¤ eË&#x2122; â&#x2C6;&#x2014; .

(4.10)

La ondition s'ĂŠ rit nalement :

e â&#x160;¤ Jz â&#x2030;¤ 0

(4.11)

La ondition utilisĂŠe dans la redondan e lassique peut s'ĂŠ rire sous une forme omparable : elle impose

Jz = 0.

La ondition obtenue i i est don plus gĂŠnĂŠrale que la ondition utilisĂŠe dans la redondan e

lassique. On peut don prendre en ompte une plus large part de la ommande se ondaire.

4.1.3 RĂŠĂŠ riture de la ondition ĂŠlargie Nous avons ĂŠ rit la ondition que doit respe ter la ommande se ondaire. Nous her hons maintenant Ă onstruire un opĂŠrateur qui permet de ne onserver d'une ommande se ondaire quel onque que la partie qui respe te ette ondition. On note sous ondition (4.7). On pose

qË&#x2122; 2 = Pz,

z

Pour simplier la onstru tion de l'opÊrateur singulières de

J.

Soit

U, ÎŁ, V

une ommande se ondaire quel onque, Ă appliquer

P tel que qË&#x2122; 2 respe te (4.11). P , les al uls sont ee tuĂŠs dans l'espa e des valeurs de J en valeurs singulières :

et on her he

la dĂŠ omposition

J = UÎŁVâ&#x160;¤ oĂš

â&#x2C6;&#x2020;Ď&#x192;

V

est une base de l'espa e arti ulaire,

U

(4.12)

est une base de l'espa e de la fon tion

est une matri e diagonale dont les oe ients sont les valeurs singulières de

J,

e , ÎŁ = [ â&#x2C6;&#x2020;Ď&#x192; 0 ], Ď&#x192;i (Ď&#x192;i > 0).

notĂŠs

La ondition (4.11) s'ĂŠ rit alors :

e ave e Ă une

e â&#x160;¤ UÎŁVâ&#x160;¤ z = e eâ&#x160;¤ ÎŁ e zâ&#x2030;¤0

(4.13)

= Uâ&#x160;¤ e et e z = Vâ&#x160;¤ z. Pour simplier l'ĂŠ riture du proje teur, on rĂŠduit nalement ette ondition z: ondition susante moins forte sur ha une des omposantes du ve teur e â&#x2C6;&#x20AC;i â&#x2C6;&#x2C6; [1..m],

eei Ď&#x192;i zei â&#x2030;¤ 0

(4.14)

4.1.4 Constru tion de la proje tion ĂŠlargie

ConsidĂŠrons maintenant une ommande se ondaire quel onque

z.

Il sut don d'assurer que ha-

une des omposantes de e ve teur dans l'espa e des valeurs singulières respe te bien la ondition (4.14). Pour ela, il sut de onserver les omposantes respe tueuses, et d'annuler les autres. Le ve teur

qË&#x2122; 2

onstruit Ă partir de

â&#x2C6;&#x20AC;i â&#x2C6;&#x2C6; [1..n],

z

et respe tant (4.14) s'ĂŠ rit :

  zi qe Ë&#x2122;2 = zi  0

si si si

i > m ou zi = 0 zei et (eei Ď&#x192;i ) sont zei et (eei Ď&#x192;i ) sont

de signes opposĂŠs de mĂŞme signe

(4.15)


62

Redondan e dire tionnelle

Cette dernière Êquation peut se mettre sous la forme matri ielle suivante :



 f fez e q Ë&#x2122; 2 = P(z) = P z= oĂš les omposants

pi

de la matri e

pi (z) =

  

1 1 0

fez P

p1 (e z)

0 ..

0

.

pn (e z)



 z e

sont dĂŠnis par : si si si

i > m ou zi = 0 zei et (eei Ď&#x192;i ) sont zei et (eei Ď&#x192;i ) sont

de signes opposĂŠs de mĂŞme signe

La loi de ommande globale permettant de rÊaliser la tâ he prin ipale

z

(4.16)

e

tout en prenant en ompte

sous la ondition (4.11) s'ĂŠ rit nalement :

qË&#x2122; = J+ eË&#x2122; â&#x2C6;&#x2014; + Pz z ave

(4.17)

fez Uâ&#x160;¤ . Pz = UP

4.1.5 Mise en pratique impossible En pratique, la loi de ommande sur le degrĂŠ de libertĂŠ orrespondant Ă une omposante e1 de â&#x2C6;&#x2019;Îťeâ&#x2C6;&#x2014;i . Il est don proportionnel Ă  l'erreur Ă  orriger. Lorsque l'erreur est très faible, e terme est très faible, permettant une orre tion l'erreur prin ipale est omposĂŠ de deux termes. Le premier vaut

très ne et don une bonne prÊ ision de onvergen e. Le se ond terme est

zei ,

dont la seule ontrainte

est qu'il soit de même signe que le premier terme. Ce se ond terme n'est don pas proportionnel à l'erreur à orriger. Il peut don être arbitrairement grand par rapport à l'erreur lorsque elle- i onverge vers zÊro. Ce problème se omprend bien lorsqu'on tra e l'eet du proje teur en petite dimension. La gure 4.1 reprÊsente plusieurs as ara tÊristiques en dimension 2. La tâ he prin ipale est de dimension 1. L'espa e nul obtenu ave la redondan e lassique est une droite perpendi ulaire à la dire tion de la tâ he prin ipale. L'espa e nul obtenu ave la mÊthode proposÊe est un demi plan ontenant l'espa e nul de la redondan e lassique. Lorsque la ommande se ondaire est dans la même dire tion que la tâ he prin ipale, le ve teur n'est pas modiÊ par la proje tion. Mais il n'y a au une borne supÊrieure sur la valeur de e ve teur, même lorsque sa valeur est très importante ( omme dans le as du ve teur

z2

sur la gure). Lorsqu'on met ette ommande en pratique, la ommande se ondaire engendre une os illation

lors de la onvergen e de l'erreur prin ipale. Ce problème est très similaire au hoix d'une valeur trop forte du gain

Îť

de la tâ he prin ipale. Dans les deux as, l'erreur onverge trop vite et dÊpasse

don zÊro. Mais dans le as prÊsent, le problème n'est pas dÝ au hoix d'un gain, mais à la valeur de la ommande se ondaire, qui n'est pas aussi fa ilement ontrlable. Pour orriger e problème, il est nÊ essaire de rajouter une borne supÊrieure dÊpendant de la valeur de l'erreur à orriger, pour limiter le demi-plan de proje tion à une bande moins large. Cette borne apparaÎt dire tement dans l'expression du proje teur lorsqu'on Ê rit le formalisme à partir des diÊren es de position qu'à partir des vitesses

qË&#x2122; .

â&#x2C6;&#x2020;q

plutt

C'est e que nous allons faire dans la se tion suivante.

4.2 Constru tion de la loi de ommande Dans ette se tion, nous proposons de rÊÊ rire l'idÊe gÊnÊrale prÊsentÊe dans la se tion prÊ Êdente, en utilisant les notations diÊrentielles an d'introduire une borne supÊrieure de l'espa e de proje tion. En eet, l'introdu tion des diÊrentielles nous permet de al uler dire tement l'eet de la loi de ommande sur l'erreur de la tâ he prin ipale, 'est-à -dire le mouvement rÊalisÊ dans l'espa e de la


4.2

Constru tion de la loi de ommande

63

Ker(J1 ) z1

Pz1

e1

Pz3

J1

z3

z2 Pz2 Fig. 4.1  Exemple de proje tion en dimension 2. La gure est tra ĂŠe dans la base orthonormale de la dĂŠ omposition

en valeur singulière. La tâ he prin ipale est de dimension 1. Le noyau de la tâ he est la droite

Ker(J1 ).

La

redondan e lassique ramène la ommande se ondaire sur ette droite. L'espa e nul obtenu ave la mÊthode proposÊe est un demi-plan. Lorsque la ommande se ondaire n'est pas dans l'espa e nul, elle est aussi ramenÊe sur la droite

Ker(J1 ). C'est

le as du ve teur

z3 .

Lorsque la ommande se ondaire est dans le demi-plan, elle n'est pas

modiĂŠe par la proje tion, omme 'est le as des ve teurs

z1

et

z2 .

se ondaire est très forte omparÊe à la valeur de l'erreur prin ipale.

Cela a un eet nĂŠfaste lorsque la ommande


64

Redondan e dire tionnelle

tâ he. Ce i permet ainsi de borner la ommande se ondaire lorsque l'erreur de la tâ he prin ipale est très faible. La onstru tion de la loi de ommande se fait selon le même plan adoptÊ dans la se tion prÊ Êdente. Nous dÊveloppons tout d'abord rapidement le formalisme lassique de la redondan e en utilisant les notations hoisies. Puis nous Êlargissons la ondition de proje tion lassiquement utilisÊe pour Êtendre la prise en ompte de la ommande se ondaire. Enn, nous onstruisons l'opÊrateur de proje tion permettant de respe ter ette ondition, pour nir par donner la forme omplète de la loi de ommande.

4.2.1 Introdu tion des notations diĂŠrentielles On note ja obien

J

â&#x2C6;&#x2020;e

la diĂŠrentielle de l'erreur

e

et

â&#x2C6;&#x2020;q

le mouvement arti ulaire orrespondant. Le

de la tâ he prin ipale permet de lier es deux termes :

â&#x2C6;&#x2020;e = Jâ&#x2C6;&#x2020;q On souhaite onstruire le ve teur de ommande

â&#x2C6;&#x2020;q

(4.18)

pour rĂŠaliser le mouvement innitĂŠsimal

â&#x2C6;&#x2020;eâ&#x2C6;&#x2014;

dans l'espa e de la tâ he, 'est-à -dire pour obtenir :

e(q + â&#x2C6;&#x2020;q) = e + â&#x2C6;&#x2020;eâ&#x2C6;&#x2014;

(4.19)

De la même manière que lorsque les notations dÊrivÊes sont utilisÊes, la solution gÊnÊrale pour rÊaliser ette ondition s'Ê rit sous la forme suivante :

â&#x2C6;&#x2020;q = J+ â&#x2C6;&#x2020;eâ&#x2C6;&#x2014; + Pz oĂš, omme dans le as lassique,

P

(4.20)

est le proje teur sur le noyau de

J1

et

z

est un ve teur arbitraire

permettant d'appliquer une ommande se ondaire.

4.2.2 Ă&#x2030;largissement de la ondition de proje tion Les ontraintes se ondaires sont ainsi prises en ompte sous la ondition

e(q + â&#x2C6;&#x2020;q) = e + â&#x2C6;&#x2020;eâ&#x2C6;&#x2014; .

Comme prÊ Êdemment, ette ontrainte est très forte et peut être Êlargie pour prendre en ompte une plus grande part de la ommande se ondaire. En eet, pour garantir que la tâ he prin ipale est aussi bien exÊ utÊe quelle que soit la ommande se ondaire

z, il sut de garantir que le système onverge au

moins aussi vite que dans le as oÚ la ommande se ondaire est nulle. On reformule don le problème de la onstru tion de la loi de ommande : nous her hons

â&#x2C6;&#x2020;q

respe tant la ontrainte suivante :

||e(q + â&#x2C6;&#x2020;q)|| â&#x2030;¤ ||e + â&#x2C6;&#x2020;eâ&#x2C6;&#x2014; || Sans perte de gĂŠnĂŠralitĂŠ, on peut her her

â&#x2C6;&#x2020;q

sous la forme

â&#x2C6;&#x2020;q = J+ â&#x2C6;&#x2020;eâ&#x2C6;&#x2014; + â&#x2C6;&#x2020;q2 oĂš

â&#x2C6;&#x2020;q2

(4.21)

est un ve teur arbitraire garantissant que

â&#x2C6;&#x2020;q

(4.22)

respe te la ondition (4.21). On peut alors

ĂŠ rire :

e(q + â&#x2C6;&#x2020;q) = e + Jâ&#x2C6;&#x2020;q = e + â&#x2C6;&#x2020;eâ&#x2C6;&#x2014; + Jâ&#x2C6;&#x2020;q2

(4.23)

En introduisant ette dernière Êquation dans (4.21), on peut reformuler la ondition de prise en ompte de la ontrainte se ondaire :

||e + â&#x2C6;&#x2020;eâ&#x2C6;&#x2014; + Jâ&#x2C6;&#x2020;q2 || â&#x2030;¤ ||e + â&#x2C6;&#x2020;eâ&#x2C6;&#x2014; ||

(4.24)


4.2

Constru tion de la loi de ommande

65

4.2.3 Réé riture de la ondition élargie De la même manière que dans la partie pré édente, nous allons onsidérer ette inégalité dans

J pour simplier son expression. Comme dans la partie pré édente, e = V⊤ q les expressions e = U⊤ e et q U, Σ et V la dé omposition en valeur singulière de J , et e

l'espa e des valeurs singulières de on note

des ve teurs dans l'espa e des valeurs singulières. La ondition pré édente s'é rit alors :

La matri e

   ∗ ∗  g + Σ∆q g 2 || ≤ ||U e g || ||U e e + ∆e e + ∆e

U est orthonormale. Elle ne modie

(4.25)

don pas la valeur de la norme. On obtient nalement

la ondition de proje tion sous la forme suivante :

g + Σ∆q g 2 || ≤ ||e g || ||e e + ∆e e + ∆e

(4.26)

4.2.4 Constru tion de l'espa e libre

On appelle espa e libre de la tâ he prin ipale l'ensemble des ve teurs se ondaires

z

qui respe tent

la ondition 4.24. Nous allons maintenant ara tériser expli itement et espa e, avant d'en déduire un proje teur permettant de ramener n'importe quelle ommande se ondaire dans l'espa e libre. Soit

a 6= 0

Fa

un ve teur quel onque. On dénit l'espa e

:

Fa = {x \ ||a + x|| ≤ ||a||} L'espa e

Fa

est la boule de entre

(−a)

et de rayon

||a||.

(4.27)

Elle est représentée sur la gure 4.2 dans

le as d'un espa e de dimension 2. Cet espa e nous permet de ara tériser l'ensemble des ommandes se ondaires respe tant la ondition (4.21). On peut l'é rire très simplement sous la forme suivante :

g ∈ F g∗ Σ∆q 2 e +∆e

(4.28)

Le développement de l'inégalité (4.26) donne après une suite de al uls simples :

2

m X i=1

g∗ )σi ∆q ] (eei + ∆e 2i + i

Pour simplier le al ul de la proje tion de

z

Cette simpli ation onsiste à réduire par :

L'espa e

b g∗ F e +∆e

i=1

dans

qu'une ondition susante de (4.29). Nous her hons

∀i ∈ [1..m],

m X

2

] σi2 ∆q 2i ≤ 0

Fe +∆e g∗ ,

∆q2

(4.29)

nous proposons de ne onsidérer

tel que :

2

2] g∗ )σi ∆q ] 2(eei + ∆e 2i + σi ∆q2i ≤ 0 i

Fe+∆e g∗

à son espa e artésien intérieur, noté

Fa = {x \ ||a + x||∞ ≤ ||a||∞ }

(4.30)

b g∗ F e +∆e

et déni (4.31)

est la boule dénie par la norme innie :

||x||∞ = max { xi ,

La rédu tion de l'espa e libre de proje tion est don nalement :

Fe+∆e g∗

à

b g∗ F e +∆e

x = (x1 , ..., xn ) }

(4.32)

est représentée sur la gure 4.2. La ondition de

g2 ∈ F b g∗ Σ∆q e +∆e

(4.33)

Cette ondition est susante pour assurer la dé roissan e imposée par la ondition (4.21). Elle n'est pas né essaire, mais on onstate intuitivement que ette dernière ondition n'est pas beau oup plus forte, et que la perte de l'espa e libre lors de l'approximation n'est pas très importante (voir gure 4.2).


66

Redondan e dire tionnelle

z2

e2

f

e2

Fig. 4.2 

z4

f

e1 e1

11111111111111111111 00000000000000000000 00000000000000000000 11111111111111111111 Pz2 00000000000000000000 11111111111111111111 00000000000000000000 11111111111111111111 00000000000000000000 11111111111111111111 00000000000000000000 11111111111111111111 00000000000000000000 11111111111111111111 00000000000000000000 11111111111111111111 00000000000000000000 11111111111111111111 00000000000000000000 11111111111111111111 00000000000000000000 11111111111111111111 00000000000000000000 11111111111111111111 00000000000000000000 11111111111111111111 00000000000000000000 11111111111111111111 00000000000000000000 11111111111111111111 00000000000000000000 11111111111111111111 00000000000000000000 11111111111111111111 Pz1 00000000000000000000 11111111111111111111 00000000000000000000 11111111111111111111 a 00000000000000000000 11111111111111111111 00000000000000000000 11111111111111111111 00000000000000000000 11111111111111111111 00000000000000000000 11111111111111111111 00000000000000000000 11111111111111111111 00000000000000000000 11111111111111111111 00000000000000000000 11111111111111111111 00000000000000000000 11111111111111111111 00000000000000000000 11111111111111111111 00000000000000000000 11111111111111111111 00000000000000000000 11111111111111111111 00000000000000000000 11111111111111111111 Pz3 00000000000000000000 11111111111111111111 00000000000000000000 11111111111111111111 00000000000000000000 11111111111111111111 00000000000000000000 11111111111111111111 00000000000000000000 11111111111111111111 00000000000000000000 11111111111111111111

Fda

a

z1

Fa

z3

Représentation des ensembles

Fe +∆e g∗

et

b g∗ F e +∆e

en dimension 2.

(e e1 , e2 ). b g ∗ est la boule de mêmes F e +∆e paramètres pour la norme innie ||.||∞ . On représente la proje tion de quatre points z1 , z2 , z3 et z4 sur l'espa e b g ∗ à titre d'exemple. Leur image projetée est respe tivement Pz1 , Pz2 , Pz3 et 0 (la proje tion est réalisée F e +∆e La base anonique est notée

Dans ette base, l'espa e

(e1 , e2 ).

Fe +∆e g∗

La base issue de la dé omposition en valeurs singulières est notée

est une boule de norme eu lidienne

en appliquant l'opérateur déni dans le paragraphe 4.2.5).

||.||.

L'espa e


4.2

Constru tion de la loi de ommande

67

4.2.5 Constru tion de la proje tion ĂŠlargie ConsidĂŠrons maintenant une ommande se ondaire quel onque z. Si z appartient Ă l'espa e libre b gâ&#x2C6;&#x2014; , alors on peut l'ajouter dire tement Ă  la ommande de la tâ he prin ipale, tout en garantissant F e +â&#x2C6;&#x2020;e le respe t de la ondition (4.21). Sinon, il est nĂŠ essaire de ramener la ommande se ondaire z dans b gâ&#x2C6;&#x2014; pour garantir le respe t de la ondition. On her he don â&#x2C6;&#x2020;q2 dans F gâ&#x2C6;&#x2014; l'espa e libre F e +â&#x2C6;&#x2020;e e +â&#x2C6;&#x2020;e le plus pro he de z. Nous allons don onstruire l'opĂŠrateur de proje tion permettant d'obtenir â&#x2C6;&#x2020;q2 dans F gâ&#x2C6;&#x2014; Ă  partir de z. e +â&#x2C6;&#x2020;e La ondition (4.30) se dĂŠveloppe en plusieurs sous- as :

â&#x2C6;&#x20AC;i â&#x2C6;&#x2C6; [1..m],

J ).

  ou

On peut alors al uler le

sous- as :

oĂš

ou

] â&#x2C6;&#x2020;q 2i = 0 2 gâ&#x2C6;&#x2014; ] 0 < â&#x2C6;&#x2020;q 2i â&#x2030;¤ â&#x2C6;&#x2019; Ď&#x192;i (eei + â&#x2C6;&#x2020;ei ) gâ&#x2C6;&#x2014; ) â&#x2030;¤ â&#x2C6;&#x2020;q ] â&#x2C6;&#x2019; Ď&#x192;2i (eei + â&#x2C6;&#x2020;e 2i < 0 i

(4.34)

Ď&#x192;i est possible ar quel que soit i, Ď&#x192;i > 0 (Ď&#x192;i est une valeur propre â&#x2C6;&#x2020;q2i optimal Ă partir de la valeur zei orrespondante pour ha un des  si i > m ou z ei = 0 zei    gâ&#x2C6;&#x2014; )  zei si 0 < z ei â&#x2030;¤ â&#x2C6;&#x2019; Ď&#x192;2i (eei + â&#x2C6;&#x2020;e  i    2 â&#x2C6;&#x2014; g si â&#x2C6;&#x2019; z e ) â&#x2030;¤ z e < 0 ( e e + â&#x2C6;&#x2020;e i i i Ď&#x192;i i ] (4.35) â&#x2C6;&#x2020;q 2i = â&#x2C6;&#x2014; g  si Ď&#x192;i z ei > 0 et eei + â&#x2C6;&#x2020;ei < 0 0     gâ&#x2C6;&#x2014; > 0 0 si Ď&#x192;i z ei < 0 et eei + â&#x2C6;&#x2020;e  i   gâ&#x2C6;&#x2014; ) sinon 2(eei + â&#x2C6;&#x2020;e i

On rappelle que la division par de

  

e z = Vâ&#x160;¤ z.

Cette dernière Êquation peut se mettre sous une forme matri ielle :



 g 2 = P(z) e fez e â&#x2C6;&#x2020;q =P z= oĂš les oe ients

pi

de la matri e diagonale

pi (z) =

L'opÊrateur singulières de

e P

J.

                

1 1 1 0 0 â&#x2C6;&#x2019;

gâ&#x2C6;&#x2014; ) 2(eei +â&#x2C6;&#x2020;e i Ď&#x192;i zi

fez P

p1 (z)

0 ..

0

.

pn (z)



 z

(4.36)

s'ĂŠ rivent : si si si si si

i > m ou zi = 0 gâ&#x2C6;&#x2014; ) 0 < zi â&#x2030;¤ â&#x2C6;&#x2019; Ď&#x192;2i (eei + â&#x2C6;&#x2020;e i 2 â&#x2C6;&#x2014; g ) â&#x2030;¤ zi < 0 â&#x2C6;&#x2019; Ď&#x192;i (eei + â&#x2C6;&#x2020;e i gâ&#x2C6;&#x2014; < 0 Ď&#x192;i zi > 0 et eei + â&#x2C6;&#x2020;e i gâ&#x2C6;&#x2014; > 0 Ď&#x192;i zi < 0 et eei + â&#x2C6;&#x2020;e i

sinon

permet d'obtenir la ommande se ondaire

g2 â&#x2C6;&#x2020;q

exprimĂŠe dans la base des valeurs

L'opĂŠrateur permettant nalement d'obtenir la ommande se ondaire dans la base

anonique de l'espa e arti ulaire est :

Remarque 2.1:

â&#x160;¤ fez Vâ&#x160;¤ = VP ^ Pz = VP Vâ&#x160;¤ z V

(4.37)

fez dĂŠpend P f z et la forme de e n'est pas linĂŠaire. La matri e Pe z n'est pas une matri e de proje tion ve torielle (sa diagonale devrait ĂŞtre omposĂŠe uniquement de 0 et 1). Il s'agit en fait simplement de la forme matri ielle de l'opĂŠrateur non linĂŠaire de proje tion P . L'opĂŠrateur

P

que nous venons de dĂŠnir n'est pas linĂŠaire. En eet, la matri e asso iĂŠe

fez e P z


68

Redondan e dire tionnelle

4.2.6 Loi de ommande En utilisant l'opérateur de proje tion que nous venons de onstruire, il est maintenant possible d'é rire dire tement la loi de ommande al ulée à partir de la tâ he prin ipale se ondaire

z

e

et de la ommande

:

∆q = J+ ∆e∗ + Pz z

(4.38)

Cette loi de ommande permet la réalisation de la tâ he e à une vitesse au moins égale au ompor∆e∗ , et de prendre en ompte la ommande se ondaire z sous la ondition dénit en

tement imposé (4.21).

4.2.7 Comparaison et on lusion On remarque que la forme obtenue est très pro he de la loi de ommande al ulée à partir de la redondan e lassique : la ommande se ondaire est projeté sur un espa e libre avant d'être ajoutée à la ommande al ulée d'après la tâ he prin ipale. Le proje teur al ulé en utilisant le formalisme lassique est aussi une matri e diagonale lorsqu'on l'exprime dans la base

V. Mais dans le as lassique,

les oe ients de la diagonale sont :

pi =



1 0

si

i>m

(4.39)

sinon

Cette expression est à omparer ave la dénition (4.36) de la matri e

fez . P

En d'autres termes, le

nombre de oe ients non nuls est plus important dans le as du nouvel opérateur que nous avons déni que dans le as lassique. A haque fois qu'un terme de la diagonale n'est pas nul, un degré de liberté est dégagé et peut être utilisé pour améliorer la prise en ompte de la ommande se ondaire. Les espa es libres de la redondan e lassique et de la redondan e dire tionnelle sont représentés sur la gure 4.3, dans le as d'une tâ he de dimension 2 et d'un espa e arti ulaire de dimension 3. En utilisant la redondan e lassique, l'espa e libre de la tâ he prin ipale est une droite : la première omposante de la ommande se ondaire est prise en ompte, les deux autres omposantes sont annulées. En utilisant la redondan e dire tionnelle, l'espa e libre est un ne qui ontient la droite libre de la redondan e lassique. La première omposante de la ommande se ondaire est bien prise en ompte. Les deux autres omposantes sont prises en ompte à ondition que leur signe soit orre t et qu'elles soient plus faibles que l'erreur de la tâ he prin ipale. Enn, en omparaison de la loi de ommande (4.17) proposée dans la première se tion à partir des notations dérivées, ette se onde solution apporte omme voulu une borne supérieure de la valeur de la ommande se ondaire. Cette borne est représentée sur la gure 4.4. Dans e as, lorsque le ve teur se ondaire est dans la bonne dire tion, il n'est modié que lorsque sa valeur est trop élevée par rapport à elle de l'erreur à orriger. L'espa e libre est dans e as une bande omprenant le noyau de la tâ he prin ipale ( 'est-à-dire l'espa e libre de la redondan e lassique.

4.3 Preuve de stabilité Théorème 4.3.1

Soit e une fon tion de tâ he dont le ja obien J = ∂e ∂q est de rang plein. Alors la loi de ommande suivante est stable et onverge asymptotiquement vers e = 0 : ∆q = J+ ∆e∗ + P∆q2 ∆q2

(4.40)

ave :  ∆e∗ est une fon tion de e telle que : ke + ∆e∗ k ≤ kek

(4.41)


4.3

Preuve de stabilité

69

2 1.5 1 0.5 0 −0.5 −1 −1.5 −2 −18

Fig. 4.3 

Redondance classique Redondance directionnelle 0 −16

−14

−12

−10

−8

−6

−4

−2

0

2

4

2

−2

Comparaison de l'espa e libre obtenu dans le as de la redondan e lassique (l'espa e libre est une

droite) et dans le as de la redondan e dire tionnelle (l'espa e libre est un ne).


70

Redondan e dire tionnelle

Ker(J1 ) z1

Pz1

e1

Pz3 z2

Pz z 2

J1

z3

Pz2

Fig. 4.4  Espa e libre de la redondan e dire tionnelle. La se onde solution permet d'introduire une se onde borne

à l'espa e libre. Lorsque la ommande se ondaire est dans la bonne dire tion et n'est pas trop forte omparée à l'erreur à orriger, elle n'est pas modiée par la proje tion. Lorsque la valeur est trop forte, elle est ramenée dans la bande du plan orrespondant à l'espa e libre.


4.4

Validation expĂŠrimentale

71

 et â&#x2C6;&#x2020;q2 est une ommande se ondaire quel onque. Preuve: Soit

V (t)

la fon tion de Lyapunov lassique du système (4.40), dÊnie par :

V (t) = ||e||2 La fon tion

V

(4.42)

est positive. Il sut don pour prouver la stabilitÊ du système de montrer que sa dÊrivÊe

est stri tement nĂŠgative. Celle- i s'ĂŠ rit :

â&#x2C6;&#x2020;V = 2e â&#x160;¤ â&#x2C6;&#x2020;e

(4.43)

En utilisant l'approximation de premier ordre (3.1), ette dĂŠrivĂŠe s'ĂŠ rit en fon tion du ve teur de ommande arti ulaire

â&#x2C6;&#x2020;q

:

â&#x2C6;&#x2020;V (t) = 2e â&#x160;¤ Jâ&#x2C6;&#x2020;q 2

2

2

(4.44)

â&#x160;¤

Etant donnĂŠ que ||e + Jâ&#x2C6;&#x2020;q|| = ||e|| + ||Jâ&#x2C6;&#x2020;q|| + 2e Jâ&#x2C6;&#x2020;q (en utilisant le dĂŠveloppement lassique ||a||2 = aâ&#x160;¤ a), â&#x2C6;&#x2020;V (t) se met nalement sous la forme suivante :

â&#x2C6;&#x2020;V = ||e + Jâ&#x2C6;&#x2020;q||2 â&#x2C6;&#x2019; ||e||2 â&#x2C6;&#x2019; ||Jâ&#x2C6;&#x2020;q||2 On peut supposer que

Jâ&#x2C6;&#x2020;q 6= 0 (en eet, Jâ&#x2C6;&#x2020;q = 0 orrespond au as trivial e ). On peut alors majorer l'ĂŠgalitĂŠ prĂŠ ĂŠdente :

(4.45) ou la loi de ommande

ne modie pas la fon tion

â&#x2C6;&#x2020;V < ||e + Jâ&#x2C6;&#x2020;q||2 â&#x2C6;&#x2019; ||e||2

(4.46)

Or, on sait d'après la onstru tion de la loi de ommande que (4.21) :

||e + Jâ&#x2C6;&#x2020;q|| â&#x2030;¤ ||e + â&#x2C6;&#x2020;eâ&#x2C6;&#x2014; ||

(4.47)

Il est don possible de majorer la se onde partie de l'inĂŠgalitĂŠ (4.46) :

||e + Jâ&#x2C6;&#x2020;q||2 â&#x2C6;&#x2019; ||e||2 â&#x2030;¤ ||e + â&#x2C6;&#x2020;eâ&#x2C6;&#x2014; || â&#x2C6;&#x2019; ||e||2 La onsigne

â&#x2C6;&#x2020;eâ&#x2C6;&#x2014;

(4.48)

respe te par hypothèse la ondition (4.41) du thÊorème, e qui assure que le

se ond terme de l'inĂŠgalitĂŠ est nĂŠgatif. On obtient nalement la majoration voulue :

â&#x2C6;&#x2020;V < 0 La fon tion

V (t)

(4.49)

est don une fon tion de Lyapunov valide pour le système (4.40), e qui prouve

que le système ontrlÊ par (4.40) est asymptotiquement stable, et onverge asymptotiquement vers 0.

4.4 Validation expÊrimentale Nous prÊsentons dans les paragraphes qui suivent une sÊrie d'expÊrien es destinÊes à valider l'utilisation de la redondan e dire tionnelle pour la prise en ompte de ontraintes se ondaires pendant l'asservissement d'une tâ he prioritaire. Comme dans le hapitre prÊ Êdent, es expÊrien es ont ÊtÊ rÊalisÊes en utilisant l'asservissement visuel omme tâ he prin ipale. Les ontraintes se ondaires onsistent à Êviter les butÊes arti ulaires du robot ou les o ultations ausÊes par un objet en mouvement passant entre la amÊra et la ible. Les expÊrien es permettent de omparer les performan es de la redondan e dire tionnelle et de la redondan e lassique. Nous montrerons en parti ulier que la redondan e dire tionnelle permet, en pratique, de mieux prendre en ompte la ontrainte se ondaire, et que ela permet par exemple d'Êviter l'obsta le ou l'o ultation.


72

Redondan e dire tionnelle

4.4.1 Mise en áuvre en utilisant l'asservissement visuel Quatre tâ hes pour ontrler six degrÊs de libertÊ Les tâ hes sont onstruites d'après les moments d'un ensemble de points ara tÊristiques. Nous avons hoisi d'utiliser les mêmes tâ hes que dans le hapitre prÊ Êdent. On rappelle que les quatre tâ hes orrespondent à une sub-division de l'ensemble des degrÊs de libertÊ du robot, 'est-à-dire qu'elles asservissent le robot sur une position de rÊfÊren e unique lorsqu'elles sont toutes appliquÊes simultanÊment. Les quatre tâ hes sont notÊes omme suit : 

eg

utilise le entre de gravitĂŠ de l'ensemble de points pour ontrler les mouvements de entrage

de la amĂŠra ;

eZ



est basĂŠe sur la surfa e de l'objet et ontrle les translations de la amĂŠra le long de son axe

optique ; 

eÎą ontrle la rotation de la amĂŠra autour de son axe optique en utilisant l'orientation prin ipale



eR

de l'ensemble de points (moments d'ordre 2) ; est basĂŠe sur des moments d'ordre supĂŠrieur pour ontrler les mouvements de rotation

autour de l'objet. Rappelons enn que es quatre tâ hes sont aussi dÊtaillÊes en Annexe A.

Ă&#x2030;vitement de butĂŠes Comme nous l'avons dit plus haut, les deux ontraintes se ondaires que nous avons onsidĂŠrĂŠes lors de es expĂŠrien es sont l'ĂŠvitement de butĂŠes et l'ĂŠvitement d'o ultations visuelles. Ces ontraintes ont ĂŠtĂŠ prises en ompte en utilisant la mĂŠthode du gradient projetĂŠ, dĂŠjĂ prĂŠsentĂŠe dans le hapitre prĂŠ ĂŠdent. La ontrainte est reprĂŠsentĂŠe au moyen d'une fon tion de oĂťt. Le gradient de ette fon tion de oĂťt, al ulĂŠ dans l'espa e de la ommande, peut ĂŞtre vu omme une for e arti ielle permettant d'ĂŠloigner le robot des zones de violation de la ontrainte. La fon tion de oĂťt utilisĂŠe pour rĂŠaliser l'ĂŠvitement de butĂŠes est la mĂŞme que dans le hapitre prĂŠ ĂŠdent ( f. 3.2.1). Bien que les expĂŠrien es aient ĂŠtĂŠ rĂŠalisĂŠes sur le mĂŞme robot (un robot artĂŠsien Ă  six degrĂŠs de libertĂŠ), nous avons arti iellement modiĂŠ les butĂŠes arti ulaires de manière Ă  ompliquer la ontrainte de butĂŠe.

Ă&#x2030;vitement d'o ultation visuelle La ontrainte d'ĂŠvitement d'o ultation est al ulĂŠe en fon tion d'informations extraites de l'image. Une ĂŠtape prĂŠliminaire dĂŠte te l'objet o ultant s'il existe. La loi de ommande doit alors augmenter la distan e note note

dx et xa le

d qui sÊpare la ible sur laquelle le robot s'asservit de l'objet risquant deqla masquer. dy les oordonnÊes de la distan e d dans le repère image (on a alors d = d2x + d2y ).

On On

point le plus pro he de la ible appartenant Ă l'objet o ultant. Seul e point est onsidĂŠrĂŠ

lors du al ul de l'ĂŠvitement ( e qui orrespond Ă une simpli ation lassique). Les notations sont rĂŠsumĂŠes sur la gure 4.5.

Vsocc est al ulĂŠe dire tement dans l'espa e image. Elle doit ĂŞtre maximale et doit ĂŞtre pro he de 0 quand la distan e d est grande. D'après [Mar hand 98â&#x201E;&#x201E;, nous occ dĂŠnissons simplement Vs de la manière suivante : La fon tion de oĂťt

quand

d

vaut

0,

Vsocc (d) = eâ&#x2C6;&#x2019;βd oĂš

s = (x, y)

2

(4.50)

sont les oordonnÊes dans le repère image. Le paramètre

β

est arbitraire et permet

d'ajuster les eets de la ommande d'Êvitement. La fon tion de oÝt est reprÊsentÊe sur la gure 4.6). Le gradient de ette fon tion de oÝt s'obtient très simplement dans l'espa e image : 2

occ â&#x2C6;&#x2021;â&#x160;¤ s Vs

=

â&#x2C6;&#x2019;2βdx eâ&#x2C6;&#x2019;βd 2 â&#x2C6;&#x2019;2βdy eâ&#x2C6;&#x2019;βd

!

(4.51)


4.4

Validation expérimentale

73

xa

d

dy

dx Fig. 4.5  Apparition d'un objet o ultant dans l'image. La ible sur laquelle le robot est asservi est omposée de

quatre points blan s sur fond noir. L'objet o ultant est représenté en orange sur la gure. Le point le plus pro he de la ible est notée

xa .

On note

d = (dx , dy )

la distan e entre e point et la ible.

Cette for e, exprimée dans l'espa e image, peut ensuite être onvertie dans l'espa e de la ommande en utilisant (3.36) :

gs = − où

M

et

Jq

 ∂s ∂r + occ occ ∇⊤ = −(Lx MJq )+ ∇⊤ s Vs s Vs ∂r ∂q

sont les matri es dénies dans (3.43), et

Lx

(4.52)

est la matri e d'intera tion du point

xa .

4.4.2 Expérien e 1 : simulation Cette première série d'expérien es a été réalisée en simulation, de manière à pouvoir ontrler plus pré isément tous les paramètres, en parti ulier le bruit de mesure. La tâ he prin ipale ontrle trois degrés de liberté du robot. Elle est omposée des tâ hes

eg

et

ez .

Il s'agit don en fait d'une

liaison virtuelle rotule, omme on peut en réaliser par exemple par un asservissement sur une sphère. La tâ he se ondaire est simplement une ommande onstante selon l'axe

X

de la améra :

 emain = eg1 , eg2 , ez  esec = 1, 0, 0, 0, 0, 0

(4.53)

Comparaison redondan e lassique / redondan e dire tionnelle Dans un premier temps, les deux tâ hes sont a omplies en l'absen e omplète de bruit. On her he à omparer l'appli ation de la tâ he se ondaire en utilisant la redondan e lassique et en utilisant la redondan e dire tionnelle. L'expérien e est résumée sur les gures 4.7 à 4.10. En utilisant la redondan e lassique, le rang de l'opérateur de proje tion est

3

tout au long de

l'asservissement ( f. gure 4.7). Au ontraire, lorsque la redondan e dire tionnelle est utilisée, le rang du proje teur varie, passant de

5

en début d'asservissement à

3

lorsque l'erreur de la tâ he prin ipale

est nulle ( f. gure 4.8). On vérie bien que le rang du proje teur al ulé en utilisant la redondan e dire tionnelle est toujours supérieur au rang du proje teur al ulé de manière lassique.


74

Redondan e dire tionnelle

1 0.8 0.6 0.4 0.2 0 0

Fig. 4.6 

0.5

1 y

2 1.5

1 1.5

0 0.5

x

2

Fon tion de oĂťt d'ĂŠvitement d'o ultation visuelle, al ulĂŠe dans l'espa e image

Lorsque la redondan e lassique est utilisÊe, la dÊ roissan e de l'erreur de la tâ he prin ipale est une exponentielle parfaite. Au ontraire, lorsque la redondan e dire tionnelle est utilisÊe, l'erreur dÊ roÎt plus rapidement qu'une exponentielle. Ce i est dÝ à la omposante de la tâ he se ondaire qui est prise en ompte par la redondan e dire tionnelle. La gure 4.9 ompare l'eet des proje tions ( lassique et dire tionnelle) sur la ommande se ondaire. Deux omposantes de la tâ he se ondaire ne sont pas annulÊes par la redondan e dire tionnelle, alors qu'elles Êtaient remises à zÊro par la redondan e lassique. La ommande al ulÊe à l'aide de la redondan e dire tionnelle est prÊsentÊe sur la gure 4.10. An de ne pas sur harger le graphique, nous ne prÊsentons que la norme des vitesses en translation et en rotation, al ulÊe dans le repère terminal du robot. La vitesse hange brutalement lorsque la omposante 1 de la tâ he prin ipale s'annule, 'est-à-dire lorsque le proje teur perd un rang.


4.4

Validation expérimentale

75

6

e

1

0.04

e

2

5

e

2

0.03

rank 4

0.02

0.01 2 0

Projector rank

Error

3

−0.01

−0.02

−0.03 0

Fig. 4.7 

50

100

150

250 300 Iterations

350

400

450

500

Expérien e 1 : Erreur de la tâ he prin ipale et rang du proje teur, en utilisant la redondan e lassique

Le rang du proje teur est onstant égal à note

200

e = (e1 , e2 , e3 ) = (eg1 , eg2 , ez )

3.

L'erreur de la tâ he prin ipale est une exponentielle dé roissante. On

selon les notations (4.53).


76

Redondan e dire tionnelle

6

e1

0.04

e2

5

e2

0.03

rank

4

0.02 3 2 0

Projector rank

Error

0.01

−0.01 −0.02 −0.03 −0.04

0

50

100

150

200

250 300 Iterations

350

400

450

500

Fig. 4.8  Expérien e 1 : Erreur de la tâ he prin ipale et rang du proje teur, en utilisant la redondan e dire tionnelle

Le rang du proje teur n'est pas onstant, mais toujours supérieur ou égal à

3.


4.4

Validation expérimentale

77

−3

1.5

x 10

(Pz)

Projected gradient

1

1

(Pz)2 (Pz)

0.5

3

(Pz)4 0

(Pz)

5

(Pz)6

−0.5 −1

0

50

100

150

200

250 300 Iterations

350

400

450

500

(a) Redondan e lassique −3

1.5

x 10

(Pz)

1

Projected gradient

1

(Pz)2 (Pz)

0.5

3

(Pz)4 (Pz)

0

5

(Pz)

6

−0.5 −1

0

50

100

150

200

250 300 Iterations

350

400

450

500

(b) Redondan e dire tionnelle Fig. 4.9 

Expérien e 1 : Comparaison des gradients projetés en utilisant la redondan e lassique et en utilisant

la redondan e dire tionnelle Tant que la première omposante de l'erreur prin ipale n'est pas nulle ( 'est-à-dire jusqu'à l'itération 80), deux omposantes supplémentaires sont prises en ompte par la redondan e dire tionnelle, alors qu'elles sont annulées par la redondan e lassique.


78

Redondan e dire tionnelle −4

8

x 10

Velocity norm

6

4

Vrot V

trans

2

0

Fig. 4.10 

0

50

100

150

200

250 300 Iterations

350

400

450

500

Expérien e 1 : Loi de ommande al ulée en utilisant la redondan e dire tionnelle

La vitesse hange brutalement à l'itération 80, 'est-à-dire au moment où le rang de l'opérateur de proje tion hange.

En présen e de bruits de mesure Pour tester la robustesse de la loi de ommande en présen e de bruit, un bruit blan gaussien arti iel est ajouté aux mesures. De e fait, l'erreur n'atteindra jamais

0. Le al ul du proje teur né essite

de tester si ha une des omposantes de l'erreur est nulle. On onsidère don qu'une omposante de l'erreur est nulle lorsque sa valeur absolue est inférieure à la varian e du bruit de mesure. L'erreur prin ipale ainsi que le rang du proje teur sont tra és sur la gure 4.11. Le bruit blan ajouté aux mesures est très ara téristique. Ce bruit se réper ute logiquement sur le al ul du proje teur. Mais omme le rang du proje teur est une valeur dis rète, e bruit est amplié. De nombreux pi s apparaissent : à haque fois que l'erreur passe le seuil xé pour la omparaison à zéro, on onsidère qu'un degré de liberté est libéré et peut être utilisé par la tâ he se ondaire. Ces pi s dans le rang du proje teur se transmettent don à la ommande, représentée sur la gure 4.12. La ommande est bruitée, et de nombreux pi s de grandes amplitudes apparaissent. Ces pi s ne sont évidemment pas souhaitables, et interdisent même l'utilisation d'une telle ommande sur le robot réel.


4.4

Validation expérimentale

79

6

e1

0.04

e2

5

e3

0.03

rank

4

0.02 3 2 0

Projector rank

Error

0.01

−0.01 −0.02 −0.03 −0.04

Fig. 4.11 

0

50

100

150

200

250 300 Iterations

350

400

450

500

Expérien e 1 : Erreur de la tâ he prin ipale et rang du proje teur, en utilisant la redondan e dire -

tionnelle en présen e de bruit blan , sans l'utilisation d'un hystérésis Le rang du proje teur augmente ou diminue à haque fois que l'erreur passe le seuil de omparaison, e qui amplie le bruit de mesure.

−4

8

x 10

Velocity norm

6

4 V

rot

V

2

0

trans

0

50

100

150

200

250 300 Iterations

350

400

450

500

Fig. 4.12  Expérien e 1 : loi de ommande al ulée en utilisant la redondan e dire tionnelle en présen e de bruit

blan , sans l'utilisation d'un hystérésis Un pi apparaît dans la ommande à haque fois que le rang du proje teur hange.


80

Redondan e dire tionnelle

Introdu tion d'un omparateur à hystÊrÊsis Ce problème peut être fa ilement rÊsolu en utilisant un prin ipe simple onnu sous le nom de

Trigger de S hmitt

en ĂŠle tronique [S hmitt 38â&#x201E;&#x201E;, ou en ore omparateur Ă hystĂŠrĂŠsis. Deux seuils

distin ts sont utilisĂŠs pour rĂŠaliser la omparaison Ă zĂŠro. On dĂŠ ide que l'erreur est nulle si sa valeur absolue est infĂŠrieure au plus petit seuil. Au ontraire, on dĂŠ ide que l'erreur est non nulle si elle est supĂŠrieure au plus grand seuil. Enn, si la valeur est omprise entre les deux seuils, alors le dernier rĂŠsultat de la omparaison est rĂŠutilisĂŠ. Comme prĂŠ ĂŠdemment, le plus petit seuil est xĂŠ ĂŠgal Ă  la varian e du bruit de mesure, e qui orrespond Ă  une dĂŠviation standard. Le seuil supĂŠrieur est xĂŠ ĂŠgal Ă  trois dĂŠviations standard, e qui orrespond Ă  une probabilitĂŠ de

0.03%

de fausse dĂŠte tion.

Les rÊsultats en utilisant le trigger de S hmitt sont prÊsentÊs sur les gures 4.13, 4.14 et 4.15. L'erreur prin ipale et le rang du proje teur sont tra Ês sur la gure 4.13. On vÊrie bien que l'utilisation du trigger permet de supprimer tout le bruit du rang de l'opÊrateur de proje tion. La loi de ommande nalement obtenue est prÊsentÊe sur la gure 4.14. La suppression du bruit sur l'opÊrateur de proje tion a aussi supprimÊ le bruit sur la loi de ommande. Enn, la ommande se ondaire projetÊe est prÊsentÊe sur la gure 4.15. Le rÊsultat est très similaire à e qui avait ÊtÊ obtenu en l'absen e de bruit ( f. gure 4.9(b)). Ce i montre don bien que l'essentiel du bruit a ÊtÊ orre tement ltrÊ, sans entraÎner de fausses dÊte tions. Dans les expÊrien es suivantes, rÊalisÊes sur un robot rÊel (don en prÊsen e de bruit de mesure), le omparateur à hystÊrÊsis a aussi ÊtÊ utilisÊ. Une Êtude statistique rigoureuse aurait due être rÊalisÊe pour dÊterminer les ara tÊristiques des diÊrents bruits de mesure. Nous avons simpliÊ le problème en supposant les bruits distribuÊs de manière gaussienne. La varian e est alors fa ile et rapide à mesurer par des tests statistiques lassiques dire tement à partir des mesures. Les deux même seuils

Ď&#x192;

et

3Ă&#x2014;Ď&#x192;

ont ĂŠtĂŠ utilisĂŠs pour le trigger de S hmitt.


4.4

Validation expérimentale

81

6

e1

0.04

e2

5

e2

0.03

rank

4

0.02 3 2 0

Projector rank

Error

0.01

−0.01 −0.02 −0.03 −0.04

Fig. 4.13 

0

50

100

150

200

250 300 Iterations

350

400

450

500

Expérien e 1 : Erreur de la tâ he prin ipale et rang du proje teur, en utilisant la redondan e dire -

tionnelle en présen e de bruit blan , en utilisant un hystérésis Le rang de l'opérateur de proje tion n'est plus bruité. Il hange uniquement lorsque la omposante s'annule (itération 70) puis une se onde fois lorsque la omposante

e3

e1

de l'erreur

s'annule (itération 140).

−4

8

x 10

Velocity norm

6

4

Vrot V

trans

2

0

0

50

100

150

200

250 300 Iterations

350

400

450

500

Fig. 4.14  Expérien e 1 : loi de ommande al ulée en utilisant la redondan e dire tionnelle en présen e de bruit

blan , en utilisant un hystérésis Les pi s dus au bruit amplié par le proje teur n'apparaissent plus dans la ommande. Le bruit dans la ommande n'est plus dû qu'au bruit de mesure, sans ampli ation.


82

Redondan e dire tionnelle â&#x2C6;&#x2019;3

1.5

x 10

(Pz)1

Projected gradient

1

(Pz)

2

(Pz)3

0.5

(Pz)

4

(Pz)5

0

(Pz)

6

â&#x2C6;&#x2019;0.5 â&#x2C6;&#x2019;1

0

50

100

150

200

250 300 Iterations

350

400

450

500

Fig. 4.15  ExpĂŠrien e 1 : ommande se ondaire projetĂŠe en utilisant la redondan e dire tionnelle en prĂŠsen e de

bruit blan , en utilisant un hystÊrÊsis. La ommande projetÊe est très similaire à elle obtenue en l'absen e de bruit ( f. gure 4.9(b)).

4.4.3 ExpÊrien e 2 : sur le robot Afma6 (six degrÊs de libertÊ ontrlÊs) Les deux expÊrien es que nous prÊsentons maintenant ont ÊtÊ rÊalisÊes sur le robot Afma6, dÊjà utilisÊ pour une partie des expÊrien es du hapitre prÊ Êdent. Pour ette première expÊrien e, le robot doit rejoindre une position unique dÊnie par rapport à la ible visuelle. L'expÊrien e est rÊsumÊe sur les gures 4.16, 4.17, 4.18 et 4.19. La tâ he prin ipale ontrle l'ensemble des degrÊs de libertÊ du robot. Dans le adre de la redondan e lassique, il ne reste don au un degrÊ de libertÊ disponible pour l'appli ation d'une ommande se ondaire : le proje teur est nul. Or, omme le montre la gure 4.16, l'espa e arti ulaire du robot n'est pas onvexe. En appliquant uniquement la tâ he prin ipale (sans tenir ompte de la ommande se ondaire d'Êvitement de butÊes), le robot atteint ses butÊes arti ulaires durant l'asservissement. Comme il n'est pas possible de tenir ompte de la ommande se ondaire en utilisant la redondan e lassique, l'asservissement Ê houe, omme montrÊ sur la gure 4.16. En utilisant la redondan e dire tionnelle, le rang du proje teur n'est pas nul tant que l'erreur de la tâ he prin ipale n'est pas nulle. La gure 4.17 prÊsente l'Êvolution du rang du proje teur lors de l'asservissement. La ommande se ondaire projetÊe est reprÊsentÊe sur la gure 4.18. Au moment oÚ le robot s'appro he de ses butÊes, le rang du proje teur n'est pas nul, e qui permet de prendre en ompte la ommande d'Êvitement de butÊes. La traje toire du robot s'in urve don sous l'eet de la ommande se ondaire pour Êviter le onta t ave les butÊes ( f. gure 4.16). Enn, l'Êvolution des informations visuelles est prÊsentÊe gure

4.19. La onvergen e est plus rapide qu'une exponentielle

tant que la ommande se ondaire n'est pas nulle. On vÊrie aussi que la ommande se ondaire ne ralentit jamais la onvergen e de la tâ he prin ipale.

4.4.4 ExpÊrien e 3 : sur le robot Afma6 (quatre degrÊs de libertÊ ontrlÊs) Dans l'expÊrien e prÊ Êdente, l'exÊ ution de la tâ he prin ipale nÊ essitait l'utilisation de tous les degrÊs de libertÊ du robot. Au une ontrainte se ondaire ne pouvait don être prise en ompte par le robot en utilisant la redondan e lassique. Il Êtait don fa ile de montrer que la redondan e dire tionnelle permet d'amÊliorer la prise en ompte des ontraintes se ondaires. Dans ette dernière expÊrien e, nous allons montrer que, même si des degrÊs de libertÊ sont disponibles pour l'exÊ ution d'une tâ he se ondaire en utilisant la redondan e lassique, la redondan e dire tionnelle permet d'amÊliorer la prise en ompte des ontraintes se ondaires en Êlargissant l'espa e libre disponible.


4.4

Validation expérimentale

83

1 0.9 0.8 0.7 s* 0.6 0.5 0.4 0.3 0.2

s

0.1 0 0

Fig. 4.16 

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

Expérien e 2 : traje toires arti ulaires

Traje toires arti ulaires du robot tra ées dans le plan

XY . Les butées arti ulaires sont tra ées en rouge. La traje toire

du robot lorsque la redondan e lassique est appliquée est tra ée en vert : le robot rentre en onta t ave les butées pendant l'asservissement, et é houe don à rejoindre son but. La traje toire obtenue en utilisant la redondan e dire tionnelle est en bleue : le robot évite les butées et rejoint la position désirée.

6 rank 5

Proj. rank

4 3 2 1 0

0

200

400

Fig. 4.17 

600

800

1000 1200 Iterations

1400

1600

Expérien e 2 : rang de l'opérateur de proje tion

1800

2000


84

Redondan e dire tionnelle

Trans. Speed

0.01 Tx Ty Tz

0 −0.01 −0.02 −0.03

0

200

400

600

800

1000 1200 Iterations

1400

1600

1800

2000

0.01 Rx Ry Rz

Rot. speed

0.005 0 −0.005 −0.01

0

200

400

600

800

1000 1200 Iterations

1400

1600

1800

2000

Fig. 4.18  Expérien e 2 : ommande se ondaire projetée en utilisant la redondan e dire tionnelle. La ommande

projetée a élère prin ipalement la vitesse de onvergen e le long de l'axe permet de respe ter la onsigne d'évitement.

X.

L'utilisation de e degré de liberté


4.4

Validation expérimentale

85

0.1 e e

0.08

G1 R2

eZ 0.06 0.04 0.02 0 −0.02 −0.04 −0.06 −0.08 −0.1

0

200

400

600

800

1000

1200

1400

1600

1800

2000

Fig. 4.19  Expérien e 2 : évolution des informations visuelles lors de l'asservissement al ulé d'après la redondan e

dire tionnelle. Les deux informations visuelles se ondaire. Au ontraire, la primitive

e R2

eg1

et

eZ

(tra ées en jaune et bleu) sont modiées par la ommande

(tra ée en vert) ne peut pas être utilisée par la ommande se ondaire,

ar elle n'évolue pas dans la bonne dire tion. Elle n'est don pas modiée, sa onvergen e est une exponentielle presque parfaite.


86

Redondan e dire tionnelle

La tâ he prin ipale ne ontrle ette fois que quatre degrÊs de libertÊ sur les six disponibles. L'asservissement onsiste à entrer la ible (tâ he

eg ),

eÎą ) eZ ). Les degrĂŠs de libertĂŠ

à l'orienter autour de l'axe optique (tâ he

et enn à positionner la amÊra à une distan e xÊe (1.5m) de la ible (tâ he

orrespondant à un mouvement de rotation autour de la ible restent libres pour prendre en ompte une tâ he se ondaire. Nous avons de plus pla Ê un objet en mouvement dans l'espa e de travail. Cet objet, en passant entre la amÊra et la ible, provoque une o ultation visuelle. La ontrainte se ondaire est don une tâ he d'Êvitement d'o ultation, omme prÊsentÊe au paragraphe 4.4.1. Pour assurer que l'expÊrien e soit rÊpÊtable, l'objet en mouvement est xÊ à un rail motorisÊ, suivant un mouvement pÊriodique dans l'espa e de travail, et dont la ommande est syn hronisÊe ave les dÊpla ements du robot. L'expÊrien e est rÊsumÊe sur les gures 4.20 à 4.23. Tout d'abord, on vÊrie bien que, en l'absen e de prise en ompte de la ommande d'Êvitement, la ible visuelle est rapidement masquÊe par l'objet o ultant, e qui fait Ê houer l'asservissement ( f. 4.20-(a)). Lorsque la ommande est al ulÊe en utilisant la redondan e lassique, l'Êvitement est pris en ompte. NÊanmoins, la proje tion supprime une partie de la ommande se ondaire, omme on peut le voir sur la gure 4.21. La ommande d'Êvitement projetÊ n'est plus assez forte pour Êviter l'objet en mouvement, et la ible visuelle nit par être masquÊe, e qui fait Ê houer l'asservissement. Au ontraire, lorsque la redondan e dire tionnelle est utilisÊe, l'intÊgralitÊ de la ommande se ondaire est prise en ompte ( f. gure 4.21), e qui permet d'Êviter l'objet en mouvement et de terminer l'asservissement. On voit sur la gure 4.22 la diÊren e entre la proje tion de la redondan e lassique et elle de la redondan e dire tionnelle. La proje tion de la redondan e lassique interdit prin ipalement tout mouvement le long de l'axe optique de la amÊra (axe

Z ), e degrĂŠ de libertĂŠ ĂŠtant dĂŠjĂ utilisĂŠ par la omposante ez

de la tâ he prin ipale. Au ontraire,

la proje tion de la redondan e dire tionnelle autorise l'utilisation de e degrÊ de libertÊ, ar la tâ he se ondaire ne ralentit pas la onvergen e de la omposante

ez .

La gure 4.23 reprĂŠsente l'ĂŠvolution de

l'erreur prin ipale durant l'asservissement. Tant que l'objet en mouvement risque de masquer la ible, l'erreur

ez

dĂŠ roĂŽt plus vite que la onsigne, ar le degrĂŠ de libertĂŠ orrespondant est utilisĂŠ par la

tâ he d'Êvitement. A partir de l'itÊration 200, la ommande d'Êvitement est presque nulle, et l'erreur

ez

reprend une dĂŠ roissan e normale.

4.5 Lien ave la pile L'ensemble des travaux que nous avons prÊsentÊs dans e hapitre permet d'appliquer une tâ he prin ipale ainsi qu'une ommande se ondaire, exÊ utÊe sans perturber la onvergen e de la tâ he prin ipale. Or, es travaux ont ÊtÊ rÊalisÊs dans le but d'amÊliorer la prise en ompte de plusieurs tâ hes dans le adre de la pile de tâ hes prÊsentÊe au hapitre prÊ Êdent. Pour pouvoir appliquer la redondan e dire tionnelle à la pile de tâ hes, il est nÊ essaire de gÊnÊraliser e formalisme à plusieurs tâ hes.

4.5.1 Appli ation de la redondan e dire tionnelle Ă deux tâ hes Soit e1 et e2 deux tâ hes de rang plein. On souhaite al uler une ommande permettant d'appliquer e1 , et d'appliquer e2 sous ontrainte que e1 onverge au moins aussi vite que requis par la onsigne eË&#x2122; â&#x2C6;&#x2014;1 = â&#x2C6;&#x2019;Îť1 e1 . Dans le hapitre prĂŠ ĂŠdent, nous avons prĂŠsentĂŠ deux solutions permettant l'appli ation de la

redondan e lassique à deux tâ hes. La première solution garantissait le respe t de la ontrainte de prioritÊ, mais ne garantissait par ontre pas que la ommande permette d'a omplir la tâ he se ondaire

e2

de manière optimale. Cette solution se gÊnÊralise très fa ilement à la redondan e dire tionnelle.

On pose :

oĂš

Îť2

z2 = â&#x2C6;&#x2019;Îť2 J+ 2 e2

(4.54)

est le gain paramÊtrant la vitesse de onvergen e de la tâ he se ondaire. Dans e as, une

ommande garantissant la onvergen e de

e1

Ă une vitesse au moins aussi rapide qu'exponentielle et


4.5

Lien ave la pile

87

(a)

(b)

( ) Fig. 4.20 

Expérien e 3 : Images lés apturées à partir de la améra embarquée durant l'asservissement (a) en

utilisant une ommande simple, sans prise en ompte de l'évitement, (b) en prenant l'évitement en ompte par la redondan e lassique, ( ) en prenant l'évitement en ompte par la redondan e dire tionnelle. La ible visuelle est omposée de quatre points blan s sur re tangle noir. L'objet o ultant est le re tangle orange. Il bouge le long du rail gris, bien visible sur l'image.

||P z||/||z||

1

||P z||/||z|| z

0.8 0.6 0.4 0.2 0

Fig. 4.21 

0

100

200

300

400

500

600

Expérien e 3 : Normes du gradient d'évitement projeté sur l'espa e libre de la tâ he prin ipale, en

utilisant la redondan e lassique (tra ée en rouge sur la gure) ou en utilisant la redondan e dire tionnelle (tra ée en bleu).


88

Redondan e dire tionnelle

Trans. Speed

0.02 0.01 0 −0.01 −0.02 0

100

200

300 Iterations

400

(a)

500 Tx Ty Tz

Trans. Speed

0.02 0.01 0 −0.01 −0.02 0

100

200

300 Iterations

400

(b)

500

Fig. 4.22  Expérien e 3 : Commande d'évitement projetée sur l'espa e libre (a) al ulée en utilisant la redondan e

lassique, (b) al ulée en utilisant la redondan e dire tionnelle. La ommande est exprimée en vitesse artésienne du repère terminal du robot. Pour simplier la gure, seules les vitesses de translation ont été tra ées.

eZ eG

0.15 0.1

eG eα

0.05

1 2

Erreur

0 −0.05 −0.1 −0.15 −0.2 0

100 (1)

300 (2)

400

500

600

Iterations

Fig. 4.23  Expérien e 3 : Évolution de l'erreur de la tâ he prin ipale lors de l'asservissement utilisant la redondan e

dire tionnelle. La ommande d'évitement ommen e à l'instant légendé (1). La omposante vite. La ommande d'évitement s'arrête à l'instant légendé (2). La primitive normale.

eZ

eZ

onverge alors plus

reprend alors une onvergen e


4.6

Con lusion du hapitre

l'appli ation de

e2

89

dans l'espa e libre de

e1

s'é rit :

+ q˙ = −λ1 J+ 1 e1 − λ2 Pz2 J2 e2

(4.55)

La se onde loi de ommande (3.16) que nous avons présentée au hapitre pré édent garantissait en plus que la tâ he se ondaire serait appliquée de manière optimale. La généralisation de ette ommande à la redondan e dire tionnelle s'avère être un problème omplexe, requérant l'utilisation de te hniques d'optimisation ave ontraintes telles que les inégalités matri ielles (Linear Matri ial Inequality) ou en ore l'algorithme du simplexe. Cette généralisation sort du adre de ette thèse et mériterait sans doute l'attention de travaux ultérieurs.

4.5.2 Appli ation de la redondan e dire tionnelle à plusieurs tâ hes Soit

e1

ompte es

...

n

en , n

tâ hes de rang plein. On souhaite maintenant généraliser (4.55) pour prendre en

tâ hes. On note

e1..i

la tâ he omposée des

i

premières tâ hes ombinées :

e1..i = ( e1 , ..., ei ) Supposons que la tâ he omplète

e1..n

(4.56)

est de rang plein. Dans e as, toutes les tâ hes

de rang plein. On onstruit alors simplement par ré urren e, en projetant tâ he

e1..2 ,

e3

e1..i

sont aussi

sur l'espa e libre de la

et . On pose :

La ommande exé utant les

zi = −λi J+ i ei i

(4.57)

premières tâ hes est simplement (4.38), ave

ommande permettant de prendre en ompte les

n

e = e1..i

et

z = zi .

La

tâ hes en respe tant la ontrainte de priorité dans

le adre de la redondan e dire tionnelle s'é rit nalement :

q˙ = −λ1 J+ 1 e1 − où

Pzei1..i

n X

e

λi Pzi1..i−1 J+ i ei

(4.58)

i=2

est la notation matri ielle du proje teur dire tionnel sur la tâ he

e1..i , al ulé d'après (4.37).

4.6 Con lusion du hapitre Dans e hapitre, nous avons proposé une méthode originale pour prendre en ompte une ontrainte se ondaire lors de l'appli ation d'une tâ he prin ipale prioritaire. Cette méthode est basée sur une généralisation du formalisme de la redondan e, et permet d'augmenter le nombre de degrés de liberté disponibles pour la tâ he se ondaire. Nous avons montré expérimentalement que et élargissement de l'espa e libre améliore la prise en ompte de la ontrainte se ondaire et, dans ertains as ritiques, permet de réaliser la tâ he lorsque la redondan e lassique é houe, par exemple à éviter l'obsta le. De plus, la redondan e dire tionnelle s'ins rit aussi dans le adre de la pile de tâ he proposée au hapitre pré édent. Elle permet ainsi de dégager des degrés de liberté dire tement lors du al ul de la ommande. Ces degrés de liberté peuvent ensuite être utilisés pour améliorer les performan es de l'asservissement réalisant la tâ he globale. Néanmoins, au une solution permettant de prendre en ompte les tâ hes se ondaires de manière optimale ne dé oule fa ilement de la redondan e dire tionnelle. En parti ulier, la solution présentée dans [Si iliano 91℄ ne se généralise pas de la redondan e lassique à la redondan e dire tionnelle. Cette di ulté réduit l'intérêt immédiat de la redondan e dire tionnelle, et explique que nous n'ayons pas hoisi d'appliquer ette solution pour les expérien es de la partie II. La redondan e dire tionnelle s'est par ontre révélée né essaire lorsqu'on introduit des tâ hes basées sur l'asservissement qualitatif, omme nous le verrons dans le hapitre suivant.


90

Redondan e dire tionnelle


Chapitre 5

Asservissement qualitatif

D

ans les hapitres prÊ Êdents, et dans la littÊrature d'une manière plus gÊnÊrale, les tâ hes robotiques rÊfÊren Êes apteur sont dÊnies par un ensemble d'informations al ulÊes d'après les

retours apteurs, que l'on souhaite rĂŠguler vers une valeur de rĂŠfĂŠren e. Dans e hapitre, nous nous intĂŠressons Ă une mĂŠthode d'asservissement originale, nommĂŠe as-

servissement qualitatif [Remazeilles 06bâ&#x201E;&#x201E;. L'asservissement qualitatif permet d'a omplir une tâ he

qualitativement,

'est-Ă -dire de faire tendre l'erreur vers un voisinage de zĂŠro sans her her Ă  obtenir

une valeur exa tement nulle. Cette solution permet d'augmenter les degrÊs de libertÊ du système en simpliant la tâ he à a omplir, tout en onservant un rÊsultat pro he de la valeur dÊsirÊe. Ce type d'asservissement est en parti ulier très utile pour exprimer les ontraintes liÊes à un système rÊel. En eet, la ontrainte est rarement satisfaite en un point unique, et on her he plutt à ramener le robot dans une zone large. Prenons l'exemple des butÊes arti ulaires qui doivent être ÊvitÊes durant l'asservissement : le robot ne doit pas rejoindre le milieu exa t de son domaine arti ulaire, mais plutt s'appro her de e milieu pour Êviter les butÊes. De la même manière, en maintenant qualitativement le entrage des primitives dans l'image, on assure leur visibilitÊ sans ontraindre le système en un point xe. Dans un premier temps, nous allons prÊsenter ette nouvelle loi de ommande, puis l'intÊgrer dans la pile de tâ hes à l'aide de la redondan e dire tionnelle. Ce i permettra d'introduire les ontraintes dans la pile et non plus seulement au sommet, et aussi de dÊgager des degrÊs de libertÊ en exÊ utant de manière qualitative ertaines sous-tâ hes. Toutefois, nous verrons lors des expÊrien es que ette mÊthode de ommande entraÎne des dis ontinuitÊs qui limitent son utilisation. Ces dis ontinuitÊs seront le sujet prin ipal de l'Êtude menÊe au hapitre suivant.

5.1 Asservissement qualitatif Il existe peu de travaux permettant d'asservir un système vers une rĂŠgion plutt que vers un point unique. C'est pourtant typiquement le rĂŠsultat obtenu ave les fon tions de potentiels [Khatib 86â&#x201E;&#x201E; : on dĂŠnit une zone de l'espa e oĂš le robot est en sĂŠ uritĂŠ ar susamment loin des obsta les. Le gradient de la fon tion de potentiels est alors utilisĂŠ omme une ommande qui pousse le robot vers l'espa e libre, oĂš il peut alors rĂŠaliser sa tâ he prin ipale. Dans [Cheah 05â&#x201E;&#x201E;, les auteurs abordent dire tement le problème en proposant une loi de ommande vers une rĂŠgion de rĂŠfĂŠren e. Cependant, ette rĂŠgion est dĂŠnie par un ensemble d'inĂŠgalitĂŠs exprimĂŠes dans l'espa e artĂŠsien. Elle est don di ile Ă ĂŠtendre


92

Asservissement qualitatif

Ă des ommandes al ulĂŠes dire tement dans l'espa e apteur ( omme par exemple l'asservissement visuel 2D). L'asservissement qualitatif permet de lever ette limitation, en se basant sur une inĂŠgalitĂŠ similaire, mais dĂŠnie dans l'espa e apteur. Dans ette partie, nous allons dĂŠtailler ette solution et l'appliquer Ă  des expĂŠrien es de positionnement d'un bras manipulateur en assurant le respe t des ontraintes de visibilitĂŠ et de butĂŠes arti ulaires.

5.1.1 Loi de ommande Soit

e

k . On note J son 0.Nous allons proposer  ÂŻ , e . notĂŠ eÂŻ m M

un ve teur d'erreur al ulĂŠ Ă partir des donnĂŠes apteurs, de dimension

ja obien. Les lois de ommande lassiques permettent de rĂŠguler ette erreur Ă i i une solution pour faire onverger ette erreur vers un intervalle donnĂŠ,

Convergen e vers un demi-espa e (un seul seuil)

Dans un premier temps, la zone de onvergen e est dĂŠnie omme ĂŠtant un demi-espa e. Soit borne supĂŠrieure de e demi-espa e. Nous voulons don que l'erreur

â&#x2C6;&#x20AC;i â&#x2C6;&#x2C6; [1, k], La tâ he qualitative

eq

asso iĂŠe Ă

e

est la matri e d'a tivation de

H

La

eq .

: Rn a

eÂŻ

la

respe te la ondition suivante :

ei â&#x2030;¤ eÂŻi

(5.1)

est dĂŠnie par :

eq = Heâ&#x2C6;&#x2019;ÂŻe e â&#x2C6;&#x2019; eÂŻ H

e

Elle est dĂŠnie par :



(5.2)

â&#x2020;&#x2019; RnĂ&#x2014;n â&#x2020;&#x2019; Ha = diag (hβ (a1 ) , . . . , hβ (an ))

(5.3)

fon tion d'a tivation hβ (a) permet de garantir une transition ontinue entre 0 et 1 (voir gure 5.1). 0 en 0 et 1 en β peut être utilisÊe. Dans la suite, nous avons

N'importe quelle fon tion ontinue, valant hoisi la fon tion suivante :

   0 1 hβ (x) =    1 1 + tanh 2

oĂš

β

si

1 1â&#x2C6;&#x2019;x/β

â&#x2C6;&#x2019;

β x



si sinon

xâ&#x2030;¤0 xâ&#x2030;ĽÎ˛

(5.4)

est un paramètre permettant de ongurer la vitesse d'a tivation. Cette fon tion a ĂŠtĂŠ hoisie C â&#x2C6;&#x17E; (mĂŞme aux points

pour plusieurs propriĂŠtĂŠs intĂŠressantes. Tout d'abord, elle est ontinue de lasse de re ollement

0 et β ). Cela permet don d'assurer que la fon tion eq a la même lasse de ontinuitÊ que e . En parti ulier, puisque e est supposÊe dÊrivable, alors eq est dÊrivable

la fon tion d'erreur asso iĂŠe

et on peut don dĂŠnir son ja obien. Ensuite, ette fon tion est onstante hors de la zone de transition

]0, β[.

Cela permet de partitionner l'espa e en trois zones : sur

] â&#x2C6;&#x2019; â&#x2C6;&#x17E;, 0],

la primitive asso iĂŠe est

ina tive, et ne doit pas être prise en ompte lors du al ul de la ommande. Sur est a tive, et doit être prise en ompte normalement. Enn, la dernière zone

[β, +â&#x2C6;&#x17E;[, la primitive ]0, β[ est l'intervalle

de transition dans lequel la primitive hange d'Êtat. Ce dÊ oupage ne peut pas être obtenu ave les fon tions lassiquement utilisÊes pour modÊliser des transitions omme la fon tion ar -tangente ou en ore la sigmoïde. En eet, es fon tions tendent vers 0 et 1 en l'inni, sans jamais atteindre es valeurs. Il est don impossible de dÊnir un intervalle fermÊ orrespond à un intervalle de transition. Il est souvent nÊ essaire en pratique de for er les valeur à 0 et 1 aux frontières d'une zone de transition arbitraire, e qui amène des points de dis ontinuitÊ. Enn, la fon tion

h possède une troisième propriÊtÊ β . On peut don

intĂŠressante : la taille de l'intervalle de transition est dire tement paramĂŠtrĂŠe par fa ilement hoisir entre une pĂŠriode de transition ourte ou une transition lisse.


5.1

Asservissement qualitatif

93

1

0.8

0.6

0.4

0.2 β=1eâ&#x2C6;&#x2019;3 β=0.1 β=0.5 β=1

0 0

Fig. 5.1 

0.1

0.2

0.3

0.4

0.5

0.6

0.7

Fon tion de transition (5.4), tra Êe pour plusieurs valeurs diÊrentes du paramètre

β.


94

Asservissement qualitatif

On her he maintenant à al uler le ja obien de la nouvelle tâ he

eq

s'ĂŠ rit :

Ë&#x2122; e â&#x2C6;&#x2019; eÂŻ eË&#x2122; q = HeË&#x2122; + H en supposant que

eÂŻ

eq .

D'après (5.2), la dÊrivÊe de



(5.5)

est onstant tout au long de l'asservissement. Pour simplier les al uls, on nĂŠglige

H et eq :

alors l'intervalle de transition. Cela revient Ă nĂŠgliger les variations de

Ë&#x2122; â&#x2030;&#x2C6; 0. H

On obtient alors la forme suivante de la matri e ja obienne de

Ă faire la simpli ation

beq = HJ J

(5.6)

En imposant une dĂŠ roissan e exponentielle de l'erreur vers l'espa e de onvergen e (e Ë&#x2122;q obtient alors la ommande suivante :

 +  d + qË&#x2122; = â&#x2C6;&#x2019;ÎťJ H e â&#x2C6;&#x2019; eÂŻ eq eq = â&#x2C6;&#x2019;Îť HJ

Cette loi de ommande assure la onvergen e de l'erreur sous le seuil de satisfa tion

= â&#x2C6;&#x2019;Îťeq ),

on

(5.7)

eÂŻ . Lorsqu'une

omposante du ve teur d'erreur entre dans la zone de satisfa tion, sa valeur est annulĂŠe par la fon tion d'a tivation

H.

La fon tion d'a tivation annule alors ĂŠgalement la ligne orrespondante de la matri e

d'intera tion, e qui permet de ne plus prendre en ompte la omposante satisfaite dans la loi de ommande. Cette omposante peut don ĂŠvoluer librement dans l'espa e de satisfa tion. Elle est de nouveau automatiquement a tivĂŠe si elle passe au dessus du seuil

eÂŻ.

On montre par le thÊorème suivant que ette loi de ommande est stable.

ThÊorème 5.1.1 (StabilitÊ de la loi de ommande qualitive)

Soit e un ve teur d'erreur, ontinu et dĂŠrivable. On note J sa ja obienne. Soit eÂŻ un seuil de satisfa tion quel onque. On impose que eÂŻ soit onstant tout au long de l'asservissement. Alors la loi de ommande suivante est stable au sens de Lyapunov :  +  qË&#x2122; = â&#x2C6;&#x2019;Îť HJ H e â&#x2C6;&#x2019; eÂŻ (5.8) Preuve: D'après (5.5), on sait que

obtient l'ĂŠvolution de l'erreur

On exprime la dĂŠrivĂŠe

Ë&#x2122; H

eq

Ë&#x2122; e â&#x2C6;&#x2019; eÂŻ eË&#x2122; q = HJ qË&#x2122; + H



. En introduisant (5.8) dans (5.5), on

sous l'eet de la ommande qualitative :

 +   Ë&#x2122; e â&#x2C6;&#x2019; eÂŻ eË&#x2122; q = â&#x2C6;&#x2019;ÎťHJ HJ H e â&#x2C6;&#x2019; eÂŻ + H

en fon tion de

eq

(5.9)

:

Ë&#x2122; = Hâ&#x20AC;˛ Diag(e) H Ë&#x2122; eq

(5.10)

Hâ&#x20AC;˛ est la matri e diagonale dont les omposantes sont les dĂŠrivĂŠes de hβ : Hâ&#x20AC;˛ = Diag hâ&#x20AC;˛Î˛ (e1 ), . . . ,  â&#x20AC;˛ hβ (en ) . On montre fa ilement que eË&#x2122; et eq sont inter hangeables dans (5.10). En rĂŠinje tant ette dernière ĂŠquation dans (5.9), et en fa torisant le premier terme par H, on obtient nalement : oĂš



(5.11)

â&#x20AC;˛ . Or la dĂŠrivĂŠe H est positive. De plus, Diag(eq ) est positive ou + est annulĂŠe par la multipli ation par H . On montre don fa ilement que K est positive. On obtient

ave

K = HH+ + Hâ&#x20AC;˛ Diag(eq )H+

 + eË&#x2122; q = â&#x2C6;&#x2019;ÎťKHJ HJ eq

nalement :

 + d + Jeq J â&#x2030;Ľ0 eq = KHJ HJ

Ce dernier rĂŠsultat prouve la stabilitĂŠ de la loi de ommande.

(5.12)


5.1

Asservissement qualitatif

95

Convergen e vers un intervalle (deux seuils) Notre but ĂŠtait d'amener l'erreur seuils

eÂŻm

et

eÂŻM

eÂŻM ).

dantes de

e

Ă onverger dans un intervalle de satisfa tion dĂŠni par deux

(on suppose que les omposantes de

eÂŻm

sont infĂŠrieures aux omposantes orrespon-

On veut satisfaire le test suivant :

â&#x2C6;&#x20AC;i â&#x2C6;&#x2C6; [1, k],

ÂŻi em ÂŻ i â&#x2030;¤ ei â&#x2030;¤ eM

(5.13)

La loi de ommande prĂŠ ĂŠdente se gĂŠnĂŠralise tout d'abord dire tement Ă un seuil supĂŠrieur. Pour satisfaire la ondition

ei â&#x2030;Ľ eÂŻi ,

il sut de her her Ă satisfaire

La ondition (5.13) se rĂŠĂŠ rit alors :

â&#x2C6;&#x20AC;i â&#x2C6;&#x2C6; [1, k],

ei â&#x2030;¤ eM ÂŻi

et

â&#x2C6;&#x2019;eÂŻi â&#x2030;¤ â&#x2C6;&#x2019;ei .

â&#x2C6;&#x2019; ei â&#x2030;¤ â&#x2C6;&#x2019;em ÂŻi

(5.14)

Cela revient don Ă appliquer la mĂŠthode prĂŠ ĂŠdente pour faire onverger l'erreur seuil

eÂŻ =



eÂŻM â&#x2C6;&#x2019;eÂŻm



H

 qË&#x2122; = â&#x2C6;&#x2019;Îť H est une matri e diagonale

2k Ă&#x2014; 2k



Hm

et

HM

e dans l'intervalle de    + J e â&#x2C6;&#x2019; eÂŻM H â&#x2C6;&#x2019;J eÂŻm â&#x2C6;&#x2019; e

ou



Hm 0

sont les deux parties de la matri e

primitives orrespondant Ă

Hm i = 0

sous le

em

et Ă

eM

onan e s'ĂŠ rit don : (5.15)

s'ĂŠ rivant :

H= oĂš

e â&#x2C6;&#x2019;e



.

La loi de ommande faisant onverger l'erreur

oĂš



H

0 HM



(5.16)

orrespondant respe tivement Ă

eÂŻm

et

eÂŻM . Les i, on a

ne sont jamais a tives en mĂŞme temps : pour tout

HMi = 0.

On vĂŠrie fa ilement qu'au plus

k lignes de la matri e Ă inverser sont non nulles, et que la dimension

ee tive de la matri e n'est pas plus grande que elle de la matri e ja obienne de la tâ he de rÊfÊren e

e.

On peut rĂŠĂŠ rire (5.15) sous une forme plus ompa te, en n'ĂŠ rivant pas les lignes nulles :

  +  qË&#x2122; = â&#x2C6;&#x2019;Îť Hm + HM J Hm (e â&#x2C6;&#x2019; eÂŻm ) + HM (e â&#x2C6;&#x2019; eÂŻm )

(5.17)

La loi de ommande nalement obtenue est gĂŠnĂŠrale et permet d'assurer une onvergen e qualitative exprimĂŠe dans n'importe quel espa e, notamment dire tement dans l'espa e apteur. En parti ulier, ontrairement Ă [Cheah 05â&#x201E;&#x201E;, nous ne sommes pas limitĂŠs Ă  exprimer l'intervalle de satisfa tion dans l'espa e artĂŠsien. Dans la suite, nous allons mettre en áuvre ette solution pour exprimer des ontraintes Ă  respe ter lors de l'asservissement. Nous prendrons l'exemple du ontrle de la visibilitĂŠ et de l'ĂŠvitement des butĂŠes arti ulaires lors d'un asservissement visuel.

5.1.2 Appli ation au ontrle de la visibilitĂŠ Nous proposons i i de rĂŠaliser un asservissement visuel lassique onsistant Ă positionner la amĂŠra en s'asservissant dire tement sur un ensemble de points ara tĂŠristiques. La tâ he Ă  rĂŠaliser s'ĂŠ rit  sP â&#x2C6;&#x2019; sâ&#x2C6;&#x2014;P oĂš sP = x1 , y1 . . . xn , yn est le ve teur de oordonnĂŠes de l'ensemble de points et sâ&#x2C6;&#x2014;P est e mĂŞme ve teur al ulĂŠ Ă  la position dĂŠsirĂŠe. Le ja obien de la tâ he eP s'ĂŠ rit JP = LP MJq , oĂš Jq est le ja obien arti ulaire du robot,

M

est la matri e permettant de passer du torseur inĂŠmatique

Ă la paramĂŠtrisation du ve teur de position hoisie points dans l'image :

 LP = L1 , . . . , Ln oĂš  â&#x2C6;&#x2019;1/Zi 0 xi /Zi Li = 0 â&#x2C6;&#x2019;1/Zi yi /Zi

r (v = MË&#x2122;r) xi yi 1 + yi2

et

LP

v

est la matri e d'intera tion des

â&#x2C6;&#x2019;(1 + x2i ) yi â&#x2C6;&#x2019;xi yi â&#x2C6;&#x2019;xi



(5.18)


96

Asservissement qualitatif

(1 â&#x2C6;&#x2019; Îą)xÂŻâ&#x2C6;&#x2019;

(1 â&#x2C6;&#x2019; Îą)xÂŻ+

p+ = (xÂŻ+, yÂŻ+ )

1111 0000 000000000000000000000 111111111111111111111 000 111 0000 1111 000000000000000000000 111111111111111111111 000 111 (1 â&#x2C6;&#x2019; Îą)yÂŻ 0000 1111 000000000000000000000 111111111111111111111 000 111 0000 1111 000 111 0000 1111 000 111 0000 1111 000 111 0000 1111 000 111 0000 1111 000 111 0000 1111 000 111 0000 1111 000 111 0000 1111 000 111 0000 1111 000 111 0000 1111 000 111 0000 1111 000 111 0000 1111 000 111 0000 1111 000 111 0000 1111 000 111 (1 â&#x2C6;&#x2019; Îą)yÂŻ 000000000000000000000 111111111111111111111 0000 1111 000 111 000000000000000000000 111111111111111111111 0000 1111 000 111 000000000000000000000 111111111111111111111 0000 1111 000 Limite de lâ&#x20AC;&#x2122;image 000000000000000000000111 0000111111111111111111111 1111 000 111 = (xÂŻ , yÂŻ ) Limite dâ&#x20AC;&#x2122;activation 0000 1111 Zone dâ&#x20AC;&#x2122;activation 0000 1111 0000 de la contrainte 1111 +

â&#x2C6;&#x2019;

pâ&#x2C6;&#x2019;

â&#x2C6;&#x2019;

â&#x2C6;&#x2019;

Fig. 5.2 

ExpĂŠrien e 1 : Zone d'a tivation de la ontrainte de visibilitĂŠ

+ qË&#x2122; = â&#x2C6;&#x2019;ÎťJc P eP , rien n'assure que les points resteront b = L â&#x2C6;&#x2014; est utilisĂŠe, il dans l'image. En parti ulier, lorsque la valeur dĂŠsirĂŠe de la matri e d'intera tion L Lorsqu'on utilise la loi de ommande lassique

est bien onnu que ette ommande a tendan e Ă faire avan er la amĂŠra vers la ible pendant les forts

mouvements de rotation autour de l'axe optique, à ause des problème de ouplage entre les primitives

points [Chaumette 98â&#x201E;&#x201E;. Et l'eet de travelling avant fait ĂŠvidement sortir les points de l'image. Pour permettre l'appli ation de ette ommande Ă de grands dĂŠpla ements, il est nĂŠ essaire de prendre en ompte la ontrainte de visibilitĂŠ lors de l'asservissement. La tâ he

e

ontraignant tous les degrĂŠs

de libertÊ du robot, il n'est pas possible d'utiliser le formalisme de la redondan e. En parti ulier, la mÊthode du gradient projetÊ que nous avons utilisÊe dans les hapitres prÊ Êdents n'est pas appli able. La ontrainte de visibilitÊ doit être Ê rite omme une tâ he

evis

dont l'erreur est minimisĂŠe par la loi

de ommande. La ontrainte de visibilitÊ doit être prise en ompte lorsqu'un point s'appro he du bord de l'image. Son eet est alors de pousser le point vers le entre de l'image pour l'empê her d'en sortir. D'un autre otÊ, la ontrainte de visibilitÊ ne doit pas modier la loi de ommande quand au un point n'a tendan e à sortir du hamp de vue. L'asservissement qualitatif permet dire tement d'Ê rire une tâ he respe tant es spÊ i ations. Il sut d'appliquer une tâ he de entrage de tous les points de la ible de manière qualitative. On note Soit

Îą

xÂŻâ&#x2C6;&#x2019; , yÂŻâ&#x2C6;&#x2019;



et

xÂŻ+ , yÂŻ+



les oordonnĂŠes infĂŠrieures et supĂŠrieures de l'image ( f. gure 5.2).

un paramètre permettant de dÊnir la taille de la zone oÚ la ontrainte est a tive : la visibilitÊ

est prise en ompte dès qu'au moins un point

xi , yi



[(1 â&#x2C6;&#x2019; Îą)xÂŻâ&#x2C6;&#x2019; , (1 â&#x2C6;&#x2019; pÂŻm = (1 â&#x2C6;&#x2019; Îą)xÂŻâ&#x2C6;&#x2019; , (1 â&#x2C6;&#x2019; Îą)yÂŻâ&#x2C6;&#x2019;

sort de la zone dĂŠnie par

Îą)xÂŻ+ ] Ă&#x2014; [(1 â&#x2C6;&#x2019; Îą)yÂŻâ&#x2C6;&#x2019; , (1 â&#x2C6;&#x2019; Îą)yÂŻ+ ]. Typiquement, Îą est xĂŠ Ă 10%. On note et pÂŻ M = (1 â&#x2C6;&#x2019; Îą)xÂŻ+ , (1 â&#x2C6;&#x2019; Îą)yÂŻ+ les bornes infĂŠrieure et supĂŠrieure de la La tâ he de visibilitĂŠ evis s'ĂŠ rit omme une tâ he qualitative :   sP â&#x2C6;&#x2019; eÂŻM evis = H eÂŻm â&#x2C6;&#x2019; sP oĂš

e = sP

(5.19)

evis , et rĂŠalisant le entrage des points sur   eÂŻm = pÂŻm , . . . , pÂŻm et eÂŻM = pÂŻM , . . . , pÂŻM . Cette

est la tâ he non qualitative orrespondant Ă

le entre optique. Les seuils d'a tivation sont

zone d'a tivation.


5.1

Asservissement qualitatif

97

(a) Position initiale Fig. 5.3 

(b) Position désirée

Expérien e 1 : Cible utilisée lors de l'asservissement visuel

tâ he peut ensuite être intégrée dans les lois de ommande lassiques. Etant donné que la tâ he

ep

est de rang plein et ne permet pas l'ajout d'une tâ he se ondaire en utilisant la redondan e, nous avons hoisi d'intégrer l'erreur don

e = ep , evis



evis

dire tement dans la tâ he prin ipale. La tâ he à a omplir s'é rit

. La loi de ommande réalisera alors un ompromis entre le positionnement et la

ontrainte de visibilité. Comme la ontrainte de visibilité n'est pas prise en ompte lorsqu'au un point n'est dans la zone d'a tivation, on garantit que le ompromis ne perturbera pas le positionnement si au un point n'est trop pro he du bord de l'image. En parti ulier, à proximité de la position désirée, on peut supposer qu'au un point n'est pro he du bord, et que la ontrainte de visibilité ne perturbe pas la pré ision du positionnement nal. Une première série d'expérien es a permis de valider l'utilisation de l'asservissement qualitatif pour assurer la visibilité des primitives lors du positionnement de la améra. La ible est omposée de neuf points ara téristiques. Pour simplier le pro essus de vision, de manière à on entrer la validation sur la partie ontrle, les points ara téristiques sont des points blan s sur fond noir, fa iles à déte ter et à suivre par un algorithme de segmentation. La ible utilisée est présentée sur la gure 5.3. Lors de ette expérien e, nous validons en premier lieu l'utilisation de l'asservissement qualitatif pour exprimer la ontrainte de visibilité. Nous validons aussi la forme générale de l'asservissement qualitatif, et en parti ulier l'utilisation de la fon tion d'a tivation (5.4) pour assurer une transition ontinue lors de l'a tivation de la ontrainte. Pour une même position de départ et une même position désirée, l'asservissement est exé uté plusieurs fois, une première fois tout d'abord sans prendre en ompte la ontrainte de visibilité, puis en prenant en ompte la ontrainte de visibilité et en faisant varier les paramètres

α

( ongurant la taille de la zone d'a tivation) et

β

( ongurant la vitesse de

transition et don la ontinuité pratique de la fon tion d'a tivation). Lorsque des points sortent de l'image, leur position est al ulée à partir de la position des autres points de la ible et d'un modèle de l'objet. Toutefois la position des points hors de l'image n'est pas utilisée pour al uler la loi de ommande. Ce suivi nous sert uniquement à retrouver le point lorsqu'il entre à nouveau dans le hamp de vue, mais aussi à visualiser la position des points lors de l'analyse de l'expérien e. L'expérien e que nous présentons orrespond prin ipalement à une rotation selon l'axe optique de la améra. Elle est résumée sur les gures 5.4 à 5.7. Nous présentons trois exé utions ara téristiques : la première est réalisée sans prendre en ompte la ontrainte de visibilité. Comme le montre la gure 5.4, ertains points sortent alors de l'image lors du dépla ement de la améra. Malgré tout, susamment de points restent dans le hamp de vue de la améra et permettent nalement d'a omplir la tâ he. Lors des deux autres exé utions, la ontrainte de visibilité est prise en ompte. Lors de la première


98

Asservissement qualitatif

8

9

1

4 5 6 3

2

7

(a)

8

9

1

4

Y

9

8

1

4 5

5 6

6

2

3

7

7

(b) Fig. 5.4 

2

3

( )

ExpĂŠrien e 1 : Positionnement par asservissement visuel. Traje toire des points dans l'image (a) en ne

onsidÊrant pas la visibilitÊ lors de l'asservissement, (b) en prenant en ompte la tâ he de visibilitÊ transition abrupte, ( ) en prenant en ompte la tâ he de visibilitÊ

exÊ ution, on a xÊ un paramètre

β

abrupte de la fon tion d'a tivation ÊlevÊe (β

= 0.03m â&#x2030;&#x2C6; 30pix).

très faible (β

h.

evis ,

= 10â&#x2C6;&#x2019;5 m),

evis ,

ave une

ave une transition lisse.

e qui orrespond à une transition très

La se onde exĂŠ ution a ĂŠtĂŠ rĂŠalisĂŠe ave une valeur de

β

plus

La transition lors de l'a tivation de la ontrainte est don plus lisse.

Les deux paramÊtrisations permettent d'obtenir l'eet voulu : la ontrainte de visibilitÊ est respe tÊe, au un point ne sort de l'image, omme le montre la gure 5.4. La diÊren e entre les deux paramÊtrisations n'est pas très visible dans l'image. Les traje toires des points sont très similaires, qu'une transition abrupte ou lisse soit spÊ iÊe. La gure 5.5 prÊsente l'Êvolution des erreurs

eP

et

evis

lors du positionnement. Ce graphe permet de omparer plus prĂŠ-

isÊment les diÊren es dans l'exÊ ution de la tâ he. La tâ he de positionnement manière similaire quelle que soit la valeur de respe tÊe quand le paramètre

β

β.

eP

est exĂŠ utĂŠe de

Par ontre, la ontrainte de visibilitĂŠ est bien mieux

hoisi est plus faible. La norme de l'erreur

evis

est plus forte quand

un plus grand nombre de points entre plus profondĂŠment dans la zone d'a tivation situĂŠe en bord d'image. En hoisissant une transition abrupte, on obtient une loi de ommande plus rĂŠa tive, e qui permet de maintenir plus e a ement les points dans la zone entrale du hamp de vue.


5.1

Asservissement qualitatif

99

0.3 || e p || (souple) || e p || (abrupte) || e vis || (souple) || e vis || (abrupte)

0.25 0.2 0.15 0.1 0.05 0

Fig. 5.5 

0

500

1000

1500

2000

ExpÊrien e 1 : Positionnement sous la ontrainte de visibilitÊ. Norme des erreurs de la tâ he de

positionnement

eP

et de la ontrainte de visibilitĂŠ

evis

lors de l'asservissement en utilisant une transition abrupte

(en bleu fon ĂŠ) ou en utilisant une transition lisse (en jaune). L'erreur orrespondant Ă la ontrainte de visibilitĂŠ augmente moins dans le se ond as. En spĂŠ iant une transition abrupte, on obtient un asservissement plus rĂŠa tif, dans le sens oĂš on ontrle mieux la ontrainte de visibilitĂŠ.

Toutefois la diÊren e la plus remarquable apparaÎt au niveau du omportement du robot. Choisir une transition abrupte apporte ertes plus de rÊa tivitÊ, mais entraÎne de brusques à - oups du robot lors de l'exÊ ution de la ommande. La gure 5.6 prÊsente les traje toires de la amÊra, lors des trois asservissements. La traje toire obtenue en ne onsidÊrant pas la ontrainte de visibilitÊ est donnÊe omme rÊfÊren e. Lorsqu'une transition lisse est hoisie, la traje toire est lisse, même si la transition lorsque les premiers points entrent dans la zone d'a tivation est bien visible. Au ontraire, en utilisant une transition abrupte, la traje toire est très heurtÊe. Au moins trois hangements nets de traje toire sont visibles. On retrouve ette diÊren e nette sur les ourbes de vitesse du robot, donnÊe gure 5.7. L'utilisation de la transition abrupte entraÎne de très nettes dis ontinuitÊs, qui n'apparaissent pas lorsque la transition est plus lisse. Ces dis ontinuitÊs se traduisent par un omportement peu satisfaisant du robot. De plus, omme le robot est ommandÊ en vitesse, une dis ontinuitÊ de la ommande implique une a ÊlÊration très forte, voire innie, qui ne peut pas être appliquÊe par un système rÊel. La ommande abrupte n'est don pas parfaitement suivie par le robot, e qui peut onduire à des erreurs de traÎnage en plus des violents à- oups dÊjà onstatÊs. En rÊsumÊ, l'asservissement qualitatif permet d'exprimer et de respe ter la ontrainte de visibilitÊ. De plus, la fon tion de transition proposÊe permet bien d'assurer la ontinuitÊ pratique de la ommande. Cela se traduit par une lÊgère perte de rÊa tivitÊ. De plus le paramètre

β

permet de fa ilement

ongurer le ompromis entre rĂŠa tivitĂŠ et ontinuitĂŠ.

5.1.3 Appli ation Ă l'ĂŠvitement de butĂŠes arti ulaires L'asservissement qualitatif nous a permis d'ĂŠ rire et d'appliquer la ontrainte de visibilitĂŠ. De la mĂŞme manière, nous allons montrer que ela nous permet d'ĂŠ rire simplement la ontrainte d'ĂŠvitement de butĂŠes. Cette appli ation, en plus de valider expĂŠrimentalement une se onde fois l'asservissement qualitatif, nous permettra de prĂŠparer l'intĂŠgration de es rĂŠsultats dans la pile de tâ hes. n On note q â&#x2C6;&#x2C6; R le ve teur de position arti ulaire du robot, oĂš n est le nombre d'arti ulations ommandĂŠes. Comme dans le hapitre 3, on note q ÂŻimin et qÂŻimax les valeurs limites basse et haute du domaine arti ulaire.


100

Asservissement qualitatif

Sans contrainte Avec (transition souple) Avec (transition abrupte)

0.55

Z

0.5

0.45

0.4 0.03 0.02

0.02

0.01 Y

Fig. 5.6 

0

0.01 −0.01

X

0 −0.02

−0.03

−0.01

Expérien e 1 : Positionnement sous la ontrainte de visibilité. Traje toire de la améra lors de l'asser-

vissement : sans prendre en ompte la ontrainte de visibilité ( ourbe noire), en prenant en ompte la ontrainte et en appliquant une transition abrupte ( ourbe jaune) et enn en prenant en ompte la ontrainte et en appliquant une transition lisse ( ourbe bleue fon ée). La traje toire orrespondant à une transition abrupte est très heurtée et présente des hangements de dire tion brusques. Au ontraire, la traje toire orrespondant à une transition lisse est plus lisse.


Vit. translation

5.1

Asservissement qualitatif

101

0.03

Tx Ty 0.03 Tz

0.02

0.02

0.01

0.01

0

0 â&#x2C6;&#x2019;0.01

â&#x2C6;&#x2019;0.01 0

500

1000

0.04

Rx 0.06 Ry Rz 0.04

0.02

0.02

0.06

Vit. Rotation

0

Iterations

0

500

1000

Iterations

500

1000

Iterations

0

â&#x2C6;&#x2019;0.02 0

â&#x2C6;&#x2019;0.02 500

1000

Transition abrupte Fig. 5.7 

Iterations

0

Transition souple

ExpĂŠrien e 1 : Positionnement sous la ontrainte de visibilitĂŠ. Vitesse de l'ee teur du robot lors de

l'asservissement. L'utilisation d'une transition abrupte entraĂŽne des dis ontinuitĂŠs importantes, qui sont lissĂŠes par l'utilisation d'une transition lisse.


102

Asservissement qualitatif

L'appli ation de la tâ he

e=q

onduirait le robot au milieu de son domaine arti ulaire. Or nous

Îą un paramètre permettant de dĂŠnir Îą = 10%). La zone de satisfa tion dans s'ĂŠ rit don [(1 â&#x2C6;&#x2019; Îą)ÂŻ qmin , (1 â&#x2C6;&#x2019; Îą)ÂŻ qmax ].

ne voulons i i que le onduire Ă distan e de ses butĂŠes. On note la taille de la zone d'a tivation de la ontrainte (typiquement lequel la ontrainte d'ĂŠvitement de butĂŠes doit ĂŞtre ina tive

La tâ he qualitative permettant d'exprimer la ontrainte d'ĂŠvitement de butĂŠes s'obtient nalement qmin et eM = (1 â&#x2C6;&#x2019; Îą)ÂŻ qmax . La tâ he Ă partir de la tâ he de rĂŠfĂŠren e e = q et des seuils em = (1 â&#x2C6;&#x2019; Îą)ÂŻ d'ĂŠvitement de butĂŠes

ejl

s'ĂŠ rit nalement :

ejl = H



q â&#x2C6;&#x2019; eÂŻM eÂŻm â&#x2C6;&#x2019; q



(5.20)

Nous avons rÊalisÊ trois expÊrien es d'asservissement visuel en maintenant la ontrainte d'Êvitement de butÊes. La tâ he à a omplir ontraint quatre degrÊs de libertÊ du robot. Comme dans le hapitre 3, nous avons utilisÊ des tâ hes d'asservissement visuel basÊes sur les moments d'un ensemble de points ara tÊristiques. La tâ he s'Ê rit entre de gravitÊ de l'ensemble de points,

 e = eg , eR , oÚ eg est la tâ he de entrage, basÊe et eR ontrle les rotations autour de la ible. Le

sur le robot

ayant six degrÊs de libertÊ, ette tâ he laisse deux degrÊs de redondan e pour appliquer une tâ he se ondaire. La position nale n'est don pas unique. Nous avons Ê rit l'Êvitement de butÊes omme une tâ he. Il est don possible de la prendre en ompte de trois façons diÊrentes : soit omme une tâ he se ondaire, omme dans le as lassique ; soit omme partie intÊgrante de la tâ he prin ipale, omme dans les expÊrien es de onservation de la visibilitÊ ; ou soit omme une tâ he prin ipale, en utilisant uniquement les arti ulations qui ne sont pas en butÊes pour a omplir la tâ he de positionnement. Ces trois solutions ont ÊtÊ mises en áuvre en simulation. Les rÊsultats expÊrimentaux sont donnÊs sur les gures 5.8 et 5.9. La première gure prÊsente les traje toires du robot lors de l'expÊrien e. Le dÊpla ement prin ipal à ee tuer est une rotation autour de la ible, qui amène le robot à sortir de son espa e arti ulaire. Lorsqu'on applique la tâ he

ejl

omme une tâ he se ondaire, ou omme un

ompromis ave la tâ he prin ipale, la traje toire du robot est modiÊe et les butÊes sont ÊvitÊes. Par ontre, dans es deux as, la loi de ommande ne garantit pas le respe t des butÊes, puisque

ejl

n'est

pas prioritaire. Le robot est repoussÊ de ses butÊes, mais s'en appro he malgrÊ tout. Au ontraire, lorsque la tâ he d'Êvitement est prioritaire, le respe t de la ontrainte est assurÊ. Le robot ne dÊpasse pas la frontière de la zone d'a tivation. Dès qu'une primitive d'Êvitement est a tivÊ, le degrÊ de libertÊ orrespondant est ontraint, et retirÊ de l'espa e nul disponible pour la tâ he se ondaire. Le robot Êvolue alors à la limite du domaine d'a tivation de la tâ he d'Êvitement, tout en rÊalisant la tâ he de positionnement. La gure 5.9 reprÊsente l'Êvolution de la norme de l'erreur de la tâ he de positionnement. Lorsque la tâ he d'Êvitement de butÊes est une tâ he se ondaire, elle ne modie pas la dÊ roissan e de l'erreur de positionnement. Lorsqu'elle est prise en ompte omme un ompromis ave la tâ he de positionnement, la dÊ roissan e de l'erreur de positionnement est lÊgèrement modiÊe. L'erreur est modiÊe de manière plus importante lorsque la tâ he d'Êvitement est prioritaire. En on lusion, il est possible de prendre en ompte la ontrainte d'Êvitement de plusieurs manières. Lorsqu'elle est prise en tâ he se ondaire, elle ne modie pas l'exÊ ution de la tâ he de positionnement. Par ontre, rien ne garantit alors que la ontrainte sera respe tÊe. Au ontraire, si l'Êvitement est prioritaire, il garantit que la ontrainte sera respe tÊe, mais modie alors l'exÊ ution de la tâ he de positionnement. Enn, il est possible de prendre en ompte l'Êvitement omme un ompromis, e qui limite les deux in onvÊnients sans rÊellement apporter d'avantage : l'Êvitement est pris en ompte, mais sans garantie ; la tâ he de positionnement est modiÊe, mais moins que si la tâ he d'Êvitement est prioritaire.


5.1

Asservissement qualitatif

103

−0.6

Camera position Z (m)

−0.7 Position initiale

−0.8 −0.9 −1

Butee articulaire Limite d’activation Sans evitement Evit. en secondaire Evit. en prioritaire Evit. en compromis

−1.1 −1.2 −1.3 −0.6

Fig. 5.8 

−0.4

−0.2 0 0.2 Camera position X (m)

0.4

0.6

Expérien e 2 : Asservissement en prenant en ompte les butées arti ulaires : traje toire de la améra

embarquée.

−3

x 10

Norme de l’erreur

3

Sans evitement Evit. en secondaire Evit. en compromis Evit. en prioritaire

2

1

0

Fig. 5.9 

100

200

300

400

500 Iterations

600

700

800

900

Expérien e 2 : Asservissement en prenant en ompte les butées arti ulaires : évolution de la norme de

l'erreur de la tâ he de positionnement durant l'asservissement.


104

Asservissement qualitatif

5.2 IntÊgration dans la pile de tâ hes Dans l'expÊrien e prÊ Êdente, nous avons montrÊ qu'il est possible de prendre en ompte une tâ he qualitative omme une tâ he prioritaire en utilisant la redondan e. Il est don possible d'intÊgrer une tâ he qualitative dans la pile omme n'importe quelle autre tâ he. En parti ulier, ela permet d'intÊgrer une ontrainte à l'intÊrieur de la pile. On garantit alors qu'au une des tâ hes situÊes plus haut dans la pile ne pourra violer ette ontrainte. Dans ette se tion, nous prÊsentons plusieurs expÊrien es mettant en áuvre la pile de tâ hes ave des tâ hes qualitatives. Dans la première expÊrien e, la tâ he d'Êvitement de butÊes

ejl

dĂŠ rite dans la

se tion prÊ Êdente est prise en première tâ he de la pile, pour garantir le respe t de la ontrainte. Dans la se onde expÊrien e, la tâ he de positionnement est prise en ompte de manière qualitative de manière à diminuer sa omplexitÊ et ainsi à augmenter le nombre de degrÊs de libertÊ disponibles. Enn, nous on lurons ette partie en prÊsentant deux limitations pratiques de l'asservissement qualitatif, qui seront l'objet prin ipal du pro hain hapitre.

5.2.1 En haÎnement de tâ hes en Êvitant les butÊes Dans ette expÊrien e, la tâ he à rÊaliser est un positionnement de inq des six degrÊs de libertÊ de la amÊra en utilisant les moments de la ible. Elle est divisÊe en trois sous tâ hes

eZ

eg , eR

et

ontraignant respe tivement le entrage, les rotations autour de la ible, et le zoom. Le degrĂŠ de

libertÊ orrespondant aux rotations autour de l'axe optique n'est pas ontraint an d'amÊliorer le onditionnement global de la tâ he à a omplir. Nous verrons au hapitre suivant que les tâ hes à dimension variable permettent de rÊaliser la même expÊrien e en ontraignant les six degrÊs de libertÊ du robot. Les butÊes arti ulaires sont prises en ompte en utilisant la tâ he

ejl

introduite dans la se tion

prÊ Êdente. Pour garantir la ontrainte, ette tâ he est introduite dans la pile en tâ he prioritaire. Les quatre autres tâ hes sont ensuite prises en ompte omme tâ hes se ondaires de la pile. L'expÊrien e est rÊsumÊe sur les gures 5.10 et 5.11. Les traje toires du robot sont donnÊes sur la première gure. Comme dans l'expÊrien e prÊ Êdente, le dÊpla ement à ee tuer est prin ipalement une rotation autour de la ible, e qui amène le robot à sortir de son domaine arti ulaire. Lorsque la tâ he d'Êvitement est introduite en tâ he prioritaire de la pile, la ontrainte d'Êvitement est parfaitement respe tÊe, et le robot s'arrête sur la frontière de la zone d'a tivation. Il poursuit ensuite l'exÊ ution des tâ hes de la pile en se dÊplaçant sur la frontière d'a tivation. L'exÊ ution normale reprend dès que la tâ he de positionnement amène le robot à quitter la zone d'a tivation. Il rejoint alors sa position nale. Les Êvolutions des erreurs des tâ hes de la pile sont donnÊes sur la gure 5.11. Comme attendue, la prise en ompte de la tâ he d'Êvitement en tâ he prioritaire perturbe es tâ hes. La dÊ roissan e de la tâ he

eR

est lÊgèrement modiÊe. La tâ he

eg

ĂŠtait a omplie au dĂŠbut de l'asservissement. Si

les butÊes ne sont pas prises en ompte, elle reste parfaitement rÊgulÊe pendant tout le dÊpla ement. Lorsque les butÊes sont prises en ompte, elle n'est pas orre tement rÊgulÊe et une perturbation importante apparaÎt. La prise en ompte de l'Êvitement de butÊes en tâ he prioritaire est une fon tionnalitÊ intÊressante, ar elle permet de garantir le respe t de la ontrainte, en sele tionnant de manière appropriÊe et automatique les degrÊs de libertÊ qui ne doivent plus être utilisÊs pour respe ter la ontrainte. Cela entraÎne logiquement une perturbation des autres tâ hes de la pile, lorsque la tâ he omplète n'est pas rÊalisable. Lorsque la tâ he prin ipale n'est pas possible à a omplir, une solution est d'Êlargir la zone de onvergen e en rÊalisant le positionnement de manière qualitative. C'est e que nous proposons de faire dans l'expÊrien e suivante.


5.2

Intégration dans la pile de tâ hes

Camera position Z (m)

−0.8

105

Position initiale

Position finale

−0.9

−1

−1.1 Butee articulaire Limite d’activation Sans evitement Avec evitement

−1.2 −0.6

−0.4

−0.2

0 0.2 Camera position X (m)

0.4

0.6

0.8

1

Fig. 5.10  Expérien e 3 : Prise en ompte des butées omme première tâ he de la pile : traje toire de la améra

embarquée.

ez (avec evit.)

Erreur des taches

3

eR (avec evit.)

2.5

ez (sans evit.)

2

eR (sans evit.)

1.5 1 0.5 0 200

Fig. 5.11 

400

600 Iterations

800

1000

1200

Expérien e 3 : Prise en ompte des butées omme première tâ he de la pile : évolution des erreurs

pendant l'asservissement.


106

Asservissement qualitatif

5.2.2 En haînement de tâ hes qualitatives en évitant les butées Jusqu'à présent, nous avons utilisé l'asservissement qualitatif pour exprimer des ontraintes sous la forme de tâ hes à intégrer dans la pile. L'asservissement qualitatif peut aussi servir à élargir le domaine de satisfa tion d'une tâ he, et permet ainsi de dégager de l'espa e libre utilisable pour les autres tâ hes de l'asservissement. Le même formalisme s'applique dire tement. Il sut de xer un seuil de satisfa tion sur l'erreur de la tâ he pour dénir immédiatement le domaine dans lequel le robot doit rester. Nous proposons i i d'appliquer e prin ipe aux tâ hes de la pile pour permettre de respe ter l'évitement des butées arti ulaires. L'expérien e est résumée sur les gures 5.12 et 5.13. La pile est omposée des quatre tâ hes

eg , eZ , eα

et

eR

déjà utilisées plus haut. La tâ he qualitative représentant

la ontrainte d'évitement de butées arti ulaires est ajoutée en dernière tâ he de la pile. Le robot est

eg , eZ et eα sont eR , le robot doit réaliser un ar de er le entré sur la

pla é dans un oin de son domaine arti ulaire. A la position initiale, les tâ hes pratiquement a omplies. Pour réaliser la tâ he

ible, qui l'amène à sortir de son espa e arti ulaire. Comme le robot est entièrement ontraint par les quatre premières tâ hes, la tâ he d'évitement de butées n'est pas prise en ompte (gure 5.12, ourbe jaune) Pour dégager des degrés de liberté et ainsi éviter les butées, les tâ hes

eg

tâ hes qualitatives. Nous avons xé (arbitrairement) le seuil de satisfa tion à

et eZ sont onverties en 0.1 pour les deux tâ hes.

La traje toire obtenue est donnée en pointillé sur la gure 5.12. Elle reste pro he de la traje toire obtenue en n'utilisant pas de tâ hes qualitatives. Les butées ne sont toujours pas évitées, mais la prise en ompte des deux tâ hes de manière qualitative permet d'obtenir des degrés de liberté utilisables pour réaliser l'évitement de butées. On ajoute alors la tâ he d'évitement de butées. Lorsque les domaines de satisfa tion sont respe tés, les quatre tâ hes de positionnement n'asservissent que trois degrés de liberté, laissant les trois autres libres pour a omplir la tâ he d'évitement. La ourbe en bleu lair sur la gure 5.12 représente la traje toire obtenue. Les butées sont évitées, et le robot sort rapidement de la zone d'a tivation de la tâ he d'évitement. En ontrepartie, la tâ he est a omplie de manière qualitative, et la position désirée n'est pas exa tement atteinte. Il est possible de modier le omportement du robot en diminuant la valeur de seuil de satisfa tion 1.5e−3 , les butées sont toujours prises en ompte, et la position

des deux tâ hes. En xant le seuil à

nale est pro he de la position désirée. Il serait très fa ile de terminer le positionnement à partir de la position atteinte, en réduisant les seuils de satisfa tion à

0.

L'erreur des tâ hes lors de l'asservissement est présentée sur la gure 5.13. La tâ he

est a -

omplie dès le lan ement de l'asservissement, et reste nulle tout au long du dépla ement. La tâ he est régulée jusqu'à atteindre sa valeur désirée. Par ontre, les deux tâ hes

eg

et

eZ

eR

sont libres d'évo-

luer dans leur domaine de satisfa tion. Lorsqu'elles atteignent la valeur limite, elles sont orre tement maintenues à l'intérieur du domaine. La tâ he ave la tâ he

eR

eg

s'é happe parfois du domaine, à ause du ouplage

et des fortes ommandes que elle- i envoie. Dans e as, elle est rapidement régulée

et ramenée dans le domaine qualitatif.

5.2.3 Utilisation de la redondan e dire tionnelle Une première limitation apparaît en théorie lorsqu'on utilise le formalisme de la redondan e ave une tâ he qualitative. Considérons une tâ he qualitative de dimension 1, la ommande qu'elle engendre et l'espa e nul orrespondant. Lorsque la tâ he est ina tive, elle n'est pas prise en ompte lors du al ul de la ommande. De plus, elle ne ontraint pas le degré de liberté qui lui est asso ié. Le robot peut don se dépla er librement sur e degré, par exemple pour réaliser une tâ he se ondaire. Lorsque la tâ he qualitative sort de la zone de satisfa tion, et devient a tive, elle est prise en ompte dans le al ul de la ommande. Parallèlement, elle ontraint le degré de liberté qui lui est asso ié, et empê he toute utilisation pour une tâ he se ondaire ave la redondan e lassique. Toutefois, il existe, en théorie, une zone tampon entre es deux états de la tâ he qualitative.


5.2

Intégration dans la pile de tâ hes

107

−0.5 Tache classique Pile qualitative Qual.+Butees Qual.+Butees (seuils faibles) Limite d’activation des butees Butees

−0.6

Camera position Z (m)

−0.7

−0.8

s*

s

−0.9

−1

−1.1

−1.2

−1.3 −0.8

−0.6

−0.4

Fig. 5.12 

−0.2

0 0.2 0.4 Camera position X (m)

0.6

0.8

1

Expérien e 4 : Traje toire de la améra embarquée.

−3

x 10

eG

Norme des erreurs

3.5

eZ

3

2.5

eR

2 1.5 1 0.5 0

Fig. 5.13 

500

1000

1500

2000

2500 3000 Iterations

3500

4000

4500

Expérien e 4 : Normes des erreurs des quatre tâ hes de la pile. Les tâ hes

5000

et

eR

ne sont pas

des tâ hes qualitatives et sont régulées à zéro. Les deux autres tâ hes sont qualitatives. Le seuil d'a tivation vaut 1.5e−3 . Les tâ hes évoluent librement dans la zone de satisfa tion mais sont bloquées au seuil lorsque l'erreur augmente trop. La tâ he d'une primitive.

eg

présente des pi s qui sont dus aux à- oups donnés par le robot lors de la désa tivation


108

Asservissement qualitatif

. ||q|| svd(P)

1 zone morte

Tache inactive

0.8

Tache active

0.6 0.4 0.2 0 â&#x2C6;&#x2019;0.1

Fig. 5.14 

0

0.1

0.2 error

0.3

0.4

0.5

Existen e d'une zone morte entre a tivation et desa tivation. Dans la zone de gau he, la tâ he qua-

litative est ina tive. La ommande engendrĂŠe est nulle (||q|| Ë&#x2122;

= 0),

et le degrĂŠ de libertĂŠ orrespondant n'est pas

ontraint (P=1). Dans la partie droite, la tâ he est a tive. La ommande est non nulle, et le degrÊ de libertÊ orrespondant est ontraint (P=0). Dans la zone tampon, la ommande est nulle, mais le degrÊ de libertÊ orrespondant reste ontraint.

Lorsque la tâ he s'a tive, le degrÊ de libertÊ asso iÊ est immÊdiatement ontraint. D'un autre otÊ, la ommande asso iÊe au point d'a tivation est très faible, et même aussi petite que l'on veut. A proximitÊ du point d'a tivation, le robot ne rÊalise au un mouvement le long du degrÊ de libertÊ asso iÊ à la tâ he qualitative ni sous l'impulsion de ette tâ he (sa ommande est nÊgligeable, et n'est pas appliquÊe en pratique par le robot) ni sous l'impulsion des tâ hes se ondaires (le degrÊ de libertÊ est ontraint par la tâ he qualitative). Lorsque le robot entre dans ette zone, il y reste bloquÊ, dans un Êtat d'Êquilibre instable. Cette division de l'espa e est reprÊsentÊe sur la gure 5.14. La redondan e dire tionnelle permet de rÊsoudre e minimum lo al. En eet, à l'intÊrieur de la zone morte, il est normal d'annuler les ommandes se ondaires faisant sortir la tâ he qualitative de sa zone de satisfa tion. Par ontre, il est intÊressant de prendre en ompte les tâ hes se ondaires qui poussent la tâ he qualitative vers sa zone de satisfa tion. Or 'est justement le prin ipe de la redondan e dire tionnelle. Cette zone morte est mise en Êviden e de manière expÊrimentale. On rÊalise la même expÊrien e qu'au paragraphe 5.2.1. La tâ he d'Êvitement de butÊes est introduite en tâ he prioritaire de la pile. On rÊalise ensuite un en haÎnement de tâ hes en introduisant les tâ hes une par une dans la pile. Elles sont ajoutÊes dans l'ordre suivant :

eg , eÎą , eR

et enn

eÎą .

La traje toire est reprĂŠsentĂŠe sur la

gure 5.15. Le robot suit la frontière de la zone d'a tivation de l'Êvitement pour rÊaliser la tâ he

eR .

Lorsque la tâ he est a omplie, le robot se trouve don sur la frontière de la zone d'a tivation. La tâ he

eZ

est alors ajoutÊe à la pile. Cette tâ he a pour eet d'Êloigner le robot de sa butÊe. Pourtant,

il reste bloquÊ à la frontière de la zone d'a tivation. La gure 5.16 prÊsente la vitesse du robot lors de l'asservissement. La vitesse reste nulle malgrÊ l'ajout de la tâ he

eZ .

Le robot est bien dans la zone

morte : la tâ he d'Êvitement asservit un degrÊ de libertÊ sans pourtant l'utiliser. La tâ he

eZ

est don

projetÊe sur un espa e nul, et la loi de ommande reste nulle. La redondan e dire tionnelle permet de sortir de e minimum lo al. En eet, la tâ he

eZ

ontribue

à Êloigner le robot de la butÊe, et n'est don pas annulÊe par la proje tion sur la redondan e de la tâ he

ejl . La vitesse du robot est prÊsentÊe sur la gure 5.17. Lorsque la tâ he eZ

est ajoutĂŠe, la vitesse

du robot n'est pas nulle, et il peut sortir de la zone morte. Le robot rejoint alors sans problème sa position dÊsirÊe, omme on le voit sur la gure 5.15.


5.2

Intégration dans la pile de tâ hes

Camera position Z (m)

0.5

109

Redondance directionnelle Redondance classique Butees Limite d’activation de butees

s*

0

−0.5

s

min.local

−1 −1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

Camera position X (m) Fig. 5.15 

Expérien e 5 : Traje toires du robot dans l'espa e arti ulaire. Le robot réalise un grand mouvement

selon l'axe X pour réaliser la tâ he

eR .

Lorsque le robot s'appro he trop des butées, la tâ he d'évitement s'a tive

et interdit les mouvements dans ette dire tion. Une fois

eR

a omplie, la tâ he

eZ

est ajoutée. Si la redondan e

lassique est utilisée, le robot reste bloqué dans la zone morte, à la frontière d'a tivation de la tâ he d'évitement. Si la redondan e dire tionnelle est utilisée, le robot n'est pas bloqué et rejoint la position désirée.

0.05

Plot 1 Plot 2 Plot 3 Plot 4 Plot 5 Plot 6

0.04 0.03 Vitesses

0.02 0.01 0 −0.01 −0.02 −0.03 −0.04 500

Fig. 5.16 

1000

1500 Iterations

2000

2500

3000

Expérien e 5 : Vitesses arti ulaires obtenues en utilisant la redondan e lassique. A l'itération 2400,

la dernière tâ he

ez

est ajoutée. Les vitesses restent nulles : le robot est bloqué dans la zone morte.


110

Asservissement qualitatif

Plot 1 Plot 2 Plot 3 Plot 4 Plot 5 Plot 6

0.05 0.04 0.03 Vitesses

0.02 0.01 0 â&#x2C6;&#x2019;0.01 â&#x2C6;&#x2019;0.02 â&#x2C6;&#x2019;0.03 â&#x2C6;&#x2019;0.04 500

1000

1500 Iterations

2000

2500

3000

Fig. 5.17  ExpĂŠrien e 5 : Vitesses arti ulaires obtenues en utilisant la redondan e dire tionnelle. A l'itĂŠration 2400,

la dernière tâ he

ez

est ajoutĂŠe. Les vitesses ne sont pas nulles : le robot n'est pas bloquĂŠ dans la zone morte.

5.2.4 Dis ontinuitÊ de la ommande Une se onde limitation est apparue lors des expÊrien es : la loi de ommande al ulÊe à partir d'une tâ he qualitative n'est pas ontinue dans le as gÊnÊral, malgrÊ le hoix de la fon tion d'a tivation

h.

Cette dis ontinuitÊ est ampliÊe par l'utilisation de la redondan e. Prenons l'exemple d'un système redondant simple, omposÊ de deux axes ontrlant le même degrÊ de libertÊ (typiquement le torse et la tête d'un robot humanoïde). La loi de ommande est al ulÊe à partir de deux tâ hes. La tâ he prin ipale est une tâ he qualitative d'Êvitement de la butÊe arti ulaire du ou, la tâ he se ondaire est un suivi d'objet, utilisant les deux arti ulations du ou et du torse. L'expÊrien e a ÊtÊ rÊalisÊe en simulation. Les vitesses arti ulaires pendant le dÊpla ement de l'objet sont donnÊes sur la gure 5.18. Dans un premier temps, les deux arti ulations sont utilisÊes simultanÊment pour a omplir la tâ he de suivi. Le ou Êtant loin de sa butÊe, la tâ he prin ipale d'Êvitement de butÊe est ina tive. A l'itÊration 1000, le robot entre dans la zone d'a tivation de la tâ he d'Êvitement. ImmÊdiatement, le degrÊ de libertÊ orrespondant au ou, qui Êtait libre jusque là, est ontraint par la tâ he prin ipale. La tâ he se ondaire se reporte entièrement sur le torse. Ce i rÊe une forte dis ontinuitÊ : l'arti ulation du ou stoppe brutalement alors que le torse a Êlère. De plus, l'arti ulation du ou est stoppÊe loin de sa butÊe. Il reste en ore

10%

du domaine arti ulaire avant la

butÊe ee tive. Cette partie du domaine ne pourra pas être utilisÊe. Finalement, le robot s'est omportÊ exa tement omme s'il avait ÊtÊ stoppÊ par une butÊe matÊrielle. On a don simplement ajoutÊ une butÊe logi ielle à l'intÊrieur de la pile, alors que le omportement attendu Êtait plutt une diminution progressive de la vitesse du ou à l'appro he de la butÊe, avant un arrêt total à proximitÊ de la butÊe ee tive. Or e omportement n'est pas possible à Ê rire ave l'asservissement qualitatif prÊsentÊ dans ette se tion, d'une part par e que la ommande due à la tâ he qualitative n'est pas ontinue dans le as gÊnÊral, et d'autre part par e qu'au une transition ontinue n'est ee tuÊe au niveau des degrÊs de libertÊ orrespondants.


5.3

Con lusion

111

−4

x 10

Vitesse Articulaire

10 Art. cou Art. torse

8 6 4 2 0 0

500

1000

1500

2000 Iteration

2500

3000

3500

Fig. 5.18  Expérien e 6 : Vitesse arti ulaire du ou et du torse lors d'un suivi d'objet. Jusqu'à l'itération 1000, la

tâ he prin ipale d'évitement de butée est ina tive, et le système omplet se dépla e pour suivre l'objet. A l'itération 1000, le robot entre dans la zone d'a tivation de la tâ he d'évitement de butée. L'arti ulation du ou her he alors à sortir de la zone d'a tivation et s'arrête, pendant que l'arti ulation du torse ontinue seule à suivre l'objet.

5.3 Con lusion L'asservissement qualitatif permet de faire onverger le système vers une zone plutt que vers un point unique. Nous avons montré que ela permet de dénir simplement de nombreuses ontraintes sous la forme d'une fon tion d'erreur, qui peut ensuite être intégrée dans la pile. Cette solution permet don d'étendre les possibilités de onstru tion d'un omportement omplexe à partir de tâ hes de base. Les ontraintes ne sont plus limitées au sommet de la pile omme dans les hapitres pré édents, mais peuvent être ajoutées omme des tâ hes prioritaires. Cependant nous avons mis en éviden e dans les expérien es une limitation : dans ertains as, la loi de ommande issue de la tâ he qualitative est dis ontinue. De plus, le proje teur sur l'espa e nul de la tâ he est binaire, et ne permet don pas d'assurer une transition ontinue lorsqu'une primitive se désa tive. Dans le hapitre suivant, nous montrerons que es dis ontinuités apparaissent lorsque les informations apteurs omposants la tâ he ne sont pas redondantes. Nous proposerons alors une solution pour les résoudre. Ce i permettra d'obtenir un bon omportement du robot quelle que soit la tâ he qualitative, et ainsi de valider son utilisation dans le adre de la pile de tâ hes.


112

Asservissement qualitatif


Chapitre 6

Tâ hes à dimension variable

L

'asservissement qualitatif, prĂŠsentĂŠ dans le hapitre prĂŠ ĂŠdent, introduit des dis ontinuitĂŠs dans la loi de ommande. Ces dis ontinuitĂŠs interviennent lorsqu'une primitive s'a tive ou se dĂŠsa tive,

'est-à -dire lorsque la tâ he hange de dimension. Pour tenter de rÊsoudre es dis ontinuitÊs, nous nous intÊressons dans e hapitre aux

tâ hes à dimension variable,

'est-à -dire aux tâ hes dont l'ensemble

de primitives n'est pas onstant. D'une manière gĂŠnĂŠrale, dans e mĂŠmoire, les lois de ommande que nous utilisons s'appuient sur l'appro he par fon tions de tâ hes dĂŠ rite dans [Samson 91â&#x201E;&#x201E;. Cette mĂŠthode gĂŠnĂŠrale permet d'obtenir une loi de ommande ontinue et stable sous des onditions simples Ă vĂŠrier. En parti ulier, la ondition première est d'avoir une matri e ja obienne de rang onstant et plein. Pour ette raison, on her hera toujours Ă  ĂŠviter les points de singularitĂŠ oĂš le rang de la matri e ja obienne diminue, e qui entraĂŽne une instabilitĂŠ de la loi de ommande. Or l'asservissement qualitatif, et les tâ hes Ă  dimension variable d'une manière gĂŠnĂŠrale, ne respe tent pas ette hypothèse. On peut trouver dans la littĂŠrature d'autres exemples de telles tâ hes Ă  dimension variable. Dans [Gar iaAra il 05â&#x201E;&#x201E;, les primitives visuelles sont retirĂŠes de la tâ he lorsqu'elles sortent du hamp de vue de la amĂŠra. De la mĂŞme manière dans [Comport 06â&#x201E;&#x201E;, ertaines primitives dĂŠte tĂŠes omme ĂŠtant des donnĂŠes erronĂŠes sont retirĂŠes de la tâ he de manière Ă  ne pas perturber l'asservissement. Enn, les informations apteurs dont la valeur est susamment pro he de la valeur dĂŠsirĂŠe sont retirĂŠes de la tâ he dans [Cheah 05â&#x201E;&#x201E; pour donner plus de libertĂŠ au système et fa iliter la rĂŠgulation des autres omposantes de l'erreur. Ce mĂŞme prin ipe est repris dans l'asservissement qualitatif prĂŠsentĂŠ au hapitre prĂŠ ĂŠdent. Dans es diĂŠrents travaux, les propriĂŠtĂŠs de la loi de ommande sont ĂŠtudiĂŠes au as par as, en se basant gĂŠnĂŠralement sur des hypothèses de travail spĂŠ iques au système ĂŠtudiĂŠ. Ces rĂŠsultats sont don di iles Ă  gĂŠnĂŠraliser, et tout le travail est Ă  refaire quand on s'intĂŠresse Ă  un autre système. Dans e hapitre, nous nous intĂŠressons en premier lieu Ă  es tâ hes Ă  dimension variable de manière gĂŠnĂŠrale. En parti ulier, nous allons montrer que les lois de ommande lassiques appliquĂŠes aux tâ hes Ă  dimension variable entraĂŽnent des dis ontinuitĂŠs fortes dans la ommande. Nous proposerons aussi une solution pour rĂŠsoudre ette dis ontinuitĂŠ. Enn, omme dans le hapitre prĂŠ ĂŠdent, nous ramènerons le travail rĂŠalisĂŠ Ă  la pile de tâ hes. Nous insisterons aussi sur le travail restant Ă  a omplir pour ĂŠtendre les tâ hes Ă  dimension variable dans un adre gĂŠnĂŠral et valider thĂŠoriquement le travail rĂŠalisĂŠ.


114

Tâ hes à dimension variable

6.1 Ă&#x2030;tat de l'art Dans e paragraphe, nous rappelons plusieurs s hĂŠmas de ontrle lassiques ren ontrĂŠs dans la littĂŠrature utilisant une tâ he Ă dimension variable. Cette synthèse est faite de manière Ă  homogĂŠnĂŠiser les diĂŠrentes notations utilisĂŠes lors de la prĂŠsentation originale de es travaux, an de mettre en ĂŠviden e leur forme ommune.

e . On note J = â&#x2C6;&#x201A;e/â&#x2C6;&#x201A;q son ja obien. Le ja obien J est une k Ă&#x2014; n, oĂš n est le nombre de degrĂŠs de libertĂŠ du robot (n = dim q) et k est la taille du ve teur d'erreur (k = dim e ). On note m le rang de J . Comme nous l'avons vu aux hapitres prĂŠ ĂŠdents, une loi de ommande lassique rĂŠgulant l'erreur e Ă zĂŠro est : On onsidère une fon tion d'erreur

matri e de dimension

+e qË&#x2122; = â&#x2C6;&#x2019;ÎťJc

(6.1)

+ est une approximation de la pseudo-inverse Îť est le gain paramĂŠtrant la vitesse de onvergen e, et Jc J . Cette loi de ommande entraĂŽne une dĂŠ roissan e exponentielle de ha une des omposantes de c + = I ( ar alors e Ë&#x2122; = â&#x2C6;&#x2019;Îťe ). On peut montrer que la loi de ommande (6.1) onverge l'erreur Ă 0 si J J m + > 0. b soient de rang plein ( 'est-Ă -dire k = m) et J Jc asymptotiquement Ă  0 sous ondition que J et J oĂš de

6.1.1 Asservissement visuel statistiquement robuste

Dans [Comport 06â&#x201E;&#x201E;, une solution est proposĂŠe pour traiter le as des donnĂŠes aberrantes issues du traitement d'image. La solution onsiste Ă asso ier Ă  haque omposante du ve teur d'erreur

e

un

poids reprÊsentant la onan e que l'on a orde à ette primitive. La tâ he utilisÊe est dÊnie par :

ev = He oĂš

H = Diag(h1 , ..., hk )

est la matri e de poids permettant de retirer si nĂŠ essaire les donnĂŠes aber-

rantes de l'ensemble des informations. Les poids robuste. Ils varient de

1

(6.2)

hi

sont al ulĂŠs Ă l'aide d'un algorithme d'estimation

lorsque la onan e est maximale Ă

0

lorsque l'algorithme est ertain d'avoir

dĂŠte tĂŠ une information aberrante. La loi de ommande est alors al ulĂŠe par analogie ave (6.1) :

b + He qË&#x2122; = â&#x2C6;&#x2019;Îť(HJ)

(6.3)

Lorsque la onan e dans une information visuelle dÊ roÎt, elle- i est retirÊe de manière ontinue du ve teur matri e

e en annulant la valeur de sa omposante. Dans le mĂŞme temps, la ligne HJ est annulĂŠe et n'est don plus prise en ompte lors de l'inversion.

orrespondante de la

Ce travail se pla e dans l'hypothèse oÚ le nombre de primitives visuelles est très grand (typiqueb + H est toujours de rang plein, ment k = 200). On peut alors fa ilement vÊrier que l'inverse (HJ)

mĂŞme quand l'un des poids

hi

tend vers

0.

6.1.2 Loi de ommande ontinue malgrĂŠ les hangements de visibilitĂŠ Dans [Gar iaAra il 05â&#x201E;&#x201E;, les auteurs traitent dire tement du problème de la ontinuitĂŠ d'une loi de ommande basĂŠe sur une erreur dont la dimension varie en fon tion de la visibilitĂŠ. Lorsqu'on onsidère le problème de la visibilitĂŠ des amers lors d'un asservissement visuel, il est parfois très di ile de garantir que toutes les informations apteurs seront visibles durant tout l'asservissement, sans planier la traje toire [Mezouar 02â&#x201E;&#x201E; ou en ore ajouter un degrĂŠ de libertĂŠ dĂŠdiĂŠ au respe t de ette ontrainte [Corke 01, Malis 04bâ&#x201E;&#x201E;. Si une partie de la ible quitte le hamp de vue du apteur, rendant impossible le al ul d'une information visuelle, elle- i doit ĂŞtre supprimĂŠe de l'ensemble des informations de rĂŠfĂŠren e de l'asservissement. Or ette suppression ause une dis ontinuitĂŠ dans la loi de ommande, qui n'est pas a eptable en pratique.


6.1

Ă&#x2030;tat de l'art

115

Pour assurer la ontinuitĂŠ de la loi de ommande, une pondĂŠration est introduite dans [Gar iaAra il 05â&#x201E;&#x201E; an de lisser la transition lorsque la primitive quitte le hamp de vue. La tâ he proposĂŠe s'ĂŠ rit :

ev = We oĂš

W = Diag(w1 , ..., wk )

(6.4)

est la matri e de poids introduite pour garantir la ontinuitĂŠ, et

al ulÊe d'après un ensemble de points ara tÊristiques. Les poids ontinÝment de la valeur

1 lorsque le

wi

e

est

sont dÊnis de manière à passer

point orrespondant est au entre de l'image, Ă

0

lorsque elui- i

est très pro he du bord. La loi de ommande proposÊe s'Ê rit :

qË&#x2122; = â&#x2C6;&#x2019;Îť (CWJ)â&#x2C6;&#x2019;1 CWe oĂš

C

est une matri e de ombinaison hoisie pour que

CWe

(6.5)

soit de rang plein et respe te la ondition

de stabilitĂŠ de la fon tion de tâ he [Samson 91â&#x201E;&#x201E;. Dans [Gar iaAra il 05â&#x201E;&#x201E;, C est dĂŠnie par  b + , oĂš Wâ&#x2C6;&#x2014; est la valeur de W al ulĂŠe Ă la position nale (typiquement Wâ&#x2C6;&#x2014; = Ik ), et Wâ&#x2C6;&#x2014; J une approximation du ja obien.

Il est possible d'obtenir une forme très pro he de (6.3) à ondition de hoisir

b J

b = J. J

C = b J est

Ce hoix est

diĂŠrent de elui ee tuĂŠ dans [Gar iaAra il 05â&#x201E;&#x201E; (oĂš est hoisi ĂŠgal au ja obien al ulĂŠ Ă la position â&#x2C6;&#x2014; nale J ), mais permet d'obtenir un omportement similaire en pratique, en parti ulier du point de vue de la dis ontinuitĂŠ lors de la perte de vue d'une primitive. On peut alors ĂŠ rire :

qË&#x2122; = = ar la matri e

J

â&#x2C6;&#x2019;Îť (J+ WJ)â&#x2C6;&#x2019;1 J+ We â&#x2C6;&#x2019;Îť ((J â&#x160;¤ J)â&#x2C6;&#x2019;1 J â&#x160;¤ WJ)â&#x2C6;&#x2019;1 (J â&#x160;¤ J)â&#x2C6;&#x2019;1 J â&#x160;¤ We

peut dĂŠvelopper le premier terme de l'ĂŠquation :

qË&#x2122; = = des poids

wi .

â&#x2C6;&#x2019;1 â&#x160;¤ = m) et don J+ = J â&#x160;¤ J J . â&#x160;¤ matri e (J WJ) soit de rang plein, on

est supposĂŠe ĂŞtre de rang plein en olonne (n

Lorsque susamment de primitives sont a tives pour que la

On pose alors

(6.6)

H=

â&#x2C6;&#x161;

W,

â&#x2C6;&#x2019;Îť (J â&#x160;¤ WJ)â&#x2C6;&#x2019;1 J â&#x160;¤ J(J â&#x160;¤ J)â&#x2C6;&#x2019;1 J â&#x160;¤ We â&#x2C6;&#x2019;Îť (J â&#x160;¤ WJ)â&#x2C6;&#x2019;1 J â&#x160;¤ We

(6.7)

'est-Ă -dire la matri e diagonale dont les oe ients sont les ra ines arrĂŠes

On obtient nalement la loi de ommande sous la forme suivante :

qË&#x2122; = â&#x2C6;&#x2019;Îť(HJ)+ He

(6.8)

Cette forme nale est identique Ă elle tirĂŠe de [Comport 06â&#x201E;&#x201E;. De la mĂŞme manière que la loi de ommande (6.3), ette loi de ommande permet de dĂŠsa tiver progressivement ertaines lignes du ve teur d'erreur

e,

lorsque les informations apteurs orrespondantes sortent du hamp de vue.

6.1.3 Asservissement vers une rĂŠgion de rĂŠfĂŠren e Dans [Cheah 05â&#x201E;&#x201E;, une loi de ommande est onstruite pour amener l'ee teur d'un robot manipulateur vers une rĂŠgion de rĂŠfĂŠren e plutt que vers un point. La rĂŠgion de rĂŠfĂŠren e est dĂŠnie omme une interse tion d'ensembles paramĂŠtriques simples, omme par exemple des er les ou des demi-plans, dĂŠnis par une inĂŠgalitĂŠ dans l'espa e artĂŠsien. La loi de ommande proposĂŠe permet de faire dĂŠ roĂŽtre l'erreur jusqu'Ă e que toutes les inĂŠgalitĂŠs soient satisfaites. Ce travail a ĂŠtĂŠ prĂŠsentĂŠ hors du formalisme de la fon tion de tâ he. Nous le ramenons dans e formalisme parti ulier de manière Ă  pouvoir le omparer plus fa ilement ave les autres s hĂŠmas de ontrle dĂŠjĂ  prĂŠsentĂŠs. Comme prĂŠ ĂŠdemment, le robot est ontrlĂŠ en vitesse arti ulaire

qË&#x2122; .

Toutefois, la position du

est introduite puisque X est le point ontrlĂŠ. On suppose don onnu le ja obien â&#x2C6;&#x201A;X arti ulaire du robot Jq = â&#x2C6;&#x201A;q . La rĂŠgion de onvergen e est dĂŠnie par un ensemble de k inĂŠgalitĂŠs :

repère ee teur

X

e1 (X) â&#x2030;¤ 0

(6.9.1)


116

Tâ hes à dimension variable

e2 (X) ≤ 0 ... ek (X) ≤ 0 On peut remarquer que

e = (e1 , . . . , ek )

(6.9.2)

(6.9.k)

est une fon tion d'erreur, et que l'appli ation de la

ommande (6.1) à ette erreur onduirait le robot à onverger sur l'interse tion des ontours des régions (6.9.1) ... (6.9.k). Pour assurer la onvergen e vers l'intérieur de la région, on dénit la tâ he

ev où

suivante :

H

1 1 ev = H( e12 , ..., ek2 ) 2 2

est la matri e diagonale dont les omposantes sont nulles si l'inégalité orrespondante à été

satisfaite, et valent

1

sinon :

hi = Les auteurs montrent alors que

∂ev ∂X

max (0, ei ) = ei

λ



= LHe , où L =

est alors :

(6.10)

0 1

si

X ∈ (6.9.i)

(6.11)

sinon

∂e ∂X . La loi de ommande proposée dans [Cheah 05℄

q˙ = −λJq ⊤ L ⊤ He

(6.12)

est le gain paramétrant la vitesse de onvergen e. Si on note

J = LJq =

∂e ∂q , on obtient la forme

nale suivante :

ar

H

q˙ = −λ(HJ)⊤ He

(6.13)

est idempotente et symétrique. Une fois de plus, la forme obtenue est très pro he des loi de

ommande (6.3) et (6.8). Toutefois, l'opérateur d'inversion matri ielle est i i la transposée, alors que la pseudo-inverse était utilisée dans les as pré édents, omme ela est fait lassiquement dans le adre de la fon tion de tâ he. L'avantage prin ipal est de garantir ainsi la ontinuité de la loi de ommande ar l'opérateur de transposition est ontinu, alors que l'opérateur de pseudo-inverse est dis ontinu lors d'un hangement de rang, omme nous le verrons dans la suite du hapitre. Il en résulte que la loi de ommande (6.13) est ontinue. D'un autre té, le ontrle obtenu n'est pas optimal, alors que la pseudo-inverse garantissait l'optimalité au sens des moindres arrés. En parti ulier, la dé roissan e de l'erreur n'est plus une exponentielle dé roissante.

6.1.4 Asservissement qualitatif Enn, rappelons que la loi de ommande de l'asservissement qualitatif initialement proposée dans [Remazeilles 06b℄ et présentée dans le hapitre pré édent s'é rit sous une forme similaire. La fon tion d'erreur est dénie par :

ev = H(e−¯e ) (e − e¯ )

est la limite de la zone de onvergen e : lorsqu'une omposante de

de onvergen e

e

est inférieure au seuil

orrespondant, la partie orrespondante de la loi de ommande est désa tivée. On

rappelle que la matri e d'a tivation

H: où

(6.14)

R a

H m

est dénie par :

→ →

Rm×m H = Diag(h(a1 ), ..., h(am ))

   0 1 h(a) =   1 1 + tanh( 2

si

1 1−a/β

 − βa )

si

a≤0 a≥β

(6.15)

(6.16)

sinon

Une loi de ommande faisant est donnée par : [Remazeilles 06a℄ :

q˙ = −λ(HJ)+ H(e − e¯ )

(6.17)

Une fois en ore, nous retrouvons la même formulation que dans les paragraphes pré édents.


6.2

ContinuitÊ des tâ hes à dimension variable

117

6.1.5 Synthèse Dans les quatre paragraphes prÊ Êdents, nous avons prÊsentÊ plusieurs lois de ommande issues de la littÊrature. En uniant les notations, nous avons pu dÊgager une forme ommune :

qË&#x2122; = â&#x2C6;&#x2019;Îť(HJ)â&#x160;&#x17E; He oĂš

â&#x160;&#x17E;

(6.18)

est un opĂŠrateur d'inversion matri ielle (la pseudo-inverse ou la transposĂŠe dans les as prĂŠsentĂŠs

plus haut). Dans tous les as prĂŠsentĂŠs, la matri e diagonale

H est utilisĂŠe Ă la fois pour annuler la omposante

de l'erreur orrespondant Ă une information ina tive, mais aussi pour annuler la ligne orrespondante de la matri e d'intera tion. Lorsque la pseudo-inverse est utilisĂŠe omme opĂŠrateur d'inversion, e dernier point est fondamental. En eet, en n'annulant pas la ligne orrespondante de la matri e + ja obienne ( 'est-Ă -dire si la ommande â&#x2C6;&#x2019;ÎťJ He est utilisĂŠe), la primitive ina tive est prise en ompte

lors de l'inversion, et impose alors une vitesse nulle sur le degrĂŠ de libertĂŠ orrespondant ( e qui est une ommande en soit, ar envoyer une vitesse nulle est bien diĂŠrent de laisser le degrĂŠ de libertĂŠ non ontraint). Un se ond point doit ĂŞtre notĂŠ : les appli ations prĂŠsentĂŠes dans les travaux itĂŠs ne se pla ent pas dans une situation oĂš le nombre de primitives a tives est infĂŠrieur au nombre total de degrĂŠs de libertĂŠ du système. Que e soit dans [Comport 06â&#x201E;&#x201E; ou dans [Gar iaAra il 05â&#x201E;&#x201E;, on onsidère que si trop de primitives sont perdues durant l'asservissement, ela orrespond Ă un ĂŠ he de l'asservissement. Dans [Cheah 05â&#x201E;&#x201E;, il arrive qu'il y ait moins de primitives a tives que de degrĂŠs de libertĂŠ. Cependant, en utilisant la transposĂŠe, les auteurs garantissent la ontinuitĂŠ de leur ommande. Dans la suite du hapitre, nous allons montrer que les lois de ommande de la forme (6.18) garantissent la ontinuitĂŠ sous ondition que le nombre de primitives soit susamment grand pour que le ja obien reste toujours de rang ĂŠgal au nombre de degrĂŠs de libertĂŠ du système. D'un autre tĂŠ, nous montrerons que les lois de ommande de ette forme ne peuvent pas ĂŞtre gĂŠnĂŠralisĂŠes Ă  des as oĂš susamment de primitives sont ina tives pour que le rang du ja obien diminue. Dans de tels as, l'utilisation d'une telle loi de ommande peut entraĂŽner de grandes dis ontinuitĂŠs.

6.2 ContinuitÊ des tâ hes à dimension variable Dans ette partie, nous allons tout d'abord montrer que les lois de ommande lassiques, de la forme (6.18), ne permettent pas d'assurer la ontinuitÊ de la ommande lorsque susamment de primitives sont ina tives pour que le rang du ja obien diminue. Nous proposerons alors un nouvel opÊrateur, identique à l'opÊrateur de pseudo-inverse lorsque toutes les primitives sont soit a tives soit ina tives, mais garantissant la ontinuitÊ lorsqu'une ou plusieurs primitives hangent d'Êtat.

6.2.1 Quelques dÊnitions Nous donnons i i la dÊnition des notions que nous allons utiliser dans la suite du hapitre. Nous donnons en premier lieu une dÊnition gÊnÊrale pour ara tÊriser les tâ hes de la forme (6.18). Nous proposons ensuite quelques notions permettant de ara tÊriser la redondan e d'un système par rapport à la tâ he qu'on lui demande d'a omplir.

Tâ he à dimension variable DÊnition 6.2.1 (Tâ he à dimension variable) Soit e un ve teur de primitives rÊfÊren Êes apteur. Dans la suite, on appellera e une tâ he. On suppose que sa matri e ja obienne est de rang onstant. La tâ he eq est une tâ he à dimension variable onstruite sur e si elle s'Ê rit : eq = He

(6.19)


118

Tâ hes à dimension variable

où H est une matri e diagonale dont les oe ients varient ontinûment dans l'intervalle [0, 1].

Remarque 2.1:

Les quatre lois de ommande (6.3),(6.8), (6.13) et (6.17) rappelées dans le para-

graphe pré édent sont onstruites à partir de tâ hes à dimension variable.

Redondan e en entrée et dé ouplage Dénition 6.2.2 (Matri e de rang plein) Une matri e est de rang plein en lignes ssi son nombre de lignes est égal à son rang. Elle est de rang plein en olonnes ssi son nombre de olonnes est égal à son rang. Dénition 6.2.3 (Entrée non redondante)

La tâ he e possède une entrée non redondante (ou est non redondante en entrée) si son ja obien est de rang plein en ligne.

Dénition 6.2.4 (Entrée redondante) A l'inverse, la tâ he e possède une entrée redondante (ou est redondante en entrée) si son ja obien n'est pas de rang plein en ligne. Remarque 2.2:

J n'est pas de rang plein en ligne, alors on peut séparer ses lignes J0 , et un sous-ensemble redondant J1 qui s'é rit en fon tion de J0 . appellera fa torisation de la matri e J le ouple (J0 , χ). On en donne la

Si la matri e

en un sous-ensemble générateur On a alors

J1 = χJ0 .

On

dénition suivante.

Dénition 6.2.5 (Fa torisation d'une matri e) Soit J une matri e qui ne soit pas de rang plein en ligne. Alors il existe une matri e de permutation P, une matri e de rang plein en ligne J0 et une matri e quel onque χ, telles que :   J0 J=P (6.20) χJ0  Le triplet P, J0 , χ est appelé fa torisation de la matri e J par la sous matri e J0 . La matri e J0 est appelée génératri e de J , et χ est appelé multiplieur de la fa torisation. Par abus, on omettra la plupart du temps la permutation P et on nommera fa torisation de J le ouple J0 , χ (P s'obtient simplement à partir de J , J0 et χ). Remarque 2.3:

Si ertaines olonnes du multiplieur

loppée :

ave

J0 =

χ

sont nulles, la fa torisation peut être déve-



JA JB



 JA J = P  JB  χB JB et

χ = [0 χB ].

Dans e as, les primitives orrespondant à

(6.21)

JB

et à

χB JB

forment

JA

forment

la partie redondante du ve teur d'entrée. Au ontraire, les primitives orrespondant à

la partie non redondante de l'entrée ar elles ne peuvent pas être exprimées en fon tion d'autres primitives (dans e as,

J0 = JB

Inversement, si le multiplieur

et χ = χB . χ n'a pas de olonne nulle, on dira que la fa torisation est totalement

redondante.

Dénition 6.2.6 (Entrée totalement redondante) La tâ he e possède une entrée totalement redondante (ou est totalement redondante en entrée) s'il n'est pas possible de trouver une fa torisation de son ja obien de la forme (6.21).


6.2

Continuité des tâ hes à dimension variable

119

Corrolaire 6.2.1 (Cara térisation d'une entrée totalement redondante)

La tâ he e est totalement redondante en entrée ssi son ja obien peut être é rit sous la forme J = J0 P , où P est une matri e de permutation, J0 est une matri e de rang plein, et au une olonne χJ0 du multiplieur χ n'est nulle. Preuve:  Montrons tout d'abord l'impli ation dire te. On suppose qu'il existe une fa torisation P0 , J0 , χ0 de J , ave χ n'ayant au une olonne nulle. Soit PA , JA , χA une fa torisation quel onque de J . Montrons que χA n'a pas de olonne nulle. On a     JA J0 = PA J = P0  χ0 J0  χA JA (6.22) PJA = P0 PχA P−1 PJA ave

P = P0 −1 PA .

Par identi ation des termes de la matri e, on peut é rire l'égalité suivante :

χ0 = PχA P−1 La matri e

P

Or le multiplieur

(6.23)

est une permutation, elle ne rajoute don pas de olonne nulle dans la matri e

χ0

n'a pas de olonne nulle. Don

existe une dé omposition totalement redondante de

χA

χA .

n'a pas de olonne nulle. Finalement, si il

J , alors toutes les dé ompositions sont totalement

redondantes, e qui prouve que la tâ he est totalement redondante. La ré iproque est immédiate.

Dénition 6.2.7 (Dé ouplage en entrée) Soit e une tâ he référen ée apteur. On distingue un sous-ensemble de primitives e2 des autres primitives, notées e1 . Soit J1 et J2 les matri es ja obiennes de e1 et e2 respe tivement. Alors, les primitives e2 sont dé ouplées des autres primitives e1 si : + Im(J+ 1 ) ⊥ Im(J2 )

(6.24)

où Im(A) est l'image de la matri e A.

Corrolaire 6.2.2 (Cara térisation du dé ouplage) dé ouplés, alors :

Si deux ensembles de primitives e1 et e2 sont

J2 J+ 1 = 0

(6.25.a)

J1 J+ 2 = 0

(6.25.b)

La ré iproque est vraie. Preuve:

Un résultat lassique et bien onnu on ernant le noyau et l'image d'une matri e

A

est :

Im(A⊤ ) = Ker(A)⊥ Ker(A) est le noyau de A, et E⊥ est le supplémentaire + ⊤ ⊤ é rire Im(J1 ) ⊂ Ker(J2 ). Or Im(J1 ) = Im(J1 ), e qui

(6.26) de

E.

En utilisant (6.24), on peut alors

prouve (6.25.a). + ⊤ Ré iproquement, on suppose que (6.25.a) est vraie. On a alors Im(J1 ) = Im(J1 ) ⊂ Ker(J2 ). ⊤ + + ⊥ Or Im(J2 ) = Im(J2 ) = Ker(J2 ) , e qui implique nalement que Im(J1 ) est orthogonal à + Im(J2 ). L'équation duale (6.25.b) est obtenue de la même manière.


120

Tâ hes à dimension variable

Remarque 2.4: e1

L'ĂŠquation (6.25.a) reprĂŠsente l'inuen e de la part de la loi de ommande due Ă

sur la primitive

e2 .

Si les deux primitives sont dĂŠ ouplĂŠes, alors

e1

e2 ,

n'a pas d'inuen e sur

et

rĂŠ iproquement.

Remarque 2.5:

On montre fa ilement que si toutes les primitives de

e

sont dĂŠ ouplĂŠes, alors

pas redondant en entrĂŠe. De plus, on peut montrer que si au moins une primitive de alors

e

e

e

n'est

est dĂŠ ouplĂŠe,

ne peut pas ĂŞtre totalement redondante.

Lorsqu'on Êtudie une tâ he à dimension variable, on se rend rapidement ompte que le omportement de la loi de ommande lors de l'a tivation ou de la dÊsa tivation d'une primitive n'est pas le même selon que la primitive est redondante ou au ontraire dÊ ouplÊe. Nous Êtendons don es quatre dernières dÊnitions aux tâ hes à dimension variable.

DÊnition 6.2.8 (Cara tÊristiques des tâ hes à dimension variable)

Soit eq une tâ he à dimension variable. On lui asso ie sa tâ he a tive eA , onstruite en ne onsidÊrant que les primitives de e orrespondant aux omposantes non nulles de H. On Êtend à eq les dÊnitions prÊ Êdentes en onsidÊrant les propriÊtÊs de eA :  La tâ he à dimension variable eq n'est pas redondante en entrÊe si la tâ he a tive asso iÊe eA n'est pas redondante en entrÊe.  La tâ he à dimension variable eq est redondante en entrÊe si la tâ he a tive asso iÊe eA est redondante en entrÊe.  La tâ he à dimension variable eq est totalement redondante en entrÊe si la tâ he a tive asso iÊe eA est totalement redondante en entrÊe.  Soit e2 une primitive de eq . e2 est dÊ ouplÊe par rapport aux autres primitives a tives si e2 est dÊ ouplÊe par rapport aux autres primitives de eA .

6.2.2 Dis ontinuitÊs des lois lassiques Dans l'ensemble de notre travail, le robot est ontrlÊ en vitesse. Une rupture de ontinuitÊ dans la loi de ommande implique don une a ÊlÊration innie du robot, e qui n'est pas satisfaisant en pratique. Une loi de ommande dis ontinue n'est en eet pas appliquÊe orre tement. Une solution peut être de lisser la ommande (typiquement à l'aide d'un ltre passe bas par exemple). Mais ette solution rÊduit les performan es, surtout en termes de rÊa tivitÊ du robot. Une deuxième onsÊquen e moins dire te des dis ontinuitÊs de la ommande est l'instabilitÊ pratique du système. Si l'entrÊe apteur os ille lÊgèrement autour du seuil de dÊ len hement de la dis ontinuitÊ (par exemple à ause d'un bruit de mesure inÊvitable en pratique), alors le bruit sera ÊnormÊment ampliÊ par la dis ontinuitÊ, et la ommande ne pourra plus être lissÊe en pratique. Pour es raisons, il est important de vÊrier la ontinuitÊ des lois de ommande. Dans ette partie, nous nous proposons d'Êtudier les lois de ommande dÊ oulant des tâ hes à dimension variable lorsqu'on applique les solutions lassiques, omme elles prÊsentÊes dans la paragraphe 6.1. Cinq lois de ommande issues de la dÊnition 6.2.1 sont proposÊes dans le paragraphe suivant. La suite du hapitre est alors une Êtude au as par as de ha une de es lois. Nous montrerons en parti ulier qu'au une de es lois de ommande n'est apable d'assurer la ontinuitÊ dans le as gÊnÊral. Les expÊrien es rÊalisÊes en simulation et prÊsentÊes dans la se tion 6.4.3 illustrent de manière pratique es dis ontinuitÊs.

Cinq lois de ommande pour des tâ hes à dimension variable On onsidère dans toute la suite une tâ he à dimension variable tâ he à dimension variable

eq

eq = He .

On rappelle que la

est ontinue, et en parti ulier que sa fon tion d'a tivation

H

varie

ontinĂťment entre 0 et 1. Sa dĂŠrivĂŠe par rapport au temps s'ĂŠ rit :

Ë&#x2122; eË&#x2122; q = HeË&#x2122; + He

(6.27)


6.2

Continuité des tâ hes à dimension variable

121

Comme nous l'avons vu dans la partie pré édente, on onsidère généralement que la matri e de poids

H varie lentement. Dans e as, on peut appro her sa dérivée par zéro. ˙ = 0, l'équation e et eq respe tivement. En utilisant l'approximation H

Soit

J

et

Jeq

les ja obiens de

pré édente se simplie en :

e˙ q = HJ q˙ On obtient nalement une forme simple du ja obien

(6.28)

Jeq

:

Jeq = HJ

(6.29)

eq . On impose une dé roissan e e˙ q = −λeq . La loi de ommande

On peut alors appliquer la loi de ommande générale (6.1) à la tâ he dé ouplée exponentielle des omposantes de l'erreur en posant générale s'é rit alors :

+ \ d + He q˙ = −λJ eq eq = −λ HJ

Il existe de nombreuses solutions possibles pour le hoix de approximations possibles de

J

d + J eq .

(6.30)

Nous ne onsidérons pas i i toutes les

(le le teur intéressé pourra par exemple se reporter à [Malis 04a℄ pour

une étude détaillée du hoix de

b ). J

Quatre hoix sont alors possibles, que nous listons i i dans l'ordre

où ils seront détaillés dans la suite du texte :

q˙ = q˙ = q˙ = q˙ = où

b = Diag H



1 0

si

hi 6= 0

sinon



   b +H b He −λ HJ + −λ HJ He  +  b He −λ HJ H  b + He −λ HJ

b = −λ HJ = −λ HJ

+ +

b He b He

(6.31) (6.32) (6.33) (6.34)

. Enn, nous verrons dans la suite que (6.32) se ramène à (6.31)

et est don soumis au même problème évident de ontinuité que (6.31). Nous onsidérerons alors une inquième loi de ommande :

A

† q˙ = −λ HJ He

(6.35)

est l'inverse des moindres arrés amortis de la matri e

A, qui sera introduite dans les pro hains

paragraphes.

Approximation omplète (6.31) Cette première loi de ommande orrespond à la manière naïve d'appliquer une tâ he de dimension variable : lorsqu'une omposante entre dans la zone d'a tivation, elle est dire tement prise en ompte, sans a tivation progressive. Cette loi de ommande n'est don évidement pas ontinue. Cette dis ontinuité est mise en éviden e par exemple dans [Gar iaAra il 05℄ (le but de et arti le étant d'obtenir une loi de ommande ontinue à partir de ette solution naïve (6.31)). Prenons par exemple une tâ he

e = e1 , e2 e2



(e2 est de dimension

1),

dont le ja obien s'é rit

J=



J1 J2



. On suppose que la primitive

s'a tive entre l'itération 0 et l'itération 1. A l'itération 0, la ommande (6.31) s'é rit don :

+ q˙ = −λ HJ He = −λJ+ 1 e1

(6.36)

De la même manière, à l'instant 1, la loi de ommande s'é rit :

q˙ = −λJ+ e La dis ontinuité est d'autant plus importante que la valeur de

J2

modie les valeurs singulières de la matri e ja obienne.

(6.37)

e2

est forte, et que l'ajout de la ligne


122

Tâ hes à dimension variable

Au une approximation (6.32) La loi de ommande (6.32) orrespond Ă la solution logique lorsqu'on se trouve onfrontĂŠ au type de dis ontinuitĂŠ ren ontrĂŠe ave la ommande prĂŠ ĂŠdente. Lorsqu'une primitive entre dans la zone d'a tivation, elle est a tivĂŠe de manière progressive jusqu'Ă  ĂŞtre omplètement prise en ompte. La loi de ommande (6.32) est elle qui est appliquĂŠe dans les travaux prĂŠsentĂŠs au dĂŠbut de e hapitre (en parti ulier [Gar iaAra il 05, Comport 06, Remazeilles 06aâ&#x201E;&#x201E;). Nous allons don montrer que es lois de ommande sont ontinues Ă  ondition que susamment de primitives soient a tivĂŠes pour assurer que la tâ he soit omplètement redondante. Au ontraire, dès que le nombre de primitives a tives n'est plus assez grand, le lissage apportĂŠ par

H

n'est plus pris en ompte. En parti ulier, si la

tâ he n'est pas redondante, nous montrerons que les lois de ommande (6.32) et (6.31) sont Êgales. L'Êtude de ette loi de ommande est divisÊe en trois as, selon que la tâ he est non redondante, redondante ou omplètement redondante.

EntrĂŠe non redondante :

On montre tout d'abord par le thÊorème suivant que la loi de ommande

n'est pas ontinue dans le as oÚ la tâ he est non redondante.

ThÊorème 6.2.1

Soit eq une tâ he à dimension variable dont l'entrÊe a tive n'est pas redondante. Alors les lois de ommande (6.31) et (6.32) sont Êgales. Preuve: Il est tout d'abord nÊ essaire d'introduire l'inverse des moindres arrÊs pondÊrÊs (weigh-

ted generalized inverse

[BenIsrael 80â&#x201E;&#x201E;). Cette inverse a ĂŠtĂŠ introduite en robotique par [Whitney 72â&#x201E;&#x201E;,

et s'est largement rĂŠpandue depuis [Baerlo her 01, Chang 95â&#x201E;&#x201E;. Une très bonne analyse de ette inverse, qui sert d'ailleurs de base Ă ette preuve, peut ĂŞtre trouvĂŠe dans [Doty 93â&#x201E;&#x201E;. Soit

W

W

une matri e inversible. La pseudo-inverse de

A pondĂŠrĂŠe Ă

gau he par le matri e de poids

est dĂŠnie dans [Doty 93â&#x201E;&#x201E; par :

On re onnaĂŽt i i une forme

AW# = (WA)+ W + H. En eet, similaire Ă HJ

(6.38) on peut ĂŠ rire

pseudo-inverse pondĂŠrĂŠe Ă gau he. On dĂŠnit pour ela la matri e

Hf = Diag

 h i 1

si

Hf

hi 6= 0 

:

HJ

+

H

omme une

sinon

(6.39)

Cette matri e est inversible, et peut don servir de matri e de poids pour la pondĂŠration de l'inverse :

(HJ)+ H

ar

b H = Hf H

b b + Hf H = (Hf HJ) Hf# b b = (HJ) H

Supposons maintenant pour simplier l'ĂŠ riture que les

a tives alors que les

kâ&#x2C6;&#x2019;i

i

premières primitives de la tâ he

(6.40)

eq

sont

dernières primitives sont dÊsa tivÊes. Cette hypothèse n'enlève rien à la

gÊnÊralitÊ de la preuve ar il ne s'agit que de l'ordre des primitives. La matri e ja obienne de la tâ he

eq

s'ĂŠ rit alors :

HJ = oĂš

J1

est de rang plein en ligne ( ar

eq



H1 J1 0



(6.41)

est supposĂŠ non redondante).

Un des rĂŠsultats prin ipaux de [Doty 93â&#x201E;&#x201E; est de prouver que l'inverse pondĂŠrĂŠe (6.38) est invariante au hoix de la matri e de poids W si la matri e A est de rang plein en ligne. Ă&#x2030;tant donnĂŠ que + A = [A+ 0], e rĂŠsultat peut très fa ilement ĂŞtre ĂŠtendu au as (6.41). Or H1 J1 est de rang



0

plein en ligne ( ar

J1

est de rang plein en ligne et

H1

est inversible). On peut don rĂŠĂŠ rire (6.39) :

b Hf# H b = (HJ) b +H b (HJ)+ H = (HJ)

(6.42)


6.2

Continuité des tâ hes à dimension variable

123

Ce i prouve que les lois de ommande (6.31) et (6.32) sont équivalentes lorsque l'entrée est non redondante. Lorsque la tâ he à dimension variable est non redondante, le lissage apporté par la fon tion

H n'est don plus pris b. H ou une la matri e H

d'a tivation la matri e

Entrée redondante :

en ompte. Les dis ontinuités sont alors les mêmes, qu'on utilise

Le résultat pré édent peut être étendu au as où la tâ he n'est pas totalement

redondante.

Théorème 6.2.2 (Invarian e des moindres arrés pondérés)

Soit J une matri e quel onque, et W une matri e de poids diagonale et inversible. Soit une fa torisation de J s'é rivant sous la forme :   J0 J = P  J1  (6.43) χ1 J1 ave (J0 , J1 ) de rang plein en ligne. La même fa torisation est appliquée à la matri e de poids W = Pdiag W0 , W1 , W2 . Alors, la partie non redondante J0 de J est invariante aux poids W lors du al ul de l'inverse pondérée J W# : f J W# = J W# (6.44) f = P diag(I, W1 , W2 ). ave W Preuve:

On peut supposer que la matri e de permutation

en ore, il ne s'agit que de l'ordre des primitives). Par hypothèse, on a supposé que la matri e



J0 J1



P

est égale à l'identité (une fois

était de rang plein en ligne. La matri e

peut don être dé omposée selon l'orthogonale et l'image de

J1

:

J0 = J1 ⊥ + ζJ1 où

J1 ⊥

appartient à l'orthogonal de

J1 .

F

 ζ  J1 ⊥  I J1 χ

I J=FG= 0 0

est de rang plein en olonne, et

on peut alors réé rire l'inverse de

J

G

(6.45)

On peut alors proposer la dé omposition de rang plein de

suivante :

J

(6.46)

est de rang plein en ligne. A partir de ette dé omposition,

pondérée par

W

:

(WJ)+ W = (WFG)+ W = G+ (WF)+ W (WF)+ W est invariant matri e (WF) :   W0 W0 ζ (WF) =  0 W1  0 W2 χ

Il ne reste alors plus alors qu'à montrer que On développe le al ul de la

J0

au hoix de

(6.47)

W0 .

(6.48)

Cette matri e est triangulaire. On peut don al uler analytiquement sa pseudo inverse :

+

(WF) =



W0 + 0

A B



(6.49)


124

Tâ hes à dimension variable

ave

B=



W1 W2 Ď&#x2021;



A = â&#x2C6;&#x2019;W0 + W0 ÎśB = â&#x2C6;&#x2019;ÎśB.

et

On peut nalement ĂŠ rire :



+

(WF) W =

ave

W12 =



W1 0

0 W2



I 0

BW12 X2 W12



(6.50)

. L'ĂŠquation (6.50) nalement obtenue est indĂŠpendante du hoix de

W0 .

Ce rĂŠsultat prouve nalement le rĂŠsultat ĂŠnon ĂŠ.

Corrolaire 6.2.3

Soit eq une tâ he à dimension variable, et H sa matri e d'a tivation. Alors les oe ients non nuls de H orrespondant aux primitives non redondantes ne sont pas pris en ompte lors du al ul de la loi de ommande. Preuve: En utilisant les mêmes notations que dans la preuve du thÊorème 6.2.1, la matri e d'a -

tivation s'ĂŠ rit

b. H = Hf H

HJ

La matri e

+

H

ette inverse est indĂŠpendante par rapport aux oe ients redondante de

J.

b HJ de H

peut s'ĂŠ rire

Hf #

b. H

D'après le thÊorème 6.2.2,

qui orrespondent Ă la partie non

On observe don la mĂŞme dis ontinuitĂŠ mise en ĂŠviden e par les ĂŠquations (6.36) et (6.37). Consi-

eq

dĂŠrons l'a tivation d'une primitive de

J0 ).

non redondante ( 'est-Ă -dire orrespondant Ă  une ligne de

On suppose que ette primitive est la première omposante du ve teur d'erreur. La matri e d'a -

tivation s'ĂŠ rit

H=



h 0

0 H1



. On ĂŠtudie la ontinuitĂŠ de la loi de ommande lorsque

utilisant le orollaire 6.2.3, on peut ĂŠ rire si

h



1 0

 1 + (HJ) H = ( 0 Au ontraire, si

h

0 H1



+

J)

varie. En

n'est pas nul :

0 H1



0 H1



0 H1



 1 â&#x2C6;&#x2019;â&#x2020;&#x2019; ( 0 hâ&#x2020;&#x2019;0

+

J)



1 0

0 H1



(6.51)

est nul, on a l'ĂŠgalitĂŠ suivante :

 0 (HJ)+ H = ( 0 La matri e

h

(HJ)+ H

0 H1



J)+



0 0

(6.52)

(et don la loi de ommande asso iĂŠe) ne tend pas vers sa valeur en

n'est don pas ontinue lors de l'a tivation d'une primitive non redondante.

EntrĂŠe totalement redondante :

h â&#x2020;&#x2019; 0.

Elle

Par ontre, lorsque l'entrĂŠe est totalement redondante, la loi

de ommande (6.32) est ontinue ( e qui n'est pas le as de la loi de ommande (6.31)). En eet, dans e as, le rang de la matri e

HJ

ne varie pas lors de l'a tivation ou de la dĂŠsa tivation d'une

primitive. Or, l'opĂŠrateur de pseudo-inverse est ontinu lorsque le rang de la matri e ne hange pas [BenIsrael 80â&#x201E;&#x201E;, e qui prouve la ontinuitĂŠ de la loi de ommande. En rĂŠsumĂŠ, la loi de ommande (6.32) est ontinue lorsque susamment de primitives sont a tives pour que l'entrĂŠe soit totalement redondante. Par ontre, elle est dis ontinue lorsque l'entrĂŠe n'est pas totalement redondante. Nous avons vu es deux as dans le hapitre prĂŠ ĂŠdent, lors des expĂŠrien es du paragraphe 5.1 et 5.2. Dans le paragraphe 5.1.2, l'asservissement qualitatif ĂŠtait utilisĂŠ pour ontrler la visibilitĂŠ d'un ensemble de neuf points. Le nombre total de primitive est 36 (soit 18 oordonnĂŠes de points et 18 primitives pour ontraindre la visibilitĂŠ), alors que le système ne possède que six degrĂŠs de libertĂŠ. On peut montrer que l'entrĂŠe de la tâ he est totalement redondante. Les oe ients de

H

sont don pris

en ompte et la loi de ommande est ontinue. Nous avons vu dans les expĂŠrien es que le hoix de la


6.2

Continuité des tâ hes à dimension variable

matri e d'a tivation

H

125

permettait de modier le omportement de la loi de ommande, en parti ulier

en permettant de ontrler le lissage. Au ontraire, lors de l'expérien e présentée au paragraphe 5.2.4, la tâ he qualitative servant à ontrler l'évitement de butées est non redondante. Le lissage apporté par

H

n'était don pas pris en

ompte, e qui explique les dis ontinuités observées.

Ajout d'un fa teur d'amortissement (6.35) Dis ontinuités de l'opérateur

A+

:

La solution lassique (6.32) n'est pas ontinue dans le as

général. La dis ontinuité de la loi de ommande est due à la dis ontinuité de l'opérateur de pseudoinverse lorsque la matri e hange de rang. Cela se omprend fa ilement lorsqu'on é rit la pseudo-inverse en se servant de la dé omposition en valeurs singulières. On pose U, Σ, V la dé omposition en valeurs A (A = UΣV⊤ ), ave U et V deux matri es orthonormales, et Σ une matri e nulle

singulières de

partout sauf sur sa diagonale. La pseudo-inverse de

A

s'é rit alors :

A+ = VΣ+ U⊤ où

Σ+

(6.53)

est la matri e nulle partout sauf sur sa diagonale, dont les oe ients sont les inverses des

oe ients non nuls de

Σ.

Lorsque le rang de la matri e

A

hange, ela orrespond à l'apparition ou à la disparition d'une

nouvelle valeur singulière non nulle. Si la matri e évolue ontinûment, alors la valeur singulière évolue ontinûment de

0

à une valeur non nulle. Lors du hangement de rang, la valeur singulière est don Σ+ est aussi grande que l'on veut. Intuitivement, les

aussi petite que l'on veut, et son inverse dans

dis ontinuités de l'opérateur de pseudo-inverse sont don les mêmes que elles de la fon tion inverse x → x1 en zéro. Lorsqu'une primitive non redondante est a tivée ou désa tivée, le rang de la matri e HJ hange, e qui provoque une dis ontinuité de son inverse, et don de la loi de ommande. Au ontraire, si la primitive est redondante, son a tivation ou sa désa tivation ne hange pas le rang de la matri e, et on vérie bien que la ommande reste ontinue. On peut don onsidérer que les dis ontinuités de la loi de ommande sont dues aux dis ontinuités de l'opérateur de pseudo-inverse. Pour ompenser les dis ontinuités de et opérateur, la solution lassique est d'utiliser l'opérateur des moindres arrés amortis [Nakamura 86, Kelmar 90, Deo 92℄. Au lieu d'utiliser l'inverse des valeurs singulières omme dans le al ul de la pseudo-inverse, le al ul des moindres arrés amortis utilise une Aη† :

fon tion garantissant qu'il n'y aura pas d'explosion numérique. On note ette inverse

Aη† = VΣη† U⊤ où

Ση†

σi

par la formule suivante :

est la matri e diagonale dont les oe ients

σ η† = En théorie, le paramètre

η

σ2

σ η†

(6.54)

s'obtiennent à partir des valeurs singulières

σ + η2

(6.55)

n'est pas di ile à hoisir ar il rempla e simplement le seuil utilisé

lassiquement lors du al ul de la pseudo-inverse pour borner la valeur des oe ients lors de l'inversion † η† des valeurs singulières. Nous noterons don A = A . 1 La fon tion (6.55) est tra ée sur la gure 6.1. Elle est équivalente à σ lorsque la valeur singulière σ est très supérieure au seuil η . Elle tend vers 0 de manière linéaire en 0. Enn elle est ontinue partout.

Utilisation de l'opérateur sa matri e d'a tivation donnée par (6.35) :

H.

A†

:

Considérons maintenant une tâ he

eq

à dimension variable, et

Nous rappelons la loi de ommande utilisant les moindres arrés amortis,

† q˙ = −λ HJ He


126

Tâ hes à dimension variable

10

inverse inverse majoree inverse amortie

inverse f(Ď&#x192;)

10

0

10

â&#x2C6;&#x2019;10

10

â&#x2C6;&#x2019;15

â&#x2C6;&#x2019;10

10

â&#x2C6;&#x2019;5

10

10 Valeur singuliere Ď&#x192;

0

10

Fig. 6.1  Comparaison entre la fon tion inverse, la fon tion inverse bornĂŠe lassiquement utilisĂŠe lors du al ul de

la pseudo-inverse, et la fon tion (6.55) utilisĂŠe pour le al ul de l'inverse des moindres arrĂŠs amortis. La fon tion inverse tend vers l'inni en 0. Pour empĂŞ her l'explosion numĂŠrique, on borne ette fon tion en annulant la valeur

Ρ.

de tous les points situĂŠs sous un seuil

Ρ , tend Ρ = 10â&#x2C6;&#x2019;6 .

plus grand que le seuil tra ĂŠes pour un seuil

En thĂŠorie, l'opĂŠrateur

L'inverse amortie (6.55) est ĂŠquivalent Ă la fon tion inverse lorsque

vers 0 en 0, et assure la ontinuitĂŠ aux alentours du seuil

Aâ&#x20AC;

Ρ.

Ď&#x192;

est

Les fon tions sont

assure la ontinuitĂŠ de la loi de ommande. En pratique, le lissage

e1non redondante soit dans la zone de    0 0 1 0 transition. La matri e d'a tivation varie ontinĂťment de Hh=0 = jusqu'Ă Hh=1 = . 0 I 0 I â&#x20AC;  â&#x20AC;  La matri e inverse (HJ) H est numĂŠriquement ĂŠgale Ă  (Hh=0 J) Hh=0 lorsque la valeur singulière + asso iĂŠe Ă  e1 est très petite, et vaut J lorsque la valeur singulière asso iĂŠe est grande. En pratique, + â&#x20AC;  â&#x2C6;&#x2019;3 la matri e passe de (Hh=0 J) Hh=0 Ă  J dans le petit intervalle [10 Ρ, 10+3 Ρ]. Ce lissage n'est don n'est ee tif qu'autour du seuil

Ρ.

Supposons qu'une primitive

pas rĂŠellement e a e. D'un autre otĂŠ, si la primitive sur l'ensemble de l'intervalle

e1

est redondante, on onstate bien un lissage rĂŠparti en pratique

[0, 1].

Une omparaison est rĂŠsumĂŠe sur la gure 6.2. Lorsque la primitive est non redondante, la loi de 10â&#x2C6;&#x2019;4 lorsque la valeur

ommande (6.32) n'assure au un lissage. Un rĂŠneau d'a tivation apparaĂŽt Ă

Ρ . L'utilisation de la ommande (6.35) permet d'obtenir un lissage 10â&#x2C6;&#x2019;5 et 10â&#x2C6;&#x2019;3 . La transition reste très abrupte. Par ontre, dans le

singulière asso iÊe passe sous le seuil thÊorique. Le lissage se situe entre

as oĂš la primitive est redondante, le omportement de (6.32) et (6.35) est identique. La rampe est situĂŠe plus haut dans l'intervalle

[0, 1],

entre

0.1

et

1,

et permet d'assurer la ontinuitĂŠ en pratique.

En pratique, la loi de ommande (6.35) permet de lisser lÊgèrement les dis ontinuitÊs de (6.32), et s'avère plus stable. Mais le lissage reste faible. La loi de ommande prÊsente de grands à - oups, le omportement est peu satisfaisant. Nous ne sommes don toujours pas apable de proposer une loi de ommande qui permette d'assurer dans le as non redondant la même ontinuitÊ que dans le as redondant.

Approximation partielle (6.33) La loi de ommande (6.32) n'est pas apable d'assurer la ontinuitÊ ar elle se ramène au as (6.31) dans les as non totalement redondants. Ces dis ontinuitÊs peuvent se omprendre simplement + + + + en Ê rivant (HJ) H = J H H = J (dans le as simple oÚ H est inversible et eq est non redondante, 'est-à -dire

J

est de rang plein en ligne). L'utilisation de la matri e d'a tivation Ă la fois Ă  l'intĂŠrieur

et à l'extÊrieur de la pseudo-inverse amène en quelque sorte une simpli ation. Pour empê her ette + simpli ation H H = I, une solution logique est d'utiliser la valeur rÊelle de la matri e d'a tivation


6.2

Continuité des tâ hes à dimension variable

127

zone de lissage effective des moindres carres amortis

zone de lissage attendue

1.1

0.95 0.9 0.85

.

||q||

Norme de la loi de commande

Non redondant (6.32) 1.05 Non redondant (6.35) Redondant (6.32) 1 Redondant (6.35)

0.8 0.75 0.7 −6 10

Fig. 6.2 

−5

−4

10

−3

10

−2

10 Activation h

−1

10

0

10

10

Comparaison des rampes d'a tivation pour les lois de ommande (6.32) et (6.35) dans les as où la

primitive a tivée est redondante (en jaune) ou non redondante (en bleu fon é). Le seuil + † −4 inverses (HJ) et (HJ) est xé à η = 10 .

seulement une fois, et d'utiliser sa valeur appro hée

b H

η

utilisé pour le al ul des

partout ailleurs. Les deux lois de ommande

proposées en onséquen e, données par (6.33) et (6.34), sont étudiées dans les deux paragraphes suivants.

La loi de ommande (6.33) annule de manière ontinue la valeur des primitives à l'appro he de la frontière d'a tivation, mais retire de manière dis ontinue la ligne orrespondante de la matri e b + H n'est pas ontinue. Par ontre on peut espérer ja obienne. En onséquen e, la matri e inverse (HJ)

que la loi de ommande nalement obtenue le soit, en orrigeant la dis ontinuité par la multipli ation ave le ve teur d'erreur qui, lui, est ontinu. Le théorème suivant montre que la ontinuité espérée n'est

pas obtenue dans le as général mais seulement dans le as où la primitive onsidérée est parfaitement dé ouplée.

Théorème 6.2.3

La loi de ommande (6.33) est ontinue lors de l'a tivation ou de la désa tivation d'une primitive si ette primitive est totalement dé ouplée. Ré iproquement, si la primitive n'est pas totalement dé ouplée, la loi de ommande (6.33) n'est pas ontinue. Preuve:

Soit

eq

une tâ he à dimension variable. On onsidère que toutes les primitives de

sont omplètement a tivées, sauf la dernière, notée

e2 .

On note

J=



J1 J2

est une matri e ligne. Le matri e d'a tivation est de la forme suivante :

H=



I 0

0 h

On développe la pseudo-inverse selon une appro he

J+ = où

+ [J+ 1 J2 ]



J1 J2

+



le ja obien de



X12

J2

(6.56)

diviser pour régner

:

i h + = J+ 1 J2 + X12

(6.57)

est le résultat d'une optimisation des moindres arrés des deux matri es

séparément, et

eq ,

eq

J1

et

J2

prises

est la partie des moindres arrés orrespondant au ouplage entre les deux sous

matri es. En parti ulier, on peut remarquer que

X12

est nulle si

e2

est dé ouplée (nous prouverons


128

Tâ hes à dimension variable

ette armation dans la suite de ette preuve). Pour fa iliter l'ĂŠ riture des ĂŠquations qui vont suivre, on ĂŠ rit

i h X12 = X112 X212 ,

oĂš

X212

est une matri e olonne.

En utilisant les dĂŠ omposition (6.56) et (6.57), l'inverse utilisĂŠe dans (6.33) peut s'ĂŠ rire :

 h i i h  J+ hJ+ + X1 hX2 12 12 b +H = h 1 i 2 (HJ)  J+ 0 1

if

h 6= 0

if

h=0

(6.58)

En utilisant ette dernière formulation, on fait apparaÎtre lairement la dis ontinuitÊ lorsque la primitive

e2

s'a tive ou se dĂŠsa tive : lim

Or la valeur Ă la limite

h=0

vaut



 h i h i b + H = J+ 0 + X112 0 (HJ) 1

(6.59)

hâ&#x2020;&#x2019;0

h i , J+ 0 1

e qui est diĂŠrent si

X12

n'est pas nul.

X12 est nulle ssi + + est dĂŠ ouplĂŠe. Supposons tout d'abord que X12 est nulle, 'est-Ă -dire J = [J+ 1 J2 ]. + + + + + Par dĂŠnition de la pseudo-inverse, on peut ĂŠ rire J = J JJ . On obtient alors J2 J2 J1 = 0. Il + + + + s'ensuit don que J2 J2 J2 J1 = J2 J1 = 0 (en multipliant Ă  gau he et Ă  droite par J2 ). On obtient + de la mĂŞme manière l'ĂŠgalitĂŠ J1 J2 = 0. D'après le orollaire 6.2.2, e i prouve le dĂŠ ouplage de la + + + + + primitive e2 . RĂŠ iproquement, si e2 est dĂŠ ouplĂŠe, alors J = (J1 J1 + J2 J2 )[J1 J2 ] [BenIsrael 80â&#x201E;&#x201E;. + + + En utilisant une nouvelle fois le orollaire 6.2.2, on obtient J = [J1 J2 ] et nalement X12 = 0. Pour prouver le thĂŠorème, il sut don de montrer que la matri e de ouplage

la primitive

e2

La dis ontinuitĂŠ de la loi de ommande (6.33) se omprend intuitivement en onsidĂŠrant (6.58). En fait ette loi de ommande permet de dĂŠsa tiver progressivement la partie de la ommande orrespondant Ă

X12 .

J2 .

Lorsque

Par ontre, elle n'est pas apable de lisser la dĂŠsa tivation de la part due au ouplage

h

s'annule, l'espa e de ouplage reprĂŠsentĂŠ par

entre la primitive a tive utilisĂŠ par

e1

e2

et les autres primitives

e1 ,

X12 ,

qui faisait l'objet d'un ompromis

devient instantanĂŠment disponible et n'est plus

seul. Ce transfert n'est pas lissĂŠ lors de l'a tivation et de la dĂŠsa tivation, et provoque

nalement une dis ontinuitĂŠ dans la ommande.

Se onde approximation partielle (6.34) La se onde approximation possible est donnÊe par (6.34). Mais ette solution n'est pas appli able en pratique, à ause du mauvais onditionnement de la matri e d'a tivation. Lorsque H est très petite, (HJ)+ peut devenir très forte.

(HJ)

HJ

à l'appro he de la frontière

est très mal onditionnÊe, et la valeur de l'inverse

Lorsque ette matri e est utilisĂŠe dans (6.32), ette explosion numĂŠrique est orrigĂŠe par la multi-

b est utilisĂŠe, au une orre tion n'est possible H. Mais lorsque l'approximation H +b oe ients de H sont approximĂŠs par 1. La matri e nalement utilisĂŠe (HJ) H n'est

pli ation Ă droite ave ar les petits

nalement pas utilisable en pratique, ar instable. On ne la onsidĂŠrera plus dans la suite.

6.2.3 Con lusion

Dans ette se tion, nous avons ÊtudiÊ en dÊtail inq lois de ommande obtenues par analogie ave les lois de ommande lassique, en inversant la matri e ja obienne de la tâ he à dimension variable ou une de ses approximation. Nous avons ainsi pu montrer qu'au une de es lois de ommande n'est apable d'assurer la ontinuitÊ de la loi de ommande dans tous les as. Un rÊsumÊ des propriÊtÊs de ha une des inq lois de ommande est donnÊ par le tableau 6.3. En parti ulier, au une loi de ommande n'est ontinue lorsque une ou plusieurs primitives ne sont pas redondantes par rapport aux autres, 'est-à-dire lorsqu'au moins un degrÊ de libertÊ n'est ontrlÊ que par une primitive. Dans e as, une première solution a ÊtÊ proposÊe par la loi de ommande


6.3

Un nouvel opérateur d'inversion matri ielle

CAS NON REDONDANT

FORME DE LA

Non

COMMANDE

redondant

 b +H b HJ + HJ H † HJ H  b †H HJ † b HJ H

(6.31) (6.32) (6.35) (6.33) (6.34)

Fig. 6.3 

129

CAS REDONDANT Totalement

Dé ouplé

Redondant

dis ontinu

dis ontinu

dis ontinu

dis ontinu

dis ontinu

dis ontinu

dis ontinu

ontinu

dis ontinu

dis ontinu

dis ontinu

ontinu

dis ontinu

ontinu

dis ontinu

dis ontinu

redondant

mal onditionné

Résumé des propriétés des inq lois de ommande étudiées dans la se tion 6.2.

(6.33), qui permet d'assurer la ontinuité lors de l'a tivation ou de la désa tivation d'une primitive non redondante, à ondition qu'elle soit aussi dé ouplée. Dans la se tion suivante, nous allons proposer une nouvelle loi de ommande, onstruite à partir d'un nouvel opérateur d'inversion matri ielle. Nous prouverons alors que ette loi de ommande permet d'assurer la ontinuité dans tous les as.

6.3 Un nouvel opérateur d'inversion matri ielle Comme on peut le voir sur le tableau 6.3, le as qu'au une des lois de ommande étudiées dans le paragraphe pré édent n'était apable de traiter sans dis ontinuité est elui de l'a tivation et de la désa tivation d'une primitive non redondante mais ouplée aux autres primitives. Dans e as, la loi de ommande (6.32) se simpliait et annulait ainsi le lissage apporté par la matri e d'a tivation H. + b dans la ommande D'un autre oté, en essayant d'empê her la simpli ation HH en introduisant H

(6.33), nous avons montré que la dis ontinuité était due à la matri e de ouplage

X12

n'est pas atténuée par

H

X12 .

La matri e

lors de la désa tivation, e qui provoque la dis ontinuité.

Dans e paragraphe, nous proposons d'introduire un nouvel opérateur d'inversion matri ielle onstruit à partir de ette dernière remarque. Dans un premier temps, nous proposons une dénition formelle permettant de spé ier e qui est attendu d'un tel opérateur d'inversion. Puis nous proposons une implémentation respe tant ette dénition, onstruite omme une somme pondérée des matri es de ouplage.

6.3.1 Dénition formelle Nous her hons i i à donner une dénition générale des propriétés que doit respe ter un opérateur d'inversion permettant d'assurer la ontinuité de la loi de ommande lors de l'a tivation ou de la désa tivation d'une primitive. Tout d'abord, et opérateur doit être égal à la pseudo-inverse lassique lorsqu'au une primitive n'est dans la zone de transition ( 'est-à-dire si, quel que soit

hi = 1).

i , hi = 0

ou

Ce i permet de onserver les bonnes propriétés des lois de ommande lassiques sauf dans les

périodes de transition. D'autre part, la nouvelle inverse doit être ontinue par rapport aux variations de la matri e

H,

quels que soient les as, en parti ulier que ela entraîne ou non un hangement de

rang de la tâ he. Nous proposons la dénition suivante :

Dénition 6.3.1 (Inverse ontinue) Soit A une matri e quel onque de taille (k × n), et H une matri e d'a tivation de taille (k × k), diagonale, dont les oe ients sont ompris dans l'intervalle [0, 1]. Alors l'opérateur d'inversion ontinue A‡H de la matri e A soumis à l'a tivation H respe te les deux propriétés suivantes :


130

Tâ hes à dimension variable

 Si â&#x2C6;&#x20AC;i = 1..k, hi â&#x2C6;&#x2C6; {0, 1}, alors on a l'ĂŠgalitĂŠ suivante : Aâ&#x20AC;ĄH = (HA)+ = (HA)+ H

(6.60)

 La fon tion (A, H) â&#x2020;&#x2019; Aâ&#x20AC;ĄH est ontinue par rapport Ă H. Intuitivement, on vĂŠrie simplement que, lorsqu'une seule primitive est dans la zone de transition, ette dĂŠnition assure bien la ontinuitĂŠ lors de l'a tivation omplète de la primitive (h dĂŠsa tivation omplète (h

â&#x2020;&#x2019; 0).

On a en eet :

J â&#x20AC;ĄDiag(I,h) â&#x2C6;&#x2019;â&#x2020;&#x2019; J+ hâ&#x2020;&#x2019;1 h i â&#x20AC;ĄDiag(I,h) J â&#x2C6;&#x2019;â&#x2020;&#x2019; J+ 1 0

â&#x2020;&#x2019; 1)

et Ă sa

hâ&#x2020;&#x2019;0

En assurant la ontinuitĂŠ par rapport aux variations de

H,

ette dĂŠnition gĂŠnĂŠralise de plus ette

intuition Ă un nombre quel onque de primitives dans la zone d'a tivation.

6.3.2 Constru tion du nouvel opĂŠrateur Nous proposons maintenant une implĂŠmentation de ette dĂŠnition en onstruisant un opĂŠrateur

J â&#x160;&#x2022;H

al ulÊ d'après une matri e ja obienne

J

et d'une matri e d'a tivation asso iĂŠe

H,

respe tant

la dĂŠnition 6.3.1. Cette onstru tion est basĂŠe sur l'ĂŠtude de la loi de ommande (6.33), et plus prĂŠ isĂŠment sur la gĂŠnĂŠralisation de la notion de matri e de ouplage. Par rapport au as ĂŠtudiĂŠ lors de la preuve de la non- ontinuitĂŠ de la ommande (6.33), le but est i i d'obtenir une inverse de la

h i + J â&#x160;&#x2022;H = h1 J+ 1 h2 J2 + h1 h2 X12

forme :

(6.61)

Commençons par dÊnir de manière formelle la notion de matri e de ouplage.

DĂŠnition 6.3.2 (Matri es de ouplage)

Soit J une matri e quel onque de dimension k Ă&#x2014; n. Les n o matri es de ouplage de J sont indexĂŠes par P(k) = P([1..k]) = P| P â&#x160;&#x201A; [1..k] , l'ensemble des   sous-parties de 1..k . On les dĂŠnit rĂŠ ursivement :  Xâ&#x2C6;&#x2026; = 0nĂ&#x2014;k (6.62)  â&#x2C6;&#x20AC;P â&#x2C6;&#x2C6; P(k),

X p = J+ P â&#x2C6;&#x2019;

X

XQ

(6.63)

Q(P

oĂš JP = HJ , hi ĂŠtant ĂŠgal Ă 1 si i â&#x2C6;&#x2C6; P , et ĂŠgal Ă  0 sinon ( 'est-Ă -dire que JP est la sous-matri e de J dont on n'a onservĂŠ que les lignes orrespondantes aux valeurs de P ).

Remarque 3.1:

On peut vĂŠrier fa ilement que ette dĂŠnition orrespond Ă la dĂŠnition intuitive

donnĂŠe prĂŠ ĂŠdemment dans les as simples :  Si

P = {i}, i â&#x2C6;&#x2C6; [1..k],

 Si

J

alors

est omposĂŠe de deux

Ă la matri e

X12

+ ème ligne de J . XP = X{i} =  Ji , oÚ Ji est la i J1 lignes, (J = ), alors la matri e de ouplage X{1,2} J2

est ĂŠgale

dĂŠnie dans (6.57) :

+ + + X12 = X{1,2} = J+ {1,2} â&#x2C6;&#x2019; X{1} â&#x2C6;&#x2019; X{2} = J â&#x2C6;&#x2019; [J1 J2 ]

(6.64)

En utilisant la dĂŠnition des matri es de ouplage, nous pouvons onstruire une nouvelle inverse

J â&#x160;&#x2022;H

respe tant la dĂŠnition 6.3.1.


6.3

Un nouvel opĂŠrateur d'inversion matri ielle

131

DĂŠnition 6.3.3 (Inverse ontinue

J â&#x160;&#x2022;H ) Soit J une matri e quel onque de taille (k Ă&#x2014; n), et H une matri e d'a tivation de taille (k Ă&#x2014;k), diagonale, dont les oe ients notĂŠs hi iâ&#x2C6;&#x2C6;[1..k] sont ompris dans l'intervalle [0, 1]. L'inverse de J a tivĂŠe par H est dĂŠnie par : X Y  hi XP J â&#x160;&#x2022;H = (6.65) Pâ&#x2C6;&#x2C6;P(k)

Remarque 3.2:

iâ&#x2C6;&#x2C6;P

On peut lĂ aussi vĂŠrier que ette solution orrespond Ă  la dĂŠnition intuitive dans

les as simple :  Si le ja obien

J

est omposĂŠ d'une seule ligne, alors la matri e inverse s'ĂŠ rit :

J â&#x160;&#x2022;H = hJ+ ave

H = [h].

 Si la matri e

J

est omposĂŠe de deux lignes (J

J â&#x160;&#x2022;H

= =

=



J1 J2

(6.66)



), alors l'inverse de

J

i h1 X{1} + h2 X{2} hh1 h2 X{1,2} + + + h1 J1 h2 J2 + h1 h2 X12

s'ĂŠ rit :

(6.67)

Cette dernière Êquation orrespond exa tement au but que nous avions xÊ en dÊbut de paragraphe dans l'Êquation (6.61).

Cet opĂŠrateur est intĂŠressant ar il permet de onserver la ontinuitĂŠ dans tous les as, omme nous allons le montrer dans la suite. NĂŠanmoins, il est oĂťteux Ă al uler. En eet, il nĂŠ essite le al ul k puis la somme pondĂŠrĂŠe des matri es de ouplage XP . Or es matri es sont au nombre de 2 . Le al ul de et opĂŠrateur est don en temps exponentiel. Cependant, e oĂťt se rĂŠduit ĂŠnormĂŠment de manière simple. En eet, il est tout d'abord gĂŠnĂŠralement possible de al uler les matri es de ouplage une seule fois en dĂŠbut d'asservissement, Ă  ondition que le ja obien soit onstant. Cette hypothèse est â&#x2C6;&#x2014; souvent valide, puisqu'on utilise gĂŠnĂŠralement J = J , la valeur du ja obien al ulĂŠ Ă  la position dĂŠsirĂŠe [Malis 04aâ&#x201E;&#x201E;. De plus, il n'est pas nĂŠ essaire de al uler la somme pour les primitives omplètement p a tives ou omplètement ina tives. Le al ul nĂŠ essite nalement 2 sommes de matri es, oĂš p est le nombre de primitives dans la zone de transition. Nous allons maintenant montrer que e nouvel opĂŠrateur respe te les spĂŠ i ations formelles donnĂŠes dans la dĂŠnition 6.3.1.

ThĂŠorème 6.3.1 (ContinuitĂŠ de l'opĂŠrateur J â&#x160;&#x2022;H )

L'opĂŠrateur d'inversion J â&#x160;&#x2022;H respe te les spĂŠ i ations des inverses ontinues donnĂŠes dans la dĂŠnition 6.3.1. Preuve: Les deux points sont prouvĂŠs sĂŠparĂŠment. Montrons tout d'abord que le nouvel opĂŠrateur orrespond Ă la pseudo-inverse hors de la zone de transition. On suppose que les oe ients de

H

sont binaires. On note

P

l'ensemble des oe ients non nuls de H. En utilisant les notations de la J â&#x160;&#x2022;H = J+ P . En utilisant (6.65), on peut ĂŠ rire :

dĂŠnition 6.3.2, on doit montrer que

J â&#x160;&#x2022;H = XP +

X

XQ

(6.68)

Q(P

XP = J+ P â&#x2C6;&#x2019;

P

Q(P XQ . En introduisant ette ÊgalitÊ dans (6.68), on + obtient nalement J = JP . Montrons maintenant que le nouvel opÊrateur est ontinu par rapport aux variations des oeOr, d'après (6.63), on sait que

â&#x160;&#x2022;H

ients de de

H.

H.

D'après la dÊnition des matri es de ouplage, ha une de matri es

Don , l'inverse (6.65) est simplement une forme polynomiale des

rapport Ă

H.

hi .

Xp

est indĂŠpendante

Elle est don ontinue par


132

Tâ hes à dimension variable

6.4 Loi de ommande Nous venons de onstruire un opĂŠrateur qui se omporte omme l'opĂŠrateur de pseudo-inverse tant qu'au une primitive ne se trouve dans la zone de transition entre a tivation et dĂŠsa tivation, et qui permet en mĂŞme temps d'assurer la ontinuitĂŠ de la ommande, Ă ondition que la matri e d'a tivation

H ĂŠvolue ontinĂťment. A partir de ette nouvelle inverse, on peut dĂŠnir la loi de ommande suivante : qË&#x2122; = J â&#x160;&#x2022;H eË&#x2122; â&#x2C6;&#x2014;q

(6.69)

D'après le thÊorème 6.3.1, la loi de ommande obtenue est ontinue quel que soit le nombre de primitive en ours d'a tivation ou de dÊsa tivation. De plus, ette loi de ommande se gÊnÊralise très intuitivement à la redondan e lassique, et permet d'obtenir expÊrimentalement de très bons rÊsultats. Malheureusement, il ne nous a pas ÊtÊ possible de valider thÊoriquement es rÊsultats. Nous allons dans e paragraphe prÊsenter un aperçu des travaux en ours pour valider thÊoriquement les travaux que nous venons de prÊsenter. Cette prÊsentation n'est pas rigoureuse, mais doit permettre de donner au le teur une meilleure vision d'ensemble des tâ hes à dimension variable.

6.4.1 StabilitĂŠ de la loi de ommande Tout d'abord, il ne nous a pour l'instant pas ĂŠtĂŠ possible de prouver la stabilitĂŠ asymptotique du système, pour garantir la onvergen e de la loi de ommande. La stabilitĂŠ est immĂŠdiate lorsque toutes les primitives sont a tivĂŠes durant tout l'asservissement, ar l'opĂŠrateur d'inverse ontinu est alors ĂŠgal Ă la pseudo-inverse lassique. Dans le as gĂŠnĂŠral, la stabilitĂŠ ne nous semble possible Ă  obtenir que dans le as oĂš la zone de dĂŠsa tivation des primitives est onfondue ave la zone de onvergen e, omme 'est par exemple le as de l'asservissement qualitatif, ou de l'asservissement vers une rĂŠgion prĂŠsentĂŠ dans [Cheah 05â&#x201E;&#x201E;. En eet, si une primitive dĂŠsa tivĂŠe n'a pas dĂŠjĂ  onvergĂŠ vers la onguration requise, il semble di ile de prouver qu'elle s'y rendra d'elle-mĂŞme. Nous espĂŠrons don pouvoir montrer la stabilitĂŠ et la stabilitĂŠ asymptotique de la loi de ommande proposĂŠe appliquĂŠe Ă  l'asservissement qualitatif. Pour ela, il est tout d'abord nĂŠ essaire de montrer la stabilitĂŠ lorsqu'une ou plusieurs primitives se trouvent dans la zone de transition. Ensuite, la stabilitĂŠ dans le as gĂŠnĂŠral devrait pouvoir s'obtenir Ă  l'aide des travaux sur les systèmes ommutants [Liberzon 99â&#x201E;&#x201E;.

6.4.2 GÊnÊralisation de la redondan e aux tâ hes à dimension variable Outre la preuve thÊorique de la stabilitÊ du système, un se ond point intÊressant est la gÊnÊralisation de la redondan e aux tâ hes à dimension variable. L'opÊrateur de proje tion ve toriel asso iÊ à la matri e ja obienne d'une tâ he à dimension variable n'est pas un andidat a eptable pour Êtendre la redondan e à e type d'asservissement. En eet, et opÊrateur est binaire, et ne permet pas de ompromis entre l'Êtat

le degrĂŠ de libertĂŠ est libre

et l'ĂŠtat

le degrĂŠ de libertĂŠ est ontraint. Lorsqu'une

primitive est dans la zone de transition, il est nÊ essaire de trouver un Êtat intermÊdiaire qui permette d'attÊnuer l'eet des tâ hes utilisant le degrÊ de libertÊ orrespondant sans les annuler brutalement. Intuitivement, on voudrait que, si une primitive est a tivÊe à la matri e d'a tivation vaut

0.2),

alors

80%

20% ( 'est-Ă -dire si

la valeur asso iĂŠe de

de la tâ he se ondaire utilisant le degrÊ de libertÊ asso iÊ

soient pris en ompte. Par analogie ave le proje teur utilisĂŠ dans la redondan e lassique, nous avons onstruit une matri e qui semble un bon andidat pour rĂŠaliser es spĂŠ i ations. Celle- i s'ĂŠ rit :

Pâ&#x160;&#x2022;H = I â&#x2C6;&#x2019; J â&#x160;&#x2022;H J

(6.70)

Cette matri e n'est pas un opÊrateur de proje tion ve torielle. En parti ulier, ses valeurs singulières ne sont pas binaires. La loi de ommande permettant de rÊaliser la tâ he à dimension variable tout


6.4

Loi de ommande

133

en appliquant au mieux une ommande se ondaire

z

s'é rit :

q˙ = J ⊕H e˙ ∗ + P⊕H z

(6.71)

Il serait intéressant de vérier théoriquement la validité de et opérateur pour étendre la redondan e aux tâ hes à dimension variable. Expérimentalement les propriétés requises semblent être obtenues. Tout d'abord, nous avons pu vérier que ses valeurs singulières orrespondent aux valeurs d'a tivation :

ave

H = Diag h1 , ..., hn

 n svd P⊕H = 1 − hi ,



o i ∈ [1, n]

(6.72)

. De plus, lorsqu'une primitive est omplètement a tivée, nous avons vérié

que la matri e annule les ommandes se ondaires agissant sur le degré de liberté asso ié, Inversement, lorsque la primitive est libre, la matri e ne modie pas la partie orrespondante de la ommande se ondaire. Par abus, nous appellerons don ette matri e proje teur sur l'espa e libre de la tâ he à dimension variable, bien qu'elle serve aussi à atténuer la ommande se ondaire sur les degrés de liberté orrespondant à des primitives en phase de transition. Ce proje teur permet de généraliser la redondan e à plusieurs tâ hes. Soit Alors, la ommande suivante permet d'appliquer la tâ he qualitative laissé libre par

eq

e2

une tâ he se ondaire.

et la tâ he

e2

dans l'espa e

sans provoquer de dis ontinuité :

q˙ = J ⊕H e˙ ∗q + P⊕H J2 P⊕H ave

eq

q˙1 = J ⊕H e˙ ∗q .

 +  ∗ e˙ 2 + J2 q˙1

(6.73)

Ce résultat nous paraît parti ulièrement intéressant ar il permet, à notre avis, de généraliser un résultat présenté dans [Chang 95℄ dans le adre de l'évitement des butées. La loi de ommande proposée dans [Chang 95℄ réalise

e

en atténuant les ommandes envoyées sur les arti ulations les plus

pro hes des butées. Elle est dénie par :

q˙ = W−1/2 JW−1/2

+

e˙ ∗

(6.74)

 W = Diag w1 , ..., wn est une matri e diagonale de poids utilisée pour réaliser l'évitement butées. Les poids wi sont dénis pro hes de 1 à l'intérieur du domaine arti ulaire (dans e as, on

de ne

pondère pas l'arti ulation) et tendent vers l'inni lorsqu'on se rappro he des butées (l'arti ulation est pondérée par une valeur forte qui interdit son utilisation). La loi de ommande peut se mettre sous la forme suivante :

q˙ = P JP ave

√ P= W

+

e˙ ∗

(6.75)

une matri e diagonale dont les oe ients sont nuls à proximité des butées, et valent

1 à l'intérieur du domaine arti ulaire. On onsidère maintenant

ejl = Hq la tâ he qualitative d'évitement de butée dénie au paragraphe

5.1.3, où q est le ve teur de positions arti ulaires et H est la matri e d'a tivation. Les seuils d'a tivation q ¯min , q ¯max sont xés égaux aux valeurs des butées hautes et basses. On onsidère la loi de ommande réalisant prioritairement la tâ he

ejl ,

ainsi que la tâ he

e

en utilisant la redondan e des arti ulations

qui ne sont pas en butées. La loi de ommande s'é rit don :

q˙ = −λJjl ⊕H ejl + P⊕H JP⊕H Si on xe à zéro le gain

+ 

e˙ ∗ + λJjl ejl



(6.76)

λ, la loi de ommande ne génère plus de mouvement pour s'éloigner des butées. P⊕H lors de l'inversion du ja obien as, on retrouve exa tement la loi de ommande (6.75). Le proje teur P⊕H est

Les butées sont uniquement prises en ompte par le proje teur de la tâ he

e.

Dans e

bien une matri e diagonale dont les oe ients sont nuls lorsque l'arti ulation orrespondante arrive en butée, et valent 1 à l'intérieur du domaine arti ulaire.


134

Tâ hes à dimension variable

Il semble don que le proje teur proposĂŠ soit apable d'apporter le lissage voulu. Un degrĂŠ de libertĂŠ est ĂŠvidement ontraint ou libĂŠrĂŠ selon que la primitive orrespondante est a tive ou non. Mais le proje teur est de plus apable d'attĂŠnuer la ommande se ondaire lorsque la primitive est dans la zone de transition, de manière Ă ontraindre ou libĂŠrer le degrĂŠ de libertĂŠ de manière progressive. Ce rĂŠsultat gĂŠnĂŠralise les travaux de Chang et Dubey [Chang 95â&#x201E;&#x201E;. Il permet en eet de dĂŠnir simplement une matri e de poids pour n'importe quelle ontrainte s'ĂŠ rivant sous la forme d'une tâ he, sans se limiter Ă  l'ĂŠvitement de butĂŠes arti ulaires. De plus, la loi de ommande (6.71) permet aussi de gĂŠnĂŠrer un mouvement ĂŠloignant le robot de l'obsta le, tout en attĂŠnuant le mouvement produit par la tâ he se ondaire en dire tion de l'obsta le. Finalement, la loi de ommande (6.71) se gĂŠnĂŠralise très bien Ă  la pile de tâ hes prĂŠsentĂŠe au hapitre 3. Il sut pour ela d'appliquer l'ĂŠquation de manière rĂŠ ursive, omme dans le as lassique.

6.4.3 Première expĂŠrien e : ontinuitĂŠ lors de la perte de visibilitĂŠ Nous allons maintenant montrer expĂŠrimentalement la validitĂŠ et l'intĂŠrĂŞt de ette loi de ommande et la omparer aux autres lois prĂŠsentĂŠes plus haut. Comme dans la première expĂŠrien e du paragraphe 5.1, nous onsidĂŠrons une tâ he d'asservissement visuel dont les primitives sont les points ara tĂŠristiques d'une ible visuelle. Par ontre nous ne onsidĂŠrons pas la ontrainte de visibilitĂŠ. Lors de grands mouvements de amĂŠra, ertains points sortent de l'image. Comme dans [Gar iaAra il 05â&#x201E;&#x201E;, nous dĂŠsa tivons alors es points de manière ontinue, et nous vĂŠrions alors l'eet sur la loi de ommande. La tâ he onsidĂŠrĂŠe est omposĂŠe de

k

primitives. Elle s'ĂŠ rit :



  e=   oÚ

pi = (xi , yi )

x1 â&#x2C6;&#x2019; xâ&#x2C6;&#x2014;1 y1 â&#x2C6;&#x2019; y1â&#x2C6;&#x2014; ... xk/2 â&#x2C6;&#x2019; xâ&#x2C6;&#x2014;k/2 â&#x2C6;&#x2014; yk/2 â&#x2C6;&#x2019; yk/2

     

sont les oordonnĂŠes d'un point dans l'image.

La tâ he à dimension variable asso iÊe est notÊe

eq

:

eq = He Les oe ients de la matri e diagonale

H

sont notĂŠs

hi ,

(6.78) et dĂŠnis par :

h2i = h2i+1 = min(hx (xi ), hy (yi )) oĂš

hx

et

hy

(6.77)

(6.79)

sont les fon tions d'a tivation orrespondant respe tivement aux oordonnĂŠes horizon-

tales et verti ales des points. Pour imposer une zone d'a tivation omplète Ă l'intĂŠrieur de l'image, nous hoisissons une fon tion d'a tivation similaire Ă  elle proposĂŠe dans la partie 5.1, et lĂŠgèrement diĂŠrente de elle utilisĂŠe originellement dans [Gar iaAra il 05â&#x201E;&#x201E;. En eet, dans e papier, la fon tion d'a tivation n'est jamais ĂŠgale Ă  1, 'est-Ă -dire qu'il n'existe pas de zone d'a tivation omplète. Or, pour valider l'utilisation de l'inverse ontinue, il est prĂŠfĂŠrable d'avoir Ă  la fois une zone de dĂŠsa tivation et une zone d'a tivation. NĂŠanmoins, les deux fon tions restent similaires, la forme gĂŠnĂŠrale et la rĂŠpartition sur l'image sont les mĂŞmes. La fon tion que nous utilisons s'ĂŠ rit :

 1      0   + hx (x) = x â&#x2C6;&#x2019; (ÂŻ x â&#x2C6;&#x2019; β ) f x β x        fβx (ÂŻ xâ&#x2C6;&#x2019; + βx ) â&#x2C6;&#x2019; x

si si si si

xÂŻâ&#x2C6;&#x2019; + βx â&#x2030;¤ x â&#x2030;¤ x ÂŻ + â&#x2C6;&#x2019; βx â&#x2C6;&#x2019; x â&#x2030;Ľ xÂŻ ou x â&#x2030;¤ x ÂŻâ&#x2C6;&#x2019; xÂŻ+ â&#x2C6;&#x2019; βx â&#x2030;¤ x â&#x2030;¤ x ÂŻ+

xÂŻâ&#x2C6;&#x2019; â&#x2030;¤ x â&#x2030;¤ x ÂŻ â&#x2C6;&#x2019; + βx

(6.80)


6.4

Loi de ommande

135

â&#x2C6;&#x2019;200

0

200

400 â&#x2C6;&#x2019;300 â&#x2C6;&#x2019;200 â&#x2C6;&#x2019;100 0 100 200 300

1.0 0.75 0.5 0.25

Fig. 6.4 

Fon tion d'a tivation

hi

utilisĂŠe lors des expĂŠrien es. La fon tion d'a tivation vaut

1

( omplètement

a tivĂŠe) lorsque le point est loin du bord de l'image, et s'annule ( omplètement dĂŠsa tivĂŠe) lorsque le point rejoint le bord de l'image. La fon tion est tra ĂŠe ave les paramètres suivants : x ÂŻ+ = â&#x2C6;&#x2019;ÂŻ xâ&#x2C6;&#x2019; = 320, yÂŻ+ = â&#x2C6;&#x2019;ÂŻ y â&#x2C6;&#x2019; = 240 et

βx = βy = 0.5.

oĂš

[ÂŻ xâ&#x2C6;&#x2019; , x ÂŻ+ ]

est l'intervalle horizontal de l'image, βx permet de ongurer la longueur de l'intervalle fβ est la fon tion C â&#x2C6;&#x17E; dĂŠjĂ utilisĂŠe pour l'asservissement qualitatif :

de transition et

fβ (x) = La fon tion

hy

 β 1 1 1 + tanh( â&#x2C6;&#x2019; ) 2 x 1 â&#x2C6;&#x2019; x/β

(6.81)

est dÊnie de la même manière. La fon tion est reprÊsentÊe sur la gure 6.4.

Plusieurs sÊries d'expÊrien es ont ÊtÊ rÊalisÊes, en onsidÊrant su essivement des tâ hes non redondantes, totalement redondantes ou simplement redondantes. Pour haque as, nous omparons les rÊsultats de l'utilisation des lois (6.31), (6.33) et (6.35) ave elle de la loi proposÊe (6.69).

ExpÊrien e 1-1 : tâ he non redondante Pour ette expÊrien e, nous onsidÊrons deux points ara tÊristiques de la ible visuelle. La dimension de la tâ he et le rang du ja obien sont Êgaux et valent quatre. La tâ he est don non redondante. La position initiale est hoisie de manière à e qu'un des deux points soit hors de l'image. Nous Êtudions la ontinuitÊ de la loi de ommande lorsque le point rentre dans l'image. L'expÊrien e est rÊsumÊe sur les gures 6.5 à 6.9. On ompare tout d'abord les deux lois de ommande (6.31) et (6.32). On a montrÊ dans le thÊorème 6.2.2 que les deux lois sont Êgales pour les as non redondants. On vÊrie que les deux lois de ommande (6.31) et (6.32) prÊsentÊes gures 6.5(a) et 6.5(b) sont bien identiques. L'a ÊlÊration demandÊe au robot lorsque la ommande (6.32) est envoyÊe est tra Êe sur la gure 6.6. Un pi apparaÎt lorsque la primitive entre dans l'image. Les lois (6.31), (6.32), (6.35) et (6.69) sont omparÊes de manière synthÊtique sur la gure 6.7. On remarque que les ommande (6.31) et (6.32) sont ee tivement in apables d'assurer la ontinuitÊ, et induisent un pi d'a ÊlÊration que le robot ne sera pas apable de suivre. En jouant sur le seuil

Ρ

des

moindres arrĂŠs amortis, on peut rĂŠussir Ă obtenir un omportement ontinu de la loi de ommande (6.35). On voit i i l'importan e du hoix de

Ρ.

Ce seuil se règle au as par as, et est en pratique

très di ile à hoisir. Enn, la loi de ommande (6.69) assure une bonne ontinuitÊ de la vitesse du


136

Tâ hes à dimension variable

−4

−4

12

x 10

12 Tx Ty Tz Rx Ry Rz

10

8

4

4 Vitesses

6

2

2

0

0

−2

−2

−4

−4

−6

−6

−8

0

500

1000

1500

2000

Tx Ty Tz Rx Ry Rz

10

6

−8

2500

0

500

1000

Iterations

1500

2000

Iterations

(a) Loi de ommande (6.31)

(b) Loi de ommande (6.32)

Fig. 6.5  Expérien e 1-1 : vitesse de l'organe terminal du robot sur lequel est montée la améra. Une dis ontinuité

importante apparaît à l'itération

250,

lorsque le deuxième point entre dans l'image.

−4

8

x 10

Tx Ty Tz Rx Ry Rz

6 4 2 Accelerations

Vitesses

8

x 10

0 −2 −4 −6 −8 −10 −12

0

500

1000

1500

2000

2500

Iterations

Fig. 6.6 

Expérien e 1-1 : A élérations du robot lorsque la loi de ommande (6.32) est utilisée. Un pi d'a é-

lération important apparaît lorsque le se ond point est a tivé (itération

250).

2500


6.4

Loi de ommande

137

robot. L'a ÊlÊration produite ne prÊsente au un pi . La vitesse du robot lorsque (6.69) est utilisÊe est donnÊe gure 6.8. Enn, la traje toire des points dans l'image est donnÊe sur la gure 6.9. En utilisant (6.32), la traje toire hange brutalement dès que le robot entre dans l'image. Au ontraire, lorsque (6.69) est

H. La Ρ est hoisie,

utilisĂŠe, la traje toire hange au milieu de la zone de transition en suivant les variations de traje toire obtenue est plus lisse. Enn, on note que, lorsqu'une valeur trop importante de

la loi de ommande (6.35) est in apable de onverger vers la position dÊsirÊe. Ce problème illustre de nouveau la di ultÊ de hoisir

Ρ

orre tement.

ExpÊrien e 1-2 : Os illations dues à la dis ontinuitÊ Cette expÊrien e est prÊsentÊe pour mettre en Êviden e les problèmes qui surgissent en pratique lorsqu'on utilise une loi de ommande non ontinue. Dans le as prÊsent, le robot exÊ ute une tâ he non redondante. Lorsque les lois de ommande lassiques sont utilisÊes, le robot entre en os illation lorsqu'un point quitte l'image et est dÊsa tivÊ. L'os illation est rÊsolue si une loi de ommande ontinue est utilisÊe. L'expÊrien e est rÊsumÊe sur les gures 6.10 à 6.14. Comme pour l'expÊrien e prÊ Êdente, on onsidère un asservissement sur deux points. La tâ he est de dimension et de rang 4. Le dÊpla ement demandÊ est prin ipalement une rotation autour de l'axe

Z

de la amĂŠra. Lors de ette rotation, le point

P2

quitte le hamp de vue de la amĂŠra ( f.

gure 6.10). A e point de l'asservissement, si les deux points sont onsidĂŠrĂŠs, la loi de ommande a tendan e Ă faire sortir

P2

de l'image. Au ontraire, si on ne onsidère plus le point sortant, alors la

ommande est prin ipalement un mouvement

pan-tilt

de la amĂŠra, qui a tendan e Ă faire rentrer

P2

dans l'image. Une os illation apparaÎt alors, ausÊe par l'opposition de es deux mouvements : si le point sort, il est dÊsa tivÊ, e qui a tendan e à le faire rentrer ... Si on utilise une des trois ommandes (6.31), (6.32) ou (6.33), des os illations apparaissent dès que le point arrive au bord de l'image, omme le montre la gure 6.11. En ongurant le seuil

Ρ,

on peut

rĂŠussir Ă lisser susamment la ommande (6.35) pour faire disparaĂŽtre les os illations. La gure 6.12 montre les os illations de la fon tion d'a tivation en fon tion du seuil

Ρ.

ExpĂŠrimentalement, nous 10â&#x2C6;&#x2019;3 .

avons onstatĂŠ que les os illations ĂŠtaient supprimĂŠes pour un seuil supĂŠrieur Ă

L'introdu tion de la ommande (6.69) permet de lisser la ommande et ainsi de faire disparaĂŽtre les os illations. Une omparaison des a ĂŠlĂŠrations du robot en utilisant les loi de ommande (6.35) et (6.69) est donnĂŠe sur la gure 6.13. On onstate que la loi de ommande (6.69) assure une ontinuitĂŠ meilleure qu'au une des ongurations

Ρ

hoisie pour (6.35). La vitesse du robot lors de l'asservisse-

ment est donnĂŠe sur la gure 6.14. La ourbe est lisse, au une os illation n'apparaĂŽt lorsque le point sort de l'image.

ExpÊrien e 1-3 : tâ he totalement redondante La tâ he est maintenant omposÊe de

14

primitives ( 'est-Ă -dire sept points). Elle est totalement

redondante tout au long de l'expÊrien e. L'expÊrien e est rÊsumÊe sur les gures 6.15, 6.16 et 6.17. Les traje toires des points dans l'image sont donnÊes sur la gure 6.15. La traje toire de la amÊra est donnÊe sur la gure 6.16. On vÊrie que le omportement du robot est dis ontinu lorsque la ommande (6.31) est utilisÊe. Par ontre, le omportement est lisse lorsque les ommandes (6.32), (6.35) ou (6.69) sont utilisÊes. On vÊrie bien que les deux ommandes (6.32) et (6.35) sont Êquivalentes, omme attendu. En eet, il n'y a pas i i de dis ontinuitÊ à lisser, l'eet du fa teur d'amortissement n'est don pas très important. On vÊrie aussi que es deux lois de ommande produisent un omportement Êquivalent à elui obtenu ave la nouvelle loi de ommande (6.69). Même si nous n'avons au une preuve de la similaritÊ des omportements, e point s'est vÊriÊ lors des expÊrien es. Lorsqu'au une dis ontinuitÊ n'apparaÎt, la ommande (6.69) est très pro he des ommandes lassiques (6.32) ou (6.35), omme on peut le voir sur la gure 6.17.


138

Tâ hes à dimension variable

â&#x2C6;&#x2019;2

â&#x2C6;&#x2019;2

10

â&#x2C6;&#x2019;4

10

Accelerations

Accelerations

10

â&#x2C6;&#x2019;6

10

â&#x2C6;&#x2019;8

10 0

100

200 300 400 Loi de commande (6.31)

500

0

â&#x2C6;&#x2019;2

500

10

â&#x2C6;&#x2019;4

10

Accelerations

Accelerations

100 200 300 400 Loi de commande (6.32)

â&#x2C6;&#x2019;2

10

â&#x2C6;&#x2019;6

10

â&#x2C6;&#x2019;8

â&#x2C6;&#x2019;4

10

â&#x2C6;&#x2019;6

10

â&#x2C6;&#x2019;8

10

10 0

100 200 300 400 Loi de commande (6.35), Ρ =1eâ&#x2C6;&#x2019;9

500

0

â&#x2C6;&#x2019;2

100 200 300 400 500 Loi de commande(6.35), Ρ =1eâ&#x2C6;&#x2019;4

â&#x2C6;&#x2019;2

10

10

â&#x2C6;&#x2019;4

10

Accelerations

Accelerations

â&#x2C6;&#x2019;6

10

â&#x2C6;&#x2019;8

10

â&#x2C6;&#x2019;6

10

â&#x2C6;&#x2019;8

Tx Ty Tz Rx Ry Rz

â&#x2C6;&#x2019;4

10

â&#x2C6;&#x2019;6

10

â&#x2C6;&#x2019;8

10

10 0

Fig. 6.7 

â&#x2C6;&#x2019;4

10

100 200 300 400 Loi de commande (6.35), Ρ =1

500

0

100 200 300 400 Loi de commande (6.69)

500

ExpĂŠrien e 1-1 : Comparaison de l'a ĂŠlĂŠration induite par l'utilisation des lois de ommande (6.31),

(6.32), (6.35) (ave plusieurs hoix diÊrents du paramètre situe à l'itÊration

250,

Ρ ),

et (6.69). La partie intĂŠressante de es graphes se

lorsque le se ond point est a tivĂŠ. Nous n'avons don reprĂŠsentĂŠ que l'intervalle

[0, 500].

Les deux lois de ommande (6.31) et (6.32) sont in apables d'assurer la ontinuitĂŠ. La ontinuitĂŠ de la loi de omâ&#x2C6;&#x2019;4 mande (6.35) varie selon le hoix de Ρ . Un bon ompromis est obtenue pour Ρ = 10 . La loi de ommande (6.69) permet aussi une très bonne ontinuitĂŠ, sans rĂŠel pi d'a ĂŠlĂŠration.


6.4

Loi de ommande

139

−4

8

x 10

Tx Ty Tz Rx Ry Rz

6

4

Vitesses

2

0

−2

−4

−6

−8

0

500

1000

1500 Iterations

2000

2500

3000

Fig. 6.8  Expérien e 1-1 : vitesse exprimées dans le repère améra lorsque la loi de ommande (6.69) est utilisée.

La loi de ommande est ontinue.

0 20 40 60

2

Y

80 100 120 140 160

Bord de l’image Frontiere d’activation Position initiale Position finale Loi de commande (6.35) (η=1) Loi de commande (6.32) Loi de commande (6.69)

1

180 200 80

100

120

140

160

180

200

220

240

260

280

X

Fig. 6.9 

Expérien e 1-1 : traje toires des points dans l'image. Au lan ement de l'asservissement, le point 2

est situé hors de l'image. Les deux positions désirées sont situées dans la zone d'a tivation omplète. La loi de ommande (6.35) est in apable de rejoindre la position désirée lorsqu'une valeur trop grande de

η

est hoisie,

à ause de la trop forte atténuation des moindres arrés qui perturbe la onvergen e. Par ontre, les deux lois de ommande (6.32) et (6.69) parviennent à rejoindre la position désirée. La traje toire obtenue ave la loi de ommande (6.32) présente des points d'inexion très marqués, au moment où le point entre dans l'image. Au ontraire, la traje toire obtenue ave la loi de ommande (6.69) est lisse.


140

Tâ hes à dimension variable

Bord de lâ&#x20AC;&#x2122;image Frontiere dâ&#x20AC;&#x2122;activation Position initiale Position finale Loi de commande (6.35) (Ρ=1) Loi de commande (6.31) Loi de commande (6.35) (Ρ=1eâ&#x2C6;&#x2019;3 ) Loi de commande (6.69)

200 180

1

160

Y

140 120 100 80

2 60 40 50

100

150

200

250

300

X

Fig. 6.10 

ExpĂŠrien e 1-2 : traje toire des points dans l'image. Le mouvement que doit ee tuer la amĂŠra est + Ď&#x20AC;2 . En utilisant la loi de ommande (6.32), le point 2 sort de l'image. La dis ontinuitĂŠ de la loi de ommande fait alors entrer le robot en os illation : le point prin ipalement une rotation autour de son axe optique d'un angle de

os ille autour de la frontière d'a tivation. L'asservissement n'est pas apable de onverger. Si les lois de ommande (6.35) ou (6.69) sont utilisÊes, l'asservissement onverge vers la position dÊsirÊe, et au une os illation n'apparaÎt. Si une valeur trop grande de

Ρ

est hoisie lors du al ul de la loi de ommande (6.35), la traje toire des points est

mauvaise, et l'asservissement met ĂŠnormĂŠment de temps Ă onverger.


6.4

Loi de ommande

141

â&#x2C6;&#x2019;3

Vitesses

x 10 5 0 â&#x2C6;&#x2019;5

0

100

200

300

400 500 600 700 Loi de commande (6.31)

800

900

1000

100

200

300

400 500 600 700 Loi de commande (6.32)

800

900

1000

â&#x2C6;&#x2019;3

Vitesses

x 10 5 0 â&#x2C6;&#x2019;5

0

Tx Ty Tz Rx Ry Rz

â&#x2C6;&#x2019;3

Vitesses

x 10 5 0 â&#x2C6;&#x2019;5

0

100

200

300

400 500 600 700 Loi de commande (6.35)

800

900

1000

Fig. 6.11  ExpĂŠrien e 1-2 : vitesses envoyĂŠes au robot en utilisant les lois de ommandes (6.31), (6.32) et (6.35).

Des os illations apparaissent quand le point 2 rejoint le bord de l'image (Ă l'itĂŠration

100).

0

10

â&#x2C6;&#x2019;2

10

â&#x2C6;&#x2019;4

10

â&#x2C6;&#x2019;6

H

10

â&#x2C6;&#x2019;8

10

â&#x2C6;&#x2019;10

10

Loi de commande (6.32) Ρ=1eâ&#x2C6;&#x2019;6 Loi de commande (6.35) Ρ=1eâ&#x2C6;&#x2019;15

â&#x2C6;&#x2019;12

â&#x2C6;&#x2019;9

Loi de commande (6.35) Ρ=1e

10

Loi de commande (6.35) Ρ=1eâ&#x2C6;&#x2019;6 â&#x2C6;&#x2019;3

Loi de commande (6.35) Ρ=1e

â&#x2C6;&#x2019;14

10

Loi de commande (6.35) Ρ=1eâ&#x2C6;&#x2019;2 100

Fig. 6.12 

200

300

400

500 Iterations

600

700

800

900

1000

ExpĂŠrien e 1-2 : valeur du oe ient d'a tivation orrespondant au point 2, en utilisant la loi de

ommande (6.32) et la loi de ommande (6.35) ave plusieurs valeurs diĂŠrentes de oe ient os ille, et ne parvient pas Ă onverger vers la valeur d'une valeur dĂŠpendant de

Ρ.

1.

Ρ.

Lorsque (6.32) est utilisĂŠ, le

Ave (6.35), les os illations apparaissent autour

Mais le fa teur d'amortissement parvient Ă attĂŠnuer les os illations au bout d'un

ertain temps, et la loi de ommande parvient Ă faire rentrer le point dans l'image (le oe ient onverge vers la valeur 1). Si

Ρ

est susamment grand, les os illations disparaissent.


142

Tâ hes à dimension variable

−4

x 10

Loi de commande (6.35), η = 1e−3 10

Norme de l’acceleration

5 0 Loi de commande (6.35), η = 1e−2 10 5 0 Loi de commande (6.69) 10 5 0 0

100

200

300

400

500

600

Fig. 6.13  Expérien e 1-2 : Comparaison de l'a élération induite par les lois de ommande (6.35) et (6.69). Plus

η

est grand, plus la loi de ommande (6.35) est lisse. D'un autre té, l'exé ution obtenue ave (6.69) n'est pas

moins lisse, et ne né essite pas de réglage du paramètre

η.

−3

10

x 10

Tx Ty Tz Rx Ry Rz

8

Vitesses

6 4 2 0 −2 −4

Fig. 6.14 

ontinue.

0

200

400

600 800 Iterations

1000

1200

1400

Expérien e 1-2 : vitesses obtenues en utilisant la loi de ommande (6.69). La loi de ommande est


6.4

Loi de ommande

143

250

250

200

200

1 7

150 100

2

3

4

6

2

3 6

4 5

50

0

0 0

100 200 300 Loi de commande (6.31)

400

250

0

100 200 300 Loi de commande (6.32)

400

250

200

200

1 7

150 100

2

3

4

1

150 100

6

2

5

50

0

7

3

4

6 5

0

Fig. 6.15 

7

100

5

50

1

150

100 200 300 Loi de commande (6.35)

400

Bord de l’image Front.0 activation Position initiale Position0 finale Trajectoire

200 300 Loi de commande (6.69)

400

Expérien e 1-3 : traje toire des points dans l'image en utilisant les lois de ommande (6.31), (6.32),

(6.35) et (6.69). Des hangements de traje toire abruptes apparaissent lorsque la loi de ommande (6.31) est utilisée. Les trois autres lois de ommande permettent d'obtenir des traje toires lisses.

0

−0.05

−0.1

−0.15

−0.2

−0.25

0.2 0 −0.2

−0.1

−0.05

0

Commande(6.31) Commande (6.32) Commande (6.35) Commande (6.69) Position intiale Position desiree

0.05

0.1

Fig. 6.16  Expérien e 1-3 : traje toire de la améra dans l'espa e artésien en utilisant les lois de ommande (6.31),

(6.32), (6.35) et (6.69). La traje toire obtenue ave (6.31) est heurtée. Les traje toires obtenues ave les trois autres lois de ommande sont similaires. Elles sont lisses et ne présentent pas de hangement de traje toire remarquable.


144

Tâ hes à dimension variable

20

x 10

â&#x2C6;&#x2019;3

Vitesses

15 10 5 0 â&#x2C6;&#x2019;5

20

0 x 10

200

400

600 800 Loi de commande (6.35)

1000

200

400

600 800 Loi de commande (6.69)

1000

Tx 1200 Ty Tz Rx Ry Rz

â&#x2C6;&#x2019;3

Vitesses

15 10 5 0 â&#x2C6;&#x2019;5

Fig. 6.17 

0

1200

ExpĂŠrien e 1-3 : omparaison des vitesses obtenues ave les lois de ommande (6.35) et (6.69). Les

vitesses sont presque ĂŠgales. Les deux lois de ommande peuvent ĂŞtre onsidĂŠrĂŠes omme ĂŠtant ĂŠquivalentes.

ExpÊrien e 1-4 : perte de rang pendant l'asservissement Enn, la dernière expÊrien e permet de faire une synthèse des trois expÊrien es prÊ Êdentes. Huit points sont onsidÊrÊs. La tâ he omplète est don totalement redondante. Au ours de l'asservissement, un grand nombre de points sortent de l'image. La tâ he devient su essivement redondante puis non redondante. On observe les diÊren es de omportement des diÊrentes lois de ommande. L'expÊrien e est rÊsumÊe sur les gures 6.18 à 6.21. Le dÊpla ement requis est prin ipalement une rotation autour de l'axe

Z

de la amĂŠra. Cette

rotation provoque une avan Êe de la amÊra vers la ible, e qui fait sortir un grand nombre de points du hamp de vue. Lors de la phase de onvergen e nale, les points rentrent dans le hamp de vue et sont rÊa tivÊs. On onsidère tout d'abord les rÊsultats obtenus ave la loi de ommande (6.32). A l'itÊration

150,

deux points seulement restent dans le hamp de vue ( f. 6.18). La tâ he est alors non redondante. Comme dans l'expÊrien e 6.4.3, la dis ontinuitÊ lors de l'a tivation de e point fait alors entrer le système en os illation. MalgrÊ l'os illation, un quatrième point entre dans l'image et est a tivÊ. La tâ he devient alors totalement redondante, le lissage de la matri e

H

est de nouveau pris en ompte

et l'os illation esse. L'exÊ ution obtenue est très ha hÊe. De nombreuses dis ontinuitÊs sont visibles dans la traje toire des points, orrespondant à haque fois à un hangement brutal de traje toire du robot. La vitesse du robot, prÊsentÊe gure 6.19, ontient de nombreux pi s, en plus des os illations sur une pÊriode de 200 itÊrations. Au ontraire, en utilisant la ommande (6.69), ou en hoisissant bien le paramètre

Ρ

de la om-

mande (6.35), l'exĂŠ ution est lisse. La gure 6.20 ompare les performan es en utilisant (6.69) ou en hoisissant diĂŠrents seuils de

Ρ.

Les vitesses obtenues ave es deux ommandes sont omparĂŠes sur

la gure 6.21. Une fois de plus, la ommande (6.69) permet d'obtenir un ontrle aussi lisse que elui obtenu en hoisissant orre tement le paramètre

Ρ.

Enn, les traje toires dans l'image en utilisant la ommande (6.69) sont tra ĂŠes sur la gure 6.22. Le s hĂŠma global est similaire Ă elui obtenu ave la ommande (6.32) et prĂŠsentĂŠ gure 6.18. En fait,


6.4

Loi de ommande

145

Bord de l’image Frontiere activation Position initiale Position finale Trajectoire Trajectoire Point 3

0 50

8

5 2 7

Y

100

6

150

4 200

3

1

250 300 0

50

100

150

200

250

300

350

X Fig. 6.18 

Expérien e 1-4 : traje toires des points dans l'image en utilisant la loi de ommande (6.32). Lorsque

le point 3 entre dans l'image, la loi de ommande se met à os iller. Le point os ille autour de la frontière de désa tivation.

−3

6

x 10

Tx Ty Tz Rx Ry Rz

4

Vitesses

2 0 −2 −4 −6

0

500

1000

1500 2000 Iterations

2500

3000

3500

Fig. 6.19  Expérien e 1-4 : vitesses du robot lorsque la loi de ommande (6.32) est utilisée. La loi de ommande

est ontinue et lisse jusqu'à e que quatre points soient hors de l'image (itération redondante, et la ontinuité assurée par la fon tion d'a tivation est dis ontinue. A l'itération

500,

H

230).

La tâ he n'est alors plus

n'est plus prise en ompte. La loi de ommande

le point 3 entre dans l'image. La dis ontinuité lors de l'a tivation du point

provoque des os illations. Les os illations s'arrêtent lorsqu'un autre point est a tivé (itération alors de nouveau omplètement redondante et la loi de ommande redevient ontinue.

650).

La tâ he est


146

Tâ hes Ă dimension variable â&#x2C6;&#x2019;3

â&#x2C6;&#x2019;3

x 10

1

1

0.5 Accelerations

Accelerations

0.5

0

â&#x2C6;&#x2019;0.5

â&#x2C6;&#x2019;1

0

â&#x2C6;&#x2019;0.5

0

5 Accelerations

x 10

x 10

â&#x2C6;&#x2019;4

100 200 300 400 Loi de commande (6.35), Ρ = 1eâ&#x2C6;&#x2019;6

500

0

100 200 300 400 Loi de commande (6.35), Ρ = 1eâ&#x2C6;&#x2019;2

0 â&#x2C6;&#x2019;4

5

0

â&#x2C6;&#x2019;5

â&#x2C6;&#x2019;1

500

100 200 300 400 Loi de commande (6.35), Ρ= 1eâ&#x2C6;&#x2019;3

500

100

500

x 10

Tx Ty 0 Tz Rx Ry â&#x2C6;&#x2019;5 Rz 0

200 300 400 Loi de commande (6.69)

Fig. 6.20  ExpĂŠrien e 1-4 : Comparaison des a ĂŠlĂŠrations induites par la loi de ommande (6.35) ave plusieurs

valeurs diĂŠrentes de

Ρ,

et de la loi de ommande (6.69).

les deux ommandes sont pro hes lorsque susamment de points sont a tivÊs. Par ontre, lorsqu'on onsidère les dÊtails de l'exÊ ution, la traje toire obtenue ave la ommande (6.69) est bien meilleure. Les diÊren es prin ipales apparaissent lors de l'a tivation d'un point. Le hangement de traje toire est alors plus lisse. On onstate aussi ette même diÊren e au niveau du omportement du robot.

Con lusions de la première expÊrien e Cette première sÊrie d'expÊrien es a permis de valider la nouvelle ommande que nous avons proposÊe. Celle- i permet d'obtenir un bon omportement du robot lors de l'appli ation d'une tâ he à dimension variable redondante, totalement redondante ou non redondante. Nous avons pu vÊrier, de plus, que le omportement de ette loi de ommande est très similaire au omportement des lois lassiques lorsque elles- i sont ontinues. En parti ulier, on obtient un omportement Êquivalent à elui de la loi (6.35) bien ongurÊe, sans pour ela avoir besoin de hoisir le seuil

Ρ.


6.4

Loi de ommande

147

−3

6

x 10

Tx Ty Tz Rx Ry Rz

4

Vitesses

2 0 −2 −4 −6

0

500

1000

1500 2000 Iterations

2500

3000

3500

(a) Loi de ommande (6.35), η = 10−2 −3

6

x 10

Tx Ty Tz Rx Ry Rz

4

Vitesses

2 0 −2 −4 −6

0

500

1000

1500 2000 Iterations

2500

3000

3500

(b) Loi de ommande (6.69) Fig. 6.21  Expérien e 1-4 : Comparaison des vitesses obtenues ave les lois de ommande (6.35) et (6.69). Lorsque

la tâ he n'est pas redondante (entre les itérations exé ution bien plus lisse.

200

et

650),

la se onde loi de ommande permet d'obtenir une


148

Tâ hes à dimension variable

0

Bord de lâ&#x20AC;&#x2122;image Front. dâ&#x20AC;&#x2122;activation Position initiale Position finale Trajectoires

50

85 2

Y

100

7 6

150

4 200

3

1

250

300 0

50

100

150

200

250

300

350

X Fig. 6.22 

ExpĂŠrien e 1-4 : traje toires des points dans l'image en utilisant la loi de ommande (6.69). Les

traje toires sont lisses. La forme gÊnÊrale des traje toires est similaire à elles prÊsentÊes sur la gure 6.18, sauf à la frontière de l'image, lors des hangement d'a tivation. On remarque aussi que la traje toire du point 3 ne prÊsente pas i i d'os illation.

6.4.4 Se onde expÊrien e : Êvitement de butÊes L'opÊrateur d'inversion permet de proposer une extension du formalisme de la redondan e. L'expÊrien e suivante permet de valider la nouvelle loi de ommande pour la rÊalisation de deux tâ hes. Nous nous replaçons dans le même ontexte expÊrimental que dans la deuxième expÊrien e du hapitre prÊ Êdent, prÊsentÊe dans la se tion 5.2.1. La tâ he

ep

Ă rĂŠaliser est le positionnement de la amĂŠra en

utilisant les moments de l'image. Les butÊes arti ulaires sont prises en ompte lors de l'asservissement en utilisant la tâ he qualitative d'Êvitement de butÊes

ejl

prĂŠsentĂŠe dans la se tion 5.1.3.

Les deux lois de ommande omparÊes sont donnÊes par (6.32) et (6.71). La tâ he

ejl est prioritaire. ep . Elle est

Cela permet de garantir le respe t de la ontrainte d'Êvitement. La tâ he se ondaire est

rĂŠalisĂŠe Ă ondition que la position dĂŠsirĂŠe se trouve Ă  l'intĂŠrieur de la zone oĂš toutes les primitives de

ejl

sont ina tives. Comme dans l'expĂŠrien e 5.1.3, le mouvement Ă rĂŠaliser est prin ipalement une

rotation autour de la ible. Ce mouvement onduit le robot Ă sortir de son espa e arti ulaire si les butĂŠes ne sont pas prises en ompte, omme le montre la gure 6.23. On ompare alors l'asservissement obtenue en utilisant la matri e pseudo-inverse et la matri e inverse ontinue pour al uler la loi de ommande. Lorsque la pseudo-inverse est utilisĂŠ, une primitive de

ejl

est entièrement a tivÊe dès que le robot fran hi le seuil de dÊsa tivation. Il n'y a en eet pas

de transition entre a tivation et dÊsa tivation, puisque la tâ he

ejl

n'est pas redondante. Dès que le

robot fran hit ette limite, le degrĂŠ de libertĂŠ orrespondant ne peut plus ĂŞtre utilisĂŠ par

ep ,

et le

robot est repoussÊ vers l'intÊrieur de son domaine arti ulaire par la tâ he prioritaire. La limite de dÊsa tivation est de nouveau rapidement fran hie, et la primitive orrespondante de la tâ he

ejl

est

dÊsa tivÊe. Cet en haÎnement se reproduit rapidement et entraÎne des os illations parfaitement visible sur la gure 6.24. Ces os illations se retrouvent sur la traje toire du robot. Le robot os ille à la limite de la zone de dÊsa tivation. La traje toire est très heurtÊe, et le omportement du robot très peu satisfaisant. Au ontraire, lorsque l'inverse ontinue est utilisÊe, la loi de ommande est ontinue, et ne prÊsente au une os illation, omme on peut le voir sur la gure 6.24. La traje toire du robot est lisse. Comme on pouvait s'y attendre, le robot ne s'arrête pas à la frontière de la zone de dÊsa tivation. En eet, le degrÊ de libertÊ orrespondant à une arti ulation pro he des butÊes n'est pas interdit tant que la primitive orrespondante de

ejl

n'est pas omplètement a tivÊe. Au ontraire, le robot peut s'enfon er

dans la zone de transition. Plus il s'appro he de la butÊe, plus la tâ he

ejl

le pousse Ă retourner vers


6.4

Loi de ommande

149

Position initiale −0.85 Position finale

−0.9

−0.95

Limite d’activation Butee articulaire Sans evitement Pseudo inverse Inverse continue

−1 −0.6

Fig. 6.23 

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

Se onde expérien e : traje toire de la améra sans prendre en ompte les butées ( ourbe noire), en

utilisant la pseudo-inverse pour le al ul de la loi de ommande ( ourbe jaune) et en utilisant l'inverse ontinue ( ourbe bleue). La pseudo-inverse entraîne des os illations à la frontière de désa tivation des butées. Au ontraire, l'utilisation de l'inverse ontinue permet d'obtenir une traje toire lisse, tout en garantissant l'évitement de butées.

l'intérieur du domaine arti ulaire, et plus la tâ he se ondaire est limitée dans l'utilisation de ette arti ulation. On vérie bien que le robot s'arrête avant de tou her la butée, omme nous le garantit la onstru tion de la loi de ommande. Enn, la gure 6.25 présente l'évolution de l'erreur de la tâ he

ep

pendant l'asservissement. En

s'a tivant brutalement, et en introduisant des os illations dans la loi de ommande, l'utilisation de la pseudo-inverse entraîne une large perturbation de la tâ he se ondaire

ep . Au ontraire, lorsque l'inverse

ontinue est utilisée, la perturbation est moins forte. Elle n'est pas nulle, ar la tâ he se ondaire ne peut pas être parfaitement a omplie lorsqu'une primitive est a tivée ou est dans la zone d'a tivation.


150

Tâ hes à dimension variable

Pseudo Inverse

0.1 0.05 0 q1

−0.05

q2 q3 q4 q5

Inverse continue

0.1

q6 0.05 0 −0.05 100

Fig. 6.24 

200

300

400 500 Iteration

600

700

800

Se onde expérien e : vitesse de la améra pendant l'asservissement (a) en utilisant la pseudo-inverse

pour le al ul de la loi de ommande, (b) en utilisant l'inverse ontinue. La pseudo-inverse introduit des os illations.

−5

x 10 16

Sans evitement Pseudo inverse Inverse continue

Norme de la perturbation

14 12 10 8 6 4 2 0 100

Fig. 6.25 

200

300

400 Iteration

500

600

700

800

Se onde expérien e : norme de la perturbation ( 'est-à-dire des omposantes de la tâ he déjà à zéro

au début de l'asservissement). L'utilisation de la pseudo-inverse entraîne une perturbation plus forte, à ause de la brutalité des hangements de traje toire lors des phases d'a tivation et de désa tivation de la primitive d'évitement de butées.


6.5

Con lusion

151

6.5 Con lusion Dans e hapitre, nous avons exposé les problèmes qui surgissent lorsqu'on essaie d'adapter les lois de ommande lassiques à des tâ hes à dimension variable. Nous avons parti ulièrement insisté sur les problèmes de dis ontinuité qui interviennent lors des hangements de rang. Nous avons aussi mis en éviden e expérimentalement que es dis ontinuités entraînent en pratique des os illations. A partir de es onstatations, nous avons onstruit un nouvel opérateur d'inversion matri ielle qui est onfondu ave la pseudo-inverse lassique lorsque toutes les primitives sont a tives ou ina tives, mais qui assure la ontinuité de l'inverse lorsque des primitives sont dans la zone de transition. Nous avons mis en appli ation et opérateur pour réaliser un asservissement sur un ensemble de points, en garantissant la ontinuité quel que soit le nombre de points a tifs. L'opérateur proposé semble très prometteur. De plus, il permet de généraliser de manière intéressante la redondan e aux tâ hes à dimension variable. Cela permet don d'intégrer dans la pile de telles tâ hes. Mais e travail n'est pas en ore omplètement terminé. En parti ulier, il manque une analyse rigoureuse de la stabilité de la loi de ommande proposée, ainsi qu'une justi ation formelle du fon tionnement du proje teur qui en dé oule. Faute que es onditions soient réunis et ne disposant pas du temps né essaire pour y remédier, nous avons hoisi de ne pas appliquer ette méthode aux résultats présentés dans la suite du do ument.


152

Tâ hes à dimension variable


Synthèse des ommandes bas niveau

D

ans ette partie, nous avons proposÊ plusieurs lois de ommande permettant d'a omplir simultanÊment plusieurs tâ hes tout en respe tant diÊrentes ontraintes.

Nous avons tout d'abord onstruit une pile de tâ hes en utilisant les Êquations lassiques de la

redondan e, et en exprimant les ontraintes sous forme de fon tion de oĂťt, minimisĂŠe par la mĂŠthode du gradient projetĂŠ. Deux lois de ommande dĂŠ oulent du formalisme de la redondan e, (3.39) et (3.40). La première se ontente de respe ter la ontrainte de hiĂŠrar hie imposĂŠe par la pile. La se onde assure en plus que la tâ he projetĂŠe sera appliquĂŠe de manière optimale ave les degrĂŠs de libertĂŠ qui lui restent. La pile de tâ hes permet l'utilisation de es deux lois de ommande de manière hybride, en hoisissant l'une pour ertaines tâ hes qu'on sait par avan e di iles Ă rĂŠsoudre, et adoptant l'autre pour des tâ hes importantes Ă  respe ter absolument. Puis nous avons proposĂŠ plusieurs solutions pour ĂŠlargir les degrĂŠs de libertĂŠ disponibles pour a omplir es tâ hes et les ontraintes asso iĂŠes. Tout d'abord, nous avons proposĂŠ de modier le formalisme lassique de la redondan e pour dĂŠgager des degrĂŠs de libertĂŠ dire tement au niveau du al ul du proje teur. Nous avons montrĂŠ que ette solution permettait bien d'obtenir un plus grand nombre de degrĂŠs de libertĂŠ. Il est de plus possible de la gĂŠnĂŠraliser Ă  plusieurs tâ hes et ainsi de gĂŠnĂŠraliser le prin ipe de la pile. Mais seule la forme (3.39) de la loi de ommande peut ĂŞtre obtenue, et il semble di ile de gĂŠnĂŠraliser la redondan e dire tionnelle Ă  la forme optimale (3.40). Nous avons ensuite proposĂŠ de relâ her des degrĂŠs de libertĂŠ en introduisant des tâ hes qui ne ontraignent pas le mĂŞme nombre de degrĂŠs de libertĂŠ tout au long de l'asservissement. Nous avons prin ipalement appliquĂŠ ette solution Ă  l'ĂŠ riture des ontraintes, ave l'asservissement qualitatif. On peut ainsi introduire en tâ he prioritaire une tâ he s'assurant du respe t des ontraintes. Ă&#x2030;tant prioritaire, ette tâ he permet d'assurer le respe t des ontraintes en interdisant l'utilisation des degrĂŠs de libertĂŠ orrespondants si nĂŠ essaire. Cette solution est très prometteuse, ar elle permet d'obtenir automatiquement un en haĂŽnement de tâ hes. Une tâ he violant la ontrainte est automatiquement supprimĂŠe par le proje teur lorsque la ontrainte est a tivĂŠe. De plus, la tâ he est de nouveau prise en ompte, toujours automatiquement, dès que la ontrainte se dĂŠsa tive. Pourtant, plusieurs limitations de ette solution ont ĂŠtĂŠ mises en ĂŠviden e. Tout d'abord, il existe un minimum lo al Ă  la frontière de la zone d'a tivation de la ontrainte. Ce minimum lo al est rĂŠsolu par l'utilisation de la redondan e dire tionnelle. Mais il n'est alors plus possible d'utiliser la forme optimale de la loi de ommande (3.40). La se onde et prin ipale limitation de ette solution provient des dis ontinuitĂŠs engendrĂŠes. En pratique, lorsque la tâ he est non redondante ( 'est-Ă -dire quasiment tout le temps lorsqu'on onsidère des tâ hes ne ontraignant qu'une sous partie du robot), la zone de transition entre a tivation et dĂŠsa tivation n'est pas prise en ompte, et la loi de ommande saute d'un ĂŠtat oĂš la tâ he est ina tive, Ă  un ĂŠtat oĂš elle- i s'exprime Ă  plein rĂŠgime. Mais plus en ore que la ommande due Ă  la tâ he, 'est le proje teur engendrĂŠ qui est binaire et passe sans transition d'un ĂŠtat


154

Tâ hes à dimension variable

oÚ il autorise entièrement l'utilisation des degrÊs de libertÊ asso iÊs à la tâ he à dimension variable, à un Êtat oÚ les degrÊs de libertÊ asso iÊs sont ontraints par la tâ he, et interdits aux autres tâ hes de la pile. Pour rÊsoudre e problème, nous avons proposÊ une solution basÊe sur la onstru tion d'un nouvel opÊrateur d'inversion matri ielle, et sur le proje teur asso iÊ. Cette solution semble donner des rÊsultats prometteurs en pratique. Mais nous ne sommes pour l'instant pas apable d'apporter des preuves thÊoriques de la stabilitÊ de la loi de ommande asso iÊe. Nous ne l'avons pas non plus mise en áuvre dans des as omplexes, d'autant que le al ul de et opÊrateur est oÝteux et don di ile à appliquer lorsque de nombreux degrÊs de libertÊ sont ommandÊs. Finalement, le problème initial que nous nous sommes posÊ n'est pas rÊsolu. Quelle que soit la ommande onsidÊrÊe, il n'est pas possible d'exÊ uter automatiquement une tâ he globale omplexe tout en respe tant plusieurs ontraintes de manière rÊa tive. Et, toujours quelle que soit la ommande, il est plus e a e et plus simple pour assurer le respe t d'une ontrainte de retirer la tâ he qui la perturbe, pour la remettre plus tard dans l'exÊ ution lorsque la ontrainte est rÊsolue. Cette solution permet d'assurer que la ontrainte n'est pas perturbÊe, tout en ontrlant la ontinuitÊ, le onditionnement et les os illations du système. De plus, elle permet d'espÊrer prendre en ompte des ontraintes non linÊaires qui ne s'Ê rivent pas sous forme d'une fon tion de oÝt et en ore moins sous elle d'une tâ he qualitative, omme par exemple les ontraintes de non holonomie. Dans la se onde partie de ette thèse, nous allons don nous intÊresser à mettre en áuvre ette solution d'en haÎnement de tâ hes, en utilisant la pile pour pouvoir ontrler le robot au niveau omportemental, 'est-à-dire au niveau des tâ hes. Pour ela, nous allons utiliser la loi de ommande prÊsentÊe au hapitre 3 ( 'est-à-dire la ommande onstruite à partir de (3.39) et (3.40)). En eet, ette ommande possède toutes les qualitÊs nÊ essaires, et sut don pour appliquer un en haÎnement de tâ hes qui assurera le ontrle des degrÊs de libertÊ manquants. Nous espÊrons pouvoir dans la suite appliquer l'en haÎnement de tâ hes sur une pile

omplète,

dire tionnelle et intÊgrant des tâ hes à dimension variable.

'est-Ă -dire utilisant la redondan e


Deuxième partie Haut niveau

155


Introdu tion Ă la ommande de haut niveau

L

a pile de tâ hes prÊsentÊe au dÊbut de ette thèse permet de rÊaliser une tâ he omplexe de manière rÊa tive et rÊfÊren Êe par rapport aux retours des apteurs, tout en prenant en ompte

des ontraintes se ondaires. Mais es ontraintes ne sont prises en ompte que lorsque la tâ he à rÊaliser laisse susamment de degrÊs de libertÊ disponibles. Dans le as gÊnÊral, il n'est don pas possible de garantir que l'exÊ ution se dÊroulera en assurant le respe t des ontraintes. Les extensions de la pile de tâ hes que nous avons alors proposÊes et onstruites à partir de la redondan e dire tionnelle ou de l'asservissement qualitatif permettent d'Êtendre la prise en ompte des ontraintes et ainsi d'amÊliorer la qualitÊ de l'exÊ ution dans de nombreux as. Mais il n'est toujours pas possible d'assurer dans le as gÊnÊral que l'exÊ ution se dÊroulera sans violer les ontraintes. Dans ette partie, nous proposons d'Êtendre le domaine de onvergen e des lois de ommande prÊsentÊes en première partie en en haÎnant diÊrentes phases lors de l'asservissement. Nous nous intÊressons tout d'abord au as d'un robot manipulateur non redondant, et nous proposons, pour garantir le respe t des ontraintes, une solution basÊe sur la pile de tâ hes surveillÊe par un ontrleur d'exÊ ution. Cette solution est gÊnÊrale et ne s'applique pas au seul as des robots manipulateurs non redondants. Nous verrons dans les deux derniers hapitres quelles solutions on peut envisager pour l'Êtendre aux robots mobiles et aux robots humanoïdes.


158


Chapitre 7

En haĂŽnement pour la prise en ompte de ontraintes multiples en robotique manipulatri e

Dans e hapitre, nous proposons une stru ture de ontrle pour rÊaliser un en haÎnement de tâ hes en utilisant les fon tionnalitÊs de ontrle au niveau des tâ hes oertes par la pile. Ce se ond niveau de ontrle nous permet d'a omplir une tâ he omplexe nÊ essitant l'utilisation d'un grand nombre de degrÊs de libertÊ du robot, tout en prenant en ompte des ontraintes diverses. Nous appliquerons alors la stru ture onstruite au ontrle d'un robot manipulateur, en onsidÊrant les butÊes arti ulaires, ainsi que des o ultations visuelles et des obsta les.

7.1 Ă&#x2030;tat de l'art Le adre de l'asservissement rĂŠfĂŠren ĂŠ apteur permet d'obtenir des solutions rapides et e a es, robustes aux bruits de mesure et de alibration, et surtout apables d'une grande prĂŠ ision. En parti ulier, les solutions basĂŠes sur des informations apteurs optimales omme l'asservissement 2-1/2-D [Malis 99â&#x201E;&#x201E; ou l'asservissement sur les moments de l'image [Tahri 05â&#x201E;&#x201E; produisent des omportements très satisfaisants, en termes de robustesse et de prĂŠ ision, mais aussi de par la taille du domaine de onvergen e. Pourtant, es solutions ne permettent pas de prendre en ompte les ontraintes dues Ă un système rĂŠel. Dans le as gĂŠnĂŠral, il existe de nombreuses traje toires possibles pour rejoindre la position dĂŠsirĂŠe. Ces lois de ommande hoisissent en quelque sorte une traje toire parti ulière, sans jamais vĂŠrier si elle est orre te du point de vue des ontraintes. En ajoutant un terme se ondaire al ulĂŠ Ă  partir des ontraintes omme dans [Liegeois 77, Khatib 86, Nelson 95, Chang 95, Mar hand 98â&#x201E;&#x201E;, la traje toire hoisie est dĂŠformĂŠe lo alement, e qui ne sut pas toujours Ă  ĂŠviter une violation des ontraintes. En parti ulier, lorsque la tâ he Ă  exĂŠ uter ontraint une trop grande part des degrĂŠs de libertĂŠ du robot, le terme se ondaire n'est pas susamment pris en ompte. C'est par exemple le as des solutions prĂŠsentĂŠes dans la partie prĂŠ ĂŠdente. Pour assurer une exĂŠ ution optimale, la solution lassique onsiste Ă  planier la traje toire, par exemple dans l'espa e apteur [Cowan 02, Mezouar 02â&#x201E;&#x201E;. Mais, omme nous l'avons dĂŠjĂ  expliquĂŠ dans le hapitre 2, es solutions ontraignent en ore plus le robot. De plus, elles nĂŠ essitent de nombreuses


160

En haĂŽnement pour la prise en ompte de ontraintes multiples

onnaissan es sur son environnement, ainsi qu'une grande quantitÊ des ressour es de al ul du robot. Plutt que de hoisir dès le dÊpart une traje toire spÊ ique, optimale ou non, de nombreuses solutions ont ÊtÊ proposÊes pour modier le s hÊma de ontrle durant l'asservissement, lorsque la traje toire ourante s'avère inadaptÊe. Il s'agit alors de hanger la bou le de ontrle à l'aide d'un se ond niveau de ontrle, que nous nommerons ontrle de haut niveau (par opposition au bas niveau, 'est-à-dire la bou le de ontrle moteur). Une première solution onsiste à en haÎner des tâ hes selon un ordre imposÊ

a priori.

Dans [Peterson 03â&#x201E;&#x201E;, un manipulateur mobile rĂŠalise l'ouverture d'une porte

en en haĂŽnant une phase d'appro he Ă l'aide de sa base mobile, suivie de la saisie de la poignĂŠe, et nit en utilisant simultanĂŠment le bras et la base pour pousser la porte. Dans [Soueres 03â&#x201E;&#x201E;, le robot en haĂŽne une phase de suivi de mur pour ensuite s'asservir vers une position de onsigne Ă  l'aide d'une ible visuelle. Dans [Gravot 06â&#x201E;&#x201E;, le robot en haĂŽne des tâ hes spĂŠ iĂŠes Ă  la manière d'une re ette de uisine. On peut iter de la mĂŞme manière de nombreux autres exemples oĂš la solution logique est d'en haĂŽner su essivement plusieurs tâ hes omposant une tâ he omplexe [PissardGibolet 96, Matari 99â&#x201E;&#x201E;. Cela produit un bon omportement du robot, mais le hoix et l'ordre des tâ hes doit ĂŞtre hoisi Ă  la main pour haque appli ation. De plus, l'en haĂŽnement est souvent dĂŠ len hĂŠ par la validation d'un ritère

ad-ho , et ne permet don pas un omportement adaptatif ou intelligent du système quand la situation dière de elle pour laquelle il est programmÊ.

Des mÊthodes existent rÊaliser l'en haÎnement de manière automatique. Les lois de ommande

ommutatives (swit hing

ontrol laws ) proposent de passer d'une loi de ommande Ă une autre lorsque

le omportement du robot n'est pas adĂŠquat. Dans [Gans 03â&#x201E;&#x201E;, le domaine de onvergen e du robot est ĂŠtendu en passant d'un asservissement visuel 2D Ă un asservissement visuel 3D ou inversement. Ce type de ommande a aussi ĂŠtĂŠ appliquĂŠ pour prendre en ompte des ontraintes additionnelles. Dans [Chesi 03â&#x201E;&#x201E;, le robot rĂŠalise un asservissement visuel, et prend expli itement en ompte la ontrainte de visibilitĂŠ des primitives. Le robot passe automatiquement d'une loi de ommande ne rĂŠalisant que le positionnement, Ă  une loi de ommande rĂŠalisant un ompromis entre positionnement et visibilitĂŠ. Les lois de ommande ommutatives passent d'une loi de ommande Ă  une autre et hangent don omplètement de omportement entre deux instants. D'autres mĂŠthodes d'en haĂŽnement existent qui modient le omportement du robot en a tivant ou non une sous partie de la tâ he globale. Dans [Bro k 02â&#x201E;&#x201E;, un manipulateur mobile se dĂŠpla e sous le ontrle de deux tâ hes. La première onsiste Ă  suivre une traje toire dĂŠformable en utilisant la base mobile. La se onde est un positionnement de l'organe ee teur du bras embarquĂŠ dans un repère xe, en ompensant les mouvements de la base. Lorsque la traje toire suivie s'ĂŠloigne trop de la traje toire initiale sous l'eet des dĂŠformations imposĂŠes par un obsta le mobile, la tâ he de manipulation n'est plus rĂŠalisable. Elle est alors suspendue pour ĂŠviter un mauvais omportement du bras. Une idĂŠe similaire est adoptĂŠe dans [Yoshida 05â&#x201E;&#x201E; pour simplier la omplexitĂŠ du al ul de traje toire. Le robot onsidĂŠrĂŠ est un humanoĂŻde, ommandĂŠ omme un manipulateur mobile. Seule la base mobile est ontrlĂŠe dans un premier temps, en suivant une traje toire al ulĂŠe dans le plan de mar he. Lorsqu'une ollision de la partie haute du orps est dĂŠte tĂŠe, les autres arti ulations sont alors onsidĂŠrĂŠes et une nouvelle tâ he est ajoutĂŠe pour prendre l'obsta le en ompte. Dans es deux travaux, les ritères utilisĂŠs permettent d'obtenir un en haĂŽnement automatique. Cependant, ils sont di iles Ă  gĂŠnĂŠraliser Ă  d'autres plateformes. Nous proposons dans e hapitre d'utiliser les te hniques d'en haĂŽnement prĂŠsentĂŠes dans la première partie de e mĂŠmoire pour ajouter un ontrle de haut niveau permettant d'ĂŠtendre le domaine d'a tion de la pile de tâ hes. Comme nous l'avons dĂŠjĂ  dit dans la partie prĂŠ ĂŠdente, la pile de tâ hes permet d'en haĂŽner fa ilement plusieurs tâ hes en proposant les fon tionnalitĂŠs d'ajout ou de retrait d'une tâ he, et en assurant la ontinuitĂŠ de la ommande lors d'un hangement de tâ hes. Nous allons don onstruire dans la partie 7.2 une stru ture de ontrle de haut niveau utilisant es deux fon tionnalitĂŠs pour garantir la prise en ompte des ontraintes lorsque trop peu de degrĂŠs de libertĂŠ sont disponibles. Cette stru ture est ensuite mise en áuvre pour une tâ he d'asservissement visuel sur un robot non redondant dans la partie 7.3. Nous montrerons lors des expĂŠrien es prĂŠsentĂŠes dans la partie 7.4 que ette stru ture est gĂŠnĂŠrale et permet de prendre en ompte diĂŠrents types de ontraintes.


Constru tion des ontrleurs d'exĂŠ ution

NIVEAU 3

7.2

161

Controleur deliberatif

Ajout dâ&#x20AC;&#x2122;une tache specifique

NIVEAU 2

MINIMUM LOCAL? DEADâ&#x2C6;&#x2019;LOCK?

Controleur de remise

Remise dâ&#x20AC;&#x2122;une tache

NIVEAU 1

OBSTACLE EVITE?

Controleur dâ&#x20AC;&#x2122;obstacle

Controleur de butees

...

Controleur dâ&#x20AC;&#x2122;occultation

Retire une tache

CONTROLE MOTEUR

COLLISION PREDITE?

P I L e1 E

Fig. 7.1 

ei

ei+1

en

Stru ture des ontrleurs d'exĂŠ ution.

7.2 Constru tion des ontrleurs d'exÊ ution La stru ture de ontrle que nous proposons est omposÊe de quatre niveaux, haque niveau permettant de surveiller et ainsi d'Êtendre les a tions des niveaux infÊrieurs. Cette stru ture est rÊsumÊe sur la gure 7.1. Nous la prÊsentons tout d'abord rapidement, an d'en donner un aperçu global, avant de dÊtailler haque omposante dans la suite de e hapitre. La base de la stru ture de ontrle est bien sÝr la pile de tâ hes, onstruite dans les hapitres prÊ Êdents. On a vu dans la partie prÊ Êdente que les modi ations des formalismes utilisÊs pour onstruire la pile de tâ hes ( omme les tâ hes à dimension variables ou l'asservissement qualitatif ) vont de pair ave des limitations pratiques ou thÊoriques que nous ne savons pas rÊsoudre pour l'instant. Pour ette raison, nous avons prÊfÊrÊ mettre en áuvre la pile telle qu'elle a ÊtÊ dÊ rite au hapitre 3. La pile de tâ hes permet de al uler la loi de ommande à partir de l'ensemble des tâ hes a tives. Les ontraintes sont prises en ompte dans la mesure des degrÊs de libertÊ restant, sous la ondition de ne pas perturber l'exÊ ution des tâ hes prioritaires. Cette stru ture rend surtout possible une programmation au niveau des tâ hes, en permettant de retirer ou d'ajouter une tâ he supplÊmentaire dans la pile. Les ontrleurs d'exÊ ution de niveaux supÊrieurs n'ont don plus à raisonner au niveau de la loi de ommande, et agissent sur le omportement du robot en utilisant es deux fon tionnalitÊs. Le se ond niveau de ontrle assure que susamment de degrÊs de libertÊ sont disponibles pour permettre de respe ter les ontraintes. En eet, elles- i sont ajoutÊes en sommet de pile, et ne sont don pas prises prioritairement en ompte. Le ontrleur dÊte te quand la part de la loi de ommande onsa rÊe aux ontraintes n'est pas susamment importante par une phase de prÊdi tion linÊaire. Si une violation des ontraintes est prÊdite lors des itÊrations pro haines, alors le ontrleur retire une tâ he de la pile pour dÊgager les degrÊs de libertÊ nÊ essaires. La tâ he à retirer est hoisie de manière optimale en utilisant une mesure ommune à toutes les tâ hes que nous dÊtaillerons ultÊrieurement. Dans la suite du hapitre, nous dÊsignerons e niveau de ontrle par

ontrleur de ontraintes.

Le troisième ontrleur her he à remettre haque tâ he retirÊe de la pile, pour pouvoir ontinuer


162

En haĂŽnement pour la prise en ompte de ontraintes multiples

l'asservissement. Le ontrleur prÊdit l'eet du retour de la tâ he prÊ Êdemment retirÊe, et vÊrie qu'elle ne ausera pas une nouvelle violation d'une ontrainte. Pour simplier les al uls, le ontrleur ne vÊrie les eets de l'ajout que sur la ontrainte qui avait ausÊ le retrait de la pile. La tâ he est rÊintroduite dans la pile dès qu'au une nouvelle violation n'est prÊdite. Nous appellerons

de remise

ontrleur

e troisième niveau.

Ce s hÊma de ontrle n'est pas sans situations de blo age dues aux intera tions entre les deux ontrleurs prÊ Êdents. Deux problèmes empê hant la onvergen e du système peuvent apparaÎtre, tous deux ausÊs par le manque de prÊ ision des prÊdi tions linÊaires. Tout d'abord, il arrive que le ontrleur de remise soit in apable de remettre une tâ he dans la pile. Un degrÊ de libertÊ du système est alors en minimum lo al ; plus au une ommande n'y est envoyÊe. Ce type de blo age est fa ilement dÊte table lorsque toutes les tâ hes de la pile sont a hevÊes, alors qu'une ou plusieurs tâ hes restent hors de la pile sans y être rÊintroduite. Mais il arrive aussi que le ontrleur de remise dÊ ide trop tt de remettre une tâ he dans la pile. Le système se met alors à os iller, le ontrleur de ontraintes supprimant la tâ he que le ontrleur de remise s'empresse de rÊintroduire. Ce blo age peut être dÊte tÊ en re her hant les bou les mortes (ou

dead-lo k ) du graphe d'exĂŠ ution. Nous verrons

dans la suite que es minima lo aux orrespondent en fait aux limites de l'asservissement rÊa tif. Ils interviennent prin ipalement dans les parties non onvexes de l'espa e de travail. Pour les rÊsoudre, une tâ he spÊ ique permettant de sortir du minimum lo al doit être ajoutÊe à la pile. La forme de ette tâ he dÊpend de la forme du minimum lo al ren ontrÊ, et est don très di ile à gÊnÊraliser. Une solution simple onsiste à planier une traje toire permettant d'avan er vers la position nale, et à la suivre jusqu'à sortir du minimum lo al. Dans les expÊrien es prÊsentÊes dans e hapitre, nous verrons que les situations de blo age proviennent de la stru ture arti ulaire du robot, et qu'il est possible d'en sortir en forçant un hangement de onguration, sans re ourir à une Êtape de plani ation.

7.2.1 Contrleur de ontraintes Nous prÊsentons tout d'abord le ontrleur de ontraintes. Celui- i permet d'assurer que susamment de degrÊs de libertÊ restent disponibles pour permettre de prendre orre tement en ompte les ontraintes. Le ontrleur dÊte te qu'une de elles- i n'est pas susamment prise en ompte par une Êtape de prÊdi tion (par exemple, si le robot s'apprête à tou her une butÊe). Il hoisit alors la meilleure tâ he à retirer pour respe ter la ontrainte, en omparant les tâ hes de la pile selon deux ritères que nous allons prÊsenter.

Quand retirer une tâ he ? Le ontrleur dÊ ide de retirer une tâ he en prÊdisant le mouvement du robot sur les pro haines itÊrations, et en vÊriant qu'au une ontrainte n'est violÊe lors de e dÊpla ement. On note

q(t)

la

position arti ulaire du robot à l'instant ourant. Une estimation de la position du robot après un petit dÊpla ement peut être obtenue en supposant la ommande onstante :

oĂš

qË&#x2122;

b(t + â&#x2C6;&#x2020;t) = q(t) + â&#x2C6;&#x2020;t qË&#x2122; q

est la valeur de la loi de ommande Ă l'instant ourant, et

(7.1)

â&#x2C6;&#x2020;t

est un paramètre permettant de

ongurer le temps d'anti ipation du robot. On dĂŠ ide que la ontrainte est violĂŠe si la valeur de la fon tion de oĂťt asso iĂŠe

V

dĂŠpasse un seuil xĂŠ

Vmax .

de la pile si :

â&#x2C6;&#x20AC;Ď&#x201E; â&#x2C6;&#x2C6; [t, t + â&#x2C6;&#x2020;t], Selon la dĂŠnition de la fon tion de oĂťt de

V,

ou en ĂŠ hantillonnant l'intervalle

Le paramètre

â&#x2C6;&#x2020;t

Le ontrleur dÊ ide don de retirer une tâ he

 V q(Ď&#x201E; ) > Vmax

(7.2)

V , le test est ee tuĂŠ en al ulant analytiquement le maximum [t, t + â&#x2C6;&#x2020;t].

doit ĂŞtre xĂŠ en fon tion du temps de rĂŠponse du robot et de la aden e du

ontrleur de ontraintes. Si on admet que la loi de ommande al ulÊe d'après la pile de tâ hes respe te les apa itÊs d'a ÊlÊration du robot, alors le temps de rÊponse est xÊ par le paramètre

Âľ

(3.27), qui


7.2

Constru tion des ontrleurs d'exĂŠ ution

163

ongure le lissage lors des hangements de la pile. D'autre part, les ontrleurs de haut niveau fon tionnent typiquement à aden e moins ÊlevÊe que la pile de tâ hes. La loi de ommande doit être re al ulÊe à haque passage dans la bou le de ommande du robot. Par ontre, pour ne pas sur harger les apa itÊs de al ul, les ontrleurs de haut niveau peuvent fon tionner beau oup moins vite. Le paramètre

â&#x2C6;&#x2020;t

doit alors permettre de prĂŠdire les dĂŠpla ements entre deux exĂŠ utions du ontrleur

de ontraintes. En pratique, nous avons hoisi

â&#x2C6;&#x2020;t

ĂŠgal Ă inq fois la pĂŠriode de fon tionnement du

ontrleur. Ce hoix est parfaitement arbitraire et peut sans problème être modiÊ.

Quelle tâ he retirer ? Le ontrleur doit ensuite dÊ ider quelle tâ he retirer de la pile pour dÊgager les degrÊs de libertÊ nÊ essaires au respe t de la ontrainte. L'idÊe est de al uler quelle tâ he de la pile est en onit ave le gradient projetÊ rÊalisant la ontrainte. Nous proposons deux ritères permettant d'Êvaluer numÊriquement e onit pour haque tâ he. Le ontrleur sÊle tionne alors la tâ he orrespondant à l'optimum des ritères. L'utilisation des deux ritères simultanÊment permet d'assurer un hoix plus robuste. Dans la suite, on onsidère une tâ he les ontraintes est notÊ

Premier ritère : g.

dont le ja obien est notĂŠ

Ji .

Le gradient al ulÊ d'après

Le premier ritère ompare dire tement la vitesse du robot induite par la tâ he Ă

la dire tion du gradient d'ĂŠvitement Ă l'opposĂŠ de

ei

g.

g. La tâ he à retirer est elle qui induit une vitesse orrespondant

Ce ritère est expliquÊ pour un as simple sur la gure 7.2(a).

Pour mesurer e ritère, on al ule simplement le produit s alaire entre la part de la loi de ommande due à la tâ he

ei

et le gradient

g

dans un espa e ommun. Si on hoisit omme espa e ommun

l'espa e des vitesses arti ulaires, le ritère

C1

s'ĂŠ rit :

C1 = â&#x2C6;&#x2019; < J+ i ei |g >

(7.3)

Un autre espa e ommun peut être hoisi. Par exemple, si on ee tue le produit s alaire dans l'espa e de la tâ he, le ritère s'Ê rit

< ei |Ji g >. Nous

avons pu vĂŠrier expĂŠrimentalement que le hoix de et

espa e ommun a en fait très peu d'importan e, ar les rÊsultats sont nalement les mêmes. La valeur de e ritère dÊpend linÊairement de la valeur de l'erreur

e1 .

Lorsque la tâ he est pra-

tiquement a hevÊe, le ve teur d'erreur est faible, et le ritère est alors très petit. ExpÊrimentalement, nous avons remarquÊ que, lorsque e ritère est utilisÊ pour rÊaliser le hoix de la tâ he à retirer, le ontrleur hoisissait pratiquement tout le temps la dernière tâ he ajoutÊe à la pile. Nous avons don hoisi de normaliser la valeur de e ritère :

C1 â&#x20AC;˛ =

1 C1 ||ei ||

(7.4)

Ce ritère ne dÊpend plus que de la dire tion de la vitesse induite par la tâ he

ei ,

et plus de sa norme.

Le hoix est très dis riminant lorsque les erreurs sont fortes. Par ontre, il peut devenir instable lorsque les ve teurs d'erreur sont faibles. Le ritère suivant permet de rÊsoudre e problème.

Se ond ritère :

Lors du al ul de la loi de ommande omplète, le gradient

g

est projetĂŠ dans

l'espa e nul de l'ensemble des tâ hes se trouvant dans la pile. Le se ond ritère her he à Êvaluer la ontribution de ha une des tâ hes à e proje teur. L'idÊe de e ritère est de retirer la tâ he qui perturbe le plus le gradient lors de la proje tion. Il est illustrÊ sur la gure 7.2(b). On dÊnit le ritère par l'expression suivante :

oĂš

Pi = I â&#x2C6;&#x2019; J+ i Ji

C2 = ||Pi g||

(7.5)

est le proje teur ve toriel sur l'espa e nul de la tâ he

ei .

Le proje teur diminue la norme du ve teur projetĂŠ en lui soustrayant les omposantes qui ne sont

pas dans l'espa e de proje tion : quel que soit un ve teur

x,

alors

||Pi x|| â&#x2030;¤ ||x||.

Si le gradient est


164

En haînement pour la prise en ompte de ontraintes multiples

P2 J3 e1

e1

g

g

C2

C1

P1

C1

C2

C2 e2

e3

e2

J2

C1

P3 e3

J1

(a) Premier ritère C1 Fig. 7.2 

Comparaison des deux ritères

(b) Se ond ritère C2 C1

et

C2 .

Trois tâ hes sont présentes dans la pile. La ontrainte est

représentée sous la forme d'un obsta le pro he du robot (la ligne ha hurée noire). Le gradient asso ié tra é en noir. Intuitivement, la tâ he onduisant le robot dans l'obsta le est la tâ he

e3 ,

g

est aussi

tra ée en jaune. (a) Le

C1 orrespond au produit s alaire ave la dire tion ve torielle des tâ hes de la pile. Il est e3 (le ritère est négatif pour e1 et presque nul pour e2 ). (b) Le ritère C2 est la norme du

ritère

maximal pour la

tâ he

gradient projeté.

L'espa e nul de haque tâ he est représenté par sa dire tion ve torielle. Dans e as, le signe de la tâ he n'est pas pris en ompte, et la valeur du ritère pour

e1

est pro he de sa valeur pour

e3 .


7.2

Constru tion des ontrleurs d'exĂŠ ution

165

très ÊloignÊ de l'espa e nul, alors l'Êtape de proje tion va grandement le perturber. Parallèlement, la norme de sa proje tion sera d'autant plus petite. La tâ he à retirer de la pile orrespond au minimum de la valeur du ritère

C2 .

Une autre façon de al uler C2 : vÊrier si le gradient

Enn, un dernier ritère pour hoisir la tâ he à retirer onsiste à

g se trouve dans l'espa e image de la tâ he ei . Cet espa e orrespond à l'ensemble

des ommandes pouvant être gÊnÊrÊe par la tâ he. Si le gradient s'y trouve, alors il risque de gÊnÊrer des onits ave la ommande permettant de rÊaliser la tâ he. Inversement, s'il ne s'y trouve pas, il ne peut pas y avoir de onit, et il ne sert à rien de retirer On note

Ji ).

(v1 . . . vk )

ei .

une base orthonormĂŠe de l'espa e image de

J+ i

(oĂš

r

est le rang de la matri e

Le ritère s'Ê rit :

C2b = || Ce ritère est en fait Êquivalent au ritère

C2 ,

r X i=1

(gâ&#x160;¤ vi )vi ||

(7.6)

omme nous allons maintenant le montrer.

La proje tion est indÊpendante du hoix de la base. On hoisit don dÊ omposition en valeurs singulières de

V

omme ĂŠtant la base de la

J. Ji = USVâ&#x160;¤

(7.7)

On suppose que les valeurs singulières sont ordonnÊes, de sorte que (respe tivement

C2b

V1 )

V

s'ĂŠ rive

V = (V0 V1 ),

oĂš

V0

orrespond aux valeurs singulières nulles (respe tivement non nulles). Le ritère

peut alors s'ĂŠ rire :

C2b = ||V1 V1 â&#x160;¤ g||

(7.8)

Or, en introduisant la dÊ omposition en valeur singulière dans (7.5), le ritère

C2

s'ĂŠ rit :

C2 = ||V0 V0 â&#x160;¤ g|| = ||(I â&#x2C6;&#x2019; V1 V1 â&#x160;¤ )g|| Finalement, on vĂŠrie que minimal. En fait,

C2

C2

et

C2b

(7.9)

sont ĂŠquivalents, le premier ĂŠtant maximal quand le se ond est

vĂŠrie que le gradient

g

se trouve dans le noyau de la tâ he, alors que

C2b

vĂŠrie

qu'il ne se trouve pas dans l'espa e image, e qui est Êquivalent. Nous avons vÊriÊ expÊrimentalement que les deux ritères produisaient les mêmes rÊsultats. Dans la suite, nous ne onsidÊrerons don que les deux ritères

C1

et

C2 .

7.2.2 Contrleur de remise Ce ontrleur se harge simplement de remettre les tâ hes retirÊes de la pile dès que elles- i n'empê hent plus la prise en ompte des ontraintes. Cette vÊri ation est rÊalisÊe par une Êtape de prÊdi tion sur l'eet de la ontrainte lorsque la tâ he est rÊintroduite dans la pile. Comme nous l'avons dit plus haut, haque tâ he retirÊe de la pile peut être asso iÊe à la ontrainte qui a ausÊ son retrait. Pour diminuer les al uls à ee tuer, la prÊdi tion n'est don faite que sur l'intera tion entre la tâ he à remettre dans la pile et la ontrainte qui lui est asso iÊe. On note arti ulaire du robot, et

Ď&#x2020;

ei

la tâ he à remettre,

q la position

la paramĂŠtrisation de l'espa e dans lequel est exprimĂŠe la ontrainte.

Comme pour le ontrleur prÊ Êdent, la prÊdi tion de dÊpla ement est faite de manière linÊaire. On prÊdit le dÊpla ement du robot pour rÊaliser l'ensemble de la tâ he

â&#x2C6;&#x2020;q = â&#x2C6;&#x2019;J+ i ei

ei

: (7.10)

PrÊdire le dÊpla ement jusqu'à l'a omplissement de la tâ he permet de ne pas avoir à introduire de paramètre

â&#x2C6;&#x2020;t

pour ongurer la longueur de l'intervalle de prÊdi tion. La tâ he est rÊintroduite si la

ontrainte n'est pas violĂŠe lors du dĂŠpla ement

â&#x2C6;&#x2020;q

du robot. Comme prĂŠ ĂŠdemment, le maximum de

la ontrainte sur et intervalle est dĂŠterminĂŠ analytiquement si la forme de la ontrainte le permet,


166

En haĂŽnement pour la prise en ompte de ontraintes multiples

Pos. desiree Tache reactive Tache deliberative Minimum local Decroissance de lâ&#x20AC;&#x2122;erreur

Pos. initiale

Fig. 7.3 

Prin ipe de fon tionnement du ontrleur dĂŠlibĂŠratif : le ontrleur est a tivĂŠ puis dĂŠsa tivĂŠ plusieurs

fois, jusqu'à e que la position dÊsirÊe soit atteinte. Dès que le robot atteint une nouvelle rÊgion oÚ le ontrle rÊa tif n'est plus en minimum lo al, le ontrleur dÊlibÊratif est dÊsa tivÊ, et n'est rÊa tivÊ que si nÊ essaire.

ou, plus gÊnÊralement, en rÊalisant un Ê hantillonnage de l'intervalle. La tâ he est nalement remise si la ondition suivante est respe tÊe :

max

qâ&#x2C6;&#x2C6;[qt ,qt +â&#x2C6;&#x2020;q]

 VĎ&#x2020;(q) < Vmax

(7.11)

7.2.3 Contrleur dĂŠlibĂŠratif Enn, le dernier ontrleur assure la onvergen e globale du système en sortant le robot des minima lo aux de l'algorithme. Ceux- i sont dus aux erreurs de prĂŠdi tion des deux ontrleurs prĂŠ ĂŠdents. En eet, les prĂŠdi tions sont rĂŠalisĂŠes en supposant que le système est linĂŠaire. Cela revient nalement Ă ne onsidĂŠrer que l'environnement lo al pro he du robot. Le robot n'est don pas apable de omportements nĂŠ essitant une rĂŠelle anti ipation. Le ontrleur dĂŠlibĂŠratif est ajoutĂŠ pour apporter ette apa itĂŠ de raisonnement global nĂŠ essaire pour par exemple ontourner des zones non onvexes. Un aperçu du prin ipe de fon tionnement de e dernier ontrleur est donnĂŠ sur la gure 7.3 pour un as simple en 2D. Dans notre as, omme nous l'avons dit plus haut, deux types de blo age peuvent survenir : soit une tâ he n'est pas remise dans la pile alors que toutes les autres sont a omplis, soit une tâ he est remise trop tt dans la pile, e qui provoque une os illation remise/retrait Ă  proximitĂŠ de la pile. Ce dernier as peut ĂŞtre dĂŠte tĂŠ en onsidĂŠrant le graphe d'exĂŠ ution des ontrleurs de haut niveau. Lorsque le robot atteint un minimum lo al, le ontrleur dĂŠlibĂŠratif est a tivĂŠ pour sortir de la zone de blo age. Dès que le minimum lo al est fran hi, le ontrle rĂŠa tif normal est repris, en remettant dans la pile les tâ hes ina hevĂŠes. Si un autre minimum lo al est atteint durant le dĂŠpla ement, alors le ontrleur dĂŠlibĂŠratif se rĂŠa tive le temps de le fran hir. Pour sortir du minimum lo al, le ontrleur introduit une tâ he spĂŠ ique dans la pile. La onstru tion de ette tâ he est un problème similaire Ă  elui traitĂŠ pour ĂŠtendre le domaine de onvergen e des mĂŠthodes de plani ation lo ale [Khatib 86, Barraquand 92, LaValle 99â&#x201E;&#x201E;. Plusieurs solutions peuvent ĂŞtre proposĂŠes. On peut tout d'abord her her Ă  exĂŠ uter un mouvement en bou le ouverte pour tenter de sortir du minimum lo al, par exemple en introduisant un terme alĂŠatoire, omme dans [Barraquand 92â&#x201E;&#x201E;. Une autre solution plus omplète onsiste Ă  al uler une traje toire Ă  suivre pour sortir de la zone de blo age. La tâ he Ă  introduire dans la pile est alors un suivi de traje toire rĂŠfĂŠren ĂŠe apteur, qu'on peut ĂŠ rire sous la forme d'une fon tion de tâ he [Samson 91, Khatib 97â&#x201E;&#x201E;. Une dernière solution onsiste Ă  al uler un but intermĂŠdiaire Ă  atteindre avant de rejoindre la position dĂŠsirĂŠe, pour sortir du minimum lo al. La tâ he Ă  ajouter Ă  la pile est alors un asservissement vers e but intermĂŠdiaire.


7.2

Constru tion des ontrleurs d'exĂŠ ution

Fig. 7.4 

167

Exemple de fon tionnement du ontrleur dĂŠlibĂŠratif lors du dĂŠpla ement du robot dans le plan donnĂŠ

gure 7.3. (a) Traje toire du robot dans le plan. L'axe des otes donne la valeur de l'erreur au point ourant. (b) Ă&#x2030;volution de l'erreur par rapport au temps. On remarque bien que l'erreur roĂŽt quand le robot sort d'un minimum lo al, puis dĂŠ roĂŽt quand l'asservissement rĂŠa tif reprend.

PrÊ isons que même si une phase de plani ation est utilisÊe, la mÊthode proposÊe i i reste très diÊrente de la plani ation en gÊnÊral, pour trois raisons : tout d'abord, au une plani ation n'est nÊ essaire lors du fon tionnement normal de l'algorithme ; ensuite, au un hemin n'est al ulÊ avant d'avoir atteint le minimum lo al ; enn, lorsqu'un minimum lo al est atteint, la phase de suivi de hemin est utilisÊe un très ourt instant, uniquement pour sortir du blo age. Pour nir, le ontrleur dÊlibÊratif doit aussi dÊ ider quand arrêter la phase de sortie de minimum lo al, retirer la tâ he spÊ ique de la pile et reprendre le dÊroulement normal de l'asservissement. L'asservissement normal doit reprendre dès que le robot a atteint le domaine de onvergen e de la tâ he rÊa tive. Il est très di ile de dÊnir expli itement ette zone, et don de dÊterminer si le robot s'y trouve. Nous proposons de dÊterminer plutt si le robot est sorti de la zone dans laquelle la tâ he rÊa tive n'Êtait pas apable de onverger vers la position dÊsirÊe. Ce i peut être très fa ilement dÊ idÊ en observant l'Êvolution de l'erreur apteur. Un exemple simple est donnÊ sur la gure 7.4. On remarque que l'erreur augmente lorsque le robot ontourne l'obsta le, puisque la tâ he sort alors d'un minimum lo al. Dès que l'erreur re ommen e à dÊ roÎtre, on peut don dÊ ider que le robot est sorti du minimum lo al. La solution la plus simple onsiste à observer le signe de la dÊrivÊe

eË&#x2122; i .

Pour ĂŠviter

toute fausse dÊte tion due au bruit de mesure, ette information est intÊgrÊ sur plusieurs itÊrations. Le ritère d'arrêt s'Ê rit don :

C = e(t) â&#x2C6;&#x2019; e(t â&#x2C6;&#x2019; â&#x2C6;&#x2020;t) < 0 oĂš

â&#x2C6;&#x2020;t

(7.12)

est un paramètre à ongurer (typiquement, il est hoisi Êgal à la pÊriode de fon tionnement

du ontrleur).


168

En haĂŽnement pour la prise en ompte de ontraintes multiples

7.3 Mise en áuvre pratique pour l'asservissement visuel La mÊthode que nous venons de prÊsenter est gÊnÊrale, et peut être appliquÊe pour une large lasse de problèmes d'asservissement, pourvu que la tâ he globale puisse être Ê rite omme une fon tion de tâ he. Comme dans le reste de ette thèse, nous avons mis en áuvre notre appro he en utilisant l'asservissement visuel.

Quatre tâ hes ontrlant six degrÊs de libertÊ : La tâ he globale à rÊaliser est un positionnement de l'ee teur du robot auquel est xÊe la amÊra. Comme dans le hapitre 3, nous avons hoisi d'utiliser les quatre tâ hes al ulÊes à partir des moments de l'ensemble de points ara tÊristiques onsidÊrÊs : 

eg

utilise le entre de gravitĂŠ de l'ensemble de points pour ontrler les mouvements de entrage

de la amĂŠra ; 

eZ

est basĂŠe sur la surfa e de l'objet et ontrle les translations de la amĂŠra le long de son axe

optique ; 

eÎą ontrle la rotation de la amĂŠra autour de son axe optique en utilisant l'orientation prin ipale



eR

de l'ensemble de points (moments d'ordre 2) ; est basĂŠe sur des moments d'ordres supĂŠrieurs pour ontrler les mouvements de rotation

autour de l'objet. Ces quatre tâ he sont dÊtaillÊes dans l'annexe A.

Ă&#x2030;vitement de butĂŠes - ĂŠvitement d'o ultation : Lors du positionnement, nous onsidĂŠrons trois ontraintes lassiques en robotique manipulatri e. Les deux premières sont les ontraintes d'ĂŠvitement de butĂŠes et d'ĂŠvitement d'o ultation visuelle. Ces deux ontraintes, et les fon tions de oĂťt permettant leur mise en áuvre, ont dĂŠjĂ ĂŠtĂŠ prĂŠsentĂŠes dans les hapitres 3 et 4. Nous invitons le le teur Ă  s'y reporter pour plus de dĂŠtails.

Ă&#x2030;vitement d'obsta le :

Enn, la dernière ontrainte permet de prendre en ompte des obsta les

situĂŠs dans l'espa e de travail du robot. Les obsta les sont dĂŠnis dans l'espa e artĂŠsien 3D. La

fon tion de oĂťt est onstruite Ă partir des potentiels rotatifs (rotational-potential [Khatib 97â&#x201E;&#x201E;, que nous proposons d'ĂŠtendre du as d'un robot non-holonome naviguant dans le plan 2D, Ă  l'espa e 3D dans lequel ĂŠvolue l'ee teur du robot.

P0 le point de l'obsta le le plus pro he du robot. Soit n0 la normale Ă l'enveloppe de P0 . Pour pouvoir appliquer dire tement la fon tion de oĂťt dĂŠnie dans [Khatib 95â&#x201E;&#x201E;, l'espa e 3D doit ĂŞtre ramenĂŠ Ă  un plan. On note v la vitesse en translation du robot Ă  l'instant ourant. On se limite alors au plan (P0 , n0 , v). On note t0 la tangente Ă  l'obsta le en P0 telle que les plans (P0 , n0 , v) et (P0 , n0 , t0 ) soient onfondus (t0 est unique au signe près, et elui- i n'a pas d'importan e). Soit F0 le repère (P0 , n0 , t0 , z0 ), oĂš z0 est dĂŠni de telle sorte que F0 soit orthonormal. On note

l'obsta le en

L'ensemble de es notations est rÊsumÊ sur la gure 7.5. Les oordonnÊes d'un point dans le repère dÊnie dans le repère

F0

= Vrobs 0 oĂš

k1

sont

k2

F0

sont notĂŠes

r0 = (n, t, z).

La fon tion de oĂťt est

de la manière suivante :



1 1 2 k1 n

0

â&#x2C6;&#x2019;

 1 2 n ÂŻ

ÂŻ )2 + 12 k2 t(n â&#x2C6;&#x2019; n

si

n<n ÂŻ

sinon

(7.13)

sont deux paramètres ongurant l'importan e respe tive de la for e tangentielle et de la

for e normale de la fon tion de oĂťt (typiquement,

k1 >> k2 ),

et oĂš

n ÂŻ

est la distan e limite Ă laquelle

l'obsta le n'est plus pris en ompte. La fon tion de oĂťt est tra ĂŠe sur la gure 7.6. Le gradient est al ulĂŠ dire tement en dĂŠrivant la fon tion (7.13) dans l'espa e artĂŠsien. Le ja obien permettant de ramener le gradient dans l'espa e arti ulaire est donnĂŠ par :

  â&#x2C6;&#x201A;r0 â&#x2C6;&#x201A;r â&#x2C6;&#x201A;r0 = = 0 Rc I3 03 Jq â&#x2C6;&#x201A;q â&#x2C6;&#x201A;r â&#x2C6;&#x201A;q

(7.14)


7.4

Résultat expérimentaux

169

t en ng ne a t la p

z0

P0

t0

v

n0

n 

F0 . L'origine P0 du repère est le point de l'obsta le le plus n0 . t0 est la tangente à l'obsta le en P0 telle que n0 × t0 translation du robot). Dans le plan P0 , n0 , t0 , la fon tion de oût

Fig. 7.5  Évitement d'obsta le : dénition du repère

pro he du robot. La normale à l'obsta le en et

n0 × v

sont onfondus (où

v

P0

est noté

est la vitesse de

est dénie par (7.13). Le hamp de ve teur engendré est tra é sur la gure.

0

Rc

est la rotation entre le repère

F0 et le repère améra, I3 et 03 sont respe tivement les matri es Jq est le ja obien arti ulaire du robot.

identité et zéro de dimension trois, et

7.4 Résultat expérimentaux Nous présentons maintenant trois séries d'expérien es réalisées pour valider l'appro he proposée dans e hapitre. Le robot ayant servi de plate-forme expérimentale est le bras manipulateur à six degrés de liberté Afma6, déjà utilisé dans les hapitres pré édents. Ce robot n'a don pas de redondan e par rapport à la tâ he de positionnement requise. Il n'est don pas possible d'appliquer les méthodes lassiques d'asservissement tout en prenant en ompte les ontraintes. Dans la première expérien e, un objet mobile est pla é entre la améra et la ible. Le robot rejoint la position désirée en évitant les o ultations visuelles ausées par l'objet en mouvement, et en évitant simultanément ses butées arti ulaires. Lors de la se onde expérien e, un obsta le est pla é dans le hamp de travail du robot, qui doit rejoindre la position désirée en évitant de tou her l'obsta le mais aussi en évitant l'o ultation ausée lorsque l'obsta le passe devant la ible. Étant donné que le problème de la déte tion des objets dans le hamp de travail du robot est un problème de vision ouvert, nous avons réalisé ette dernière expérien e en simulation seulement. Enn, la dernière expérien e a pour objet d'illustrer un as où le ontrleur délibératif est né essaire, et permet d'atteindre l'obje tif.

7.4.1 Première expérien e : o ultations et butées Lors de ette expérien e, la position initiale est très pro he de la position désirée. On demande au robot de maintenir sa position. Pendant l'asservissement, un objet mobile passe entre la améra et la ible, provoquant une o ultation. Le robot doit alors éviter l'o ultation, puis les butées arti ulaires


170

En haĂŽnement pour la prise en ompte de ontraintes multiples

30 20 10 0 -10 0

1

2

3

4

-1

0 -0.5

1 0.5 y

5

x Fig. 7.6 

Fon tion de oĂťt de la ontrainte d'ĂŠvitement d'obsta le, tra ĂŠe dans le plan

(P0 , n0 , t0 ).

dans lesquelles l'objet mobile le pousse. Une fois l'o ultation rÊsolue et l'objet reparti, le robot doit revenir à sa position dÊsirÊe, dont il s'est ÊloignÊ. L'expÊrien e est rÊsumÊe sur les gures 7.7 à 7.12. La hronologie des a tions des ontrleurs, ainsi que l'a tivation des tâ hes pendant l'asservissement sont prÊsentÊes sur la gure 7.7. Sur toutes les autres gures, es instants sont rappelÊs par un trait verti al noir, pour permettre au le teur de mieux syn hroniser les diÊrents graphes. A l'instant (1), le ontrleur de ontraintes prÊdit une o ultation. Il hoisit alors de retirer la tâ he

eR ,

qui maximise les ritères de hoix ( f. gure 7.8). Le robot peut alors Êviter l'o ultation

en rÊalisant un mouvement de rotation autour de la ible (pour onserver les tâ hes

eg

et

eZ ).

La

fon tion de oÝt asso iÊe à l'o ultation se stabilise pendant que le robot se dÊpla e à la même vitesse que l'objet mobile (voir gure 7.9). Durant son dÊpla ement pour Êviter l'o ultation, le robot se rappro he des limites de son domaine arti ulaire, omme le montre la gure 7.10. Pour Êviter la ollision ave les butÊes, le ontrleur de ontraintes enlève à l'instant (2) su essivement la tâ he

eÎą ,

puis la tâ he

eZ .

Le robot s'avan e alors vers la ible pour rĂŠaliser l'ĂŠvitement d'o ultation sans

tou her les butÊes. A l'instant (3), l'objet en mouvement s'arrête mais sans se retirer. Un Êquilibre est alors atteint, et le ontrleur de remise dÊ ide de rÊintroduire les trois tâ hes dans la pile. Mais, puisque l'objet est toujours en pla e entre la ible et la position dÊsirÊe, l'o ultation reprend, et le ontrleur de ontraintes doit une nouvelle fois supprimer les trois tâ hes

eR , eÎą

et

eZ

de la pile.

Finalement, l'objet mobile se retire à l'instant (4). Les trois tâ hes sont remises dans la pile, et le robot se dÊpla e vers sa position dÊsirÊe. Lors du dÊpla ement, il se rappro he de ses butÊes (voir gure 7.11). Le ontrleur de ontraintes retire temporairement la tâ he

eZ

pour ĂŠviter la butĂŠe,

puis la remet rapidement. La gure 7.12 prÊsente l'Êvolution des erreurs des quatre tâ hes. Après l'instant (5), toutes les tâ hes sont dans la pile et le système onverge vers la position demandÊe.

7.4.2 Se onde expÊrien e : Êvitement d'obsta le et d'o ultation Pour ette se onde expÊrien e, un obsta le est pla Ê dans le hamp du travail du robot. Le robot doit rejoindre la position dÊsirÊe en Êvitant l'obsta le et l'o ultation qu'il peut auser. Comme nous l'avons dit plus haut, ette expÊrien e a ÊtÊ rÊalisÊe en simulation pour simplier le problème de la lo alisation de l'obsta le. Le robot simulÊ est le robot Afma6 utilisÊ dans l'expÊrien e prÊ Êdente. L'expÊrien e est rÊsumÊe sur les gures 7.13 à 7.18. La gure 7.13 rÊsume la hronologie de l'asservissement et l'a tivation des tâ hes. La gure 7.14 montre la traje toire du robot lors de l'asservissement. Le robot doit prin ipalement ee tuer un mouvement de re ul le long de l'axe optique de la amÊra. L'obsta le est pla Ê derrière le robot, 'est-à-dire sur sa traje toire. A l'instant (1), le


7.4

RĂŠsultat expĂŠrimentaux

(1) e

171

(2)

(3) (4) (5)

100

200

R

e alpha ez eg 0

300

400

500

600

700

Iterations Fig. 7.7 

Première expÊrien e : hronologie des instants et graphe d'a tivation des quatre tâ hes

Chaque a tion des ontrleurs est repÊrÊe par un trait noir verti al. Les instants sont regroupÊs et rÊfÊren Ês pour pouvoir être reportÊs dans le texte. Au dÊbut de l'asservissement, toutes les tâ hes sont dans la pile. L'ordre est le suivant :

[eg , eι , eZ , eR ]. La tâ he eR

est retirÊe à l'instant (1) pour Êviter l'o ultation. Les tâ hes

eÎą

puis

eZ

sont

retirÊes pour Êviter la ollision ave la butÊe pendant l'Êvitement d'o ultation. Les tâ hes sont remises dans la pile à l'instant (3). L'ordre de la pile est alors le suivant :

[eg , eZ , eÎą , eR ].

Les tâ hes sont rapidement retirÊes de la pile

ar l'objet rÊant l'o ultation est toujours prÊsent. Les tâ hes sont remises dans la pile à l'instant (4), au moment

eZ est temporairement [eg , eÎą , eR , eZ ].

oÚ l'objet s'en va. Le robot rejoint alors sa position initiale. Lors du dÊpla ement, la tâ he retirÊe à l'instant (5) pour Êviter une butÊe. Après l'instant (5), l'ordre de la pile est

1 e

g

e

0.8

Z

e

alpha

0.6

e

R

0.4 0.2 0 0

Fig. 7.8 

50

100

150

200

250

300

350

400

Première expÊrien e : valeur des ritères utilisÊs par le ontrleur de ontraintes

La tâ he maximisant la valeur du ritère est retirÊe de la pile. A haque fois que le ontrleur doit retirer une tâ he, un maximum lair apparaÎt : la sÊle tion est bien dis riminatoire. Lors de ette expÊrien e, la valeur du ritère de la tâ he

eg

a ÊtÊ for Êe à zÊro, de manière à toujours onserver la tâ he de entrage a tive. En eet, lorsque le

Fonction de cout

entrage n'est plus ontraint, l'ĂŠvitement d'o ultation a tendan e Ă entraĂŽner rapidement une perte de visibilitĂŠ.

Fig. 7.9 

occultation butees

1 0.5 0

0

100

200

300 400 Iterations

500

600

700

Première expÊrien e : valeurs des fon tions de oÝt d'Êvitement d'o ultation et de butÊes


172

En haînement pour la prise en ompte de ontraintes multiples

Plot X − Y 0.35 (5)

(4) 0

(2)

(3)

0.05 0.1 cible 0.15 0.2

s* (1)

0.25

s Camera

0.3

Modif. de la pile Butees

0.35

Obj. occultant 0

Fig. 7.10 

0.1

0.2

0.3

0.4

0.5

0.6

0.7

Première expérien e : traje toire de la améra et de l'objet o ultant dans le plan (X-Y) de l'espa e

de travail.

1

Art 1 Art 2 Art 3 Art 4 X: 663 Art 5 Y: 0.5543 Art 6

Positions articulaires

0.8

0.6

0.4

0.2

0

0

Fig. 7.11 

100

200

300 400 Iterations

500

600

700

Première expérien e : traje toire dans l'espa e arti ulaire du robot.


7.4

RĂŠsultat expĂŠrimentaux

173

0.03 eg e

0.025 Norme des erreurs

e e

0.02

Z a lpha R

0.015

0.01

0.005

0

0

100

200

300

400

500

600

700

Iterations

Fig. 7.12 

La tâ he

eR

Première expÊrien e : norme de l'erreur des quatre tâ hes. est retirÊe de la pile à l'instant (1). Les tâ hes

eÎą

et

ez

sont retirĂŠes Ă l'instant (2). Leurs erreurs

ne sont alors plus rÊgulÊes, et les degrÊs de libertÊ asso iÊs sont libres. Les tâ hes sont remises dÊnitivement à l'instant (5). Leurs erreurs dÊ roissent ensuite jusqu'à 0.

(1)

(2)

(3)

(4)

eR eZ ealpha eg 0 Fig. 7.13 

10

20

30

40

50

60

70

80

Se onde expÊrien e : hronologie des instants et graphe d'a tivation des quatre tâ hes

Au lan ement de l'asservissement, l'ĂŠtat de la pile est le suivant :

[eg , eÎą , eR , eZ ].

La tâ he

eg

est retirĂŠe Ă

l'instant (1) pour Êviter l'obsta le. Une fois l'obsta le ÊvitÊ, la tâ he est rÊintroduite dans la pile à l'instant (2), avant d'être à nouveau retirÊe pour permettre l'Êvitement d'o ultation (instant (3)). Enn, la tâ he est dÊnitivement remise à l'instant (4) lorsque l'o ultation est ÊvitÊe, et le système onverge nalement vers la position dÊsirÊe.

ontrleur de ontraintes prÊdit une ollision, et retire en onsÊquen e la tâ he

eg .

C'est en eet elle

qui maximise le ritère ( f. gure 7.15). Le robot ontourne alors l'obsta le. Dès que l'obsta le est ÊvitÊ, à l'instant (2), le ontrleur de remise rÊintroduit la tâ he

eg

dans la pile. La amĂŠra passe alors

derrière l'obsta le par rapport à la ible, e qui ause une o ultation visuelle. Des aptures d'images rÊalisÊes à partir du point de vue de la amÊra embarquÊe sont donnÊes sur la gure 7.16. L'obsta le entre dans le hamp de vue et mena e de a her la ible. Le ontrleur de ontraintes retire alors la tâ he

eg

de la pile une se onde fois, pour ĂŠviter l'o ultation. Le robot poursuit son dĂŠpla ement

vers la rÊgulation des trois tâ hes a tives. L'o ultation est nalement ÊvitÊe, et le ontrleur remet la tâ he

eg

dans la pile à l'instant (4). Après l'instant (4), toutes les tâ hes onvergent vers 0, omme

le montre la gure 7.17.

7.4.3 Troisième expÊrien e : butÊes non onvexes Cette dernière expÊrien e permet de valider le fon tionnement du ontrleur dÊlibÊratif. Nous ne onsidÊrons plus i i que la ontrainte d'Êvitement de butÊes. Le dÊpla ement à rÊaliser est prin ipale-


174

En haînement pour la prise en ompte de ontraintes multiples

Plot Z − X 1 0.9 0.8

s 0.7

1

0.6 cible

0.5 2

3

s*

0.4

4

0.3 0.2

Modif. pile Trajectoire Obstacle Butees

0.1 0 −0.6

Fig. 7.14 

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

1.2

1.4

Se onde expérien e : traje toire de la améra dans le plan (X-Y) de l'espa e de travail.

e

1

g

e

z

0.8 Critere

e

α

0.6

e

R

0.4 0.2 0 0

Fig. 7.15 

10

20

30

40 Iterations

50

60

70

80

Se onde expérien e : valeur des ritères utilisés par le ontrleur de ontraintes.


7.4

Résultat expérimentaux

(a) Fig. 7.16 

175

(b)

( )

(d)

Se onde expérien e : apture d'images réalisée depuis le point de vue de la améra embarquée : (a)

depuis la position initiale ; (b) lors du début de l'o ultation (à l'instant (3)) ; ( ) lors de la n de l'o ultation (à l'instant (4)) ; (d) à la position nale. Depuis la position nale, l'obsta le est dans le hamp de vue. La prédi tion est susamment pré ise pour déte ter que, à ette position, l'obsta le ne risque pas de auser d'o ultation et n'a don pas à être pris en ompte.

e e

0.15

e e

0.1

g a lpha Z R

0.05

0

Fig. 7.17 

0

10

20

30

40

50

60

70

80

Se onde expérien e : norme de l'erreur des quatre tâ hes.

Seule la tâ he

eg

est retirée de la pile pendant l'asservissement. Les trois autres tâ hes onvergent exponentiellement

vers 0. Entre les instants (1) et (2), l'erreur de la tâ he

eg

dé roît plus vite qu'exponentiellement, alors qu'elle

n'est pas dans la pile. En fait, le mouvement d'évitement d'obsta le va dans le même sens que le mouvement de entrage, mais est plus rapide. La tâ he est don retirée pour a élérer le mouvement du robot sur le degré de liberté orrespondant, et ainsi éviter l'obsta le. Ce i ne serait pas né essaire en utilisant la redondan e dire tionnelle.


176

En haînement pour la prise en ompte de ontraintes multiples

Fig. 7.18 

Se onde expérien e : mouvement du robot autour de l'obsta le

L'image orrespond pratiquement au plan X-Z représentée sur la gure 7.14.

ment une rotation de

60o

autour de l'axe optique de la améra. La butée du poignet interdit de faire 300o .

e mouvement dire tement, et le robot doit don réaliser la rotation inverse de

Lorsqu'on ne onsidère que la ontrainte d'évitement de butées, le seul minimum lo al qui peut se produire est ausé par la stru ture non onvexe de la fon tion de passage entre espa es arti ulaire et artésien. Lorsque le robot est bloqué ontre une butée qu'il essaie de traverser, le ontrleur délibératif dénit un but intermédiaire et introduit une tâ he dans la pile pour le rejoindre. Ce but intermédiaire est simplement la butée opposée de l'arti ulation bloquée. La tâ he à introduire dans la pile s'é rit sous la forme d'une fon tion de tâ he :

eart = qi − q¯i où

qi

est la position de l'arti ulation bloquée, et

q¯i



(7.15)

est la butée opposée à la position a tuelle du robot

sur l'arti ulation i. L'expérien e est résumée sur les gures 7.19 à 7.21. La hronologie et le graphe d'a tivation sont donnés par la gure 7.19. La traje toire arti ulaire du robot est tra ée sur la gure 7.20. Le mouvement prin ipal du robot s'a omplit sur l'arti ulation 4. Le robot ommen e par tenter de fran hir la butée supérieure du robot. La ollision ave la butée est prédite à l'instant (1). La tâ he

est alors

retirée de la pile. Très vite, les autres tâ hes sont a omplies. A l'instant (2), toutes les tâ hes sauf

sont régulées à 0. Le système est don dans un minimum lo al. La tâ he

eart

est introduite par

le ontrleur délibératif pour ontourner la butée. Le robot bouge sans onsidérer les informations visuelles le long de l'arti ulation 4, alors que les autres arti ulations sont utilisées pour ompenser le mouvement et maintenir les autres tâ hes à 0. L'erreur

eα roît en onséquen e. A l'instant (5), l'erreur eα est réintroduite à la

re ommen e à dé roître : le robot est sorti du minimum lo al. La tâ he

pla e de la tâ he

eart .

Pratiquement simultanément (bien qu'indépendamment), le robot atteint une

autre de ses butées. La tâ he

eR

est temporairement retirée de la pile à deux reprises pour permettre

l'évitement (instants (3) et (5)). Enn, à l'instant (6), toutes les tâ hes sont dans la pile, et le robot onverge à la position désirée.


7.4

Résultat expérimentaux

(1) (2)

177

(3)(4) (5)(6)

e art eR e alpha eZ eg 0

Fig. 7.19 

500

1000

1500

2000

2500

3000

Troisième expérien e : hronologie des instants et graphe d'a tivation des quatre tâ hes.

L'ordre initial de la pile est

[eg , eα , eR , eZ ].

La tâ he

est retirée à l'instant (1) pour assurer l'évitement de

butées. Le système onverge alors dans un minimum lo al, et le ontrleur délibératif introduit à l'instant (2) la tâ he

eart .

Cette tâ he permet de quitter le minimum lo al. A l'instant (3), la tâ he

la pile. L'ordre de la pile est alors le suivant :

[eg , eR , eZ , eα ].

eα peut être remise dans eR est retirée et remise

Simultanément, la tâ he

(à l'instant (4)) une première puis une se onde fois (instant (5) et (6)) pour permettre l'évitement d'une se onde butée. L'ordre de la pile lors de la onvergen e nale est

[eg , eZ , eα , eR ].

1 Art 1 Art 2 Art 3 Art 4 Art 5 Art 6

0.9 0.8

Positions articulaires

0.7 0.6 0.5 0.4 0.3 0.2 0.1 0

0

Fig. 7.20 

500

1000

1500 Iterations

2000

2500

3000

Troisième expérien e : traje toire dans l'espa e arti ulaire du robot.


178

En haînement pour la prise en ompte de ontraintes multiples

0.25 e e e

0.2

g Z a lpha

Normes de l’erreur

eR

0.15

0.1

0.05

0

0

Fig. 7.21 

500

1000

1500 Iterations

2000

2500

3000

Troisième expérien e : norme de l'erreur des quatre tâ hes.

e

0

g

e

z

−0.2

e

Critere

a

e

−0.4

R

−0.6 −0.8 −1 0

Fig. 7.22 

500

1000

1500 Iterations

2000

2500

3000

Troisième expérien e : valeur des ritères utilisés par le ontrleur de ontraintes.


7.5

Con lusion

179

7.5 Con lusion Le système proposÊ, onstruit à partir de la pile de tâ hes et de plusieurs ontrleurs de haut niveau, permet d'assurer un asservissement respe tant les ontraintes imposÊes et rejoignant le position dÊsirÊe. L'ajout d'un ontrle au niveau des tâ hes permet d'Êtendre le domaine de dÊnition de la pile de tâ hes, et permet en parti ulier de prendre en ompte des ontraintes même lorsqu'au un degrÊ de libertÊ n'est disponible. Nous avons don montrÊ qu'il Êtait possible de ontrler un robot dans un environnement en ombrÊ, omme le fait la plani ation de traje toire, mais de manière rÊa tive et sans nÊ essitÊ de onnaissan e ou de re onstru tion de l'environnement. Des expÊrien es sur un bras manipulateur ont pu vÊrier que ette mÊthode permettait d'obtenir une onvergen e malgrÊ diÊrents types d'obsta les. Nous n'avons pour l'instant onsidÊrÊ que le as d'un bras manipulateur. Nous allons maintenant nous intÊresser à d'autres types de robot, et montrer que la solution de l'en haÎnement de tâ hes est aussi valide pour les robots non holonomes ou les humanoïdes.


180

En haĂŽnement pour la prise en ompte de ontraintes multiples


Chapitre 8

Contrle d'un robot non-holonome par en haÎnement de tâ hes

D

ans le hapitre prÊ Êdent, nous avons proposÊ une stru ture de ontrle permettant de rÊaliser une tâ he omplexe tout en respe tant des ontraintes telles que l'Êvitement de butÊes arti u-

laires ou la visibilitĂŠ des primitives. Ces ontraintes doivent ĂŞtre ĂŠ rites sous la forme d'une fon tion de

oĂťt pour ĂŞtre prises en ompte dans le al ul de la loi de ommande. Dans e hapitre, nous her hons Ă ĂŠtendre ette stru ture de ontrle pour prendre en ompte d'autres types de ontraintes. Nous nous intĂŠressons Ă  des robots mobiles de type uni y le ou voiture. Ces robots sont non-holonomes, 'estĂ -dire soumis Ă  une ontrainte de roulement sans glissement. La ontrainte de non-holonomie ĂŠtant par dĂŠnition impossible Ă  intĂŠgrer, et don Ă  mettre sous la forme d'une fon tion de oĂťt, il n'est en eet pas possible de la prendre en ompte dire tement dans la pile omme nous l'avons fait jusqu'Ă  prĂŠsent.

8.1 Ă&#x2030;tat de l'art Les problèmes de ommande rĂŠfĂŠren ĂŠe apteur en robotique non-holonome sont gĂŠnĂŠralement rĂŠpartis en trois grandes lasses : suivi de hemin ( 'est-Ă -dire sans ontrainte temporelle), stabilisation de traje toires instationnaires ( 'est-Ă -dire au ontraire en respe tant une vitesse imposĂŠe le long de la traje toire) et stabilisation en un point xe. Nous nous intĂŠressons dans e hapitre Ă  e dernier problème spĂŠ iquement, puisque 'est dans e adre de travail que la ontrainte de non-holonomie est la plus ĂŠvidente. En eet, e problème ne peut pas ĂŞtre rĂŠsolu par les mĂŠthodes de ommande linĂŠaire, telles que elles utilisĂŠes dans toute la première partie de e do ument. Plus gĂŠnĂŠralement, il n'est pas possible de stabiliser un robot soumis Ă  une ontrainte non-holonome en utilisant une loi de ommande Ă  retour d'ĂŠtat ontinu et rĂŠfĂŠren ĂŠe uniquement sur l'ĂŠtat [Bro kett 83â&#x201E;&#x201E;. Ce i implique que la loi de ommande dĂŠpende soit expli itement du temps (on parle alors de ommande instationnaire), soit d'un ĂŠtat dis ret qui hange en fon tion de l'avan ement du robot.

8.1.1 Commandes Ă retour d'ĂŠtat Les ommandes Ă  retour d'ĂŠtat dis ontinu :

la première solution onsiste à onstruire une

loi de ommande ontinue par mor eaux [CanudasdeWit 92, CanudasdeWit 95â&#x201E;&#x201E;. Dans [Blo h 92â&#x201E;&#x201E;, la


182

Contrle d'un robot non-holonome par en haÎnement de tâ hes

loi de ommande est onstruite omme une su ession de onvergen es vers des minima lo aux. L'en haÎnement permet d'obtenir une stabilisation asymptotique du système. Un en haÎnement parti ulier nommÊ

mode glissant (sliding mode )

est proposĂŠ dans [Blo h 94, Guldner 95â&#x201E;&#x201E;. Lors d'une phase prĂŠli-

minaire, le robot se positionne sur un sous-espa e sur lequel il peut ensuite

glisser

jusqu'Ă la position

dÊsirÊe. Cependant, ette solution prÊsente en pratique des problèmes de dis ontinuitÊ, puisque le sous-espa e sur lequel le robot glisse est à une zone frontière de dis ontinuitÊ de la loi de ommande.

Les ommandes instationnaires ont ĂŠtĂŠ introduite dans [Samson 93â&#x201E;&#x201E;. Plutt que de dĂŠpendre

d'un ĂŠtat dis ret, la loi de ommande dĂŠpend d'une fon tion pĂŠriodique par rapport au temps. Cette solution est très gĂŠnĂŠrale et peut ĂŞtre ĂŠtendue Ă l'ensemble des systèmes non-holonomes ommandables. Une solution permettant de onstruire de telles lois de ommande pour un système pouvant se mettre sous une forme haĂŽnĂŠe (typiquement un uni y le ou une voiture) est proposĂŠe dans [Pomet 92, Murray 93â&#x201E;&#x201E;. Cette solution est asymptotiquement stable et prĂŠsente de bonnes propriĂŠtĂŠs de robustesse, mais ne permet qu'une onvergen e lente. En parti ulier, il n'est pas possible d'obtenir une vitesse de onvergen e exponentielle [Murray 93â&#x201E;&#x201E;. Une solution pour onstruire une loi de ommande assurant une onvergen e exponentielle est proposĂŠe dans [M'Closkey 97â&#x201E;&#x201E;. La loi de ommande est instationnaire, ontinue et dĂŠrivable partout sauf Ă  l'origine. Par ontre, il n'est plus possible d'assurer une borne de la dĂŠrivĂŠe. En onsĂŠquen e, es lois de ommande sont beau oup moins robustes, et prĂŠsentent mĂŞme une grande sensibilitĂŠ aux bruits lorsqu'elles sont mises en pratique [LizĂĄrraga 98â&#x201E;&#x201E;. Enn, une dernière solution plus rĂŠ ente her he Ă  diminuer la omplexitĂŠ du problème en proposant une stabilisation pratique dans un voisinage de sa position dĂŠsirĂŠe. Les fon tions transverses ont ĂŠtĂŠ initialement proposĂŠes dans [Morin 03â&#x201E;&#x201E;, et mises en appli ation dans [Artus 03â&#x201E;&#x201E;. Cette solution semble très prometteuse bien qu'elle n'ait pas en ore ĂŠtĂŠ beau oup reprise [LizĂĄrraga 05â&#x201E;&#x201E;. La dĂŠpendan e par rapport Ă  la variable temporelle est rempla ĂŠe par l'ajout d'une variable

tranverse

qui permet de faire os iller le système lorsque ela est nÊ essaire pour rÊaliser un dÊpla ement dans la dire tion non holonome.

Les ommandes hybrides orent une troisième solution intÊressante en ombinant plusieurs lois

de ommande instationnaires en fon tion d'ĂŠtats dis rets [Kolmanovsky 95b, Hespanha 99â&#x201E;&#x201E;. Cette solution ore l'avantage d'une bonne robustesse par l'utilisation de ommandes instationnaires bornĂŠes, tout en permettant d'obtenir une onvergen e exponentielle [M Clamro h 00â&#x201E;&#x201E;.

8.1.2 Asservissement dans l'espa e apteur L'ensemble des travaux que nous venons de prĂŠsenter permet un asservissement rĂŠfĂŠren ĂŠ apteur, mais nĂŠ essite l'extra tion de la pose omplète du vĂŠhi ule. Il existe en proportion peu de travaux proposant de travailler dire tement dans l'espa e apteur. Deux solutions prin ipales ont ĂŠtĂŠ proposĂŠes. La première onsiste Ă adapter dire tement les ommandes linĂŠaires de la robotique manipulatri e Ă  des robots non holonomes, en al ulant leur ja obien. Cette solution a l'avantage de la simpli itĂŠ. Malheureusement, le système onsidĂŠrĂŠ n'est pas ontrlable, puisque l'approximation au premier ordre n'est pas apable de dĂŠ rire la ontrainte de non holonomie. Ă&#x20AC; la ondition d'ajouter des degrĂŠs de libertĂŠ supplĂŠmentaires (typiquement, une tourelle

pan-tilt

sur laquelle est montĂŠ le apteur), il est

nĂŠanmoins possible d'obtenir de bonnes performan es d'asservissement. En parti ulier, le système est stable, et il permet d'obtenir en pratique la rĂŠalisation de tâ hes Ă ondition qu'elles soient redondantes. Ainsi, un suivi de route en ommandant dire tement les primitives dans l'image (des splines) est proposĂŠ dans [Frezza 95â&#x201E;&#x201E;. Dans [PissardGibolet 96â&#x201E;&#x201E;, les mĂŠthodes lassiques d'asservissement visuel sont ĂŠtendues au as d'un système omposĂŠ d'un robot mobile et d'une tourelle

pan-tilt. Cette solution

est ĂŠtendue dans [Hager 98â&#x201E;&#x201E; pour le suivi d'une traje toire dĂŠjĂ rĂŠalisĂŠe en utilisant un asservissement 2-1/2-D . Une se onde solution onsiste Ă  ĂŠ rire dire tement l'ĂŠvolution des primitives visuelles omme un système non holonome. La solution la plus ourante utilise la forme haĂŽnĂŠe, e qui permet de dĂŠduire alors immĂŠdiatement une loi de ommande instationnaire garantissant la onvergen e du système [Hashimoto 97, Tsakiris 97, Ma 99, Fang 02â&#x201E;&#x201E;. Un travail similaire a ĂŠtĂŠ rĂŠalisĂŠ dans [Maya 06â&#x201E;&#x201E; pour porter la ommande par fon tion transverse dans l'espa e image. Ces solutions sont gĂŠnĂŠriques. En


8.2

Commande linéaire des robots mobiles

183

utilisant les lois de ommande instationnaires, elles garantissent de plus la stabilité asymptotique et la onvergen e à la position désirée. Mais il est alors né essaire de réé rire omplètement l'ensemble du système en fon tion des primitives onsidérées et de la plateforme utilisée. Par ontre, il n'existe pas à notre onnaissan e de solution générique permettant d'utiliser des ommandes simples à retour d'état dis ontinu pour réaliser un asservissement dire tement dans l'espa e apteur. Dans e hapitre, nous proposons don d'utiliser les ommandes linéaires pour ontrler la onguration omplète d'un robot non holonome. Ce i nous permet de varier la ommande pour

pan-tilt )

prendre simplement en ompte des degrés de liberté supplémentaires (par exemple un tourelle

ou des primitives d'asservissement omplexes (par exemple, elles al ulées à partir des moments de l'image). Une telle ommande utilisée seule amène le robot dans un minimum lo al. Pour permettre la réalisation d'une tâ he asservissant tous les degrés de liberté du système, nous proposons don d'utiliser un ontrleur de plus haut niveau, permettant de modier l'état et don la ommande du robot. En hoisissant adéquatement les tâ hes, nous montrons qu'il est possible de faire onverger le système vers la position désirée. En e sens, la ommande que nous allons proposer se rappro he des ommandes par retour d'état dis ontinu ou des ommandes hybrides, mais appliquées à la ommande dans l'espa e image.

8.2 Commande linéaire des robots mobiles Dans ette se tion, nous présentons l'appli ation des tâ hes linéaires, et en parti ulier de la pile de tâ hes à des robots mobiles de type uni y le et voiture. Ces lois de ommande mènent le robot dans des minima lo aux évidents et di iles à résoudre. Pour remédier à e problème, nous introduirons alors dans la ommande linéaire un terme du se ond ordre, et nous montrerons que ela améliore la onvergen e au sens où le robot onverge plus pro he du but. Cela ne permet évidemment pas de onverger vers la position désirée, mais améliore susamment le ontrle pour rendre possible l'utilisation de la pile de tâ hes pour une programmation au niveau omportemental du robot. La se tion suivante utilisera alors ette ommande bas niveau pour onduire le robot vers la position nale à l'aide d'un en haînement de tâ hes.

8.2.1 Modèles du robot Nous rappelons i i deux modèles lassiques de robots non-holonomes : l'uni y le et la voiture (voir gure 8.1).

L'uni y le

se ompose de deux roues opposées oaxiales ommandées indépendamment. Le

système peut se résumer à la onguration de la base système s'é rit alors :

ave

cos θ  X1 rb =  sin θ  0

et

rb = x, y, θ

 r˙b = X1 rb u1 + X2 u2   0  X2 rb = X2 =  0 . Les 1



. Le modèle inématique du

deux entrées de ommande

(8.1)

u1

et

u2

orrespondent respe tivement dans e modèle aux vitesses longitudinale et angulaire de l'uni y le autour de son entre On note

FO

M. Fb le repère entré sur le robot. repère FO s'é rit :    o Ju = X1 rb X2

le repère xe et

base mobile al ulé dans le

D'après (8.1), le ja obien

o

Ju

de la

(8.2)

En hangeant de repère, on obtient l'expression du ja obien de la base mobile exprimée dans le repère mobile :

1 r˙b = Ju u = b Vo o Ju u =  0 0

 0 0 u 1

(8.3)


184

Contrle d'un robot non-holonome par en haînement de tâ hes

φ

q1

q1 l

y C(xc , yc , θc )

M′

C(xc , yc , θc )

y

θ θ

M(x, y)

M(x, y)

x

O

x

O

(a) Modèle de l'uni y le Fig. 8.1 

(b) Modèle de la voiture

Modèles de robots mobiles non holonomes de type uni y le ( ontrainte de roulement sans glissement,

mais vitesse de rotation instantanée) et de type voiture ( ontrainte de roulement sans glissement et rotation dépendant du braquage).

b

Vo est la matri e de transformation du torseur inématique permettant de passer de son expression Fo dans le repère Fb . Le ja obien est de rang deux. Il ne permet don pas de ontrler trois degrés de liberté x, y, θ du système.

dans le repère les

La voiture

peut se mettre sous la forme d'un modèle similaire. Celui- i est présenté sur la

gure 8.1(b). La voiture est omposée d'un train arrière moteur, et d'un train avant dire teur et orientable. Comme dans le as de l'uni y le, on note

φ

x, y, θ



la position de la base mobile. On note

l'orientation du train avant par rapport à l'axe de symétrie du véhi ule. On note

 rb = x, y, θ, φ

la onguration omplète de la base mobile. Le modèle inématique lassique s'obtient à partir des ontraintes non-holonomes du système (voir par exemple [Murray 93℄) et s'é rit :

ave

 cos θ  sin θ    X1 rb =   tan φ  l 0 

et

 r˙b = X1 rb u1 + X2 u2   0  0    X2 rb = X2 =   0 . Les 1

(8.4)

deux entrées de ommande

u1

et

u2

orrespondent dans e modèle à la vitesse longitudinale du robot et à la vitesse angulaire de braquage. o Le ja obien Ju al ulé dans le repère FO s'é rit :

o

Ju =



X1 rb



X2



(8.5)

De la même manière que dans le as de l'uni y le, le ja obien se simplie lorsqu'on l'exprime dans le repère mobile :

Tourelle

pan-tilt

:

 r˙b = Ju u = b Vo o Ju u =  

1 0 tan φ l

0

 0 0  u 0  1

(8.6)

L'intérêt prin ipal de l'é riture sous forme linéarisée est de se pla er ainsi

dans un adre similaire à elui généralement utilisé pour la ommande de robot holonome. Il est don


8.2

Commande linĂŠaire des robots mobiles

185

très fa ile d'ajouter au système des arti ulations holonomes supplÊmentaires, par exemple une tourelle

pan-tilt

[PissardGibolet 96, Tsakiris 97â&#x201E;&#x201E; ou un bras redondant [DeLu a 06â&#x201E;&#x201E;. En pratique, es degrĂŠs

de libertÊ permettent de simplier le positionnement du apteur montÊ sur l'organe terminal du bras en ajoutant des degrÊs de libertÊ au système. Lorsqu'on her he à positionner la base mobile et non pas l'ee teur, omme 'est notre as, es degrÊs de libertÊ supplÊmentaires permettent d'obtenir une ertaine redondan e, indispensable par exemple pour maintenir la visibilitÊ des informations apteurs lors de l'asservissement. On note

q le ve teur de position arti ulaire du bras embarquĂŠ. On note C un point xe par rapport C est onfondu ave le entre optique de la

Ă son organe terminal. Dans notre as, nous supposons que

amÊra embarquÊe (voir gure 8.1). Le ja obien de l'organe terminal par rapport au système omplet s'Ê rit dire tement en on atÊnant le ja obien

rË&#x2122;c = oĂš

c

Vb



c

Ju

de la base mobile et

Vb Ju

Jq





u qË&#x2122;

Jq

du bras :



(8.7)

est la matri e de transformation des vitesses exprimÊes dans Fb vers Fc . Dans la suite,   J = c Vb Ju Jq le ja obien du système omplet. Cette dernière Êquation est la forme

on notera

linÊarisÊe du dÊpla ement du repère terminal du bras en fon tion de toutes les entrÊes de ommande du système, 'est-à -dire à la fois

u pour ommander la base mobile et qË&#x2122; pour ommander le robot holonome

embarquĂŠe. Ce i nous permet don d'appliquer dire tement le formalisme lassique d'asservissement rĂŠfĂŠren ĂŠ apteur [Samson 91, Espiau 92â&#x201E;&#x201E;.

8.2.2 Appli ation Ă l'asservissement visuel Comme dans les hapitres prĂŠ ĂŠdents, on onsidère une tâ he rĂŠfĂŠren ĂŠe apteur, dĂŠ rite par une e entre les primitives s al ulĂŠes Ă  l'instant ourant et leur valeur dĂŠsirĂŠe sâ&#x2C6;&#x2014; . Il est possible de

erreur

al uler de manière gÊnÊrale et indÊpendante du robot la matri e d'intera tion de ette tâ he :

eË&#x2122; = Lvc oĂš

vc

(8.8)

est la vitesse instantanÊe du repère du apteur. En utilisant (8.7), il est ensuite possible de

al uler le ja obien de ette tâ he, qui, lui, dÊpend du robot onsidÊrÊ. Dans notre as, l'Êvolution des primitives par rapport aux mouvements du robot s'Ê rit :

eË&#x2122; = LMJ oĂš



u qË&#x2122;



(8.9)

M est une matri e permettant de passer de la vitesse instantanĂŠe du apteur vc Ă la paramĂŠtrisation rc (vc = MrË&#x2122;c ).

hoisie pour la pose de la amĂŠra

8.2.3 ExpÊrien e 1 : limitations de la ommande linÊaire Le système linÊarisÊ permet de retrouver le adre gÊnÊral de la robotique manipulatri e, et permet don d'Ê rire une ommande uniÊe pour ontrler le robot mobile selon une rÊfÊren e apteur. Malheureusement, le système obtenu n'est pas ommandable : il ne permet pas de ontrler le robot dans la dire tion de la ontrainte non holonome. Prenons dans un premier temps l'exemple d'une amÊra xe montÊe sur un uni y le. La tâ he à a omplir est un positionnement de la amÊra par rapport à une ible visuelle. Comme dans les hapitres prÊ Êdents, les primitives utilisÊes sont les moments d'un ensemble de points ara tÊristiques (voir l'annexe A pour une des ription dÊtaillÊe). Le robot Êtant ontraint de se dÊpla er sur un plan, on ne onsidère pas les mouvements de translation sur l'axe verti al, ni de rotations (et

pan

tilt

de la amĂŠra

non plus puisque la amĂŠra est xe).

D'après (8.7), la loi de ommande dÊpend de la position à laquelle la amÊra est montÊe sur la base mobile. L'expÊrien e a ÊtÊ rÊalisÊe ave deux positions typiques : la amÊra est montÊe soit à


186

Contrle d'un robot non-holonome par en haÎnement de tâ hes

2

Cam. en 0 Cam. en 1 pose initiale

1.5

1

0.5

0 pose desiree â&#x2C6;&#x2019;2

Fig. 8.2 

â&#x2C6;&#x2019;1.5

â&#x2C6;&#x2019;1

â&#x2C6;&#x2019;0.5

0

ExpĂŠrien e 1 : traje toire du robot dans le plan lorsque la amĂŠra est pla ĂŠe sur le entre de rotation

de la base mobile ( amĂŠra en 0) ou Ă l'avant du vĂŠhi ule ( amĂŠra en 1).

l'empla ement du entre de rotation du robot, soit à l'avant du robot, sur l'axe de symÊtrie. Dans le premier as, le ja obien de la tâ he à la position nale est nul sur la se onde ligne, orrespondant aux translations latÊrales de la plateforme. La loi de ommande n'est don pas apable d'asservir e degrÊ de libertÊ, et la tâ he s'a omplit sans tenir ompte de l'erreur latÊrale. La traje toire obtenue est prÊsentÊe sur la gure 8.2. L'asservissement parvient à orriger l'erreur longitudinale et l'erreur en rotation. Par ontre, la position nale est loin d'être la position dÊsirÊe. Au ontraire, lorsque la amÊra est montÊe à l'avant du robot, la se onde ligne du ja obien n'est pas nulle. Le robot tient don ompte de l'erreur latÊrale. La traje toire obtenue est aussi donnÊe sur la gure 8.2. La position dÊsirÊe est bien plus pro he de la position dÊsirÊe. Le robot est dans un minimum lo al, et un ompromis est rÊalisÊ entre les trois omposantes de l'erreur. Il est fa ile de mettre en Êviden e le degrÊ in ontrlable lorsque la amÊra est montÊe sur le entre de rotation. Mais ela ne veut pas dire que monter la amÊra sur l'avant du robot rÊsout le problème. En eet, le ja obien reste de rang 2, et il existe toujours un degrÊ de libertÊ qui n'est pas ontrlÊ par la loi de ommande. En utilisant les deux mêmes ongurations, on rÊalise maintenant le même asservissement en partant d'une position initiale diÊrente. Le prin ipal mouvement à rÊaliser est un mouvement de re ul le long de l'axe du robot. Les deux traje toires obtenues sont prÊsentÊes sur la gure 8.3. Comme prÊ Êdemment, l'erreur latÊrale n'est pas ontrlÊe lorsque la amÊra est sur le entre de rotation de la base. Lorsque la amÊra est montÊe sur l'avant du vÊhi ule, l'erreur latÊrale est ontrlÊe dans le mauvais sens. Le robot s'Êloigne de la valeur dÊsirÊe de ette omposante. Cela n'est pas dÝ à un ompromis par rapport aux autres oe ients de l'erreur : la norme de l'erreur globale est tra Êe gure 8.4. Elle dÊ roÎt dans un premier temps lorsque l'erreur longitudinale est rÊgulÊe, puis roÎt lÊgèrement à la n du positionnement lorsque le robot s'Êloigne latÊralement. L'erreur globale obtenue est plus ÊlevÊe que lorsque le mouvement latÊral n'est pas ontrlÊ. Enn, la position atteinte


8.2

Commande linéaire des robots mobiles

187

Cam. en 0 Cam. en 1

0.8

0.6

0.4

0.2

0 pose initiale pose desiree

−0.2

−0.4

−0.6 0

Fig. 8.3 

0.5

1

1.5

2

Expérien e 1 : traje toire du robot dans le plan lorsque la améra est pla ée sur le entre de rotation

de la base mobile ( améra en 0) ou à l'avant du véhi ule ( améra en 1).

2

Norme de l’erreur

Cam. en 0 Cam. en 1 1.5

1

0.5

0

0

20

Fig. 8.4 

40

60

80

100 Iterations

120

140

160

180

200

Expérien e 1 : évolution de la norme de l'erreur pendant l'asservissement.


188

Contrle d'un robot non-holonome par en haÎnement de tâ hes

est plus ÊloignÊe de la position dÊsirÊe que lorsque la amÊra est entrÊe sur l'axe de rotation. Ce i s'explique très fa ilement lorsqu'on Ê rit le ja obien du robot exprimÊ dans le repère amÊra. Par exemple, dans le as d'une amÊra xe montÊ sur l'avant du robot à une distan e rotation de la base, il s'Ê rit :

L

du entre de



 1 0 c Ju = c Vb Ju =  0 L  0 1

(8.10)

Un lien est don obtenu entre la rotation de la base, et les dĂŠpla ements latĂŠraux de la amĂŠra. Ce lien est en fait dĂť au mouvement de la amĂŠra lorsque la base tourne sur pla e et absolument pas Ă un rĂŠel ontrle du degrĂŠ de libertĂŠ non holonome. Lorsque le robot avan e, les deux mouvements orrespondent. Le robot tourne don pour rĂŠguler lo alement l'erreur latĂŠrale, et ela lui permet dans un se ond temps de se dĂŠpla er latĂŠralement. Par ontre, lorsque le robot re ule, il est nĂŠ essaire de

ontre-braquer

pour obtenir un rĂŠel ontrle de l'erreur latĂŠrale. Ce mouvement va Ă l'en ontre de

l'approximation linĂŠaire donnĂŠe par le ja obien. Le robot tourne don dans le mĂŞme sens que lorsqu'il avan e, e qui le onduit Ă s'ĂŠloigner latĂŠralement de la ible.

8.2.4 Con lusions L'approximation linÊaire ne permet pas de faire onverger le robot vers sa position dÊsirÊe. Il est de plus impossible de ontrler ertains degrÊs de libertÊ du système en utilisant une ommande linÊaire. Il semble don di ile d'espÊrer pouvoir faire onverger le système sur es degrÊs de libertÊ en en haÎnant des tâ hes qui sont in apables de les ontrler. Pour permettre de prendre en ompte es degrÊs de libertÊ dans le al ul de la ommande, nous proposons don dans le paragraphe suivant d'intÊgrer des termes de se ond ordre dans le al ul de la matri e ja obienne. Il devient alors possible de prendre en ompte la dire tion non holonome dans la loi de ommande. Le système pseudo-linÊaire obtenu permet alors d'appliquer l'en haÎnement de tâ hes pour obtenir une onvergen e à la position dÊsirÊe.

8.3 Commande pseudo-linĂŠaire des robots mobiles L'approximation linĂŠaire ne permet pas d'apprĂŠhender la ontrainte de non holonomie. En eet, lorsqu'on ne onsidère que le dĂŠpla ement instantanĂŠ du robot mobile, il n'est pas possible de ontrler ses dĂŠpla ements latĂŠraux. Ce degrĂŠ de libertĂŠ apparaĂŽt Ă l'ordre 2. En eet, intuitivement, si on onsidère les dĂŠpla ements d'un uni y le, si le robot pivote, le dĂŠpla ement instantanĂŠ transversal est nul. Par ontre, dans un se ond temps, la rotation entraĂŽnera un dĂŠpla ement latĂŠral, dont le sens dĂŠpend de la vitesse d'avan ement du robot. De la mĂŞme manière, tourner le volant d'une voiture n'implique pas de dĂŠpla ements instantanĂŠs. Par ontre, dans un se ond temps, ela fera tourner la voiture autour de son axe de rotation. Dans ette se tion, nous avançons une solution pour appliquer ette intuition, en intĂŠgrant des termes de se ond ordre dans le al ul du ja obien. Nous mettons pour ela en áuvre une solution proposĂŠe dans le domaine de l'optimisation [Hettli h 98â&#x201E;&#x201E;, que nous appliquons Ă  la ommande de robot non holonome. Cette solution permet de rĂŠpondre Ă  une partie du problème ren ontrĂŠ dans la se tion prĂŠ ĂŠdente, omme nous le verrons dans les expĂŠrien es prĂŠsentĂŠes en n de paragraphe.

8.3.1 Optimisation non linÊaire en utilisant des termes d'ordre 2 On onsidère une fon tion

e

Ă optimiser en fon tion de la variable

q. La solution lassique onsiste e:

Ă inverser l'ĂŠquation obtenue en rĂŠalisant un dĂŠveloppement de Taylor Ă  l'ordre 1 de la fon tion

eË&#x2122; = J qË&#x2122;

(8.11)


8.3

Commande pseudo-linéaire des robots mobiles

189

Cette équation est inversée en utilisant la pseudo-inverse du ja obien, et la solution obtenue est utilisée omme pas de des ente pour la minimisation. On onsidère maintenant la série de Taylor au se ond ordre de la fon tion

e.

Elle s'é rit :

k

e˙ = J q˙ + où

1X qH ˙ i q˙ 2 i=1

(8.12)

∂ 2 ei ∂q2 est le hessien de la omposante ei de la fon tion e . Cette équation est quadratique, et don di ile à inverser dire tement. Pour pouvoir appliquer

J

est le ja obien de la fon tion

e,

et

Hi =

les solutions matri ielles lassiques, il est né essaire de se ramener à une forme linéaire de l'équation. Dans [Hettli h 98℄, il est proposé d'utiliser une solution de l'équation au premier ordre omme valeur xe d'un des termes quadratiques. Ainsi, on pose

En utilisant

ave

e˙ q

e˙ une solution de l'équation au premier ordre (8.11) : q

e˙ = J+ e˙ q

(8.13)

omme valeur du premier terme quadratique, (8.12) se réé rit :

 G= J+

e˙ = G q˙ 1 2

Pk

i=1

e˙ Hi q



(8.14)

. Dans la suite du do ument, on désignera

ja obien (d'ordre 2) de la tâ he

G

sous le terme de pseudo-

e.

L'équation nalement obtenue est sous forme linéaire. Une solution pour résoudre le problème d'optimisation peut don être al ulée simplement par inversion du pseudo-ja obien

G.

8.3.2 Appli ation au modèle de l'uni y le La onguration de l'uni y le s'é rit

p = x, y, θ



. Le développement au premier ordre est donné

par (8.1). En dérivant ette dernière équation par rapport au temps, on obtient :

˙ 1 + cos θu˙1 x ¨ = − sin θ θu

(8.15a)

˙ 1 + sin θu˙1 y¨ = cos θ θu θ¨ = u˙2

(8.15b) (8.15 )

On néglige les termes de ommande d'ordre 2. En utilisant le modèle au premier ordre obtient don nalement les trois hessiens suivants :

1 Hx = 2



0 − sin θ − sin θ 0   1 0 cos θ Hy = 0 2 cos θ   0 0 Hθ = 0 0



θ˙ = u2 ,

on

(8.16a)

(8.16b)

(8.16 )

Le pseudo-ja obien de l'uni y le al ulé dans le repère xe s'é rit nalement :

cos θ − 21 sin θu˜2 o  Gu = sin θ + 12 cos θu˜2 0

 cos θ − 21 sin θu˜1 sin θ + 21 cos θu˜1  1

(8.17)

 0 1  2 u˜1 1

(8.18)

L'expression du pseudo-ja obien se simplie lorsqu'on l'exprime dire tement dans le repère mobile :

1 b Gu =  21 u˜2 0


190

Contrle d'un robot non-holonome par en haînement de tâ hes

Cette é riture du pseudo-ja obien est à omparer ave la forme du ja obien lassique donnée dans (8.3).

x

Comme dans la forme lassique, le dépla ement selon l'axe

dépend de la vitesse d'avan ement

du robot. De même, la vitesse de rotation du robot dépend de la vitesse angulaire

u2 .

u1

Par ontre la

se onde ligne n'est pas nulle et dépend à la fois de la vitesse longitudinale et de la vitesse angulaire du robot. En parti ulier, si le robot avan e, alors

u˜1

est non nul, et la vitesse angulaire

u2

peut servir

à réguler l'erreur latérale du robot.

8.3.3 Appli ation au modèle de la voiture Le même al ul peut être déroulé pour le modèle de la voiture donné en (8.4). Les hessiens des quatre variables d'état s'é rivent :

Hx =



Hy = 1 Hθ = 2

"

− sin θ ltan φ 0



0 0

cos θ tan φ l

1+tan2 φ l

0 1+tan2 φ l

Hφ =



0 0



0 0

0



0 0 0



(8.19a)

(8.19b)

#

(8.19 )

(8.19d)

Le pseudo-ja obien de la voiture al ulé dans le repère mobile s'é rit don nalement :

b

 Gu =  

1 tan φ l 1+tan2 φ u˜2 2l

0

0 0 1+tan2 φ u˜1 2l

1

   

(8.20)

De la même manière que pour le modèle d'uni yle, le pseudo-ja obien obtenu est à omparer ave le ja obien lassique, donné par (8.6). Comme dans le as de l'uni y le, nous avons obtenu un ontrle de la rotation du véhi ule par rapport aux deux variables de ommande. En parti ulier, si le robot avan e, le braquage

φ

permet de ontrler la rotation. Par ontre, la matri e

G

ne permet pas un

ontrle de la translation selon l'axe latéral. En parti ulier, le braquage n'est pas utilisé pour réguler l'erreur latérale. Nous verrons dans les expérien es que la loi de ommande al ulée à partir de ette matri e améliore le omportement mais ne permet pas d'obtenir un résultat omplètement satisfaisant.

8.3.4 Asservissement visuel en utilisant la pseudo-ja obienne Comme nous l'avons vu dans   LMJ = LM Ju Jq , où Ju , mais

la se tion pré édente, le ja obien d'une tâ he robotique aussi

L, M

et

Jq

e

s'é rit

dépendent de termes du se ond ordre. Pourtant

l'approximation au premier ordre de es trois dernières matri es ne semble pas être un fa teur limitant de l'asservissement, puisque ette hypothèse permet de réaliser un ontrle e a e des robots holo-

nomes hors des singularités. Nous avons don hoisi de ne tenir ompte des termes de se ond ordre que dans le al ul du ja obien de la base mobile. Le pseudo ja obien de la tâ he robotique s'é rit don :

Gu

  Ge = LM Gu Jq

(8.21)

est déni par (8.18) pour le modèle de l'uni y le, et par (8.20) pour le modèle de la voiture.

L'évolution de la tâ he

e

par rapport au mouvement du robot s'é rit alors

e˙ = Ge



u q˙



. La

loi de ommande s'obtient alors en imposant un omportement de référen e de l'erreur. Par analogie


8.3

Commande pseudo-linĂŠaire des robots mobiles

191

ave les mĂŠthodes lassiques, on impose une dĂŠ roissan e exponentielle en xant ommande nale s'ĂŠ rit alors :

oĂš

P



u qË&#x2122;



eË&#x2122; â&#x2C6;&#x2014; = â&#x2C6;&#x2019;Îťe .

La loi de

= â&#x2C6;&#x2019;ÎťGe + e + Pz

est le proje teur ve toriel sur l'espa e de la tâ he, et

(8.22)

z est une ommande se ondaire quel onque

prise en ompte en utilisant la redondan e de la tâ he prin ipale. On peut alors se demander si le proje teur

P

doit ĂŞtre dĂŠni omme le noyau de la matri e ja obien

de la matri e pseudo-ja obienne

Ge .

Je

ou au ontraire omme elui

ExpĂŠrimentalement, nous avons pu vĂŠrier que l'utilisation du

noyau de la pseudo-ja obienne permettait de garantir un meilleur respe t de la tâ he prioritaire. Le P = I â&#x2C6;&#x2019; Ge + Ge .

proje teur est don dĂŠni par

8.3.5 ExpĂŠrien e 2 : asservissement ave une amĂŠra embarquĂŠe xe Pour valider ette loi de ommande, nous avons rĂŠalisĂŠ dans un premier temps une expĂŠrien e simple de positionnement en utilisant une amĂŠra xe embarquĂŠe sur la plateforme mobile. Cette expĂŠrien e a ĂŠtĂŠ rĂŠpĂŠtĂŠe deux fois, ave l'uni y le puis ave la voiture.

Positionnement de l'uni y le Comme prÊ Êdemment, le robot doit se positionner en fa e d'une ible, en utilisant omme primitive d'asservissement les moments de l'image. Nous ne tenons ompte que des trois mouvements de translation et de rotation du plan pour respe ter les ontraintes de dÊpla ement du robot. Les traje toires obtenues en partant de deux positions initiales diÊrentes sont donnÊes sur la gure 8.5. Pour les deux positions initiales, l'utilisation de la pseudo-ja obienne permet dans une ertaine mesure de ontrler les mouvements latÊraux du robot. En omparaison, l'utilisation de la ja obienne lorsque la amÊra est pla Êe sur le entre de rotation ne permet au un ontrle. Dans le as oÚ le mouvement prin ipal à ee tuer onsiste à avan er (gure 8.5(a)), le omportement obtenu ave une amÊra pla Êe à l'avant du vÊhi ule est omparable à elui obtenu ave la pseudo-ja obienne, dans le sens oÚ on parvient dans les deux as à diminuer l'erreur latÊrale. Dans le premier as, l'erreur nale est un ompromis entre les trois omposantes de l'erreur. Le robot n'est don ni orre tement positionnÊ, ni orre tement orientÊ, et le minimum lo al atteint est le rÊsultat d'un Êquilibre entre les trois omposantes. Lorsque la pseudo-ja obienne est utilisÊe, l'erreur latÊrale est rÊgulÊe uniquement dans la première partie de l'exÊ ution, lorsque la vitesse longitudinale est ÊlevÊe. Pro he de la position nale, on n'a plus de ontrle sur les mouvements latÊraux, et l'erreur nale n'est pas le rÊsultat d'un ompromis. Les erreurs longitudinale et en rotation sont parfaitement rÊgulÊes, alors que l'erreur latÊrale seule est non nulle. Par ontre, quand le robot doit prin ipalement re uler, la pseudo-ja obienne parvient à ontrler les mouvements latÊraux du robot, alors que l'astu e onsistant à pla er la amÊra à l'avant ne parvient qu'à a roÎtre l'erreur latÊrale (gure 8.5(b)). On remarque que la position nale du robot lorsque la pseudo-ja obienne est utilisÊe n'est pas un ompromis entre les erreurs longitudinales, angulaires et latÊrales. En eet, à la position nale, le robot a parfaitement orrigÊ son erreur angulaire par exemple. On s'attendrait plutt à une erreur rÊsiduelle distribuÊe sur toutes les omposantes, omme 'est le as par exemple lorsque la amÊra est pla Êe à l'avant du vÊhi ule. Dans e as en eet, l'erreur angulaire n'est pas nulle. En fait, lorsque la pseudo-ja obienne est utilisÊe, la se onde ligne de la matri e (qui ontrle le dÊpla ement latÊral) dÊpend de la vitesse

u Ë&#x153;.

Lorsque l'erreur diminue, ette ligne devient don de plus en plus faible.

L'erreur latÊrale n'est alors plus prise en ompte, et l'uni y le termine alors la orre tion de l'erreur angulaire sans rÊaliser de ompromis ave l'erreur latÊrale. Ce omportement peut donner lieu à des os illations de type manáuvre en dire tion du but, sans qu'un mouvement os illatoire soit expli itement imposÊ. Pour mettre e phÊnomène en Êviden e, une dernière exÊ ution est rÊalisÊe. Le dÊpla ement à ee tuer est ette fois prin ipalement un dÊpla ement latÊral. La traje toire du robot est prÊsentÊe sur la gure 8.6. Le robot ee tue un premier mouvement


192

Contrle d'un robot non-holonome par en haÎnement de tâ hes

3

1

2.5

0.8

2

0.6 Position initiale

1.5

0.4

1 0.5

0 Cam. en 0 Cam. en 1 Ordre 2

0 â&#x2C6;&#x2019;0.5 â&#x2C6;&#x2019;2.5

â&#x2C6;&#x2019;2

â&#x2C6;&#x2019;1.5

â&#x2C6;&#x2019;1

â&#x2C6;&#x2019;0.5

0

Position desiree 0.5

1

1.5

Cam. en 0 Cam. en 1 Ordre 2

Position desiree

â&#x2C6;&#x2019;0.2

(a) Mouvement d'avan ĂŠe Fig. 8.5 

Position initiale

0.2

0

0.5

1

1.5

2

(b) Mouvement de re ul

ExpĂŠrien e 2-1 : Traje toire obtenue pour un positionnement ave une amĂŠra xe montĂŠe sur un

uni y le. Trois traje toires sont prÊsentÊes, obtenues ave la amÊra xÊe au entre de rotation du robot et une ommande d'ordre 1 ( amÊra en zÊro), ave une amÊra xÊe à l'avant de l'uni y le et une ommande d'ordre 1 ( amÊra en 1), et ave une amÊra xÊe au entre de rotation du robot et une ommande utilisant la pseudoja obienne. Deux exÊ utions sont prÊsentÊes en variant la position initiale. (a) Le mouvement à ee tuer omprend un mouvement d'avan Êe le long de l'axe du robot. (b) Le mouvement prin ipal est un mouvement de re ul le long de l'axe du robot. En utilisant le ja obien en 0, ou la pseudo-ja obienne, la position nale orrespond à une rÊgulation omplète des erreurs longitudinales et de rotation. En utilisant la ja obienne en 1, la position nale orrespond à un ompromis entre les trois omposantes de l'erreur (l'erreur en rotation n'est don pas nulle).


8.3

Commande pseudo-linĂŠaire des robots mobiles

2

193

Position initiale

1.5

1

0.5

0

â&#x2C6;&#x2019;0.4

Fig. 8.6 

â&#x2C6;&#x2019;0.2

Position desiree 0 0.2

0.4

0.6

ExpÊrien e 2-1 : mouvements de manáuvre de l'uni y le ommandÊ par la pseudo-ja obienne.

de re ul, puis pivote sur pla e lorsque la se onde ligne du pseudo-ja obien est pratiquement nulle. Au un ompromis n'est plus à faire entre erreurs longitudinale et transversale. Le robot rÊalise alors automatiquement un se ond mouvement d'avan Êe, qui permet de orriger l'erreur longitudinale seule. La se onde ligne de la matri e n'est plus nulle, e qui permet de re ommen er à rÊguler l'erreur latÊrale. Ce mouvement d'os illation en dire tion de la position dÊsirÊe est rÊpÊtÊ à l'inni, bien que les mouvements ne soient plus visibles sur la traje toire. La gure 8.7 prÊsente la vitesse du robot. Une Ê helle logarithmique est utilisÊe pour le tra Ê, e qui permet de visualiser les mouvements d'os illation de plus en plus petits qui se prolongent après la manáuvre visible. En on lusion, l'utilisation de la pseudo-ja obienne de l'uni y le permet d'amÊliorer lÊgèrement le omportement du robot, et de rÊguler les trois omposantes de l'erreur. Les mouvements de manáuvre (inattendus) ne susent pas à amener le robot à sa position dÊsirÊe. Un minimum lo al est nalement atteint. Dans la se tion suivante, nous verrons que l'utilisation de e type de ommande pseudo-linÊaire dans le adre de la pile permet en en haÎnant des tâ hes d'amener le robot jusqu'au but.

Positionnement de la voiture Nous rÊpÊtons maintenant l'expÊrien e ave un robot de type voiture. Comme prÊ Êdemment, nous ne onsidÊrons pas d'arti ulation holonome supplÊmentaire, et la amÊra est montÊe de manière xe sur la base mobile. La tâ he est une tâ he de positionnement du robot par rapport à une ible visuelle. Elle ne tient don pas ompte de l'orientation du train avant. Les traje toires depuis deux positions initiales diÊrentes sont donnÊes sur la gure 8.8. Tout d'abord, on vÊrie que la ommande linÊaire al ulÊe à partir de (8.6) ne permet de ontrler ni les dÊpla ements latÊraux ni les rotations du robot. Le braquage n'Êtant pas ontraint, le robot avan e sans tourner, et s'arrête rapidement dans un minimum lo al. Lorsque la pseudo-ja obienne est utilisÊe, les rotations sont parfaitement ontrlÊes, et l'erreur angulaire est rÊgulÊe à zÊro dans tous les as. Par ontre, il s'avère impossible de ontrler les mouvements latÊraux ave ette mÊthode. Lorsque la amÊra est pla Êe sur le entre de rotation de la base mobile, l'erreur latÊrale n'est pas prise en ompte, et le dÊpla ement du robot s'ee tue pour rÊguler


194

Contrle d'un robot non-holonome par en haÎnement de tâ hes

0

10

Vit. longitudinal u1 â&#x2C6;&#x2019;5

Vit. laterale u2

10

â&#x2C6;&#x2019;10

10

â&#x2C6;&#x2019;15

10

0

50

100

150

200

250

300

350

400

0

50

100

150

200

250

300

350

400

â&#x2C6;&#x2019;15

â&#x2C6;&#x2019;10

â&#x2C6;&#x2019;10

â&#x2C6;&#x2019;10

â&#x2C6;&#x2019;5

â&#x2C6;&#x2019;10

0

â&#x2C6;&#x2019;10

Fig. 8.7 

ExpÊrien e 2-1 : os illations de manáuvre de la ommande al ulÊe à partir de la pseudo-ja obienne.

4

Ordre 1 Ordre2 Cam. en 0 Ordre 2 Cam. en 1

3 2 1

Position initiale

0 Position desiree

â&#x2C6;&#x2019;1

Position initiale

â&#x2C6;&#x2019;2 â&#x2C6;&#x2019;3 â&#x2C6;&#x2019;5

â&#x2C6;&#x2019;4

â&#x2C6;&#x2019;3

â&#x2C6;&#x2019;2

â&#x2C6;&#x2019;1

0

1

2

3

4

5

Fig. 8.8  ExpĂŠrien e 2-2 : traje toire de la voiture ontrlĂŠe par une ommande pseudo-linĂŠaire, Ă partir de deux

positions initiales diĂŠrentes.


8.4

Utilisation de la pile de tâ hes

195

les deux autres omposantes. Comme pour l'uni y le ontrlÊ par la ja obienne simple, la position de la amÊra sur la base mobile inue alors ÊnormÊment sur la traje toire. En parti ulier, si la amÊra est pla Êe à l'avant du robot, des oe ients non nuls apparaissent sur la se onde ligne de la pseudo-ja obienne, qui permettent un ertain ontrle de l'erreur latÊrale lorsque le robot avan e. Ainsi, sur la gure 8.8, lorsque le robot part de la position de gau he, l'erreur latÊrale est très bien rÊgulÊe, et la position nale est très pro he de la position latÊrale. Par ontre, lorsque le robot re ule, ette astu e n'est plus valide. En partant de la position de droite, l'erreur latÊrale nale est plus grande si la amÊra est pla Êe à l'avant. Il ne semble don pas possible de ontrler un robot de type voiture en utilisant une ommande pseudo-linÊaire d'ordre 2. Cela rejoint nalement l'intuition : lorsqu'on tourne le volant, le braquage hange dans un premier temps, e qui modie la rotation du vÊhi ule dans un se ond temps. L'erreur latÊrale est alors modiÊe dans un troisième temps. L'ordre 2 ne surait don pas, et il semble nÊ essaire de passer à l'ordre 3. Plutt que de her her à omplexier la ommande en utilisant le troisième ordre, nous avons prÊfÊrÊ simplier le modèle. En eet, la ommande de l'uni y le peut être appliquÊe sur un robot de type voiture en nÊgligeant la ontrainte de non holonomie sur la rotation, 'est-à-dire en onsidÊrant que la voiture est apable de tourner sur pla e. On applique alors une ommande en position sur le braquage du train de dire tion :

â&#x2C6;&#x2014;

Ď&#x2020; = oĂš



ar tan

Ď&#x2030; l u1

si

0

u1 6= 0

sinon

(8.23)

Ď&#x2030; est la vitesse de rotation demandĂŠe, et u1 est la vitesse longitudinale. Cette ommande en position

n'est pas totalement satisfaisante, d'autant qu'elle peut onduire Ă des dis ontinuitĂŠs importantes lorsque la vitesse longitudinale hange de signe. NĂŠanmoins, elle nous a permis de mettre en appli ation la ommande proposĂŠe plus haut, et donne de plus de bons rĂŠsultats en pratique.

8.4 Utilisation de la pile de tâ hes L'Ê riture de la loi de ommande (8.22) permet l'utilisation du formalisme de la redondan e. Il est don possible d'ajouter à la pile une tâ he dont la matri e est une pseudo-ja obienne. Un degrÊ de libertÊ

pan

est ajoutÊ à la base mobile. La tâ he à a omplir est un positionnement de la amÊra

et de la base mobile, 'est-à -dire des quatre degrÊs de libertÊ du robot. L'asservissement est divisÊ en deux parties, la première rÊalisant le positionnement de la amÊra par rapport à la ible, et la se onde le positionnement de la base par rapport à la pose de la amÊra. Nous prÊsentons i i trois expÊrien es. Les deux premières ont ÊtÊ rÊalisÊes ave un uni y le. Tout d'abord, nous avons validÊ la loi de ommande en l'absen e d'obsta le. Dans e as, nous verrons que l'utilisation de la pseudo-ja obienne permet d'obtenir un en haÎnement automatique : loin du but, la vitesse longitudinale est non nulle. La pseudo-ja obienne est don de rang trois, et ne laisse alors au un degrÊ de libertÊ à la tâ he de positionnement de la base. La tâ he de positionnement de la amÊra n'est alors plus rÊellement non-holonome grâ e à la redondan e apportÊe par le degrÊ

pan.

Plus pro he du but, la vitesse longitudinale s'annule. La pseudo-ja obienne perd don un rang, e qui dÊgage un degrÊ de libertÊ pour la tâ he se ondaire. La base se positionne alors ( ar l'uni y le est apable de tourner sur pla e). Cet en haÎnement n'est pas expli ite, mais est une onsÊquen e logique de l'utilisation de la vitesse longitudinale

uË&#x153;1

dans la pseudo-ja obienne.

La pile de tâ hes permettant d'obtenir un asservissement satisfaisant, nous avons alors validÊ l'en haÎnement de tâ hes prÊsentÊ au hapitre prÊ Êdent en prÊsen e d'obsta les. Enn, la troisième expÊrien e a ÊtÊ rÊalisÊe ave une voiture. Dans e as, omme nous l'avons montrÊ dans la se tion prÊ Êdente, il n'est pas possible de ontrler les deux degrÊs de non-holonomie ave une pseudoja obienne d'ordre 2. En utilisant un en haÎnement de tâ hes adÊquat, nous montrons qu'il est possible de rejoindre la position dÊsirÊe.


196

Contrle d'un robot non-holonome par en haÎnement de tâ hes

4 3 2 1 0 Position desiree

â&#x2C6;&#x2019;1 â&#x2C6;&#x2019;2 â&#x2C6;&#x2019;3 â&#x2C6;&#x2019;4 â&#x2C6;&#x2019;5 â&#x2C6;&#x2019;4

Fig. 8.9 

â&#x2C6;&#x2019;3

â&#x2C6;&#x2019;2

â&#x2C6;&#x2019;1

0

1

2

3

4

5

6

ExpĂŠrien e 3 : traje toires obtenues lors d'un asservissement omplet (quatre degrĂŠs de libertĂŠ) d'un

uni y le dotĂŠ d'une tourelle

pan

sur laquelle est montĂŠe la amĂŠra. Les vitesses de ontrle orrespondant Ă la

traje toire en jaune sont dĂŠtaillĂŠes sur la gure 8.10. Quelle que soit la position de dĂŠpart, le robot rejoint la onguration demandĂŠe (position et orientation de la base et de la amĂŠra).

8.4.1 ExpĂŠrien e 3 : asservissement des quatre degrĂŠs de libertĂŠ de l'uni y le Nous onsidĂŠrons dans un premier temps un uni y le, dotĂŠ d'une tourelle

pan

sur laquelle est

montÊe une amÊra. Le système possède don quatre degrÊs de libertÊ. On her he à rÊaliser l'asservissement de la onguration omplète du robot, 'est-à-dire de la position et de l'orientation de la base, ainsi que de l'orientation de la amÊra. On introduit en onsÊquen e deux tâ hes dans la pile. La première tâ he

epos

est un asservissement en position de la amĂŠra dans le plan par rapport une

ible visuelle. Cet asservissement laisse un degrÊ de libertÊ à la base. Pour le ontraindre, on ajoute alors une se onde tâ he

epan

asservissant le

pan

de la amĂŠra Ă zĂŠro, et ontraignant don la base

mobile en une position unique dÊnie à partir de la position de la amÊra. L'expÊrien e est rÊsumÊe sur les gures 8.9 et 8.10. La première gure prÊsente diÊrentes traje toires obtenues en variant la position de dÊpart. Une exÊ ution type est dÊtaillÊe en donnant les vitesses longitudinale et angulaires sur la gure 8.10. Dans un premier temps, la vitesse du robot est ÊlevÊe. La ligne de la pseudo-ja obienne orrespondant aux mouvements latÊraux n'est don pas nulle. La tâ he

epos

est don bien onditionnĂŠe et de dimension 3. Au un degrĂŠ de libertĂŠ n'est disponible

pour exÊ uter la tâ he

epan,

qui n'est pas prise en ompte. En onsĂŠquen e, l'orientation de la base

est libre, et la partie de la tâ he l'arti ulation

pan

epos

orrespondant Ă l'orientation est rĂŠalisĂŠe prin ipalement par

holonome. Quand le robot se rappro he de sa position dĂŠsirĂŠe, les valeurs de la

se onde ligne du pseudo-ja obien diminuent, et le onditionnement de la matri e s'annule. La matri e perd un rang Ă l'itĂŠration

240.

Un degrÊ de libertÊ est alors disponible pour la tâ he

epan ,

e qui

permet au robot de se positionner à l'empla ement dÊsirÊ. Cet en haÎnement de tâ hes est don purement automatique, et n'est pas dÝ à l'ajout volontaire d'une tâ he dans la pile. Lorsque le robot s'arrête, le ontrle latÊral devient impossible, la tâ he de positionnement n'est plus apable de ontrler un degrÊ de libertÊ et le laisse don disponible d'une ertaine manière pour une tâ he se ondaire qui saurait quoi en faire. Notons enn que et en haÎnement de tâ hes n'est pas for Êment optimal. En eet, le positionnement nal peut être rÊalisÊ ar le robot est apable de tourner sur pla e, et il se trouve que 'est justement le mouvement permettant de omplÊter la tâ he. NÊanmoins, la pile de tâ hes utilisant des matri es pseudo-ja obiennes nous a


8.4

Utilisation de la pile de tâ hes

197

â&#x2C6;&#x2019;3

x 10

Vit. longitudinal u1

20

Vit. angulaire u2 15

Vit. pan

10 5 0 â&#x2C6;&#x2019;5 0

50

100

150

200

250

300

350

400

Fig. 8.10  ExpĂŠrien e 3 : vitesses longitudinale et angulaires du robot lors d'un asservissement des quatre degrĂŠs

240,

de libertÊ du système uni y le + tourelle. Le robot positionne tout d'abord la amÊra. A l'itÊration ja obienne de la tâ he prioritaire perd un rang. Le robot a omplit alors la tâ he se ondaire

epan .

la pseudo-

L'itĂŠration

240

est marquĂŠe, mais ne orrespond pas un en haĂŽnement volontaire.

permis de rÊaliser une tâ he d'asservissement visuel sur un robot non holonome sans être gênÊ par les ontraintes asso iÊes.

8.4.2 ExpÊrien e 4 : Êvitement d'obsta les Lors de ette expÊrien e, un obsta le est pla Ê dans l'espa e de travail du robot. Lorsque la solution prÊ Êdente est appliquÊe, 'est-à -dire sans tenir ompte de l'obsta le, le robot entre en ollision. Or la tâ he à exÊ uter est de dimension quatre, il n'est don pas possible de prendre en ompte un gradient d'Êvitement d'obsta le. Nous appliquons don la solution proposÊe dans le hapitre prÊ Êdent pour tenir ompte de l'obsta le lorsque le robot mena e d'entrer en onta t, et en exÊ utant la tâ he omplète lorsque l'obsta le est ÊvitÊ. La tâ he à rÊaliser est divisÊe en quatre sous-tâ hes :  la première tâ he

ez

est asservie sur la surfa e de l'objet. Elle ontraint prin ipalement les

mouvements longitudinaux de la amÊra.  la se onde tâ he

eg

rĂŠgule le entre de gravitĂŠ de l'objet. Elle orrespond au mouvement de

entrage de l'objet à l'aide de la rotation  la tâ he

eR

pan

amĂŠra et de la rotation de la base mobile.

ontraint les mouvements de rotation autour de la ible, 'est-Ă -dire prin ipalement

les mouvements latÊraux du robot lorsque la amÊra est alignÊe dans l'axe de la base.  enn, omme dans l'expÊrien e prÊ Êdente, on ajoute la tâ he de la base mobile. Cette tâ he ramène la position du

pan

epan

pour ontrler l'orientation

Ă zĂŠro.

L'obsta le est pris en ompte à l'aide de la fon tion à potentiels tournants, prÊsentÊe dans le paragraphe 7.3 du hapitre prÊ Êdent. Le robot est soumis à une for e tangente à la surfa e de onta t qui le for e à ontourner l'obsta le tant qu'il en est loin. Lorsque le robot se rappro he de l'obsta le, une for e normale s'ajoute à la for e tangentielle pour empê her le robot d'entrer en ollision. Le gradient de ette fon tion de oÝt est ajoutÊ omme dernière tâ he de la pile. L'expÊrien e rÊalisÊe est prÊsentÊe sur les gures 8.11 à 8.13. Le robot doit ontourner un obsta le pla Ê entre sa position initiale et son but (voir gure 8.11). Les tâ hes a tivÊes pendant l'asservissement sont rÊsumÊes sur la gure 8.12. Au dÊbut de l'asservissement, toutes les tâ hes sont a tives. Le robot avan e en dire tion de l'obsta le. Rapidement, une ollision est prÊdite. A ette distan e de l'obsta le, la for e tangentielle est la plus forte. Le ontrleur enlève alors la tâ he

eR .

La tâ he

epan

est alors

prise en ompte, e qui empê he l'Êvitement d'obsta le (le gradient est toujours projetÊ sur un espa e vide). La tâ he

eg

est alors enlevÊe. La tâ he

epan

et le gradient d'ĂŠvitement d'obsta le, situĂŠs en

sommet de pile, sont alors pris en ompte dans la loi de ommande. Le robot ee tue prin ipalement un mouvement de rotation de la base, orrespondant Ă un mou-


198

Contrle d'un robot non-holonome par en haÎnement de tâ hes

6

5

4

3 (1) 2 (2) 1

0 (3)

â&#x2C6;&#x2019;1 (4) â&#x2C6;&#x2019;2

Fig. 8.11 

0

1

2

3

4

5

6

7

8

ExpÊrien e 4 : traje toire du robot ontrlÊ par un en haÎnement de tâ hes permettant d'Êviter

l'obsta le. Les positions le long de la traje toire orrespondent aux ÊvÊnements rÊfÊren Ês sur la gure 8.12 (la position (5) est très pro he de la position nale, seule l'orientation dière, et elle n'est don pas reprÊsentÊe pour plus de lisibilitÊ).

(1)

(2)

(3) (4)

(5)

Obs

eZ eR eG e pan 0

200

400

600

800

1000

1200

Fig. 8.12  ExpÊrien e 4 : a tivation des tâ hes pendant l'en haÎnement. A l'instant (1), la ollision est prÊdite. Le

ontrleur enlève su essivement les tâ hes

eR

puis

eg .

La tâ he

eR

est remise à l'instant (2), puis la tâ he

eg

est

remise à l'instant (3). Le gradient s'annule à l'instant (4). Le positionnement de la amÊra est rÊalisÊ à l'instant (5). La pseudo-ja obienne des tâ hes prioritaires perd alors un rang, et la tâ he

epan

est prise en ompte. Comme dans

l'expÊrien e prÊ Êdente, et en haÎnement de tâ hes est gÊnÊrÊ automatiquement par la loi de ommande basniveau, et (5) est don marquÊ en pointillÊ. Lorsque la tâ he

epan

est dans la pile de tâ hes, mais n'est pas prise

en ompte par manque de degrĂŠ de libertĂŠ disponible, son a tivation est tra ĂŠe en pointillĂŠ.


8.4

Utilisation de la pile de tâ hes

199

Vit. longitudinal u1

0.08

Vit. angulaire u2 Vit. pan

0.06 0.04 0.02 0 −0.02 −0.04 200

Fig. 8.13 

400

600

800

1000

1200

Expérien e 4 : vitesses al ulées lors de l'en haînement de tâ hes.

vement d'avan ée le long de l'axe optique de la améra (voir gure 8.13), puis s'éloigne de l'obsta le. La tâ he

eR

est rapidement remise dans la pile. Le robot poursuit alors son trajet vers la position

désirée. Le gradient s'annule nalement lorsque le robot est susamment loin de l'obsta le, et la tâ he

eg

est remise dans la pile. En n d'asservissement, la vitesse de la base s'annule. Comme dans l'expérien e pré édente, la

pseudo ja obienne des trois tâ hes prioritaires perd un rang, e qui permet la prise en ompte de la tâ he

epan

à partir de l'itération

430.

La base termine alors son positionnement.

8.4.3 Expérien e 5 : en haînement vers des buts virtuels pro hes La dernière expérien e a été réalisée ave un robot de type voiture en espa e libre. Nous her hons à réaliser un positionnement de la position et de l'orientation du robot ainsi que de la améra. Comme dans la se tion pré édente, l'angle de braquage est libre et n'a pas besoin d'être régulé. Comme nous l'avons expliqué plus haut, l'utilisation d'une pseudo-ja obienne d'ordre 2 ne permet pas de ontrler la voiture de manière satisfaisante. En parti ulier, il n'est pas possible d'obtenir un positionnement du robot omme e qui a été obtenu ave l'uni y le. Pour réaliser le positionnement du robot, nous proposons don d'en haîner des tâ hes d'asservissement vers des buts pro hes de la position désirée. En modiant la valeur de référen e de la tâ he de zoom

ez ,

on peut dépla er la position de référen e. En en haînant de manière périodique des as-

servissements vers la position de référen e modiée, on for e ainsi des mouvements de man÷uvre du robot. La onstru tion de ette solution n'est pas issue d'une séan e d'essai-erreur, mais simplement de l'é riture des lois de ommande instationnaires omme un problème d'en haînement de tâ hes. Considérons par exemple une loi de ommande instationnaire lassique pour le ontrle d'un uni y le sous forme hainée :

(

u1 (x, t) = −x1 +

u2 (x, t) = −x2 −

x3 r(x) cos t x23 r 3 (x) sin t

(8.24)

1 r(x) = x41 + x42 + x23 4 . Cette loi de ommande peut être lue omme un asservissement vers la position de référen e (0, 0) (premier terme de la ommande). Cette position désirée est modiée péoù

x riodiquement par le terme en r3 . Cette même idée est reprise pour réaliser un en haînement expli ite. Le robot est asservi vers la position nale. Lorsqu'un minimum lo al est atteint, la position de référen e est modiée, en hangeant les valeurs désirées des tâ hes de la pile. Le robot se dépla e alors pour atteindre le nouveau but virtuel. Plusieurs poses virtuelles peuvent être utilisées. Nous avons


200

Contrle d'un robot non-holonome par en haÎnement de tâ hes

4 3

Position initiale

2 1 0 Position finale

â&#x2C6;&#x2019;1 â&#x2C6;&#x2019;2 â&#x2C6;&#x2019;3

Execution 1 Execution 2 Position finale Positions virtuelles desirees

â&#x2C6;&#x2019;4 Position initiale

â&#x2C6;&#x2019;5 â&#x2C6;&#x2019;4

â&#x2C6;&#x2019;3

â&#x2C6;&#x2019;2

â&#x2C6;&#x2019;1

0

1

Fig. 8.14  ExpĂŠrien e 5 : traje toires obtenues lors de deux exĂŠ utions en partant de positions de dĂŠpart diĂŠrentes.

La position dÊsirÊe rÊelle ainsi que les deux positions virtuelles permettant de rÊaliser les mouvements de manáuvre sont aussi reprÊsentÊes sur la gure. La traje toire rÊalisÊe lors de l'exÊ ution 1 est dÊtaillÊe sur la gure 8.15.

simplement hoisi d'en haÎner des positionnements vers des buts situÊs à l'avant et à l'arrière de la pose rÊelle, en modiant la valeur dÊsirÊe de la tâ he de zoom

ez .

Cette solution a ĂŠtĂŠ testĂŠe en rĂŠalisant un asservissement visuel Ă l'aide d'un robot de type voiture, sur lequel est montĂŠe une tourelle

pan

munie d'une amĂŠra. Pour ette expĂŠrien e, la amĂŠra et la tou-

relle sont montĂŠes sur le entre de rotation de la base mobile. La position nale est avan ĂŠe ou re ulĂŠe de

50cm

dès que la ommande de la pile est dans un minimum lo al. Les rÊsultats expÊrimentaux

sont rÊsumÊs sur les gures 8.14, 8.15 et 8.16. Les traje toires obtenues pour deux positions initiales diÊrentes sont prÊsentÊes sur la gure 8.14. Le robot rÊalise tout d'abord un premier mouvement qui l'emmène dans un minimum lo al mais ee tue ainsi une grande partie du trajet. Il reste alors à ee tuer une sÊrie de manáuvres pour onverger vers la position nale. La traje toire ee tuÊe lors de l'exÊ ution 1 est dÊtaillÊe sur la gure 8.15. Une Ê helle logarithmique est utilisÊe pour tra er les dÊtails de la traje toire. La rÊgulation de l'erreur latÊrale se fait selon une dÊ roissan e exponentielle. Enn, l'Êvolution des variables de ommande pendant l'asservissement est reprÊsentÊe sur la gure 8.16. Les ourbes prÊsentent de grandes dis ontinuitÊs lors du hangement de position de rÊfÊren e. Or le braquage est ommandÊ dire tement en position. Cette dis ontinuitÊ est don un fa teur limitant les possibilitÊs de ette ommande en pratique. Pour sa mise en áuvre sur un robot rÊel, il surait sans doute de bloquer l'avan ement du robot pendant que l'angle de braquage est rÊgulÊ. MalgrÊ tout, ette solution permet d'obtenir dire tement un asservissement visuel pour rÊaliser des manáuvres sur un robot mobile. On peut ainsi espÊrer onserver la robustesse de e type de ommande pour des robots mobiles. Une première expÊrien e pour valider ette robustesse est prÊsentÊe sur la gure 8.17. Lors de ette expÊrien e, la ible se dÊpla e, e qui modie la position dÊsirÊe. Sans prendre en ompte de modèle de mouvement, 'est-à-dire en utilisant uniquement la robustesse de l'asservissement, on obtient une exÊ ution très satisfaisante du robot, qui parvient à suivre la ible (aux erreurs de traÎnage et aux manáuvres près) sans diverger.


8.4

Utilisation de la pile de tâ hes

201

â&#x2C6;&#x2019;3

â&#x2C6;&#x2019;10

â&#x2C6;&#x2019;2

â&#x2C6;&#x2019;10

â&#x2C6;&#x2019;1

â&#x2C6;&#x2019;10

0

â&#x2C6;&#x2019;10

Position initiale

â&#x2C6;&#x2019;4

â&#x2C6;&#x2019;3.5

â&#x2C6;&#x2019;3

â&#x2C6;&#x2019;2.5

â&#x2C6;&#x2019;2

â&#x2C6;&#x2019;1.5

â&#x2C6;&#x2019;1

â&#x2C6;&#x2019;0.5

0

0.5

1

Fig. 8.15  ExpĂŠrien e 5 : traje toire ee tuĂŠe lors de l'exĂŠ ution 1 prĂŠsentĂŠe sur la gure 8.14. L'axe des ordonnĂŠes

est tra ĂŠ en utilisant une ĂŠ helle logarithmique.

Vit. longitudinale u1 0.05

Braquage Ď&#x2020;

0

â&#x2C6;&#x2019;0.05

â&#x2C6;&#x2019;0.1

â&#x2C6;&#x2019;0.15 0

Fig. 8.16 

1000

2000

3000

4000

5000

6000

7000

8000

9000

10000

ExpÊrien e 5 : variables de ontrle lors de l'en haÎnement de tâ hes. Le braquage est ontrlÊ en

position, et prĂŠsente de grandes dis ontinuitĂŠs qui semblent limiter l'appli ation de ette mĂŠthode sur un robot rĂŠel.


202

Contrle d'un robot non-holonome par en haînement de tâ hes

6

4

2

0

−2 Trajectoire du robot Trajectoire de reference

−4 Position initiale −6

Fig. 8.17 

−4

−2

0

2

4

6

Expérien e 5 : traje toire du robot vers une position de référen e en mouvement.


8.5

Con lusion

203

8.5 Con lusion Dans e hapitre, nous avons prÊsentÊ une solution pour appliquer les te hniques d'en haÎnement de tâ hes aux robots non holonomes. Il semble di ile de leur appliquer dire tement une ommande linÊaire. Dans une première partie, nous avons don proposÊ une mÊthode de ommande originale qui permet de prendre en ompte des termes de se ond ordre, tout en restant dans un formalisme susamment pro he de la ommande linÊaire pour pouvoir appliquer dire tement les ommandes lassiques. En utilisant ette ommande pseudo-linÊaire, il est alors possible d'appliquer la pile de tâ hes sur un robot non holonome. Nous avons alors utilisÊ l'en haÎnement de tâ hes dans deux adres diÊrents. Tout d'abord, la solution prÊsentÊe dans le hapitre prÊ Êdent a ÊtÊ mise en áuvre pour rÊaliser un Êvitement d'obsta le pendant le positionnement d'un uni y le. Dans e as, grâ e à l'utilisation de la ommande pseudolinÊaire et grâ e à la relative simpli itÊ du robot, la ontrainte de non holonomie ne prÊsentait pas de rÊel problème. Puis nous avons utilisÊ un en haÎnement de tâ hes spÊ iques pour gÊnÊrer des mouvements de manáuvre dans le as oÚ la non holonomie est plus ontraignante. En on lusion, e type de ommande est très intÊressant ar il permet d'appliquer dire tement les travaux lassiques de l'asservissement rÊfÊren Ê apteur en robotique holonome à la robotique mobile. On garde en parti ulier le dÊ ouplage très intÊressant entre l'Êtude des primitives d'asservissement d'un tÊ, et l'Êtude du modèle de mouvement du robot de l'autre. Ces rÊsultats sont aussi prometteurs dans le sens oÚ ils permettent de valider l'utilisation de l'en haÎnement de tâ hes en robotique mobile, soit pour prendre en ompte des ontraintes intÊgrables en se ramenant au as holonome lorsque la ontrainte non holonome n'est pas trop forte, soit en ontournant la ontrainte de non holonomie en en haÎnant des tâ hes de manáuvres. Toutefois, e travail sur les robots non holonomes est loin d'être omplet. En eet, les deux types d'en haÎnements que nous venons de iter ont ÊtÊ mis en áuvre sÊparÊment. Il serait très intÊressant d'Êtendre es deux adres pour onsidÊrer leur utilisation simultanÊe. Dans un premier temps, il est important d'ajouter un ontrle permettant d'a tiver les mouvements de manáuvres uniquement si nÊ essaire. La question de savoir omment modier le ontrleur de haut niveau pour rÊaliser le ontournement d'obsta les par des en haÎnements de manáuvres mÊrite d'être ÊtudiÊe.


204

Contrle d'un robot non-holonome par en haÎnement de tâ hes


Chapitre 9

Appli ation aux robots humanoĂŻdes

D

ans e dernier hapitre, nous proposons d'appliquer l'en haÎnement de tâ hes à un robot humanoïde. Nous avons hoisi de rÊaliser une tâ he de saisie, guidÊe par la vision, pendant que le robot

mar he. Cette tâ he est di ile à planier à ause des nombreuses in ertitudes omme les vibrations ou les glissements dus à la mar he. En utilisant l'en haÎnement de tâ hes rÊfÊren Êes apteur, il a ÊtÊ possible de la mettre rapidement en áuvre et d'assurer à la fois un très bon omportement du robot et un très bon taux de rÊussite, sans nÊ essiter un modèle omplexe ni un temps de al ul important.

1

Ce travail est le fruit d'une ollaboration ave le laboratoire JRL-Japan de Tsukuba . L'ensemble de l'appli ation a ÊtÊ rÊalisÊe en deux mois, et ne doit don pas être vu omme une solution aboutie omplète, mais plutt omme une appli ation dire te ou une expÊrien e nale des travaux prÊsentÊs dans ette thèse.

9.1 Ă&#x2030;tat de l'art Dans e hapitre, nous nous intĂŠressons Ă la gĂŠnĂŠration de mouvement pour l'ensemble du orps du robot humanoĂŻde : les jambes pour la mar he, la tĂŞte pour suivre l'objet du regard et le bras pour le saisir. Les premiers rĂŠsultats permettant d'utiliser les parties basses et hautes de l'humanoĂŻde pour rĂŠaliser une tâ he de manipulation ont ĂŠtĂŠ obtenus par plani ation. Dans [Kuner 03â&#x201E;&#x201E;, la solution adoptĂŠe est fondĂŠe sur une dis rĂŠtisation des pas rĂŠalisĂŠs par la partie basse, Ă  laquelle une sĂŠquen e lassique de plani ation est ajoutĂŠe pour la partie haute. L'utilisation de ltre dynamique permet de s'assurer que les mouvements gĂŠnĂŠrĂŠs sont stables, 'est-Ă -dire qu'ils vĂŠrient un ritère de stabilitĂŠ tel que le

Zero Moment Point

[Vukobratovi 69â&#x201E;&#x201E;. Il est de plus possible de planier les pas Ă ee tuer de

manière dynamique en utilisant le retour donnĂŠ par la vision [Mi hel 05â&#x201E;&#x201E;. D'autres solutions ont ĂŠtĂŠ proposĂŠes pour obtenir un mouvement omplet du robot, sans distinguer partie haute et partie basse. Dans [Nishiwaki 04â&#x201E;&#x201E;, la plani ation se fait en ombinant plusieurs su essions de postures Ă l'aide d'une heuristique. Le robot peut alors atteindre un but distant en utilisant l'ensemble de son orps,

1 L'ensemble des travaux prÊsentÊs dans e hapitre à ÊtÊ rÊalisÊ lors d'un sÊjour de deux mois sous la dire tion du professeur K. Yokoi, au laboratoire JRL-Japan de Tsukuba (Joint Japanese-Fren h Roboti s Laboratory, Intelligent Systems Resear h Institute, CNRS/AIST, http://www.is.aist.go.jp/jrl/). La plus grande part de la ollaboration s'est ee tuÊe ave le do teur O. Stasse. Sans son aide, je ne pense pas qu'il aurait ÊtÊ aussi fa ile ni aussi rapide d'adapter la pile de tâ hes au robot HRP-2.


206

Appli ation aux robots humanoĂŻdes

tout en maintenant son ĂŠquilibre. NĂŠanmoins, au un de es travaux n'a ĂŠtĂŠ ĂŠtendu pour l'instant Ă une tâ he de manipulation pendant la mar he. Contrairement aux appro hes fondĂŠes sur la plani ation, il existe peu de travaux utilisant des tâ hes rĂŠfĂŠren ĂŠes apteurs autres que pour le ontrle de l'ĂŠquilibre. On peut tout de mĂŞme iter [Yamamura 04â&#x201E;&#x201E; qui propose une solution pour positionner le pied d'un robot mar heur par asservissement visuel. De nombreux travaux se sont par ontre intĂŠressĂŠs Ă  des tâ hes de manipulation en utilisant uniquement la partie haute du robot [Coelho 01, Taylor 01, Lopes 05bâ&#x201E;&#x201E;. Ces travaux montrent (si besoin est) l'intĂŠrĂŞt de rĂŠaliser une tâ he de manipulation en se basant sur un retour apteur. Mais es travaux n'ont pour l'instant pas ĂŠtĂŠ gĂŠnĂŠralisĂŠs au robot humanoĂŻde omplet. Toutefois, plusieurs travaux s'intĂŠressent spĂŠ iquement Ă  la gĂŠnĂŠration rĂŠa tive de mouvements utilisant l'ensemble du orps et maintenant l'ĂŠquilibre du robot pendant l'exĂŠ ution. Dans [Sian 05â&#x201E;&#x201E;, le robot est tĂŠlĂŠopĂŠrĂŠ par un utilisateur. Les onsignes sont donnĂŠes en vitesse des repères terminaux des membres du robot. L'appli ation permet un ontrle intuitif en dĂŠ ouplant les mouvements du robot, et en assurant la stabilitĂŠ de manière transparente pour l'opĂŠrateur. Celle- i est obtenue en

ontrlant les moments angulaires et linĂŠaires du robot (Resolved

Momentum Control )

sous forme

d'une tâ he prioritaire. La tâ he se ondaire, exĂŠ utant les onsignes envoyĂŠes par l'opĂŠrateur, est appliquĂŠe sans perturber l'ĂŠquilibre en utilisant la redondan e du robot. Une solution similaire est utilisĂŠe dans [Gienger 05â&#x201E;&#x201E;. Le robot est ommandĂŠ en vitesse pour rĂŠaliser une tâ he donnĂŠe sous forme d'un ve teur d'erreur Ă rĂŠguler. Les perturbations sur l'ĂŠquilibre engendrĂŠes par les mouvements du haut du orps sont orrigĂŠes par une tâ he dĂŠdiĂŠe. La loi de ommande nale prend de plus en ompte les butĂŠes du robot en utilisant la redondan e laissĂŠe par la tâ he de manipulation. Plutt que de ommander le robot en vitesse, puis de orriger son ĂŠquilibre par une tâ he spĂŠ ique, il est possible de se pla er dans un espa e permettant dire tement de ontrler la dynamique du robot [Khatib 87â&#x201E;&#x201E;. Ainsi, dans [Sentis 05bâ&#x201E;&#x201E;, la loi de ommande est al ulĂŠe Ă  partir du ja obien ĂŠtendu du robot. De ette façon, l'ĂŠquilibre est dire tement assurĂŠ. Une stru ture permettant de rĂŠaliser la prioritisation de tâ hes multiples est alors onstruite en utilisant le formalisme de la redondan e. Cette stru ture permet dans [Sentis 06â&#x201E;&#x201E; de proposer un adre gĂŠnĂŠral très intĂŠressant pour onstruire des omportements omplexes Ă  partir d'une hiĂŠrar hisation de omportements simples ou de ontraintes. Ce adre rappelle logiquement la pile de tâ hes puisque tous deux sont onstruits en utilisant la redondan e pour assurer une hiĂŠrar hisation des tâ hes. En utilisant l'espa e opĂŠrationnel, e dernier travail permet d'obtenir dire tement le ontrle de la dynamique du robot. En ontrepartie, ela implique de ontrler le robot en for e plutt qu'en vitesse ou en position, e qui peut amener des problèmes pratiques [Kaneko 94â&#x201E;&#x201E;. Enn, la robotique humanoĂŻde fournit un adre parti ulièrement fĂŠ ond pour la programmation par tâ hes. En eet, il semble intĂŠressant de her her Ă  ontrler le robot au niveau omportemental en sĂŠle tionnant des tâ hes de base plutt que de her her Ă  ommander dire tement ha une des arti ulations. En e sens, les travaux en ommande rĂŠa tive que nous venons de iter semblent tous onverger vers un tel niveau de programmation. A l'inverse, d'autres travaux adoptent une appro he des endante et her hent Ă  dĂŠnir des sĂŠmantiques gĂŠnĂŠrales pour la onstru tion de omportements omplexes sans for ĂŠment avoir de adre appropriĂŠ pour appliquer la ommande. Ainsi, l'appro he par

matri e de tâ hes

proposĂŠe dans [Drumwright 06â&#x201E;&#x201E; permet de rĂŠaliser une omposition rĂŠa tive de

plusieurs omportements et postures. Le omportement omplet permet d'obtenir en simulation la saisie d'objet distant. Dans [Gravot 06â&#x201E;&#x201E;, un omportement omplexe est rĂŠĂŠ Ă partir d'une liste de tâ hes Ă  rĂŠaliser, en gĂŠnĂŠrant simultanĂŠment des positions de pas, des postures ainsi que des traje toires des organes terminaux. Cette solution permet d'obtenir en simulation un omportement omplet du robot tout en assurant l'ĂŠquilibre. Le travail que nous allons prĂŠsenter Ă  prĂŠsent est avant tout une validation de l'utilisation de la pile de tâ hes pour gĂŠnĂŠrer simplement un ontrle de l'ensemble du orps du robot. Notre dĂŠmar he suit don plutt une appro he

bottom-up

pro he de elle adoptĂŠe par [Sian 05â&#x201E;&#x201E; ou [Sentis 05bâ&#x201E;&#x201E; et ne

peut don pas vraiment ĂŞtre omparĂŠe aux derniers travaux que nous venons de iter [Drumwright 06, Gravot 06â&#x201E;&#x201E;. NĂŠanmoins, nous avons her hĂŠ Ă appliquer les travaux rĂŠalisĂŠs sur le ontrle haut-niveau, pour rĂŠaliser l'en haĂŽnement de tâ hes automatiquement. Dans la suite de e hapitre, nous allons


9.2

Appli ation de la pile de tâ hes à un robot mar heur

207

d'abord montrer dans la partie 9.2 omment la pile de tâ hes permet d'intÊgrer la ommande de mar he et elle du bras en une seule ommande du robot omplet. Puis nous prÊsenterons rapidement les tâ hes d'asservissement visuel que nous avons mises en áuvre pour rÊaliser la saisie dans la partie 9.3. Enn, la partie 9.4 prÊsentera plus en dÊtails les expÊrien es rÊalisÊes à Tsukuba sur le robot HRP-2.

9.2 Appli ation de la pile de tâ hes à un robot mar heur Dans ette partie, nous prÊsentons tout d'abord rapidement l'algorithme de mar he que nous avons utilisÊ. Puis nous montrons qu'il peut se mettre sous la forme d'une fon tion de tâ he, e qui permet de l'intÊgrer dire tement dans la pile. Cette intÊgration permet alors de rÊaliser simplement une tâ he de manipulation. En eet, la pile de tâ hes fournit un adre uni ateur pour ontrler l'ensemble du robot. Les mouvements induits par la mar he sont ainsi dire tement pris en ompte et ompensÊs pour Êviter qu'ils ne perturbent la tâ he de manipulation. La tâ he de manipulation ainsi que les ontrleurs de pile utilisÊs seront quant à eux prÊsentÊs dans la partie suivante.

9.2.1 GĂŠnĂŠration du mouvement de mar he La mar he est obtenue par une rĂŠimplĂŠmentation de l'algorithme du

et oll.

Pattern Generator

de Kajita

[Kajita 03aâ&#x201E;&#x201E;. En entrĂŠe, l'algorithme prend la position des pas Ă ee tuer. Le mouvement est

ensuite gÊnÊrÊ selon trois bou les su essives : tout d'abord en onsidÊrant le robot omme un modèle simple de pendule inverse ; puis en intÊgrant les mouvements du haut du orps ; enn en rebou lant sur les apteurs de for es du robot pour orriger les perturbations et assurer la stabilitÊ en ligne.

Pendule inverse :

on se pla e dans le as d'un sol plan. A partir de la position du entre de masse, et

de l'a ĂŠlĂŠration du robot, on peut dĂŠduire la position du point de moment zĂŠro (Zero

Moment Point,

ZMP) qui est le point au sol oÚ les moments dus à l'inertie du robot et à la gravitÊ s'annulent. Le robot est stable si le ZMP est à l'intÊrieur du polygone de support, dÊni omme le polygone onvexe englobant tous les points de onta t au sol. Le mouvement du robot est gÊnÊrÊ pour garder le ZMP dans le polygone de support. Dans un premier temps, pour simplier le problème, on onsidère la jambe de support du robot omme un pendule inverse tÊles opique, dont le entre de masse est ontraint sur un plan. Tout d'abord, la traje toire du entre de masse ( enter

of mass,

CoM) est dĂŠduite de la su ession de pas donnĂŠe.

A partir de ette traje toire, on peut dÊduire la position du ZMP. Le mouvement du robot est alors obtenu en inversant le problème du al ul du ZMP à partir de la position et de l'a ÊlÊration du CoM. La solution adoptÊe utilise une phase de prÊvisualisation du ontrle ( ontrol

preview

[Kajita 03aâ&#x201E;&#x201E;),

qui nÊ essite une onnaissan e du futur sur les pro hains pas (typiquement 1.6 se ondes). Les positions des arti ulations de la jambe de support et de la jambe en vol sont nalement obtenues à l'aide du modèle gÊomÊtrique inverse du robot.

Prise en ompte du haut du orps : les al uls prÊ Êdents ont ÊtÊ rÊalisÊs en supposant que le robot orrespond à un pendule inverse. Or e i implique que seule la jambe de support est en mouvement et que le reste du orps est une masse inerte pouvant être ramenÊe au CoM. Cela est d'autant moins vrai que les mouvements des bras ou du torse entraÎnent une forte inertie qui dÊstabilise le robot. Ces mouvements sont don pris en ompte dans une se onde phase de al ul. L'inertie engendrÊe par les mouvements du robot est intÊgrÊe en al ulant le ZMP d'un modèle multi orps du robot. La solution obtenue prÊ Êdemment est modiÊe lo alement pour en tenir ompte. Cela nÊ essite une se onde phase de prÊvisualisation, e qui rajoute typiquement 1.6 se onde de onnaissan es nÊ essaires du futur. De plus, lors de la deuxième phase de prÊvisualisation, la nature des informations nÊ essaires est diÊrente. Si, pour la première phase, seules les positions des pas sont nÊ essaires, pour la deuxième les mouvements du torse doivent être Êgalement onnus. Cette onnaissan e est di ile à obtenir, par e qu'elle est obtenue par un ontrle rÊa tif rÊfÊren Ê sur des objets en mouvement.


208

Appli ation aux robots humanoĂŻdes

Il n'est pas possible dans notre as de satisfaire ette onnaissan e. Nous supposons don la vitesse onstante sur les pro haines se ondes. Les mouvements du torse rÊÊs par le ontrle sont de plus partiellement ompensÊs par un positionnement appropriÊ du bras gau he, de façon à ramener le CoM dans le voisinage de la solution fournie prÊ Êdemment. Ce i permet d'obtenir une solution appro hÊe prenant en ompte les mouvements du haut du orps. La dernière Êtape de ontrle permet de orriger les approximations et d'assurer la stabilitÊ.

Corre tion des dĂŠviations du ZMP :

Enn, la dernière Êtape est rÊalisÊe par le stabilisateur

du robot. L'ensemble des al uls des deux premières phases est ee tuĂŠ sans utiliser d'informations apteur autres que les positions arti ulaires. La position du ZMP, du CoM ou en ore l'inertie du haut du orps est obtenue en utilisant le modèle du robot. La dernière ĂŠtape utilise les apteurs de for es situĂŠs dans les pieds du robot pour orriger lo alement les ommandes envoyĂŠes par les premières ĂŠtapes et assurer la stabilitĂŠ du robot. Le stabilisateur permet de prendre en ompte de grandes perturbations, omme par exemple une forte poussĂŠe sur l'ĂŠpaule du robot. La robustesse de l'ensemble du système a permis par exemple de rĂŠaliser un fran hissement d'obsta le dynamique [Verrelst 06â&#x201E;&#x201E;, e qui nĂŠ essite pourtant de violer l'hypothèse de dĂŠpart d'un pendule dont la masse est ontraint sur un plan. Grâ e Ă la robustesse du stabilisateur, l'hypothèse de vitesse onstante supposĂŠe lors de l'ĂŠtape prĂŠ ĂŠdente s'est avĂŠrĂŠe susante.

Compensation en ligne des mouvements du haut du orps :

le ontrle de l'ĂŠquilibre du

robot nous a permis en l'ĂŠtat a tuel de rĂŠaliser une tâ he de manipulation, omme nous le verrons dans les expĂŠrien es. NĂŠanmoins, l'absen e de ompensation expli ite des mouvements du haut du orps n'est pas satisfaisante, d'autant que ela interdit ertains mouvements omme l'in linaison du buste. Plusieurs solutions permettent de ompenser dire tement les mouvements du haut du orps tout en ontrlant le robot en vitesse. Il sut pour ela de rĂŠaliser une tâ he rĂŠgulant les dĂŠviations du ZMP ou du CoM. Dans [Sugihara 02â&#x201E;&#x201E;, la tâ he est onstruite pour rĂŠguler l'erreur entre la position ourante du CoM et la position de rĂŠfĂŠren e dĂŠduite Ă partir du ZMP de rĂŠfĂŠren e. Dans [Kajita 03bâ&#x201E;&#x201E;, la rĂŠsultante des moments angulaires et linĂŠaires est asservie sur la valeur de rĂŠfĂŠren e donnĂŠe par la traje toire de mar he. Cette solution a ĂŠtĂŠ mise en áuvre en utilisant la redondan e dans [Sian 05â&#x201E;&#x201E; pour rĂŠaliser les vitesses onsignes donnĂŠes par un opĂŠrateur en onservant la stabilitĂŠ. Cette dernière appro he rejoint largement l'appro he de la pile de tâ hes, et il semble possible d'ĂŠ rire la tâ he de rĂŠgulation des moments omme une tâ he de la pile. En on lusion, la solution ourante basĂŠe sur une prĂŠvisualition appro hĂŠe hors-ligne et sur une orre tion en ligne des perturbations assure l'ĂŠquilibre du robot en pratique. NĂŠanmoins, le ontrle rĂŠa tif des mouvements du haut du orps est nĂŠ essaire. Ce i semble possible par une appro he similaire Ă  [Sugihara 02â&#x201E;&#x201E; ou en ore [Sian 05â&#x201E;&#x201E;. Enn, notons que l'appro he pragmatique que nous avons hoisie orrespond Ă  elle appliquĂŠe sur le robot Asimo dans [Gienger 05â&#x201E;&#x201E; : le robot est ontrlĂŠ en vitesse par des tâ hes rĂŠa tives, alors que la mar he et la stabilitĂŠ sont assurĂŠes par des modules indĂŠpendants, fon tionnant omme des boĂŽtes noires et orrigeant lo alement les perturbations du reste du orps.

9.2.2 IntĂŠgration du Pattern

Generator

dans la pile

A haque itÊration de la bou le de ontrle, le pattern generator produit la pro haine position arti ulaire à atteindre. Cette ommande peut don se mettre sous la forme de la tâ he suivante :

ewalk = qleg â&#x2C6;&#x2019; qleg â&#x2C6;&#x2014; oĂš

qleg

(9.1)

est la position arti ulaire ourante des deux jambes du robot, et

en onsigne par le pattern generator. Le ja obien

Jwalk =



Inleg 0nleg

Jwalk 0nleg Inleg

qleg â&#x2C6;&#x2014;

est la position donnĂŠe

de ette tâ he est don simplement :

0nâ&#x2C6;&#x2019;2nleg 0nâ&#x2C6;&#x2019;2nleg



(9.2)


9.2

oĂš

Appli ation de la pile de tâ hes à un robot mar heur

n

est le nombre total d'arti ulations du robot, et

nleg = 6

209

est le nombre d'arti ulations de haque

jambe. La tâ he

ewalk

utilise tous les degrÊs de libertÊ des jambes pour assurer la mar he. La tâ he de

manipulation s'ee tue don en utilisant les degrÊs de libertÊ du haut du orps. Mais la mar he induit des mouvements sur le haut du orps. Il n'est don pas possible de onsidÊrer sÊparÊment les deux ontrleurs, omme s'ils Êtaient dÊ ouplÊs. Une première solution serait de al uler expli itement la perturbation engendrÊe par la mar he et de la ompenser lors de la rÊalisation de la tâ he de manipulation. Nous allons montrer que la pile permet de rÊaliser ette ompensation automatiquement en ontrlant l'ensemble du orps omme un tout unique. Tout d'abord, onsidÊrons les deux ontrleurs sÊparÊment. La tâ he de manipulation est rÊalisÊ

Ë&#x2122; up . Soit eup la tâ he de manipar le ontrleur du haut du orps, dont l'entrĂŠe de ommande est q â&#x2C6;&#x201A;eup up pulation Ă rĂŠaliser. On note Jup = â&#x2C6;&#x201A;qup son ja obien. Si la jambe de support du robot bouge (par exemple si le robot mar he), alors la tâ he

eup

subit une perturbation. La dĂŠrivĂŠe de l'erreur s'ĂŠ rit

alors :

eË&#x2122; up = Jup Ë&#x2122; up + up q

â&#x2C6;&#x201A;eup â&#x2C6;&#x201A;t

(9.3)

â&#x2C6;&#x201A;eup â&#x2C6;&#x201A;t sont les mouvements indĂŠpendants des dĂŠpla ements de la partie haute. Dans le as prĂŠsent, es mouvements sont ausĂŠs par la jambe de support. Ils s'ĂŠ rivent don

oĂš

â&#x2C6;&#x201A;eup â&#x2C6;&#x201A;eup qË&#x2122; leg = â&#x2C6;&#x201A;t â&#x2C6;&#x201A;qleg Une loi de ommande qui rĂŠalise la onsigne

eË&#x2122; â&#x2C6;&#x2014;up

(9.4)

tout en ompensant les mouvements induits par la

partie basse est :

+ â&#x2C6;&#x2014; eË&#x2122; up â&#x2C6;&#x2019; qË&#x2122; up = Jup up

 â&#x2C6;&#x201A;eup qË&#x2122; leg â&#x2C6;&#x201A;qleg

(9.5)

ConsidÊrons maintenant la ommande al ulÊe à l'aide de la pile de tâ hes. La pile est dans l'Êtat suivant : (9.5). On

 ewalk eup . Nous allons prouver que la loi de ommande note Jup le ja obien de la tâ he eup al ulÊ sur l'ensemble

de la pile de tâ hes est Êgale à du orps du robot. Il peut être

partitionnĂŠ selon la partie basse et la partie haute :

Jup = oĂš

Jleg up =

h

up Jleg up Jup

i

(9.6)

â&#x2C6;&#x201A;eup â&#x2C6;&#x201A;qleg . La pile ontient deux tâ hes. La loi de ommande (3.16) s'ĂŠ rit de manière simple :

qË&#x2122; = J+ Ë&#x2122; â&#x2C6;&#x2014;walk + Jup Pwalk walk e Or, le ja obien de la tâ he prioritaire l'espa e nul de

ewalk

ewalk

vaut don :

Pwalk =

+ 

eË&#x2122; â&#x2C6;&#x2014;up â&#x2C6;&#x2019; Jup J+ Ë&#x2122; â&#x2C6;&#x2014;walk walk e

est simplement



0nâ&#x2C6;&#x2019;2nleg 0

0 I



  Jwalk = I2nleg 0 .

(9.7)

Le proje teur sur



(9.8)

Finalement, (9.7) s'ĂŠ rit :



oĂš

qË&#x2122; leg = eË&#x2122; â&#x2C6;&#x2014;walk .

    0 eË&#x2122; â&#x2C6;&#x2014;walk qË&#x2122; = + eË&#x2122; â&#x2C6;&#x2014;up â&#x2C6;&#x2019; Jup J+ Ë&#x2122; â&#x2C6;&#x2014;walk up + walk e 0 J up   eË&#x2122; â&#x2C6;&#x2014;walk  = + â&#x2C6;&#x2014; Jup eË&#x2122; up â&#x2C6;&#x2019; Jup qË&#x2122; leg up

(9.9)

La se onde partie de la loi de ommande, qui orrespond Ă la partie haute, est ĂŠgale

Ă (9.5). Ce rĂŠsultat prouve don que la pile permet simplement de al uler un mouvement pour le robot omplet, en ompensant automatiquement les mouvements induits par la mar he.


210

Appli ation aux robots humanoïdes

9.3 Implémentation de la tâ he de saisie Nous dé rivons maintenant rapidement les tâ hes utilisées pour réaliser la saisie. Le robot est doté d'une tête stéréo alibrée, permettant d'obtenir une bonne estimation de la pose 3D de l'objet à saisir. La première tâ he est don un entrage de l'objet dans le hamp de vision, pour assurer la visibilité au ours de l'asservissement. La se onde tâ he asservit la pin e du bras du robot vers la position de l'objet. De plus, durant l'asservissement, la ontrainte des butées arti ulaires est prise en ompte. Expérimentalement, nous avons pu vérier que les butées du bras étaient très bien prises en ompte grâ e à la redondan e laissée par la tâ he de positionnement. Par ontre, les butées du ou posent rapidement problème, et les ontrleurs présentés dans le hapitre 7 doivent être utilisés pour les éviter. Enn, pour améliorer le omportement du robot et préserver son équilibre, l'en haînement de tâ hes a aussi été utilisé pour dé len her l'extension du bras le plus tard possible, uniquement quand l'objet est susamment pro he pour être saisi. Pour ne pas sur harger la le ture ave des détails te hniques, nous ne donnons pas dans e hapitre le détail des fon tions d'erreurs et des ja obiens. Nous nous ontenterons de présenter haque tâ he en donnant les informations apteurs utilisées et les arti ulations asservies. Les détails te hniques sont dé rit dans l'annexe A.

9.3.1 Tâ hes de la pile Centrage :

la première tâ he

eG

onsiste simplement à entrer l'image de l'objet dans une des deux

améras (en l'o urren e, la gau he), pour assurer la visibilité. La tâ he est don de dimension 2. Comme dans le reste du do ument, nous é rivons son ja obien sous la forme

JG = LG JqG ,

LG

est la matri e d'intera tion du point asservi. Cette tâ he né essite l'asservissement des arti ulations de la jambe de support, du torse et du ou (voir gure 9.1(b)). Son ja obien arti ulaire s'é rit don :

JqG = où

cam

Jsl ,

cam

Jchest

et

cam



Jneck

cam

Jsl

0

cam

Jchest

cam

Jneck

0



(9.10)

sont les ja obiens respe tifs de la jambe de support, du torse et du

ou, al ulés dans le repère améra.

Saisie :

la saisie a pour but d'amener la pin e du robot à la position de l'objet. La tête stéréo nous

donne dire tement la position 3D de l'objet à saisir, et la position de la main est obtenue à l'aide du modèle géométrique dire t du robot. Une tâ he d'asservissement 3D nous permet d'obtenir le résultat voulu. Toutefois, nous avons hoisi de diviser ette tâ he en deux parties, la première s'o upant de ontrler l'orientation de la pin e, l'autre régulant la distan e à l'objet. La tâ he

ontrle l'orientation de la pin e pour assurer que l'objet à saisir se trouve toujours

dans le prolongement de l'ouverture. On note de la pin e

Frhand

po =

Xo , Yo , Zo



la position de l'objet dans le repère

(voir gure 9.1(a)). Ces oordonnées sont al ulées à partir des oordonnées de

l'objet estimées par la stéréo dans le repère de la tête, onverties dans le repère de la pin e en utilisant le modèle géométrique du robot. Dans e repère, la tâ he de l'objet sur l'axe

Z.

onsiste simplement à réguler la position

La fon tion de tâ he s'é rit don :

eθ =



Xo Yo



(9.11)

La matri e d'intera tion de ette tâ he se déduit fa ilement (voir l'annexe A). Enn, le ja obien arti ulaire de ette tâ he est omposé des ja obiens arti ulaires de la jambe de support, du torse et du bras droit, al ulés dans le repère de la pin e. Une fois que l'orientation de la pin e est ontrlée par la tâ he

eθ ,

il ne reste plus qu'à annuler

la distan e entre la pin e et l'objet. Mais ette tâ he est mal onditionnée au voisinage de zéro. Nous


9.3

Implémentation de la tâ he de saisie

Frcam

211

Flcam

P

re f

po

xw yw zw xw

Fwaist

zrh xrh

e3D Frhand

eG

yrh

ewalk echest Joint limits

(a) Conguration des repères Fig. 9.1 

(b) Répartition des degrés de liberté

Résumé des notations utilisées dans le hapitre

avons don hoisi d'utiliser dire tement la tâ he suivante :

e3D = prhand − po

(9.12)

Cette tâ he est de dimension trois et est très fortement ouplée à la tâ he

eθ . Cependant, la hiérar hie

permet d'imposer un dé ouplage entre les deux tâ hes, et évite ainsi tout onit. Il sut pour ela d'imposer que la tâ he

soit toujours prioritaire sur la tâ he

Orientation verti ale de la pin e :

e3D

pendant tout l'asservissement.

Les deux tâ hes pré édentes ne ontraignent que trois des six

degrés de liberté du bras. Une tâ he supplémentaire est ajoutée pour ontrler l'orientation verti ale de la pin e. Ce i onstitue une première étape vers la saisie d'objet plus omplexe, demandant une orientation spé ique de la pin e au moment de la fermeture de la pin e. La tâ he

evert

permet d'imposer que le plan séparant les deux doigts de la pin e soit toujours

verti al (voir gure 9.1(a)). Ce omportement est obtenue en asservissant l'axe

yrh

du repère de la

pin e vers une position de référen e perpendi ulaire à la verti ale. Les fon tions d'erreur ainsi que la matri e d'intera tion asso iée sont obtenues à partir des travaux sur l'asservissement par rapport à un plan [Motyl 92℄. La ja obienne arti ulaire orrespondante est la même que elle des deux tâ hes

et

e3D .

9.3.2 Contraintes d'évitement La seule ontrainte que nous avons onsidérée pour ette appli ation est la ontrainte d'évitement des butées. La tâ he de mar he ne laisse au une redondan e sur les jambes. De plus, le bras gau he n'est pas ontrlé. La ontrainte de butées ne s'applique don nalement que sur le bras droit, le torse et le ou. La ontrainte est mise sous la forme de la fon tion de oût dé rite dans les hapitres pré édents (voir en parti ulier le paragraphe 3.2.1).


212

Appli ation aux robots humanoĂŻdes

Les trois tâ hes asservissant le bras n'utilisent que quatre des six degrÊs de libertÊ disponibles. La ontrainte d'Êvitement est don respe tÊe en utilisant simplement le gradient projetÊ sur le sommet de la pile. Par ontre, la seule redondan e disponible pour Êviter les butÊes du ou utilise les arti ulations du torse. Or, le stabilisateur utilisÊ pour maintenir l'Êquilibre du robot n'est pas robuste au mouvement du torse. Pour limiter l'utilisation de es mouvements, nous avons don utilisÊ le ontrleur de ontraintes dÊ rit dans le hapitre 7, omme nous le prÊsentons dans le paragraphe suivant.

9.3.3 Contrleurs de tâ hes Contrleur d'Êvitement de butÊes : dernière tâ he

echest

pour limiter l'utilisation des arti ulations du torse, une

est ajoutĂŠe. Elle asservit les arti ulations du torse Ă leur position zĂŠro. Il ne reste

alors plus au une redondan e pour Êviter les butÊes du ou. Le ontrleur de ontraintes prÊsentÊ au paragraphe 7.2.1 est utilisÊ pour retirer la tâ he

echest

lorsque le ou s'appro he de ses butĂŠes.

Pendant le fon tionnement normal du robot, seules les arti ulations du ou sont utilisÊes pour suivre l'objet dans l'image. Si le ou arrive en butÊe, alors la tâ he

echest

est retirĂŠe, et le torse peut

bouger librement pour parti iper au suivi de l'objet. Dès que l'objet rentre dans l'espa e arti ulaire

echest est remise dans la pile, et le echest est un moyen ad-ho (mais très

du ou, la tâ he La tâ he

torse rejoint dou ement sa position zĂŠro. e a e) de maintenir l'ĂŠquilibre du robot. NĂŠan-

moins, une tâ he ontrlant expli itement la stabilitĂŠ serait nĂŠ essaire. Par exemple, le ontrle des moments angulaires [Sian 05â&#x201E;&#x201E; ou du entre de masse [Sugihara 02â&#x201E;&#x201E; du robot permettrait d'assurer thĂŠoriquement (et non plus seulement expĂŠrimentalement) la stabilitĂŠ du robot.

DĂŠ len hement de la phase nale de la saisie :

enn, un nouveau ontrleur est ajoutĂŠ pour

dÊ len her la saisie uniquement lorsque l'objet est susamment pro he du robot pour être attrapÊ. Cela Êvite que le bras reste trop longtemps en extension maximale, omme il le ferait si le robot tentait d'attraper un objet hors de portÊe. En eet, la position bras Êtendu est à Êviter pour deux raisons. Tout d'abord, elle orrespond à une position singulière des bras anthropomorphiques. Mais aussi, ette position à tendan e à perturber l'Êquilibre du robot. Il s'ensuit une augmentation des impa ts et des os illations à haque pas. Le ontrleur ajoute simplement la tâ he note

do

e3D

Ă la pile lorsque l'objet est susamment pro he. On = ||rs Mcam po ||, oĂš rs Mcam est

la distan e entre l'ĂŠpaule droite du robot et l'objet Ă saisir (do

la matri e homogène entre le repère amÊra et elui de l'Êpaule droite). Lorsque l'objet est trop loin (do

> dmax ,

oĂš

dmax

est la longueur du bras du robot), la tâ he

est introduite dans la pile si

do

passe sous le seuil

80% dmax .

e3D

est retirÊe de la pile. La tâ he

Choisir deux seuils dis tin ts permet de

supprimer les os illations pouvant se produire quand l'objet est à la distan e limite. Le robot a omplit don dès le dÊpart la partie rÊalisable de la tâ he de saisie ( 'est-à-dire

eθ ),

et a hève le reste de la saisie au dernier moment. Cette règle simple de gestion des tâ hes permet de rÊaliser rapidement la saisie dès que l'objet est dans l'espa e pro he du robot sans perturber ni la manipulabilitÊ du bras ni l'Êquilibre pendant la mar he.

9.4 RĂŠsultat expĂŠrimentaux Les expĂŠrien es ont ĂŠtĂŠ menĂŠes sur le robot HRP-2 [Kaneko 04â&#x201E;&#x201E;. Le ontrle est ee tuĂŠ Ă une aden e de

200Hz .

Le retour amĂŠra est disponible Ă une frĂŠquen e de

30Hz .

La syn hronisation

entre les deux bou les fon tionnant à aden e diÊrente est ee tuÊe au moyen d'un ltre de Kalman. Celui- i permet de plus d'obtenir une estimation de la vitesse de l'objet. Nous prÊsentons deux expÊrien es typiques du omportement du robot. La première permet de tester l'en haÎnement de tâ hes utilisÊ pour Êviter la butÊe du ou. La se onde prÊsente l'appli ation omplète : le robot mar he selon une traje toire prÊdÊnie, et attrape un objet spÊ iÊ situÊ pro he de sa traje toire.


9.4

Résultat expérimentaux

213

1

yfix (m)

0.5 0

robot

pfinal

−0.5 −1

pinit 0

Fig. 9.2 

0.5 pinit

1

1.5

2

xfix (m)

Première expérien e : position de l'objet dans le repère xe. Le robot est situé à la position zéro.

Normalized joint pos.

1 chest1 chest2 head1 head2

0.8 0.6 0.4 0.2 0

2500

3000

3500

4000 4500 Iteration

5000

5500

6000

Fig. 9.3  Première expérien e : position arti ulaire du robot pendant l'asservissement. Pour rendre la gure plus

lisible, seules les arti ulations du torse ( pan et

tilt)

et du ou ( pan et

tilt)

sont données (les autres arti ulations

sont immobiles).

9.4.1 Première expérien e : en haînement pour l'évitement de butées Lors de ette expérien e, le robot ne mar he pas. L'objet à saisir est dépla é à la main autour du robot, de manière à amener le ou en butée. Il est toujours laissé hors de portée du robot, an de ne pas dé len her la tâ he de saisie. L'expérien e est résumée sur les gures 9.2, 9.3 et 9.4. Le dépla ement de l'objet dans le repère (xe) du bassin est donné sur la gure 9.2. Le dépla ement arti ulaire du robot pour suivre l'objet est donné sur la gure 9.3. L'objet ommen e à bouger à l'itération 2200. La tête pivote pour suivre le mouvement. A l'itération 3300, la ollision ave les butées est déte tée. Le ontrleur de ontraintes retire alors la tâ he

echest .

Le torse se met alors en

mouvement pour suivre l'objet. Le ou n'est plus utilisé que pour de petits dépla ements, et ne se rappro he plus de sa butée. La gure 9.4 donne la vitesse des arti ulations du torse et du ou pendant l'asservissement. A partir de l'itération 3300, la vitesse du ou est faible. L'objet revient nalement vers l'espa e ouvert par l'arti ulation du ou. A l'itération 4600, la tâ he

echest

est remise dans la pile. On voit sur la gure 9.3 que l'arti ulation du torse revient

dou ement à sa position initiale.


214

Appli ation aux robots humanoïdes

0.6 chest1 chest2 head1 head2

Velocities (r/s)

0.4 0.2 0 −0.2 −0.4 −0.6 2500

Fig. 9.4 

3000

3500

4000 4500 Iteration

5000

5500

6000

Première expérien e : vitesse arti ulaire pendant l'asservissement.

9.4.2 Se onde expérien e : saisie pendant la mar he Nous présentons maintenant les résultats obtenus ave l'appli ation omplète. Le robot mar he selon une traje toire prédénie. L'objet à saisir est pla é à proximité de ette traje toire. Pour valider la robustesse de l'asservissement visuel, l'objet est dépla é aléatoirement pendant le dépla ement du robot. L'expérien e est résumée sur les gures 9.5 à 9.11. La gure 9.5 présente les a tions du robot au ours de l'asservissement. La mar he est lan ée à l'itération 2200. Jusqu'à l'instant (1), l'objet est trop éloigné du robot pour être saisi. La tâ he que pour maintenir la tâ he

e3D

n'est don pas mise dans la pile. Le bras ne bouge don

à zéro. Il s'agit essentiellement de petits mouvements os illatoires pour

ompenser le mouvement de balan ier dû à la mar he, omme on le voit sur les gures 9.6 (position arti ulaire) et 9.7 (vitesse arti ulaire). De la même manière, les arti ulations du ou se dépla ent pour ompenser les os illations de la mar he. Les gures 9.8 et 9.9 donnent l'estimation de la position et de la vitesse de l'objet respe tivement dans l'image et en 3D. En intégrant dans le ltre de Kalman la ommande envoyée au robot, on obtient un ltrage orre t de la vitesse intrinsèque de l'objet. On remarque malgré tout dans l'estimation des os illations à la fréquen e des pas du robot, qui montrent que la vitesse intrinsèque n'est pas parfaitement ltrée. Cela est dû d'une part à une erreur de alibration du délai d'a quisition et de traitement d'image, et d'autre part à un retard d'appli ation de la ommande dû à la ommande en position implémentée sur le robot. Cette estimation permet malgré tout d'assurer une bonne régulation des deux tâ hes

eG

et

eθ ,

en ompensant les mouvements

de l'objet, et de la mar he ( f. 9.10). A l'instant (1), l'objet est susamment pro he du robot pour pouvoir être saisi. La tâ he

e3d

est

don ajoutée à la pile. Avant l'instant (1), ette tâ he n'était pas régulée. La dé roissan e que l'on onstante sur la gure 9.10 est uniquement due au dépla ement du robot le long de la traje toire de mar he. A partir de l'instant (1), la vitesse de onvergen e de ette tâ he a élère, et elle est rapidement amenée à zéro. Cela orrespond à un dépla ement rapide du bras omme on le onstate sur les gures 9.6 et 9.7. A l'instant (2), la pin e a rejoint la position de l'objet. On termine alors l'asservissement en fermant la pin e sur l'objet. Le bras ne bouge alors plus que pour maintenir la pin e à la même position, le temps de fermer la pin e. A l'instant (3), les apteurs de for es déte tent que l'objet est serré dans la pin e, e qui met n à l'asservissement. Finalement, la gure 9.11 présente une séquen e d'images du robot pendant l'asservissement, ainsi que les images orrespondantes apturées ave la améras gau he du robot.


9.4

Résultat expérimentaux

215

(1)

(2)

(3)

walk eG etheta evert e3d grip 2400

2600

2800

3000

3200 3400 Iteration

3600

3800

4000

4200

Fig. 9.5  Se onde expérien e : a tivation des tâ hes lors de l'asservissement. Au lan ement de l'asservissement, les

tâ hes

ewalk , eG , evert et eθ sont dans la pile. La mar he démarre à l'itération 2200. A l'instant (1) (itération 3650), e3d est ajoutée dans la pile pour terminer la saisie. La pin e rejoint la position de l'objet à l'instant (2)

la tâ he

(itération 3800). On ferme alors la pin e. A l'instant (3) (itération 4000), les apteurs de for es déte tent que la pin e s'est fermée sur l'objet. Toutes les tâ hes sont alors retirées de la pile et l'asservissement se termine.

1 chest1 chest2 head1 head2 arm1 arm2 arm3 arm4 arm5 arm6

0.8 0.6 0.4 0.2 0

Fig. 9.6 

2400

2600

2800

3000

3200

3400

3600

3800

4000

4200

Se onde expérien e : positions arti ulaires. Pour rendre la gure plus lisible, seules les arti ulations du

torse, du ou et du bras droit sont données.


216

Appli ation aux robots humanoïdes

1

Values

0.5 chest1 chest2 head1 head2 arm1 arm2 arm3 arm4 arm5 arm6

0

−0.5 −1

−1.5 2400

2600

2800

Fig. 9.7 

3000

3200 3400 Iterations

3600

3800

4000

Se onde expérien e : vitesses arti ulaires.

x y vx

1000

Position and velocities (pixel and pixel/s)

4200

800

vy

600

400

200

0

−200

−400 2400

Fig. 9.8 

2600

2800

3000

3200 3400 Iterations

3600

3800

4000

4200

Se onde expérien e : estimation de la position et de la vitesse de l'objet dans l'image obtenue après

ltrage de Kalman. Le ltre permet de lisser la position de l'objet en intégrant le dépla ement du robot. De plus, un ltrage orre t de la vitesse intrinsèque de l'objet est obtenu. L'objet reste au entre de l'image, 'est-à-dire aux oordonnées

(320, 240).


9.4

Résultat expérimentaux

217

Position and Velocities (m and m/s)

1.4

x y z vx

1.2 1 0.8

vy

0.6

vz

0.4 0.2 0 −0.2 −0.4 −0.6 2400

2600

2800

3000

3200 3400 Iterations

3600

3800

4000

4200

Fig. 9.9  Se onde expérien e : estimation de la position et de la vitesse de l'objet dans le repère de la pin e après

ltrage de Kalman. Les oordonnées troisième oordonnée

z

x

et

y

l'instant (1), elle onverge rapidement vers

Normalized error norm

sont orre tement régulées à

dé roît lentement vers

0

0

0

grâ e à l'appli ation de la tâ he

sous l'a tion de la tâ he

e3D .

0.1

||e3d||

0.5

||etheta||

0.4

||eG||

0.3 0.2 0.1 0.5 0.4 0.3 0.2 0.1 2400

Fig. 9.10 

2600

2800

eθ .

La

pendant que le robot avan e le long de sa traje toire. A partir de

3000

3200 3400 Iteration

3600

3800

4000

4200

Se onde expérien e : norme des erreurs pendant l'asservissement.


218

Appli ation aux robots humanoïdes

(iter. 2800)

(iter. 3600)

(iter. 3700)

(iter. 3800)

(iter. 4200) Fig. 9.11 

Se onde expérien e : images apturées pendant l'asservissement. La séquen e de gau he a été prise

depuis une améra déportée (et n'a pas été utilisée pour l'asservissement). La séquen e de droite a été prise ave la améra gau he de la tête stéréo.


9.5

Con lusion

219

9.5 Con lusion Dans e hapitre, nous avons prÊsentÊ la mise en áuvre de la pile de tâ hes sur un robot humanoïde. En utilisant les fon tionnalitÊs de ommande au niveau des tâ hes oertes par la pile, il a ÊtÊ possible de onstruire rapidement un omportement omplexe du robot, par une omposition de omportements simples. Le robot est nalement apable de rÊaliser la saisie d'un objet pendant la mar he, e qui demande à la fois rÊa tivitÊ, robustesse aux perturbations entraÎnÊes par les impa ts de mar he et prÊ ision dans le ontrle du bras. Comme nous l'avons dit plus haut, il semble nÊ essaire à l'avenir d'ajouter à la pile un rÊel ontrle de l'Êquilibre du robot, pour ne plus avoir à ompter sur la robustesse du stabilisateur de mar he. Nous espÊrons de plus pouvoir rapidement proposer des en haÎnements de tâ hes plus omplexes en utilisant des apa itÊs oertes par la pile de tâ hes.


220

Appli ation aux robots humano誰des


Chapitre 10

Con lusion et perspe tives

L

e but de ette thèse Êtait d'Êtudier les mÊthodes d'en haÎnement de tâ hes pour Êlargir le adre d'utilisation de la ommande rÊfÊren Êe apteur et de proposer une alternative à la plani ation

de traje toires. L'utilisation de la ommande rÊfÊren Êe apteur au plus bas niveau permet d'obtenir un omportement robuste et e a e du robot. L'en haÎnement de tâ hes est don une solution attra tive, dans le sens oÚ il peut permettre d'Êtendre le domaine de validitÊ, tout en gardant les bonnes propriÊtÊs de l'asservissement rÊa tif. Notre travail s'est don logiquement divisÊ en deux parties. Dans un premier temps, nous avons her hÊ à onstruire une stru ture uni atri e pour exÊ uter et en haÎ-

ner diÊrentes tâ hes robotiques rÊa tives sur un robot. Cette stru ture devait permettre d'apporter des fon tionnalitÊs de ontrle du robot au niveau des tâ hes. Une fois ette stru ture onstruite, nous avons utilisÊ es possibilitÊs de ontrle de plus haut niveau pour en haÎner des tâ hes omposant une tâ he omplexe, tout en prenant en ompte des ontraintes multiples.

Contributions Nous regroupons les ontributions en deux parties distin tes, Ă l'image de l'organisation du mĂŠmoire.

Bas niveau Pile de tâ hes :

Les travaux sur la ommande bas niveau rÊalisÊe au ours de ette thèse reposent

sur les formalismes de la fon tion de tâ he et de la redondan e et ont pour but d'Êtendre leurs hamps pratique et thÊorique. Dans un premier temps, nous avons utilisÊ es deux formalismes pour onstruire une stru ture permettant d'appliquer simultanÊment plusieurs tâ hes ainsi que des ontraintes : la pile de tâ hes. Cette stru ture permet de s'abstraire du ontrle du robot au niveau arti ulaire et rend possible un ontrle au niveau omportemental, en sÊle tionnant de manière dynamique les tâ hes a tives ou en modiant l'ordre des tâ hes prÊsentes dans la pile. De par l'utilisation de la redondan e pour appliquer plusieurs tâ hes, ette stru ture rejoint un ertain nombre de travaux rÊ ents, en parti ulier portant sur le ontrle rÊa tif de robot humanoïde. La pile de tâ hes apporte deux fon tionnalitÊs intÊressantes par rapport à es diÊrents travaux. Tout d'abord, elle permet de prendre en ompte n'importe quelle ontrainte pouvant s'Ê rire sous la forme d'une fon tion de oÝt. Mais surtout, on lui doit d'assurer la ontinuitÊ de la loi de ommande lorsque la pile est modiÊe, par


222

Con lusion et perspe tives

exemple lors d'un en haÎnement de tâ hes. Cela assure un bon omportement du robot, en parti ulier en Êvitant les brusques a ÊlÊrations.

Redondan e dire tionnelle :

La pile de tâ hes a ensuite ÊtÊ Êtendue, tout d'abord en modiant

les hypothèses du formalisme de la redondan e puis elles du formalisme de la fon tion de tâ hes. La première modi ation a permis d'amÊliorer la prise en ompte des tâ hes se ondaires, 'est-à dire d'augmenter la redondan e des tâ hes prioritaires. L'hypothèse de dÊpart de la redondan e est d'imposer à la tâ he se ondaire de ne pas modier le omportement de la tâ he prioritaire. Nous avons onsidÊrÊ une hypothèse moins forte, en imposant à la tâ he se ondaire de ne pas ralentir la tâ he prioritaire. Cela se traduit par une augmentation de la dimension du proje teur assurant le respe t de la tâ he prioritaire, permettant à une plus grande part de la tâ he se ondaire d'être prise en ompte dans le al ul de la loi de ommande nale.

Tâ hes à dimension variable :

En utilisant le formalisme de la fon tion de tâ he pour onstruire

la pile, nous supposons que les tâ hes sont de dimension onstante, 'est-à -dire que le rang de leur ja obien ne varie pas en ours d'asservissement. Cette hypothèse limite fortement le nombre de tâ hes qu'il est possible d'exprimer et de mettre dans la pile. En eet, lorsqu'on her he à exprimer sous forme mathÊmatique une tâ he à faire exÊ uter au robot, il arrive frÊquemment qu'on obtienne un ve teur dont la dimension varie au ours du temps et en fon tion de la onguration du robot. C'est le as lorsque des informations visuelles sont perdues ou erronÊes pendant l'asservissement. C'est aussi le as lorsqu'on her he à asservir le robot vers une rÊgion plutt que vers une pose unique. Enn, lorsqu'on her he à exprimer une ontrainte sous ette forme, la dimension de la tâ he obtenue est nulle loin de toutes ontraintes et augmente au fur et à mesure que le robot appro he des zones de ontraintes. Dans un premier temps, nous avons mis en Êviden e l'importan e de l'hypothèse de dimension onstante lorsqu'une loi de ommande dÊrivant du formalisme de la fon tion de tâ he est utilisÊe. Nous avons ensuite proposÊ un nouvel opÊrateur pour rempla er l'opÊrateur de pseudo-inverse lassiquement utilisÊ lors du al ul de la loi de ommande. Ce nouvel opÊrateur permet de al uler une loi de ommande à partir d'une tâ he à dimension variable, tout en assurant la ontinuitÊ lors de l'a tivation ou de la dÊsa tivation d'une primitive. De plus, ette loi de ommande est Êgale aux lois de ommande lassiques lorsqu'au une primitive n'est en ours d'a tivation ou de dÊsa tivation. En e sens, ette nouvelle loi de ommande est une extension des lois de ommande lassiques aux dimensions variables. Enn, ette loi de ommande Êtend le formalisme de la redondan e et ainsi permet d'appliquer le adre des tâ hes à dimension variable à la pile de tâ hes.

L'asservissement qualitatif

est un as parti ulier de tâ he à dimension variable. Il permet

d'Êtendre le domaine de onvergen e, en exprimant le but de l'asservissement omme un intervalle plutt que omme une position unique. La tâ he qualitative est à dimension variable dans le sens oÚ une primitive est dÊsa tivÊe lorsqu'elle entre dans l'intervalle de onvergen e, et rÊa tivÊe lorsqu'elle en sort. Cette solution nous a permis d'exprimer simplement plusieurs types de ontraintes. Il est alors possible d'ajouter des ontraintes omme des tâ hes à l'intÊrieur de la pile, e qui Êtend les possibilitÊs de ontrle au niveau des tâ hes.

Pile de tâ hes, version nale :

Au nal, l'ensemble des travaux sur la ommande bas niveau

se rejoignent dans le adre de la pile de tâ hes. La pile de tâ hes omplète permet de prendre en ompte tâ hes et ontraintes indistin tement. Elle assure la ontinuitÊ lors d'un en haÎnement expli ite (lorsque la pile est modiÊe) et lorsqu'une omposante d'une tâ he à dimension variable s'a tive ou se dÊsa tive. Enn, la prise en ompte des ontraintes est Êtendue grâ e à l'utilisation de la redondan e qualitative.

Haut niveau La se onde partie de ette thèse a portÊ sur le ontrle de haut niveau, 'est-à -dire le ontrle au niveau des tâ hes en utilisant les fon tionnalitÊs d'en haÎnement oertes par la pile. Cette partie est à nos yeux le áur de la ontribution. En eet, au-delà de l'aspe t plus te hnique des ontributions


223

prÊ Êdentes, ette partie permet d'ouvrir des perspe tives très larges, en insistant sur les possibilitÊs d'une alternative à la plani ation de traje toire.

En haÎnement de tâ hes :

Dans un premier temps, nous avons onstruit une solution omplète

pour rÊaliser une tâ he omplexe sur un robot manipulateur en prenant en ompte plusieurs ontraintes diÊrentes. Cette stru ture permet d'en haÎner automatiquement plusieurs Êtapes d'asservissement, en exÊ utant su essivement des phases de positionnement et des phases d'Êvitement. Cette stru ture limite l'utilisation de la plani ation au maximum, en ne al ulant une traje toire que dans les as de minima lo aux les plus di iles et en ne suivant la traje toire planiÊe que le temps nÊ essaire pour sortir du minimum lo al. Cette stru ture permet de rÊaliser des dÊpla ements omplexes en Êvitant des obsta les divers. De plus, en limitant la plani ation aux as les plus di iles, on rÊduit les temps de al ul nÊ essaires (ou on augmente la frÊquen e du ontrle). On diminue aussi la quantitÊ de onnaissan es exigÊes par le fon tionnement de l'algorithme. Enn, en appliquant une su ession de tâ hes rÊfÊren Êes apteur, on onserve toutes les bonnes propriÊtÊs de e type d'asservissement, omme la prÊ ision ou la robustesse aux bruits et aux approximation de modèle.

Validation sur de nombreuses plateformes :

L'en haÎnement de tâ hes proposÊ a ÊtÊ validÊ

sur plusieurs plateformes de types diÊrents. Les premières validations ont ÊtÊ faites pour des robots manipulateurs de type industriel omme elui de l'IRISA, ou de type plus lÊger, omme le robot Baltazar de l'ISR/IST à Lisbonne. Nous avons ensuite appliquÊ l'en haÎnement de tâ hes aux robots mobiles en simulation. Enn, la pile de tâ hes ainsi que la stru ture de ontrle ont ÊtÊ validÊes sur le robot humanoïde HPR-2 du JRL-Japan à Tsukuba, pour rÊaliser une tâ he de saisie dans un adre di ile à modÊliser. Ces multiples validations montrent bien la gÊnÊri itÊ de l'appro he, qui peut s'adapter aussi bien à des robots non redondants qu'à des robots très redondants, ou en ore à des robots non holonomes. De plus, il nous semble important d'insister sur la rapiditÊ ave laquelle il a ÊtÊ possible d'adapter la mÊthode et de la dÊployer sur une nouvelle plateforme. Ce i est une onsÊquen e intrinsèque de l'appro he. En eet, l'utilisation de l'asservissement rÊfÊren Ê apteur, et de l'asservissement visuel en parti ulier permet une mise en áuvre rapide et e a e, en nÊ essitant des modèles peu omplexes du robot et en ompensant les erreurs ou les approximations ommises grâ e à leur grande robustesse. La pile de tâ hes fa ilite en ore le dÊploiement de es mÊthodes, en permettant un ontrle au niveau des tâ hes. Enn, les ontrleurs de haut niveau s'adaptent fa ilement à diÊrents robots, grâ e à la gÊnÊri itÊ des règles d'utilisation utilisÊes et de la ommande au niveau des tâ hes en gÊnÊral. Au nal, l'appro he proposÊe est rapide, e a e et portable. Elle demande peu de onnaissan es sur le robot ou sur son environnement et garantit une exÊ ution robuste et able grâ e à l'utilisation de l'asservissement rÊfÊren Êe apteur. Même si l'appli ation n'est pas en ore omplète et ne permet pas d'obtenir des exÊ utions aussi omplexes que e dont les mÊthodes de plani ation sont apables, par exemple en environnement très en ombrÊ, il nous semble don que ette mÊthode est bien une alternative intÊressante au

tout planier.

Perspe tives Nous venons de dresser un bilan positif du travail prÊsentÊ dans e do ument. Cela ne doit pas faire oublier qu'il reste en ore de nombreux problèmes ouverts. De plus, les rÊsultats que nous avons obtenus rÊ emment sus itent de nouvelles questions et ouvrent des perspe tives de re her he future. Tout au long du do ument, plusieurs points in omplets ou irrÊsolus ont ÊtÊ mis en Êviden e. Nous en faisons i i une synthèse rapide. Les premiers problèmes proviennent logiquement de la ommande bas niveau. Comme nous l'avons dit à la n du hapitre 4, la redondan e dire tionnelle peut se gÊnÊraliser à plusieurs tâ hes et peut don être utilisÊe dans la pile. Par ontre, il n'est pas possible d'obtenir simplement la forme optimale de la loi de ommande. Ce problème limite fortement l'utilisation de ette mÊthode. En eet, il est possible grâ e à la redondan e dire tionnelle d'utiliser plus de degrÊs de libertÊ pour les tâ hes


224

Con lusion et perspe tives

se ondaires. Mais, sans la forme optimale de la loi de ommande, es degrĂŠs sont

moins bien

utilisĂŠs.

Comme la redondan e dire tionnelle n'est performante que lorsque l'erreur de la tâ he prioritaire est grande, il est souvent Êquivalent, voire parfois plus e a e, d'utiliser la forme optimale de la loi de ommande ave la redondan e lassique. La forme optimale doit pourtant pouvoir être obtenue, en Ê rivant l'appli ation de la tâ he se ondaire omme un problème d'optimisation sous ontraintes. L'utilisation des mÊthodes lassiques de e domaine, omme par exemple la mÊthode du

simplexe

devrait alors permettre d'obtenir la forme optimale de la loi de ommande en utilisant la redondan e dire tionnelle. Une se onde perspe tive intÊressante est axÊe autour du nouvel opÊrateur matri iel proposÊ pour les tâ hes à dimension variable et des lois de ommande qui en dÊ oulent. Tout d'abord, peu d'expÊrien es ont ÊtÊ menÊes sur es lois de ommande. De plus, il nous paraÎt important de vÊrier si les rÊsultats obtenus en simulation se vÊrient sur un robot rÊel et se gÊnÊralisent à des robots très redondants. Pour terminer d'unier le travail sur le bas-niveau, il est aussi nÊ essaire de vÊrier que la redondan e dire tionnelle s'applique aux tâ hes à dimension variable. Cependant, 'est la validation thÊorique de e nouvel opÊrateur à la redondan e qui nous semble le plus intÊressant. Une analyse rigoureuse des propriÊtÊs de stabilitÊ et de onvergen e du système est nÊ essaire. Les tâ hes à dimension variable sont une extension prometteuse des formalismes lassiques de rÊgulation d'une erreur, mais ela reste à prouver. Pour terminer ave les perspe tives majeures ouvertes par la partie bas niveau, il serait intÊressant de valider l'utilisation de la pile de tâ hes pour diÊrents types de apteurs ainsi que pour de la ommande rÊfÊren Êe multi- apteurs. En eet, nous avons insistÊ tout au long du do ument sur le fait que notre appro he est gÊnÊrale, mais nous l'avons toujours limitÊe dans les expÊrien es au seul apteur amÊra. Ce apteur permet d'obtenir un grand nombre d'informations diversiÊes, mais de nombreux autres apteurs peuvent aussi être utiles pour la rÊalisation de tâ hes omplexes. Par exemple, un apteur proximÊtrique de type laser permet d'obtenir des informations faiblement ambiguÍs, donnant de plus dire tement la profondeur des objets, e qui omplète opportunÊment l'utilisation de la amÊra. L'exemple typique est l'utilisation de la amÊra pour asservir la pose du robot, alors que le laser permet de rÊaliser un Êvitement d'obsta le. De la même manière, l'utilisation d'un apteur de for es permet de omplÊter les informations obtenues de la amÊra pour des tâ hes de prÊ ision (typiquement, pour rÊaliser des tâ hes de saisie). Dans e as, la prÊ ision du apteur de for es permet d'augmenter la prÊ ision de l'asservissement en n de tâ he. Enn, plusieurs points ont aussi ÊtÊ ouverts dans la se onde partie. D'une part, les lois de ommande prÊsentÊes pour les robots mobiles n'ont fait l'objet d'au une expÊrien e sur des robots rÊels. Nous espÊrons don pro hainement les mettre en áuvre sur la plateforme mobile Cy ab de l'IRISA. Les perspe tives les plus ri hes pour le ontrle des robots non-holonomes sont elles ouvertes par les premières expÊrien es d'en haÎnement pour gÊnÊrer des mouvements de manáuvres. Les manáuvres sont pour l'instant rÊÊes par une modi ation simple de la position dÊsirÊe. Le problème est alors de her her un ritère permettant de hoisir de manière optimale la position dÊsirÊe virtuelle, de manière à optimiser le mouvement ee tuÊ par le robot. On rejoint i i les mÊthodes onnues de ommande par retour d'Êtat dis ontinu. La voie ouverte semble parti ulièrement fru tueuse ar elle permet d'utiliser le adre et la fa ilitÊ de l'asservissement visuel pour rÊaliser des mouvements qui sinon nÊ essitent une rÊÊ riture omplète du modèle à haque hangement d'informations visuelles ou de robot. Les travaux rÊalisÊs en robotique humanoïde onstituent un point de dÊpart prometteur à des travaux futurs. Nous avons pu vÊrier que la pile de tâ hes et l'en haÎnement de tâ hes rÊfÊren Êes apteur se prêtaient bien à la ommande de robot humanoïde. Cela ne fait qu'ouvrir les perspe tives. A très ourt terme, il est nÊ essaire d'implÊmenter une tâ he de ontrle de l'Êquilibre du robot à rajouter dans la pile. Une fois une telle tâ he ajoutÊe, il serait parti ulièrement intÊressant d'Êtudier l'Êquilibre du robot omme une ontrainte à respe ter. Un en haÎnement plus omplexe pourrait alors être rÊalisÊ, en utilisant tous les degrÊs de libertÊ du robot, mais aussi en ommandant la dire tion de mar he pendant l'asservissement. Enn, nous avons montrÊ qu'il Êtait possible de s'aran hir d'une plani ation et d'un suivi de traje toire. Cependant, ela n'interdit pas une plani ation dans l'espa e des tâ hes, par exemple omme


225

un ordonnan ement d'obje tifs se ondaires à remplir avant de réaliser la tâ he globale. En e sens, e travail rejoint i i les travaux de plani ation de missions réalisés lors de la onstru tion d'ar hite ture de ommande omplexe. En utilisant une ommande au niveau des tâ hes, l'en haînement que nous avons proposé s'intègrerait d'autant plus fa ilement dans une stru ture d'ordonnan ement à plus haut niveau. Une dernière perspe tive est don de her her à intégrer des étapes de plani ation, non pas au niveau arti ulaire mais au niveau des tâ hes.


226

Con lusion et perspe tives


Annexes

227


Annexe A

Des ription des tâ hes robotiques utilisÊes dans les expÊrimentations

Nous dĂŠ rivons dans ette annexe les tâ hes robotiques rĂŠfĂŠren ĂŠes apteur utilisĂŠes pour rĂŠaliser les expĂŠrien es prĂŠsentĂŠes dans ette thèse. Nous les avons regroupĂŠes en deux parties. Tout d'abord, nous dĂŠ rirons les tâ hes basĂŠes sur les moments d'un objet dans l'image, proposĂŠes dans [Tahri 05â&#x201E;&#x201E;. Ces tâ hes sont gĂŠnĂŠriques et peuvent ĂŞtre utilisĂŠes pour diĂŠrents objets planaires. Elles sont parti ulièrement intĂŠressantes pour rĂŠaliser une tâ he de positionnement de la amĂŠra, ar elles permettent d'obtenir un très bon dĂŠ ouplage entre les primitives. Dans un se ond temps, nous dĂŠ rirons les tâ hes plus spĂŠ iques que nous avons utilisĂŠes dans le hapitre 9 pour rĂŠaliser ave un robot humanoĂŻde une tâ he omplexe de saisie pendant la mar he.

A.1 Asservissement visuel basĂŠ sur les moments 2D Les moments d'un ensemble de points ara tĂŠristiques ou d'une rĂŠgion de l'image permettent d'obtenir des primitives aux propriĂŠtĂŠs de dĂŠ ouplage très intĂŠressantes pour l'asservissement visuel [Tahri 05â&#x201E;&#x201E;. Nous avons hoisi d'utiliser plus spĂŠ iquement les moments de l'image d'un re tangle pour al uler les quatre tâ hes permettant de ontraindre les six degrĂŠs de libertĂŠ de la amĂŠra. Cette solution est dĂŠ rite plus parti ulièrement dans [Chaumette 04â&#x201E;&#x201E;.

â&#x2C6;&#x2014; Une tâ he d'asservissement visuel est dĂŠnie par le hoix de sa fon tion d'erreur e = s â&#x2C6;&#x2019; s (oĂš s â&#x2C6;&#x2014; est le ve teur de primitive al ulĂŠ Ă partir de l'image ourante et s sa valeur dĂŠsirĂŠe) et de sa matri e d'intera tion asso iĂŠe, notĂŠe

L,

telle que :

eË&#x2122; = Lv oĂš

v

(1.1)

est la vitesse instantanĂŠe de la amĂŠra.

Tout au long de e do ument, nous avons utilisÊ quatre tâ hes pour ontraindre les six degrÊs de libertÊ de la amÊra :  la première tâ he

eg

est asservie sur le entre de gravitĂŠ de l'image du re tangle et ontrle

don les mouvements de entrage de la amÊra ;  la se onde tâ he

eZ

est basĂŠe sur la surfa e de l'image du re tangle dans l'image. Elle ontrle

les translations de la amĂŠra le long de son axe optique ;


230

Des ription des tâ hes robotiques utilisées dans les expérimentations

 la troisième tâ he

ontrle prin ipalement la rotation de la améra autour de son axe op-

tique. Elle utilise pour ela l'orientation prin ipale de l'objet dans l'image, al ulée à partir des moments d'ordre 2 ;  la dernière tâ he

eR

utilise des moments d'ordres supérieurs pour ontrler les hangements de

perspe tives de l'objet, 'est-à-dire les mouvements de rotation de la améra autour de l'objet. Dans la suite, nous allons dé rire haque tâ he en donnant sa fon tion d'erreur et sa matri e d'intera tion.

A.1.1 Moments d'ordre zéro et d'ordre 1 Les moments d'ordre

i, j

d'une région

R

de l'image s'é rivent :

mi,j =

ZZ

xi y j dxdy

(1.2)

R

Dans notre as, la région d'intérêt est l'image d'un re tangle, 'est-à-dire un quadrilatère marqué par ses quatre sommets. A partir des oordonnées des quatre points dété tés dans l'image, on peut al uler fa ilement les moments du quadrilatère de manière analytique, sans avoir à passer par le al ul d'une intégrale double. De ette forme générale, il est possible d'extraire les matri es d'intera tion des moments d'ordre zéro et un à ondition que la région d'intérêt

Z = γ1 X + γ2 Y + Z0

Zoom :

R

orresponde à un plan dans l'espa e 3D. On note

l'équation du plan de l'objet dans le repère de la améra.

∗ est onstruite en posant ez = a− a , où a = m00 est l'aire de la région d'intérêt ∗ dans l'image ourrante et a sa valeur désirée. La matri e d'intera tion asso iée s'é rit : La tâ he

ez

Lz = où



−aA −aB

a(3/Zg − C)

A = −γ1 /Z0 , B = −γ2 /Z0 , C = 1/Z0 , xg

et

yg

3ayg

−3axg

0



(1.3)

sont les oordonnées du entre de gravité de la

région d'intérêt que nous dénirons mathématiquement dans la suite, et

1/Zg = Axg + Byg + C . On = yg = A = B = 0), la

remarque que, lorsque l'objet est entré et parallèle au plan de l'image (xg tâ he

ez

ne dépend que du mouvement de translation le long de l'axe optique de la améra.

Centrage :

Les oordonnées du entre de gravité peuvent être dénies à partir des moments

xg = m10 /m00 et yg = m01 /m00 . La tâ he eg est onstruite à partir de ses deux eg = (xg − x∗g , yg − yg∗ ), où (x∗g , yg∗ ) est la position désirée du entre (typiquement, (0, 0)). La matri e d'intera tion asso iée est donnée par :   yg −1/Zg 0 xgνz xgωx xgωy Lg = (1.4) 0 −1/Zg ygνz ygωx ygωy −xg

d'ordre 1 en posant

informations visuelles en posant de gravité

n20 , n02 n11

 xg vz      yg vz xg wx   x  g wy   yg wx

= = = = =

xg /Zg + 4(An20 + Bn11 ) yg /Zg + 4(An11 + Bn02 ) −yg wy = xg yg + 4n11 −(1 + x2g + 4n20 ) 1 + yg2 + 4n02

étant les moments entrées normalisés d'ordre 2 dénis par

  µ20 = m20 − ax2g µ02 = m02 − ayg2  µ11 = m11 − axg yg

nij = µij /a

ave :

(1.5)


A.1

Asservissement visuel basĂŠ sur les moments 2D

231

Lg

On vÊrie bien d'après l'expression de la matri e d'intera tion

eg

que les hangements de la tâ he

sont prin ipalement ontrlĂŠs par les mouvements de translation le long de l'axe

et de rotation autour de l'axe l'axe

y

y

pour la primitive

et de rotation autour de l'axe

x

pour

xg ,

x

de la amĂŠra

et par les mouvements de translation le long de

yg .

A.1.2 Moments entrÊs Pour assurer le dÊ ouplage par rapport à la tâ he

eg ,

les deux dernières tâ hes sont onstruites Ă

partir des moments entrĂŠs, dĂŠnis par :

Âľij =

ZZ

R

(x â&#x2C6;&#x2019; xg )i (y â&#x2C6;&#x2019; yg )j dxdy

Rotation autour de l'axe optique :

(1.6)

L'orientation prin ipale de l'objet peut ĂŞtre dĂŠnie de

manière lassique par :

ι= On dÊnit don la tâ he

eÎą

par

1 2Âľ11 ) arctan ( 2 Âľ20 â&#x2C6;&#x2019; Âľ02

eÎą = Îą â&#x2C6;&#x2019; Îąâ&#x2C6;&#x2014; ,

oĂš

Îąâ&#x2C6;&#x2014;

(1.7)

est l'orientation dĂŠsirĂŠe. La matri e d'intera tion

asso iĂŠe s'obtient Ă partir de la forme gĂŠnĂŠrale des matri es d'intera tion des moments entrĂŠes. Elle s'ĂŠ rit :

LÎą = en posant :

ave :

La tâ he

eÎą

 ka      kb kc    kd   ke



Îąvx

Îąvy

 ιvx      ιvy ιvz   ιwx    ιwy

= = = = =

= = = = =

Îąvz

Îąwx

Îąwy

â&#x2C6;&#x2019;1



(1.8)

ka A + kb B â&#x2C6;&#x2019;kc A â&#x2C6;&#x2019; ka B â&#x2C6;&#x2019;AÎąwy + BÎąwx â&#x2C6;&#x2019;kb xg + ka yg + kd ka xg â&#x2C6;&#x2019; kc yg + ke

Âľ11 (Âľ20 + Âľ02 )/â&#x2C6;&#x2020; [2Âľ211 + Âľ02 (Âľ02 â&#x2C6;&#x2019; Âľ20 )]/â&#x2C6;&#x2020; [2Âľ211 + Âľ20 (Âľ20 â&#x2C6;&#x2019; Âľ02 )]/â&#x2C6;&#x2020; 5[Âľ12 (Âľ20 â&#x2C6;&#x2019; Âľ02 ) + Âľ11 (Âľ03 â&#x2C6;&#x2019; Âľ21 )]/â&#x2C6;&#x2020; 5[Âľ21 (Âľ02 â&#x2C6;&#x2019; Âľ20 ) + Âľ11 (Âľ30 â&#x2C6;&#x2019; Âľ12 )]/â&#x2C6;&#x2020;

est don linĂŠairement reliĂŠe Ă la rotation autour de l'axe optique de la amĂŠra. Lorsque

l'objet est entrÊ et parallèle au plan de la amÊra, la tâ he

eÎą

est ontrlĂŠe uniquement par ette

rotation et est invariante aux mouvements de translation de la amĂŠra.

Corre tion perspe tive :

La dernière tâ he permet de ontrler les mouvements restant, 'est-à -

dire prin ipalement les mouvements orrespondant aux modi ations de l'eet de perspe tive. L'objet servant de rĂŠfĂŠren e Ă l'asservissement est un re tangle, 'est-Ă -dire un objet symĂŠtrique. Dans e as, les deux primitives permettant de dĂŠnir la dernière tâ he sont onstruites Ă  partir des invariants de Hu [Hu 62â&#x201E;&#x201E;. Elles sont dĂŠnies par [Chaumette 04â&#x201E;&#x201E; :

 oĂš

sx = (c2 c3 + s2 s3 )/K sy = (s2 c3 â&#x2C6;&#x2019; c2 s3 )/K

3 â&#x2C6;&#x161; c3 = c21 â&#x2C6;&#x2019; s21 , s3 = 2s1 c1 , K = I1 I32 / a et :  c1 = Âľ20 â&#x2C6;&#x2019; Âľ02 , s1 = 2Âľ11 c2 = Âľ03 â&#x2C6;&#x2019; 3Âľ21 , s2 = Âľ30 â&#x2C6;&#x2019; 3Âľ12

(1.9)


232

Des ription des tâ hes robotiques utilisées dans les expérimentations

La dernière tâ hes est omposée de es deux primitives :

eR = (sx −s∗x , sy −s∗y ). Ces deux primitives

permettent d'obtenir le dé ouplage voulu dans le as où l'objet est parallèle au plan de la améra. Dans e as, la matri e d'intera tion s'é rit :

LR = L'expression exa te de

lwx

et

lwy ,



0

0 0

lwx

lwy

0



(1.10)

ainsi que la forme omplète de la matri e d'intera tion sont

omplexes et n'ont pas réellement d'intérêt à être présentées i i. Le le teur intéressé est invité à se référer à [Tahri 05℄ et à [Chaumette 04℄, où sont donnés les détails permettant de hoisir es primitives, et de onstruire les matri es d'intera tion asso iées.

A.2 Tâ hes utilisées pour réaliser la saisie pendant la mar he Nous détaillons maintenant les quatre tâ hes utilisées pour réaliser la saisie pendant la mar he ave un robot humanoïde. Comme dans la se tion pré édente, une tâ he est dénie par sa fon tion d'erreur et par la matri e d'intera tion asso iée. Dans le as du robot humanoïde, il est de plus né essaire pour ompléter la dénition de donner l'expression du ja obien arti ulaire asso ié. Bien que es ja obiens aient été en général donnés lors de la dénition des tâ hes dans le hapitre 9, nous rappelons leur expression dans ette annexe an de regrouper tous les détails né essaires en un même endroit.

A.2.1 Tâ he de entrage La tâ he de entrage est utilisée pour garder visible l'objet à saisir pendant l'asservissement. Elle onsiste à entrer l'objet dans l'image de la améra gau he du robot. Comme pré édemment, sa fon tion d'erreur s'é rit

eg = xg , yg



et est donnée par la position ourante du entre de l'objet dans

l'image gau he. La matri e d'intera tion de

eg

est donnée par (1.4).

Enn, le ja obien arti ulaire de ette tâ he est une omposition des ja obiens arti ulaires de la cam jambe de support Jsl , du torse cam Jchest et du ou cam Jneck , al ulé dans le repère de la améra gau he :

Jqg =



cam

Jsl

cam

0

Jchest

cam

Jneck

0

A.2.2 Orientation de la pin e vers l'objet



(1.11)

La tâ he de saisie en elle-même est divisée en deux parties. La première partie régule l'orientation de la pin e en dire tion de l'objet. Le but de ette tâ he est de maintenir l'axe sortant de la pin e en dire tion de l'objet, omme le montre la gure 9.1(a). Sa fon tion d'erreur est donnée dans le hapitre 9 et rappelée i i :

eθ = où

(Xo , Yo , Zo )



Xo Yo



(1.12)

est la position de l'objet exprimée dans le repère de la pin e.

La matri e d'intera tion asso ié se al ule en dérivant le ve teur supposant l'objet immobile :

e˙ θ =



X˙ o Y˙o



=



1 0 0 1

0 0



par rapport au temps, en

p˙o

(1.13)

Frhand = (xrh , yrh , zrh ) (voir dans le hapitre 9 la  vrhand = v, ω la vitesse de l'objet al ulée dans e repère (vrhand = rh Jq q˙ ). po par rapport à la vitesse du bras se al ule alors en utilisant l'expression de la

Le repère terminal du bras est noté gure 9.1(a)).On note La vitesse du point

omposition des vitesses :

p˙o = −v + ω × po = −v − [po ]× ω =



I3

[po ]×



v

(1.14)


A.2

oĂš

Tâ hes utilisÊes pour rÊaliser la saisie pendant la mar he

[po ]Ă&#x2014;

est la matri e de prĂŠ-produit ve toriel asso iĂŠe Ă

matri e d'intera tion

Lθ

de

eθ

po .

233

En introduisant (1.14) dans (1.13), la

peut ĂŞtre nalement dĂŠduite :

Lθ =



â&#x2C6;&#x2019;1 0 0 0 â&#x2C6;&#x2019;1 0

0 Zo

â&#x2C6;&#x2019;Zo 0

Yo â&#x2C6;&#x2019;Xo



(1.15)

Le ja obien arti ulaire de ette tâ he dÊpend du ja obien de la jambe de support, du ja obien du torse et du ja obien du bras, tout trois al ulÊs dans le repère de la pin e :

Jqθ =

A.2.3 Tâ he de saisie



rh

Jsl

0

rh

Jchest

0

rh

Jarm

0

0



(1.16)

La tâ he de saisie proprement dite est simplement un asservissement 3D de la position de la pin e vers la position de l'objet utilisÊe omme rÊfÊren e. La position de la main par rapport au repère de la tête stÊrÊo est al ulÊe en utilisant les apteurs proprio eptifs et le modèle gÊomÊtrique du robot. La position de l'objet est al ulÊe par vision 3D en utilisant les deux amÊra stÊrÊo. La fon tion d'erreur s'Ê rit don simplement :

e3D = prhand â&#x2C6;&#x2019; po oĂš

prhand

et

po

(1.17)

doivent être exprimÊs dans un même repère. En hoisissant omme repère ommun

le repère terminal du bras, l'erreur devient invariante aux mouvements de la amÊra. Dans e as, la matri e d'intera tion est exprimÊe en fon tion de la vitesse instantanÊe du repère terminal du bras, et non plus de elui de la amÊra. Cela simplie son expression :

  L3D = I3 03

(1.18)

Enn, le ja obien arti ulaire de ette tâ he est le même que elui de la tâ he prÊ Êdente

eθ .

A.2.4 Contrle de la verti alitÊ de la pin e Enn, la dernière tâ he

evert

permet de ontrler que l'axe de l'arti ulation de la pin e reste

verti al pendant tout l'asservissement, an de pouvoir rÊaliser la saisie dans le as rÊel. En eet, pendant les expÊrien es, l'objet à saisir Êtait pla Ê sur un support verti al ou en ore suspendu au plafond par une orde. Dans les deux as, pour Êviter de tou her le support pendant la saisie, la pin e doit être maintenue verti ale. Cette tâ he est aussi une première Êtape vers un ontrle plus n de la pin e pour la saisie d'objet omplexe.

Frhand = (xrh , yrh , zrh ) (voir gure 9.1(a)).  evert ontraint le plan P = xrh , zrh à rester  verti al. Autrement dit, ette tâ he asservit le plan P sur le plan de rÊfÊren e Pref = xw , zrh . La rÊgulation du plan P est Êquivalent à la rÊgulation de sa normale yrh . La fon tion d'erreur peut don être Ê rite : On rappelle que le repère terminal du bras est notÊ

La tâ he

evert = yrh â&#x2C6;&#x2019; yref oĂš

yref

est la normale au plan de rĂŠfĂŠren e

Pref

est donnĂŠe par [Motyl 92â&#x201E;&#x201E; :

Lvert =



:

(1.19)

yref = zrh Ă&#x2014; xw .

03

[yrh ]Ă&#x2014;



La matri e d'intera tion asso iĂŠe (1.20)

Cette matri e a trois lignes, mais il est fa ile de montrer qu'elle est toujours de rang 2. La ja obien arti ulaire asso iÊ est le même que elui de la tâ he

eθ .


234

Des ription des tâ hes robotiques utilisées dans les expérimentations


Bibliographie

[Alami 98℄

R. Alami, R. Chatila, S. Fleury, M. Ghallab, F. Ingrand.  An ar hite ture for autonomy.

[Alami 00℄

International Journal of Roboti Resear h,

17(4) :315337, 1998.

R. Alami, I. Belousov, S. Fleury, M. Herrb, F. Ingrand, J. Minguez, B. Morisset. Diligent : Towards a human-friendly navigation system.  IEEE/RSJ International Conferen e on Intelligent Robots and Systems (IROS'00), pp. 2126,



Takamatsu, Japan, Novembre 2000. [Albus 91℄

J. Albus.  Outline for a theory of intelligen e.

Man, and Cyberneti s, [Arkin 87℄

IEEE Transa tions on Systems,

21(3) :473509, Mai 1991.

R. Arkin.  Motor s hema based navigation for a mobile robot. 

tional Conferen e on Roboti s and Automation (ICRA'87),

IEEE Interna-

pp. 264271, Raleigh,

USA, Mars 1987. [Artus 03℄

Tra king of an omnidire tional target with a uni y le-like robot : ontrol design and experimental results.  Rapport de Re-

G. Artus, P. Morin, C. Samson. 

her he n RR-4849, Sophia Antipolis, Fran e, INRIA, Juin 2003.

Inverse kinemati s te hniques for the intera tive posture ontrol of arti ulated gures.  PhD. Thesis, EPFL, 2001.

[Baerlo her 01℄

P. Baerlo her. 

[Baerlo her 04℄

P. Baerlo her, R. Bouli .  An inverse kinemati ar hite ture enfor ing an arbitrary number of stri t priority levels.

The Visual Computer, 6(20) :402417, Août

2004. [Barraquand 92℄

J. Barraquand, B. Langlois, J.-C. Latombe.  Numeri al potential eld te hniques for robot path planning.

IEEE Transa tions on Systems, Man and Cyberneti s,

22(2) :224241, Mars 1992. [BenIsrael 80℄

A. Ben-Israel, T. Greville. 

Generalized inverses : theory and appli ations.



Wiley, New York, 1980. [Bennewitz 05℄

M. Bennewitz, W. Burgard, G. Cielniak, S. Thrun.  Learning motion patterns of people for ompliant robot motion.

sear h (IJRR),

[Blo h 92℄

The International Journal of Roboti s Re-

24(1), 2005.

A. Blo h, M. Reyhanoglu, N. M Clamro h.  Control and stabilization of nonholonomi dynami systems.

IEEE Transa tion on Roboti s and Automation,

37(11) :17461757, Novembre 1992. [Blo h 94℄

A. Blo h, S. Drakunov.  modes. 

Stabilization of a nonholonomi system via sliding

33rd IEEE Conferen e on De ision and Control (CDC'94),

pp. 2961

2963, Buena Vista, USA, Dé embre 1994. [Bonasso 91℄

R. Bonasso.  Integrating rea tion plans and layered ompeten es through syn hronous ontrol. 

International joint onferen e on arti ial intelligen e,

12251231, Sydney, Australia, 1991.

pp.


236

[Bonasso 96℄

Bibliographie

R. Bonasso, D. Kortenkamp, D. Miller, M. Sla k.  Experien es with an ar hite ture for intelligent, rea tive agents.

In Intelligent Agents II, éd. par J.P. Wool-

dridge, M. Muller, M. Tambe, pp. 187202.  New York, USA, Springer-Verlag, le ture notes in arti ial intelligen e 1037 édition, 1996. [Bro k 02℄

O. Bro k, O. Khatib.  human environments.

Elasti strips : A framework for motion generation in

International Journal of Roboti s Resear h,

21(12) :1031

1052, Dé embre 2002. [Bro kett 83℄

R. Bro kett, S. Millman, H. Sussman.  Asymptoti stability and feedba k stabilization.

Diferential Geometri Control Theory,

éd. par Boston : Birkhauser, pp.

181208.  1983. [Brooks 86℄

[Brooks 91℄

R. Brooks.  A robust layered ontrol system for a mobile robot.

of Roboti s and Automation,

IEEE Journal

2(1) :1423, 1986.

R. Brooks.  Intelligen e without representation.

Arti ial Intelligen e Journal,

47 :139159, 1991. [Canny 88℄

J. Canny. 

The omplexity of robot motion planning.

 MIT Press Cambridge,

MA, USA, 1988. [Canny 90℄

J. Canny.  A omputational approa h to edge dete tion.

Pattern Analysis and Ma hine,

IEEE Transa tions on

8(6) :679698, 1990.

[CanudasdeWit 92℄ C. Canudas de Wit, O. Sordalen.  Exponential stabilization of mobile robots with nonholonomi onstraints.

IEEE Transa tion on Automati Control,

37 :1791

1797, 1992. [CanudasdeWit 95℄ C. Canudas de Wit, H. Khennouf.  Quasi- ontinuous stabilizing ontrollers for nonholonomi systems : Design and robustness. 

ren e (ECC'95), [Chang 95℄

T. Chang, R. Dubey.  A weighted least-norm solution based s heme for avoiding joints limits for redundant manipulators.

Automation, [Chatila 95℄

IEEE Transa tion on Roboti s and

11(2) :286292, avril 1995.

R. Chatila.  Deliberation and rea tivity in autonomous mobile robots.

and Autonomous Systems, [Chaumette 98℄

3rd European Control Confe-

Roma, Italie, Dé embre 1995.

Roboti s

16(2) :197211, 1995.

F. Chaumette.  Potential problems of stability and onvergen e in image-based and position-based visual servoing.

The Conuen e of Vision and Control, éd. par

D. Kriegman, G. Hager, A. Morse, pp. 6678.  LNCIS Series, No 237, SpringerVerlag, 1998. [Chaumette 01℄

F. Chaumette, E. Mar hand.  A redundan y-based iterative s heme for avoiding joint limits : Appli ation to visual servoing.

Automation, [Chaumette 04℄

F. Chaumette.  Image moments : a general and useful set of features for visual servoing.

[Cheah 05℄

IEEE Transa tion on Roboti s and

17(5) :719730, O tober 2001.

IEEE Transa tion on Roboti s,

20(4) :713723, August 2004.

C. Cheah, D. Wang.  Region rea hing ontrol of robots : Theory and experiments. 

IEEE International Conferen e on Roboti s and Automation (ICRA'05),

pp.

986992, Bar elona, Spain, May 2005. [Cheng 94℄

F. Cheng, W. Wang, , F. Kung.  Priority onsiderations for multiple goals of redundant manipulators. 

Cyberneti s, [Cheng 02℄

IEEE International Conferen e on Systems, Man and

pp. 264269, San Antonio, USA, O tobre 1994.

P. Cheng, S. LaValle.  Resolution omplete rapidly-exploring random trees. 

IEEE International Conferen e on Roboti s and Automation (ICRA'02), Washinton DC, USA, Mai 2002.


Bibliographie

[Chesi 03â&#x201E;&#x201E;

237

G. Chesi, K. Hashimoto, D. Pratti hizzo, A. Vi ino.  A swit hing ontrol law

IEEE International Conferen e on Roboti s and Automation (ICRA'03), pp. 39293934, for keeping features in the eld of view in eye-in-hand visual servoing. 

Taipei, Taiwan, Septembre 2003. [Chiaverini 97â&#x201E;&#x201E;

S. Chiaverini.  Singularity-robust task-priority redundan y resolution for realtime kinemati ontrol of robot manipulators.

Automation, [Coelho 01â&#x201E;&#x201E;

IEEE Transa tion on Roboti s and

13(3) :398410, Juin 1997.

J. Coelho, J. Piater, R. Grupen.  Developing hapti and visual per eptual ategories for rea hing and grasping with a humanoid robot.

Systems, [Comport 06â&#x201E;&#x201E;

Roboti s and Autonomous

37(2-3) :195217, Novembre 2001.

A. Comport, E. Mar hand, F. Chaumette.  Statisti ally robust 2d visual servoing.

IEEE Transa tion on Roboti s,

22(2), April 2006.

[Connell 92â&#x201E;&#x201E;

J. Connell.  Sss : a hybrid ar hite ture applied to robot navigation.  IEEE International Conferen e on Roboti s and Automation (ICRA'92), vol. 3, pp. 2719

[Corke 01â&#x201E;&#x201E;

P. Corke, S. Hut hinson. 

2724, Ni e, Fran e, Mai 1992.

servo ontrol.

A new partitioned approa h to image-based visual

IEEE Transa tion on Roboti s and Automation,

17(4) :507515,

AoĂťt 2001. [Cowan 00â&#x201E;&#x201E;

N. Cowan, G. Lopes, D. Kodits hek.  Rigid body visual servoing using navigation fun tions. 

Conferen e on De ision and Control (CDC'00),

pp. 39203926,

Sydney, Australia, 2000. IEEE. [Cowan 02â&#x201E;&#x201E;

N. Cowan, J. Weingarten, D. Kodits hek.  Visual servoing via navigation fun tions.

[DeLu a 97â&#x201E;&#x201E;

IEEE Transa tion on Roboti s and Automation, 18(4) :521533, AoĂťt 2002.

A. De Lu a, G. Oriolo, C. Samson.  Feedba k ontrol of a nonholonomi ar-like robot.

Planning Robot Motion, ĂŠd. par J-P. Laumond, hap. 4. 

Springer-Verlag,

1997. [DeLu a 06â&#x201E;&#x201E;

A. De Lu a, G. Oriolo, P. Robuo-Giordano.  Kinemati modeling and redundan y resolution for nonholonomi mobile manipulators. 

Conferen e on Roboti s and Automation (ICRA'06),

IEEE International

pp. 18671873, Orlando,

USA, Mai 2006. [DeMathelin 99â&#x201E;&#x201E;

M. De Mathelin, R. Lozano. 

Robust adaptive identi ation of slowly time-

varying parameters with bounded disturban es. [Deo 92â&#x201E;&#x201E;

A. Deo, I. Walker.  Robot subtask performan e with singularity robustness using optimal damped least squares. 

Automation (ICRA'92), [Dodds 99â&#x201E;&#x201E;

IEEE International Conferen e on Roboti s and

pp. 434441, Ni e, Fran e, May 1992.

Z. Dodds, M. Jägersand, G. Hager, K. Toyama.  A hierar hi al vision ar hite ture for roboti manipulation tasks. 

Systems,

[Doty 93â&#x201E;&#x201E;

International Conferen e on Computer Vision

1999.

K. Doty, C. Mel hiorri, C. Bonivento.  A theory of generalized inverses applied to roboti s.

[Drumwright 06â&#x201E;&#x201E;

International J. Roboti s Resear h,

E. Drumwright, V. Ng-Thow-Hing. 

Roboti s and Automation (ICRA'06), M. Erdmann, T. Lozano-PĂŠrez. 

12(1) :119, 1993.

The task matrix : An extensible frame-

work for reating versatile humanoid robots. 

[Erdmann 87â&#x201E;&#x201E;

Automati a, 35 :12911305, 1999.

IEEE International Conferen e on

pp. 448455, Orlando, USA, Mai 2006.

On multiple moving obje ts.

Algorithmi a,

2(1) :477521, Mars 1987. [Espiau 92â&#x201E;&#x201E;

B. Espiau, F. Chaumette, P. Rives.  roboti s. 1992.

A new approa h to visual servoing in

IEEE Transa tion on Roboti s and Automation,

8(3) :313326, Juin


238

[Espiau 95℄

Bibliographie

B. Espiau, K. Kapellos, M. Jourdan.  Formal veri ation in roboti s : why and how. 

7th International Symposium of Roboti s Resear h,

pp. 201213, Muni h,

Germany, 1995. [Fang 02℄

Y. Fang, D. Dawson, W. Dixon, M. de Queiroz.  servoing of wheeled mobile robots. 

Control (CDC'02), [Fiorini 98℄

[Frai hard 99℄

International Journal of Roboti s Resear h,

R. Flet her. 

Pra ti al Methods of Optimization. 

17(7) :760772, 1998.

Chi hester, 2nd édition, 1987.

T. Frai hard.  Traje tory planning in a dynami workspa e : a `state-time spa e' approa h.

[Frezza 95℄

pp. 28662871, Las Vegas, USA, Dé embre 2002.

P. Fiorini, Z. Shiller.  Motion planning in dynami environments using velo ity obsta les.

[Flet her 87℄

Homography-based visual

41st IEEE Conferen e on De ision and

Advan ed Roboti s,

R. Frezza, G. Pi i. 

13(1) :7594, 1999.

On line path following by re ursive spline updating. 

34th IEEE Conferen e on De ision and Control (CDC'95),

pp. 40474052, New

Orleans, LA, USA, Dé embre 1995. [Gans 02℄

N. Gans, S. Hut hinson.  A swit hing approa h to visual servo ontrol.  IEEE International Symposium on Intelligent Control, pp. 770776, Houston, USA, O tobre 2002.

[Gans 03℄

N. R. Gans, S. A. Hut hinson.  approa hes to visual servoing. 

Automation (ICRA'03), [Gar iaAra il 05℄

An experimental study of hybrid swit hed

IEEE International Conferen e on Roboti s and

pp. 30613068, Taipei, Taiwan, Septembre 2003.

N. Gar ia-Ara il, E. Malis, R. Ara il-Santonja, C. Perez-Vidal.  Continuous visual servoing despite the hanges of visibility in image features.

on Roboti s, [Gat 91℄

E. Gat. 

IEEE Transa tion

21(6) :415421, April 2005.

Reliable goal-dire ted rea tive ontrol of autonomous mobile robots.



Bla ksburg, USA, PhD. Thesis, 1991. [Gienger 05℄

M. Gienger, H. Janssen, C. Goeri k.  humanoid robots. 

(Humanoids'05),

[Gravot 06℄

Task-oriented whole body motion for

IEEE/RAS International Conferen e on Humanoid Roboti s

pp. 238244, Tsukuba, Japan, Dé embre 2005.

F. Gravot, A. Haneda, K. Okada, M. Inaba.  Cooking for humanoid robot, a task that needs symboli and geometri reasonings. 

on Roboti s and Automation (ICRA'06), [Guldner 95℄

J. Guldner, V. Utkin. 

Sliding mode ontrol for gradient tra king and robot

navigationusing arti ial potential elds.

tomation, [Hager 98℄

IEEE International Conferen e

pp. 462467, Orlando, USA, Mai 2006.

IEEE Transa tion on Roboti s and Au-

11(2) :247254, Avril 1995.

G. Hager, D. Kriegman, A. Georghiades, O. Ben-Shahar.  independent navigation : dynami vision and ontrol. 

De ision and Control (CDC'98), [Hager 02℄

G. Hager. 

Toward domain-

37th IEEE Conferen e on

pp. 32573262, Tampa, USA, Dé embre 1998.

Human-ma hine ooperative manipulation with vision-based mo-

Workshop on visual servoing, IEEE/RSJ International Conferen e on Intelligent Robots and Systems (IROS'02), Lausane, Switzerland, O tion onstraints. 

tobre 2002. [Hanafusa 81℄

H. Hanafusa, T. Yoshikawa, Y. Nakamura.  Analysis and ontrol of arti ulated robot with redundan y. 

IFAC, 8th Triennal World Congress,

vol. 4, pp. 1927

1932, Kyoto, Japan, 1981. [Hartley 91℄

IEEE International Conferen e on Roboti s and Automation (ICRA'91), pp. 16521658,

R. Hartley, F. Pipitone.  Experiments with the subsumption ar hite ture.  Sa ramento, USA, Avril 1991.


Bibliographie

[Hashimoto 97℄

239 K. Hashimoto, T. Noritsugu.  Visual servoing of nonholonomi art.  IEEE International Conferen e on Roboti s and Automation (ICRA'97), pp. 17191724, Albuquerque, NM, USA, Avril 1997.

[Heinzinger 90℄

G. Heinzinger, P. Ja obs, J. Canny, B. Paden. 

Time-optimal traje tories for

a robot manipulator : a provably good approximation algorithm. 

national Conferen e on Roboti s and Automation (ICRA'90),

IEEE Inter-

pp. 150156, Mai

1990. [Hespanha 99℄

J. Hespanha, A. Morse.  based swit hing.

[Hettli h 98℄

Stabilization of nonholonomi integrators via logi -

Automati a,

35(3) :385393, 1999.

F. Hettli h, W. Rundell.  A se ond degree method for nonlinear inverse problems.

SIAM Journal on Numeri al Analysis, [Hosoda 94℄

[Hu 62℄

[Hut hinson 96℄

[Hwang 98℄

37(2) :587620, Novembre 1998.

K. Hosoda, M. Asada.  Versatile visual servoing without knowledge of true ja obian.  IEEE/RSJ International Conferen e on Intelligent Robots and Systems (IROS'94), pp. 186193, Mun hen, Germany, Septembre 1994. M. Hu.  Visual pattern re ognition by moment invariants. IRE Transa tion on Information Theory, 8 :179187, 1962. S. Hut hinson, G. Hager, P. Corke.  A tutorial on visual servo ontrol.

Transa tion on Roboti s and Automation, D. Hwang, B. Hannaford.  redundant slave robot.

IEEE

12(5) :651670, O tobre 1996.

Teleoperation performan e with a kinemati ally

International Journal of Roboti s Resear h,

17 :579597,

Juin 1998. [Jagersand 96℄

M. Jagersand, R. Nelson.  On-line estimation of visual-motor models using a tive

[Kajita 03a℄

S. Kajita, F. Kanehiro, K. Kaneko, K. Fujiwara, K. Harada, K. Yokoi, H. Hi-

vision. 

ARPA Image Understanding Workshop,

rukawa. 

Biped walking pattern generation by using preview ontrol of zero-

moment point. 

(ICRA'03), [Kajita 03b℄

pp. 677682, 1996.

IEEE International Conferen e on Roboti s and Automation

pp. 16201626, Septembre 2003.

S. Kajita, F. Kanehiro, K. Kaneko, K. Fujiwara, K. Harada, K. Yokoi, H. Hirukawa.  Resolved momentum ontrol : Humanoid motion planning based on the

linear and angular momentum.  IEEE/RSJ International Conferen e on Intelligent Robots and Systems (IROS'03), pp. 16441650, Las Vegas, USA, O tobre

2003. [Kaneko 94℄

K. Kaneko, K. Komoriya, K. Ohnishi, K. Tanie.  Manipulator ontrol based on a disturban e observer in the operational spa e. 

on Roboti s and Automation (ICRA'94),

IEEE International Conferen e

pp. 902909, Mai 1994.

IEEE International Conferen e on Roboti s and Automation (ICRA'04), pp. 10831090,

[Kaneko 04℄

K. Kaneko, F Kanehiro, S. Kajita, H. Hirukawa.  Humanoid robot hrp-2. 

[Kant 86℄

K. Kant, S. Zu ker. 

New Orlean, USA, Avril 2004.

de omposition. [Kavraki 96℄

Toward e ient traje tory planning : the path-velo ity

International Journal of Roboti s Resear h,

5(3) :7289, 1986.

L. Kavraki, M. Kolountzakis, J-C. Latombe.  Analysis of probabilisti roadmaps for path planning.

IEEE Transa tion on Roboti s and Automation, 4 :30203025,

1996. [Kelmar 90℄

L. Kelmar, P. Khosla.  Automati generation of forward and inverse kinemati s of a re ongurable modular manipulator system.

Journal of Roboti Systems, pp.

599620, August 1990. [Khatib 86℄

O. Khatib.  Real-time obsta le avoidan e for manipulators and mobile robots.

International Journal of Roboti s Resear h,

5(1) :9098, Spring 1986.


240

[Khatib 87â&#x201E;&#x201E;

Bibliographie

O. Khatib. 

A unied approa h for motion and for e ontrol of robot mani-

pulators : The operational spa e formulation.

Resear h, [Khatib 95â&#x201E;&#x201E;

International Journal of Roboti s

3(1) :4353, 1987.

M. Khatib, R. Chatila.  An extended potentiel eld approa h for mobile robot sensor-based motions. 

Intelligent Autonomous Systems (IAS'4),

pp. 490496,

Karlsruhe, Germany, Mars 1995. [Khatib 97â&#x201E;&#x201E;

M. Khatib, H. Jaouni, R. Chatila, J-P. Laumond.  Dynami path modi ation for ar-like nonholonomi mobile robots. 

Roboti s and Automation (ICRA'97),

IEEE International Conferen e on

pp. 29202925, Albuquerque, USA, Avril

1997. [Klein 90â&#x201E;&#x201E;

C. Klein, S. Kittivat harapong. 

Optimal for e distribution for the legs of a

walking ma hine with fri tion one onstraints.

and Automation, [Klein 91â&#x201E;&#x201E;

P. Klein.  The safety bag expert system in the ele troni railway interlo king system elektra.

[Kodits hek 87â&#x201E;&#x201E;

Expert systems with appli ations,

D.E. Kodits hek. 

Automation, ICRA'87,

(ICRA'02),

International Conferen e on Roboti s and

pp. 16, Raleigh, NC, 1987.

S. Koenig, M. Likha hev.  unknown terrain. 

pp. 499560, 1991.

Exa t robot navigation by means of potential fun tions :

Some topologi al onsiderations. 

[Koenig 02â&#x201E;&#x201E;

IEEE Transa tion on Roboti s

6(1) :7385, Fevrier 1990.

Improved fast replanning for robot navigation in

IEEE International Conferen e on Roboti s and Automation

pp. 968975, Washinton DC, USA, Mai 2002.

[Kolmanovsky 95aâ&#x201E;&#x201E; I. Kolmanovsky, N. M Clamro h.  Developments in nonholonomi ontrol problems.

IEEE Control Systems Magazine,

15(6) :2036, DĂŠ embre 1995.

[Kolmanovsky 95bâ&#x201E;&#x201E; I. Kolmanovsky, N. M Clamro h.  Stabilization of nonholonomi haplygin systems with linear basespa e dynami s. 

Control (CDC'95), [Kuner 03â&#x201E;&#x201E;

J. Kuner, K. Nishiwaki, S. Kagami, M. Inaba, H. Inoue.  for humanoids robots. 

(ISRR'03), [Lamiraux 04aâ&#x201E;&#x201E;

34th IEEE Conferen e on De ision and

pp. 2732, New Orleans, USA, DĂŠ embre 1995. Motion planning

11th International Symposium of Roboti s Resear h

Siena, Italy, O tobre 2003.

F. Lamiraux. 

Algorithmique et ommande du mouvement en robotique.

 Tou-

louse, Habilitations Ă diriger des re her hes, Institut National Polyte hnique, DĂŠ embre 2004. [Lamiraux 04bâ&#x201E;&#x201E;

F. Lamiraux, D. Bonnafous, O. Lefebvre.  Rea tive path deformation for nonholonomi mobile robots.

IEEE Transa tion on Roboti s, 7(20) :967977, DĂŠ embre

2004. [LaprestĂŠ 04â&#x201E;&#x201E;

J. LaprestĂŠ, F. Jurie, M. Dhome, F. Chaumette.  An e ient method to ompute the inverse ja obian matrix in visual servoing. 

on Roboti s and Automation (ICRA'04), [Latombe 91â&#x201E;&#x201E; [Laumond 87â&#x201E;&#x201E;

[Laumond 94â&#x201E;&#x201E;

J-C. Latombe. 

Robot Motion Planning.

IEEE International Conferen e

2004.  Kluwer A ademi Publishers, 1991.

J-P. Laumond.  Obsta le growing in a nonpolygonal world.

sing Letters,

Information Pro es-

25(1) :4150, 1987.

J-P. Laumond, P. Ja obs, M. Taix, R. Murray.  A motion planner for nonholonomi mobile robots.

IEEE Transa tion on Roboti s and Automation, 10(5) :577

593, O tobre 1994. [LaValle 99â&#x201E;&#x201E;

S. LaValle, J. Kuner.  Randomized kinodynami planning.

on Roboti s and Automation,

1 :473479, 1999.

IEEE Transa tion


Bibliographie

[Lemai 04℄

241

S. Lemai, F. Ingrand.  Interleaving temporal planning and exe ution in roboti s domains. 

19th National Conferen e on Arti ial Intelligen e (AAAI'04),

San

Jose, USA, 2004. [Lerman 06℄

K. Lerman, C. Jones, A. Galstyan, M. Matari¢.  allo ation in multi-robot systems.

Analysis of dynami task

Int Journal of Roboti s Resear h,

25(3) :225

242, mar h 2006. [Liberzon 99℄

D. Liberzon, A. Morse.  systems.

[Liegeois 77℄

Basi problems in stability and design of swit hed

IEEE Control Systems Magazine,

19(5) :5970, O tobre 1999.

A. Liegeois.  Automati supervisory ontrol of the onguration and behavior of multibody me hanisms.

IEEE Transa tion on Systems, Man and Cyberneti s,

7(12) :868871, dé embre 1977. [Lizárraga 98℄

D. Lizárraga, P. Morin, C. Samson.  on-robustness of ontinuous homogeneous stabilizers for ane ontrol systems. 

Control (CDC'99), [Lizárraga 05℄

38th IEEE Conferen e on De ision and

p. 855860, Phoenix, USA, Dé embre 1998.

D. Lizárraga, J. Sosa. 

Verti ally transverse fun tions as an extension of the

44th IEEE Conferen e on De ision and Control and European Control Conferen e (CDC-ECC'05), p.

transverse fun tion approa h for se ond-order systems.  72907295, Seville, Spain, Dé embre 2005. [Lopes 04℄

M. Lopes, R. Beira, M. Praça, J. Santos-Vi tor.  An anthropomorphi robot torso

IEEE/RSJ International Conferen e on Intelligent Robots and Systems (IROS'04), Sendai, Japan, 2004. for imitation : design and experiments. 

[Lopes 05a℄

M. Lopes, A. Bernardino, J. Santos-Vi tor.  A developmental roadmap for task learning by imitation in humanoid robots.  Y. Demiris (édité par),

International Symposium on Imitation in Animals and Artifa ts,

AISB - Third

Hateld, Uk,

April 2005. [Lopes 05b℄

M. Lopes, J. Santos-Vi tor.  Visual learning by imitation with motor representations.

IEEE Transa tions on Systems, Man and Cyberneti s,

35(3) :438449,

Juin 2005. [LozanoPerez 79℄

T. Lozano-Perez, M. Wesley.  among polyhedral obsta les.

[Ma 99℄

Y Ma, J. Kose ka, S. Sastry.  mobile robot.

An algorithm for planning ollision-free paths

Communi ations of the ACM, 22(10) :560570, 1979. Vision guided navigation for a nonholonomi

IEEE Transa tion on Roboti s and Automation,

15(3) :521536,

Juin 1999. [Malis 99℄

E. Malis, F. Chaumette, S. Boudet.  2 1/2 D visual servoing.

on Roboti s and Automation, [Malis 04a℄

E. Malis.  Improving vision-based ontrol using e ient se ond-order minimization te hniques. 

(ICRA'04), [Malis 04b℄

IEEE International Conferen e on Roboti s and Automation

New Orleans, USA, Avril 2004.

E. Malis.  Visual servoing invariant to hanges in amera intrinsi parameters.

IEEE Transa tion on Roboti s and Automation, [Mar hand 98℄

IEEE Transa tion

15(2) :238250, Avril 1999.

E.

Mar hand, G.

Hager. 

Dynami

20(1) :7281, Fevrier 2004.

sensor

planning

in

visual servoing.

IEEE/RSJ International Conferen e on Intelligent Robots and Systems (IROS'98), vol. 3, pp. 19881993, Leuven, Belgium, Mai 1998. 

[Mar hand 01℄

E. Mar hand, F. Chaumette, F. Spindler, M. Perrier.  trumented rov manipulator by visual servoing. 

Conferen e,

[Matari 99℄

vol. 2, pp. 10471053, Honolulu, Hawaii, November 2001.

M. Matari , V. Zordan, M. Williamson.  dan e.

Controlling an unins-

MTS/IEEE OCEANS 2001

Making omplex arti ulated agents

Autonomous Agents and Multi-Agent Systems,

2(1) :2343, 1999.


242

[Maya 06â&#x201E;&#x201E;

Bibliographie

Sensor-based ontrol of nonholonomi mobile

M. Maya, P. Morin, C. Samson. 

robots.



Rapport de Re her he n RR-5944, Sophia Antipolis, Fran e, INRIA,

Juillet 2006. [Mazer 98â&#x201E;&#x201E;

[M Clamro h 00â&#x201E;&#x201E;

E. Mazer, J-M. Ahua tzin, P. Bessiere.  The ariadne's lew algorithm.

of Arti ial Intelligen e Resear h,

Journal

9 :295316, 1998.

N. M Clamro h, I. Kolmanobsky.  Performan e benets of hybrid ontrol design for linear andnonlinear systems.

Pro eedings of the IEEE, 88(7) :10831096, Juillet

2000. [M'Closkey 97â&#x201E;&#x201E;

R. M'Closkey, R. Murray.  Exponential stabilization of driftless nonlinear ontrol

IEEE Transa tion on Automati Control,

systemsusing homogeneous feedba k. 42(5) :614628, Mai 1997. [Medeiros 97â&#x201E;&#x201E;

A. Medeiros.  Contrle d'exĂŠ ution pour des robots mobiles autonomes : ar hite ture, spĂŠ i ation et validation.  Toulouse, Fran e, PhD. Thesis, UniversitĂŠ Paul Sabatier, Fevrier 1997.

[Mezouar 02â&#x201E;&#x201E;

Y. Mezouar, F. Chaumette.  Path planning for robust image-based ontrol.

Transa tion on Roboti s and Automation, [Mi hel 05â&#x201E;&#x201E;

IEEE

18(4) :534549, AoĂťt 2002.

P. Mi hel, J. Chestnutt, J. Kuner, T. Kanade.  Vision-guided humanoid footstep

IEEE/RAS International Conferen e on Humanoid Roboti s (Humanoids'05), pp. 1318, Tsukuba, Japan, DĂŠ embre 2005. H. Morave , A. Elfes.  High resolution maps from wide angle sonar.  IEEE International Conferen e on Roboti s and Automation (ICRA'85), vol. 2, pp. 116 planning for dynami environments. 

[Morave 85â&#x201E;&#x201E;

121, St. Louis, USA, Mars 1985. [Morin 03â&#x201E;&#x201E;

P. Morin, C. Samson.  Pra ti al stabilization of driftless systems on lie groups : the transverse fun tion approa h.

IEEE Transa tion on Automati Control,

48(9) :14961508, Septembre 2003. [Motyl 92â&#x201E;&#x201E;

G. Motyl. 

ĂŠe vision.

Couplage d'une amĂŠra et d'un fais eau laser en ommande rĂŠfĂŠren-

 Clermont-Ferrand, Fran e, PhD. Thesis, UniversitĂŠ Blaise Pas al,

Septembre 1992. [Murray 93â&#x201E;&#x201E;

[Mus ettola 02â&#x201E;&#x201E;

R. Murray.  Control of nonholonomi systems using hained forms.

titute Communi ations,

N. Mus ettola, A. Dorais, C. Fry, R. Levinson, C. Plaunt.  Idea : Planning at the ore of autonomous rea tive agents. 

and S heduling for Spa e, [Nakamura 86â&#x201E;&#x201E;

International NASA Workshop on Planning

2002.

Y. Nakamura, H. Hanafusa.  Inverse kinemati s solutions with singularity robustness for robot manipulator ontrol.

System, Measures and Control, [Nelson 95â&#x201E;&#x201E;

Transa tion ASME Journal of Dynami

108 :163171, 1986.

B. Nelson, P. Khosla.  Strategies for in reasing the tra king region of an eye-inhand system by singularity and joint limits avoidan e.

Roboti s Resear h, [Nesnas 06â&#x201E;&#x201E;

International Journal of

14(3) :255269, juin 1995.

I. Nesnas, R. Simmons, D. Gaines, C. Kunz, A. Diaz.  Claraty : Challenges and steps toward reusable roboti software.

Systems, [Nishiwaki 04â&#x201E;&#x201E;

Fields Ins-

pp. 219245, 1993.

International Journal of Advan ed Roboti

3(1), 2006.

K. Nishiwaki, M. Kuga, S. Kagami, M. Inaba, H. Inoue.  Whole-body ooperative balan ed motion generation for rea hing.  2004 4th IEEE/RAS International Conferen e on Humanoid Robots, pp. 672689, Los Angeles, USA, Novembre 2004.

[Pagès 06â&#x201E;&#x201E;

J. Pagès, C. Collewet, F. Chaumette, J. Salvi.  Optimizing plane-to-plane positioning tasks by image-based visual servoing and stru tured light.

on Roboti s,

2006.

IEEE Transa tion


Bibliographie

[Peterson 03℄

243

L. Peterson, D. Austin, D. Kragi .  High-level ontrol of a mobile manipulator

IEEE International Conferen e on Roboti s and Automation

for door opening. 

(ICRA'03), [Piepmeier 99℄

pp. 23332338, Taipei, Taiwan, Septembre 2003.

J. Piepmeier, G. M Murray, H. Lipkin.  A dynami quasi-newton method for

IEEE International Conferen e on Roboti s and

un alibrated visual servoing. 

Automation (ICRA'99), [Piepmeier 02℄

1999.

J. Piepmeier, B. Gumpert, H. Lipkin.  Un alibrated eye-in-hand visual servoing. 

IEEE International Conferen e on Roboti s and Automation (ICRA'02),

[PissardGibolet 96℄ R. Pissard-Gibolet, P. Rives.  a mobile hand-eye system. 

Automation (ICRA'96), [Podsedkowski 98℄

Applying visual servoing te hniques to ontrol

IEEE International Conferen e on Roboti s and

pp. 166171, Minneapolis, USA, Mai 1996.

L. Podsedkowski.  Path planner for nonholonomi mobile robot with fast replanning pro edure. 

(ICRA'98), [Pomet 92℄

2002.

IEEE International Conferen e on Roboti s and Automation

vol. 4, pp. 35883593, Leuven, Belgium, Mai 1998.

J.-B. Pomet.  Expli it design of time-varying stabilizing ontrol laws for a lass of ontrollable systems without drift.

Systems and Control Letters,

18 :147158,

Mai 1992. [Py 04℄

F. Py, F. Ingrand. 

Dependable exe ution ontrol for autonomous robots.

IEEE/RSJ International Conferen e on Intelligent Robots and Systems (IROS'04), pp. 11361141, Sendai, Japan, Septembre 2004. 

[Quinlan 93℄

S. Quinlan, O. Khatib.  bot ontrol. 

(ICRA'93), [Quinlan 97℄

[Remazeilles 06a℄

Elasti bands : Conne ting path planning and ro-

IEEE International Conferen e on Roboti s and Automation

vol. 2, pp. 802807, Atlanta, USA, Mai 1993.

S. Quinlan, O. Khatib.  Elasti bands : Conne ting path planning and ontrol.

Journal of Roboti s and Autonomous Systems,

21 :802807, 1997.

A. Remazeilles, F. Chaumette, P. Gros.  3d navigation based on a visual memory. 

IEEE International Conferen e on Roboti s and Automation (ICRA'06),

pp.

27192725, Orlando, Florida, May 2006. [Remazeilles 06b℄

A. Remazeilles, N. Mansard, F. Chaumette.  Qualitative visual servoing : ap-

IEEE/RSJ International Conferen e on Intelligent Robots and Systems (IROS'06), 2006. pli ation to the visibility onstraint. 

[Rimon 92℄

E. Rimon, D. Kodit hek.  Exa t robot navigation using arti ial potential fun tions.

[Rosen 60℄

IEEE Transa tion on Roboti s and Automation,

J. Rosen. 

8(5) :501518, 1992.

The gradient proje tion method for nonlinear programmimg, part

i, linear onstraints.

SIAM Journal of Applied Mathemati s,

8(1) :181217, Mars

1960. [Rosen 61℄

J. Rosen. 

The gradient proje tion method for nonlinear programmimg, part

ii, nonlinear onstraints.

SIAM Journal of Applied Mathemati s,

9(4) :514532,

Dé embre 1961. [Samson 91℄

C. Samson, M. Le Borgne, B. Espiau. 

proa h. [Samson 93℄

Robot Control : the Task Fun tion Ap-

 Clarendon Press, Oxford, United Kingdom, 1991.

C. Samson. 

Time-varying feedba k stabilization of ar-like wheeled mobile

International Journal of Roboti s Resear h, 12(1) :5564, Fevrier 1993. O. S hmitt.  A thermioni trigger. Journal of S ienti Instruments, (15) :2426,

robots. [S hmitt 38℄

1938. [Sentis 05a℄

L. Sentis, O. Khatib.  prioritization. 

(ICRA'05),

Control of free-oating humanoid robots through task

IEEE International Conferen e on Roboti s and Automation

pp. 17181723, Bar elona, Spain, Avril 2005.


244

[Sentis 05b℄

Bibliographie

L. Sentis, O. Khatib.  Synthesis of whole-body behaviors through hierar hi al ontrol of behavioral primitives.

International Journal of Humanoid Roboti s,

2(4) :505518, O tobre 2005. [Sentis 06℄

L. Sentis, O. Khatib.  A whole-body ontrol framework for humanoids operating in human environments. 

Automation (ICRA'06), [Sian 05℄

IEEE International Conferen e on Roboti s and

pp. 26412648, Orlando, USA, Mai 2006.

N. Sian, K. Yokoi, S. Kajita, F. Kanehiro, K Tanie.  A swit hing ommand-based whole-body operation method for humanoid robots.

on Me hatroni s, [Si iliano 91℄

B. Si iliano, J-J. Slotine.  A general framework for managing multiple tasks in highly redundant roboti systems. 

Roboti s (ICAR'91), [Simmons 94℄

[Soueres 03℄

IEEE International Conferen e on Advan ed

pp. 12111216, Pisa, Italy, Juin 1991.

R. Simmons.  Stru tured ontrol for autonomous robots.

Roboti s and Automation,

IEEE Transa tion on

10(1) :31 43, Fevrier 1994.

P. Soueres, V. Cadenat, M. Djeddou.  Dynami al sequen e of multi-sensor based tasks for mobile robots navigation. 

CO'03),

[Spindler 03℄

IEEE/ASME Transa tions

10(5) :546559, O tobre 2005.

F.

7th Symposium on Robot Control (SYRO-

pp. 423428, Wro law, Poland, Septembre 2003.

Spindler.



Robot

vision

platforms

of

the

lagadi

proje t.



http ://www.irisa.fr/lagadi /material/material-eng.html, 2003. [Stentz 94℄

International Conferen e on Arti ial Intelligen e, pp. 16521659, Montréal, Canada, Août

A. Stentz.  The fo ussed d* algorithm for real-time replanning.  1994.

[Stroupe 05℄

A. Stroupe, A. Okon, M. Robinson, T. Huntsberger, H. Aghazarian, E. Baumgartner.  Behavior-based multi-robot ollaboration for autonomous onstru tion tasks.

[Sugihara 02℄

Autonomous Robots,

2005.  To appear.

T. Sugihara, Y. Nakamura. 

Whole-body ooperative balan ing of humanoid

IEEE/RSJ International Conferen e on Intelligent Robots and Systems (IROS'02), pp. 25752580, Lausanne, Switzerland, O tobre

robot using og ja obian.  2002. [Tahri 05℄

O. Tahri, F. Chaumette. 

Point-based and region-based image moments for

visual servoing of planar obje ts.

IEEE Transa tion on Roboti s,

21(6) :1116

1127, Dé embre 2005. [Taylor 01℄

G. Taylor, L. Kleeman.  Flexible self- alibrated visual servoing for a humanoid robot. 

Australian Conferen e on Roboti s and Automation (ACRA'01),

pp.

7984, Sydney, Australia, Novembre 2001. [Thrun 02℄

[Tsakiris 97℄

S. Thrun.  Roboti mapping : A survey.

New Millenium,

Exploring Arti ial Intelligen e in the

éd. par G. Lakemeyer, B. Nebel.  Morgan Kaufmann, 2002.

D. Tsakiris, P. Rives, C. Samson.  Applying visual servoing te hniques to ontrol nonholonomi mobile robots.  IEEE/RSJ International Conferen e on Intelligent Robots and Systems (IROS'97), Grenoble, Fran e, Septembre 1997.

[Vasquez 05℄

D. Vasquez, T. Frai hard, O. Ay ard, C. Laugier.  Intentional motion on-line learning and predi tion.

International Journal of Roboti s Resear h,

Submitted

in 2005. [Verrelst 06℄

B. Verrelst, K. Yokoi, O. Stasse, H. Arisumi, B. Vanderborght.  humanoids robots : Stepping over large obsta les dynami ally. 

Conferen e on Me hatroni s and Automation, ICMA, China, Juin 2006.

Mobility of

International

pp. 10721079, Luo Yang,


Bibliographie

[Volpe 01℄

245

R. Volpe, I. Nesnas, T. Estlin, D. Mutz, R. Petras, H. Das.  The laraty ar hite ture for roboti autonomy. 

IEEE Aerospa e Conferen e,

pp. 121132, Big

Sky, USA, O tobre 2001. [Vukobratovi 69℄

M. Vukobratovi , D. Juri i .  Contribution to the synthesis of biped gait.

transa tions on bio-medi al engineering, [Whitney 72℄

D. Whitney.  The mathemati s of oordinated ontrol of prostheti arms and manipulators.

Control,

[Xu 03℄

Transa tion ASME Journal of Dynami System, Measures and

94 :303309, 1972.

F. Xu, H. Van, M. Brussel, Nuttin, R. Moreas.  Con epts for dynami obsta le avoidan e and their extended appli ation in under ground navigation.

and Autonomous Systems, [Yamamura 04℄

Roboti s

42 :115, 2003.

K. Yamamura, N. Maru.  Positioning ontrol of the leg of the humanoid robot by linear visual servoing. 

Roboti s (Humanoids'04),

[Yoshida 05℄

IEEE

16(1) :16, Janvier 1969.

IEEE/RAS International Conferen e on Humanoid

pp. 112, Los Angeles, USA., Novembre 2004.

E. Yoshida.  Humanoid motion planning using multi-level dof exploitation based

IEEE/RSJ International Conferen e on Intelligent Robots and Systems (IROS'05), pp. 33783383, Edmonton, Canada, Août 2005.

on randomized method. 

[Zhu 91℄

D. Zhu, J-C. Latombe.  New heuristi algorithms for e ient hierar hi al path planning.

IEEE Transa tion on Roboti s and Automation,

7(1) :920, 1991.


246

Bibliographie


Publi ations

Journaux

1

[1℄

N. Mansard and F. Chaumette.

Roboti s (to appear), [2℄

N. Mansard and F. Chaumette. Dire tional redundan y.

on Automati Control, [3℄

Task sequen ing for sensor-based ontrol.

IEEE Trans. on

2007.

Conditionally a epted in IEEE Trans.

2006.

N. Mansard, A. Remazeilles, and F. Chaumette. Continuity of varying-feature-set ontrol laws.

Prepared for IEEE Trans. on Automati Control,

2006.

Conféren es internationales [4℄

N. Mansard and F. Chaumette. Tasks sequen ing for visual servoing. In

on Intelligent Robots and Systems, IROS'04, [5℄

N. Mansard, M. Lopes, J. Santos-Vi tor, and F. Chaumette. tasks sequen ing in visual servoing. In

IROS'06, [6℄

IEEE/RSJ Int. Conf.

pages 992997, Sendai, Japan, September 2004. Ja obian learning methods for

IEEE/RSJ Int. Conf. on Intelligent Robots and Systems,

Beijing, China, September 2006.

N. Mansard and F. Chaumette. A new redundan y formalism for avoidan e in visual servoing. In

IEEE/RSJ Int. Conf. on Intelligent Robots and Systems, IROS'05, volume 2, pages 16941700, Edmonton, Canada, August 2005.

[7℄

N. Mansard and F. Chaumette. Dire tional redundan y : a new approa h of the redundan y formalism. In

2005, [8℄

IEEE Conf. on De ision and Control and European Control Conferen e, CDC/ECC

pages 53665371, Sevilla, Spain, De ember 2005.

A. Remazeilles, N. Mansard, and F. Chaumette. visibility. In

A qualitative visual servoing to ensure the

IEEE/RSJ Int. Conf. on Intelligent Robots and Systems, IROS'06, Beijing, China,

September 2006. [9℄

N. Mansard and F. Chaumette. Visual servoing sequen ing able to avoid obsta les. In

Int. Conf. on Roboti s and Automation, ICRA'05,

IEEE

pages 31543159, Bar elona, Spain, April

2005.

1

Les prin ipales publi ations orrespondent aux hapitres- lef de la thèse. Ainsi, l'essentiel du hapitre 3 a été présenté dans [4℄. L'extension de la pile aux robots mal alibrés dé rite dans la se onde partie du hapitre 3 a ensuite été présentée dans [5℄. La hapitre 4 orrespond aux ommuni ations [6℄ et [7℄, et a été onditionnellement a epté dans [2℄. Un résumé des travaux du hapitre 5 a été présenté dans [8℄. Le hapitre 6 fait l'objet d'une publi ation qui sera soumise avant la n de l'année 2006 [3℄. Le hapitre 7 a été soumis en version préliminaire dans [9℄ puis en version omplète dans [1℄. Enn, le hapitre 9 a été soumis dans [10℄.


248

[10℄

Bibliographie

N. Mansard, O. Stasse, F. Chaumette, and K. Yokoi. Visual-guided grasping while walking for a humanoid robot. In

[11℄

Submitted to IEEE Int. Conf. on Roboti s and Automation, ICRA'07.

N. Mansard, O. Ay ard, and C. Koike. Hierar hy of behaviours. In

and Biomimeti s, ROBIO'05,

IEEE Int. Conf. on Roboti s

pages 583588, Hong-Kong, China, July 2005.

Conféren es nationales [12℄

N. Mansard and F. Chaumette. En haînement de tâ hes en asservissement visuel : appli ation à l'évitement des butées arti ulaires. In

ORASIS'2005,

[13℄

Congrès jeunes her heurs en Vision par ordinateur,

Clermont-Ferrand, Fran e, May 2005.

S. Argentieri, P. Barone, V. Cadenat, S. Celebrini, F. Chaumette, P. Chiron, P. Danès, D. Folio, J. Y. Fourquet, B. Gao, N. Mansard, V. Padois, P. Soueres, M. Taïx, and Y. Trotter. En haînement de tâ hes pour l'exe ution de mouvement omplexe en robotique mobile (rapport d'avan ement du projet robea ego entre).

ROBEA,

In

pages 135142, Paris (Fran e), April 2006.

Journées du Programme Interdis iplinaire


En haÎnement de tâ hes robotiques Le point de dÊpart des travaux prÊsentÊs dans ette thèse est l'asservissement rÊfÊren Ê apteur, et plus prÊ isÊment l'asservissement visuel. Le robot est ontrlÊ en utilisant dire tement les informations transmises par les apteurs. L'asservissement rÊfÊren Ê apteur permet une très bonne onvergen e lo ale, mais onverge di ilement lorsque le dÊpla ement est grand ou la tâ he omplexe par rapport aux degrÊs de libertÊ disponibles et aux ontraintes à respe ter. Pour mettre en pratique de manière rÊa tive une telle appli ation, une solution pragmatique est elle de l'en haÎnement de tâ hes. La tâ he omplexe est divisÊe en plusieurs obje tifs plus simples à rÊaliser, qui sont a omplis tour à tour. Les solutions retenues sont gÊnÊralement

ad-ho

et peu de

solutions gÊnÊrales d'en haÎnement de tâ hes peuvent aujourd'hui être dÊnies de manière rigoureuse. L'obje tif de nos travaux est de onstruire une mÊthode gÊnÊrale pour rÊaliser un en haÎnement de tâ hes robotiques rÊa tives permettant d'Êlargir le domaine d'appli ation de la ommande rÊfÊren Êe apteur. Ces travaux s'arti ulent autour de deux axes prin ipaux. Dans la première partie, nous onstruisons une stru ture de ontrle nommÊe

pile de tâ hes

assurant la rĂŠalisation par le robot

d'une tâ he omposÊe de plusieurs sous-tâ hes, et permettant un ontrle du robot à un plus haut niveau en sÊle tionnant ou en modiant pendant l'asservissement les sous-tâ hes de la pile. Dans la se onde partie, nous utilisons les fon tionnalitÊs de la pile de tâ hes pour onstruire une stru ture de ontrle de plus haut niveau rÊalisant automatiquement l'en haÎnement des tâ hes. Ce i permet d'a omplir la tâ he globale et d'assurer en même temps le respe t des ontraintes. Cette mÊthode gÊnÊrique est ensuite appliquÊe à diÊrents types de robot : robot industriel, bras manipulateur, robots non-holonomes et robot humanoïde.

Mots- lefs : Robotique, Asservissement rĂŠfĂŠren ĂŠ apteur, Asservissement visuel, En haĂŽnement de tâ hes, Ă&#x2030;vitement d'obsta les, Redondan e

Task Sequen ing for Sensor-Based Control Basi ally, sensor-based ontrol te hniques onsist in using the data provided by one or several sensors in order to ontrol the motions of a dynami system. These te hniques are very e ient for numerous types of roboti problems, providing a urate positioning, good robustness to noise, stability, et . However, the stability is generally not ensured when the displa ement that the robot should realize is large. Moreover, the main point of the ontrol is the link between the robot and the tra ked sensor data. To integrate the servo into a real omplex roboti system, the ontrol should also make sure that it avoids undesirable ongurations su h as arti ular joint limits, obsta les or sensor o lusions. A pragmati solution to apply sensor-based ontrol in real ases is to realize a

ad-ho

sequen ing of

several simple tasks to a hieve a omplex goal. Su h a sequen e an be dened for realizing a spe i task in a well-known environment. However, very few solutions have been proposed to extend these solutions in a general manner. In this do ument, a general solution is proposed to realize a sensor-based task sequen ing, that enlarges the onvergen e domain in presen e of onstraints. The do ument is divided in two main parts. In the rst part, a ontrol stru ture named

Sta k of Task

is dened. This stru ture enables

the appli ation of several subtasks and onstraints simultaneously on the robot. It also provides some task-level ontrol fun tionalities. In the se ond part, these fun tionalities are used to build a tasklevel ontroller that realizes a omplex task while respe ting several onstraints. This generi solution has been applied for several types of robots, in luding industrial robot, low-weight arm manipulator, mobile robots and humanoid robot.

Keywords :

Roboti , Sensor-based ontrol, Visual servoing, Task sequen ing, Obsta le avoidan e,

Redundan y formalism

Enchaînement de tâches robotiques  

Enchaînement de tâches robotiques

Read more
Read more
Similar to
Popular now
Just for you