Bonjour, je souhaite réaliser un projet et j'aurai besoin d'un avis.
Le projet en question est un petit robot autonome qui doit sur un terrain (3 m2) avec des obstacles, détecter et aller éteindre une bougie puis revenir dans sa zone de départ.
Pour le faire revenir à sa position de départ, j'ai pensé déposer un aimant (ou électroaimant) à sa base de départ afin de le détecter après avec un magnétomètre (par ex: HMC5883L). Le principe serait de simuler le Nord magnétique afin d'aller dans sa direction pour revenir (voir schéma 1).
Pensez-vous que cela est possible sur un terrain de 3 m2 ?
L'aimant nécessaire est-il réalisable?
Ce capteur est-il adapté à la situation? J'ai vu qu'il existe aussi des capteurs à effet hall cependant l'avantage du magnétomètre c'est qu'il nous retourne un angle et non pas une intensité.
Une autre idée serait de connaitre sa position actuelle.
Pour ça, j'ai aussi pensé mettre un magnétomètre (par ex: HMC5883L) afin de connaitre l'angle de lacet et un encodeur sur les moteurs DC afin de connaitre la distance parcourue sur un même angle. Je pourrais après trouver la résultante en additionnant mes vecteurs.
Il me suffirait après de faire la résultante dans le sens inverse pour revenir (voir schéma 2).
Que pensez-vous de cette option?
Le calcul vectoriel est-il réalisable?
il faudrait que l'aimant soit super puissant pour être détectable à distance
pour le "chemin" inverse, c'est vous qui pilotez les roues non ? donc vous savez combien "de pas" (ou certain temps) vous avez effectués, comment vous avez tourné etc... ==> vous pouvez calculer le chemin de retour surtout si vous savez qu'il n'y a pas d'obstacles et si le terrain est tel que les roues/chenilles ne patineront pas
Oui c'est bien moi qui pilote les roues cependant il y'a des obstacles et les roues risquent de patiner sur la surface.
C'est pour ça que retrouver la position en n'utilisant que les moteurs DC risque d'avoir une imprécision trop grande.
Pour l'électroaimant j'ai pensé à l'activer après le départ du robot afin de ne pas perturber le capteur mais je ne connais pas encore l'intensité nécessaire et si cela permettra de simuler un Nord pour le capteur.
il vous faudrait un électro-aimant très fort à mon avis pour perturber localement (à plusieurs m de distance) le HMC5883L par rapport au nord magnétique
Si vous savez détecter la flamme (quel capteur ?) pour aller à un endroit, pouvez vous prendre une approche similaire pour détecter le lieu de départ ?
Soit deux capteurs un peu espacés soit un seul sur un servo-moteur afin de faire un balayage.
Je pourrai en effet déposer une source lumineuse de la même longueur d'onde à la place de l'aimant mais je trouve plus intéressant d'utiliser la méthode avec le HMC5883L.
Le détecteur de flamme (source de longueur d’onde à 760 nm à 1100 nm) ne fonctionnera qu'à moins d'un mètre (et encore moins si la flamme n'est pas grande). Vous allez donc vous déplacer sur le terrain pour essayer de trouver la flamme c'est cela ?
je trouve plus intéressant d'utiliser la méthode avec le HMC5883L
Sur les robots tondeuses à gazon, le homing vers la station de recharge est fait avec un fil qui émet un signal alternatif : j'ignore la fréquence. Le robot a deux bobines qui lui permettent de suivre le fil. Lorsqu'il en est loin, il effectue des trajets aléatoires et il finit par croiser le fil. Cela permet de faire un trajet bizarre avec le fil pour ramener le robot à la station de homing en évitant des obstacles éventuels, en trouvant le passage entre la niche du chien et le cabanon à outils, etc.
J'ai construit un robot traceur, dont le but final est de pouvoir dessiner des patrons de couture à partir d'un dessin inkscape. En utilisant des step moteurs sur le deux roues motrices, j'arrive à maitriser ma trajectoire avec une précision surprenante.
La première vidéo de démo Premiers pas du robot traceur sur une fractale de Von Koch
Et la documentation non finie : doc
Je pense que tu peux tout à fait utiliser une méthode analogue pour enregistrer ton chemin aller, et l'inverser pour faire ton chemin retour
Je m'étais aussi pas mal renseignée sur différentes méthodes pour pouvoir suivre la position au cours du dessin (je n'aurais jamais cru que ça marcherait aussi bien avec les step moteurs).
Le champs magnétique, en gros, évolue avec la distance au cube entre ta source et ton récepteur. Tu auras besoin d'aimants très puissants pour des distances importantes. Et les aimants très puissants posent plusieurs problèmes. Il faut les stocker dans des endroits ou ils ne risquent pas de perturber d'autres appareils. Ton robot ne pourra pas avoir de pièces métalliques. Et, quand tu manipuleras les aimants, il faudra te tenir à distances de tout objet métallique, notamment ceux qui sont cachés (armature de certains meubles), au risque de voir ta main partir et frapper violemment un mur, une table (expérience vécue)
D'autres signaux rayonnants, comme les ultrasons, une onde lumineuse, une onde radio, aurait aussi pu permettre d'orienter le robot, mais ils sont facilement sensibles au milieu (ex : lumière du jour, présence d'obstacle...)
J'avais fait des essais prometteurs avec des LEDs clignotantes, l'idée étant que la modulation du signal permet de s'affranchir des signaux parasites. J'avais placé sur un socle en carton une photodiode ou une photorésistance. Pour améliorer la précision, j'avais mis des oeillères autour du photocapteur, ce qui le rendait plus directif. Je faisais tourner à la main le capteur pour detecter la direction des sources de lumière. Enfin, en mesurant la vitesse de clignotement, je pouvais identifier quelle source de lumière était dans quelle direction, en étant peu perturbé par la lumière ambiante.