Pages: [1]   Go Down
Author Topic: Determiner sa position  (Read 1421 times)
0 Members and 1 Guest are viewing this topic.
Offline Offline
Newbie
*
Karma: 0
Posts: 4
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Bonjour,

Je suis en train de construire un robot à base d'une carte arduino et je suis confronté à un problème. En effet, je souhaiterais déterminer la position du robot dans l'espace afin d’éviter que celui-ci ne passe toujours au même endroit. L'idée serait de "découvrir" la pièce. Au départ j'ai pensé utiliser une souris optique mais le surface du sol ne s'y prête pas. J'ai vu qu'il existait un capteurs gyroscopique couplé à un accéléromètre qui permettrait de déterminer sa position. Le coût n'est pas donné.

Si vous avez des solutions/idées, je suis preneur.

++
Logged

0
Offline Offline
Full Member
***
Karma: 0
Posts: 185
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

comme idée, j'ai :
 - un suivi "optique" ou "de signal" au sol : faut éviter les croisements, car ça donne parfois des résultats étonnants
 - des encodeurs raccordé à de "grosses" roues : ça reprend un peu ton idée de souris, mais avec un modèle "à boule".
 - toujours sur le modèle souris : un trackball
 - radio : 3 émetteurs mini. Le robot doit évaluer la "puissance" du signal reçu de chaque émetteur. Ensuite, par triangulation, il détermine sa position dans le plan. Inconvénient : faut que ce soit de préférence dans une seule et même pièce
 - la version "map" : tu enregistres une sorte de "carte" du local à parcourir, et tu fais en sorte que ton robot parcourt toute la map. Il faudrait pour cela utiliser des servo continu ou des moteurs PaP afin de connaitre exactement la distance parcourue par le robot

Mais il nous faudrait des éléments supplémentaires pour affiner :
 - surface à couvrir
 - une ou plusieurs pièces ? (la structure des murs peut avoir une importance)
 - ton robot, c'est un aspirateur ?

As-tu visité le site de PoBot ?
Logged

pas taper... sauf application de l'article 35 ...

France, Nice
Offline Offline
Full Member
***
Karma: 3
Posts: 194
www.Zartronic.fr
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Bonjour,
Sur les petits robots on utilise souvent des capteurs à ultrasons ou infra-rouge pour "voir devant", tu peux aussi passer au laser pour avoir une vue plus précise, ensuite avec un logiciel (sur pc) tu peux faire la carte.
Les essaies de gyro+accé ne sont pas très concluant. Évidemment la classique odométrie sur les roues ou mieux sur des capteurs indépendant permettant de mesurer les distances parcourus sont un bon moyen de le positionner mais au bout d'un moment on a plus de précision et le robot est dans le flou, il faut le recaler sur une position sure.
Tu trouveras surement plein d'infos utile sur le site de Pobot : www.pobot.org
A+ Teiva
Logged


www.Zartronic.fr : Arduino & Robotique

Offline Offline
Newbie
*
Karma: 0
Posts: 4
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

tout d'abord merci pour vos réponses.

taddot, je vois que tu as bien cerné mon problème. Effectivement je souhaite construire un robot aspirateur. Donc comme tu t'en doute, l'idée serait que le robot ne couvre pas toujours la même surface pour le nettoyage. Je ne sais pas comment fonctionne exactement les robots du commerce mais je suppose qu'ils ne "scannent" pas la pièce dans leur intégralité. Ils utilisent plus un mode "découverte" / aléatoire.

Pour Teiva, j'ai déjà acheté des capteurs de contact et infrarouge, je pense que cela va m’être utile. Pour le gyro/accéléromètre je pense abandonner l'idée. Sinon j'avais pensé comme toi aux encodeurs sur la roue. Le soucis est que si la roue patine c'est foutu ! 

Good le site pobot !!

++
Logged

Offline Offline
Sr. Member
****
Karma: 0
Posts: 451
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

un module GPS ?
Logged

Mon Blog sur l'environnement Arduino ... Tutos fait par un débutant pour les débutants ^^

http://chicowebsite.free.fr/

Cergy
Offline Offline
Full Member
***
Karma: 0
Posts: 137
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Pour avoir un de ces robots aspirateurs et un laveur (roomba et scooba de chez irobot), je peux te dire que leurs passages sont tout à fait aléatoires: ils "rebondissent" contre les obstacles, avec des angles plus ou moins ouverts à chaque changement de direction. Le scooba (laveur) à en plus une fonction intéressante, appelée régulièrement par le programme: il fait des tours en s'éloignant de plus en plus de son point de départ (des cercles en forme d'escargot) pendant une 30aine de secondes, puis reprend son chemin rectiligne.
Il existe une autre marque de robot aspi dont j'ai oublié le nom, qui scanne la pièce, et passe ensuite une seule fois à chaque endroit, en faisant des lignes bien parallèles.
Les tests que j'avais lus étaient mitigés: il arrive souvent que poussières soient éjectées sur un côté lors du passage de l'aspi, et du coup reste à trainer (il parait que c'est pareil avec un vrai aspi, d'après un témoignage de ma femme  smiley-mr-green ).

