robotique mobile -...

253
Robotique mobile Robotique mobile Bernard BAYLE http://eavr.u-strasbg.fr/~bernard Télécom Physique Strasbourg 3A, option ISAV, master IRIV

Upload: hoangcong

Post on 10-Sep-2018

265 views

Category:

Documents


3 download

TRANSCRIPT

Robotique mobile

Robotique mobile

Bernard BAYLEhttp://eavr.u-strasbg.fr/~bernard

Télécom Physique Strasbourg 3A, option ISAV, master IRIV

Robotique mobile

Introduction

Quels robots mobiles ?

DéfinitionRobots mobiles = robots à base mobile, par opposition aux robotsmanipulateurs.

ClassificationLe plus souvent robots mobiles = robots à roues, sinon on précise le type delocomotion.

Robotique mobile

Introduction

Quels robots mobiles ?

DéfinitionRobots mobiles = robots à base mobile, par opposition aux robotsmanipulateurs.

Classification

Robots marcheurs

Robotique mobile

Introduction

Quels robots mobiles ?

DéfinitionRobots mobiles = robots à base mobile, par opposition aux robotsmanipulateurs.

Classification

Robots sous-marins

Robotique mobile

Introduction

Quels robots mobiles ?

DéfinitionRobots mobiles = robots à base mobile, par opposition aux robotsmanipulateurs.

Classification

Robots aériens

Robotique mobile

Introduction

Histoire des robots mobiles à roues

Historique

Shakey : le premier robot mobile (SRI, 1966-1972)http://www.sri.com/about/timeline/shakey.html

Robotique mobile

Introduction

Histoire des robots mobiles à roues

Historique

Shakey : le premier robot mobile (SRI, 1966-1972)http://www.sri.com/about/timeline/shakey.html

Robotique mobile

Introduction

Histoire des robots mobiles à roues

Historique

Hilare : le premier robot mobile français (Laas, 1977)http://www.laas.fr/ matthieu/robots/hilare

Robotique mobile

Introduction

Les robots mobiles à roues aujourd’hui

Où sont-ils, que font-ils ?Peu d’applications industrielles utilisent des robots mobiles.

Chariot filoguidé en milieu industriel (FMC Technologies)http://www.fmcsgvs.com/index.htm

Robotique mobile

Introduction

Les robots mobiles à roues aujourd’hui

Où sont-ils, que font-ils ?Peu d’applications grand public utilisent des robots mobiles.

Aspirateur automatique Roomba (iRobot)http://www.irobot.com/consumer

Robotique mobile

Introduction

Les robots mobiles à roues aujourd’hui

Où sont-ils, que font-ils ?Quelques applications de pointe.

Sojourner sur Marshttp://mars.jpl.nasa.gov/MPF/rover/sojourner.html

Robotique mobile

Introduction

Les robots mobiles à roues aujourd’hui

Où sont-ils, que font-ils ?Quelques applications de pointe.

Inspection de ruineshttp://crasar.csee.usf.edu

Robotique mobile

Introduction

Pourquoi étudier les robots à roues ?

Presque toujours. . .

Robots mobiles à roues : robots dédiés à la recherche.

Intérêt(s) :beaucoup de problèmes encore à résoudre pour atteindre unenavigation robuste dans des espaces non structurés, en particulier enintérieuraugmenter les connaissances en termes de localisation et de navigationde systèmes autonomesproblèmes soulevés par le plus simple des robots mobiles à roues =sujet d’étude à part entière et base pour l’étude de systèmes mobilesplus complexes

Robotique mobile

Introduction

Problématiques (1)

Problèmes en robotique mobile : aspects matériels

Choix :structure mécaniquemotorisation, alimentationarchitecture informatique du système de contrôle/commande

Choix classique

Choix de structure souvent effectué parmi un panel de solutions connues etpour lesquelles les problèmes de modélisation, planification et commandesont résolus.

Choix classique des actionneurs et de l’alimentation : moteurs électriques àcourant continu avec ou sans collecteur, alimentés par des convertisseurs depuissance fonctionnant sur batterie.

Robotique mobile

Introduction

Problématiques (2)

Problèmes en robotique mobile : aspect logiciel

Généralement :architectures de contrôle-commande des robots mobiles similaires àcelles des systèmes automatiques ou robotiques plus classiques dansl’ensemblenéanmoins deux niveaux de spécialisation, propres aux systèmesautonomes :

couche décisionnelle (planification et gestion des évènements)couche fonctionnelle (génération en temps-réel des commandes desactionneurs)

Robotique mobile

Introduction

Objectifs du cours

But du coursProblèmes spécifiques à la robotique mobile : outils pour faire évoluer lerobot dans son environnement (suivre un chemin connu, aller d’un point à unautre, réagir à la présence d’un obstacle, etc.).

MéthodeVue d’ensemble des problèmes liés à la modélisation, la perception et lanavigation des robots mobiles :

problématiquesétat de l’Art (bibliographie)problèmes ouverts

Robotique mobile

Introduction

Objectifs du cours

But du coursProblèmes spécifiques à la robotique mobile : outils pour faire évoluer lerobot dans son environnement (suivre un chemin connu, aller d’un point à unautre, réagir à la présence d’un obstacle, etc.).

Cadre de l’étudeLimitations :

robots mobiles à roues à châssis non articulé évoluant sur sol planproblèmes associés à la génération de mouvements autonomes :modélisation, perception, navigation

Robotique mobile

Introduction

Evaluation

EvaluationEtude et présentation d’articles de recherche.

Robotique mobile

Modélisation

Plan

1 Introduction

2 ModélisationDéfinitionsRoulement sans glissement et contraintes non holonômesLes grandes classes de robots mobiles et leurs modèlesReprésentation d’état et commandabilité

3 PerceptionCapteurs en robotique mobileLocalisationConstruction de carte

4 NavigationProblématiques et approchesPlanification de cheminExecution du mouvement

Robotique mobile

Modélisation

Définitions

Plan

1 Introduction

2 ModélisationDéfinitionsRoulement sans glissement et contraintes non holonômesLes grandes classes de robots mobiles et leurs modèlesReprésentation d’état et commandabilité

3 PerceptionCapteurs en robotique mobileLocalisationConstruction de carte

4 NavigationProblématiques et approchesPlanification de cheminExecution du mouvement

Robotique mobile

Modélisation

Définitions

Mise en place des repères

�x �

�y �

O�x

x

yO� θ

�y

R = (O, �x , �y , �z) : repère fixe quelconque, avec �z est vertical.R� = (O�, �x �, �y �, �z�) : repère mobile lié au robot.

Robotique mobile

Modélisation

Définitions

Vocabulaire (1)

DéfinitionPar analogie avec la manipulation, on appelle posture [Campion 96] du robotle vecteur :

ξ =

xyθ

,

où x et y sont respectivement l’abscisse et l’ordonnée du point O� dans R etθ l’angle (�x , �x �).

. . . définie sur un espace M de dimension m = 3, comparable à l’espaceopérationnel d’un manipulateur plan.

Robotique mobile

Modélisation

Définitions

Vocabulaire (2)

DéfinitionLa configuration du robot mobile est connue quand la position de tous sespoints dans un repère donné est connue.

Notion ambigüe pour les robots mobiles. Dans tous les cas :

q =

q1

q2

. . .qn

de n coordonnées appelées coordonnées généralisées.

. . . définie sur un espace N de dimension n, appelée l’espace desconfigurations.

Robotique mobile

Modélisation

Roulement sans glissement et contraintes non holonômes

Plan

1 Introduction

2 ModélisationDéfinitionsRoulement sans glissement et contraintes non holonômesLes grandes classes de robots mobiles et leurs modèlesReprésentation d’état et commandabilité

3 PerceptionCapteurs en robotique mobileLocalisationConstruction de carte

4 NavigationProblématiques et approchesPlanification de cheminExecution du mouvement

Robotique mobile

Modélisation

Roulement sans glissement et contraintes non holonômes

Roulement sans glissement (1)

Comment roule un robot ?Mouvement grâce à la friction au contact entre roue et sol : dans de bonnesconditions, il y a roulement sans glissement (r.s.g.) de la roue sur le sol.

Hypothèses :contact roue/sol ponctuelroues sont indéformables, de rayon r

En pratique :contact sur une surface : glissementsroues pleines indéformables, plus vrai avec des pneusimperfections considérées ssi elles affectent les performances(odométrie)

Robotique mobile

Modélisation

Roulement sans glissement et contraintes non holonômes

Roulement sans glissement (2)

�z

�y

�ω

�vP

xO

ϕ

P

Q

�x �

θ

�x

y

Nullité de la vitesse relative roue/sol

�vQ = �vP + �ω ∧−→PQ = �0

Nullité de la vitesse relative roue/sol

On a �vP + �ω ∧−→PQ = �0, soit :

x�x + y�y + (θ�z + ϕ(sin θ�x − cos θ�y)) ∧ (−r�z) = �0

(x + r ϕ cos θ)�x + (y + r ϕ sin θ)�y = �0

d’où :

x + r ϕ cos θ = 0y + r ϕ sin θ = 0

Plan de la roue et plan normal à la roue :

x cos θ + y sin θ = −r ϕ−x sin θ + y cos θ = 0

Nullité de la vitesse relative roue/sol

On a �vP + �ω ∧−→PQ = �0, soit :

x�x + y�y + (θ�z + ϕ(sin θ�x − cos θ�y)) ∧ (−r�z) = �0

(x + r ϕ cos θ)�x + (y + r ϕ sin θ)�y = �0

d’où :

x + r ϕ cos θ = 0y + r ϕ sin θ = 0

Plan de la roue et plan normal à la roue :

x cos θ + y sin θ = −r ϕ−x sin θ + y cos θ = 0

Nullité de la vitesse relative roue/sol

On a �vP + �ω ∧−→PQ = �0, soit :

x�x + y�y + (θ�z + ϕ(sin θ�x − cos θ�y)) ∧ (−r�z) = �0

(x + r ϕ cos θ)�x + (y + r ϕ sin θ)�y = �0

d’où :

x + r ϕ cos θ = 0y + r ϕ sin θ = 0

Plan de la roue et plan normal à la roue :

x cos θ + y sin θ = −r ϕ−x sin θ + y cos θ = 0

Nullité de la vitesse relative roue/sol

On a �vP + �ω ∧−→PQ = �0, soit :

x�x + y�y + (θ�z + ϕ(sin θ�x − cos θ�y)) ∧ (−r�z) = �0

(x + r ϕ cos θ)�x + (y + r ϕ sin θ)�y = �0

d’où :

x + r ϕ cos θ = 0y + r ϕ sin θ = 0

Plan de la roue et plan normal à la roue :

x cos θ + y sin θ = −r ϕ−x sin θ + y cos θ = 0

Nullité de la vitesse relative roue/sol

On a �vP + �ω ∧−→PQ = �0, soit :

x�x + y�y + (θ�z + ϕ(sin θ�x − cos θ�y)) ∧ (−r�z) = �0

(x + r ϕ cos θ)�x + (y + r ϕ sin θ)�y = �0

d’où :

x + r ϕ cos θ = 0y + r ϕ sin θ = 0

Plan de la roue et plan normal à la roue :

x cos θ + y sin θ = −r ϕ−x sin θ + y cos θ = 0

Robotique mobile

Modélisation

Roulement sans glissement et contraintes non holonômes

Contraintes non holonômes (1)

DéfinitionSoit un système de configuration q soumis à des contraintes indépendantessur les vitesses AT (q)q = 0.

S’il n’est pas possible d’intégrer l’une de ces contraintes, elle est dite nonintégrable ou non holonôme.

Contraintes non holonômes : certains mouvements instantanés interdits.

Robotique mobile

Modélisation

Roulement sans glissement et contraintes non holonômes

Contraintes non holonômes (2)

Théorème de FrobéniusSoit un système de configuration q, de dimension n, tq. AT (q)q = 0 et B(q)de rang plein m, orthogonale à A(q).

Soit l’algèbre de Lie Lie{b1(q) b2(q) . . .bm(q) . . .bp(q)}, de dimension p,avec m � p � n.

Alors, n − p contraintes sont intégrables.

Robotique mobile

Modélisation

Roulement sans glissement et contraintes non holonômes

Contraintes non holonômes (2)

Théorème de FrobéniusSoit un système de configuration q, de dimension n, tq. AT (q)q = 0 et B(q)de rang plein m, orthogonale à A(q).

Soit l’algèbre de Lie Lie{b1(q) b2(q) . . .bm(q) . . .bp(q)}, de dimension p,avec m � p � n.

Alors, n − p contraintes sont intégrables.

Crochet de LieCrochet de Lie de bi(q) et bj(q) :

[bi(q),bj(q)] =∂bj

∂qbi −

∂bi

∂qbj .

Robotique mobile

Modélisation

Roulement sans glissement et contraintes non holonômes

Contraintes non holonômes (2)

