Arduino Masterclass - Μάθημα 2.1: Υπερήχων (Ultrasonic) 🦇

 

Μέτρηση απόστασης και αποφυγή εμποδίων

Καλωσορίσατε στην Ενότητα 2! Σήμερα θα δώσουμε στο Arduino την αίσθηση της απόστασης. Θα χρησιμοποιήσουμε τον αισθητήρα HC-SR04, ο οποίος λειτουργεί ακριβώς όπως οι νυχτερίδες: στέλνει έναν ήχο που εμείς δεν ακούμε, αυτός χτυπάει σε ένα εμπόδιο, επιστρέφει, και εμείς υπολογίζουμε την απόσταση βάσει του χρόνου που χρειάστηκε.

🛠️ Τι θα χρειαστούμε;

  1. Arduino Uno

  2. Αισθητήρας HC-SR04

  3. 4 Καλώδια Jumper (Male-to-Male)

  4. Breadboard

🔌 Η Συνδεσμολογία

Ο αισθητήρας έχει 4 pins. Συνδέστε τα ως εξής:

  • VCC ➡️ Arduino 5V

  • Trig (Trigger) ➡️ Arduino Digital Pin 9

  • Echo ➡️ Arduino Digital Pin 10

  • GND ➡️ Arduino GND



💻 Ο Κώδικας (The Sketch)

Αντιγράψτε τον παρακάτω κώδικα στο Arduino IDE σας. Έχουμε προσθέσει σχόλια για να καταλάβετε ακριβώς τι κάνει κάθε γραμμή.

// Ορισμός των Pins
const int trigPin = 9;
const int echoPin = 10;

// Μεταβλητές για τον χρόνο και την απόσταση
long duration;
int distance;

void setup() {
  pinMode(trigPin, OUTPUT); // Το Trig στέλνει τον ήχο
  pinMode(echoPin, INPUT);  // Το Echo δέχεται την επιστροφή
  Serial.begin(9600);       // Έναρξη επικοινωνίας με την οθόνη (Serial Monitor)
}

void loop() {
  // Καθαρισμός του trigPin
  digitalWrite(trigPin, LOW);
  delayMicroseconds(2);

  // Αποστολή ήχου για 10 microseconds
  digitalWrite(trigPin, HIGH);
  delayMicroseconds(10);
  digitalWrite(trigPin, LOW);

  // Ανάγνωση του χρόνου επιστροφής
  duration = pulseIn(echoPin, HIGH);

  // Υπολογισμός απόστασης σε εκατοστά (cm)
  // Ταχύτητα ήχου / 2 (γιατί η διαδρομή είναι πήγαινε-έλα)
  distance = duration * 0.034 / 2;

  // Εμφάνιση αποτελέσματος στο Serial Monitor
  Serial.print("Distance: ");
  Serial.print(distance);
  Serial.println(" cm");

  delay(500); // Μικρή παύση πριν την επόμενη μέτρηση
}

Δες το GitHub Repository εδώ!

🚀 Unique Tech Pro-Tips

  • Προσοχή στις γωνίες: Ο αισθητήρας υπερήχων δυσκολεύεται να "δει" αντικείμενα που έχουν μεγάλη κλίση, γιατί ο ήχος αντανακλάται μακριά του αντί να επιστρέψει.

  • Μαλακές επιφάνειες: Υφάσματα ή λούτρινα παιχνίδια απορροφούν τον ήχο. Αν φτιάχνετε ένα ρομπότ αποφυγής εμποδίων, δοκιμάστε το πρώτα σε τοίχους ή σκληρά πλαστικά.

  • To MLA Link: Στο project μας MLA, χρησιμοποιούμε παρόμοιους αισθητήρες για να καταλαβαίνουμε το περιβάλλον γύρω μας!

📋 Η Πρόκληση της Ημέρας

Φτιάξτε ένα κύκλωμα όπου:

  1. Αν η απόσταση είναι μικρότερη από 15cm, ένα κόκκινο LED θα ανάβει (Προειδοποίηση σύγκρουσης!).

  2. Αν η απόσταση είναι μεγαλύτερη, το LED θα μένει σβηστό.


📜 Άδεια Χρήσης & Πνευματικά Δικαιώματα

Το περιεχόμενο αυτής της ανάρτησης (κείμενα, οδηγίες και φωτογραφίες) αποτελεί πνευματική ιδιοκτησία της Unique Tech. Ο παρεχόμενος κώδικας διατίθεται υπό την άδεια MIT License.

Προϋπόθεση χρήσης: Επιτρέπεται η ελεύθερη χρήση και αναπαραγωγή, αρκεί να συμπεριλαμβάνεται η αρχική δήλωση πνευματικών δικαιωμάτων και η αναφορά στην Unique Tech ως αρχική πηγή. Για την πλήρη ανάλυση των δικαιωμάτων σας, διαβάστε τους Όρους Χρήσης μας εδώ.


Μοιραστείτε τα αποτελέσματά σας στα σχόλια! #UniqueTech #ArduinoMasterclass #UltrasonicSensor #Robotics #DIY

Σχόλια

Δημοφιλείς αναρτήσεις από αυτό το ιστολόγιο

Πώς να "διαβάζεις" τον αέρα: Σύνδεση αισθητήρων μέσω I2C με Arduino

Γιατί νυστάζουμε στην τάξη; Η αλήθεια πίσω από το CO2 και η λύση της Unique Tech

Καλωσορίσατε στο Unique Tech Blog!