Πώς να χρησιμοποιήσετε ένα Raspberry Pi για να παρακολουθείτε τις θερμοκρασίες με ένα Sense HAT

Υπάρχουν διάφοροι τρόποι με τους οποίους μπορείτε να παρακολουθείτε τη θερμοκρασία περιβάλλοντος χρησιμοποιώντας έναν υπολογιστή μονής πλακέτας Raspberry Pi, ίσως ως μέρος μιας εγκατάστασης μετεωρολογικού σταθμού. Ενώ θα μπορούσατε να χρησιμοποιήσετε έναν εξωτερικό αισθητήρα συνδεδεμένο με τις ακίδες GPIO του Raspberry Pi, εδώ θα εξηγήσουμε πώς να παρακολουθείτε τη θερμοκρασία με ένα Raspberry Pi εξοπλισμένο με Sense HAT.

Τι είναι το Sense HAT;

Πίστωση εικόνας: Raspberry Pi

Ένα επίσημο πρόσθετο Raspberry Pi HAT (Hardware Attached on Top) που σχεδιάστηκε και παράγεται από την εταιρεία Raspberry Pi, το Sense HAT δημιουργήθηκε αρχικά για να χρησιμοποιηθεί από αστροναύτες στον Διεθνή Διαστημικό Σταθμό. Από το 2015, δύο υπολογιστές Raspberry Pi εξοπλισμένοι με Sense HAT έχουν χρησιμοποιηθεί σε επιστημονικά πειράματα που σχεδιάστηκαν από μαθητές που μπήκαν στο συνεχιζόμενο Astro Pi πρόκληση Αυτές οι δύο μονάδες έχουν αντικατασταθεί από αναβαθμισμένες εκδόσεις που βασίζονται σε Raspberry Pi 4 και είναι εξοπλισμένες με κάμερα υψηλής ποιότητας.

Πίστωση εικόνας: Raspberry Pi

Αν και δεν διαθέτει την ειδική ασημένια θήκη που έχει σχεδιαστεί για χρήση στο χώρο, η τυπική πλακέτα Sense HAT έχει ακριβώς την ίδια λειτουργικότητα. Συμβατό με οποιοδήποτε μοντέλο Raspberry Pi με κεφαλίδα GPIO 40 ακίδων, διαθέτει μια σειρά από ενσωματωμένους αισθητήρες που του επιτρέπουν να παρακολουθεί το περιβάλλον και να ανιχνεύει τον δικό του προσανατολισμό και κίνηση. Επιπλέον, διαθέτει μήτρα LED 8×8 RGB για εμφάνιση κειμένου, δεδομένων και εικόνων. Υπάρχει επίσης ένα μίνι joystick πέντε κατευθύνσεων.

Η πλήρης σειρά των αισθητηριακών λειτουργιών Sense HAT έχει ως εξής:

  • Υγρασία: Αισθητήρας STMicro HTS221 με εύρος σχετικής υγρασίας 0 έως 100%, συν αισθητήρα θερμοκρασίας από 32°F έως 149°F (0°C έως 65°C ± 2°C).
  • Βαρομετρική πίεση: Αισθητήρας STMicro LPS25HB με εύρος από 260 έως 1260 hPa, συν αισθητήρα θερμοκρασίας από 59°F έως 104°F (15°C έως 40°C ±0,5°C).
  • Θερμοκρασία: Αυτό μπορεί να διαβαστεί από τον αισθητήρα υγρασίας ή πίεσης ή να μετρηθεί λαμβάνοντας έναν μέσο όρο και των δύο μετρήσεων.
  • Γυροσκόπιο: Το STMicro LSM9DS1 IMU μπορεί να μετρήσει την περιστροφή του Sense HAT σε σχέση με την επιφάνεια της Γης (και πόσο γρήγορα περιστρέφεται).
  • Επιταχυνσιόμετρο: Μια άλλη λειτουργία του IMU, μπορεί να μετρήσει τη δύναμη επιτάχυνσης σε πολλές κατευθύνσεις.
  • Μαγνητόμετρο: Ανιχνεύοντας το μαγνητικό πεδίο της Γης, το IMU μπορεί να καθορίσει την κατεύθυνση του μαγνητικού Βορρά και έτσι να δώσει μια ένδειξη πυξίδας.
  Πώς να χρησιμοποιήσετε το AWS Educate ως μαθητής και υπεύθυνος προσλήψεων

Τώρα που έχετε καταλάβει τι μπορεί να κάνει αυτό το πολλαπλών χρήσεων Raspberry Pi HAT, ήρθε η ώρα να ξεκινήσετε με το έργο.

Βήμα 1: Τοποθετήστε το Sense HAT