Théorème de FrobéniusSoit un système de configuration q, de dimension n, tq. AT (q)q = 0 et B(q)de rang plein m, orthogonale à A(q).

Soit l’algèbre de Lie Lie{b1(q) b2(q) . . .bm(q) . . .bp(q)}, de dimension p,avec m � p � n.

Alors, n − p contraintes sont intégrables.

Algèbre de Lie

Algèbre engendrée par les colonnes et les crochets successifs formés àpartir de ces colonnes, à condition qu’ils augmentent la dimension del’algèbre.

Cas de la roue

−x sin θ + y cos θ = 0x cos θ + y sin θ = −r ϕ

AT (q)q = 0, avec A(q) =

− sin θ cos θcos θ sin θ

0 00 r

et :

AT (q)B(q) = 0, avec B(q) =

cos θ 0sin θ 0

0 1− 1

r 0

Cas de la roue

−x sin θ + y cos θ = 0x cos θ + y sin θ = −r ϕ

AT (q)q = 0, avec A(q) =

− sin θ cos θcos θ sin θ

0 00 r

et :

AT (q)B(q) = 0, avec B(q) =

cos θ 0sin θ 0

0 1− 1

r 0

Cas de la roue

−x sin θ + y cos θ = 0x cos θ + y sin θ = −r ϕ

AT (q)q = 0, avec A(q) =

− sin θ cos θcos θ sin θ

0 00 r

et :

AT (q)B(q) = 0, avec B(q) =

cos θ 0sin θ 0

0 1− 1

r 0

Crochets de Lie successifs pour la roue

A partir de b1(q) et b2(q) :

b3 =

�b1(q),b2(q)

�=

(sin θ − cos θ 0 0)T

�b1(q),

�b1(q),b2(q)

��= 0

b4 =�b2(q),

�b1(q),b2(q)

��= (cos θ sin θ 0 0)T

Lie{b1 b2 b3 b4} est une algèbre de Lie de dimension 4, égale à celle de q.

Comme n = 4 et p = 4, il n’existe pas de contrainte intégrable : les deuxcontraintes sont non holonômes.

Crochets de Lie successifs pour la roue

A partir de b1(q) et b2(q) :

b3 =�b1(q),b2(q)

�= (sin θ − cos θ 0 0)T

�b1(q),

�b1(q),b2(q)

��= 0

b4 =�b2(q),

�b1(q),b2(q)

��= (cos θ sin θ 0 0)T

Lie{b1 b2 b3 b4} est une algèbre de Lie de dimension 4, égale à celle de q.

Comme n = 4 et p = 4, il n’existe pas de contrainte intégrable : les deuxcontraintes sont non holonômes.

Crochets de Lie successifs pour la roue

A partir de b1(q) et b2(q) :

b3 =�b1(q),b2(q)

�= (sin θ − cos θ 0 0)T

�b1(q),

�b1(q),b2(q)

��=

0

b4 =�b2(q),

�b1(q),b2(q)

��= (cos θ sin θ 0 0)T

Lie{b1 b2 b3 b4} est une algèbre de Lie de dimension 4, égale à celle de q.

Comme n = 4 et p = 4, il n’existe pas de contrainte intégrable : les deuxcontraintes sont non holonômes.

Crochets de Lie successifs pour la roue

A partir de b1(q) et b2(q) :

b3 =�b1(q),b2(q)

�= (sin θ − cos θ 0 0)T

�b1(q),

�b1(q),b2(q)

��= 0

b4 =�b2(q),

�b1(q),b2(q)

��= (cos θ sin θ 0 0)T

Lie{b1 b2 b3 b4} est une algèbre de Lie de dimension 4, égale à celle de q.

Comme n = 4 et p = 4, il n’existe pas de contrainte intégrable : les deuxcontraintes sont non holonômes.

Crochets de Lie successifs pour la roue

A partir de b1(q) et b2(q) :

b3 =�b1(q),b2(q)

�= (sin θ − cos θ 0 0)T

�b1(q),

�b1(q),b2(q)

��= 0

b4 =

�b2(q),

�b1(q),b2(q)

��=

(cos θ sin θ 0 0)T

Lie{b1 b2 b3 b4} est une algèbre de Lie de dimension 4, égale à celle de q.

Comme n = 4 et p = 4, il n’existe pas de contrainte intégrable : les deuxcontraintes sont non holonômes.

Crochets de Lie successifs pour la roue

A partir de b1(q) et b2(q) :

b3 =�b1(q),b2(q)

�= (sin θ − cos θ 0 0)T

�b1(q),

�b1(q),b2(q)

��= 0

b4 =�b2(q),

�b1(q),b2(q)

��= (cos θ sin θ 0 0)T

Lie{b1 b2 b3 b4} est une algèbre de Lie de dimension 4, égale à celle de q.

Comme n = 4 et p = 4, il n’existe pas de contrainte intégrable : les deuxcontraintes sont non holonômes.

Crochets de Lie successifs pour la roue

A partir de b1(q) et b2(q) :

b3 =�b1(q),b2(q)

�= (sin θ − cos θ 0 0)T

�b1(q),

�b1(q),b2(q)

��= 0

b4 =�b2(q),

�b1(q),b2(q)

��= (cos θ sin θ 0 0)T

Lie{b1 b2 b3 b4} est une algèbre de Lie de dimension 4, égale à celle de q.

Comme n = 4 et p = 4, il n’existe pas de contrainte intégrable : les deuxcontraintes sont non holonômes.

Crochets de Lie successifs pour la roue

A partir de b1(q) et b2(q) :

b3 =�b1(q),b2(q)

�= (sin θ − cos θ 0 0)T

�b1(q),

�b1(q),b2(q)

��= 0

b4 =�b2(q),

�b1(q),b2(q)

��= (cos θ sin θ 0 0)T

Lie{b1 b2 b3 b4} est une algèbre de Lie de dimension 4, égale à celle de q.

Comme n = 4 et p = 4, il n’existe pas de contrainte intégrable : les deuxcontraintes sont non holonômes.

Robotique mobile

Modélisation

Les grandes classes de robots mobiles et leurs modèles

Plan

1 Introduction

2 ModélisationDéfinitionsRoulement sans glissement et contraintes non holonômesLes grandes classes de robots mobiles et leurs modèlesReprésentation d’état et commandabilité

3 PerceptionCapteurs en robotique mobileLocalisationConstruction de carte

4 NavigationProblématiques et approchesPlanification de cheminExecution du mouvement

Robotique mobile

Modélisation

Les grandes classes de robots mobiles et leurs modèles

Les différentes roues

RouesCombinaison choix+disposition des roues : mode de locomotion propre.

Types de roues :les roues fixes : axe de rotation de direction constanteles roues centrées orientables : axe d’orientation passe par le centre dela roueles roues décentrées orientables (roues folles) : axe d’orientation nepasse pas par le centre de la roue

Robotique mobile

Modélisation

Les grandes classes de robots mobiles et leurs modèles

Les différentes roues

RouesCombinaison choix+disposition des roues : mode de locomotion propre.

(b) Roues décentrées orientables

axe de rotation

axe d’orientation

(a) Roues fixes (axe d’orientation fixe)et roues centrées orientables

Robotique mobile

Modélisation

Les grandes classes de robots mobiles et leurs modèles

Disposition des roues et cinématique

Disposition et blocage

Pour un ensemble de roues donné, toute disposition ne conduit pas à unesolution viable. Un mauvais choix peut limiter la mobilité du robot ouoccasionner d’éventuels blocages.

Centre instantané de rotationDisposition de roues viable : existence pour toutes les roues d’un uniquepoint de vitesse nulle autour duquel tourne le robot de façon instantanée : lecentre instantané de rotation (CIR).

Robotique mobile

Modélisation

Les grandes classes de robots mobiles et leurs modèles

Disposition des roues et cinématique

Disposition et blocage

Pour un ensemble de roues donné, toute disposition ne conduit pas à unesolution viable. Un mauvais choix peut limiter la mobilité du robot ouoccasionner d’éventuels blocages.

Centre instantané de rotationPoints de vitesse nulle sur l’axe de rotation des roues : le point d’intersectiondes axes de rotation des différentes roues doit être unique (limitation dunombre de solutions viables).

Robotique mobile

Modélisation

Les grandes classes de robots mobiles et leurs modèles

Robots mobiles de type unicycle : description (1)

Description

Unicycle : robot actionné par deux roues indépendantes et possédantéventuellement un certain nombre de roues folles assurant sa stabilité.

O�x

x

yO�

θ

�y

Robotique mobile

Modélisation

Les grandes classes de robots mobiles et leurs modèles

Robots mobiles de type unicycle : description (2)

Hilare, LAAS-CNRS, Toulouse, 1977 [Giralt 84]

Entraînement batteries au plomb 24V, 2 servomoteurs DCCalculateur 4 processeurs Intel 80286, modem série radio 9600 bauds

Capteurs odométrie, 16 capteurs US, un télémètre laserDimensions (L × l × h) : 80 cm × 80 cm × 60 cm

Poids 400 kg (charge admissible : . . .)

Robotique mobile

Modélisation

Les grandes classes de robots mobiles et leurs modèles

Robots mobiles de type unicycle : description (3)

Pioneer P3-DX, ActiveMedia Robotics, 2004 [ActivMedia 04]

Entraînement batteries 252 Wh, 2 servomoteurs DCCalculateur micro-contrôleur Hitachi HS-8, I/O Bus, 2 ports série

Capteurs odométrie, 8 capteurs US en façade +options : bumpers, télémètre laser, gyroscope, etc.

Autonomie 24 − 30 hVitesse maximum 1, 6 m/s

Dimensions (L × l × h) : 44 cm × 38 × 22 cmPoids 9 kg (charge admissible : 23 kg)

Robotique mobile

Modélisation

Les grandes classes de robots mobiles et leurs modèles

Robots mobiles de type unicycle : description (4)

Khepera II, K-team, EPFL, Lausanne, 2002 [K-team 02],

Entraînement secteur ou accus NiMH, 2 servomoteurs DCCalculateur processeur Motorola 68331 @25 MHz, 512 Ko RAM, 512 Ko Flash

communication port série 115 Kbauds (9600 bauds radio)3 entrées analogiques 0 à 4.3 V, 8 bits

Capteurs 8 capteurs IR de luminosité et de proximité (100 mm de portée)Autonomie 1 h en fonctionnement continu

Vitesse maximum 1 m/s, minimum 0, 02 m/sDimensions (D × h) : 7 cm × 3 cm

Poids 80 g (charge admissible : 250 g)

Robotique mobile

Modélisation

Les grandes classes de robots mobiles et leurs modèles

Robots mobiles de type unicycle : cinématique (1)

O

�y

�xx

y

CIR

O�

L

ρ

ω

ϕd

ϕg

θ

v

vd

vg

Vitesses roues droite et gauche( !convention des angles) :

vd = −r ϕd = (ρ+ L)ωvg = r ϕg = (ρ− L)ω

d’où :

ρ = Lϕd − ϕg

ϕd + ϕg

ω =−r(ϕd + ϕg)

2L

Robotique mobile

Modélisation

Les grandes classes de robots mobiles et leurs modèles

Robots mobiles de type unicycle : cinématique (2)

Choix du vecteur de commande : équivalence entre vitesses

(ϕd , ϕg) ↔ (v , ω) avec v vitesse longitudinale du robot (en O�) et ω vitessede rotation (autour de O�) :

v =vd + vg

2=

r(ϕg − ϕd )2

ω =−r(ϕd + ϕg)

2L

Robotique mobile

Modélisation

Les grandes classes de robots mobiles et leurs modèles

Robots mobiles de type tricycle : description

Description

Tricycle : robot constitué de deux roues fixes de même axe et d’une rouecentrée orientable placée sur l’axe longitudinal du robot.

O�x

O�

y

x

θ

ψ

�y

Robotique mobile

Modélisation

Les grandes classes de robots mobiles et leurs modèles

Robots mobiles de type voiture : description

Description

Voiture : très similaire à celui du tricycle. La différence se situe au niveau dutrain avant, qui comporte deux roues au lieu d’une.

Robotique mobile

Modélisation

Les grandes classes de robots mobiles et leurs modèles

Robots mobiles de type tricycle : cinématique

D

O�x

O�

y

x

θ

ρ

ψCIR ω

�y

ρ =D

tanψ

ω =vD

tanψ

Robotique mobile

Modélisation

Les grandes classes de robots mobiles et leurs modèles

Robots mobiles de type voiture : cinématique

CIR

braquage différentielroues avant avec

roue avant dutricycle équivalent

Braquage différentiel (dit d’Ackerman)

Robotique mobile

Modélisation

Les grandes classes de robots mobiles et leurs modèles

Robots mobiles omnidirectionnels : description

Description

Robot mobile omnidirectionnel : on peut agir indépendamment sur lesvitesses de translation selon les axes �x , �y et de rotation, autour de �z.

