• 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  compte  des  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    

L

p

= [x

, y

, θ

]

T

p

(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 =

  x y θ

  = p +

 

∆s cos(θ + ∆θ/2)

∆s sin(θ + ∆θ/2)

∆θ

  p =

  x y θ

 

,  

,  

,  

(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 =

  x y θ

 

p

= f (x, y, θ , ∆s

d

, ∆s

g

) =

  x y θ

  +

 

 

∆sd+∆sg

2

cos �

θ +

∆sd2L∆sg

∆sd+∆sg

2

sin �

θ +

∆sd2L∆sg

∆sd−∆sg L

 

 

,  

,  

(8)

Exercice  1  

Fonc2on  «  MAJEtatOdometrie  »:  

(9)

Exercice  1  

Dans  le  ficher  «  simu.m  »  

Ssss  

s  

(10)

Exercice  1  

Ss  

(11)

Exercice  2  

Propaga2on  d’erreurs:  

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

Σ

L, k

g

, k

d

(12)

Exercice  2  

Σ

= cov(∆s

d

, ∆s

g

) =

� k

d

| ∆s

d

| 0

0 k

g

| ∆s

g

|

Σ

p

= ∇

p

f · Σ

p

· ( ∇

p

f )

T

+ ∇

dg

f · Σ

· ( ∇

dg

f )

T

p

f =

� ∂f

∂ x

∂ f

∂ y

∂ f

∂θ

=

 

1 0 − ∆s sin(θ + ∆θ/2) 0 1 ∆s cos(θ + ∆θ/2)

0 0 1

 

dgf =

� ∂f

∂∆sd

∂f

∂∆sg

=



1

2 cos(θ+∆θ/2)− ∆s2L sin(θ+ ∆θ/2) 12 cos(θ+∆θ/2) + ∆s2L sin(θ+ ∆θ/2)

1

2 sin(θ +∆θ/2) + ∆s2L cos(θ+ ∆θ/2) 12 sin(θ +∆θ/2)− ∆s2L cos(θ+ ∆θ/2)

1/L −1/L



(13)

Exercice  2  

Propaga2on  d’erreurs:  

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

de  covariance   Σ p

(14)

Exercice  2  

Propaga2on  d’erreurs:  

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

Dans  le  ficher  «  simu.m  »  

(15)

Exercice  3  

Propaga2on  d’erreurs:  

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

(16)

Exercice  3  

Propaga2on  d’erreurs:  

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

Note:  

•  Les  racines  carrées  des  valeurs  propres  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

(17)

Exercice  3  

Propaga2on  d’erreurs:  

Fonc)on   «   extraitEllipse   »   pour   calculer   l’ellipse  

d’incer)tude  associée  à   Σ p

(18)

Exercice  3  

Propaga2on  d’erreurs:  

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

Dans  le  ficher  «  simu.m  »  

Références

Documents relatifs

Here, it is stated that a complete natural language HRI system should be able to: (i) react in the same time frame of a human; (ii ) process all stages of language processing in

Contrairement aux approches classiques et déjà largement étudiées dans la littérature, nous nous intéressons plus particulièrement aux modèles réalistes dans lesquelles les

Même avec des mesures non bruités, la quantité d’information qui vient des capteurs est trop faible pour identifier la pose du robot à partir d’un seul percept.

•  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

•  Grande mémoire nécessaire si la taille des cellules est pe(te.. Environnement con(nu

a)  Représenta(on avec un ensemble de droites (finies ou infinies) b)  Extrac(on de droites à par(r de mesures laser, sonar ou d’images. •  Transformée

 Pour autant, maintien d’une grande diversité des « technologies de production (entre enseignes, mais aussi parfois au sein d’une même enseigne.  Les entrepôts

Following such examples and taking into account that the scientist community working in the robotics field can also benefit of following a similar approach, we decided