Για να συνδέσετε το Sense HAT, βεβαιωθείτε πρώτα ότι το Raspberry Pi σας είναι απενεργοποιημένο και αποσυνδεδεμένο από το ρεύμα. Στη συνέχεια, σπρώξτε προσεκτικά το Sense HAT (με την παρεχόμενη μαύρη προέκταση κεφαλίδας) στην κεφαλίδα GPIO 40 ακίδων του Raspberry Pi, έτσι ώστε η πλακέτα Sense HAT να τοποθετηθεί πάνω από την πλακέτα Raspberry Pi. Βεβαιωθείτε ότι όλες οι ακίδες ευθυγραμμίζονται σωστά και ότι και οι δύο σειρές είναι συνδεδεμένες. Μπορείτε επίσης να χρησιμοποιήσετε βιδωτές βάσεις για να το ασφαλίσετε.

Μπορείτε να χρησιμοποιήσετε οποιοδήποτε τυπικό μοντέλο Raspberry Pi που έχει κεφαλίδα GPIO 40 ακίδων. Ένας από τους βασικούς περιορισμούς ενός Raspberry Pi 400, ωστόσο, είναι ότι η κεφαλίδα GPIO του βρίσκεται στο πίσω μέρος του ενσωματωμένου πληκτρολογίου. Αυτό σημαίνει ότι το Sense HAT θα είναι στραμμένο προς τα πίσω, επομένως μπορεί να θέλετε να χρησιμοποιήσετε ένα καλώδιο επέκτασης GPIO για να το συνδέσετε.

Βήμα 2: Ρυθμίστε το Raspberry Pi

Όπως με κάθε άλλο έργο, θα πρέπει να συνδέσετε ένα πληκτρολόγιο και ποντίκι USB και στη συνέχεια να συνδέσετε το Raspberry Pi σε μια οθόνη ή τηλεόραση. Θα πρέπει επίσης να έχετε τοποθετήσει μια κάρτα microSD με το τυπικό λειτουργικό σύστημα Raspberry Pi – εάν δεν το έχετε κάνει ήδη, δείτε πώς να εγκαταστήσετε ένα λειτουργικό σύστημα σε ένα Raspberry Pi. Τότε είστε έτοιμοι να ενεργοποιήσετε το ρεύμα.

  Διορθώστε τα πλαϊνά κουμπιά Corsair Scimitar που δεν λειτουργούν

Εναλλακτικά, μπορείτε να χρησιμοποιήσετε το Raspberry Pi με Sense HAT σε λειτουργία χωρίς κεφαλή, χωρίς συνδεδεμένη οθόνη και να συνδεθείτε στο Raspberry Pi εξ αποστάσεως χρησιμοποιώντας SSH από άλλον υπολογιστή ή συσκευή. Εάν το κάνετε αυτό, δεν θα μπορείτε να χρησιμοποιήσετε το Thonny Python IDE, μπορείτε να επεξεργάζεστε προγράμματα με buy ακόμα χρησιμοποιώντας τον επεξεργαστή κειμένου nano και να τα εκτελέσετε από τη γραμμή εντολών.

Το υλικολογισμικό Sense HAT θα πρέπει να εγκατασταθεί από προεπιλογή. Για διπλό έλεγχο, ανοίξτε ένα παράθυρο τερματικού και πληκτρολογήστε:

 sudo apt install sense-hat

Στη συνέχεια, εάν το πακέτο έχει μόλις εγκατασταθεί, επανεκκινήστε το Raspberry Pi:

 sudo reboot

Βήμα 3: Ξεκινήστε τον προγραμματισμό σε Python

Ενώ μπορείτε να χρησιμοποιήσετε το Raspberry Pi Sense HAT με τη γλώσσα προγραμματισμού που βασίζεται σε μπλοκ Scratch, θα χρησιμοποιήσουμε την Python για να διαβάσουμε και να εμφανίσουμε τις ενδείξεις του αισθητήρα.

Το Thonny IDE (ενσωματωμένο περιβάλλον ανάπτυξης) είναι ένας καλός τρόπος για να κάνετε προγραμματισμό Python σε ένα Raspberry Pi, καθώς έχει πολλές λειτουργίες, συμπεριλαμβανομένων χρήσιμων χαρακτηριστικών εντοπισμού σφαλμάτων. Στο γραφικό περιβάλλον εργασίας επιφάνειας εργασίας του Raspberry Pi OS, μεταβείτε στο Μενού (επάνω αριστερά εικονίδιο raspberry) > Προγραμματισμός > Thonny IDE για να το εκκινήσετε.

Βήμα 4: Κάντε μέτρηση θερμοκρασίας

