/* * Athors: Oulis Evnagelos, Oulis Nikolaos, Katsibras Drosos * Ultrasonic Sensor HC-SR04 and Arduino * */ // defines pins numbers const int trigPin = 9; const int echoPin = 10; const int response = 6; const int response1 = 5; const int id = 2; // defines variables long duration; int distance; void setup() { pinMode(trigPin, OUTPUT); // Sets the trigPin as an Output pinMode(response, OUTPUT); pinMode(response1, OUTPUT); pinMode(echoPin, INPUT); // Sets the echoPin as an Input Serial.begin(9600); // Starts the serial communication // Clears the trigPin digitalWrite(trigPin, LOW); delayMicroseconds(2); } void loop() { // Sets the trigPin on HIGH state for 10 micro seconds 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; // Prints the distance on the Serial Monitor //Serial.print("Distance: "); //Serial.println(distance); String park_out; if (distance < 4){ park_out = String(id) + "#0"; //parking isn't available. digitalWrite(response, LOW); digitalWrite(response1, HIGH); } else{ park_out = String(id) + "#1"; //parking is available. digitalWrite(response, HIGH); digitalWrite(response1, LOW); } Serial.println(park_out); delay(500); }