• Aucun résultat trouvé

Localisation et navigation de robots

N/A
N/A
Protected

Academic year: 2022

Partager "Localisation et navigation de robots "

Copied!
50
0
0

Texte intégral

(1)

Localisation et navigation de robots

UPJV, Département EEA M2 EEAII, parcours ViRob

Fabio MORBIDI

Laboratoire MIS

Équipe Perception et Robotique E-mail: fabio.morbidi@u-picardie.fr Année Universitaire 2015/2016

Mercredi 10h00-12h30 et jeudi 9h00-12h30 salle TP202

(2)

Chapitre 2 : Navigation

F. Morbidi 2014/2015

Localisation et navigation de robots

UFR des Sciences, Département EEA M2 EEAII, parcours ViRob

(3)

2

Plan du cours

Chapitre 1: Localisation

Chapitre 2: Navigation

1.1 Introduction et défis

2.1 Stratégies de navigation 2.2 Architectures de contrôle 2.3 Navigation vers un but

1.3 Filtrage et fusion de capteurs 1.2 Odométrie

1.4 Autres techniques de localisation

2.4 Evitement d’obstacles

(4)

Introduction

•  Naviguer

▫  Etymologie : voyage sur l’eau ou dans les airs

▫  Etendu à tout véhicule

•  XV

ième

et XVI

ième

siècles

▫  Souvent associé à une idée de localisation

▫  Pourquoi?

  Naviguer = déterminer une route par points de passage: une trajectoire !

  Les points de passage sont à déterminer (localiser)

3

Christophe Colomb Sextant

(5)

Introduction

•  Navigation

  Beaucoup plus ancienne

  Dès l’apparition d’une forme de vie

•  Définition générique

▫  Action de déplacement

▫  Possibilité d’ajouter

  Un point de départ

  Un but

  Des contraintes ou règles

4

D

Courbure B

limitée

(6)

Introduction

•  Selon Levitt la navigation est définie par les trois questions suivantes*:

1.  Où suis-je ?

2.  Où sont les autres endroits par rapport à moi ?

3.  Comment puis-je atteindre les autres endroits à partir d'ici ?

5

* “Qualitative navigation for mobile robots", T.S. Levitt, D.T. Lawton, Artificial Intelligence, vol. 44, n. 3, pp. 305-360, 1990

•  Selon le standard IEEE 172-1983:

“La navigation est le processus de guider un véhicule afin de parvenir à la destination”

(7)

Plan du chapitre

Stratégies de navigation Architectures de contrôle

Navigation vers un but Evitement d’obstacles

Partie 2

Partie 3 Partie 1

6

Partie 4

(8)

Partie 1 : Stratégies de navigation

7

(9)

Les différents types de navigation

•  Stratégies de navigation

▫  Diverses

▫  Leurs classifications aussi …

▫  Classification hiérarchique de Trullier à 5 niveaux*:

1.  Approche d’un objet 2.  Guidage

3.  Action associée à un lieu 4.  Navigation topologique 5.  Navigation métrique

8

* “Biologically based artificial navigation systems: Review and prospects", O. Trullier, S.I. Wiener, A. Berthoz, J.-A. Meyer, Progress in Neurobiology, vol. 51, n. 5, pp. 483-544, 1997

“Animat” : un organisme artificiel, soit un animal simulé ou un robot semblable à un animal

(10)

Stratégies de navigation

1.  Approche d’un objet

▫  Déplacement vers un objet perceptible

▫  Technique de remontée de gradient

▫  ex : véhicules de Braitenberg*

  2 capteurs de lumière

  Atteindre ou fuir la source lumineuse

  Actions réflexes

 Perception  action

▫  Stratégie locale : fonctionne ssi le but est visible

BUT

9

* Valentino Braitenberg (1926-2011): scientifique italien expert en neurosciences et cybernétique

(11)

Stratégies de navigation

2.  Guidage

▫  Atteindre un but non visible

▫  But caractérisé par des amers situés autour

▫  Technique de descente de gradient

 Diriger le robot dans la direction qui permet de

reproduire cette configuration (comportement animal)

▫  Actions réflexes

▫  Stratégie locale

 Les amers caractérisant le but doivent être perceptibles

10

•  “A mobile robot employing insect strategies for navigation", D. Lambrinos, R. Möller, T. Labhart, R. Pfeifer, R. Wehner, Robot. Auton. Syst., vol. 30, n. 1, pp. 39-64, 2000

•  “The visual homing problem: an example of robotics/biology cross fertilization", P. Gaussier, C. Joulain, J.-P. Banquet, S. Leprêtre, A. Revel, Robot. Auton. Syst., vol. 30, n. 1, pp. 155-180, 2000

Amer = landmark ou beacon en anglais

(12)

Stratégies de navigation

3.  Action associée à un lieu

