» Électronique » Arduino »Robot passant des labyrinthes

Robot passant des labyrinthes




L'article montre la création d'un robot qui se déplace le long des lignes et peut traverser des labyrinthes, après avoir étudié le labyrinthe, il peut le traverser de la manière la plus courte. L'auteur a longtemps créé ce projet, la chance l'a dépassé pour la troisième fois.

Démonstration de la machine:


Matériaux et outils:
- Arduino RBBB
- Micromoteurs 2 pièces
- Supports pour moteurs 2 pièces
- Roues 2 pièces
- roue à billes
- Capteur de réflexion analogique
- Écrous avec boulons de 2 pièces.
- conducteur de moteur
- Support de batterie 4 pcs AAA
- Piles (piles rechargeables) AAA 4 pièces
- Etui
- Écrous, boulons, rondelles
- fils de connexion
- souder
- une pince
- fer à souder
- tournevis

Première étape. Théorie
L'auteur avait besoin le robot, qui lui-même trouvera un moyen de sortir du labyrinthe, après quoi il pourra optimiser le voyage de retour. Lors de la création d'une machine pour les labyrinthes, ils ont été guidés par la méthode de gauche. Pour le rendre plus clair, vous devez imaginer que vous étiez dans un labyrinthe et toujours garder votre main gauche sur le mur. Après avoir passé un certain chemin, cela vous aidera à sortir du labyrinthe s'il n'est pas fermé. Le robot ne peut fonctionner qu'avec des labyrinthes ouverts.

Les principes de la méthode de gauche sont assez simples:
- Si vous pouvez tourner à gauche, tournez à gauche.
- S'il est possible de se déplacer tout droit, se déplacer tout droit.
- Si vous pouvez tourner à droite, tournez à droite.
- Si vous êtes dans une impasse, tournez à 180 degrés.

De plus, le robot doit prendre des décisions à l'intersection, mais s'il ne s'éteint pas au tournant, il ira tout droit. Pour construire un meilleur itinéraire de retour, chaque décision est écrite en mémoire.
L = virage à gauche
R = virage à droite
S = sauter un tour
B = rotation à 180 degrés

Cette méthode est illustrée ci-dessous en action en utilisant un labyrinthe simple comme exemple. Le robot a parcouru la distance avec les commandes LBLLBSR.
Robot passant des labyrinthes







Le chemin a parcouru un long chemin, il doit être transformé en un SRR optimal. Pour ce faire, il est déterminé où le robot a tourné dans le mauvais sens. Partout où la commande "B" est utilisée, le chemin sera erroné, puisque le robot était dans une impasse, donc "B" devrait être remplacé par autre chose. Le premier mauvais mouvement a été LBL, le robot a tourné et s'est retourné, alors qu'il fallait juste suivre directement LBL = S. Ainsi, le chemin idéal LBL = S, LBS = R est construit. Sur la base de ces remplacements, le robot construit un chemin court idéal pour lui-même.





Deuxième étape Le châssis du robot.
L'acrylique d'une épaisseur de 0,8 mm est devenu la base du châssis du robot; la découpe a été effectuée par un laser selon le dessin. Dans l'archive sous l'article, il y aura un fichier de dessin d'AutoCAD. Il n'était pas nécessaire d'utiliser de tels documents, mais l'auteur a pris ce qui était disponible.

Dans la partie inférieure, des trous sont prévus pour le montage de moteurs, cartes, roues et capteurs. La partie supérieure a un grand trou pour les fils.










Troisième étape Installation de roues.
L'auteur a attaché les deux moteurs avec des boulons. De plus, ils mettent simplement des roues sur leur essieu, alignant l'arbre avec le trou dans la roue.




