• Aucun résultat trouvé

Localisa)on et naviga)on de robots

N/A
N/A
Protected

Academic year: 2022

Partager "Localisa)on et naviga)on de robots"

Copied!
18
0
0

Texte intégral

(1)

Localisa)on et naviga)on de robots

TD1: Odométrie

Fabio MORBIDI

(2)

TD1: Odométrie

Objec2f: Es)ma)on de la trajectoire d’un robot mobile

•  Calculer la pose d’un robot unicycle (à conduite différen)elle) à par)r de l’odométrie

•  Tracer la posi)on instantanée et simuler la trajectoire du robot

•  Iden)fica)on de l’erreur (incer)tude) par le calcul de la matrice de covariance

•  Extrac)on et affichage des ellipses d’erreur sur la

(x, y, ✓)

(3)

TD1: Odométrie

Matériel: Répertoire packTD1.zip Fichier « simu.m » u)lise :

•  Fichier « initRobot » pour les paramètres du robot

•  Fichier « initBruits » pour simuler:

•  Le bruit d’une commande mal appliquée

•  Le bruit de percep)on des capteurs

•  Fichier « genereTrajs »

•  pour générer la trajectoire du robot

•  S’il applique parfaitement la commande

•  Si on prends en compte les bruits

•  Donne les valeurs des angles de chaque roue: et '

(4)

TD1: Odométrie

Matériel: Répertoire packTD1.zip

Répertoire « ou)ls » con)ent des fonc)ons:

•  « Drawarrow » : Dessiner une flèche

•  « Drawroundedrect » : Dessiner des rectangles

•  « Drawellipse » : Dessiner une ellipse

•  « Drawrobot » : Dessiner un robot

(5)

Exercice 1

Fonc2on « MAJEtatOdometrie »:

•  Entrées:

•  Les distance parcourues par la roue gauche et droite entre deux instants de temps et la pose courante du robot

•  La largeur de l'essieu,

•  Sor2e:

•  Mise à jour de la pose :

U)liser ce@e fonc)on dans le fichier « simu.m » pour tracer le robot à chaque instant

p

0

= [x

0

, y

0

, ✓

0

]

T

p

L

(6)

Exercice 1

Fonc2on « MAJEtatOdometrie »:

x = s cos(✓ + ✓/2)

y = s sin(✓ + ✓/2)

✓ = s

d

s

g

L

s = s

d

+ s

g

2

p 0 = 2 6 4

x 0 y 0

0 3

7 5 = p + 2 6 4

s cos(✓ + ✓/2) s sin(✓ + ✓/2)

3 7 5 p =

2 6 4

x y

✓ 3 7 5

,

,

,

(7)

Exercice 1

Fonc2on « MAJEtatOdometrie »:

x = s cos(✓ + ✓/2)

y = s sin(✓ + ✓/2)

✓ = s

d

s

g

L

s = s

d

+ s

g

2

p = 2 6 4

x y

✓ 3 7 5

p

0

= f (x, y, ✓, s

d

, s

g

) = 2 6 4

x y

✓ 3 7 5 +

2 6 6 6 6 4

sd+ sg

2

cos ⇣

✓ +

sd2L sg

sd+ sg

2

sin ⇣

✓ +

sd2L sg

sd sg L

3 7 7 7 7 5

,

,

(8)

Exercice 1

Fonc2on « MAJEtatOdometrie »:

(9)

Exercice 1

Dans le ficher « simu.m »

Ssss

s

(10)

Exercice 1

Ss

(11)

Exercice 2

Propaga2on de l’erreur:

Fonc)on « propageErreurs » pour le calcul de la matrice de covariance

•  Entrées:

•  La matrice de covariance associée à l’état précédent

•  L’état à l’instant précédent

•  L’incrément courant

•  Les paramètres

•  Sor2e:

•  Matrice de covariance

p

p

0

L, k

g

, k

d

(12)

Exercice 2

⌃ = cov( s

d

, s

g

) =

"

k

d

| s

d

| 0

0 k

g

| s

g

|

#

p0

= r

p

f · ⌃

p

· ( r

p

f )

T

+ r

dg

f · ⌃ · ( r

dg

f )

T

r

p

f =

 @ f

@ x

@ f

@ y

@ f

@✓ = 2 6 4

1 0 s sin(✓ + ✓/2) 0 1 s cos(✓ + ✓/2)

0 0 1

3 7 5

r dgf =

 @f

@ sd

@f

@ sg = 2 64

1

2 cos(✓ + ✓/2) 2Ls sin(✓ + ✓/2) 12 cos(✓ + ✓/2) + 2Ls sin(✓ + ✓/2)

1

2 sin(✓ + ✓/2) + 2Ls cos(✓ + ✓/2) 12 sin(✓ + ✓/2) 2Ls cos(✓ + ✓/2)

1/L 1/L

3 75

(13)

Exercice 2

Propaga2on de l’erreur:

Fonc)on « propageErreurs » pour le calcul de la matrice

de covariance p

0

(14)

Exercice 2

Propaga2on de l’erreur:

Fonc)on « propageErreurs » pour le calcul de la matrice de covariance p

0

Dans le ficher « simu.m »

(15)

Exercice 3

Propaga2on de l’erreur:

Fonc)on « extraitEllipse » pour calculer l’ellipse d’incer)tude associée à

Affichez ces ellipses (cf. dossier ou<ls) à un pas régulier sur la trajectoire du robot (mais n’affichez pas toutes les ellipses, sinon ce sera illisible !)

p

0

(16)

Exercice 3

Propaga2on de l’erreur:

Fonc)on « extraitEllipse » pour calculer l’ellipse d’incer)tude associée à

Remarque:

•  Les racines carrées des valeurs propres les plus fortes de la matrice de covariance donnent les longueurs des demi-axes de l’ellipse

•  Le vecteur propre associé à la valeur propre la plus forte donne l’orienta)on de l’ellipse

p

0

(17)

Exercice 3

Propaga2on de l’erreur:

Fonc)on « extraitEllipse » pour calculer l’ellipse

d’incer)tude associée à p

0

(18)

Exercice 3

Propaga2on de l’erreur:

Fonc)on « extraitEllipse » pour calculer l’ellipse d’incer)tude associée à p

0

Dans le ficher « simu.m »

Références

Documents relatifs

Compléter les termes employés dans les caractéristiques et représenter le vecteur associé... Donner les caractéristiques du

Nous avons donc ensuite, en faisant varier l’épaisseur de nos deux sections et en réduisant les dimensions des deux demi-axes de notre ellipse, cherché à

différentes peuvent occasionner le même son; dans ce cas, leurs racines carrées paraissent toujours être dans un rapport simple ou harmonique.. 4° Les sons rendus par

Utiliser ce résultat pour exprimer les racines carrées

http://jouons-aux-mathematiques.fr JMCFP-complexes-algebre2 Calculer les racines carrées complexe

Lorque les axes (Fast, Slow) des demi onde sont confondus ou orthogonaux (croisés), donner respectivement le retard équivalent à l'ensemble des deux demi onde. Les insérer

Les plus fortes surcotes et vagues en Camargue sont associé au type de temps montrant une dépression autour du Golfe de Gascogne associé à des hautes

cd- La meilleure représentation en une dimension (en 2) est la projection sur l'axe associé (les axes) à la plus forte valeur propre (aux deux