�y

y

θ

O�

ou roues décentrées orientablesroues suédoises

xO

�x

Robotique mobile

Modélisation

Les grandes classes de robots mobiles et leurs modèles

Modèles des robots mobiles (1)

Modèle cinématique en posture

But : relier la dérivée de la posture et la commande

ξ = C(q)u

Robotique mobile

Modélisation

Les grandes classes de robots mobiles et leurs modèles

Modèles des robots mobiles (1)

Modèle cinématique en posture de l’unicycle

x = v cos θy = v sin θ

θ = ω

soit :

ξ =

cos θ 0sin θ 0

0 1

Robotique mobile

Modélisation

Les grandes classes de robots mobiles et leurs modèles

Modèles des robots mobiles (2)

Modèle cinématique en configuration

But : relier la dérivée de la configuration et la commande.

PréalableSavoir définir la configuration.

Robotique mobile

Modélisation

Les grandes classes de robots mobiles et leurs modèles

Modèles des robots mobiles (2)

Modèle cinématique en configuration

But : relier la dérivée de la configuration et la commande.

PréalableSavoir définir la configuration.

Modélisation cinématique (en configuration) de l’unicycleConditions de r.s.g. des deux roues :

Modélisation cinématique (en configuration) de l’unicycleConditions de r.s.g. des deux roues :

x + Lθ cos θ + r ϕd cos θ = 0y + Lθ sin θ + r ϕd sin θ = 0

x − Lθ cos θ − r ϕg cos θ = 0y − Lθ sin θ − r ϕg sin θ = 0

Modélisation cinématique (en configuration) de l’unicycleAvec q = (x y θ ϕd ϕg)T :

1 0 L cos θ r cos θ 00 1 L sin θ r sin θ 01 0 −L cos θ 0 −r cos θ0 1 −L sin θ 0 −r sin θ

xyθϕd

ϕg

= 0

soit :AT (q)q = 0

On constate que AT (q) n’est pas de rang plein.

Modélisation cinématique (en configuration) de l’unicycleSans perte d’information on réécrit les contraintes :

1 0 L cos θ r cos θ 00 1 L sin θ r sin θ 01 0 −L cos θ 0 −r cos θ

xyθϕd

ϕg

= 0

Modélisation cinématique (en configuration) de l’unicyclePar ailleurs :

θ =−r(ϕd + ˙ϕg)

2Lqui s’intègre en :

θ =−r(ϕd + ϕg)

2L+ θ0,

où θ0 est la valeur de θ à l’initialisation (les angles des roues, généralementmesurés par des codeurs incrémentaux, étant alors choisis nuls). Cettecontrainte intégrable est donc en fait une contrainte holonôme.

Modélisation cinématique (en configuration) de l’unicycleOn peut donc choisir q = (x y θ ϕd )

T :

�1 0 L cos θ r cos θ0 1 L sin θ r sin θ

xyθϕd

= 0

et :

B(q) =

cos θ 0sin θ 0

0 1− 1

r − Lr

Modélisation cinématique (en configuration) de l’unicycle

En remarquant, d’après ce qui précède, que :

x = v cos θy = v sin θ

θ = ω

ϕd = −vr− Lω

ron a :

Modèle cinématique (en configuration)

q = B(q)u,

avec pour vecteur de commande cinématique u = (v ω)T . La matrice B(q)représente donc le modèle cinématique (en configuration) du robot mobile.

Robotique mobile

Modélisation

Les grandes classes de robots mobiles et leurs modèles

Modèles des robots mobiles (3)

Aspects pratiques

Rotation des roues pas toujours utile du point de vue pratique, étant donnéque l’on cherche essentiellement à contrôler la posture du robot.

Modèle cinématique de l’unicycle en pratique

ϕd n’apparaît pas dans les équations régissant la dérivée de la posture, d’oùle modèle simplifié :

x = v cos θy = v sin θ

θ = ω

Robotique mobile

Modélisation

Les grandes classes de robots mobiles et leurs modèles

Modèles des robots mobiles (4)

Pour les robots mobiles de type tricycle on a q = (x y θ ψ)T et le modèlecinématique réduit, :

x = v cos θy = v sin θ

θ =vD

tanψ

ψ = η

où u = (v η)T est le vecteur de commande cinématique, η représentant lavitesse d’orientation imposée à la roue orientable.

Robotique mobile

Modélisation

Les grandes classes de robots mobiles et leurs modèles

Modèles des robots mobiles (4)

Pour les robots mobiles omnidirectionnels, on peut considérer qu’il estpossible de commander directement la posture et le modèle cinématique enposture est donc :

x = u1

y = u2

θ = u3

où u = (u1 u2 u3)T représente le vecteur de commande.

Robotique mobile

Modélisation

Représentation d’état et commandabilité

Plan

1 Introduction

2 ModélisationDéfinitionsRoulement sans glissement et contraintes non holonômesLes grandes classes de robots mobiles et leurs modèlesReprésentation d’état et commandabilité

3 PerceptionCapteurs en robotique mobileLocalisationConstruction de carte

4 NavigationProblématiques et approchesPlanification de cheminExecution du mouvement

Robotique mobile

Modélisation

Représentation d’état et commandabilité

Représentation d’état

Variable d’étatAvec q = variable d’état du système. On note x = q par habitude.

x = B(x)u,

où B(x) est de dimension n × m.

Propriétés

Représentation associée non linéaire, sans dérive.

Robotique mobile

Modélisation

Représentation d’état et commandabilité

Commandabilité (1)

Interprétation

Pour qu’un robot mobile soit utile, il faut en premier lieu s’assurer de sacommandabilité : existence d’une loi de commande u amenant le robot d’unétat initial à un état final quelconque.

Commandabilité du linéariséLinéarisé autour d’un point d’équilibre x0 quelconque :

x = B(x0)u,

avec B(x0) ∈ Rn×m. Pour les robots de type unicycle et voiture, la nonholonomie va de pair avec une forme de sous-actionnement (m < n).

Robotique mobile

Modélisation

Représentation d’état et commandabilité

Commandabilité (1)

Interprétation

Pour qu’un robot mobile soit utile, il faut en premier lieu s’assurer de sacommandabilité : existence d’une loi de commande u amenant le robot d’unétat initial à un état final quelconque.

Commandabilité du linéariséCondition de rang (critère de commandabilité de Kalman) :

Rang(B, AB, . . . ,An−1B) = n → Rang B(x0) = n

jamais remplie car m < n : le linéarisé n’est donc pas commandable.

Robotique mobile

Modélisation

Représentation d’état et commandabilité

Commandabilité (2)

Commandabilité d’un robot mobile (théorème de Chow)

On note toujours B(x) = (b1(x) b2(x) . . .bm(x)) la matrice du modèlecinématique, de dimension n × m.Un robot mobile est commandable si les colonnes de B(x) et leurs crochetsde Lie successifs forment un ensemble de n colonnes indépendantes.

Commandabilité de l’unicycle

Avec x = (x y θ ϕd )T , modèle cinématique + crochets :

cos θsin θ

0− 1

r

,

001− L

r

,

sin θ− cos θ

00

,

cos θsin θ

00

Avec x = (x y θ)T , modèle cinématique (réduit) + crochets :

cos θsin θ

0

,

001

,

sin θ

− cos θ0

Le modèle cinématique de l’unicycle est donc

commandable.

Commandabilité de l’unicycle

Avec x = (x y θ ϕd )T , modèle cinématique + crochets :

cos θsin θ

0− 1

r

,

001− L

r

,

sin θ− cos θ

00

,

cos θsin θ

00

Avec x = (x y θ)T , modèle cinématique (réduit) + crochets :

cos θsin θ

0

,

001

,

sin θ

− cos θ0

Le modèle cinématique de l’unicycle est donc

commandable.

Commandabilité de l’unicycle

Avec x = (x y θ ϕd )T , modèle cinématique + crochets :

cos θsin θ

0− 1

r

,

001− L

r

,

sin θ− cos θ

00

,

cos θsin θ

00

Avec x = (x y θ)T , modèle cinématique (réduit) + crochets :

cos θsin θ

0

,

001

,

sin θ

− cos θ0

Le modèle cinématique de l’unicycle est donc

commandable.

Commandabilité de l’unicycle

Avec x = (x y θ ϕd )T , modèle cinématique + crochets :

cos θsin θ

0− 1

r

,

001− L

r

,

sin θ− cos θ

00

,

cos θsin θ

00

Avec x = (x y θ)T , modèle cinématique (réduit) + crochets :

cos θsin θ

0

,

001

,

sin θ

− cos θ0

Le modèle cinématique de l’unicycle est donc commandable.

Robotique mobile

Perception

Plan

1 Introduction

2 ModélisationDéfinitionsRoulement sans glissement et contraintes non holonômesLes grandes classes de robots mobiles et leurs modèlesReprésentation d’état et commandabilité

3 PerceptionCapteurs en robotique mobileLocalisationConstruction de carte

4 NavigationProblématiques et approchesPlanification de cheminExecution du mouvement

Robotique mobile

Perception

Perception : généralités

DéfinitionPerception en robotique = capacité du système à recueillir, traiter et mettreen forme des informations utiles au robot pour agir et réagir dans le mondequi l’entoure.

Particularités de la robotique mobile :environnement non structuréredondance d’information : nombreux capteurschoix des capteursutilisation des données

Robotique mobile

Perception

Capteurs en robotique mobile

Plan

1 Introduction

2 ModélisationDéfinitionsRoulement sans glissement et contraintes non holonômesLes grandes classes de robots mobiles et leurs modèlesReprésentation d’état et commandabilité

3 PerceptionCapteurs en robotique mobileLocalisationConstruction de carte

4 NavigationProblématiques et approchesPlanification de cheminExecution du mouvement

Robotique mobile

Perception

Capteurs en robotique mobile

Capteurs : exemples (1) [Siegwart 04]

Robotique mobile

Perception

Capteurs en robotique mobile

Capteurs : exemples (1bis) [Siegwart 04]

Robotique mobile

Perception

Capteurs en robotique mobile

Capteurs : exemples (2) [Siegwart 04]

Robotique mobile

Perception

Capteurs en robotique mobile

Capteurs : exemples (3) [Siegwart 04]

Robotique mobile

Perception

Capteurs en robotique mobile

Capteurs

Cadre de l’étudeEtude détaillée des capteurs =

physique + électronique + traitement du signal + . . ..

Dans ce cours : uniquement principe de fonctionnement des capteursembarqués pour la navigation d’un robot mobile.

Robotique mobile

Perception

Capteurs en robotique mobile

Classification des capteurs

Classification choisieCapteurs proprioceptifs : mesure de l’état du robot lui-même (position ouvitesse des roues, charge de la batterie, etc.).

Capteurs extéroceptifs : mesure de l’état de l’environnement (distancesrobot-environnement, température, contact, etc.).

Autre classification [Siegwart 04]Capteurs passifs : utilisent l’énergie de l’environnement ou du robot.

Capteurs actifs : utilisent leur propre énergie (donc perturbent l’environnement).

Robotique mobile

Perception

Capteurs en robotique mobile

Caractéristiques des capteurs

Principalement :étendue de mesurerésolutionlinéaritébande passante/fréquence d’acquisitionsensibilitéprécision (erreur systématique, aléatoire).

Robotique mobile

Perception

Capteurs en robotique mobile

Mesure de la rotation des roues

Moteur + capteur = servomoteur

Configuration habituelle : roue motrice + dispositif de mesure de rotation àl’aide d’un capteur disposé sur l’axe lui-même.

Capteurs proprioceptifs.

Propriétés :peu différents des capteurs habituels en commande d’axecodeurs absolus inutilesgrandeur de mesure = vitesse de rotationrarement mesure directe (génératrice tachymétrique)mesure indirecte par codeurs optiques (moindre coût, moindreencombrement, moindre entretien) : comptage d’impulsions (bruit dequantification aux basses vitesses)résolution fine ou synchrorésolveurs [Gangloff 04]

Robotique mobile

Perception

Capteurs en robotique mobile

Mesure de position et d’orientation (1)

Mesure de la position

Très peu de capteurs de position absolue d’un point dans un repère fixedonné : GPS.

Mesure de l’orientationDavantage de capteurs d’orientation d’un solide dans un repère fixe donné :gyromètre, compas, etc.

Mesures . . . d’extérieur !Mesures directes de l’orientation et de la position principalement en extérieur.

Robotique mobile

Perception

Capteurs en robotique mobile

Mesure de position et d’orientation (2)

Mesure de la position : le GPS

Global Positioning System (GPS) : applications militaires, actuellement à ladisposition du grand public.

Emissions synchronisées dans le temps perçues et recoupées au niveau durécepteur par triangulation.