Avant d'investir dans un roomba, j'avais fait un essai en partant de 0 (pas avec un Arduino à l'époque, mais avec un PIC). Le résultat était peu probant: il est difficile de trouver une turbine efficace consommant peu.
L'efficacité du roomba (car c'est petit, mais TRES efficace) est liée à 2 facteurs:
- il brosse plus qu'il n'aspire: il aspire les poussières et une brosse emmène les plus gros déchets dans le réceptacle
- il a une brosse sur le côté, qui rattrape tout ce qui traine le long des plinthes et des meubles, et ramène tout ça au pied de la brosse principale.

D'autre part, j'avais fait des tests en faisant un petit programme:
sur une surface donnée, un robot faisant des passages parallèles de manière à couvrir 2 fois la pièce (pour être sûr que ce soit bien nettoyé) arrivera à couvrir 3 à 4 fois certains passages avec autant de rebonds pseudo aléatoires (en arrivant sur les obstacles à 45°).

Au fur et à mesure de mes tests peu probants, je me suis rendu à l'évidence: un roomba sur ebay.us me revenait largement à moins cher, et j'avais une maison propre (ce qui était quand même le but de la démarche) et des pièces de rechange à la pelle (voir robotshop par exemple)

Pour ceux que ça intéresse, le roomba a été décortiqué et analysé, et ça a fait l'objet d'un bouquin très bien fait, permettant d'utiliser la plateforme pour en faire autre chose qu'un aspi (caméra sans fil et j'en passe)
Logged

Tous les jours, je roule en Electrique
Arretons de polluer !

Moi & mon Ardu

Ales
Offline Offline
Faraday Member
**
Karma: 39
Posts: 3648
Do or DIY
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Tu peux te servir de balise pour la localisation, à la manière d'un GPS ou d'un compas, il suffit alors d'une balise (la base par exemple) et d'un compas pour déterminer la position par rapport à la base (enfin la direction en tout cas, car il rest eà voir la distance entre les deux ..)
Logged


Offline Offline
Newbie
*
Karma: 0
Posts: 4
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

je vois vincelge que tu es devenu expert en aspirateur  smiley. Il est vrai que j'aurai mieux à acheter un aspirateur sur ebay mais je me suis lancé un petit défit.

J'ai bien aimé ton idée B@tto, intéressant ... .J'avais plutôt pensé à un système de triangulation mais ton approche me plait bien. Il me reste plus qu'à savoir ,comme tu l'indiques dans ta réponse, à récupérer la distance entre la base et le robot. (par signaux lumineux ?!?)

++
Logged

Cergy
Offline Offline
Full Member
***
Karma: 0
Posts: 137
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

je vois vincelge que tu es devenu expert en aspirateur  smiley. Il est vrai que j'aurai mieux à acheter un aspirateur sur ebay mais je me suis lancé un petit défit.

Je ne vais pas te blâmer: j'avais commencé mon approche de la même manière que toi ... mais au bout d'un moment, ma femme a trouvé mes expériences un peu longues, et les résultats peu probants. Mais même si le résultat n'était pas à la hauteur de nos espérances, on avait pris l'habitude de ne plus trop passer l'aspi et de laisser faire le robot. D'où l'achat du Roomba ensuite ...
Logged

Tous les jours, je roule en Electrique
Arretons de polluer !

Moi & mon Ardu

Ales
Offline Offline
Faraday Member
**
Karma: 39
Posts: 3648
Do or DIY
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Je sais que sur l'ancien forum on avait discuté de ce système ... mais je retrouve plus le topic !

Signaux lumineux je vois pas trop, il faut soit un signal donc la puissance est proportionnelle à la distance (comme une borne wifi par exemple, plus on est loin moins on capte ...) ou un signal qui "met du temps", ultrasons par exemple. Après il restera toujours le problème des obstacles ... mais la aussi on peut imaginer une astuce du genre : la position est perdue, oui mais je connais mon point de départ, et si je suis motorisé en moteur pas à pas, je peux calculer la distance que je parcoure et dans quelle direction, donc quelque part je suis ma postion ... bref tu vas t'amuser avec la trigonométrie xD
Logged


France
Offline Offline
Faraday Member
**
Karma: 39
Posts: 3560
There is an Arduino for that
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Quote
Signaux lumineux je vois pas trop
Triangulation avec plusieurs balises (idéalement 3) suffisamment espacées. Ce qui implique d'avoir une vue sur ces balises en même temps ce qui peut être compliqué dans une pièce où il peut y avoir des obstacles.
Le balayage systématique bande par bande d'une surface est relativement utopique. Il y a toujours dans une pièce des obstacles (chaise, fauteuil, tables, jouet qui traine, etc) et l'aspirateur du coup fait des écarts. La profusion d'objets susceptibles de bloquer l'aspirateur dans une pièce ne permet pas d'en faire une cartographie fidèle.
Lorsqu'on regarde un de ces aspirateurs qui lors des évitements fait des angles aléatoires on a l'impression que la surface ne sera pas complètement nettoyée mais au bout du compte c'est très efficace.
Logged

Offline Offline
Newbie
*
Karma: 0
Posts: 4
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Finalement j'ai l'impression qu'avec un mode aléatoire on peut arriver à couvrir une surface suffisante. Je vais continuer de réfléchir et regarder ce qui se fait sur d'autres sites.
Logged

0
Offline Offline
Full Member
***
Karma: 0
Posts: 185
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

regarde à nouveau mon premier post, avec la solution de balises radio couplé à la solution "map" ...
Logged

pas taper... sauf application de l'article 35 ...

Pages: [1]   Go Up
Jump to: