Πίνακας περιεχομένων:
- Βήμα 1: Γενικός στόχος
- Βήμα 2: Πρώτο βήμα: Αισθητήρες
- Βήμα 3: Δεύτερο βήμα: Σύνδεση με μικροελεγκτή
- Βήμα 4: Τρίτο βήμα: Χτίζοντας ένα σκίτσο
- Βήμα 5: Τέταρτο βήμα: Προετοιμασία του Φύλλου Google και του σεναρίου του
- Βήμα 6: Πέμπτο βήμα: Σύνδεση όλων μαζί
- Βήμα 7: Έκτο Βήμα: Γραφήματα δεδομένων
- Βήμα 8: Έβδομο βήμα: Ανάλυση δεδομένων
Βίντεο: CloudyData - ESP8266 σε Google Sheets Made Simple: 10 βήματα (με εικόνες)
2024 Συγγραφέας: John Day | [email protected]. Τελευταία τροποποίηση: 2024-01-30 08:35
Έψαχνα για αποθήκευση δεδομένων στο cloud για πολύ καιρό τα τελευταία χρόνια: είναι ενδιαφέρον να παρακολουθούμε δεδομένα από κάθε είδους αισθητήρα, αλλά είναι πιο ενδιαφέρον αν αυτά τα δεδομένα είναι διαθέσιμα παντού χωρίς δυσκολία αποθήκευσης, όπως χρήση καρτών SD ή παρόμοια, σε τοπική αποθήκευση. Συνήθιζα να αποθηκεύω σε κάρτες SD δεδομένα ταχύτητας ανέμου πριν από χρόνια, προτού οι υπηρεσίες IoT και cloud αρχίσουν να είναι απλές στη χρήση: τώρα ένα βήμα παραπέρα είναι δυνατό με ιδιαίτερες δυσκολίες, ακόμη και αν δεν είστε ειδικός στο IoT ή προγραμματιστής.
Σε αυτό το διδακτικό θα περιγράψω πώς παρακολουθώ την ποιότητα του αέρα μου στο σπίτι, αναφερόμενη κυρίως στη συγκέντρωση σκόνης και σωματιδίων κοντά στον τρισδιάστατο εκτυπωτή μου, προσπαθώντας να καταλάβω εάν η διαδικασία τρισδιάστατης εκτύπωσης είναι επικίνδυνη από την άποψη του PM2.5 και πώς είμαι χρησιμοποιώντας τα Υπολογιστικά φύλλα Google για αποθήκευση δεδομένων, χωρίς να απαιτείται υπηρεσία τρίτου μέρους.
Βήμα 1: Γενικός στόχος
Θέλω να μάθω εάν η ζωή παρουσία ενός 3D εκτυπωτή μπορεί να είναι επικίνδυνη.
Για να γίνει αυτό χρειάζομαι δεδομένα και τα δεδομένα πρέπει να αποθηκευτούν στο cloud.
Θέλω να χρησιμοποιήσω τα Υπολογιστικά φύλλα Google αφού είναι απλό και αποτελεσματικό.
Θέλω επίσης το απόρρητο: οπότε η κοινή χρήση δεδομένων με την Google δεν είναι η πρώτη μου επιλογή, αλλά είναι καλύτερη από τη χρήση υπηρεσιών τρίτων, όπως κάνουν πολλοί bloggers.
Η χρήση των Υπολογιστικών φύλλων Google είναι ένα βήμα προς τη μεταφόρτωση δεδομένων σε έναν προσωπικό τοπικό αποθηκευτικό χώρο, όπως το Nextcloud σε ένα απλό NAS: αυτό θα περιγραφεί σε μελλοντικό οδηγό.
Βήμα 2: Πρώτο βήμα: Αισθητήρες
Χρησιμοποιώ 2 αισθητήρες για να παρακολουθώ την ποιότητα του αέρα στο σπίτι μου:
-
a Nova PM Sensor SDS011 Air Quality Detection Sensor Module, ένα υπέροχο κομμάτι υλικού, σχετικά απλό στη χρήση με Arduino και παρόμοιους πίνακες. Μπορείτε να το χρησιμοποιήσετε με το δικό του λογισμικό (μόνο για παράθυρα!:-() και προσαρμογέα USB, ή σύνδεση με Arduino με βιβλιοθήκες. Πολλές πληροφορίες μπορείτε να βρείτε εδώ:
- inovafitness.com/en/a/chanpinzhongxin/95.ht…
- www-sd-nf.oss-cn-beijing.aliyuncs.com/%E5%…
- aqicn.org/sensor/sds011/
-
μια ασπίδα SHT30 από το Wemos, για το Wemos D1 mini: Χρησιμοποίησα μια έκδοση v1.0.0, η τρέχουσα έκδοση είναι v2.1.0 αλλά έχουν το ίδιο αποτύπωμα, τις ίδιες λειτουργίες
wiki.wemos.cc/products:d1_mini_shields:sht…
Βήμα 3: Δεύτερο βήμα: Σύνδεση με μικροελεγκτή
Το Wemos D1 mini είναι ίσως ο καλύτερος τρόπος για να δημιουργήσετε πρωτότυπο γύρω από το ESP8266: διαθέσιμο συνδετήρα microUSB, ενσωματωμένο led, ωραίες ασπίδες.
Συνδέσα την ασπίδα SHT30 στο Wemos D1 mini απευθείας (προσέξτε τον προσανατολισμό!), Έπειτα συνέδεσα τον Nova Air Sensor με το Wemos D1 mini ως εξής:
Wemos GND καρφίτσα Nova Air αισθητήρας GND
Wemos 5V pin Nova Air sensor 5V
Wemos D5 pin (RX pin) Nova Air sensor TX
Wemos D6 pin (TX pin) Nova Air sensor RX
Μπορείτε να ρίξετε μια ματιά εδώ για περισσότερες πληροφορίες:
www.hackair.eu/docs/sds011/
www.zerozone.it/tecnologia-e-sicurezza/nov…
www.instructables.com/id/Make-one-PM25-mon…
Βήμα 4: Τρίτο βήμα: Χτίζοντας ένα σκίτσο
Τώρα πρέπει να δημιουργήσετε ένα σκίτσο: είμαστε τυχεροί, μερικοί τύποι ανέπτυξαν συγκεκριμένες βιβλιοθήκες για το Nova Air Sensor, ώστε να μπορείτε να γράψετε εύκολα το λογισμικό σας.
Το Mine χρησιμοποιεί επίσης βιβλιοθήκη SHT30, για τη μέτρηση και την αποστολή δεδομένων θερμοκρασίας και υγρασίας.
Ανακατέψα κάποιο σκίτσο που βρήκα στο διαδίκτυο, ειδικά αυτό από το nishant_sahay7, του οποίου το σεμινάριο είναι πλήρες και γεμάτο πληροφορίες. Μπορείτε να το βρείτε εδώ.
Χρησιμοποίησα αυτήν τη βιβλιοθήκη:
Θα σχολιάσω μόνο μερικές γραμμές στο σκίτσο που δημιούργησα:
γραμμή 76-77: αφυπνίζοντας τον αισθητήρα σκόνης για λίγο, τότε θα κοιμηθεί ξανά, αφού τα φύλλα δεδομένων αναφέρουν ότι προορίζεται να λειτουργήσει για περίπου 8000 ώρες, το οποίο είναι περισσότερο από αρκετό, αλλά όχι άπειρο
sds.wakeup (); καθυστέρηση (30000); // λειτουργεί 30 δευτερόλεπτα
γραμμή 121: τα δεδομένα που αποστέλλονται είναι θερμοκρασία, υγρασία, PM2.5 και PM10
sendData (t, h, pm2_5, pm10);
γραμμή 122-123: Δεν χρησιμοποιώ το ESP.deepSleep, θα προσπαθήσω στο μέλλον. μέχρι τώρα μια απλή καθυστέρηση (90000) θα είναι αρκετή για την αποστολή δεδομένων κάθε 30s + 90s = 2 λεπτά, περισσότερο ή λιγότερο
//ESP.deepSleep(dataPostDelay);
καθυστέρηση (90000)
γραμμή 143:
αυτή είναι η πιο σημαντική γραμμή, η σειρά που δημιουργείτε το String_url για να ανεβάσετε δεδομένα πρέπει να είναι η ίδια που θα χρησιμοποιήσετε στο Google Script (δείτε τα επόμενα βήματα)
String url = "/macros/s/" + GAS_ID + "/exec? Temperature =" + string_x + "& humidity =" + string_y + "& PM2.5 =" + string_z + "& PM10 =" + string_k;
Βήμα 5: Τέταρτο βήμα: Προετοιμασία του Φύλλου Google και του σεναρίου του
Οι πιστώσεις πηγαίνουν στο nishant_sahay7, όπως είπα.
Απλώς αναδημοσιεύω εδώ το έργο του, προσθέτοντας μερικές συμβουλές για μελλοντικές βελτιώσεις και τροποποιήσεις:
-
Ρύθμιση φύλλων Google
- Ανοίξτε το Google Drive και δημιουργήστε νέο υπολογιστικό φύλλο και ονομάστε το, μετά δώστε τα πεδία με τις παραμέτρους που θέλετε να ορίσετε.
- Το αναγνωριστικό φύλλου φαίνεται στο σχήμα 2
- Μεταβείτε στο Εργαλεία-Επεξεργαστής σεναρίων (εικόνα 3)
- Δώστε το όνομα ίδιο με το υπολογιστικό φύλλο (εικόνα 4)
-
Επιλέξτε τον κώδικα από εδώ και επικολλήστε στο παράθυρο του Script Editor (εικόνα 5)
Αντικαταστήστε το var sheet_id με το αναγνωριστικό υπολογιστικού φύλλου από το βήμα 2
- Μετάβαση στη δημοσίευση - ανάπτυξη ως εφαρμογή Ιστού (εικόνα 6)
- Αλλάξτε τον τύπο πρόσβασης σε οποιονδήποτε, ακόμη και ανώνυμο, και αναπτύξτε (εικόνα 7)
- Μεταβείτε στην ενότητα "Άδειες ελέγχου" (εικόνα 8)
- Επιλέξτε Advanced (εικόνα 9)
- Επιλέξτε Μετάβαση στο (όνομα αρχείου) και, στη συνέχεια, επιτρέψτε (εικόνα 10)
- Αντιγράψτε το τρέχον URL εφαρμογής ιστού και κάντε κλικ στο κουμπί OK (εικόνα 11)
-
Λήψη αναγνωριστικού σεναρίου Google
-
Η διεύθυνση URL που αντιγράφηκε θα είναι κάτι σαν: https://script.google.com/macros/s/AKfycbxZGcTwqe… Ο παραπάνω σύνδεσμος έχει τη μορφή: https://script.google.com/macros/s/AKfycbxZGcTwqe…/exec Εδώ λοιπόν το Google Script ID είναι: AKfycbxZGcTwqeDgF3MBMGj6FJeYD7mcUcyo2V6O20D6tRlLlP2M_wQ Θα χρησιμοποιηθεί για την προώθηση των δεδομένων στα Υπολογιστικά φύλλα Google: Παράδειγμα:
script.google.com/macros/s/AKfycbxZGcTwqeD…
Η επικόλληση του παραπάνω συνδέσμου σε ένα νέο παράθυρο και το πάτημα enter θα στείλει δεδομένα στο Google Sheet και ένα μήνυμα επιβεβαίωσης θα εμφανιστεί στο παράθυρο. Τα δεδομένα που αποστέλλονται θα είναι
- θερμοκρασία = 1
- υγρασία = 2
- PM2,5 = 3
- PM10 = 33,10
-
-
Αλλαγή στις ανάγκες σας
πρέπει να αλλάξετε το Google Script AND Arduino σκίτσο ανάλογα, για να προσθέσετε ή να αφαιρέσετε τιμές και στήλες: συγκρίνετε το σχήμα 5 και το σχήμα 5β
Βήμα 6: Πέμπτο βήμα: Σύνδεση όλων μαζί
Τώρα έχετε μια συσκευή που στέλνει δεδομένα στα Υπολογιστικά φύλλα Google, ένα Google Script που μπορεί να λαμβάνει και να κατανέμει δεδομένα, ένα πρόγραμμα περιήγησης είναι αρκετό για να δείτε δεδομένα, σε υπολογιστή ή smartphone ή ό, τι σας αρέσει.
Το καλύτερο θα ήταν να διαχειριστούμε λίγο αυτά τα δεδομένα, να δείξουμε μόνο μερικά απαραίτητα.
Βήμα 7: Έκτο Βήμα: Γραφήματα δεδομένων
Για να έχω ένα απλό αλλά ενδιαφέρον και χρήσιμο πάνελ οργάνωσα τα δεδομένα μου με αυτόν τον τρόπο:
- το αρχικό φύλλο Google, το κύριο, που χρησιμοποιήθηκε για να παραλάβει το αναγνωριστικό του για να εισαχθεί στο Google Script, ΠΡΕΠΕΙ να είναι άθικτο και να διατηρήσει την παραγγελία του
-
Δημιούργησα δύο άλλα φύλλα, ακολουθώντας το κύριο
-
ένα για να εξαγάγετε μόνο λίγα δεδομένα από ολόκληρο το υλικό, για παράδειγμα, τελευταίες 24 ώρες Για να εξαγάγω δεδομένα, χρησιμοποίησα τη λειτουργία SORT και QUERY, εισάγοντας στο πρώτο κελί εξαγόμενων δεδομένων
= SORT (QUERY (Foglio1! A2: Z, "order by A desc limit 694"), 1, 1)
- το άλλο για να δημιουργήσει γραφήματα για την εμφάνιση τιμών, δημιουργώντας ένα απλό πίνακα
-
Βήμα 8: Έβδομο βήμα: Ανάλυση δεδομένων
Έκανα μερικές αναλύσεις και μπορώ να πω, μέχρι τώρα, δεν θα πρέπει να υπάρχει κανένας κίνδυνος με τη χρήση τρισδιάστατου εκτυπωτή (υλικό: PLA) όσον αφορά τα PM2.5 και PM10. Κάθε φορά που ξεκινάω μια νέα τιμή σωματιδίων εκτύπωσης πηγαίνει στην οροφή, μόνο για λίγο: Νομίζω ότι αυτό οφείλεται σε προηγούμενη εναποτιθέμενη σκόνη στο κρεβάτι του εκτυπωτή 3D, έτσι ώστε όταν ο ανεμιστήρας εφέ να φτάσει στο πιάτο να αρχίσει να πετάει τριγύρω. Μετά από λίγα λεπτά η σκόνη απομακρύνεται αφού οι ανεμιστήρες συνεχίζουν να φυσούν και οι τιμές PM2.5 και PM10 μειώνονται σε χαμηλότερες τιμές.
Πράγματι, χρειάζονται περισσότερα δεδομένα και ανάλυση.
Συνιστάται:
Ανάλυση δεδομένων θερμοκρασίας/υγρασίας χρησιμοποιώντας Ubidots και Google-Sheets: 6 βήματα
Ανάλυση δεδομένων θερμοκρασίας/υγρασίας χρησιμοποιώντας Ubidots και Google-Sheets: Σε αυτό το σεμινάριο, θα μετρήσουμε διαφορετικά δεδομένα θερμοκρασίας και υγρασίας χρησιμοποιώντας αισθητήρα θερμοκρασίας και υγρασίας. Θα μάθετε επίσης πώς να στέλνετε αυτά τα δεδομένα στο Ubidots. Για να μπορείτε να το αναλύσετε από οπουδήποτε για διαφορετική εφαρμογή. Επίσης με αποστολή
Καφετιέρα Tracker With Raspberry Pi και Google Sheets: 5 βήματα
Coffee Machine Tracker With Raspberry Pi και Google Sheets: Αυτό το διδακτικό θα σας δείξει πώς να δημιουργήσετε ένα Raspberry Pi tracker για την κοινόχρηστη καφετιέρα στο χώρο του γραφείου σας. Χρησιμοποιώντας την οθόνη OLED του tracker και τους μηχανικούς διακόπτες, οι χρήστες μπορούν να καταγράφουν την κατανάλωση καφέ, να βλέπουν την ισορροπία τους και
IoT Made Simple: Παρακολούθηση πολλαπλών αισθητήρων: 7 βήματα
IoT Made Simple: Παρακολούθηση πολλαπλών αισθητήρων: Πριν από μερικές εβδομάδες, δημοσίευσα εδώ ένα σεμινάριο σχετικά με την παρακολούθηση της θερμοκρασίας χρησιμοποιώντας ένα DS18B20, έναν ψηφιακό αισθητήρα που επικοινωνεί μέσω ενός διαύλου 1-Wire, στέλνοντας δεδομένα μέσω Διαδικτύου με NodeMCU και Blynk: IoT Made Simple : Παρακολούθηση της θερμοκρασίας οπουδήποτεBu
IoT Cat Feeder Using Particle Photon Integrated With Alexa, SmartThings, IFTTT, Google Sheets: 7 βήματα (με εικόνες)
IoT Cat Feeder Using Particle Photon Integrated With Alexa, SmartThings, IFTTT, Google Sheets: Η ανάγκη για αυτόματο τροφοδότη γάτας είναι αυτονόητη. Οι γάτες (το όνομα της γάτας μας είναι Μπέλα) μπορεί να είναι δυσάρεστες όταν πεινάνε και αν η γάτα σας είναι σαν τη δική μου θα τρώει το μπολ στεγνό κάθε φορά. Χρειαζόμουν έναν τρόπο για να μοιράσω αυτόματα μια ελεγχόμενη ποσότητα φαγητού
Solderless Breadboard Layout Sheets (plug and play Electronics): 3 βήματα (με εικόνες)
Solderless Breadboard Layout Sheets (plug and play Electronics): Ακολουθεί ένα διασκεδαστικό σύστημα που έχει σχεδιαστεί για να φροντίζει μερικούς από τους πονοκεφάλους που εμπλέκονται στο breadboarding ενός κυκλώματος. Είναι ένα απλό σύνολο προτύπων αρχείων που σχεδιάζονται σε κλίμακα με ηλεκτρονικά εξαρτήματα πραγματικού κόσμου. Χρησιμοποιώντας ένα πρόγραμμα σχεδίασης διανυσμάτων, μετακινείτε απλά το c