Table des matières:

Robot d'évitement des ultrasons utilisant Arduino : 7 étapes
Robot d'évitement des ultrasons utilisant Arduino : 7 étapes

Vidéo: Robot d'évitement des ultrasons utilisant Arduino : 7 étapes

Vidéo: Robot d'évitement des ultrasons utilisant Arduino : 7 étapes
Vidéo: TRONIK AVENTUR 235 - ROBOT ARDUINO + CAPTEURS ULTRASONS HC-SR04 - DIY - TUTORIEL 2024, Novembre
Anonim
Image
Image
Robot d'évitement des ultrasons utilisant Arduino
Robot d'évitement des ultrasons utilisant Arduino

Dans ce tutoriel, je vais vous montrer comment créer votre propre robot évitant les obstacles ! Nous utiliserons la carte Arduino UNO et un capteur à ultrasons. Si le robot détecte un objet devant lui, à l'aide d'un petit servomoteur, il balaie la zone à gauche et à droite afin de trouver la meilleure façon de tourner. Il dispose également d'une LED de notification, d'un buzzer pour émettre une tonalité lorsqu'un objet est détecté et d'un bouton pour changer la fonction du robot (arrêt/avance).

C'est très facile à faire !

Étape 1: Choses à faire

Choses nécessaires à faire !
Choses nécessaires à faire !
Choses nécessaires à faire !
Choses nécessaires à faire !
Choses nécessaires à faire !
Choses nécessaires à faire !
Choses nécessaires à faire !
Choses nécessaires à faire !