La quatrième étape. Arduino
À ce stade, l'auteur a d'abord suivi les instructions de montage de l'Arduino RBBB. De plus, il a coupé une partie de la planche pour réduire sa taille. Le connecteur d'alimentation et le stabilisateur ont été coupés avec des ciseaux pour le métal. Après cela, un connecteur à 9 broches a été soudé sur le côté gauche de la carte pour les contacts de 5V à A0 pour y connecter un capteur. Un connecteur à 4 broches a été soudé sur le côté droit de la carte pour les contacts de D5 à D8, et un contrôleur de moteur y sera connecté. Pour alimenter, le connecteur à 2 broches a été soudé à 5V et GND.








Cinquième étape Contrôleur de moteur.
L'auteur a lui-même développé une carte de circuit imprimé pour cette étape, le circuit au format Eagle est joint dans les archives sous l'article. Le premier moteur était connecté aux broches M1-A et M1-B, le second aux M2 et M2-B. La première entrée du premier moteur In 1A était connectée à la 7ème broche de l'Arduino. En 1B était connecté à la broche 6 de l'Arduino. À la première entrée du deuxième moteur, In 2A est connecté à la 5ème broche d'Arduino. La broche 2B se connecte à la broche 8 de l'Arduino. L'alimentation et la terre sont connectées à l'alimentation et à la terre Arduino.








Étape six Capteurs
Cet élément est vendu sous forme de carte de capteurs, au départ il y en a huit, les deux extrêmes ont été supprimés par l'auteur. Un connecteur à 9 broches a été soudé à la carte, un fil menant à l'Arduino leur sera connecté. Le capteur détecte une partie blanche et noire du labyrinthe en utilisant la réflexion de la surface.




Septième étape. Partie supérieure.
Le châssis avec le haut du robot relié par des boulons et des racks. La batterie a été fixée sur le dessus avec du Velcro. Des fils de lui ont été déposés à travers le trou préparé. Lors de la fixation, l'auteur a décidé de ne pas utiliser de vis, mais de laisser la batterie avec du Velcro afin qu'il soit plus facile de remplacer les batteries. En utilisant l'interrupteur sur le boîtier de la batterie, une vérification des performances a été effectuée.








Étape huit. Installation de capteurs.
Des capteurs étaient boulonnés au bas de la machine. La broche GND est connectée au GND Arduino. Ensuite, la broche Vcc est connectée à l'Arduino 5V. Les ADC Arduino 5-0 ont connecté les broches des capteurs analogiques 6-1.






Étape neuf. La nourriture.
Arduino vient de souder les fils de la batterie. Allumer et éteindre le robot sera un interrupteur sur la batterie, il a donc été décidé d'utiliser la soudure. Ceci termine l'assemblage du robot.


Étape dix La partie logicielle.
Le programme a plusieurs fonctions responsables de l'algorithme de fonctionnement. La fonction «main gauche» reçoit les relevés des capteurs et contrôle le robot selon ces règles. La fonction de rotation est activée avant que le robot ne remarque une ligne noire, ayant remarqué qu'il se déplace tout droit. Une fonction d'optimisation de chemin est également intégrée. Le programme peut être téléchargé sous l'article dans les archives.


Vidéo du robot:


labyrinthe-résolution-robot.rar [28,67 Ko] (téléchargements: 545)
5.5
5.5
5.5

Ajoutez un commentaire

    • souriresouritxaxaokne sais pasYahoonea
      patronse gratterfououioui-ouiagressifsecret
      désolédansedanse2danse3pardonaiderles boissons
      arrêteramisbonbonsifflerévanouirla langue
      fumerapplaudircraydéclarermoqueurdon-t_mentiontélécharger
      chaleurirritérire1mdaréunionmasquagenégatif
      not_ipop-cornpunirlireeffrayerfait peurrecherche
      railleriemerci_vousçato_clueumnikaigud'accord
      mauvaisabeilleblack_eyeblum3rougirse vanterennui
      censuréplaisanteriesecret2menacervictoireyusun_bespectacled
      shokrespektlolprévalubienvenuekrutoyya_za
      ya_dobryiaidene_huliganne_othodifludinterdirefermer

Nous vous conseillons de lire:

Donnez-le au smartphone ...