Πίνακας περιεχομένων:
- Προμήθειες
- Βήμα 1: Ξεκινώντας
- Βήμα 2: Αρχική κατάσταση
- Βήμα 3: Αίσθηση καπέλου
- Βήμα 4: Πίνακας ελέγχου υπερβολικού τοπικού καιρού
- Βήμα 5: Προσθέστε έναν χάρτη στον πίνακα ελέγχου (μπόνους)
- Βήμα 6: Διορθώστε την ανάγνωση θερμοκρασίας Sense Hat
- Βήμα 7: Μπόνους: Διαμορφώστε τις δικές σας ειδοποιήσεις καιρού
- Βήμα 8:
2025 Συγγραφέας: John Day | [email protected]. Τελευταία τροποποίηση: 2025-01-23 14:39
Ας το παραδεχτούμε, εμείς οι άνθρωποι μιλάμε πολύ για τον καιρό ⛅️. Ο μέσος άνθρωπος μιλά για τον καιρό τέσσερις φορές την ημέρα, κατά μέσο όρο 8 λεπτά και 21 δευτερόλεπτα. Κάνε τα μαθηματικά και αυτό συνολικά είναι 10 μήνες της ζωής σου που θα ξοδέψεις για τον καιρό. Ο καιρός κατατάσσεται ως το #1 go-to θέμα για αρχάριους συνομιλιών και δυσάρεστες διακοπές σιωπής. Αν πρόκειται να μιλήσουμε τόσο πολύ για αυτό, θα μπορούσαμε επίσης να ανεβάσουμε τον καιρό του δρόμου μας σε ένα εντελώς νέο επίπεδο. Αυτό το εξαιρετικά διασκεδαστικό και εύκολο έργο θα αξιοποιήσει το Διαδίκτυο των Πραγμάτων (IoT) και ένα Raspberry Pi για να κάνει ακριβώς αυτό.
Θα φτιάξουμε τον δικό μας υπερ-τοπικό πίνακα καιρού IoT, καταγράφοντας τον καιρό μέσα και έξω από το σπίτι μας με την πάροδο του χρόνου. Την επόμενη φορά που κάποιος θα σας ρωτήσει "τι συμβαίνει με τον καιρό τελευταία;", θα μπορείτε να βγάζετε το τηλέφωνό σας και να το αφήνετε χωρίς ανάσα με τις δεξιότητες ανάλυσης του τρελού καιρού ☀️.
Τι θα χρειαστείτε για να παρακολουθήσετε το μάθημα: 1. Raspberry Pi με σύνδεση στο διαδίκτυο
2. Raspberry Pi SenseHAT
3. Καλώδιο επέκτασης ανδρικού-θηλυκού 6 ιντσών 40-pin IDE (προαιρετικό για ακρίβεια θερμοκρασίας)
4. Ένας λογαριασμός αρχικού κράτους
5. Αυτό είναι!
Επίπεδο έργου: Αρχάριος
Κατά προσέγγιση χρόνος ολοκλήρωσης: 20 λεπτά
Κατά προσέγγιση παράγοντας διασκέδασης: Εκτός των γραφημάτων
Σε αυτό το βήμα προς βήμα σεμινάριο, θα: μάθετε πώς να χρησιμοποιείτε την ενσωμάτωση του Weatherstack API στην αρχική κατάσταση για να αποκτήσετε τον τοπικό εξωτερικό καιρό στην περιοχή σας
- Μάθετε πώς να χρησιμοποιείτε ένα Raspberry Pi με ένα Sense HAT (https://www.raspberrypi.org/products/sense-hat/) για να καταγράφετε δεδομένα καιρού μέσα στο σπίτι σας
- Δημιουργήστε τον δικό σας προσωπικό υπερ-τοπικό πίνακα καιρού στον οποίο μπορείτε να έχετε πρόσβαση από οποιοδήποτε πρόγραμμα περιήγησης ιστού στο φορητό υπολογιστή ή την κινητή συσκευή σας
- Δώστε μια ώθηση στον μετεωρολόγο σας
Προμήθειες
Τι θα χρειαστείτε για να παρακολουθήσετε το μάθημα:
1. Raspberry Pi με σύνδεση στο διαδίκτυο
2. Raspberry Pi SenseHAT
3. Καλώδιο επέκτασης ανδρικού-θηλυκού 6 ιντσών 40-pin IDE (προαιρετικό για ακρίβεια θερμοκρασίας)
4. Λογαριασμός αρχικής κατάστασης
5. Αυτό είναι!
Βήμα 1: Ξεκινώντας
Έχουμε ήδη κάνει πολλές εργασίες για να συνδυάσετε τον κώδικα και να οργανώσετε τις πληροφορίες. Θα χρειαστεί απλώς να κάνετε μερικές προσαρμογές στην πορεία.
Για να ανακτήσετε όλα τα πράγματα που έχουμε ετοιμάσει για εσάς, θα πρέπει να κλωνοποιήσετε το αποθετήριο από το GitHub. Το Github είναι μια φοβερή υπηρεσία που μας επιτρέπει να αποθηκεύουμε, να αναθεωρούμε και να διαχειριζόμαστε έργα όπως αυτό. Για να κλωνοποιήσουμε το αποθετήριο, το μόνο που χρειάζεται να κάνουμε είναι να πάμε στο τερματικό του Pi μας ή στο τερματικό υπολογιστών σας που είναι SSH'd στο pi σας και να πληκτρολογήσουμε αυτήν την εντολή:
$ git clone
Πατήστε enter και θα δείτε αυτές τις πληροφορίες:
pi@raspberrypi ~ $ git clone
Κλωνοποίηση σε "wunderground-sensehat"…
τηλεχειριστήριο: Καταμέτρηση αντικειμένων: 28, τελειωμένο.
τηλεχειριστήριο: Σύνολο 28 (δέλτα 0), επαναχρησιμοποίηση 0 (δέλτα 0), επαναχρησιμοποίηση συσκευασίας 28
Αποσυσκευασία αντικειμένων: 100% (28/28), τελειωμένο.
Έλεγχος συνδεσιμότητας … ολοκληρώθηκε.
Μόλις το δείτε αυτό, τότε συγχαρητήρια, έχετε κλωνοποιήσει με επιτυχία το Github Repo και έχετε όλα τα απαραίτητα αρχεία για να δημιουργήσετε τον Super Weather Station σας. Πριν προχωρήσουμε στο επόμενο βήμα, ας αφιερώσουμε λίγο χρόνο για να εξερευνήσουμε αυτόν τον κατάλογο και να μάθουμε μερικές βασικές εντολές της γραμμής εντολών.
Πληκτρολογήστε την παρακάτω εντολή στο τερματικό σας:
$ ls
Αυτή η εντολή παραθέτει όλα τα διαθέσιμα στον κατάλογο στον οποίο βρίσκεστε αυτήν τη στιγμή. Αυτή η λίστα δείχνει ότι το Github Repo μας κλωνοποιήθηκε επιτυχώς στον κατάλογό μας με το όνομα "wunderground-sensehat". Ας ρίξουμε μια ματιά στο τι υπάρχει σε αυτόν τον κατάλογο. Για να αλλάξετε τον κατάλογο, το μόνο που χρειάζεται να κάνετε είναι να πληκτρολογήσετε "cd" και στη συνέχεια να πληκτρολογήσετε το όνομα του καταλόγου στον οποίο θέλετε να μεταβείτε.
Σε αυτήν την περίπτωση, πληκτρολογούμε:
$ cd wunderground-sensehat
Μόλις πατήσουμε enter, θα δείτε ότι είμαστε τώρα στον κατάλογο wunderground-sensehat. Ας πληκτρολογήσουμε ξανά ls για να δούμε ποια αρχεία έχουμε εγκαταστήσει στο pi μας.
README.md sensehat.py sensehat_wunderground.py wunderground.py
Εδώ βλέπουμε το έγγραφο readme που έχουμε και μερικά διαφορετικά αρχεία python. Ας ρίξουμε μια ματιά στο sensehat.py. Αντί να πηδήξουμε στο αρχείο με την εντολή cd όπως κάναμε για τους καταλόγους, θα χρησιμοποιήσουμε την εντολή nano. Η εντολή nano μας επιτρέπει να ανοίξουμε τον επεξεργαστή κειμένου nano όπου έχουμε όλο τον κώδικα python για κάθε τμήμα αυτού του έργου. Προχωρήστε και πληκτρολογήστε:
$ nano sensehat.py
Εδώ μπορείτε να δείτε όλο τον κώδικα που έχουμε ετοιμάσει για εσάς για αυτό το έργο. Δεν πρόκειται να κάνουμε καμία αλλαγή σε αυτό το έγγραφο ακόμη, αλλά μη διστάσετε να περιηγηθείτε και να δείτε τι θα κάνουμε αργότερα σε αυτό το σεμινάριο.
Βήμα 2: Αρχική κατάσταση
Θέλουμε να μεταδώσουμε όλα τα δεδομένα καιρού σε μια υπηρεσία cloud και να κάνουμε αυτή την υπηρεσία να μετατρέψει τα δεδομένα μας σε έναν όμορφο πίνακα ελέγχου στον οποίο μπορούμε να έχουμε πρόσβαση από το φορητό υπολογιστή ή την κινητή συσκευή μας. Τα δεδομένα μας χρειάζονται έναν προορισμό. Θα χρησιμοποιήσουμε την αρχική κατάσταση ως αυτόν τον προορισμό.
Βήμα 1: Εγγραφή για λογαριασμό αρχικού κράτους
Μεταβείτε στη διεύθυνση https://www.initialstate.com/app#/register/ και δημιουργήστε έναν νέο λογαριασμό.
Βήμα 2: Εγκαταστήστε το ISStreamer
Εγκαταστήστε τη μονάδα αρχικής κατάστασης Python στο Raspberry Pi: Σε μια γραμμή εντολών (μην ξεχάσετε πρώτα να κάνετε SSH στο Pi σας), εκτελέστε την ακόλουθη εντολή:
$ cd/home/pi/
$ / curl -sSL https://get.initialstate.com/python -o -| sudo bash
Σημείωση ασφαλείας: Η παραπάνω εντολή έχει κάποια σημαντική ανατομία που πρέπει να γνωρίζει ο χρήστης.
1) Υπάρχει ένα προηγούμενο / before curl. Αυτό είναι σημαντικό για να διασφαλιστεί ότι κανένα ψευδώνυμο του curl δεν εκτελείται εάν δημιουργήθηκε. Αυτό βοηθά στον μετριασμό του κινδύνου η εντολή να κάνει περισσότερα από ό, τι είχε προβλεφθεί.
2) Η εντολή είναι μια εντολή με σωλήνωση, οπότε κατά την εκτέλεση, μεταφέρετε με έξοδο την έξοδο ενός σεναρίου που λαμβάνεται από τη διεύθυνση https://get.initialstate.com/python στην εντολή sudo bash. Αυτό γίνεται για να απλοποιηθεί η εγκατάσταση, ωστόσο, θα πρέπει να σημειωθεί ότι το https είναι σημαντικό εδώ για να διασφαλιστεί ότι δεν θα γίνει χειρισμός του σεναρίου εγκατάστασης, ειδικά επειδή το σενάριο εκτελείται με αυξημένα προνόμια. Αυτός είναι ένας συνηθισμένος τρόπος για να απλοποιήσετε την εγκατάσταση και τη ρύθμιση, αλλά αν είστε λίγο πιο επιφυλακτικοί, υπάρχουν μερικές ελαφρώς λιγότερο βολικές εναλλακτικές λύσεις: μπορείτε να χωρίσετε την εντολή σε δύο βήματα και να ερευνήσετε το σενάριο bash που λαμβάνεται από την εντολή curl για να ασφαλίσετε είναι πιστότητα OR μπορείτε να ακολουθήσετε τις οδηγίες pip, απλά δεν θα λάβετε ένα αυτόματο παραγόμενο σενάριο παραδείγματος.
Βήμα 3: Κάντε λίγη Automagic
Μετά το Βήμα 2, θα δείτε κάτι παρόμοιο με την ακόλουθη έξοδο στην οθόνη:
pi@raspberrypi ~ $ / curl -sSL https://get.initialstate.com/python -o -| sudo bash
Κωδικός πρόσβασης: Έναρξη ISStreamer Python Εύκολη εγκατάσταση!
Μπορεί να χρειαστούν μερικά λεπτά για να εγκατασταθεί, πιείτε λίγο καφέ:)
Αλλά μην ξεχάσετε να επιστρέψετε, θα έχω ερωτήσεις αργότερα!
Βρέθηκε easy_install: setuptools 1.1.6
Βρέθηκε pip: pip 1.5.6 από /Library/Python/2.7/site-packages/pip-1.5.6- py2.7.egg (python 2.7)
pip major έκδοση: 1
pip minor έκδοση: 5
Βρέθηκε το ISStreamer, ενημερώνεται…
Απαίτηση ήδη ενημερωμένη: ISStreamer στο /Library/Python/2.7/site-packages Εκκαθάριση…
Θέλετε να λάβετε αυτόματα ένα παράδειγμα σεναρίου; [y/N]
(η έξοδος μπορεί να είναι διαφορετική και να διαρκέσει περισσότερο εάν δεν έχετε εγκαταστήσει ποτέ τη μονάδα ροής αρχικής κατάστασης Python)
Όταν σας ζητηθεί να λάβετε αυτόματα ένα παράδειγμα δέσμης ενεργειών, πληκτρολογήστε y.
Αυτό θα δημιουργήσει ένα δοκιμαστικό σενάριο που μπορούμε να εκτελέσουμε για να διασφαλίσουμε ότι μπορούμε να μεταδώσουμε δεδομένα στην αρχική κατάσταση από το Pi μας. Θα σας ζητηθεί:
Πού θέλετε να αποθηκεύσετε το παράδειγμα; [προεπιλογή:./is_example.py]:
Μπορείτε είτε να πληκτρολογήσετε μια προσαρμοσμένη τοπική διαδρομή είτε να πατήσετε enter για να αποδεχτείτε την προεπιλογή. Θα σας ζητηθεί το όνομα χρήστη και ο κωδικός πρόσβασης που μόλις δημιουργήσατε κατά την εγγραφή του λογαριασμού αρχικής κατάστασης. Εισαγάγετε και τα δύο και η εγκατάσταση θα ολοκληρωθεί.
Βήμα 4: Κλειδιά πρόσβασης
Ας ρίξουμε μια ματιά στο παράδειγμα σεναρίου που δημιουργήθηκε. Τύπος:
$ nano is_example.py
Στη γραμμή 15, θα δείτε μια γραμμή που ξεκινά με streamer = Streamer (bucket_…. Αυτές οι γραμμές δημιουργούν έναν νέο κάδο δεδομένων που ονομάζεται "Παράδειγμα ροής Python" και σχετίζεται με τον λογαριασμό σας. Αυτή η συσχέτιση συμβαίνει λόγω του κλειδιού πρόσβασης = "…" παράμετρος στην ίδια γραμμή. Αυτή η μεγάλη σειρά γραμμάτων και αριθμών είναι το κλειδί πρόσβασης στο λογαριασμό αρχικής κατάστασης. Εάν μεταβείτε στον λογαριασμό αρχικής κατάστασης στο πρόγραμμα περιήγησής σας, κάντε κλικ στο όνομα χρήστη σας επάνω δεξιά και, στη συνέχεια, μεταβείτε στον "λογαριασμό μου", θα βρείτε το ίδιο κλειδί πρόσβασης στο κάτω μέρος της σελίδας στην ενότητα "Κλειδιά πρόσβασης ροής".
Κάθε φορά που δημιουργείτε μια ροή δεδομένων, αυτό το κλειδί πρόσβασης θα κατευθύνει αυτήν τη ροή δεδομένων στο λογαριασμό σας (οπότε μην μοιράζεστε το κλειδί σας με κανέναν).
Βήμα 5: Εκτελέστε το Παράδειγμα
Εκτελέστε τη δοκιμαστική δέσμη ενεργειών για να βεβαιωθείτε ότι μπορούμε να δημιουργήσουμε μια ροή δεδομένων στον λογαριασμό σας αρχικής κατάστασης.
Εκτελέστε τα ακόλουθα:
$ python is_example.py
Βήμα 6: Κέρδος
Επιστρέψτε στον αρχικό σας λογαριασμό στο πρόγραμμα περιήγησής σας. Ένας νέος κάδος δεδομένων που ονομάζεται "Παράδειγμα ροής Python" θα έπρεπε να έχει εμφανιστεί στα αριστερά στο ράφι καταγραφής (ίσως χρειαστεί να ανανεώσετε τη σελίδα). Κάντε κλικ σε αυτόν τον κάδο και, στη συνέχεια, κάντε κλικ στο εικονίδιο Waves για να δείτε τα δεδομένα δοκιμής.
Θα θέλετε να περάσετε από το σεμινάριο Waves για να εξοικειωθείτε με τον τρόπο χρήσης αυτού του εργαλείου οπτικοποίησης δεδομένων. Στη συνέχεια, δείτε τα δεδομένα στα Πλακάκια για να δείτε τα ίδια δεδομένα σε μορφή πίνακα ελέγχου.
Είστε τώρα έτοιμοι να ξεκινήσετε τη ροή πραγματικών δεδομένων από το Wunderground και πολλά άλλα.
Βήμα 3: Αίσθηση καπέλου
Το Sense HAT είναι ένας πρόσθετος πίνακας για το Raspberry Pi που είναι γεμάτος αισθητήρες, LED και ένα μικρό χειριστήριο. Αυτό που είναι τόσο υπέροχο σε αυτό το μικρό πρόσθετο είναι ότι είναι απίστευτα εύκολο στην εγκατάσταση και τη χρήση χάρη σε μια φανταστική βιβλιοθήκη Python που μπορείτε να εγκαταστήσετε γρήγορα. Για αυτό το έργο, θα χρησιμοποιήσουμε τους αισθητήρες θερμοκρασίας, υγρασίας και βαρομετρικής πίεσης στο Sense HAT. Ας το στήσουμε.
Το πρώτο βήμα στη χρήση του Sense HAT είναι να το εγκαταστήσετε φυσικά στο Pi σας. Με απενεργοποιημένο το Pi, επισυνάψτε το ΚΑΠ όπως φαίνεται στην εικόνα.
Ενεργοποιήστε το Pi σας. Πρέπει να εγκαταστήσουμε τη βιβλιοθήκη Python για να είναι εύκολη η ανάγνωση των τιμών των αισθητήρων από το Sense HAT. Πρώτον, θα πρέπει να διασφαλίσετε ότι όλα είναι ενημερωμένα στην έκδοση του Raspbian πληκτρολογώντας:
$ sudo apt-get ενημέρωση
Στη συνέχεια, εγκαταστήστε τη βιβλιοθήκη Sense HAT Python:
$ sudo apt-get install sense-hat
Επανεκκινήστε το Pi σας
Είμαστε έτοιμοι να δοκιμάσουμε το Sense HAT διαβάζοντας δεδομένα αισθητήρων από αυτό και στέλνοντας αυτά τα δεδομένα στην αρχική κατάσταση.
Ας δοκιμάσουμε το Sense HAT για να βεβαιωθούμε ότι όλα λειτουργούν. Θα χρησιμοποιήσουμε το σενάριο που βρίσκεται στη διεύθυνση https://github.com/InitialState/wunderground-sensehat/blob/master/sensehat.py. Μπορείτε να αντιγράψετε αυτό το σενάριο σε ένα αρχείο στο Pi σας ή να αποκτήσετε πρόσβαση σε αυτό από το αποθετήριο Github που έχουμε κλωνοποιήσει νωρίτερα. Αλλάξτε στον κατάλογο wunderground-sensehat και, στη συνέχεια, nano στο αρχείο sensehat.py πληκτρολογώντας:
$ nano sensehat.py
Παρατηρήστε στην πρώτη γραμμή ότι εισάγουμε τη βιβλιοθήκη SenseHat στο σενάριο. Πριν να εκτελέσετε αυτό το σενάριο, πρέπει να ρυθμίσουμε τις παραμέτρους του χρήστη.
# --------- Ρυθμίσεις χρήστη --------- CITY = "Nashville"
BUCKET_NAME = ": partly_sunny:" + CITY + "Καιρός"
BUCKET_KEY = "sensehat"
ACCESS_KEY = "Your_Access_Key"
SENSOR_LOCATION_NAME = "Γραφείο"
MINUTES_BETWEEN_SENSEHAT_READS = 0,1
# ---------------------------------
Συγκεκριμένα, πρέπει να ορίσετε το ACCESS_KEY στο κλειδί πρόσβασης στο λογαριασμό αρχικής κατάστασης. Παρατηρήστε πόσο εύκολο είναι να διαβάσετε δεδομένα από το Sense HAT σε μία μόνο γραμμή Python (π.χ. sense.get_temperature ()). Σε μια γραμμή εντολών στο Pi σας, εκτελέστε το σενάριο:
$ sudo python sensehat.py
Μεταβείτε στον λογαριασμό σας στην αρχική κατάσταση και δείτε τον νέο κάδο δεδομένων που δημιουργήθηκε από το Sense HAT.
Τώρα, είμαστε έτοιμοι να τα συνδυάσουμε όλα και να δημιουργήσουμε τον υπερ-τοπικό πίνακα ελέγχου καιρού!
Βήμα 4: Πίνακας ελέγχου υπερβολικού τοπικού καιρού
Το τελευταίο βήμα σε αυτό το έργο είναι απλά να συνδυάσουμε τα δεδομένα καιρού και το σενάριο Sense HAT σε έναν ενιαίο πίνακα ελέγχου. Για να γίνει αυτό, θα χρησιμοποιήσουμε την αρχική ενσωμάτωση κατάστασης με Weatherstack για να προσθέσουμε δεδομένα καιρού στον πίνακα ελέγχου Sensehat που δημιουργήσαμε στο τελευταίο βήμα.
Η χρήση του Weatherstack API είναι εξαιρετικά απλή. Στο παρελθόν σε αυτό το σεμινάριο, σας είχαμε να δημιουργήσετε και να εκτελέσετε ένα σενάριο για να τραβήξετε δεδομένα από ένα api δεδομένων καιρού, αλλά από την αρχή αυτού του σεμιναρίου η Αρχική κατάσταση έχει δημιουργήσει την Αγορά ενσωμάτωσης δεδομένων. Το Market Integration Marketplace σας δίνει τη δυνατότητα πρόσβασης και ροής API σε έναν πίνακα ελέγχου αρχικής κατάστασης χωρίς κωδικό. Είναι κυριολεκτικά μόνο μερικά κλικ ποντικιού και BAM: δεδομένα καιρού. Στο Medium, έχω γράψει ένα σε βάθος σεμινάριο για το πώς να χρησιμοποιήσετε την ενσωμάτωση Weatherstack και να δημιουργήσετε ειδοποιήσεις καιρού, αλλά θα απαριθμήσω γρήγορα πώς να ξεκινήσετε παρακάτω Το
Χρήση της ενσωμάτωσης Weatherstack
1. Συνδεθείτε στο λογαριασμό αρχικής κατάστασης
2. Κάντε κλικ στο κουμπί λεπτομερειών στο πλαίσιο Weatherstack στη σελίδα ενσωματώσεων. Αυτή η σελίδα θα σας πει όλες τις βασικές πληροφορίες σχετικά με την ενσωμάτωση και τι απαιτείται για τη χρήση της. Σε αυτήν την περίπτωση, θα χρειαστείτε απλά έναν ταχυδρομικό κώδικα (ή γεωγραφικό πλάτος και γεωγραφικό μήκος) μιας τοποθεσίας για την οποία θέλετε να παρακολουθείτε τον καιρό και θα πρέπει να γνωρίζετε σε ποιες μονάδες θέλετε να βλέπετε αυτά τα δεδομένα (μετρικό, επιστημονικό ή αμερικανικό αυτοκρατορικό).
3. Κάντε κλικ στο κουμπί Έναρξη εγκατάστασης και θα δείτε ένα αναδυόμενο παράθυρο από τη δεξιά πλευρά της οθόνης σας. Υπάρχουν μόνο μερικά εύκολα βήματα για να μπορέσουμε να αρχίσουμε να παρακολουθούμε τα δεδομένα καιρού:
4. Δώστε ένα όνομα στον νέο πίνακα ελέγχου σας. Ονόμασα το δικό μου Nashville Weather. Pro συμβουλή: Μου αρέσει να χρησιμοποιώ emoji στα ονόματα των ταμπλό μου για να τους προσφέρω λίγο περισσότερη αίσθηση. Ένας γρήγορος τρόπος για να αποκτήσετε emoji σε Mac είναι το Ctrl+Command+Space bar. Για τα Windows κρατήστε πατημένο το κουμπί των Windows και είτε την περίοδο (.) Είτε το ερωτηματικό (;). 2 5. Πληκτρολογήστε την τοποθεσία σας. Χρησιμοποιώ τον Ταχυδρομικό Κώδικα της περιοχής που θέλω να παρακολουθήσω, αλλά μπορείτε επίσης να ορίσετε το Latitude και το Γεωγραφικό μήκος να είναι πιο συγκεκριμένα. Είναι εύκολο να βρείτε το γεωγραφικό πλάτος και το γεωγραφικό μήκος της περιοχής σας απλά πηγαίνοντας στους χάρτες Google, αναζητώντας ένα μέρος και στη συνέχεια αντιγράφοντας το γεωγραφικό πλάτος και γεωγραφικό μήκος από το πρόγραμμα περιήγησης και επικολλώντας το στη φόρμα. Μόνο τοποθεσίες ΗΠΑ, Ηνωμένου Βασιλείου και Καναδά μπορούν να χρησιμοποιηθούν αυτήν τη στιγμή.
6. Επιλέξτε τις μονάδες σας. Επέλεξα το US/Imperial επειδή ζούσα στις Ηνωμένες Πολιτείες.
7. Επιλέξτε να δημιουργήσετε έναν νέο κάδο ή να στείλετε τα δεδομένα Weatherstack σε έναν υπάρχοντα κάδο. Σε αυτό το σεμινάριο, αν έχετε ήδη ρυθμίσει το Sense Hat για ροή στην Αρχική κατάσταση (στο τελευταίο βήμα), απλώς στείλτε τα δεδομένα Weatherstack σε εκείνο το κουβά.
8. Επιλέξτε αν θέλετε όλα τα δεδομένα που στέλνει η Weatherstack ή εάν θέλετε να σταλούν συγκεκριμένα δεδομένα καιρού στον πίνακα ελέγχου σας. Μπορείτε πάντα να στείλετε όλα τα δεδομένα και να αφαιρέσετε μερικά πλακίδια αργότερα.
9. Επιλέξτε πόσο συχνά θέλετε να ενημερώνεται ο πίνακας ελέγχου με τις καιρικές συνθήκες. Μπορείτε να επιλέξετε ανάμεσα σε κάθε 15 λεπτά ή ώρα ανά ώρα. Λάβετε υπόψη ότι η αποστολή δεδομένων κάθε 15 λεπτά κοστίζει ένα επιπλέον διακριτικό σε σύγκριση με την αποστολή κάθε ώρα. Έτσι, εάν θέλετε να χρησιμοποιήσετε άλλες ενσωματώσεις στην αγορά ταυτόχρονα, ίσως θέλετε να κάνετε δημοσκόπηση κάθε ώρα. Μπορείτε πάντα να σταματήσετε την αποστολή δεδομένων από την ενσωμάτωση και να την ξεκινήσετε ξανά ή να αλλάξετε τη συχνότητα με την οποία στέλνετε δεδομένα αργότερα. Ωστόσο, αν το σταματήσετε και ξεκινήσετε ξανά, τότε θα υπάρχουν κενά στα δεδομένα σας.
10. Κάντε κλικ στο κουμπί Έναρξη ενοποίησης. Τώρα μεταδίδετε δεδομένα από το Weatherstack! Κάντε κλικ στο κουμπί "Προβολή στην εφαρμογή IoT" για να δείτε τα πρώτα σημεία δεδομένων να εμφανίζονται.
11. Προσαρμόστε τον πίνακα ελέγχου σας. Εάν κάνετε ροή σε νέο κάδο, σας έχουμε ρυθμίσει ένα πρότυπο για να ξεκινήσετε. Ωστόσο, πρέπει να το κάνετε δικό σας! Πατήστε το κάτω βέλος στο επάνω κέντρο του πίνακα ελέγχου για να κατεβάσετε το χρονοδιάγραμμα, κάντε κλικ στην επιλογή Επεξεργασία πλακιδίων, μετακινήστε μερικά πλακίδια, αλλάξτε το μέγεθος και αλλάξτε το φόντο. Κάντε το ταμπλό όπως το θέλετε, ώστε να είναι εύκολο για σας να καταπιείτε τα δεδομένα που θέλετε να συλλέξετε. Μπορείτε επίσης να χρησιμοποιήσετε άλλα πρότυπα Weatherstack που δημιουργήσαμε για εσάς εδώ. Για να προσθέσετε λίγο περισσότερο πλαίσιο στον πίνακα ελέγχου, μπορείτε επίσης να προσθέσετε έναν χάρτη που δείχνει την τοποθεσία όπου παρακολουθείτε τον καιρό. Ο πίνακας ελέγχου σας μπορεί να φαίνεται λίγο γυμνός στην αρχή, αλλά δώστε του λίγο χρόνο και θα γεμίσει με όμορφα ιστορικά δεδομένα καιρού.
Βήμα 5: Προσθέστε έναν χάρτη στον πίνακα ελέγχου (μπόνους)
Μπορούμε εύκολα να προσθέσουμε ένα πλακίδιο χάρτη στον πίνακα ελέγχου που δείχνει τη θέση του καιρού μας. Μπορείτε να μάθετε περισσότερα για τη διαδραστική προβολή χάρτη σε πλακίδια στη διεύθυνση https://support.initialstate.com/knowledgebase/articles/800232-tiles-map-view. Θα μπορούσαμε απλά να προσθέσουμε μια νέα δήλωση streamer.log στο σενάριο Python (και θα εξηγήσω πώς μπορείτε να το κάνετε αυτό στο τέλος αυτής της ενότητας). Αντ 'αυτού, θα χρησιμοποιήσουμε αυτήν την ευκαιρία για να σας δείξουμε έναν διαφορετικό τρόπο αποστολής δεδομένων στον πίνακα ελέγχου σας.
Βήμα 1: Λάβετε τις συντεταγμένες γεωγραφικού πλάτους/γεωγραφικού μήκους της τοποθεσίας σας
Πρέπει να λάβετε τις συντεταγμένες γεωγραφικού πλάτους/γεωγραφικού μήκους της τοποθεσίας σας. Ένας τρόπος για να το κάνετε αυτό είναι να μεταβείτε στους Χάρτες Google, να αναζητήσετε την τοποθεσία σας και να κάνετε μεγέθυνση στην ακριβή τοποθεσία σας. Στη διεύθυνση URL, θα δείτε τις συντεταγμένες γεωγραφικού πλάτους/γεωγραφικού μήκους. Στο παραπάνω παράδειγμα, οι συντεταγμένες μου είναι 35.925298, -86.8679478.
Αντιγράψτε τις συντεταγμένες σας (θα τις χρειαστείτε στο βήμα 2) και βεβαιωθείτε ότι δεν αντιγράφετε κατά λάθος επιπλέον χαρακτήρες από τη διεύθυνση URL.
Βήμα 2: Δημιουργήστε μια διεύθυνση URL για αποστολή δεδομένων στον πίνακα ελέγχου σας
Κάντε κλικ στο σύνδεσμο "ρυθμίσεις" κάτω από το όνομα κάδου στο ράφι κάδου. Αυτό θα εμφανίσει την παραπάνω οθόνη. Αντιγράψτε το κείμενο στην ενότητα API Endpoint και επικολλήστε το στο αγαπημένο σας πρόγραμμα επεξεργασίας κειμένου. Θα το χρησιμοποιήσουμε για τη δημιουργία μιας διεύθυνσης URL που μπορούμε να χρησιμοποιήσουμε για την αποστολή δεδομένων στον υπάρχοντα κάδο και τον πίνακα ελέγχου. Στον κάδο μου, το κείμενο που αντέγραψα μοιάζει με: https://groker.initialstate.com/api/events?accessKey=bqHk4F0Jj4j4M4CrhJxEWv6ck3nfZ79o&bucketKey=shwu1 Το URL σας θα έχει πρόσβαση Πρέπει να προσθέσουμε ένα όνομα ροής και μια τιμή στις παραμέτρους URL για να ολοκληρώσουμε τη διεύθυνση URL.
Προσθέστε "& MapLocation = YOUR_COORDINATES_FROM_STEP1" στη διεύθυνση URL σας
(εισαγάγετε τις συντεταγμένες από το βήμα 1, χωρίς κενά και μην αντιγράψετε τη δική μου !!)
Δείτε πώς φαίνεται το δικό μου: https://groker.initialstate.com/api/events?accessKey=bqHk4F0Jj4j4M4CrhJxEWv6ck3nfZ79o&bucketKey=shwu1&MapLocation=35.925298, -86.86798, -86.86798, -86.86798
Επικολλήστε το πλήρες URL σας στη γραμμή διευθύνσεων του προγράμματος περιήγησής σας και πατήστε enter (ή χρησιμοποιήστε την εντολή "curl" σε μια γραμμή εντολών) για να στείλετε τις συντεταγμένες του χάρτη σας στη ροή "MapLocation", στο νέο σας κάδο.
Αν κοιτάξετε τον πίνακα ελέγχου σας στο Tiles τώρα (ίσως χρειαστεί να κάνετε ανανέωση εάν γίνετε ανυπόμονοι), ένα νέο Πλακάκι με το όνομα MapLocation θα έπρεπε να έχει εμφανιστεί σε μεγέθυνση στην τρέχουσα τοποθεσία σας.
Βήμα 2 Εναλλακτικό: Τροποποιήστε το σενάριό σας
Εάν δεν σας αρέσει πραγματικά το Βήμα 2 παραπάνω, μπορείτε απλά να προσθέσετε μια άλλη δήλωση streamer.log στο σενάριο Python σας. Απλώς προσθέστε τη γραμμή
streamer.log ("MapLocation", "YOUR_COORDINATES_FROM_STEP1")
κάπου μέσα στο def main (): συνάρτηση του σεναρίου sensehat_wunderground.py (δώστε προσοχή στην εσοχή b/c Η Python απαιτεί να ακολουθείτε αυστηρούς κανόνες εσοχής). Για παράδειγμα, πρόσθεσα το streamer.log ("MapLocation", "35.925298, -86.8679478") αμέσως μετά τη γραμμή 138.
Βήμα 6: Διορθώστε την ανάγνωση θερμοκρασίας Sense Hat
Μπορεί να παρατηρήσετε ότι οι ενδείξεις θερμοκρασίας του Sense HAT σας φαίνονται λίγο υψηλές - αυτό συμβαίνει επειδή είναι. Ο ένοχος είναι η θερμότητα που παράγεται από τη CPU του Pi που θερμαίνει τον αέρα γύρω από το Sense HAT όταν κάθεται πάνω από το Pi.
Για να καταστήσουμε τον αισθητήρα θερμοκρασίας χρήσιμο, πρέπει είτε να απομακρύνουμε το HAT από το Pi (που θα εξαλείψει το σημαντικό όφελος του να είναι μια συμπαγής λύση) είτε να προσπαθήσουμε να βαθμονομήσουμε την ένδειξη του αισθητήρα θερμοκρασίας. Η CPU είναι η κύρια αιτία της παρασιτικής θερμότητας που επηρεάζει τον αισθητήρα θερμοκρασίας μας, οπότε πρέπει να καταλάβουμε τη συσχέτιση. Κατά την ανασκόπηση του Enviro pHAT για το Pi Zero, καταλήξαμε σε μια εξίσωση για να υπολογίσουμε τη θερμοκρασία της CPU που επηρεάζει την ένδειξη θερμοκρασίας ενός καπέλου. Χρειαζόμαστε απλώς τη θερμοκρασία της CPU και έναν συντελεστή κλιμάκωσης για τον υπολογισμό της βαθμονομημένης θερμοκρασίας:
temp_calibrated = temp - ((cpu_temp - temp)/FACTOR)
Μπορούμε να βρούμε τον παράγοντα καταγράφοντας την πραγματική θερμοκρασία και λύνοντάς τον. Για να βρούμε την πραγματική θερμοκρασία στο δωμάτιο, χρειαζόμαστε μια διαφορετική ρύθμιση αισθητήρα θερμοκρασίας. Χρησιμοποιώντας έναν αισθητήρα DHT22 (οδηγίες εγκατάστασης εδώ και σενάριο εδώ), μπορούμε να καταγράψουμε και να απεικονίσουμε ταυτόχρονα και τις δύο θερμοκρασίες:
Το αποτέλεσμα αποκαλύπτει ότι η ανάγνωση του Sense HAT είναι απενεργοποιημένη κατά 5-6 βαθμούς Φαρενάιτ αρκετά σταθερά. Προσθέτοντας τη θερμοκρασία της CPU στο μίγμα (με αυτό το σενάριο), το πρώτο off δείχνει ότι είναι εξαιρετικά ζεστό και το δεύτερο off αποκαλύπτει ένα είδος κύματος που μιμείται η μέτρηση Sense HAT.
Μετά από εγγραφή για περίπου 24 ώρες, έλυσα τον παράγοντα χρησιμοποιώντας έξι διαφορετικές ενδείξεις σε έξι διαφορετικά χρονικά σημεία. Η μέση τιμή των συντελεστών έδωσε μια τελική τιμή συντελεστή 5,466. Εφαρμογή της εξίσωσης
temp_calibrated = temp - ((cpu_temp - temp) /5.466)
η βαθμονομημένη θερμοκρασία έφτασε σε ένα βαθμό από την πραγματική ένδειξη θερμοκρασίας:
Μπορείτε να εκτελέσετε αυτήν τη διόρθωση βαθμονόμησης στο ίδιο το Pi, μέσα στο σενάριο wunderground_sensehat.py.
Βήμα 7: Μπόνους: Διαμορφώστε τις δικές σας ειδοποιήσεις καιρού
Ας δημιουργήσουμε μια ειδοποίηση SMS κάθε φορά που η θερμοκρασία πέσει κάτω από το παγετό.
Θα ακολουθήσουμε τη διαδικασία ρύθμισης ειδοποιήσεων ενεργοποίησης που περιγράφεται στη σελίδα υποστήριξης.
Βεβαιωθείτε ότι ο κάδος δεδομένων καιρού είναι φορτωμένος.
Κάντε κλικ στις ρυθμίσεις του κάδου στο ράφι δεδομένων (κάτω από το όνομά του).
Κάντε κλικ στην καρτέλα Ενεργοποίηση.
Επιλέξτε τη ροή δεδομένων για ενεργοποίηση (μπορείτε να χρησιμοποιήσετε την αναπτυσσόμενη λίστα για να επιλέξετε από υπάρχουσες ροές μόλις φορτωθεί ένας κάδος δεδομένων ή μπορείτε να πληκτρολογήσετε το όνομα/κλειδί ροής με μη αυτόματο τρόπο. *Σημείωση Το Safari δεν υποστηρίζει αναπτυσσόμενες λίστες HTML5). Στο παραπάνω παράδειγμα οθόνης, επέλεξα τη θερμοκρασία (F).
Επιλέξτε τον τελεστή υπό όρους, σε αυτήν την περίπτωση '<'.
Επιλέξτε την τιμή ενεργοποίησης που θα ενεργοποιήσει μια ενέργεια (πληκτρολογήστε μη αυτόματα την επιθυμητή τιμή). Σε αυτήν την περίπτωση, πληκτρολογήστε 32 όπως φαίνεται παραπάνω.
Κάντε κλικ στο κουμπί "+" για να προσθέσετε τη συνθήκη ενεργοποίησης.
Επιλέξτε την ενέργεια (οι τρέχουσες διαθέσιμες ενέργειες ειδοποιούνται με SMS ή email).
Κάντε κλικ στο κουμπί "+" για να προσθέσετε την ενέργεια. Εισαγάγετε οποιονδήποτε κωδικό επαλήθευσης εάν προσθέσετε νέο αριθμό τηλεφώνου ή email για να ολοκληρώσετε τη ρύθμιση.
Η σκανδάλη σας είναι πλέον ενεργή και θα ενεργοποιηθεί όταν πληρούνται οι προϋποθέσεις. Κάντε κλικ στο κουμπί "Τέλος" για να επιστρέψετε στην κύρια οθόνη.
SMS PIR
Κάθε φορά που η θερμοκρασία πέφτει κάτω από τους 32, θα λαμβάνετε ένα μήνυμα κειμένου. Ορίζετε ειδοποιήσεις για οτιδήποτε στον κάδο δεδομένων καιρού (*σημειώστε ότι πρέπει να χρησιμοποιείτε διακριτικά emoji, όχι τα πραγματικά emoji).
Για παράδειγμα, όποτε βρέχει
: cloud: Καιρικές συνθήκες =: ομπρέλα:
Όποτε φυσάει
: dash: Ταχύτητα ανέμου (MPH)> 20
και τα λοιπά.
Βήμα 8:
Δεύτερο Βραβείο στο Διαγωνισμό Διαδικτύου των Πραγμάτων 2016
Συνιστάται:
Πώς να φτιάξετε έναν μετεωρολογικό σταθμό Arduino: 4 βήματα
Πώς να φτιάξετε έναν μετεωρολογικό σταθμό Arduino: Σε αυτό το έργο, θα φτιάξουμε έναν μετεωρολογικό σταθμό που μετρά τη θερμοκρασία και την υγρασία του αέρα χρησιμοποιώντας το Arduino, το οποίο εμφανίζει την τιμή της τρέχουσας θερμοκρασίας και υγρασίας σε μια οθόνη LCD
Πώς να χτίσετε έναν μετεωρολογικό σταθμό χρησιμοποιώντας το XinaBox και το Ubidots μέσω HTTP: 7 βήματα
Πώς να φτιάξετε έναν μετεωρολογικό σταθμό χρησιμοποιώντας το XinaBox και το Ubidots μέσω HTTP: Μάθετε πώς να φτιάξετε τον δικό σας Μετεωρολογικό Σταθμό στο Ubidots, χρησιμοποιώντας το XinaBox xChips (IP01, CW01 και SW01) Η μονάδα ESP8266 Core και Wi-Fi (xChip CW01) επιτρέπει στους χρήστες να στέλνουν δεδομένα από τα αρθρωτά xChips της XinaBox στο cloud. Αυτά τα δεδομένα μπορούν να παρακολουθούνται από απόσταση
Δημιουργήστε έναν απλό μετεωρολογικό σταθμό IOT: 4 βήματα
Δημιουργήστε έναν απλό μετεωρολογικό σταθμό IOT: Σε αυτό το σεμινάριο, θα φτιάξουμε έναν φοβερό (διαθέτει ταμπλό και δυνατότητα συνομιλίας!) Αλλά απλό μετεωρολογικό σταθμό IoT χρησιμοποιώντας το Zuino Zuino XS PsyFi32 και την πιο πρόσφατη ενσωμάτωσή μας στην οικογένεια Qwiic, το Zio Qwiic Air Αισθητήρας πίεσης ! Ο πίνακας διαθέτει
Πώς να φτιάξετε έναν μετεωρολογικό σταθμό Raspberry Pi: 5 βήματα
Πώς να φτιάξετε έναν μετεωρολογικό σταθμό Raspberry Pi: Σε αυτό το σεμινάριο θα παρακολουθήσω τη διαδικασία εγκατάστασης ενός SenseHAT και εισαγωγής του κωδικού που απαιτείται για τη μετατροπή του SenseHAT σε έναν πλήρως λειτουργικό μετεωρολογικό σταθμό ικανό να καταγράφει θερμοκρασία, πίεση και υγρασία
Δημιουργήστε έναν προσωπικό μετεωρολογικό σταθμό: 10 βήματα (με εικόνες)
Φτιάξτε έναν Προσωπικό Μετεωρολογικό Σταθμό: Καθισμένος στο δωμάτιό σας αρχίζετε να ιδρώνετε ή νιώθετε ψύχρα. αναρωτιέστε πόσο θα ήταν η θερμοκρασία στο δωμάτιό σας; ή ποια θα είναι η υγρασία; Αυτό συνέβη σε μένα πριν από λίγο καιρό. Αυτό οδήγησε στην ίδρυση του Προσωπικού Μετεωρολογικού Σταθμού, ο οποίος παρακολουθεί