Στο κύριο παράθυρο του Thonny IDE, εισαγάγετε τις ακόλουθες γραμμές κώδικα:

 
from sense_hat import SenseHat

sense = SenseHat()
sense.clear()

temp = sense.get_temperature()
print(temp)

Η πρώτη γραμμή εισάγει την κλάση SenseHat από τη βιβλιοθήκη sense_hat Python (η οποία είναι προεγκατεστημένη στο Raspberry Pi OS). Αυτό στη συνέχεια εκχωρείται στη μεταβλητή αίσθησης. Η τρίτη γραμμή διαγράφει τη μήτρα LED του Sense HAT.

Στη συνέχεια λαμβάνουμε την ένδειξη θερμοκρασίας και την εκτυπώνουμε στην περιοχή Shell του Thonny IDE. Αυτό είναι σε βαθμούς Κελσίου, επομένως ίσως θελήσετε να το μετατρέψετε πρώτα σε Φαρενάιτ:

 temp = (sense.get_temperature() * 1.8 + 32) 

Η ένδειξη του αισθητήρα θερμοκρασίας θα έχει πολλά ψηφία μετά την υποδιαστολή. Επομένως, θα χρησιμοποιήσουμε τη συνάρτηση στρογγυλής για να τη στρογγυλοποιήσουμε σε ένα μόνο δεκαδικό ψηφίο:

 temp = round(temp, 1) 

Η συνάρτηση sense.get_temperature() διαβάζει τον αισθητήρα θερμοκρασίας που είναι ενσωματωμένος στον αισθητήρα υγρασίας. Εναλλακτικά, θα μπορούσατε να λάβετε μια ένδειξη θερμοκρασίας από τον αισθητήρα πίεσης με το sense.get_temperature_from_pressure() ή ακόμη και να λάβετε και τις δύο μετρήσεις και να υπολογίσετε έναν μέσο όρο (προσθέτοντάς τις και διαιρώντας με δύο).

  6 εύκολοι τρόποι για να επαληθεύσετε τον αποστολέα

Βήμα 5: Εμφάνιση της θερμοκρασίας στο Sense HAT

Η εκτύπωση μιας μεμονωμένης ένδειξης θερμοκρασίας στο κέλυφος της Python είναι λίγο βαρετή, οπότε ας κάνουμε μια νέα ένδειξη τακτικά και ας την εμφανίζουμε στη μήτρα RGB LED του Sense HAT. Για να εμφανίσουμε ένα κυλιόμενο μήνυμα κειμένου, χρησιμοποιούμε τη συνάρτηση show_message. Θα χρησιμοποιήσουμε επίσης ένα time: True loop για να συνεχίσουμε να κάνουμε μια νέα ανάγνωση κάθε 10 δευτερόλεπτα—για την οποία χρησιμοποιούμε τη λειτουργία ύπνου από τη βιβλιοθήκη χρόνου.

Εδώ είναι το πλήρες πρόγραμμα:

 from sense_hat import SenseHat
from time import sleep

sense = SenseHat()
sense.clear()

while True:
 temp = (sense.get_temperature() * 1.8 + 32)
 temp = round(temp, 1)
 message = "Temp: " + str(temp)
 sense.show_message(message)
 sleep (10)

Εκτελέστε αυτόν τον κωδικό και θα βλέπετε κάθε νέα ένδειξη θερμοκρασίας να κυλάει στη μήτρα LED. Δοκιμάστε να φυσήξετε το Sense HAT για να δείτε αν αλλάζει η θερμοκρασία.

Οι μετρήσεις θερμοκρασίας μπορεί να επηρεαστούν από τη θερμότητα που μεταφέρεται από την CPU του Raspberry Pi ακριβώς από κάτω, επομένως μπορεί να χρειαστεί μια προσαρμογή για να ληφθεί πιο ακριβής αριθμός. Μια άλλη λύση είναι να χρησιμοποιήσετε μια κεφαλίδα στοίβαξης για να ανεβάσετε το Sense HAT ψηλότερα πάνω από το Raspberry Pi.

Χρησιμοποιήστε ένα Raspberry Pi για να παρακολουθείτε τη θερμοκρασία

Αν και θα μπορούσατε να χρησιμοποιήσετε έναν αυτόνομο αισθητήρα θερμοκρασίας για αυτό το έργο, το Sense HAT διευκολύνει την παρακολούθηση της θερμοκρασίας με το Raspberry Pi σας. Μπορείτε επίσης να το χρησιμοποιήσετε για να λάβετε μια σειρά από άλλες μετρήσεις αισθητήρων, όπως η βαρομετρική πίεση και η σχετική υγρασία, και να τις εμφανίσετε στη μήτρα LED.