Outils pour utilisateurs

Outils du site


robotique:r_cerda:programmation

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Dernière révision Les deux révisions suivantes
robotique:r_cerda:programmation [21/02/2015 17:15]
sky99
robotique:r_cerda:programmation [21/02/2015 17:25]
sky99
Ligne 98: Ligne 98:
 [[https://​github.com/​sarinkhan/​R.Cerda/​blob/​master/​r3.py|La troisième version de ce code, r3.py]] permet au robot de changer de sens de rotation plutôt que de tourner toujours à gauche. En effet, dans les précédentes version, le robot évite systématiquement les obstacles par la gauche, ce qui entraîne qu'il finit par tourner en rond. Ici, lorsque le robot à tourné un certain nombre de fois du même côté, il décide d'​éviter les obstacles en tournant dans l'​autre sens. Nous considérons ici que tourner d'un coté inclut toute la série d'​instructions entre le moment ou le robot commence à tourner pour éviter un obstacle et le moment ou il a complètement terminé sa rotation, reprenant sa route. On s'​assure ainsi que le robot ne fasse pas des allers retours de gauche à droite : quand il commence à tourner, il continue jusqu'​à avoir trouvé un chemin dégagé. [[https://​github.com/​sarinkhan/​R.Cerda/​blob/​master/​r3.py|La troisième version de ce code, r3.py]] permet au robot de changer de sens de rotation plutôt que de tourner toujours à gauche. En effet, dans les précédentes version, le robot évite systématiquement les obstacles par la gauche, ce qui entraîne qu'il finit par tourner en rond. Ici, lorsque le robot à tourné un certain nombre de fois du même côté, il décide d'​éviter les obstacles en tournant dans l'​autre sens. Nous considérons ici que tourner d'un coté inclut toute la série d'​instructions entre le moment ou le robot commence à tourner pour éviter un obstacle et le moment ou il a complètement terminé sa rotation, reprenant sa route. On s'​assure ainsi que le robot ne fasse pas des allers retours de gauche à droite : quand il commence à tourner, il continue jusqu'​à avoir trouvé un chemin dégagé.
  
 +Cette vidéo illustre le comportement du robot lorsqu'​il exécute ce programme :
 {{ youtube>​2Qf3TnlQzeo?​large |Algorithme basique d'​évitement d'​obstacle avec gestion des collisions et changement de sens d'​évitement d'​obstacles (r3.py)}} {{ youtube>​2Qf3TnlQzeo?​large |Algorithme basique d'​évitement d'​obstacle avec gestion des collisions et changement de sens d'​évitement d'​obstacles (r3.py)}}
  
  
-On peut voir le comportement du robot exécutant cet algorithme ​dans la vidéo ​ci dessous ​:  + 
-{{ youtube>tiKDK-l2gis?large |Algorithme ​basique ​d'​évitement d'obstacle ​avec gestion des collisions ​(r2.py)}}+===== Algorithme avancé d'​évitement d'​obstacle,​ avec analyse de l'​environnement proche : r4.py ===== 
 +[[https://​github.com/​sarinkhan/​R.Cerda/​blob/​master/​r4.py|La quatrième version de ce code, r4.py]] reprend les bases posées sur les précédents algorithmes. Toutefois, au lieu d'​éviter d'un côté ou de l'​autre les obstacles "au hasard", ​le robot qui rencontre un objet devant lui se tournera légèrement à gauche et à droite pour mesurer la distance de chaque côté. Il choisira alors de tourner du côté ou la distance est la plus grande. Une fois qu'il a commencé à tourner, il continuera jusqu'​à ce que l'​obstacle ne soit plus dans sa trajectoire. Cette approche permet au robot de choisir ​la trajectoire d'​évitement la plus rapide lorsqu'​il rencontre un mur : ainsi il s'​éloignera du mur par le côté le plus ouvert. 
 + 
 +La vidéo ​suivante illustre le comportement du robot lorsqu'​il exécute ce programme ​
 +{{ youtube>IWt7p3Al-Fo?large |Algorithme ​évolué ​d'​évitement d'obstacles ​avec analyse de l'​environnement proche ​(r4.py)}} 
 +Je n'ai pas encore téléversé le fichier sur le github, mais je vais chercher le code pour pouvoir le faire au plus vite, à l'​adresse du lien en début de cette section.
robotique/r_cerda/programmation.txt · Dernière modification: 21/02/2015 17:27 par sky99