Propriétés :précision brute de l’ordre de la quinzaine de mètresméthode différentielle à l’aide de deux récepteurs : précision de l’ordredu centimètrepositionnement en extérieurfaible précision, prix élevé : des systèmes multirobotsmesure à des fréquences de l’ordre de 5 Hz : pas temps-réel : recalagede la position

Robotique mobile

Perception

Capteurs en robotique mobile

Mesure de position et d’orientation (3)

Mesure de l’orientation : gyromètres

Gyromètres : capteurs proprioceptifs pour mesurer l’orientation du corps surlequel ils sont placés par rapport à un référentiel fixe, selon un ou deux axes.

Mécaniques, optiques, à structure vibrante, etc.

Robotique mobile

Perception

Capteurs en robotique mobile

Mesure de position et d’orientation (3)

Mesure de l’orientation : gyromètres

Gyromètres : capteurs proprioceptifs pour mesurer l’orientation du corps surlequel ils sont placés par rapport à un référentiel fixe, selon un ou deux axes.

Mécaniques, optiques, à structure vibrante, etc.

Propriétés :gyromètres mécaniques et optiques : performances très supérieures àcelles requises en robotique mobile, coût élevé (aéronautique et spatial)structure vibrante : plus grand public :

Futaba GY240 : un axe pour le modélisme, 130 $US27 mm × 27 mm × 20 mm, 25 g.

Robotique mobile

Perception

Capteurs en robotique mobile

Mesure de position et d’orientation (4)

Mesure de l’orientation : compas et boussoles

Compas et boussoles : information d’orientation par rapport à une référencefixe (nord magnétique typiquement).

Robotique mobile

Perception

Capteurs en robotique mobile

Mesure de position et d’orientation (4)

Mesure de l’orientation : compas et boussoles

Compas et boussoles : information d’orientation par rapport à une référencefixe (nord magnétique typiquement).

Propriétés :compas électroniques capables de détecter le nordCMP03 : résolution de 3 à 4o environ, 32 × 35 mm, 45$US.

Robotique mobile

Perception

Capteurs en robotique mobile

Mesure de proximité et de distance (1)

Télémétrie : définitionTélémétrie : toute technique de mesure de distance par des procédésacoustiques, optiques ou radioélectriques.

Capteur = télémètre :différentes techniques de mesure de distance (mesure du temps de vold’une onde, triangulation)différentes technologies.

Capteurs actifs et extéroceptifs.

Robotique mobile

Perception

Capteurs en robotique mobile

Mesure de proximité et de distance (2)

Capteurs infrarouges

Capteurs infrarouges : ensemble émetteur/récepteur utilisant des radiationsnon visibles.

Capteurs infrarouges Sharp GP2 de portée réduite :GP2D120 : 4 − 30 cm, GP2Y0A02YK : 20 − 150 cm

20 $US.

Robotique mobile

Perception

Capteurs en robotique mobile

Mesure de proximité et de distance (2)

Capteurs infrarouges

Capteurs infrarouges : ensemble émetteur/récepteur utilisant des radiationsnon visibles.

Propriétés :faible portée, mesure très dégradée au-delà de un mètre : détecteurs deproximité ou de présencesensibilité aux conditions extérieures (lumière ambiante, spécularité dessurfaces, température, pression)cône de détectionalternance émission/réception : distance minimale.

Robotique mobile

Perception

Capteurs en robotique mobile

Mesure de proximité et de distance (3)

Capteurs ultrasonores

Capteurs ultrasonores : utilisent des vibrations sonores non perceptibles pourl’oreille humaine (20 kHz à 200 kHz).

Télémètres ultrasonores Polaroïd et Migatron

Robotique mobile

Perception

Capteurs en robotique mobile

Mesure de proximité et de distance (3)

Capteurs ultrasonores

Capteurs ultrasonores : utilisent des vibrations sonores non perceptibles pourl’oreille humaine (20 kHz à 200 kHz).

Télémètre ultrasonore MSU08 (Lextronic) :L × l × h = 43 mm × 20 mm × 17 mm

moins de 60 $US.

Robotique mobile

Perception

Capteurs en robotique mobile

Mesure de proximité et de distance (3)

Capteurs ultrasonores

Capteurs ultrasonores : utilisent des vibrations sonores non perceptibles pourl’oreille humaine (20 kHz à 200 kHz).

Télémètres ultrasoniques Airmar AT 120

Robotique mobile

Perception

Capteurs en robotique mobile

Mesure de proximité et de distance (3)

Capteurs ultrasonores

Capteurs ultrasonores : utilisent des vibrations sonores non perceptibles pourl’oreille humaine (20 kHz à 200 kHz).

Propriétés :distance maximale et distance effective de mesure à adapter à la plagede mesuresensibilité à la densité de l’air (température, pression)cône de détectionalternance émission/réception : distance minimalefréquence maximale des mesures variable (mesures à 1, 5 m : toutes les10 ms, à 30 m toute les 200 ms).

Robotique mobile

Perception

Capteurs en robotique mobile

Mesure de proximité et de distance (4)

Télémètres laserTélémètres laser : mesure du temps de vol d’une impulsion émise par unediode laser faible puissance.

Balayage : direction de mesure modifiée par rotation d’un miroir.

Robotique mobile

Perception

Capteurs en robotique mobile

Mesure de proximité et de distance (4)

Télémètres laserTélémètres laser : mesure du temps de vol d’une impulsion émise par unediode laser faible puissance.

Balayage : direction de mesure modifiée par rotation d’un miroir.

Propriétés :bonne précision, télémètres les plus répandusbonne résolution angulaire (0, 25 − 0, 5 − 1o)distance maximale (conseillée) de mesure : 30 mbalayage sur 100 à 180 degrés.

Robotique mobile

Perception

Capteurs en robotique mobile

Mesure de proximité et de distance (4)

Télémètres laserTélémètres laser : mesure du temps de vol d’une impulsion émise par unediode laser faible puissance.

Balayage : direction de mesure modifiée par rotation d’un miroir.

Propriétés :bonne stabilité en températureplus encombrant : (L × l × h) : 156 × 155 × 210 mm, 4, 5 kgmesure complète (balayage) en quelques secondesprix élevé (environ 6000 $US pour un Sick).

Robotique mobile

Perception

Capteurs en robotique mobile

Vision par ordinateur

Vision et robotique mobile

Vision par ordinateur : vision traditionnelle, stéréovision.

Vision omnidirectionnelle : mesure de la réflexion de l’environnement sur unmiroir parabolique.

Dispositif,image brute et reprojection cylindrique [Pajdla 03]

Robotique mobile

Perception

Capteurs en robotique mobile

Vision par ordinateur

Vision et robotique mobile

Vision par ordinateur : vision traditionnelle, stéréovision.

Vision omnidirectionnelle : mesure de la réflexion de l’environnement sur unmiroir parabolique.

Image brute, reprojections cylindrique et perspective [Pajdla 03]

Robotique mobile

Perception

Capteurs en robotique mobile

Vision par ordinateur

Vision et robotique mobile

Vision par ordinateur : vision traditionnelle, stéréovision.

Vision omnidirectionnelle : mesure de la réflexion de l’environnement sur unmiroir parabolique.

Propriétés :vision panoramique de la scènedétection temps-réeldifficultés technologiques : alignement caméra-miroir, régularité dumiroir, géométrie de capteur rectangulaire à pas constanten développement.

Robotique mobile

Perception

Localisation

Plan

1 Introduction

2 ModélisationDéfinitionsRoulement sans glissement et contraintes non holonômesLes grandes classes de robots mobiles et leurs modèlesReprésentation d’état et commandabilité

3 PerceptionCapteurs en robotique mobileLocalisationConstruction de carte

4 NavigationProblématiques et approchesPlanification de cheminExecution du mouvement

Robotique mobile

Perception

Localisation

Localisation : généralités

Objet de la localisation

Nombreux défauts des capteurs et domaines d’application ciblés : tendanceà multiplier les capteurs.

Redondance d’information : nécessité d’une fusion cohérente d’ informationsde nature différente.

Nature des informationsPrincipalement :

posture absolue ou relativedistance aux corps présents dans l’environnement.

Robotique mobile

Perception

Localisation

Odométrie (1)

Principe de l’odométrieCalcul de la posture par intégration des vitesses :

x(t) =

� t

0x(τ)dτ,

y(t) =

� t

0y(τ)dτ,

θ(t) =

� t

0θ(τ)dτ.

En pratique : intégration discrète sur calculateur.

Remarque

Odométrie : posture relative du robot, la posture initiale devant être obtenuepar d’autres moyens.

Robotique mobile

Perception

Localisation

Odométrie (2)

Avantages :simplicitépas de capteur supplémentaire.

Inconvénients :sensibilité vis-à-vis des paramètres géométriques (diamètre des roueset longueur de l’entraxe)pour une localisation absolue l’initialisation nécessite un autre moyen delocalisation.

Robotique mobile

Perception

Localisation

Odométrie (3)

Nature des erreursErreurs systématiques : erreur sur le diamètre des roues par rapport à lavaleur nominale attendue, diamètres différents, erreurs sur la disposition desroues, résolution des codeurs.

Erreurs non systématiques : sol non plan ou irrégulier, glissements divers(dus à la nature du sol, à une accélération trop brutale, à un obstacle, undéfaut mécanique, etc.), contact au sol non ponctuel.

Défaut majeur

Effet cumulatif très gênant des erreurs systématiques.

Robotique mobile

Perception

Localisation

Odométrie (4)

Estimation des erreursEstimation de l’incertitude de l’odométrie par la matrice de covariance debruit associée à la posture du robot, très difficile à déterminer (mouvementsde translation et de rotation couplés).

Visualisation : ellipse pour l’incertitude en position et pour l’incertitude enorientation.

Minimisation des erreursPas possible de prendre en compte les erreurs non systématiques.

Identifier et minimiser les erreurs systématiques, avant de les prendre encompte.

Robotique mobile

Perception

Localisation

Télémétrie (1)

Nature des informationsGénéralement deux informations : angle de gisement (direction de mesure)et distance au corps ayant réfléchi l’onde émise.

Domaine d’application

Permet de positionner les objets présents dans la scène par rapport aurobot : adapté aux environnements d’intérieur, structurés, comportant desformes régulières et statiques comme des murs.

Robotique mobile

Perception

Localisation

Télémétrie (2)

Choix 2D ou 3D ?Modèle de données (données brutes ou segmentation).

Robotique mobile

Perception

Localisation

Télémétrie (2)

Choix 2D ou 3D ?En 2D : certains obstacles mal captés (pieds de table).

Robotique mobile

Perception

Localisation

Télémétrie (2)

Choix 2D ou 3D ?En 3D : coût prohibitif du télémètre sinon dispositif orientable.

Dispositif de mesures laser tridimensionnelles avec un laser à balayage surune platine

Robotique mobile

Perception

Localisation

Télémétrie (3)

Recalage

Connaissance a priori de l’environnement : possibilité de recalage desmesures sur le modèle :

soit on utilise directement le nuage de points de mesuresoit on extrait des primitives dans ce nuage, typiquement des segmentsreprésentant les surfaces planes et des coins, représentant l’intersectiondes segments.

Robotique mobile

Perception

Localisation

Télémétrie (3)

Recalage de données 3D reprojetées par l’algorithme ICP

Robotique mobile

Perception

Localisation

Télémétrie (3)

Recalage de données 3D reprojetées par l’algorithme ICP

Robotique mobile

Perception

Localisation

Télémétrie (3)

Recalage de données télémétriques laser sur un modèle d’environnement :modèle de l’environnement

Robotique mobile

Perception

Localisation

Télémétrie (3)

Recalage de données télémétriques laser sur un modèle d’environnement :segments dans la zone de mesure

Robotique mobile

Perception

Localisation

Télémétrie (3)

Recalage de données télémétriques laser sur un modèle d’environnement :mesures segmentées

Robotique mobile

Perception

Localisation

Télémétrie (3)

Recalage de données télémétriques laser sur un modèle d’environnement :localisation par appariement

Robotique mobile

Perception

Localisation

Localisation sur balises (1)

AmersPoints (balises, motifs, objets) localisés simultanément dansl’environnement : calcul de la posture du robot par télémétrie et puistriangulation.

Nature des informations robot-amerGénéralement distance robot-balise, éventuellement angles de gisement desbalises référencés par rapport à la base.

Robotique mobile

Perception

Localisation

Localisation sur balises (2)

O�x

x

yO�

θ

�y

d1

d2

B1

B2α1

α2ϕ

Triangulation à 2 balises, avec mesure des angles de gisement

Robotique mobile

Perception

Localisation

Localisation sur balises (3)

O�x

x

y

�y

d1

d2

B1

B2

B3

d3

O�

Triangulation à 3 balises sans mesure des angles de gisement

Robotique mobile

Perception

Localisation

Localisation multicapteur (1)

GénéralitésProcessus de localisation classique : combinaison des mesuresproprioceptives et extéroceptives :

posture relative donnée par l’odométrieposture du robot par rapport à l’environnement :

