Πίνακας περιεχομένων:

Raspberry Pi Smart Scale: 10 βήματα (με εικόνες)
Raspberry Pi Smart Scale: 10 βήματα (με εικόνες)

Βίντεο: Raspberry Pi Smart Scale: 10 βήματα (με εικόνες)

Βίντεο: Raspberry Pi Smart Scale: 10 βήματα (με εικόνες)
Βίντεο: Course Lesson 10 of 10: Controlling Raspberry Pi Pico 4WD Smart Car Kit with mobile App 2024, Ιούλιος
Anonim
Image
Image

Έχετε κουραστεί να κοιτάτε κάθε πρωί την βαρετή, παλιά, κακή είδηση του μπάνιου; Αυτό που λέτε συχνά "σε μισώ" όπως κάθε φορά που το πατάς. Γιατί κανείς δεν έχει φτιάξει μια ζυγαριά που είναι πραγματικά διασκεδαστική ή παρακινητική για χρήση; Είναι καιρός να δημιουργήσετε μια κλίμακα που δεν είναι μόνο έξυπνη αλλά έχει λίγο περισσότερη προσωπικότητα για να φωτίσει τη μέρα σας. Θα φτιάξουμε τη δική μας ζυγαριά μπάνιου για παρακολούθηση βάρους, δυνατότητα παρακολούθησης βάρους, η οποία έρχεται με ενσωματωμένη αίσθηση του χιούμορ.

Αυτό είναι ένα διασκεδαστικό, εύκολο έργο που συνδυάζει έναν πίνακα ισορροπίας Wii, ένα Raspberry Pi και μια διαδικτυακή πλατφόρμα ανάλυσης δεδομένων για να δημιουργήσει μια κλίμακα συνδεδεμένη στο διαδίκτυο που ελέγχεται από ένα σενάριο Python που μπορείτε να σπάσετε.

Επίπεδο έργου: Αρχάριος Κατά προσέγγιση χρόνος ολοκλήρωσης: 20 λεπτά Παράγοντας διασκέδασης: Αμέτρητος

Σε αυτό το σεμινάριο βήμα προς βήμα, θα:

  • συνδέστε έναν πίνακα ισορροπίας Wii σε ένα Raspberry Pi μέσω bluetooth εκτελέστε ένα σενάριο Python που μετρά το βάρος σας όταν πατάτε στον πίνακα ισορροπίας
  • χρησιμοποιήστε ένα Raspberry Pi για να μεταδώσετε το βάρος σας σε μια υπηρεσία cloud (Αρχική κατάσταση)
  • ρυθμίστε μια ειδοποίηση SMS κάθε φορά που ζυγίζεστε
  • δημιουργήστε έναν πίνακα ελέγχου παρακολούθησης βάρους στον οποίο μπορείτε να έχετε πρόσβαση στο πρόγραμμα περιήγησής σας

Βήμα 1: Εξοπλισμός

Κλίμακα πίνακα ισορροπίας Wii
Κλίμακα πίνακα ισορροπίας Wii

