Projet Terminal - triangulation

Bonjour,
je suis en terminal S, et pour mon projet de l'année j'ai besoin de connaitre la position en temps réel de mon robot qui se déplace sur un demi terrai de tennis (envion 11*12m)
je pensais placer 3 emetteurs sur les cotes du terrain et utiliser la vitesse de l'onde et le temps que celle-ci met à faire la distance emetteur-recpeteur pour connaitre la distance à laquelle mon robot se trouve, ce processus sur 3 axes pour avoir la position exact de mon robot...
or je ne trouve pas de solution technique pour réaliser la triangulaion... Je dois utiliser des emetteurs-recepteurs radio ? Ou ultrason ? Mais si ultrason comment viser le recepteur ?
Merci de votre aide.
Alex.

Bonjour Alex, alias Blondinho,

Je n'ai pas de solution toute prête pour vous, mais je travail sur un projet similaire, donc je souhaitais partager des pistes de solutions avec vous que vous pourrez explorer plus en détail par vous-même.

Vous donnez très peu de détails sur vos exigences de précisions et de budget alors voici à quoi je pense :

Étant donné la taille du terrain de 11x12m, j'assume qu'il vous faut une relativement bonne précision, disons +/- 10-30 cm, donc un module GPS ne conviendrait probablement pas ici.

J'ai déjà vu des vidéos YouTube et des sites mentionnant la possibilité de faire du positionnement à l'aide de deux "Xbee". Comme je n'ai jamais travaillé avec ces modules, je n'ai pas une idée précise du fonctionnement de cette méthode, de la précision que l'on peut obtenir et de la portée des modules. À vous de voir si ça peut vous convenir. Je sais qu'il existe d'anciens posts concernant le "position tracking" principalement sur le forum anglais d'Arduino. Vous pouvez y jeter un oeil si le coeur vous en dit. En gros, les modules utilisent la force du signal pour déterminer une distance et probablement aussi une direction du signal entre deux émetteur-récepteurs.

Si j'ai bien interprété vos propos, ce n'est pas le robot qui devra savoir où il est, mais un Arduino "externe" qui devra être en mesure de repérer en tout temps le robot sur le terrain n'est-ce pas ? Dans ce contexte, c'est vrai qu'il n'est pas évident au premier abord de trouver une façon de faire si la méthode par modules Xbee n'est pas envisageable...

J'ai deux autres idées pour vous que vous pourrez explorer. La première consiste à utiliser un module ultrasonique pour mesurer des distances. Certains modules peuvent mesurer des distances allant de 15 à 700cm avec un bonne précision. Malheureusement pour cette méthode il devra y avoir un mur (de carton par exemple) tout le tour du terrain. Heureusement, 7m de porté c'est encore suffisant même si le robot se trouve en plein centre du terrain. Le module à ultrason serait monté sur un servo modifié ou un moteur pas-à-pas comme on en voit parfois sur YouTube afin de permettre une mesure sur presque 360 degrés. Il existe aussi des modules de ce genre fonctionnant avec un laser (portée de 20m), mais je pense que des miroirs sur le pourtour d'un demi terrain de tennis serait plus dispendieux... :slight_smile: (À moins de mettre le laser à l'extérieur du terrain et de prendre la mesure de distance séparément sur le robot ? O_o) En bref, il suffirait de demander au robot de repérer en tout temps les deux mesures (murs) les plus rapprochées. Les deux mesures devrait être à 90 degrés l'un de l'autre en théorie. Par la suite, il est possible de transmettre ces données par Wifi, Bluetooth ou par un autre module RF à un 2e Arduino ("externe" au robot) qui traitera l'information reçue.

La deuxième idée est un peu similaire à la première dans le sens que c'est toujours le robot qui donne de l'information à l'Arduino externe via Wifi, Bluetooth ou par un autre module RF, mais n'utilise pas aucun senseur de mesures. Le hic c'est que le robot doit être construit avec des moteurs pas-à-pas ou des moteurs DC réguliers à RPM connu. La méthode pourrait être de positionner au départ le robot à une position précise, puis il enverrait en tout temps des informations quant à son déplacement relatif (Par le nombre de pas effectués ou le temps de fonctionnement avant ou arrière et rotation). Ainsi l'Arduino externe saurait où se trouve le robot en tout temps.

Ayant l'imagination très fertile parfois, je vous épargne mes idées un peu plus farfelues à base :

  • de fils et de positionneurs rotatifs.
  • de repérage d'une source lumineuse sur le robot via une webcam située au dessus du terrain et en utilisant "Processing".
  • de codes de couleurs sur le terrain lu par un senseur de reconnaissance de couleur qui permettrait d'en déterminer une coordonnée.
  • de lasers tournants de couleurs différente aux coins du terrain et capté par le robot qui en détermine la couleur et l'intensité lumineuse via une photorésistance (idée inspirée du capteur de mesure de distance laser).
  • de deux chariots roulant (soit en x et soit en y) se déplaçant pour suivre et viser en tout temps un miroirs cylindrique sur le robot à l'aide d'un pointeur laser et deux photorésistances utilisées comme pour un "line follower" sur chaque chariot qui enverrait leur informations à l'Arduino.
  • etc.

Bref, beaucoup d'idées à explorer avec des niveaux de difficultés différents.

Sur ce je vous souhaite une bonne continuité dans votre projet et vos études.

ST

pourquoi creer 2 sujets?

Ah oui je n'avais pas remarquer ça moi... Il faudrait effacer celui-là. Message pour un modérateur ici... Merci d'avance !