localisation d’amers (motifs, balises)localisation externe du robot par des capteurs présents dansl’environnement.

Fusion des donnéesBut : combiner les informations capteurs pour obtenir une représentationunique et cohérente de la configuration du robot.

Robotique mobile

Perception

Localisation

Localisation multicapteur (2)

Recalage simple

Mesure de la posture relative presque exclusivement par odométrie. . .

et

obtention de la posture absolue de référence par capteurs extéroceptifs lorsde l’initialisation ou ponctuellement pour annuler l’erreur accumulée parl’odométrie.

Robotique mobile

Perception

Localisation

Localisation multicapteur (2)

Recalage simple

Mesure de la posture relative presque exclusivement par odométrie. . .

et

obtention de la posture absolue de référence par capteurs extéroceptifs lorsde l’initialisation ou ponctuellement pour annuler l’erreur accumulée parl’odométrie.

Robotique mobile

Perception

Localisation

Localisation multicapteur (3)

Fusion de données par moyenne pondérée

Utilisation conjointe des mesures proprioceptives ξo et extéroceptive ξr de laposture du robot :

ξ =σ2

r

σ2o + σ2

rξo +

σ2o

σ2o + σ2

rξr .

Variance de la mesure ainsi pondérée tq 1σ2 = 1

σ2o+ 1

σ2r.

Conséquences :

confiance faible sur la mesure des capteurs extéroceptifs (donc variance associée importante) : ces mesuresaffectent peu l’estimation de posture

à l’inverse, variance de l’odométrie trop forte : mesures issues des capteurs extéroceptifs deviendrontprépondérantes

variance de l’estimation pondérée meilleure que celle des mesures séparées (heureusement. . .).

Robotique mobile

Perception

Localisation

Localisation multicapteur (4)

Fusion de données par filtrage de Kalman

Problème de localisation à partir de différents capteurs = problèmed’estimation de l’état du système à partir d’observations : filtrage de Kalman.

Filtrage de Kalman Etendu (FKE)

Modèle d’état d’un robot mobile non linéaire : filtrage de Kalman étendu(FKE).

Robotique mobile

Perception

Localisation

Localisation multicapteur par FKE (1)

ModélisationModèle d’état d’un robot mobile non linéaire :

état x = configuration q (réduite)modèle d’évolution de l’état = modèle cinématiquevecteur de sortie y = ensemble des mesures effectuées (dimensiongénéralement supérieure à celle de l’état).

Représentation d’état discrète :�

x(k + 1) = f (x(k),u(k)) + G(k)w(k),y(k) = h(x(k)) + v(k).

Matrices de covariance des bruits w(k) et v(k) sont respectivement notéesQ(k) et R(k).

Robotique mobile

Perception

Localisation

Robot de type unicycle : modèle discret bruité

Etat : x(k) = (x(k) y(k) θ(k))T .

Modèle cinématique :

x(k + 1) =

x(k) + v(k)T cos θ(k)y(k) + v(k)T sin θ(k)

θ(k) + ω(k)T

+ G(k)w(k).

Equation de mesure : posture donnée par l’odométrie, et distance à un amersitué en (xb yb)

T :

y(k) =

�(x(k)− xb)2 + (y(k)− yb)2

x(k)y(k)θ(k)

+ v(k).

Robotique mobile

Perception

Localisation

Localisation multicapteur par FKE (2)

FKE : linéarisation de l’équation d’état autour de l’estimée (∇f x (k) = ∇f x (x(k)) et

∇hx (k) = ∇hx (x(k|k − 1))) puis filtrage de Kalman :

Initialisation : x(0|0) = x(0).

Robotique mobile

Perception

Localisation

Localisation multicapteur par FKE (2)

FKE : linéarisation de l’équation d’état autour de l’estimée (∇f x (k) = ∇f x (x(k)) et

∇hx (k) = ∇hx (x(k|k − 1))) puis filtrage de Kalman :

Etape de prédiction :

x(k + 1|k) = f (x(k |k),u(k)),P(k + 1|k) = ∇f x(k)P(k |k)∇T f x(k) + G(k)Q(k)GT (k).

Robotique mobile

Perception

Localisation

Localisation multicapteur par FKE (2)

FKE : linéarisation de l’équation d’état autour de l’estimée (∇f x (k) = ∇f x (x(k)) et

∇hx (k) = ∇hx (x(k|k − 1))) puis filtrage de Kalman :

Etape d’estimation :

x(k + 1|k + 1) = x(k + 1|k) + K (k + 1)r(k + 1),P(k + 1|k + 1) = (I − K (k + 1)∇hx(k + 1))P(k + 1|k),

avec :

K (k + 1) = P(k + 1|k)∇T hx (k + 1)(∇hx (k + 1)P(k + 1|k)∇T hx (k + 1) + R(k))−1,

et r(k + 1) = y(k + 1) − h(x(k + 1|k)),

K étant le gain de Kalman et r l’innovation.

Robotique mobile

Perception

Localisation

Robot de type unicycle : FKE

∇f x (k) =

1 0 −v(k)T sin θ(k)0 1 v(k)T cos θ(k)0 0 1

∇hx (k) =

(x(k|k−1)−xb )d(k|k−1)

(y(k|k−1)−yb )d(k|k−1)

0

1 0 00 1 00 0 1

en notant d(k|k − 1) =�

(x(k|k − 1) − xb)2 + (y(k|k − 1) − yb)2.

Alors :

x(k + 1|k) =

x(k) + v(k)T cos θ(k)y(k) + v(k)T sin θ(k)

θ(k) + ω(k)T

,

. . . . . . . . .

Robotique mobile

Perception

Construction de carte

Plan

1 Introduction

2 ModélisationDéfinitionsRoulement sans glissement et contraintes non holonômesLes grandes classes de robots mobiles et leurs modèlesReprésentation d’état et commandabilité

3 PerceptionCapteurs en robotique mobileLocalisationConstruction de carte

4 NavigationProblématiques et approchesPlanification de cheminExecution du mouvement

Robotique mobile

Perception

Construction de carte

Cartes de l’environnement : généralités

ProblèmeCartographie de l’environnement : problème dual de la localisation :représentation de l’environnement, en supposant connue la position du robot.

Types de cartes

Carte géométrique de l’environnement : positions dans une métrique donnée.

Carte topologique de l’environnement : associations entre les lieux del’environnement.

Robotique mobile

Perception

Construction de carte

Cartes géométriques

Grilles d’occupation : carte discrète de l’environnement

Subdivision de l’environnement en cellules dont la probabilité d’occupationcalculée à partir des mesures, du modèle du capteur et de la connaissancede l’environnement.

Robotique mobile

Perception

Construction de carte

Cartes géométriques

Grilles d’occupation : carte discrète de l’environnement

Subdivision de l’environnement en cellules dont la probabilité d’occupationcalculée à partir des mesures, du modèle du capteur et de la connaissancede l’environnement.

Robotique mobile

Perception

Construction de carte

Cartes topologiques

ContexteCas d’environnements de grande taille : construction d’une représentationpurement géométrique insuffisante et trop lourde à manipuler.

Informations topologiques : typiquement graphe discret représentantdifférentes zones et donc différentes cartes locales dans lesquelles évolue lerobot.

EvolutionDécision d’utiliser une nouvelle carte locale : configuration particulière del’environnement (passage, erreur de localisation importante dans la carteprécédente).

Boucles : remise à jour des différentes cartes locales.

Robotique mobile

Perception

Construction de carte

Localisation et cartographie simultanées (SLAM)

ProblèmeLocalisation et cartographie simultanées (SLAM) : naviguer à partir d’uneposition inconnue et dans un environnement inconnu en construisant enmême temps une représentation de l’environnement et de la posture durobot.

. . .

Robotique mobile

Navigation

Plan

1 Introduction

2 ModélisationDéfinitionsRoulement sans glissement et contraintes non holonômesLes grandes classes de robots mobiles et leurs modèlesReprésentation d’état et commandabilité

3 PerceptionCapteurs en robotique mobileLocalisationConstruction de carte

4 NavigationProblématiques et approchesPlanification de cheminExecution du mouvement

Robotique mobile

Navigation

Problématiques et approches

Plan

1 Introduction

2 ModélisationDéfinitionsRoulement sans glissement et contraintes non holonômesLes grandes classes de robots mobiles et leurs modèlesReprésentation d’état et commandabilité

3 PerceptionCapteurs en robotique mobileLocalisationConstruction de carte

4 NavigationProblématiques et approchesPlanification de cheminExecution du mouvement

Robotique mobile

Navigation

Problématiques et approches

Définitions

MouvementMouvement : application définie en fonction du temps t , reliant un point initialà l’instant t0 à un point final à l’instant tf .

Trajectoire

Trajectoire : support d’un mouvement, i. e.courbe paramétrée par unevariable s quelconque.

Mouvement sur la trajectoire

Evolution du paramètre s en fonction du temps t .

Robotique mobile

Navigation

Problématiques et approches

Problématique

Navigation

Navigation d’un robot mobile : recherche d’un mouvement dans l’espace desconfigurations sans collisions, d’une configuration initiale q0 = q(t0) à uneconfiguration finale qf = q(tf ).

Deux approches :

planification de trajectoire (ou de mouvement), exécution du mouvementcombinaison de primitives réactives (dont l’enchaînement est du ressortd’un planificateur de tâches).

Robotique mobile

Navigation

Problématiques et approches

Problématique

Navigation

Navigation d’un robot mobile : recherche d’un mouvement dans l’espace desconfigurations sans collisions, d’une configuration initiale q0 = q(t0) à uneconfiguration finale qf = q(tf ).

Deux approches :planification de trajectoire (ou de mouvement), exécution du mouvement

combinaison de primitives réactives (dont l’enchaînement est du ressortd’un planificateur de tâches).

Robotique mobile

Navigation

Problématiques et approches

Problématique

Navigation

Navigation d’un robot mobile : recherche d’un mouvement dans l’espace desconfigurations sans collisions, d’une configuration initiale q0 = q(t0) à uneconfiguration finale qf = q(tf ).

Deux approches :planification de trajectoire (ou de mouvement), exécution du mouvementcombinaison de primitives réactives (dont l’enchaînement est du ressortd’un planificateur de tâches).

Robotique mobile

Navigation

Problématiques et approches

Planification, exécution

Planification directe de mouvementMéthodes directes de planification d’un mouvement : pas de techniqueefficace (contraintes dynamiques et évitement d’obstacles).

Robotique mobile

Navigation

Problématiques et approches

Planification, exécution

Schéma classique

planification d’une trajectoire évitant les obstacles :

q : [0, 1] −→ Cfrees �→ q(s),

telle que q(0) = q0 et q(1) = qf

paramétrage en temps de cette trajectoire pour satisfaire les contraintes(limites des actionneurs notamment) : calcul du mouvement sur latrajectoireexécution du mouvement.

Robotique mobile

Navigation

Problématiques et approches

Planification, exécution

Variante

planification d’une trajectoire évitant les obstacles :

q : [0, 1] −→ Cfrees �→ q(s),

telle que q(0) = q0 et q(1) = qf

exécution du mouvement : suivi de la trajectoire de référence.

Robotique mobile

Navigation

Planification de chemin

Plan

1 Introduction

2 ModélisationDéfinitionsRoulement sans glissement et contraintes non holonômesLes grandes classes de robots mobiles et leurs modèlesReprésentation d’état et commandabilité

3 PerceptionCapteurs en robotique mobileLocalisationConstruction de carte

4 NavigationProblématiques et approchesPlanification de cheminExecution du mouvement

Robotique mobile

Navigation

Planification de chemin

Généralités

Problème touchant de nombreux domainesHistoriquement : nombreux développements en robotique mobile (faiblesdimensions, problèmes analytiques).

Aujourd’hui : algorithmes performants + vitesse des calculateurs : nombre deproblèmes solvables bien plus grand, notamment très nombreux degrés deliberté (logistique, animation, bioinformatique, robotique avancée).

Planification = matière en soit, à la rencontre entre mécanique etalgorithmique.

Robotique mobile

Navigation

Planification de chemin

Espace des configurations

Espace des configurations d’un point et d’un solide

Espace des configurations = ensemble des configurations accessibles (sanscollision) :

robot ponctuel : espace librerobot de taille et de forme quelconque : on peut se ramener au problèmede planification d’un robot ponctuel.

Robotique mobile

Navigation

Planification de chemin

Espace des configurations

Espace des configurations d’un point et d’un solide

Espace des configurations = ensemble des configurations accessibles (sanscollision) :

robot ponctuel : espace librerobot de taille et de forme quelconque : on peut se ramener au problèmede planification d’un robot ponctuel.

Robotique mobile

Navigation

Planification de chemin

Espace des configurations

Espace des configurations d’un point et d’un solide

Espace des configurations = ensemble des configurations accessibles (sanscollision) :