▫  Capacité de navigation globale

▫  Rejoindre un but

  Invisible

  Amers voisins invisibles

▫  Représentation interne de l’environnement

  Ensemble de lieux

  A un lieu correspond une action à effectuer

▫  Enchainement des actions = route

▫  Autonomie plus importante, mais … chemin figé !

Atteindre un but distant

11

(13)

Stratégies de navigation

•  Action associée à un lieu

D A

a

a a a a

a a

a a a

Obstacles

Lieux mémorisés Zone inexplorée

a Direction à prendre pour

atteindre le lieu A Trajectoire suivie par le robot

12

(14)

Stratégies de navigation

4.  Navigation topologique

▫  Extension de la précédente

▫  Ajout à la représentation interne

  Mémorisation des relations spatiales entre les lieux

▫  Déplacement d’un lieu à l’autre sans but fixé

▫  Modèle interne = graphe

  Calcul de chemins entre deux lieux

  Choix (optimal) d’un chemin

▫  Limites : lieux et chemins connus au préalable

Planification

13

nœud arête

(15)

Stratégies de navigation

•  Navigation topologique

D

A Obstacles

Lieux mémorisés Zone inexplorée

Possibilité de passer d’un lieu à l’autre Trajectoire suivie par le robot

14

(16)

Stratégies de navigation

5.  Navigation métrique

▫  Capacité étendue de la précédente

▫  Planification de chemins dans des zones inexplorées

▫  Informations à connaître

  Possibilité de passage d’un lieu à l’autre

  Positions métriques relatives des différents lieux

▫  Trajectoire

  Composition de vecteurs : aller d’un lieu à l’autre

  La possibilité de déplacement n’a pas à être forcément connue sous forme de lien

15

(17)

Stratégies de navigation

•  Navigation métrique

D A

Obstacles

Lieux mémorisés Zone inexplorée

Possibilité de passer d’un lieu à l’autre Trajectoire suivie par le robot

Possibilité de passer d’un lieu à l’autre déduite de leur position relative x

y

16

(18)

Stratégies de navigation: résumé

▫  3 premières catégories

 Actions réflexes

 Navigation réactive

 Avantages

▫  Simple et pas de modèle global de l’environnement

 Inconvénient

▫  Applications souvent restreintes …

 Comportement essentiel : problèmes avec obstacles imprévus

 Monde vivant : stratégies insectoïdes (ex. abeilles)

17

(19)

▫  2 dernières catégories

  Navigation globale

  Atteindre un but arbitraire de l’environnement

  Modèle interne du monde

 Supporte la planification

 Mémoire spatial indépendante d’un but

  Navigation par carte

  Monde vivant

 Haut niveau : l’Etre humain

 Instinct : le rat

18

Stratégies de navigation: résumé

(20)

19

“Biologically based artificial navigation systems: Review and prospects"

O. Trullier, S.I. Wiener, A. Berthoz, J.-A. Meyer, Progress in Neurobiology, vol. 51, n. 5, pp. 483-544, 1997

*Taxis = “motion/orientation of an organism in response to an external stimulus”

1 *

2

3

4

5

Place

recognition- triggered response

(21)

Stratégies de navigation

•  Conclusion partielle

▫  Homme, animal, robot mobile

 Cartes presque indispensables

▫  Mais construire et utiliser ces cartes est complexe

▫  Robots  Mélange réactivité et planification

(très) court terme long terme

20

(22)

21

(23)

Partie 2 : Architectures de contrôle

22

(24)

Architectures de contrôle

•  Robot mobile : système complexe et exigeant

•  Arbitrage à faire

▫  Exécution précise du plan pour atteindre le but

▫  Gestion des événements imprévus

•  Outils

▫  Capteurs

▫  Effecteurs

▫  Ressources

•  Besoin d’un ensemble logiciel gérant les outils

pour organiser la perception, la décision et l’action

23

(25)

Architectures de contrôle

1.  Contrôleurs hiérarchiques

▫  Vient de l’IA (premiers pas …)

▫  Modèle du monde quasi parfait

▫  Fonctionnement

  Modélisation de l’environnement

  Planification des actions

  Exécution du plan

▫  Limites

  Environnement statique

  Boucle de décision trop grande

  Pas de contrôle sur les actions

Perception

Planification

Action

24

(26)

Architectures de contrôle

2.  Contrôleurs réactifs

▫  Ensemble de comportements réactifs en parallèle

  Évitement d’obstacle

  Déplacement aléatoire

  Déplacement vers un but

  Fuite d’un point

  ….

▫  Pas de modèle du monde

Perception Action

25

Idée utilisée aussi en animation par ordinateur (“boids”)

“Flocks, herds and schools: A distributed behavioral model”, C.W. Reynolds, ACM SIGGRAPH Computer Graphics, vol. 21, n. 4, pp. 25-34, 1987

