Un système de détection d'obstacles est une technologie conçue pour identifier et localiser des objets ou des obstacles dans un environnement donné. Ces systèmes sont couramment utilisés dans divers domaines tels que l'automobile, la robotique, la surveillance, les drones, etc.
Le système de détection d'obstacles basé sur le HC-SR04, écran LCD et Arduino UNO fonctionne en utilisant un capteur ultrasonique pour mesurer la distance entre le capteur et un obstacle, puis en affichant cette distance sur un écran LCD. Voici le principe de fonctionnement étape par étape :
1- Capteur Ultrasonique HC-SR04 :
Le HC-SR04 utilise des ondes ultrasoniques pour mesurer la distance. Il a deux transducteurs, l'un pour émettre les ondes ultrasoniques (trigPin), et l'autre pour recevoir les ondes réfléchies (echoPin).
Lorsque vous activez le trigPin, le capteur émet une impulsion ultrasonique.
2- Emission et Réception des Ondes Ultrasoniques :
L'impulsion ultrasonique se propage dans l'air et rebondit sur un obstacle.
Le capteur ultrasonique mesure le temps écoulé entre l'émission et la réception de l'onde ultrasonique réfléchie.
3- Calcul de la Distance :
La durée mesurée est convertie en distance en utilisant la formule de la vitesse du son dans l'air (environ 343 m/s à 20°C).
La formule utilisée dans le code (distance = duration * 0.034 / 2) est basée sur le fait que la durée est en microsecondes, et la division par 2 est nécessaire car la distance aller-retour doit être considérée.
4- Détection d'Obstacles :
Une condition est utilisée pour vérifier si la distance mesurée est inférieure à une valeur seuil (4 cm dans notre système).
Si la distance est inférieure à cette valeur, le système affiche "Obstacle détecté" sur l'écran LCD, la LED est allumée pour signaler visuellement la présence de l'obstacle, et le buzzer émet un son d'avertissement..
Arduino UNO :
La carte Arduino UNO est l'une des cartes de développement les plus populaires et largement utilisées dans le domaine de l'électronique et de la programmation. Elle est basée sur un microcontrôleur ATmega328P et offre un ensemble de broches d'entrée/sortie numériques et analogiques ainsi que diverses fonctionnalités pour créer des projets électroniques interactifs.
La carte Arduino servira de cerveau pour contrôler et interagir avec les différents composants.
Capteur HC-SR04 :
Le capteur ultrason HC-SR04 est un dispositif électronique utilisé pour mesurer la distance entre le capteur et un objet en utilisant des ondes ultrasonores.
Afficheur LCD I2C :
Un écran LCD qui simplifie la connexion à la carte Arduino UNO en utilisant le protocole I2C. Il comprend un contrôleur intégré qui réduit le nombre de broches nécessaires pour le connecter à la carte Arduino UNO.
Il est utilisé pour afficher un message d'alerte si le capteur ultrason HC-SR04 detecte un obstcale.
Buzzer
Un buzzer est un composant électronique qui produit un son lorsqu'il est alimenté en courant électrique. Il est souvent utilisé pour émettre des signaux sonores dans divers dispositifs électroniques.
L'intégration d'un buzzer dans un système de détection d'obstacles permet d'ajouter un avertissement sonore lorsqu'un obstacle est détecté.
LED
L'utilisation d'une LED dans un système de détection d'obstacles peut fournir un indicateur visuel lorsque le capteur détecte la proximité d'un objet.
Résistance
Lorsque vous utilisez une LED dans un circuit, il est généralement nécessaire d'ajouter une résistance en série avec la LED pour limiter le courant qui la traverse. Cela protège la LED et évite qu'elle ne soit endommagée en raison d'un courant excessif.
Fils de connexion :
Pour établir les connexions physiques entre la carte Arduino UNO, le capteur HC-SR04 et l'afficheur LCD I2C. Assurez-vous d'avoir des fils de bonne qualité pour des connexions stables.
Plaque d'essai (Breadboard) :
On utilise le plaque d'essai pour faciliter le câblage des différents composants.
Détail des connexions :
Pour le Capteur HC-SR04 :
Connecter la broche VCC du capteur HC-SR04 à la broche 3.3V de la carte Arduino UNO.
Connecter la broche GND du capteur HC-SR04 à la broche GND de la carte Arduino UNO.
Connecter la broche Trig du capteur HC-SR04 à la broche numérique N°2 de la carte Arduino UNO.
Connecter la broche Echo du capteur HC-SR04 à la broche numérique N°3 de la carte Arduino UNO.
Pour l'écran LCD I2C :
Connecter la broche VCC de l'écran à 5V de la carte Arduino UNO
Connecter la broche GND de l'écran à GND de la carte Arduino UNO
Connecter la broche SDA de l'écran à la broche analogique A4 de la carte Arduino UNO
Connecter la broche SCL de l'écran à la broche analogique A5 de la carte Arduino UNO
Pour le buzzer
Connecter la borne (+) du buzzer à la broche numérique N°4 de la carte Arduino UNO.
Connecter la borne (-) du buzzer à la broche GND de la carte Arduino UNO.
Pour la LED
Connectez une résistance en série avec la LED: La résistance est connectée entre la broche numérique N°5 et la borne positive (anode) de la LED.
Connectez la borne négative (cathode) de chaque LED à la masse (GND) de la carte Arduino UNO.
1- Importer la bibliothèques LiquidCrystal_I2C dédiées à l'afficheur LCD I2C
2- Importer la bibliothèque Ultrasonic dédiées au capteur ultrason HC-SR04
3- Écrire ce code nécessaire pour la carte Arduino UNO :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 |
#include "Ultrasonic.h" #include <LiquidCrystal_I2C.h> LiquidCrystal_I2C lcd(0x27, 20, 4); Ultrasonic ultrasonic(2, 3); // Trig et Echo int buzzer_pin = 4; int redled_pin = 5; void setup() { Serial.begin(9600); lcd.init(); // initialisation de l’afficheur lcd.backlight(); // active le rétro-éclairage pinMode(buzzer_pin, OUTPUT); pinMode(redled_pin, OUTPUT); } void loop () { int distance = ultrasonic.Ranging(CM); Serial.print("distance= "); Serial.print(distance); Serial.println(" cm"); // Si le capteur HC-SR04 detecte un obstacle if (distance < 4) { // sonner le buzzer digitalWrite(buzzer_pin, HIGH); // allumer LED rouge digitalWrite(redled_pin, HIGH); lcd.setCursor(0, 0); // se positionner à la premiere ligne lcd.print("attention !!!"); lcd.setCursor(0, 1); // se positionner à la deuxieme ligne lcd.print("obstacle detecte"); } else { lcd.clear(); // effacer le contenu de l’Afficheur LCD // arreter le buzzer digitalWrite(buzzer_pin, LOW); // eteindre LED rouge digitalWrite(redled_pin, LOW); } delay(100); } |
Ce code mesure la distance avec le capteur ultrasonique, affiche "obstacle detecte" sur l'écran LCD, allume la LED et active le buzzer si un obstacle est détecté à moins de 4 cm.
La robotique éducative joue un rôle important dans l'éducation des enfants et des jeunes en les aidant à acquérir des compétences en science et technologie.
Dans ce cadre notre site web représente une excellente ressource pour les parents, les enseignants et les enfants qui souhaitent découvrir la robotique.
Zaouiet Kontech-Jemmel-Monastir-Tunisie
+216 92 886 231
medaliprof@gmail.com
Site robotique réalisé par Mohamed Ali-Prof Info