robot ponctuel : espace librerobot de taille et de forme quelconque : on peut se ramener au problèmede planification d’un robot ponctuel.

Robotique mobile

Navigation

Planification de chemin

Décomposition en cellules (1)

départ, but et obstacles (pour un robot point)

Robotique mobile

Navigation

Planification de chemin

Décomposition en cellules (1)

représentation discrète de Cfree

Robotique mobile

Navigation

Planification de chemin

Décomposition en cellules (1)

création d’un graphe reliant les différentes composantes adjacentes del’environnement

Robotique mobile

Navigation

Planification de chemin

Décomposition en cellules (1)

identification des cellules départ et butrecherche d’une solution dans le graphechemin sans collisions entre cellules.

Robotique mobile

Navigation

Planification de chemin

Décomposition en cellules (1)

AméliorationDécomposition non exacte en cellules régulières ou non : précision auvoisinage des obstacles.

Robotique mobile

Navigation

Planification de chemin

Décomposition en cellules (1)

AméliorationDécomposition non exacte en cellules régulières ou non : précision auvoisinage des obstacles.

Robotique mobile

Navigation

Planification de chemin

Méthode du potentiel (1)

Potentiels attractif et répulsif :

U+ =12(q − qf )

T K (q − qf ),

U− =

= ηi

2

�1

d(q−Obsi )− 1

d0

�2, si d(q − Obsi) � d0

U− = 0, sinon.

Robotique mobile

Navigation

Planification de chemin

Méthode du potentiel (2)

Diffère sensiblement des autre méthodes évoquées dans cette section(raisonnement pas purement géométrique) :

simple et compatible temps-réelméthode non complètepotentiel total = potentiel attractif + potentiels répulsifs : minima locaux

qf

−∇U−

−∇U+

tactique de dégagement, fonctions de navigation

Robotique mobile

Navigation

Planification de chemin

Roadmaps (1)

Diagramme de Voronoï

Diagramme de Voronoï : lignes d’égale distance aux obstacles dans unenvironnement polygonal plan (navigation au plus loin des obstacles).

Robotique mobile

Navigation

Planification de chemin

Roadmaps (2)

Graphes de visibilité

Graphe de visibilité : graphe capturant la topologie de l’environnement àpartir des sommets d’obstacles polygonaux.

relier départ et arrivée aux sommets visibles des obstacles

Robotique mobile

Navigation

Planification de chemin

Roadmaps (2)

Graphes de visibilité

Graphe de visibilité : graphe capturant la topologie de l’environnement àpartir des sommets d’obstacles polygonaux.

reproduire avec les nouveaux nœuds

Robotique mobile

Navigation

Planification de chemin

Roadmaps (2)

Graphes de visibilité

Graphe de visibilité : graphe capturant la topologie de l’environnement àpartir des sommets d’obstacles polygonaux.

recherche d’un chemin dans le graphe.

Robotique mobile

Navigation

Planification de chemin

Roadmaps (3)

Méthodes d’échantillonnage aléatoire

Planificateurs complets trop lents, planificateurs heuristiques trop peufiables : méthodes d’échantillonnage aléatoire = planificateurs complets entemps infini.

Utilisation de la puissance de calcul et construction préalable d’un graphe del’environnement : grande rapidité.

Robotique mobile

Navigation

Planification de chemin

Roadmaps (4)

Algorithme PRM

Méthode initiale : probabilistic roadmap (PRM)Les nœuds du graphe ne sont pas choisis selon la géométrie del’environnement et des obstacles, mais par un tirage aléatoire dans Cfree.

Robotique mobile

Navigation

Planification de chemin

Roadmaps (4)

Algorithme PRM

Méthode initiale : probabilistic roadmap (PRM)Les nœuds du graphe ne sont pas choisis selon la géométrie del’environnement et des obstacles, mais par un tirage aléatoire dans Cfree.

Robotique mobile

Navigation

Planification de chemin

Roadmaps (4)

Algorithme PRM

Méthode initiale : probabilistic roadmap (PRM)Les nœuds du graphe ne sont pas choisis selon la géométrie del’environnement et des obstacles, mais par un tirage aléatoire dans Cfree.

Robotique mobile

Navigation

Planification de chemin

Roadmaps (5)

Algorithme PRM+ visibilité

Ajout au graphe uniquement des points reliant deux configurations nonvisibles l’une par rapport à l’autre précédemment.

Robotique mobile

Navigation

Planification de chemin

Cas des systèmes non holonômes

ProblèmePlanification de trajectoire = problème géométrique.Contraintes non holonômes = problème cinématique.

Problème difficile combinant planification et commande.

Première possibilité :planification de trajectoire sans tenir compte des contraintescinématiquesmoyennant l’existence de lois de commande locales relier lesconfigurations de cette trajectoire pour calculer une trajectoireadmissibleoptimisation : lissage de la trajectoire

Alternative : planification avec intégration de contrainte [LaValle 04].

Robotique mobile

Navigation

Execution du mouvement

Plan

1 Introduction

2 ModélisationDéfinitionsRoulement sans glissement et contraintes non holonômesLes grandes classes de robots mobiles et leurs modèlesReprésentation d’état et commandabilité

3 PerceptionCapteurs en robotique mobileLocalisationConstruction de carte

4 NavigationProblématiques et approchesPlanification de cheminExecution du mouvement

Robotique mobile

Navigation

Execution du mouvement

Les différents problèmes de commande

DéfinitionsDeux tâches :

suivi de chemin : calcul de la commande permettant d’asservir ladistance d’un point du robot à une trajectoire de référence, la vitesse dedéplacement longitudinale étant donnéela stabilisation de mouvement : calcul de la commande du systèmepermettant de stabiliser asymptotiquement à zéro l’erreur de suivi parrapport à un robot de référence.

Hypothèses

Problèmes de commande par retour d’état.

Etude de l’unicycle exclusivement.

Robotique mobile

Navigation

Execution du mouvement

Paramétrage

�x �

�y �θe

O�x

�xr

�yr

Or

θr

O�

�y

Pb

a

Robotique mobile

Navigation

Execution du mouvement

Suivi de chemin (1)

Problématique

Trouver ω pour asservir d(P, C) avec v donnée.

�x �

�y �θe

O�x

P db

aO�

C

θr

Or

�xr

�yr

�y

Rr mobile sur C : repère de Frénet associé à

l’abscisse curviligne s.

Robotique mobile

Navigation

Execution du mouvement

Suivi de chemin (2)

Existence et unicité de Or

P toujours à une distance de C inférieure à son rayon de courbure ρ(s) enOr , i. e. |d | < |ρ(s)|, ∀s ∈ [0 1] ou :

|dc(s)| < 1, ∀s ∈ [0 1]

avec c(s) courbure de C en Or .

Robotique mobile

Navigation

Execution du mouvement

Suivi de chemin (3)

Modélisation dans le repère de Frénet

Modélisation = mouvements de P et R� dans Rr et celui de Rr sur C,complètement caractérisés par la donnée de s, d et θe.

Robotique mobile

Navigation

Execution du mouvement

Suivi de chemin (4)

Modélisation dans le repère de Frénet

Calcul de θe.

Courbure c(s) de C en Or :

c(s) = dθr

ds

et donc :

θe = θ − θr ,

= θ − dθr

dsdsdt

,

soit :θe = ω − sc(s).

Robotique mobile

Navigation

Execution du mouvement

Suivi de chemin (4)

Modélisation dans le repère de Frénet

Calcul de θe.

Courbure c(s) de C en Or :

c(s) = dθr

dset donc :

θe = θ − θr ,

= θ − dθr

dsdsdt

,

soit :θe = ω − sc(s).

Robotique mobile

Navigation

Execution du mouvement

Suivi de chemin (4)

Modélisation dans le repère de Frénet

Calcul de θe.

Courbure c(s) de C en Or :

c(s) = dθr

dset donc :

θe = θ − θr ,

= θ − dθr

dsdsdt

,

soit :θe = ω − sc(s).

Robotique mobile

Navigation

Execution du mouvement

Suivi de chemin (4)

Modélisation dans le repère de Frénet

Calcul de θe.

Courbure c(s) de C en Or :

c(s) = dθr

dset donc :

θe = θ − θr ,

= θ − dθr

dsdsdt

,

soit :θe = ω − sc(s).

Robotique mobile

Navigation

Execution du mouvement

Suivi de chemin (4)

Modélisation dans le repère de Frénet

Calcul de θe.

Courbure c(s) de C en Or :

c(s) = dθr

dset donc :

θe = θ − θr ,

= θ − dθr

dsdsdt

,

soit :θe = ω − sc(s).

Robotique mobile

Navigation

Execution du mouvement

Suivi de chemin (5)

Modélisation dans le repère de Frénet

Calcul de s et d .

Vitesse du point P :

�vP = �vO� + �ω ∧−→O�P,

= v�x � + ω�z ∧ (a�x � + b�y �),

= (v − bω)(cos θe�xr + sin θe�yr ) + aω(− sin θe�xr + cos θe�yr ),

soit :�vP = ((v − bω) cos θe − aω sin θe)�xr + ((v − bω) sin θe + aω cos θe)�yr .

Robotique mobile

Navigation

Execution du mouvement

Suivi de chemin (5)

Modélisation dans le repère de Frénet

Calcul de s et d .

Vitesse du point P :

�vP = �vO� + �ω ∧−→O�P,

= v�x � + ω�z ∧ (a�x � + b�y �),

= (v − bω)(cos θe�xr + sin θe�yr ) + aω(− sin θe�xr + cos θe�yr ),

soit :�vP = ((v − bω) cos θe − aω sin θe)�xr + ((v − bω) sin θe + aω cos θe)�yr .

Robotique mobile

Navigation

Execution du mouvement

Suivi de chemin (5)

Modélisation dans le repère de Frénet

Calcul de s et d .

Vitesse du point P :

�vP = �vO� + �ω ∧−→O�P,

= v�x � + ω�z ∧ (a�x � + b�y �),

= (v − bω)(cos θe�xr + sin θe�yr ) + aω(− sin θe�xr + cos θe�yr ),

soit :�vP = ((v − bω) cos θe − aω sin θe)�xr + ((v − bω) sin θe + aω cos θe)�yr .

Robotique mobile

Navigation

Execution du mouvement

Suivi de chemin (5)

Modélisation dans le repère de Frénet

Calcul de s et d .

Vitesse du point P :

�vP = �vO� + �ω ∧−→O�P,

= v�x � + ω�z ∧ (a�x � + b�y �),

= (v − bω)(cos θe�xr + sin θe�yr ) + aω(− sin θe�xr + cos θe�yr ),

soit :�vP = ((v − bω) cos θe − aω sin θe)�xr + ((v − bω) sin θe + aω cos θe)�yr .

Robotique mobile

Navigation

Execution du mouvement

Suivi de chemin (5)

Modélisation dans le repère de Frénet

Calcul de s et d .

Vitesse du point P :

�vP = �vO� + �ω ∧−→O�P,

= v�x � + ω�z ∧ (a�x � + b�y �),

= (v − bω)(cos θe�xr + sin θe�yr ) + aω(− sin θe�xr + cos θe�yr ),

soit :�vP = ((v − bω) cos θe − aω sin θe)�xr + ((v − bω) sin θe + aω cos θe)�yr .

Robotique mobile

Navigation

Execution du mouvement

Suivi de chemin (5)

Modélisation dans le repère de Frénet

Calcul de s et d .

Vitesse du point P :

�vP = �vO� + �ω ∧−→O�P,

= v�x � + ω�z ∧ (a�x � + b�y �),

= (v − bω)(cos θe�xr + sin θe�yr ) + aω(− sin θe�xr + cos θe�yr ),

soit :�vP = ((v − bω) cos θe − aω sin θe)�xr + ((v − bω) sin θe + aω cos θe)�yr .

Robotique mobile

Navigation

Execution du mouvement

Suivi de chemin (6)

Modélisation dans le repère de Frénet

Calcul de s et d .

ou :

�vP =ddt

�−→OP

�,

=ddt

�−→

OOr +−→Or P

�,

= s�xr +ddt

�d�yr

�,

= s�xr + d�yr − d θr�xr ,

soit :�vP = s (1 − dc(s))�xr + d�yr .

Robotique mobile

Navigation

Execution du mouvement

Suivi de chemin (6)

Modélisation dans le repère de Frénet

Calcul de s et d .

ou :

�vP =ddt

�−→OP

�,

=ddt

�−→

OOr +−→Or P

�,

= s�xr +ddt

�d�yr

�,

= s�xr + d�yr − d θr�xr ,

soit :�vP = s (1 − dc(s))�xr + d�yr .

Robotique mobile

Navigation

Execution du mouvement

Suivi de chemin (6)

Modélisation dans le repère de Frénet

Calcul de s et d .

ou :

�vP =ddt

�−→OP

�,

=ddt

�−→

OOr +−→Or P

�,