(27)

Architectures de contrôle

2.  Contrôleurs réactifs

▫  Avantages

  Rapide/robuste en environnement dynamique et complexe

  Pas de problème de modélisation de l’environnement

  Efficacité pour une tâche donnée

▫  Inconvénients

  Tâches limitées

  Pas de planification possible

▫  Guidage

  Choisir la bonne action à exécuter au bon moment

  Problème de sélection de l’action

 « solution » : hiérarchie des comportements

26

(28)

Architectures de contrôle

3.  Contrôleurs hybrides

▫  Solution intermédiaire moderne

▫  Deux niveaux

  Haut : localisation, cartographie et planification

  Bas : exécution et réactivité

▫  Avantages

  Réactions rapides

  Planification d’actions

Perception Action

Planification

27

(29)

Partie 3 : Navigation vers un but

28

(30)

Navigation vers un but

•  Stratégies de navigation réactive

  Architectures purement réactives

  Module bas niveau d’architecture hybride

•  Qu’utilisent ces architectures ?

▫  Valeurs de capteurs

  Courantes …

… ou faible fenêtre temporelle

•  Pas de modèle interne

Décision de l’action à effectuer

29

(31)

Partie 3 : Navigation vers un but

1.  Véhicules de Braitenberg (Catégorie 1)

30

(32)

Véhicules de Braitenberg

  « Vehicles: Experiments in Synthetic Psychology » Valentino Braitenberg, MIT press, 1986

31

Couverture Page 87

(33)

Véhicules de Braitenberg

•  Robots extrêmement simples peuvent évoluer par l'ajout de capteurs, d'actionneurs et de connexions simulant des réseaux de neurones

•  Malgré leur simplicité, les 14 versions de robots présentées dans le livre ont des comportements complexes et

autonomes comme l'agression, l'attirance, la fuite (peur), etc.

32

Version 1 (1 capteur, 1 actionneur) Version 2 (2 capteurs, 2 actionneurs)

(34)

Véhicules de Braitenberg

•  Architecture interne

▫  Liens capteurs-moteurs:

▫  La fonction définit le comportement

 Atteindre le but

 Fuir le but

BUT

33

• 

Comportement pour rejoindre un but visible

•  Robot:

o Plateforme différentielle à deux roues , commandables en vitesse

o Deux capteurs de lumière à l’avant ,

v

mi

= f

i

(c

1

, c

2

)

, i ∈ {1, 2}

f

i m

1

m2

c2 c1

m1 m2

c1 c2

(35)

Véhicules de Braitenberg

•  Atteindre le but

•  Fuir

34

v

mi

= λ c

j

, i � = j, i, j ∈ { 1, 2 } , λ > 0

v

mi

= λ c

i

, i ∈ { 1, 2 } , λ > 0

•  Remontée/descente de gradient sur l’intensité de lumière (arrêt ?)

•  Simple contrôleur proportionnel

(36)

Partie 3 : Navigation vers un but

2. Modèle de Cartwright et Collet (Catégorie 2)

35

(37)

Modèle de Cartwright et Collet

•  Snapshot model: utilisé par les abeilles*

•  Atteindre un but défini par des amers autour

•  Capacités de perception

▫  Direction des amers

▫  Taille des amers

•  Le robot mémorise le but par la configuration des amers vus depuis sa position « snapshot »

36

* “Landmark maps for honeybees" B. Cartwright, T. Collett, Biological Cybernetics, vol. 57, n. 1-2, pp. 85-93, 1987

x y

(38)

Modèle de Cartwright et Collet

•  Amers vus depuis le but

Amer 1

Amer 2

Amer 3

37

Rétine à

360o de l’abeille

(39)

Modèle de Cartwright et Collet

•  Appariement

Amer 1

Amer 2

Amer 3

38

Position courante

(40)

Modèle de Cartwright et Collet

Prise d’image des amers

But atteint ?

Comparaison des configurations courantes et

mémorisées des amers

Appariement amers perçus/mémorisés

Calcul des vecteurs liant les deux fin oui

Déplacement de longueur fixée dans la direction

39

Combinaison des vecteurs

Direction pour rejoindre le but non

(41)

Modèle de Cartwright et Collet

•  Conclusion sur ce modèle

▫  Modèle simple à descente de gradient sur la configuration des amers pour atteindre le but

▫  Mais …

 Ne fonctionne pas dans tout l’environnement

 Choix crucial de la configuration des amers (ambiguïtés sont possibles)

 Qualité primordiale de l’appariement des amers

 Si erreur, le vecteur de direction sera faux

 Facilité par un estimé préalable de l’orientation du robot

40

(42)

Partie 3 : Navigation vers un but

3. Asservissement

41

(43)

Asservissement

42

Asservissement = servoing en anglais

•  Rappel (cours d’automatique)

