Étape 2: Le Arduino code
n’oubliez pas d’ajuster votre IDE avant de brancher le jury selon le type de carte Arduino vous utilisez, puis connectez votre ordinateur et notez le code suivant.
J’ai essayé d’expliquer autant de code que possible dans les commentaires, j’ai même ajouté quelques options dans le cas où vous souhaitez tester le capteur tout d’abord sur le moniteur de la série (comme moi) dans le cas où quelque chose n’est pas clair s’il vous plaît laissent un commentaire et je vais essayer de répondre.
/*
Capteur de distance HC-SR04 Ping :
VCC pour Arduino
Vin GND pour Arduino GND
Écho à Arduino axe 12
Trig pour Arduino broche 11 * /
#include < NewPing.h > //downloaded de l’internet & décompressé dans le dossier des bibliothèques dans le répertoire de l’Arduino
#define TRIGGER_PIN 11 / / goupille de Arduino lié à déclencher la broche sur le capteur à ultrasons.
#define ECHO_PIN 12 / / goupille de Arduino liée à la broche sur le capteur à ultrasons d’écho.
#define LEDPin 9 / / LED embarquée « Vert » pour indiquer le temps clair
int Buzzer = 8 ; Buzzer pour faire un son si la personne aveugle est confrontée à un obstacle
int maximumRange = 70 ; Portée maximale nécessaire
int minimumRange = 35 ; Portée minimale nécessaire
longue durée, distance ; Durée utilisée pour calculer la distance
void setup() {}
Serial.Begin (9600) ;
pinMode (TRIGGER_PIN, sortie) ;
pinMode (entrée, ECHO_PIN) ;
pinMode (LEDPin, sortie) ; Utilisez l’indicateur LED (si nécessaire)
pinMode (Buzzer, sortie) ;
}
void loop() {}
/ * Le cycle suivant de trigPin/echoPin est utilisé pour déterminer la distance de l’objet le plus proche via reflétant soundwaves hors de celui-ci (comme une chauve-souris!) */
digitalWrite (TRIGGER_PIN, basse) ;
delayMicroseconds(2) ;
digitalWrite (TRIGGER_PIN, élevé) ;
delayMicroseconds(10) ;
digitalWrite (TRIGGER_PIN, basse) ;
durée = pulseIn (ECHO_PIN, élevé) ;
distance = (durée/2) / 29,1 ; formule pour convertir la valeur mesurée par le capteur ultrasonique en centimètres
Si (distance > = maximumRange || distance < = minimumRange)
{
Serial.println ("Clear Path") ;
digitalWrite (LEDPin, élevé) ; Allumer la LED (verte) pour indiquer la « voie claire »
digitalWrite (sonnerie, faible) ;
}
else {}
Serial.println ("Obstruction avant!") ;
digitalWrite (sonnerie, élevé) ;
digitalWrite (LEDPin, basse) ;
}
Delay(50) ; Délai 50ms avant la prochaine lecture.
}
Voici une vidéo montrant un essai routier du circuit à l’aide de la carte Arduino Uno.