= s�xr +ddt

�d�yr

�,

= s�xr + d�yr − d θr�xr ,

soit :�vP = s (1 − dc(s))�xr + d�yr .

Robotique mobile

Navigation

Execution du mouvement

Suivi de chemin (6)

Modélisation dans le repère de Frénet

Calcul de s et d .

ou :

�vP =ddt

�−→OP

�,

=ddt

�−→

OOr +−→Or P

�,

= s�xr +ddt

�d�yr

�,

= s�xr + d�yr − d θr�xr ,

soit :�vP = s (1 − dc(s))�xr + d�yr .

Robotique mobile

Navigation

Execution du mouvement

Suivi de chemin (6)

Modélisation dans le repère de Frénet

Calcul de s et d .

ou :

�vP =ddt

�−→OP

�,

=ddt

�−→

OOr +−→Or P

�,

= s�xr +ddt

�d�yr

�,

= s�xr + d�yr − d θr�xr ,

soit :�vP = s (1 − dc(s))�xr + d�yr .

Robotique mobile

Navigation

Execution du mouvement

Suivi de chemin (6)

Modélisation dans le repère de Frénet

Calcul de s et d .

ou :

�vP =ddt

�−→OP

�,

=ddt

�−→

OOr +−→Or P

�,

= s�xr +ddt

�d�yr

�,

= s�xr + d�yr − d θr�xr ,

soit :�vP = s (1 − dc(s))�xr + d�yr .

Robotique mobile

Navigation

Execution du mouvement

Suivi de chemin (7)

Modélisation dans le repère de Frénet

Calcul de s et d .

On récapitule :�vP = ((v − bω) cos θe − aω sin θe)�xr + ((v − bω) sin θe + aω cos θe)�yr ,

�vP = s (1 − dc(s))�xr + d�yr ,

soit :

s =(v − bω) cos θe − aω sin θe

1 − dc(s),

d = (v − bω) sin θe + aω cos θe,

θe = ω − sc(s).

Robotique mobile

Navigation

Execution du mouvement

Suivi de chemin (7)

Modélisation dans le repère de Frénet

Calcul de s et d .

On récapitule :�vP = ((v − bω) cos θe − aω sin θe)�xr + ((v − bω) sin θe + aω cos θe)�yr ,

�vP = s (1 − dc(s))�xr + d�yr ,

soit :

s =(v − bω) cos θe − aω sin θe

1 − dc(s),

d = (v − bω) sin θe + aω cos θe,

θe = ω − sc(s).

Robotique mobile

Navigation

Execution du mouvement

Suivi de chemin (7)

Modélisation dans le repère de Frénet

Calcul de s et d .

On récapitule :�vP = ((v − bω) cos θe − aω sin θe)�xr + ((v − bω) sin θe + aω cos θe)�yr ,

�vP = s (1 − dc(s))�xr + d�yr ,

soit :

s =(v − bω) cos θe − aω sin θe

1 − dc(s),

d = (v − bω) sin θe + aω cos θe,

θe = ω − sc(s).

Robotique mobile

Navigation

Execution du mouvement

Suivi de chemin (7)

Modélisation dans le repère de Frénet

Calcul de s et d .

On récapitule :�vP = ((v − bω) cos θe − aω sin θe)�xr + ((v − bω) sin θe + aω cos θe)�yr ,

�vP = s (1 − dc(s))�xr + d�yr ,

soit :

s =(v − bω) cos θe − aω sin θe

1 − dc(s),

d = (v − bω) sin θe + aω cos θe,

θe = ω − sc(s).

Robotique mobile

Navigation

Execution du mouvement

Suivi de chemin (7)

Modélisation dans le repère de Frénet

Calcul de s et d .

On récapitule :�vP = ((v − bω) cos θe − aω sin θe)�xr + ((v − bω) sin θe + aω cos θe)�yr ,

�vP = s (1 − dc(s))�xr + d�yr ,

soit :

s =(v − bω) cos θe − aω sin θe

1 − dc(s),

d = (v − bω) sin θe + aω cos θe,

θe = ω − sc(s).

Robotique mobile

Navigation

Execution du mouvement

Suivi de chemin (8)

Suivi de chemin sans contrôle d’orientationOn recherche une loi ω permettant de stabiliser la distance à la courbe deréférence sans contrôle particulier de l’orientation.

Hypothèse : b = 0 (point P sur l’axe).

Alors :d = v sin θe + aω cos θe.

La loi :ω = − v sin θe

a cos θe− v

cos θek(d , θe)d ,

avec k(d , θe) � 0 tel que k(d , ±π2 ) = 0 donne :

d = −vak(d , θe)d .

Robotique mobile

Navigation

Execution du mouvement

Suivi de chemin (8)

Suivi de chemin sans contrôle d’orientationOn recherche une loi ω permettant de stabiliser la distance à la courbe deréférence sans contrôle particulier de l’orientation.

Conséquences

d = −vak(d , θe)d .

a, v et k(d , θe) > 0 : |d | décroissante le long de toute trajectoire.

v de signe constant et suffisamment régulière : d tend asymptotiquementvers 0.

Robotique mobile

Navigation

Execution du mouvement

Suivi de chemin (9)

Suivi de chemin avec contrôle d’orientation. . .stabiliser la distance à la trajectoire et l’erreur en orientation.

Hypothèse : a = b = 0.

Si on pose x1 = s, et u1 = s alors x1 = u1 :

u1 =v cos θe

1 − dc(s)

on pose : x2 = d , x3 = (1 − dc(s)) tan θe et u2 = x3 d’où :

Nouvelle représentation

x1 = u1,

x2 = u1x3,

x3 = u2.

Retour d’état ω à v donné reformulé :retour d’état u2, avec u1 déduit de v .

Robotique mobile

Navigation

Execution du mouvement

Suivi de chemin (9)

Suivi de chemin avec contrôle d’orientation. . .stabiliser la distance à la trajectoire et l’erreur en orientation.

Hypothèse : a = b = 0. Si on pose x1 = s, et u1 = s alors x1 = u1 :

u1 =v cos θe

1 − dc(s)

on pose : x2 = d , x3 = (1 − dc(s)) tan θe et u2 = x3 d’où :

Nouvelle représentation

x1 = u1,

x2 = u1x3,

x3 = u2.

Retour d’état ω à v donné reformulé :retour d’état u2, avec u1 déduit de v .

Robotique mobile

Navigation

Execution du mouvement

Suivi de chemin (9)

Suivi de chemin avec contrôle d’orientation. . .stabiliser la distance à la trajectoire et l’erreur en orientation.

Hypothèse : a = b = 0. Si on pose x1 = s, et u1 = s alors x1 = u1 :

u1 =v cos θe

1 − dc(s)

on pose : x2 = d , x3 = (1 − dc(s)) tan θe et u2 = x3 d’où :

Nouvelle représentation

x1 = u1,

x2 = u1x3,

x3 = u2.

Retour d’état ω à v donné reformulé :retour d’état u2, avec u1 déduit de v .

Robotique mobile

Navigation

Execution du mouvement

Suivi de chemin (9)

Suivi de chemin avec contrôle d’orientation. . .stabiliser la distance à la trajectoire et l’erreur en orientation.

Hypothèse : a = b = 0. Si on pose x1 = s, et u1 = s alors x1 = u1 :

u1 =v cos θe

1 − dc(s)

on pose : x2 = d , x3 = (1 − dc(s)) tan θe et u2 = x3 d’où :

Nouvelle représentation

x1 = u1,

x2 = u1x3,

x3 = u2.

Retour d’état ω à v donné reformulé :retour d’état u2, avec u1 déduit de v .

Robotique mobile

Navigation

Execution du mouvement

Suivi de chemin (9)

Suivi de chemin avec contrôle d’orientation. . .stabiliser la distance à la trajectoire et l’erreur en orientation.

Hypothèse : a = b = 0. Si on pose x1 = s, et u1 = s alors x1 = u1 :

u1 =v cos θe

1 − dc(s)

on pose : x2 = d , x3 = (1 − dc(s)) tan θe et u2 = x3 d’où :

Nouvelle représentation

x1 = u1,

x2 = u1x3,

x3 = u2.

Retour d’état ω à v donné reformulé :retour d’état u2, avec u1 déduit de v .

Robotique mobile

Navigation

Execution du mouvement

Suivi de chemin (9)

Système chaîné

x1 = u1, x2 = u1x3, et x3 = u2.

Retour d’état proportionnel :

u2 = x3 = −u1k2x2 − |u1|k3x3

avec k2 et k3 deux constantes strictement positives, alors :

x3 + |u1|k3x3 + u21k2x3 = 0,

si u1 constant quelconque.

ConclusionSystème stable en x2 = x3 = 0 et donc en d = 0 et θe = 0.

Robotique mobile

Navigation

Execution du mouvement

Suivi de chemin (9)

Système chaîné

x1 = u1, x2 = u1x3, et x3 = u2.

Retour d’état proportionnel :

u2 = x3 = −u1k2x2 − |u1|k3x3

avec k2 et k3 deux constantes strictement positives, alors :

x3 + |u1|k3x3 + u21k2x3 = 0,

si u1 constant quelconque.

ConclusionSystème stable en x2 = x3 = 0 et donc en d = 0 et θe = 0.

Robotique mobile

Navigation

Execution du mouvement

Suivi de chemin (9)

Système chaîné

x1 = u1, x2 = u1x3, et x3 = u2.

Retour d’état proportionnel :

u2 = x3 = −u1k2x2 − |u1|k3x3

avec k2 et k3 deux constantes strictement positives, alors :

x3 + |u1|k3x3 + u21k2x3 = 0,

si u1 constant quelconque.

ConclusionSystème stable en x2 = x3 = 0 et donc en d = 0 et θe = 0.

Robotique mobile

Navigation

Execution du mouvement

Suivi de chemin (9)

Système chaîné

x1 = u1, x2 = u1x3, et x3 = u2.

Retour d’état proportionnel :

u2 = x3 = −u1k2x2 − |u1|k3x3

avec k2 et k3 deux constantes strictement positives, alors :

x3 + |u1|k3x3 + u21k2x3 = 0,

si u1 constant quelconque.

ConclusionSystème stable en x2 = x3 = 0 et donc en d = 0 et θe = 0.

Robotique mobile

Navigation

Execution du mouvement

Suivi de chemin (10)

On peut montrer que pour u1 quelconque et :

x22 (0) +

x23 (0)k2

<1

c2max

où cmax est la courbure maximale le long de C, la condition sur la distance|− dc(s)| < 1 est vérifiée et la fonction :

V (x) = 12

�x2

2 +x2

3

k2

tend vers zéro si u1 est suffisamment régulière (bornée, dérivable et dedérivée bornée et ne tendant pas vers zéro lorsque t tend vers l’infini).

Robotique mobile

Navigation

Execution du mouvement

Stabilisation de mouvement (1)

Problématique

Asservir la posture d’un robot mobile par rapport à un robot virtuel deréférence.

�x �

�y �

robotréférence

Pb

a

θe

O�x

�xr

�yr

OrO�

θr

�y

Robotique mobile

Navigation

Execution du mouvement

Stabilisation de mouvement (2)

Mouvement de référenceRepère de référence pas nécessairement arbitraire :

mouvement de référence admissible : x r = B(x r )ur

mouvement de référence non admissible.

Formulation du problème

Soit un mouvement admissible x r (t) sur [0, T ] tel que x r = B(x r )ur .

Problème de stabilisation : trouver u(x , x r , t) tq l’origine du systèmed’erreur :

xe = B(x)u − B(x r )ur

soit asymptotiquement stable.

Robotique mobile

Navigation

Execution du mouvement

Stabilisation de mouvement (3)

Mouvements admissibles sans contrôle d’orientationTrouver (v , ω) pour stabiliser l’erreur entre position courante et position deréférence, sans contrainte sur l’orientation.

Hypothèse : on considère P tq a �= 0 et b = 0.Alors :

pe = �vP/R − pr

=

�cos θ − sin θsin θ cos θ

��v − bω

�− pr .

avec pr la position de Or et pe l’erreur de position dans R.

Robotique mobile

Navigation

Execution du mouvement

Stabilisation de mouvement (3)

Mouvements admissibles sans contrôle d’orientationTrouver (v , ω) pour stabiliser l’erreur entre position courante et position deréférence, sans contrainte sur l’orientation.

Hypothèse : on considère P tq a �= 0 et b = 0.

Alors :

pe = �vP/R − pr

=

�cos θ − sin θsin θ cos θ

��v − bω

�− pr .

avec pr la position de Or et pe l’erreur de position dans R.

Robotique mobile

Navigation

Execution du mouvement

Stabilisation de mouvement (3)

Mouvements admissibles sans contrôle d’orientationTrouver (v , ω) pour stabiliser l’erreur entre position courante et position deréférence, sans contrainte sur l’orientation.