Consigne Erreur

Correcteur

Commande Mesure

Fonction de transfert du procédé

r* + _ e

C

u

P

y

•  Concevoir le correcteur C pour générer une commande u qui garantit:

t

lim

→∞

y(t) = r

(ex. position)

(44)

Asservissement visuel

•  Commande en boucle fermée avec capteur visuel*

▫  Contrôle en utilisant des infos visuelles

▫  Système monoculaire, stéréo, omnidirectionnel

•  Objectifs

▫  Positionnement face à un objet

▫  Son suivi

▫  Sa saisie (bras-robot)

Navigation vers un but 43

* “Visual Servo Control, Part I: Basic Approaches”, F. Chaumette, S. Hutchinson, IEEE Robotics and Automation Magazine, vol. 13, n. 4, pp. 82-90, 2006

(45)

Asservissement visuel 3D

•  Position-based control

▫  r : attitude (posit. et orien.) de la caméra par rapport au but

▫  Tâche : atteindre une situation r* de référence

▫  Beaucoup de méthodes basées sur un modèle 3D (partiellement) connu

▫  Avantage

  Commande non spécifique au capteur

▫  Inconvénient

  Difficile d’estimer précisément la pose

(bon modèle de capteur, bon calibrage, etc.)

  Couplage avec localisation

44

(46)

Asservissement visuel 2D

•  Image-based control

▫  Utilisation directe des info visuelles de l’image s

 Ex. points, segments, plans, épipôles, etc.

▫  Tâche spécifiée directement dans l’image

 Atteindre des indices visuels de référence s*

▫  Loi de commande

 Contrôle le mouvement de la caméra

 Objectif : annuler l’erreur s(t) - s*

▫  Pas de reconstruction 3D ni d’estimation de pose

 Plus simple et robuste!

45

(47)

Asservissement visuel 2D

46

www.youtube.com/watch?v=3UQ6AmNnx-g

(48)

Asservissement visuel 2D

•  Minimisation de l’erreur

•  Par une décroissance exponentielle (par ex.):

•  On a

•  La commande (le vecteur vitesse ) est determinée

47

valeur de référence (const.)

d s

d t = ∂ s

∂ u

d u

d t = J

s

v

˙

e(t) = − λ e(t), λ > 0

, s =

e(t) = s(t) − s

, J

s

=

jacobien de l’image

v(t) = − λ J

+s

(s(t) − s

)

J+s Js

où est a la pseudo-inverse de (en fait n’est pas nécessairement une matric carrée)

v

Js

s ˙ =

(49)

Asservissement visuel 2D

•  Le gros du travail

▫  Obtention de la relation liant les infos visuelles au mouvement de la caméra

▫  Dérivée des infos sensorielles s par rapport à la

commande du robot

▫  Matrice d’interaction ou jacobien de l’image

48

Solution possible: approche hybride, asserv. visuel 2 ½ D

“2 ½ D visual servoing", E. Malis, F. Chaumette, S. Boudet, IEEE Trans. Robotics and Automation, vol. 15, n. 2, pp. 238-250, 1999

(50)

Robotics Toolbox pour Matlab

49

P. Corke (Queensland University of Technology )

•  Toolbox téléchargeable à l’adresse:

www.petercorke.com/Robotics_Toolbox.html

•  Liste complète des fonctions du toolbox:

www.petercorke.com/RTB/r9/html/index_alpha.html

•  TD 3 (27 Nov. 14.00-15.30)

•  Création et déplacement d’un robot mobile

•  Simulation du filtre particulaire pour la localisation

•  Filtre de Kalman étendu pour la navigation

Références

Documents relatifs

Mes résultats suggèrent que le ralentissement de la maturation des cellules granulaires et leur maintien dans un stade immature plus longtemps par la délétion de

Abstract Associative learning is known to modify foraging behavior in numerous parasitic wasps. This is in agreement with optimal foraging theory, which predicts that the wasps

• => Create an array of strings called fullNames that contains the values for “firstName” and. “lastName” from the dictionary separated by

Un tel phénomène est intéressant à plus d'un titre, dans le sens où il permet d'étudier les niveaux d'organisation interactionnelle vers lesquels les participants s'orientent

3.  Action associée à un lieu 4.  Navigation topologique 5.  Navigation métrique.. * “Biologically based artificial navigation systems: Review and prospects",

•  Pour un robot de type unicycle, les chemins droits générés par la méthode RRT pour passer de à , ne sont pas admissibles, en général q s q b..

▫  Déplacement suivant les lignes de courant d’un potentiel obtenu par la perception de l’environnement.. “Real-time obstacle avoidance for manipulators and mobile robots”,

•  Au lieu d’utiliser une constante pour générer , on peut définir un pas qui est une fonction de l’espace libre disponible (on peut aller jusqu’à ,