Pour ce projet, vous aurez besoin de:

  1. Arduino UNO (achetez-le sur gearbest.com)
  2. Mini planche à pain (achetez-la sur gearbest.com)
  3. Module de pilote de moteur L298 (achetez-le sur gearbest.com)
  4. 2x moteurs à courant continu avec roues HC-SR04 capteur à ultrasons (achetez-le sur gearbest.com)
  5. Micro servomoteur (achetez-le sur gearbest.com)
  6. Bouton LED rouge Résistance 220 Ohm Support pile 9V (avec ou sans prise d'alimentation)
  7. 8 entretoises (mâle-femelle),
  8. 8 écrous et 8 vis, vous aurez également besoin d'un gros (métal)

trombone et une perle pour faire la roue de support arrière.

Pour la base du robot, j'ai utilisé un châssis acrylique d'Aliexpress. Vous pouvez également utiliser un morceau de bois ou de métal (ou deux plaques électriques).

Le coût de l'ensemble du projet est d'environ 20$

Outils: Perceuse super glue crew driver colle chaude pour pistolet (facultatif) Puissance:

Nous utiliserons une batterie 9V pour alimenter notre robot car il est petit et bon marché, mais il n'est pas très puissant et sera vide au bout d'environ une heure. Considérez si vous souhaitez utiliser une batterie rechargeable (min 6V, max 7V) qui sera plus puissante mais elle sera aussi plus chère et plus grosse que la batterie 9V. Abonnez-vous à notre chaîne YouTube Cliquez ici

Étape 2: Comprendre les concepts

Comprendre les concepts
Comprendre les concepts
Comprendre les concepts
Comprendre les concepts
Comprendre les concepts
Comprendre les concepts

Le but est de rendre le robot conscient des obstacles devant lui, afin qu'il puisse changer de direction et les éviter. Dans l'article précédent nous avons fait bouger le robot – maintenant nous allons lui donner une certaine autonomie.

Capteur à ultrasons

HC-SR04 est un circuit capable de mesurer une distance à des objets jusqu'à 4 mètres en utilisant des ondes ultrasonores. Il envoie un ping (comme un sous-marin) et mesure le temps (en microsecondes) entre l'envoi et la réception de quoi que ce soit. Ce temps est ensuite divisé par 2 au fur et à mesure que l'onde va et vient. Et divisez ensuite par 29 pour obtenir une distance en centimètres (ou 74 pour les pouces), car le son parcourt 29,4 µs par centimètre (340 m/s). Le capteur est très précis avec une tolérance d'environ 3 mm et facile à intégrer avec Arduino.

Interfaçage d'un capteur à ultrasons avec un microcontrôleur AVR

Tout robot autonome devrait avoir un obstacle évitant et un capteur de mesure de distance attaché. Une paire d'émetteurs-récepteurs IR ou un capteur en niveaux de gris peut facilement fonctionner pour la détection d'obstacles dans une plage de 1 cm à 10 cm. Les télémètres IR (par exemple ceux de Sharp) peuvent mesurer une distance jusqu'à l'obstacle le plus proche avec une portée allant jusqu'à 100 cm. Cependant, les capteurs IR sont affectés par la lumière du soleil et d'autres sources lumineuses. Les télémètres IR ont moins de portée et sont aussi chers pour ce qu'ils font. Les capteurs à ultrasons (également appelés capteurs de proximité à ultrasons ou sonar pour les geeks) effectuent ces deux tâches à un coût raisonnable et avec une précision exceptionnelle. La plage est comprise entre 3 cm et 350 cm avec une précision d'environ 3 mm. En reliant l'un de ces capteurs à ultrasons à notre robot, il peut servir à la fois d'évitement d'obstacles et de capteur de mesure de distance.

Le son « ultrasonique » fait référence à tout ce qui dépasse les fréquences du son audible et inclut nominalement tout ce qui dépasse 20 000 Hz ou 20 kHz ! Les capteurs à ultrasons peu coûteux utilisés pour la robotique fonctionnent généralement dans une plage de 40 kHz à 250 kHz, tandis que ceux utilisés dans les équipements médicaux vont jusqu'à 10 MHz.

Étape 3: Outils nécessaires

Outils nécessaires
Outils nécessaires
Outils nécessaires
Outils nécessaires
Outils nécessaires
Outils nécessaires
Outils nécessaires
Outils nécessaires
  1. Multimètre
  2. Planche à pain
  3. Pince à bec effilé
  4. Pince à dénuder
  5. Coupe-fil
  6. Pistolet à colle

MultimètreUn multimètre est en fait un appareil simple utilisé principalement pour mesurer la tension et la résistance et pour déterminer si un circuit est fermé. Semblable au débogage de code informatique, le multimètre vous aide à « déboguer » vos circuits électroniques.

Matériaux de construction

Un approvisionnement facilement disponible en bois mince et/ou en plexiglas pour fabriquer la charpente mécanique est très utile. Les métaux tels que l'aluminium et l'acier sont souvent limités à ceux qui ont accès à un atelier d'usinage, bien que l'aluminium fin puisse être coupé avec des cisailles et plié à la main. Les cadres mécaniques peuvent même être construits à partir d'articles ménagers tels que des conteneurs en plastique.

Bien que d'autres matériaux tels que les plastiques (hormis le plexiglas), ou des matériaux plus exotiques comme la fibre de verre et la fibre de carbone soient possibles, ils ne seront pas pris en compte dans ce guide. Plusieurs fabricants ont noté qu'il n'est pas facile pour la plupart des amateurs de produire leurs propres pièces mécaniques et ont créé des pièces mécaniques modulaires. Un leader dans ce domaine est Lynxmotion qui propose une large gamme de conceptions robotiques ainsi que les pièces nécessaires pour fabriquer vos propres robots personnalisés.

Outils manuels

Des tournevis et des pinces de différents types et tailles (y compris l'ensemble d'outils de bijoutier: petits tournevis couramment disponibles dans les magasins à un dollar) sont nécessaires. Une perceuse (de préférence une perceuse à colonne pour les trous droits) est également importante. Une scie à main pour couper les matériaux de construction (ou une défonceuse) est également un atout important. Si le budget le permet, une petite scie à ruban de table (gamme de 200 $) est définitivement un outil à considérer.

Planche à pain sans soudure

Une maquette sans soudure vous permet d'optimiser votre disposition et de connecter facilement les composants. En plus d'une planche à pain sans soudure, vous devez acheter un kit de fils de liaison préformés qui se compose de fils prédécoupés et pliés destinés à être utilisés avec une planche à pain sans soudure. Cela rend les connexions très faciles.

Petit jeu de tournevis

Ces petits tournevis sont nécessaires lorsque l'on travaille avec de l'électronique. Ne les forcez pas trop, leur taille les rend plus fragiles.

Jeu de tournevis ordinaire

Tous les ateliers ont besoin d'un outil multifonction ou d'un ensemble d'outils comprenant des têtes de tournevis plates / Phillips et autres.

Pince à bec effilé

ensemble de pinces à bec effilé est incroyablement utile lorsque vous travaillez avec de petits composants et pièces et constitue un ajout très peu coûteux à votre boîte à outils. Celles-ci sont différentes des pinces ordinaires car elles arrivent à un point qui peut pénétrer dans de petites zones.

Pince à dénuder/coupe-fil

Vous envisagez de couper des fils, une pince à dénuder vous fera gagner un temps et des efforts considérables. Une pince à dénuder, lorsqu'elle est utilisée correctement, n'enlèvera qu'une isolation de câble et ne produira aucun pli ni endommagera les conducteurs. L'autre alternative à une pince à dénuder est une paire de ciseaux, bien que le résultat final puisse être salissant. Ciseaux, règle, stylo, crayon marqueur, couteau Exacto (ou autre outil de coupe à main) Ce sont des éléments essentiels dans n'importe quel bureau.

Étape 4: Cocepts pour le codage de l'AVR

Cocepts pour le codage AVR
Cocepts pour le codage AVR

Calcul de la vitesse du son par rapport aux capteurs à ultrasons

Un peu de maths, mais n'ayez pas peur. C'est plus simple que vous ne le pensez.

La vitesse du son dans l'air sec à température ambiante (~20°C) = 343 mètres/seconde

Pour que l'onde sonore frappe et fasse un aller-retour vers l'objet voisin est = 343/2 = 171,5 m/puisque la portée maximale d'un capteur à ultrasons bon marché n'est pas supérieure à 5 mètres (aller-retour), il serait plus logique de changez les unités en centimètres et en microsecondes.

1 mètre = 100 centimètre1 seconde = 10^6 microsecondes = (s / 171,5) x (m / 100 cm) x ((1x10^6)/s) = (1/171,5) x (1/100) x (1 000 000/ 1) = 58,30903790087464 us/cm = 58,31 us/cm (arrondi à deux chiffres pour faciliter les calculs)Par conséquent, le temps mis par une impulsion pour atteindre un objet et rebondir d'un centimètre est de 58,31 microsecondes.

le petit fond sur les cycles d'horloge AVR

Il faut un tout autre chapitre pour comprendre les cycles d'horloge AVR, mais nous allons brièvement comprendre comment cela fonctionne pour faciliter nos calculs

Pour notre exemple, nous utiliserons la carte AVR Draco qui possède un microcontrôleur AVR - Atmega328P 8 bits. Pour garder les choses simples, nous ne modifierons pas les paramètres d'un microcontrôleur. Aucun fusible n'a été touché; Aucun cristal externe attaché; Aucun mal de tête. Aux réglages d'usine, il fonctionne sur un oscillateur interne de 8 MHz avec un préscaler /8; Si vous ne comprenez pas tout cela, cela signifie simplement que le microcontrôleur fonctionne à 1 MHz de l'oscillateur RC interne et que chaque cycle d'horloge prend 1 microseconde.

1 2 1MHz = de 1000000 cycles par seconde Donc, 1s/1000000 = 1/1000000 = 1us

Horloges AVR et conversion de distance

Nous y sommes presque! Une fois que nous savons comment convertir les cycles d'horloge AVR en distance parcourue par les ondes sonores, la mise en œuvre de la logique dans un programme est facile.

Nous savons que la vitesse du son ultrasonore dans un environnement idéal est: 58,31 us/cm

Nous savons que la résolution du microcontrôleur AVR est de 1us/cycle d'horloge (CLK)

Par conséquent, la distance parcourue par le son par cycle d'horloge (CLK) est:

1 2 3 = (58,31 us/cm) x (1us/clk) = 58,31 cycles d'horloge / cm ou = 1/58,31 cm/clk

Si le nombre de cycles d'horloge nécessaires au son pour voyager et rebondir est connu, nous pouvons facilement calculer la distance. Par exemple, si le capteur met 1000 cycles d'horloge pour se déplacer et rebondir, alors la distance entre un capteur et l'objet le plus proche est = 1000/58,31 = 17,15 cm (environ)

Est-ce que tout a du sens maintenant ? Non? Relisez-le

Si vous êtes clair avec toute la logique mentionnée ci-dessus, nous la mettrons en œuvre dans un scénario réel en connectant un capteur à ultrasons HC-SR04 peu coûteux à notre carte AVR Arduino.

Étape 5: Connexions matérielles:

Connexions matérielles
Connexions matérielles
Connexions matérielles
Connexions matérielles
Connexions matérielles
Connexions matérielles
Connexions matérielles
Connexions matérielles

La carte Arduino facilite la connexion de tous les capteurs externes et permet également d'afficher les résultats sur l'écran LCD. Pour la détection de portée par ultrasons, nous utilisons un module HC-SR04 peu coûteux. Le module a 4 broches qui peuvent être connectées à la carte du microcontrôleur: VCC, TRIG, ECHO et GND.

Connectez la broche VCC à 5V et la broche GND à la terre sur la carte Arduino.

La broche TRIG et la broche ECHO peuvent être connectées à toutes les broches disponibles sur la carte. L'envoi d'un signal "élevé" d'au moins 10 us à la broche de déclenchement envoie huit ondes sonores de 40 kHz et tire la broche d'écho vers le haut. Si le son rebondit sur un objet à proximité et revient, il est capturé par le transducteur récepteur et la broche d'écho est tirée « bas ».

D'autres variantes de modules de capteurs à ultrasons sont également disponibles avec seulement 3 broches. Le principe de fonctionnement est toujours le même, mais les fonctionnalités des broches de déclenchement et d'écho sont combinées en une seule broche.

Une fois connectés, les broches de déclenchement et d'écho peuvent être configurées via un logiciel. Pour garder cet exemple simple, nous n'utiliserons aucune broche d'interruption (ou broche de capture d'entrée) dans cet exemple. Ne pas utiliser de broches d'interruption désignées nous donne également la liberté de connecter le module à toutes les broches disponibles sur la carte.

Étape 6: Coder

CodeLe code ci-dessous ne contient qu'une extension "à ultrasons" de la commande de moteur à courant continu à l'aide d'un pont en H de l'article précédent. Lorsque le robot détecte un obstacle devant lui, il se retourne (degré aléatoire) et continue d'avancer. Cette fonctionnalité pourrait être facilement étendue pour continuer à tourner et à détecter les obstacles en même temps - de sorte que le robot ne tournerait pas au hasard, mais commencerait à avancer uniquement lorsqu'aucun objet n'est détecté.

Pour l'explication du code, reportez-vous à la vidéo Youtube répertoriée sur la chaîne.

Étape 7: Vidéo

Regardez la vidéo pour l'ensemble du processus.

Conseillé: