Εισαγωγή
Ο HC-SR04 είναι ένας από τους πιο διαδεδομένους αισθητήρες μέτρησης αποστάσεων που χρησιμοποιούνται σε συστήματα αυτοματισμού, ρομποτικής, ηλεκτρονικών κατασκευών και εκπαιδευτικά projects με Arduino, ESP32, Raspberry Pi και άλλους μικροελεγκτές. Η δημοτικότητά του οφείλεται στο χαμηλό κόστος, την εύκολη διασύνδεση και την ικανοποιητική ακρίβεια μέτρησης. Χρησιμοποιεί υπερηχητικά κύματα για να υπολογίζει την απόσταση ενός αντικειμένου χωρίς φυσική επαφή.

Περιγραφή του αισθητήρα HC-SR04
Ο HC-SR04 αποτελείται από δυο υπερηχητικούς transducers, ο ένας δρα σαν πομπός που εκπέμπει υπερηχητικούς παλμούς συχνότητας 40ΚΗz, ενώ ο άλλος είναι διαμορφωμένος σαν δέκτης. Η εκπομπή των υπερηχητικών παλμών από τον πομπό αρχίζει με την εφαρμογή ενός παλμού τάσης με διάρκεια το λιγότερο 10μS στον ακροδέκτη σκανδαλισμού Trig.
Ο δέκτης παράγει στον ακροδέκτη echo ένα παλμό, το πλάτος του οποίου μπορεί να χρησιμοποιηθεί για να ορίσει την απόσταση που διανύουν οι υπερηχητικοί παλμοί και τελικά την απόσταση του αντικειμένου. Η διάρκεια του παλμού τάσης στον ακροδέκτη echo είναι ανάλογο της απόστασης που διανύουν οι υπερηχητικοί παλμοί, το οποίο κυμαίνεται μεταξύ 150μS και 25mS. Αν αυτό το χρονικό διάστημα ξεπεράσει τα 38mS αυτό σημαίνει ότι δεν υπάρχει αντικείμενο μπροστά για να ανακλαστούν τα υπερηχητικά κύματα.
Τεχνικά χαρακτηριστικά
Τα τεχνικά χαρακτηριστικά του αισθητήρα HC-SR04 συνοψίζονται στον ακόλουθο πίνακα:
| Χαρακτηριστικό | Τιμή |
| Τάση λειτουργίας | 5V DC |
| Κατανάλωση ρεύματος | περίπου 15mA |
| Συχνότητα υπερήχων | 40 kHz |
| Ελάχιστη απόσταση | 2 cm |
| Μέγιστη απόσταση | 400 cm |
| Ακρίβεια | ±3 mm |
| Γωνία μέτρησης | περίπου 15 μοίρες |
| Ακροδέκτες | VCC, TRIG, ECHO, GND |
Διάταξη ακροδεκτών του HC-SR04
Η διάταξη των ακροδεκτών του αισθητήρα HC-SR04 απεικονίζεται στο ακόλουθο σχήμα

Vcc Τροφοδοσία τάσης DC στα 5V
Trig Σκανδαλισμός για αποστολή υπερηχητικών παλμών
Echo Παράγει ένα παλμό έως το ανακλώμενο σήμα ληφθεί. Το πλάτος του παλμού είναι ανάλογο με την απόσταση που διανύει το ηπερηχητικό κύμα από τη στιγμή της εκπομπής έως τη λήψη του.
GND Συνδεση στα 0V
Μέθοδος μέτρησης αποστάσεων με υπερήχους
Ας δούμε τον τρόπο με τον οποίο λειτουργεί ο αισθητήρας HC-SR04. Η διαδικασία ξεκινά με την αποστολή ενός παλμού από τον μικροελεγκτή στον ακροδέκτη Trigger του αισθητήρα, διάρκειας το λιγότερο 10μS. Σαν ανταπόκριση ο αισθητήρας στέλνει μια ριπή από υπερηχητικούς παλμούς συχνότητας 40ΚΗz, ενώ ταυτόχρονα με την αρχή της εκπομπής ο ακροδέκτης echo μεταβαίνει από LOW σε HIGH. Ο τρόπος εκπομπής των παλμών είναι τέτοιος που επιτρέπει στο δέκτη να διακρίνει το εκπεμπόμενο σήμα από το θόρυβο.
Από τη στιγμή της εκπομπής έως την λήψη του υπερηχητικού πακέτου το σήμα στον ακροδέκτη echo είναι HIGH. Το σήμα echo θα γυρίσει σε LOW με τη λήψη του ανακλώμενου σήματος. Το πλάτος αυτού του παλμού στον ακροδέκτη echo ορίζει την απόσταση του αισθητήρα από το εμπόδιο.
Στην περίπτωση που το υπερηχητικό σήμα δεν ανακλαστεί, ο παλμός στον ακροδέκτη echo θα πάρει την μέγιστη διάρκεια των 38mS και έπειτα θα γυρίσει σε LOW. Το σήμα echo είναι HIGH καθ’ όλη τη διάρκεια της κίνησης των υπερηχητικών παλμών πρόσπτωσης και ανάκλασης από το αντικείμενο.
Η διάρκεια του παλμού HIGH του σήματος echo ορίζει την απόσταση του αντικειμένου από τον αισθητήρα. Ο παλμός echo έχει πλάτος από 150μS έως 25mS που εξαρτάται από το χρόνο που πήρε από την εκπομπή μέχρι τη λήψη του υπερηχητικού σήματος.
Μέθοδος υπολογισμού απόστασης χρησιμοποιώντας υπερήχους
Το πλάτος του παλμού στον ακροδέκτη Echo χρησιμοποιείται για την εύρεση της απόστασης του αισθητήρα από το αντικείμενο στο οποίο ανακλώνται οι υπέρηχοι. Όπως μάθαμε στο σχολείο η απόσταση του αντικειμένου από τον HC-SR04 υπολογίζεται από την σχέση:
Απόσταση = Ταχύτητα Χ Χρόνος
Όπου η ταχύτητα είναι η ταχύτητα διάδοσης των υπερήχων στον αέρα και χρόνος είναι η χρονική διάρκεια που οι υπερηχητικοί παλμοί χρειάζονται να καλύψουν μια καθορισμένη απόσταση.
Ας κάνουμε ένα παράδειγμα για να το δούμε σαφέστερα. Υποθέτουμε ότι έχουμε ένα αντικείμενο μπροστά στον αισθητήρα σε άγνωστη απόσταση και λαμβάνουμε ένα παλμό πλάτους 650μs στον ακροδέκτη Echo. Για να υπολογίσουμε την απόσταση θα χρησιμοποιήσουμε την προηγούμενη σχέση.
Γνωρίζουμε την ταχύτητα του ήχου η οποία είναι 340m/s. Θα πρέπει να την εκφράσουμε σε μονάδες cm/μs. Κάνουμε τα μαθηματικά και βρίσκουμε την ταχύτητα σε αυτή τη μονάδα ίση με 0,034cm/μs. Έτσι η ζητούμενη απόσταση έχει τιμή:
Απόσταση = 0,034cm/μs X 650μs
Δεν έχουμε τελειώσει! Θυμηθείτε ο παλμός echo ορίζει το χρόνο που παίρνουν τα υπερηχητικά κύματα να κινηθούν από τον αισθητήρα προς το αντικείμενο στο οποίο ανακαλούνται και να γυρίσουν πίσω στο δέκτη. Έτσι θα πρέπει να διαιρέσουμε το αποτέλεσμα δια δυο. Δηλαδή:
Απόσταση = (0,034cm/s X 650μs) / 2 ή Απόσταση = 11cm
Έτσι τώρα γνωρίζουμε ότι το αντικείμενο βρίσκεται σε απόσταση 11 εκατοστά από τον αισθητήρα.
Παράδειγμα σύνδεσης με Arduino
Συνδέουμε τον αισθητήρα HC-SR04 με το Arduino Uno με τον εξής τρόπο: Τους ακροδέκτες VCC και GND με τα pins τροφοδοσίας 5V και GND αντίστοιχα. Τους ακροδέκτες TRIG και ECHO με τα pins του UNO #9 και #8 αντίστοιχα.
Ανεβάζουμε και τρέχουμε τον ακόλουθο κώδικα:
#define TRIG 9
#define ECHO 8
void setup() {
Serial.begin(9600);
pinMode(TRIG, OUTPUT);
pinMode(ECHO, INPUT);
}
void loop() {
digitalWrite(TRIG, LOW);
delayMicroseconds(2);
digitalWrite(TRIG, HIGH);
delayMicroseconds(10);
digitalWrite(TRIG, LOW);
long duration = pulseIn(ECHO, HIGH);
float distance = duration / 58.0;
Serial.print("Distance: ");
Serial.print(distance);
Serial.println(" cm");
delay(200);
}
Παράγοντες που επηρεάζουν την ακρίβεια
1] Θερμοκρασία
Η ταχύτητα του ήχου μεταβάλλεται με τη θερμοκρασία. Η ακριβή τιμή της ταχύτητας του ήχου δίνεται από την σχέση:
v = 331 + 0,6T όπου Τ η θερμοκρασία σε βαθμούς Κελσίου.
Σε εφαρμογές υψηλής ακρίβειας χρησιμοποιείται αισθητήρας θερμοκρασίας για διόρθωση.
2] Υγρασία
Η υψηλή υγρασία επηρεάζει ελαφρώς την ταχύτητα διάδοσης του ήχου.
3] Υλικό αντικειμένου
Τα υπερηχητικά κύματα αντανακλώνται καλύτερα σε υλικά όπως μέταλλο, ξύλο, σκληρό πλαστικό, ενώ αντανακλώνται χειρότερα σε υλικά όπως ύφασμα, σφουγγάρι, μαλακά υλικά.
4] Γωνία πρόσπτωσης
Αν η επιφάνεια είναι λοξή το ανακλώμενο κύμα μπορεί να μην επιστρέψει στον αισθητήρα, προκαλώντας λανθασμένες μετρήσεις.
5] Παρεμβολές από άλλους αισθητήρες
Όταν χρησιμοποιούνται πολλοί HC-SR04 ταυτόχρονα, μπορεί να λαμβάνουν τα ηχητικά κύματα ο ένας του άλλου. Συνιστάται χρονική καθυστέρηση μεταξύ των μετρήσεων.
Τρόποι χρήσης του HC-SR04
1] Αποφυγή εμποδίων σε ρομπότ
Η πιο διαδεδομένη εφαρμογή. Το ρομπότ μετρά συνεχώς την απόσταση. Αν εντοπίσει εμπόδιο σε προκαθορισμένο όριο τότε σταματά, στρίβει ή αλλάζει πορεία.
2] Αυτόματο παρκάρισμα
Παρόμοια με τα συστήματα αισθητήρων οχημάτων. Η συχνότητα των ηχητικών ειδοποιήσεων αυξάνεται όσο μειώνεται η απόσταση από το εμπόδιο.
3] Μετρηση στάθμης υγρών
Ο αισθητήρας τοποθετείται στην κορυφή της δεξαμενής. Μετρά την απόσταση από την επιφάνεια του υγρού και υπολογίζεται το επίπεδο πλήρωσης.
4] Έξυπνοι κάδοι απορριμμάτων
Ο αισθητήρας ανιχνεύει το χέρι του χρήστη και ανοίγει αυτόματα το καπάκι.
5] Μετρητής ύψους ή μήκους
Μπορεί να χρησιμοποιηθεί ως ηλεκτρονικός χάρακας για γρήγορη μέτρηση αποστάσεων.
6] Συστήματα ασφαλείας
Εντοπισμός παρουσίας ατόμων ή αντικειμένων σε προκαθορισμένη περιοχή
7] Βιομηχανικοί αυτοματισμοί
Χρήσεις όπως: ανίχνευσης αντικειμένων σε γραμμές παραγωγής, μέτρηση θέσης κινητών μερών, παρακολούθηση ποσότητας υλικών κ.ά.
Πλεονεκτήματα και μειονεκτήματα χρήσης του HC-SR04
Πλεονεκτήματα του αισθητήρα είναι το χαμηλό κόστος, η εύκολη σύνδεση, η καλή ακρίβεια, δεν απαιτεί φυσική επαφή, λειτουργεί σε σκοτεινό περιβάλλον, μεγάλη υποστήριξη από βιβλιοθήκες και παραδείγματα.
Μειομεκτήματα του αισθητήρα είναι ότι επηρεάζεται από τη θερμοκρασία, δυσκολεύεται σε μαλακές ή απορροφητικές επιφάνειες, περιορισμένη γωνιακή ανάλυση, δεν είναι κατάλληλος για πολύ μικρές ή πολύ μεγάλες αποστάσεις, μπορεί να παρουσιάσει παρεμβολές από άλλους υπερηχητικούς αισθητήρες.
Συμπεράσματα
Ο HC-SR04 αποτελεί έναν από τους πιο επιτυχημένους και εκπαιδευτικά χρήσιμους αισθητήρες μέτρησης αποστάσεων. Βασίζεται στη μέτρηση του χρόνου που απαιτείται ώστε ένα υπερηχητικό κύμα να ταξιδέψει μέχρι ένα αντικείμενο και να επιστρέψει ως ηχώ. Με πλεονεκτήματα το εύρος μέτρησης 2–400 cm, την απλή διασύνδεση τεσσάρων ακροδεκτών και την πολύ καλή ακρίβεια για το κόστος του, χρησιμοποιείται ευρέως σε εφαρμογές ρομποτικής, αυτοματισμών, μετρήσεων στάθμης, συστημάτων ασφαλείας και εκπαιδευτικών έργων ηλεκτρονικής