Υλικά
1 Arduino
1 (μπλε) USB καλώδιο (προγραμματισμός και τροφοδοσία)
1 Αισθητήρας υπερήχων
1 Buzzer
1 breadboard
6 καλώδια Αρσενικό-Αρσενικό
Συνδεσμολογία
VCC του Αισθητήρα –> Arduino 5V
GND του Αισθητήρα –> Arduino GND
TRIG του Αισθητήρα –> Arduino 13
ECHO του Αισθητήρα –> Arduino 12
Αρνητικό ποδαράκι του Buzzer –> Arduino GND
Θετικό ποδαράκι του Buzzer –> Arduino 5
Κώδικας
int echoPin = 12;
int trigPin = 13;
int alarmPin = 5;
// Η απόσταση στην οποία θα χτυπήσει συναγερμός
int alarmRange=30;
//Ο χρόνος που κάνει ο παλμός να επιστρέψει και η απόσταση που υπολογίζουμε από αυτή
float duration, distance;
void setup() {
pinMode(trigPin, OUTPUT);
pinMode(echoPin, INPUT);
pinMode(alarmPin, OUTPUT);
Serial.begin(9600); //επικοινωνία με τη σειριακή οθόνη για να βλέπουμε τα μηνύματα
}
void loop() {
//Δημιουργία του παλμού που στέλνει ο αισθητήρας
digitalWrite(trigPin, LOW);
delayMicroseconds(2);
digitalWrite(trigPin, HIGH);
delayMicroseconds(10);
digitalWrite(trigPin, LOW);
//Επιστροφή του παλμού και υπολογισμός του χρόνου που χρειάστηκε
duration = pulseIn(echoPin, HIGH);
//Υπολογισμός της απόστασης (σε cm) από τον χρόνο που έκανε να επιστρέψει ο παλμός και την ταχύτητα του ήχου.
distance = duration/58.2;
Serial.println(distance,2);
//Εμφάνιση της απόστασης στην οθόνη
if(distance < alarmRange)
digitalWrite(alarmPin,HIGH);
else
digitalWrite(alarmPin,LOW);
delay(50);
}