Club robotique de Sophia-Antipolis

Accueil > Projets, études > Nos robots > Le droïde R2-D2 > Programmation du robot R2-D2 > Évitement d’obstacles et de chutes de R2-D2

Évitement d’obstacles et de chutes de R2-D2

vendredi 10 août 2012, par Julien H.

Lors de la conception du robot droïde, la priorité a été mise sur la sécurité. Il s’agit d’un robot mobile autonome de plus d’un mètre de haut, pesant plus qu’un enfant de même taille. Il est donc primordial qu’il puisse s’arrêter de lui même en cas de problème : collision, perte d’équilibre, voire chute.

La solution ne peut pas simplement être un bouton d’arrêt d’urgence : nous n’aurons pas forcément accès au robot. Cela ne peut pas non plus être une télécommande : la personne qui la tiendrait n’aurait pas forcément la rapidité d’intervention suffisante.

Non, la bonne solution consiste à intervenir automatiquement au cœur du mécanisme de déplacement : par une limitation de vitesse ou un arrêt des moteurs selon des capteurs dédiés à la sécurité. Cette boucle de contrôle sera tout le temps active et de priorité maximale, même lorsque le robot sera télécommandé (aurions-nous plus confiance en nos algorithmes que dans la prudence des futurs pilotes de R2 ?).

Les types de capteurs

Grâce à notre longue expérience en robotique autonome, nous savons qu’il faut souvent multiplier les sources d’information. On prévoit d’utiliser :

 un système optique : des capteurs infra-rouge
 un système sonore : des émetteurs / récepteurs à ultra-sons
 un système électrique : une mesure du courant consommé
 un système physique : des capteurs de vitesse et d’accélération

Les deux premiers sont connus et simples : il s’agit de mesurer une distance ou de détecter un obstacle par coupure d’un faisceau à une distance prédéfinie : l’information est simple à lire, numérique ou analogique et directement utilisable, en tout ou rien ou en supérieur/inférieur à un seuil réglable. Ils serviront donc à arrêter une course normale du robot avant une collision, avec un obstacle mobile (quelqu’un passe devant R2-D2) ou un obstacle fixe (le pilote devient fou ou l’algorithme d’IA ne l’a pas vu). L’asservissement du robot pourra même corriger la trajectoire et la distance relative à l’obstacle en demandant non pas un arrêt des moteurs mais une vitesse dans la direction opposée, afin de tout le temps maintenir une zone de sécurité autour de lui. Hé oui, vous avez reconnu le fonctionnement de notre Soucoupe Terro Navale, un projet conçu depuis l’année dernière dans le but d’améliorer notre connaissance des algorithmes de contrôle. Tout était prévu selon un schéma global visant à préparer le terrain pour R2-D2 [1] !!

Une autre application de ces premiers types de capteurs est la détection du vide sous le robot, que ce soit lorsqu’on s’approche d’un escalier ou lorsque le robot est soulevé de terre. Comme nous croisons rarement la route d’un Rancor, il s’agit surtout de détecter les chutes.

Le troisième est connu dans les compétitions de robotique mais nous l’avons rarement mis en application : il consiste à déterminer le courant consommé, comme le fait un contrôleur de puissance pour faire varier la vitesse d’un moteur, mais cette information seule n’est pas suffisante, il faut la corréler à la vitesse estimée du robot. L’idée est de détecter une vitesse trop faible par rapport au courant consommé, d’en déduire que le robot force contre un obstacle et d’arrêter par précaution le moteur. Cela semble malin mais tout un tas de paramètres rentrent en jeu : il peut s’agir d’une légère pente, d’un poids supplémentaire posé sur le robot à bon escient (on vous a pas dit que notre R2-D2 ferait barman ?) ou d’un passage sur un câble ou un pas de porte (ce dernier cas apparaissant plus souvent qu’on ne le pense). Il faut donc un bon dosage pour conserver une sécurité suffisante en n’écrasant pas les obstacles, en évitant de devoir relancer R2-D2 toutes les cinq minutes.

Le quatrième n’est pas encore validé : il s’agit d’utiliser des accéléromètres ou des gyroscopes pour détecter un problème, encore une fois par rapport à la consigne. Si le robot tourne trop vite sur lui-même, s’il bouge moins vite que les consignes de vitesse le voudraient, s’il tombe, etc... Comme nous aurons déjà une centrale inertielle faite de puces MEMS, ce système pourrait s’avérer intéressant, ou remplacer le troisième système.

Un exemple

Voici la vidéo de Björn Gielser qui a débuté la construction d’un R2-D2 et qui a mis en place une partie des systèmes décrits ci-dessus. Comme vous le constatez, il télécommande son robot mais a conservé une détection de collision.

Liste du matériel

Participez en envoyant des exemples de capteurs que vous pensez judicieux pour équiper notre R2-D2. Les noms des participants seront inscrits sur ce site et sur le poster final qui fêtera la création de R2-D2. Une version en grand format et signée par l’équipe vous sera envoyée.


[1et ce n’est que le début, les plans de l’étoile noire sont déjà prêts pour rétablir l’Empire avec Darth Jippé à notre tête

Un message, un commentaire ?

modération a priori

Attention, votre message n’apparaîtra qu’après avoir été relu et approuvé.

Qui êtes-vous ?

Pour afficher votre trombine avec votre message, enregistrez-la d’abord sur gravatar.com (gratuit et indolore) et n’oubliez pas d’indiquer votre adresse e-mail ici.

Ajoutez votre commentaire ici

Ce champ accepte les raccourcis SPIP {{gras}} {italique} -*liste [texte->url] <quote> <code> et le code HTML <q> <del> <ins>. Pour créer des paragraphes, laissez simplement des lignes vides.