Hypothèse : on considère P tq a �= 0 et b = 0.Alors :

pe = �vP/R − pr

=

�cos θ − sin θsin θ cos θ

��v − bω

�− pr .

avec pr la position de Or et pe l’erreur de position dans R.

Robotique mobile

Navigation

Execution du mouvement

Stabilisation de mouvement (4)

Avec (inversible car a �= 0) :

u =

�u1

u2

�=

�cos θ − sin θsin θ cos θ

��1 −b0 a

��vω

on a :pe = u − pr .

Stabiliser par retour d’état :

u = pr − K pe,

avec K diagonale positive.

Remarque

Dans ce qui précède c’est le point P qui est asservi à la position de Or et ilpersiste une erreur constante de a (or a �= 0 impérativement).

Robotique mobile

Navigation

Execution du mouvement

Stabilisation de mouvement (4)

Avec (inversible car a �= 0) :

u =

�u1

u2

�=

�cos θ − sin θsin θ cos θ

��1 −b0 a

��vω

on a :pe = u − pr .

Stabiliser par retour d’état :

u = pr − K pe,

avec K diagonale positive.

Remarque

Dans ce qui précède c’est le point P qui est asservi à la position de Or et ilpersiste une erreur constante de a (or a �= 0 impérativement).

Robotique mobile

Navigation

Execution du mouvement

Stabilisation de mouvement (4)

Avec (inversible car a �= 0) :

u =

�u1

u2

�=

�cos θ − sin θsin θ cos θ

��1 −b0 a

��vω

on a :pe = u − pr .

Stabiliser par retour d’état :

u = pr − K pe,

avec K diagonale positive.

Remarque

Dans ce qui précède c’est le point P qui est asservi à la position de Or et ilpersiste une erreur constante de a (or a �= 0 impérativement).

Robotique mobile

Navigation

Execution du mouvement

Stabilisation de mouvement (4)

Avec (inversible car a �= 0) :

u =

�u1

u2

�=

�cos θ − sin θsin θ cos θ

��1 −b0 a

��vω

on a :pe = u − pr .

Stabiliser par retour d’état :

u = pr − K pe,

avec K diagonale positive.

Remarque

Dans ce qui précède c’est le point P qui est asservi à la position de Or et ilpersiste une erreur constante de a (or a �= 0 impérativement).

Robotique mobile

Navigation

Execution du mouvement

Stabilisation de mouvement (5)

Mouvements admissibles avec contrôle d’orientationTrouver (v , ω) pour stabiliser l’erreur ξe entre posture courante et posture deréférence.

Dans Rr :

ξe =

xe

ye

θe

=

cos θr sin θr 0− sin θr cos θr 0

0 0 1

x − xr

x − yr

θ − θr

.

Alors :

xe

ye

θe

=

cos θe

sin θe

0

v +

001

ω −

100

vr −

−ye

xe

1

ωr .

Robotique mobile

Navigation

Execution du mouvement

Stabilisation de mouvement (5)

Mouvements admissibles avec contrôle d’orientationTrouver (v , ω) pour stabiliser l’erreur ξe entre posture courante et posture deréférence.

Dans Rr :

ξe =

xe

ye

θe

=

cos θr sin θr 0− sin θr cos θr 0

0 0 1

x − xr

x − yr

θ − θr

.

Alors :

xe

ye

θe

=

cos θe

sin θe

0

v +

001

ω −

100

vr −

−ye

xe

1

ωr .

Robotique mobile

Navigation

Execution du mouvement

Stabilisation de mouvement (5)

Mouvements admissibles avec contrôle d’orientationTrouver (v , ω) pour stabiliser l’erreur ξe entre posture courante et posture deréférence.

Dans Rr :

ξe =

xe

ye

θe

=

cos θr sin θr 0− sin θr cos θr 0

0 0 1

x − xr

x − yr

θ − θr

.

Alors :

xe

ye

θe

=

cos θe

sin θe

0

v +

001

ω −

100

vr −

−ye

xe

1

ωr .

Robotique mobile

Navigation

Execution du mouvement

Stabilisation de mouvement (6)

Mouvements admissibles avec contrôle d’orientationTrouver (v , ω) pour stabiliser l’erreur ξe entre posture courante et posture deréférence.

Avec : x1 = xe, x2 = ye, x3 = tan θe, u1 = v cos θe − vr et u2 = ω−ωrcos2 θe

, définipartout sauf en θe = ±π

2 :

x1 = u1 + ωr x2,

x2 = u1x3 − ωr x1 + vr x3,

x3 = u2.

Alors :

u1 = −k1|vr |(x1 + x2x3),

u2 = −k2vr x2 − k3|vr |x3,

avec k1, k2 et k3 > 0 rend le système asymptotiquement stable si vr estsuffisamment régulière (bornée, dérivable et de dérivée bornée et ne tendantpas vers zéro lorsque t tend vers l’infini).

Robotique mobile

Navigation

Execution du mouvement

Stabilisation de mouvement (6)

Mouvements admissibles avec contrôle d’orientationTrouver (v , ω) pour stabiliser l’erreur ξe entre posture courante et posture deréférence.

Avec : x1 = xe, x2 = ye, x3 = tan θe, u1 = v cos θe − vr et u2 = ω−ωrcos2 θe

, définipartout sauf en θe = ±π

2 :

x1 = u1 + ωr x2,

x2 = u1x3 − ωr x1 + vr x3,

x3 = u2.

Alors :

u1 = −k1|vr |(x1 + x2x3),

u2 = −k2vr x2 − k3|vr |x3,

avec k1, k2 et k3 > 0 rend le système asymptotiquement stable si vr estsuffisamment régulière (bornée, dérivable et de dérivée bornée et ne tendantpas vers zéro lorsque t tend vers l’infini).

Robotique mobile

Navigation

Execution du mouvement

Stabilisation de mouvement (6)

Mouvements admissibles avec contrôle d’orientationTrouver (v , ω) pour stabiliser l’erreur ξe entre posture courante et posture deréférence.

Avec : x1 = xe, x2 = ye, x3 = tan θe, u1 = v cos θe − vr et u2 = ω−ωrcos2 θe

, définipartout sauf en θe = ±π

2 :

x1 = u1 + ωr x2,

x2 = u1x3 − ωr x1 + vr x3,

x3 = u2.

Alors :

u1 = −k1|vr |(x1 + x2x3),

u2 = −k2vr x2 − k3|vr |x3,

avec k1, k2 et k3 > 0 rend le système asymptotiquement stable si vr estsuffisamment régulière (bornée, dérivable et de dérivée bornée et ne tendantpas vers zéro lorsque t tend vers l’infini).

Robotique mobile

Navigation

Execution du mouvement

Stabilisation de mouvement (7)

Mouvements quelconques avec contrôle d’orientation

Existence de fonctions transverses liées à un groupe de champs de vecteurs.

Avec x1 = x , x2 = y , x3 = tan θ, u1 = v cos θ et u2 = ωcos2 θ

on obtient :

x1 = u1,

x2 = u1x3,

x3 = u2.

Robotique mobile

Navigation

Execution du mouvement

Stabilisation de mouvement (7)

Mouvements quelconques avec contrôle d’orientation

Existence de fonctions transverses liées à un groupe de champs de vecteurs.

Avec x1 = x , x2 = y , x3 = tan θ, u1 = v cos θ et u2 = ωcos2 θ

on obtient :

x1 = u1,

x2 = u1x3,

x3 = u2.

Robotique mobile

Navigation

Execution du mouvement

Stabilisation de mouvement (7)

Mouvements quelconques avec contrôle d’orientation

Existence de fonctions transverses liées à un groupe de champs de vecteurs.

Avec x1 = x , x2 = y , x3 = tan θ, u1 = v cos θ et u2 = ωcos2 θ

on obtient :

x1 = u1,

x2 = u1x3,

x3 = u2.

Robotique mobile

Navigation

Execution du mouvement

Stabilisation de mouvement (8)

Vecteur de commande étendu : ue = (u1 u2 α)T .

Soit ε1 et ε2 > 0 :

fε(α) =

fε, 1(α)fε, 2(α)fε, 3(α)

=

ε1 cosα

ε1ε24 sin 2αε2 sinα

.

Avec z = x − fε(α), on a :

z = B(x , α) ue

où :

B(x , α) =

1 0 ε1 sinαx3 0 − ε1ε2

2 cos 2α0 1 −ε2 cosα

.

Robotique mobile

Navigation

Execution du mouvement

Stabilisation de mouvement (8)

Vecteur de commande étendu : ue = (u1 u2 α)T .Soit ε1 et ε2 > 0 :

fε(α) =

fε, 1(α)fε, 2(α)fε, 3(α)

=

ε1 cosα

ε1ε24 sin 2αε2 sinα

.

Avec z = x − fε(α), on a :

z = B(x , α) ue

où :

B(x , α) =

1 0 ε1 sinαx3 0 − ε1ε2

2 cos 2α0 1 −ε2 cosα

.

Robotique mobile

Navigation

Execution du mouvement

Stabilisation de mouvement (8)

Vecteur de commande étendu : ue = (u1 u2 α)T .Soit ε1 et ε2 > 0 :

fε(α) =

fε, 1(α)fε, 2(α)fε, 3(α)

=

ε1 cosα

ε1ε24 sin 2αε2 sinα

.

Avec z = x − fε(α), on a :

z = B(x , α) ue

où :

B(x , α) =

1 0 ε1 sinαx3 0 − ε1ε2

2 cos 2α0 1 −ε2 cosα

.

Robotique mobile

Navigation

Execution du mouvement

Stabilisation de mouvement (9)

z = B(x , α) ue

CommandeLa commande ue = B(x , α)−1 K z , avec K une matrice définie négative,stabilise le robot mobile en d = 0.

ConclusionLe système converge vers z = 0 , mais B(x , α) n’est pas toujours inversible(points singuliers).

Robotique mobile

Navigation

Execution du mouvement

Stabilisation de mouvement (9)

z = B(x , α) ue

CommandeLa commande ue = B(x , α)−1 K z , avec K une matrice définie négative,stabilise le robot mobile en d = 0.

ConclusionLe système converge vers z = 0 , mais B(x , α) n’est pas toujours inversible(points singuliers).

Robotique mobile

Navigation

Execution du mouvement

Stabilisation de mouvement (9)

z = B(x , α) ue

CommandeLa commande ue = B(x , α)−1 K z , avec K une matrice définie négative,stabilise le robot mobile en d = 0.

ConclusionLe système converge vers z = 0 , mais B(x , α) n’est pas toujours inversible(points singuliers).

Robotique mobile

Navigation

Execution du mouvement

Stabilisation de mouvement (10)

Changement de variables plus complexe :

z =

x1 − fε, 1(α)

x2 − fε, 2(α)− x1(x3 − fε, 3(α))x3 − fε, 3(α)

.

Alors :z = D(x1)B(fε(α),α)ue

avec :

D(x1) =

1 0 00 1 −x1

0 0 1

.

Robotique mobile

Navigation

Execution du mouvement

Stabilisation de mouvement (10)

Changement de variables plus complexe :

z =

x1 − fε, 1(α)

x2 − fε, 2(α)− x1(x3 − fε, 3(α))x3 − fε, 3(α)

.

Alors :z = D(x1)B(fε(α),α)ue

avec :

D(x1) =

1 0 00 1 −x1

0 0 1

.

Robotique mobile

Navigation

Execution du mouvement

Stabilisation de mouvement (11)

z = D(x1)B(fε(α),α)ue

CommandeLa commande ue = B(fε(α), α)−1D(x1)

−1 K z stabilise le système versz = 0 avec une convergence exponentielle et α converge ainsiexponentiellement vers une constante.

ConclusionsPas de points singuliers (D(x1) et B(fε(α), α) toujours inversibles).

Convergence de x vers 0 ajustée par ε1 et ε2 (petites valeurs : manœuvres)

Robotique mobile

Navigation

Execution du mouvement

Stabilisation de mouvement (11)

z = D(x1)B(fε(α),α)ue

CommandeLa commande ue = B(fε(α), α)−1D(x1)

−1 K z stabilise le système versz = 0 avec une convergence exponentielle et α converge ainsiexponentiellement vers une constante.

ConclusionsPas de points singuliers (D(x1) et B(fε(α), α) toujours inversibles).

Convergence de x vers 0 ajustée par ε1 et ε2 (petites valeurs : manœuvres)

Robotique mobile

Navigation

Execution du mouvement

Stabilisation de mouvement (11)

z = D(x1)B(fε(α),α)ue

CommandeLa commande ue = B(fε(α), α)−1D(x1)

−1 K z stabilise le système versz = 0 avec une convergence exponentielle et α converge ainsiexponentiellement vers une constante.

ConclusionsPas de points singuliers (D(x1) et B(fε(α), α) toujours inversibles).

Convergence de x vers 0 ajustée par ε1 et ε2 (petites valeurs : manœuvres)