diff --git a/arduino/Update sketchDistanceSerial.ino b/arduino/Update sketchDistanceSerial.ino index 6d643f6..c656eeb 100644 --- a/arduino/Update sketchDistanceSerial.ino +++ b/arduino/Update sketchDistanceSerial.ino @@ -1,34 +1,39 @@ -//Définition des constanntes -// PIN Echo -const int EchoPin = 8; -// PIN Trigger -const int TriggerPin = 9; - +// ---------------------------------------------------------------- // +// Arduino Ultrasoninc Sensor HC-SR04 +// Re-writed by Arbi Abdul Jabbaar +// Using Arduino IDE 1.8.7 +// Using HC-SR04 Module +// Tested on 17 September 2019 +// ---------------------------------------------------------------- // + +#define echoPin 2 // attach pin D2 Arduino to pin Echo of HC-SR04 +#define trigPin 3 //attach pin D3 Arduino to pin Trig of HC-SR04 + +// defines variables +long duration; // variable for the duration of sound wave travel +int distance; // variable for the distance measurement + void setup() { - Serial.begin(9600); - pinMode(TriggerPin, OUTPUT); - pinMode(EchoPin, INPUT); + pinMode(trigPin, OUTPUT); // Sets the trigPin as an OUTPUT + pinMode(echoPin, INPUT); // Sets the echoPin as an INPUT + Serial.begin(9600); // // Serial Communication is starting with 9600 of baudrate speed + Serial.println("Ultrasonic Sensor HC-SR04 Test"); // print some text in Serial Monitor + Serial.println("with Arduino UNO R3"); } - void loop() { - int cm = ping(TriggerPin, EchoPin); - Serial.print("Distance mesurée : "); - Serial.println(cm); - delay(1000); // 1 s -} - -//Calculer la distance -int ping(int TriggerPin, int EchoPin) { - long duration, distanceCm; - - digitalWrite(TriggerPin, LOW); //Démarrage de la séquence de 4 µs - delayMicroseconds(4); - digitalWrite(TriggerPin, HIGH); // Impulsion de déclenchement 10 µs - delayMicroseconds(10); - digitalWrite(TriggerPin, LOW); // Arrêt de l'impulsion - - duration = pulseIn(EchoPin, HIGH); // Émission du signal et lecture - - distanceCm = duration * 10 / 292/ 2; // Vitesse du son converti en cm - return distanceCm; + // Clears the trigPin condition + digitalWrite(trigPin, LOW); + delayMicroseconds(2); + // Sets the trigPin HIGH (ACTIVE) for 10 microseconds + digitalWrite(trigPin, HIGH); + delayMicroseconds(10); + digitalWrite(trigPin, LOW); + // Reads the echoPin, returns the sound wave travel time in microseconds + duration = pulseIn(echoPin, HIGH); + // Calculating the distance + distance = duration * 0.034 / 2; // Speed of sound wave divided by 2 (go and back) + // Displays the distance on the Serial Monitor + Serial.print("Distance: "); + Serial.print(distance); + Serial.println(" cm"); }