Ακολουθεί μια λίστα με όλο τον εξοπλισμό που θα χρησιμοποιήσουμε σε αυτό το σεμινάριο με συνδέσμους για το πού μπορείτε να αγοράσετε κάθε είδος.

  • Raspberry Pi 3 με κάρτα SD και τροφοδοτικό (https://init.st/psuufmj)
  • Wii Balance Board (https://init.st/qg4ynjl)
  • Επαναφορτιζόμενη μπαταρία Wii Fit (https://init.st/iyypz2i)
  • 3/8 "Felt Pads (https://init.st/8gywmjj)
  • Μολύβι (δεν σας δίνω σύνδεσμο για το πού να αγοράσετε ένα μολύβι … θα πρέπει να έχετε ένα από αυτά)

Σημείωση: Εάν έχετε Raspberry Pi 1 ή 2, θα χρειαστείτε προσαρμογέα bluetooth (https://init.st/7y3bcoe)

Βήμα 2: Κλίμακα πίνακα ισορροπίας Wii

Γιατί ένας πίνακας ισορροπίας Wii; Αποδεικνύεται ότι είναι μια πραγματικά ωραία, ανθεκτική ζυγαριά που διαθέτει συνδεσιμότητα bluetooth. Αυτό θα μας επιτρέψει να το συνδέσουμε με έναν υπολογιστή ενός πίνακα (Raspberry Pi) για να διαβάσουμε το βάρος σας σε ένα σενάριο Python και να στείλουμε αυτές τις μετρήσεις σε μια διαδικτυακή υπηρεσία δεδομένων για να κάνουμε υπέροχα πράγματα. Επιπλέον, υπάρχει μια καλή πιθανότητα εσείς ή κάποιος που γνωρίζετε να έχει ήδη ένα που απλά συλλέγει σκόνη.

Θα χρειαστεί να κάνουμε μερικές απλές τροποποιήσεις στο Wii Balance Board για να κάνουμε αυτό το έργο πρακτικό και βολικό.

Βήμα 3: Ρύθμιση Bluetooth

Το Raspberry Pi 3 έρχεται με ενσωματωμένο bluetooth, το μόνο που χρειαζόμαστε για να επικοινωνήσουμε με το Wii Balance Board. Εάν έχετε Raspberry Pi 1 ή 2, θα πρέπει να χρησιμοποιήσουμε μία από τις θύρες USB για να συνδέσουμε έναν προσαρμογέα.

Ενεργοποιήστε το Pi σας (υποθέτω ότι έχετε ήδη εγκαταστήσει το Raspbian και ξεκινάει) και μεταβείτε στο παράθυρο του τερματικού Raspberry Pi. Μπορείτε να δείτε τη διεύθυνση του dongle bluetooth με την εντολή "hcitool dev":

$ hcitool devΣυσκευές: hci0 00: 1A: 7D: DA: 71: 13

Εγκαταστήστε τις μονάδες bluetooth που θα χρησιμοποιήσουμε στα σενάρια Python:

$ sudo apt-get install python-bluetooth

Αφού ολοκληρωθεί η εγκατάσταση, είμαστε έτοιμοι να συνδεθούμε και να επικοινωνήσουμε με το Wii Balance Board. Δεν θα συνδυάσουμε μόνιμα τον πίνακα μας με το Pi μας, όπως κάνουμε με τις περισσότερες συσκευές bluetooth. Ο πίνακας ισορροπίας Wii δεν προοριζόταν ποτέ να συνδυαστεί με κάτι άλλο εκτός από Wii, και η μόνιμη σύζευξη αποδείχθηκε ότι ήταν μια αρκετά μπερδεμένη πρόκληση. Η σύζευξη θα γίνεται κάθε φορά που εκτελούμε το σενάριο Python.

Βήμα 4: Ανάγνωση της κλίμακας

Είναι καιρός να συνδέσουμε το Wii Balance Board με το Raspberry Pi. Αυτό θα το κάνουμε τροποποιώντας μια έκδοση του σεναρίου Gr8W8Upd8M8.py του Σταύρου Κοροκιθάκη (https://github.com/skorokithakis/gr8w8upd8m8). Το σενάριο python που θα χρησιμοποιήσουμε για αυτό το βήμα βρίσκεται εδώ. Μπορείτε να αντιγράψετε τα περιεχόμενα αυτού του αρχείου σε ένα αρχείο που δημιουργείτε στο Raspberry Pi ή μπορείτε να κλωνοποιήσετε όλα τα αρχεία python που θα χρησιμοποιήσουμε για ολόκληρο αυτό το έργο. Ας κάνουμε το τελευταίο. Πληκτρολογήστε τις ακόλουθες εντολές σε ένα τερματικό στο Raspberry Pi σας:

$ cd ~ $ git κλώνος $ git κλώνος https: github.com/initialstate/smart-scale.git κλωνοποίηση σε «έξυπνη κλίμακα»… τηλεχειριστήριο: Καταμέτρηση αντικειμένων: 14, ολοκληρώθηκε. τηλεχειριστήριο: Συμπίεση αντικειμένων: 100% (12/12), τελειωμένο. τηλεχειριστήριο: Σύνολο 14 (δέλτα 1), επαναχρησιμοποίηση 8 (δέλτα 0), επαναχρησιμοποίηση συσκευασίας 0 Αποσυσκευασία αντικειμένων: 100% (14/14), τελειωμένο. Έλεγχος συνδεσιμότητας … ολοκληρώθηκε.

κλωνοποίηση σε «έξυπνη κλίμακα»… τηλεχειριστήριο: Καταμέτρηση αντικειμένων: 14, τελειωμένο. τηλεχειριστήριο: Συμπίεση αντικειμένων: 100% (12/12), τελειωμένο. τηλεχειριστήριο: Σύνολο 14 (δέλτα 1), επαναχρησιμοποίηση 8 (δέλτα 0), επαναχρησιμοποίηση συσκευασίας 0 Αποσυσκευασία αντικειμένων: 100% (14/14), τελειωμένο. Έλεγχος συνδεσιμότητας … ολοκληρώθηκε.

Θα πρέπει να δείτε δύο αρχεία python στον νέο κατάλογο έξυπνης κλίμακας - smartscale.py και wiiboard_test.py.

$ cd έξυπνη κλίμακα $ lsREADME.md smartscale.py wiiboard_test.py

Εκτελέστε το σενάριο wiiboard_test.py για να ελέγξετε την επικοινωνία και να λάβετε μετρήσεις βάρους από τον πίνακα υπολοίπου Wii:

$ sudo python wiiboard_test.py

Θα δείτε την ακόλουθη απάντηση:

Ανακαλύπτοντας τον πίνακα… Πατήστε τώρα το κόκκινο κουμπί συγχρονισμού στον πίνακα

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

Βρέθηκε Wiiboard στη διεύθυνση 00: 23: CC: 2E: E1: 44 Προσπαθείτε να συνδεθείτε… Συνδέθηκε στο Wiiboard στη διεύθυνση 00: 23: CC: 2E: E1: 44 Συνδέθηκε το Wiiboard ΑΠΟΣΤΟΛΗ στα δεδομένα εγγραφής έλαβε84.9185297 lbs84.8826412 lbs84.9275927 lbs

Το σενάριο wiiboard_test.py λαμβάνει τον αριθμό των μετρήσεων βάρους που καθορίζονται στη γραμμή 10 και εξάγει τον μέσο όρο:

# --------- Ρυθμίσεις χρήστη --------- WEIGHT_SAMPLES = 500# ------------------------- --------

Μπορείτε να παίξετε με αυτόν τον αριθμό αλλάζοντας την τιμή και εκτελώντας ξανά το σενάριο για να δείτε τη διακύμανση του βάρους που μετράται και του χρόνου που απαιτείται για κάθε μέτρηση. Ζυγίστε τον εαυτό σας, ζυγίστε τον σκύλο σας, ζυγίστε οτιδήποτε και δείτε αν οι μετρήσεις έχουν νόημα. Για να σταματήσετε το σενάριο, πατήστε CTRL+C.

Τώρα έχετε μετατρέψει με επιτυχία τον πίνακα ισορροπίας Wii σε ζυγαριά συνδεδεμένη με Raspberry Pi. Τώρα, ας το κάνουμε μια δροσερή κλίμακα.

Βήμα 5: Προσαρμογές υλικού

Τροποποιήσεις υλικού
Τροποποιήσεις υλικού

Η Nintendo υπέθεσε ότι θα τροφοδοτούσατε πάντα το Wii Balance Board με τέσσερις μπαταρίες ΑΑ και δεν συμπεριλάμβανε αντάπτορα τροφοδοσίας AC. Το να έχουμε μόνο μπαταρία θα ήταν ενοχλητικό επειδή δεν μπορούμε να αντιστοιχίσουμε μόνιμα το Wii Board με το Pi μας μέσω bluetooth. Πρέπει να το συγχρονίσουμε και, στη συνέχεια, να το αφήσουμε να παραμείνει συγχρονισμένο χωρίς να αδειάζει οι μπαταρίες, ώστε να μπορούμε απλά να πατήσουμε τη ζυγαριά και να ζυγίσουμε. Ευτυχώς, υπάρχουν αρκετοί προσαρμογείς τρίτων κατασκευασμένων για το Wii Balance Board που μπορούμε να χρησιμοποιήσουμε για να παρέχουμε σταθερή ισχύ από μια πρίζα τοίχου. Αντικαταστήστε τις μπαταρίες με μια μπαταρία και συνδέστε το μετασχηματιστή εναλλασσόμενου ρεύματος σε πρίζα τοίχου.

Το να ζευγαρώσουμε τον πίνακα ισορροπίας Wii και το Raspberry Pi κάθε φορά που εκτελούμε το σενάριο Python μας δημιουργεί άλλη ταλαιπωρία λόγω της θέσης του κουμπιού συγχρονισμού. Το κουμπί συγχρονισμού βρίσκεται στο κάτω μέρος της πλακέτας Wii, πράγμα που σημαίνει ότι θα πρέπει να το αναποδογυρίζουμε κάθε φορά που χρειαζόμαστε συγχρονισμό. Μπορούμε να το διορθώσουμε κάνοντας ένα μικρό μοχλό χρησιμοποιώντας ένα μολύβι και τρία μαξιλαράκια τσόχας 3/8 "όπως φαίνεται παραπάνω. Η επαναφορτιζόμενη μπαταρία εκθέτει το κουμπί συγχρονισμού στην κάτω επιφάνεια του πίνακα. Κολλήστε με ταινία ένα μολύβι (ή κάτι παρόμοιο) που εκτείνεται από το κουμπί συγχρονισμού στο εξωτερικό μπροστινό μέρος του πίνακα. Στοιβάξτε τρία μαξιλάρια τσόχας 3/8 "(ή κάτι παρόμοιο) στο κέντρο του μολυβιού για να δημιουργήσετε έναν ακίνητο άξονα. Προσέξτε να μην εκθέσετε πολύ το μολύβι από τον πίνακα καθώς δεν θέλετε κάποιος να το βγάλει κατά λάθος. Αναποδογυρίστε την πλακέτα και μπορείτε να πατήσετε το κουμπί συγχρονισμού πατώντας απλά προς τα κάτω το μοχλό. Λίγο χακάρισμα αλλά αποτελεσματικό.

Ανάλογα με τον τρόπο αποθήκευσης του Wii Board, μπορεί να θέλετε να αφαιρέσετε τα λαστιχένια μαξιλάρια λαβής από τα πόδια της σανίδας (τα τακάκια είναι απλά αυτοκόλλητα που μπορείτε να αφαιρέσετε). Τα μαξιλάρια τσόχας 3/8 μπορούν να τοποθετηθούν στα πόδια της σανίδας για εύκολη ολίσθηση.

Βήμα 6: Αρχική κατάσταση

Αρχική κατάσταση
Αρχική κατάσταση

Θέλουμε να μεταδώσουμε το βάρος/τα δεδομένα μας σε μια υπηρεσία cloud και να κάνουμε αυτή την υπηρεσία να μετατρέψει τα δεδομένα μας σε έναν όμορφο πίνακα ελέγχου στον οποίο μπορούμε να έχουμε πρόσβαση από το φορητό υπολογιστή ή την κινητή συσκευή μας. Τα δεδομένα μας χρειάζονται έναν προορισμό. Θα χρησιμοποιήσουμε την αρχική κατάσταση ως αυτόν τον προορισμό.

Βήμα 1: Εγγραφή για τον αρχικό λογαριασμό του κράτους Μεταβείτε στη διεύθυνση https://iot.app.initialstate.com και δημιουργήστε έναν νέο λογαριασμό.

Βήμα 2: Εγκαταστήστε το ISStreamerΕγκαταστήστε τη μονάδα αρχικής κατάστασης Python στο Pi σας: Σε μια γραμμή εντολών (μην ξεχάσετε πρώτα να κάνετε SSH στο Pi σας), εκτελέστε την ακόλουθη εντολή:

$ cd/home/pi/$ / curl -sSL https://get.initialstate.com/python -o -| sudo bash

Βήμα 3: Κάντε κάποια Automagic Μετά το Βήμα 2 θα δείτε κάτι παρόμοιο με την ακόλουθη έξοδο στην οθόνη:

pi@raspberrypi ~ $ / curl -sSL https://get.initialstate.com/python -o -| sudo bashPassword: Έναρξη 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 version: 1 pip minor version: 5 ISStreamer βρέθηκε, ενημέρωση… Απαιτήσεις ήδη ενημερωμένο: ISStreamer στο/Librar/Python/2.7/site-packages Καθαρισμός… Θέλετε να λάβετε αυτόματα ένα παράδειγμα δέσμης ενεργειών; [y/N]

(η έξοδος μπορεί να είναι διαφορετική και να διαρκέσει περισσότερο εάν δεν έχετε εγκαταστήσει ποτέ τη μονάδα ροής αρχικής κατάστασης Python)

Όταν σας ζητηθεί να λάβετε αυτόματα ένα παράδειγμα δέσμης ενεργειών, πληκτρολογήστε y. Αυτό θα δημιουργήσει ένα δοκιμαστικό σενάριο που μπορούμε να εκτελέσουμε για να διασφαλίσουμε ότι μπορούμε να μεταδώσουμε δεδομένα στην αρχική κατάσταση από το Pi μας. Θα σας ζητηθεί:

Πού θέλετε να αποθηκεύσετε το παράδειγμα; [προεπιλογή:./is_example.py]:

Μπορείτε είτε να πληκτρολογήσετε μια προσαρμοσμένη τοπική διαδρομή είτε να πατήσετε enter για να αποδεχτείτε την προεπιλογή. Θα σας ζητηθεί το όνομα χρήστη και ο κωδικός πρόσβασης που μόλις δημιουργήσατε κατά την εγγραφή του λογαριασμού αρχικής κατάστασης. Εισαγάγετε και τα δύο και η εγκατάσταση θα ολοκληρωθεί.

Βήμα 4: Κλειδιά πρόσβασης

Ας ρίξουμε μια ματιά στο παράδειγμα σεναρίου που δημιουργήθηκε.

$ nano is_example.py

Στη γραμμή 15, θα δείτε μια γραμμή που ξεκινά με streamer = Streamer (bucket_…. Αυτές οι γραμμές δημιουργούν έναν νέο κάδο δεδομένων με την ονομασία "Python Stream Παράδειγμα" και σχετίζεται με τον λογαριασμό σας. Αυτή η συσχέτιση συμβαίνει λόγω του κλειδιού πρόσβασης = "…" παράμετρος στην ίδια γραμμή. Αυτή η μεγάλη σειρά γραμμάτων και αριθμών είναι το κλειδί πρόσβασης στο λογαριασμό αρχικής κατάστασης. Εάν μεταβείτε στον λογαριασμό αρχικής κατάστασης στο πρόγραμμα περιήγησής σας, κάντε κλικ στο όνομα χρήστη σας επάνω δεξιά και, στη συνέχεια, μεταβείτε στην ενότητα "Οι ρυθμίσεις μου", θα βρείτε το ίδιο κλειδί πρόσβασης στο κάτω μέρος της σελίδας στην ενότητα "Κλειδιά πρόσβασης ροής".

Κάθε φορά που δημιουργείτε μια ροή δεδομένων, αυτό το κλειδί πρόσβασης θα κατευθύνει αυτήν τη ροή δεδομένων στο λογαριασμό σας (οπότε μην μοιράζεστε το κλειδί σας με κανέναν).

Βήμα 5: Εκτελέστε το Παράδειγμα

Εκτελέστε τη δοκιμαστική δέσμη ενεργειών για να βεβαιωθείτε ότι μπορούμε να δημιουργήσουμε μια ροή δεδομένων στον λογαριασμό σας αρχικής κατάστασης. Εκτελέστε τα ακόλουθα:

$ python is_example.py

Βήμα 6: Κέρδος

Επιστρέψτε στον αρχικό σας λογαριασμό στο πρόγραμμα περιήγησής σας. Ένας νέος κάδος δεδομένων που ονομάζεται "Παράδειγμα ροής Python" θα έπρεπε να έχει εμφανιστεί στα αριστερά στο ράφι καταγραφής (ίσως χρειαστεί να ανανεώσετε τη σελίδα). Μπορείτε να προβάλετε τα δεδομένα σε Πλακάκια για να δείτε τα ίδια δεδομένα σε μορφή πίνακα ελέγχου.

Βήμα 7: Τελικό σενάριο

Υποθέτοντας ότι εκτελέσατε την εντολή "git clone https://github.com/InitialState/smart-scale.git" στο Μέρος 2, το τελευταίο σενάριο που τα συνδυάζει όλα ονομάζεται smartscale.py στον κατάλογο ~/έξυπνης κλίμακας. (https://github.com/InitialState/smart-scale/blob/master/smartscale.py)

Πρέπει να ορίσετε μερικές ρυθμίσεις στο σενάριο για να μπορέσετε να το εκτελέσετε. Ανοίξτε το smartscale.py στον αγαπημένο σας επεξεργαστή κειμένου, όπως το nano.

$ cd ~ $ cd έξυπνης κλίμακας $ nano smartscale.py

Κοντά στην κορυφή αυτού του αρχείου, υπάρχει μια ενότητα Ρυθμίσεις χρήστη.

# --------- Ρυθμίσεις χρήστη --------- BUCKET_NAME = ": apple: My Weight History" BUCKET_KEY = "weight11" ACCESS_KEY = "ΤΟΠΟΘΕΤΗΣΤΕ ΤΟ ΑΡΧΙΚΟ ΚΡΑΤΙΚΟ ΠΡΟΣΒΑΣΗ ΣΑΣ ΕΔΩ" METRIC_UNITS = FalseWEIGHT_SAMPLES = 500THROWAWAY_SAMPLES = 100WEIGHT_HISTORY = 7# -------------------------------------

  • Το BUCKET_NAME ορίζει το όνομα του κάδου δεδομένων αρχικής κατάστασης στην οποία θα μεταδοθεί το βάρος/δεδομένα σας. Αυτό μπορεί να ρυθμιστεί εδώ και να αλλάξει αργότερα στη διεπαφή χρήστη.
  • Το BUCKET_KEY είναι το μοναδικό αναγνωριστικό κάδου που καθορίζει πού θα μεταφερθούν τα δεδομένα σας. Εάν θέλετε να δημιουργήσετε έναν διαφορετικό κάδο/πίνακα ελέγχου, χρησιμοποιήστε διαφορετικό αναγνωριστικό εδώ (*σημείωση, εάν αρχειοθετήσετε έναν κάδο, δεν μπορείτε να χρησιμοποιήσετε ξανά το κλειδί του σε νέο κάδο).
  • Το ACCESS_KEY είναι το κλειδί του αρχικού σας λογαριασμού. Εάν δεν τοποθετήσετε το ACCESS_KEY σε αυτό το πεδίο, τα δεδομένα σας δεν θα εμφανιστούν στο λογαριασμό σας.
  • Το METRIC_UNITS σάς επιτρέπει να καθορίσετε το βάρος σας σε κιλά αν οριστεί σε True ή lb εάν οριστεί σε False.
  • Το WEIGHT_SAMPLES καθορίζει πόσες μετρήσεις λαμβάνονται και υπολογίζονται κατά μέσο όρο μαζί για να λάβετε το πραγματικό σας βάρος. 500 μετρήσεις διαρκούν περίπου 4-5 δευτερόλεπτα και παρέχουν αρκετά ακριβή αποτελέσματα.
  • Το THROWAWAY_SAMPLES καθορίζει τον αριθμό των δειγμάτων που πετιούνται όταν κάνετε το πρώτο βήμα στον πίνακα. Αυτό αποτρέπει τα αρχικά βήματα και τη μετατόπιση από την απόρριψη της τελικής μέτρησης. Αυτό πρέπει πάντα να είναι πολύ μικρότερο από WEIGHT_SAMPLES.
  • Το WEIGHT_HISTORY ορίζει τον αριθμό των μετρήσεων που έγιναν πριν αποσταλεί μια επιπλέον ενημέρωση. Μόνο οι μετρήσεις που έγιναν δύο ώρες ή περισσότερο μετράνε για το ιστορικό.

Αφού καθορίσετε κάθε παράμετρο σε αυτήν την ενότητα και αποθηκεύσετε τις αλλαγές σας, είστε έτοιμοι να εκτελέσετε το τελικό σενάριο. Πριν ξεκινήσουμε το σενάριο, ας δούμε τι πρόκειται να κάνει.

  • Στην αρχή του σεναρίου, θα σας ζητηθεί να αντιστοιχίσετε το Wii Balance Board με το Raspberry Pi. Χρησιμοποιήστε το μοχλό που παραβιάσατε μαζί στην ενότητα Μέρος 2: Τροποποιήσεις υλικού για να πατήσετε το κουμπί συγχρονισμού όταν σας ζητηθεί.
  • Μόλις τρέξει το σενάριο, πατήστε στο Wii Board για να αρχίσετε να μετράτε το βάρος σας. Μετά από 4-5 δευτερόλεπτα, το βάρος σας θα σταλεί αυτόματα στον λογαριασμό αρχικής κατάστασης.
  • Αφού ρυθμίσουμε τις ειδοποιήσεις SMS (σε μερικά βήματα), θα λάβετε ένα μήνυμα κειμένου αμέσως μετά τη μέτρησή σας.

Εκτελέστε το σενάριο για να ξεκινήσετε τη μαγεία.

$ sudo python smartscale.py

Βήμα 8: Πίνακας ελέγχου

Ταμπλό
Ταμπλό

Μεταβείτε στον λογαριασμό σας στην αρχική κατάσταση και κάντε κλικ στον νέο κάδο δεδομένων με το όνομα που αντιστοιχεί στην παράμετρο BUCKET_NAME (δηλαδή το Ιστορικό βάρους μου). Κάντε κλικ στο Πλακάκια για να δείτε τον πίνακα ελέγχου ιστορικού βάρους. Θα πρέπει να δείτε τρία πλακίδια την πρώτη φορά που βλέπετε τα δεδομένα σας σε Πλακάκια - Ενημέρωση, Ημερομηνία βάρους και Βάρος (λίβρα). Μπορείτε να προσαρμόσετε τον πίνακα ελέγχου αλλάζοντας το μέγεθος και μετακινώντας τα πλακίδια, αλλάζοντας τους τύπους προβολών και προσθέτοντας ακόμη και πλακίδια. Αυτός ο πίνακας ελέγχου σας δίνει τη δυνατότητα να δείτε το ιστορικό βάρους σας με μια ματιά. Είναι φιλικό προς κινητά και μπορείτε ακόμη και να το μοιραστείτε με άλλα άτομα.

Μπορείτε να προσθέσετε μια εικόνα φόντου στον πίνακα ελέγχου για να δώσετε στα δεδομένα σας περισσότερη προσωπικότητα και περιβάλλον.

Βήμα 9: SMS

γραπτό μήνυμα
γραπτό μήνυμα

Ας δημιουργήσουμε μια ειδοποίηση SMS κάθε φορά που η ζυγαριά λαμβάνει μια μέτρηση βάρους. Βεβαιωθείτε ότι ο κάδος δεδομένων ιστορικού βάρους είναι φορτωμένος.

  1. Κάντε κλικ στις ρυθμίσεις του κάδου (κάτω από το όνομά του) στο παράθυρο του κάδου δεδομένων.
  2. Κάντε κλικ στην καρτέλα Ενεργοποίηση.
  3. Επιλέξτε τη ροή δεδομένων για ενεργοποίηση. Μπορείτε να χρησιμοποιήσετε την αναπτυσσόμενη λίστα για να επιλέξετε από υπάρχουσες ροές μόλις φορτωθεί ένας κάδος δεδομένων ή μπορείτε να πληκτρολογήσετε το όνομα/κλειδί ροής με μη αυτόματο τρόπο. Στο παράδειγμα στιγμιότυπου οθόνης παραπάνω, έχει επιλεγεί "Ενημέρωση".
  4. Επιλέξτε τον τελεστή υπό όρους, σε αυτήν την περίπτωση «αντιστοίχιση».
  5. Επιλέξτε την τιμή ενεργοποίησης που θα ενεργοποιήσει μια ενέργεια (πληκτρολογήστε μη αυτόματα την επιθυμητή τιμή). Πληκτρολογήστε lb εάν δεν χρησιμοποιείτε μονάδες μέτρησης ή πληκτρολογήστε kg εάν χρησιμοποιείτε μετρητικές μονάδες. Κάθε φορά που η ροή "Ενημέρωση" περιέχει "lb" (ή "kg"), θα λαμβάνετε μια ειδοποίηση μηνύματος κειμένου.
  6. Κάντε κλικ στο κουμπί "+" για να προσθέσετε τη συνθήκη ενεργοποίησης.
  7. Εισαγάγετε τη διεύθυνση email ή τον αριθμό τηλεφώνου σας στο πεδίο "Επαφές προς ειδοποίηση".
  8. Κάντε κλικ στο κουμπί "+" για να προσθέσετε τα στοιχεία επικοινωνίας.
  9. Εισαγάγετε οποιονδήποτε κωδικό επαλήθευσης εάν προσθέσετε έναν νέο αριθμό τηλεφώνου για να ολοκληρώσετε τη ρύθμιση.
  10. Κάντε κλικ στο κουμπί Τέλος στο κάτω μέρος για να επιστρέψετε στην κύρια οθόνη. Η σκανδάλη σας είναι πλέον ενεργή και θα ενεργοποιηθεί όταν πληρούνται οι προϋποθέσεις.

Μόλις ολοκληρωθεί η ρύθμιση, θα λαμβάνετε ένα SMS κάθε φορά που ζυγίζεστε που περιέχει το βάρος σας, πόσο άλλαξε το βάρος σας από την τελευταία μέτρηση και ένα τυχαίο αστείο / προσβολή / φιλοφρόνηση.

Βήμα 10: Συμπέρασμα

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

  • Μπορείτε να μεταδώσετε δεδομένα από άλλες πηγές στον ίδιο πίνακα ελέγχου ιστορικού βάρους (πληροφορίες) για να δημιουργήσετε τον προσωπικό σας πίνακα ελέγχου υγείας.
  • Μπορείτε να αλλάξετε τα αστεία στο messageWeighFirst, messageWeighLess, messageWeighMore και messageWeighSame με τη δική σας αίσθηση του χιούμορ.
  • Μπορείτε να αλλάξετε τα αστεία σε πρακτικά μηνύματα ή να τα αφαιρέσετε και να χρησιμοποιήσετε τον κωδικό κλίμακας για να παρακολουθήσετε το βάρος κάτι πιο σημαντικού εκτός από το δικό σας σωματικό βάρος.
  • Μπορείτε να δημιουργήσετε το δικό σας έξυπνο ψυγείο μπύρας/κρασιού χρησιμοποιώντας την ίδια προσέγγιση. Υπάρχει ήδη ένα φοβερό σεμινάριο για αυτό εδώ.

Χακάρετε και ενημερώστε με αν αυτό το σεμινάριο σας εμπνέει να δημιουργήσετε κάτι εκπληκτικό.

Συνιστάται: