Περίληψη: Σε αυτή τη δραστηριότητα θα δούμε πως μπορούμε να χρησιμοποιήσουμε έναν υπερηχητικό αισθητήρα απόστασης για να μετρήσουμε απόσταση από ένα εμπόδιο και να απεικονίσουμε την απόσταση
στην οθόνη του micro:bit. Θα δούμε πως μπορούμε να συνδέσουμε τον αισθητήρα και να χρησιμοποιήσουμε κάποια απλά ηλεκτρονικά εξαρτήματα όπως η πλακέτα πρωτοτυποποίησης (solderless breadboard), οι αντιστάσεις, τα καλώδια και η εξωτερική τροφοδοσία.
Στόχοι:
• Εξοικείωση με κάποια βασικά ηλεκτρονικά εξαρτήματα και εργαλεία όπως οι αντιστάσεις και οι
πλακέτες πρωτοτυποποίησης.
• Προσαρμογή εξαρτημάτων στο micro:bit.
• Πως λειτουργεί η μέτρηση απόστασης με έναν υπερηχητικό αισθητήρα και πως μπορούμε να
χρησιμοποιήσουμε μια έτοιμη βιβλιοθήκη για να μετρήσουμε την απόσταση χρησιμοποιώντας τις
ιδιότητες του ήχου.
• Απεικόνιση των δεδομένων που διαβάστηκαν από τον υπερηχητικό αισθητήρα απόστασης σε
πραγματικό χρόνο στην οθόνη του micro:bit.
Απαιτούμενο Υλικό ... Εξαρτήματα
1 Micro:bit board
2 Καλώδιο Micro USB (για να συνδέσουμε το Micro:bit με τον υπολογιστή)
3 HC-SR04 Ultrasonic sensor
4 Πλακέτα πρωτοτυποποίησης
5 Αντιστάσεις (1x330 Ohms, 1x470 Ohms)
6 Καλωδιάκια
7 Μπαταρίοθήκη με έξοδο 4.8 Volts
Ας το δούμε κομμάτι - κομμάτι.
1. Το micro:bit δουλεύει στα 3,3 Volts, τόσο στην τροφοδοσία του, όσο και στις εισόδους και εξόδους
των ακροδεκτών του. Αυτό σημαίνει ότι αν του στείλουμε περισσότερα από 3,3Volts σε κάποιο από
τους ακροδέκτες του μπορεί να πάθει ζημιά. Επίσης, το micro:bit δεν μπορεί να τροφοδοτήσει τον
αισθητήρα υπερήχων με τα περίπου 5 Volts που χρειάζεται για τροφοδοσία..
2. Ο αισθητήρας HC-SR04 είναι πολύ συνηθισμένος. Έχει 4 ακροδέκτες που συνήθως έχουν τις
ενδείξεις VCC (τροφοδοσία), ping ή trig (σκανδαλισμός) , echo (ηχώ) and GND (γείωση). Όμως, οι
περισσότερες εκδόσεις του HC-SR04 χρειάζονται τουλάχιστον 4.8Volts που είναι πολύ περισσότερα
από τα 3 έως 3,3 Volts που το micro:bit μπορεί να παρέχει γι’ αυτό του παρέχουμε τροφοδοσία με
μπαταρίοθήκη.
Χρησιμοποιούμε επαναφορτιζόμενες μπαταρίες NiMH (μεγέθους AA ή AAA) που παρέχουν 1,2 Volts η καθεμία, έτσι πρέπει να χρησιμοποιήσουμε μια μπαταριοθήκη που παίρνει 4 μπαταρίες αφού 4x1.2Volts = 4.8Volts. Η γείωση (ο αρνητικός ακροδέκτης που είναι σημειωμένος με - ) της μπαταριοθήκης πρέπει να είναι πάντα συνδεδεμένη στη γείωση (GND) του micro:bit.
Ένας αισθητήρας απόστασης υπερήχων δουλεύει στέλνοντας έναν σύντομο υπερηχητικό παλμό όταν ο ακροδέκτης trig ενεργοποιείται θέτοντάς τον σε κατάσταση ΥΨΗΛΟ.
Αν ο παλμός συναντήσει ένα εμπόδιο, αντανακλάται πίσω και εντοπίζεται από τον αισθητήρα και ενεργοποιεί τον ακροδέκτη echo θέτοντας τον σε κατάσταση ΥΨΗΛΟ.
Μετρώντας το χρόνο που μεσολάβησε μεταξύ της αποστολής του παλμού με την ενεργοποίηση του trig ακροδέκτη και της αλλαγής της κατάστασης του ακροδέκτη echo σε ΥΨΗΛΟ μπορούμε να προσδιορίσουμε την απόσταση από το εμπόδιο.
Έτσι μπορούμε να κάνουμε τους ακόλουθους υπολογισμούς.:
2*S(απόσταση από το εμόδιο) =χρόνος x ταχύτητα του ήχου.
Έτσι προκύπτει ότι η απόσταση από το εμπόδιο είναι
S = (χρόνος x ταχύτητα του ήχου στον αέρα) / 2.
Αν για παράδειγμα μετρούσαμε το χρόνο μεταξύ την αποστολή του παλμού στον ακροδέκτη trig και τη λήψη της απάντησης στον ακροδέκτη echo ως 0.005 δευτερόλεπτα (5 milliseconds) τότε η απόσταση ως το εμόδιο είναι (0.005 sec x 343 m/sec) / 2 = 0.8575 m = περίπου 85 εκατοστά.
Φυσικά χρησιμοποιούμε την παραδοχή ότι η ταχύτητα του ήχου είναι σταθερή και ίση με 343 m/sec. Στην πραγματικότητα η ταχύτητα του ήχου στον αέρα μεταβάλλεται με τη θερμοκρασία την ατμοσφαιρική πίεση κλπ., μα για τις περισσότερες περιπτώσεις τα αποτελέσματα της παραδοχής αυτής δε μας δημιουργούν σφάλμα μεγαλύτερο από 1 με 2 εκατοστά.
Ο ακροδέκτης trig μπορεί να ενεργοποιηθεί με το micro:bit παρόλο που αυτό μπορεί να στείλει
μόνο 3,3 Volts, γιατί στις περισσότερες ηλεκτρονικές διατάξεις αρκεί να στείλουμε σε έναν
ακροδέκτη εισόδου μια τάση ίση με 2/3 την τιμή της τάσης τροφοδοσίας για να ενεργοποιηθούν.
Όμως ο ακροδέκτης echo όταν ενεργοποιείται έχει τάση κοντά στα 4,8 Volts που θα μπορούσε να προκαλέσει ζημιά στον ακροδέκτη εισόδου του micro:bit. Για να το διορθώσουμε αυτό μπορούμε να χρησιμοποιήσουμε μια απλή διάταξη με αντιστάσεις που λέγεται διαιρέτης τάσης που χρησιμοποιεί απλές αντιστάσεις σε σειρά. Ένας διαιρέτης τάσης «διαιρεί» μια τάση σε 2 ή περισσότερες τάσεις που προσδιορίζονται από την αναλογία τιμών των αντιστάσεων.
Τώρα ας δούμε πως μπορούμε να προγραμματίσουμε το micro:bit να μετράει την απόσταση με τον
υπερηχητικό αισθητήρα απόστασης..
Βήματα της δραστηριότητας
1. Ξεκινήστε ένα καινούριο έργο στο MakeCode. Μπορείτε να το πείτε ultrasonicsensor.
2. Ευτυχώς για μας, δεν χρειάζεται να κάνουμε κάποιο πολύπλοκο υπολογισμό. Υπάρχει μια έτοιμη
επέκταση για το micro:bit που λέγεται sonar και μας επιτρέπει να χρησιμοποιήσουμε υπερηχητικούς αισθητήρες απόστασης οπότε ας το χρησιμοποιήσουμε. 50
Η επέκταση θα προσθέσει ένα μπλοκ Sonar στην περιοχή των μπλοκ, με ένα μοναδικό μπλοκ με την ονομασία ping. Είναι καλή ιδέα επίσης να προσθέσετε και το πακέτο greekled, έτσι ώστε να μπορέσετε να απεικονίσετε την απόσταση που θα μετρήσει ο υπερηχητικός αισθητήρας απόστασης.
3. Θα χρειαστούμε και μια μεταβλητή που θα την ονομάσουμε «distance» που θα αποθηκεύει την
απόσταση που θα μετράμε κάθε φορά.
Όπως μπορείτε να δείτε το μπλοκ ping παίρνει τρεις παραμέτρους. Τον ακροδέκτη trig, τον ακροδέκτη echo και την μονάδα που θα μας γυρίσει το αποτέλεσμα (cm (εκατοστά), in (ίντσες) ή μsec (μικροδευτερόλεπτα). Έτσι με τη χρήση πολύ λίγων μπλοκ φτιάξαμε μια πολύ απλή αλλά χρήσιμη συσκευή μέτρησης με υπερήχους.
4. Δυστυχώς δεν γίνεται να δοκιμάσουμε τον υπερηχητικό αισθητήρα υπερήχων στον προσομοιωτή έτσι πρέπει να φτιάξουμε τη συνδεσμολογία και να κατεβάσουμε τον κώδικα στο micro:bit για να τον δοκιμάσουμε.