Πίνακας περιεχομένων:
- Βήμα 1: Τι είναι η νυχτερινή ρύπανση και πώς μετράται
- Βήμα 2: BOM
- Βήμα 3: Κύκλωμα
- Βήμα 4: Αισθητήρας HTU21D
- Βήμα 5: TSL2591
- Βήμα 6: Κωδικός
- Βήμα 7: Μέσα
Βίντεο: Φορητός μετεωρολογικός σταθμός για παρατηρητές νυχτερινού ουρανού: 7 βήματα (με εικόνες)
2024 Συγγραφέας: John Day | [email protected]. Τελευταία τροποποίηση: 2024-01-30 08:35
Η φωτορύπανση είναι ένα από τα πολλά προβλήματα στον κόσμο. Για να λύσουμε αυτό το πρόβλημα, πρέπει να γνωρίζουμε πόσο μολύνεται ο νυχτερινός ουρανός με τεχνητό φως. Πολλοί μαθητές με δασκάλους στον κόσμο προσπαθούν να μετρήσουν τη ρύπανση του φωτός με ακριβούς αισθητήρες. Αποφάσισα να αλλάξω το φορητό μου luxmeter (για περισσότερους ελέγχους στο προηγούμενο εκπαιδευτικό έργο Portable Luxmeter) σε μετεωρολογικό σταθμό με αισθητήρα TSL2591. Αυτός ο αισθητήρας είναι αρκετά ευαίσθητος για τη μέτρηση της νυχτερινής ρύπανσης. Επίσης, προσθέτω HTU21D για μέτρηση θερμοκρασίας και υγρασίας.
Βήμα 1: Τι είναι η νυχτερινή ρύπανση και πώς μετράται
Η νυχτερινή ρύπανση είναι το φως από λάμπες, αυτοκίνητα, σπίτια, τεράστια LCD πάνελ στην πόλη και κάθε φως που φτιάχτηκε από τον άνθρωπο. Αυτό το ελαφρύ κάλεσμα τεχνητό. Για τους παρατηρητές, το τεχνητό φως είναι το κύριο πρόβλημα για να δουν αστέρια από την πόλη και πρέπει να βγουν έξω από την πόλη. Για τον άνθρωπο, η υψηλή φωτορύπανση είναι επιβλαβής. Και επίσης για δέντρα, γρασίδι και ζώα.
Για να ελέγξετε τη φωτορύπανση του τόπου σας, μπορείτε να δείτε εδώ το lightpollutionmap
Είναι μόνο μοντέλο και οι πραγματικές τιμές μπορεί να διαφέρουν. Γι 'αυτό δημιούργησα αυτό το πολυμετρητή.
Για τη μέτρηση της ρύπανσης του φωτός, μετράω μόνο το lux και υπολογίζω το μέγεθος/ arsec2.
Μπορώ να υπολογίσω από lux σε candela ανά υδραυλικό μέτρο:
1 cd/m2 = 1 lux
Το μέγεθος ανά τετραγωνικό τόξο δευτερολέπτου (mag/arcsec2) περιγράφει το φόντο του νυχτερινού ουρανού (καλεί φωτεινότητα της επιφάνειας).
Περισσότερα στο wiki: Φωτεινότητα επιφάνειας
Για τον υπολογισμό cd/m2 σε mag/arcsec2 είναι ο τύπος:
[τιμή σε mag/arcsec2] = Log10 ([τιμή σε cd/m2]/108000)/-0,4
unihedron.com/projects/darksky/magconv.php
Βήμα 2: BOM
Για αυτό το έργο χρειάζεστε:
1. WEMOS D1 Mini ή οποιοδήποτε μικροελεγκτή
(Χρησιμοποιώ wemos, επειδή είναι το μικρότερο, με θύρα usb, μπορείτε να δοκιμάσετε το Arduino Nano)
WEMOS D1 MINI (Yanwen Economic Air Mail)
WEMOS D1 MINI (Τυπική αποστολή AliExpress)
WEMOS D1 MINI 10 τεμ (China Post Registered Air Mail - δωρεάν αποστολή)
καλώδιο usb για προγραμματισμό και μεταφόρτωση κώδικα σε wemos
2. Αισθητήρας TSL2591
TSL2591 (Yanwen Economic Air Mail)
TSL2591 (China Post Registered Air Mail)
TSL2591 (China Post Registered Air Mail)
3. Αισθητήρας θερμοκρασίας και υγρασίας HTU21D
HTU21D (Cainiao Super Economy)
HTU21D (Yanwen Economic Air Mail - δωρεάν αποστολή)
4. Οθόνη OLED 0,96 (128 x 64)
Οθόνη OLED
Οθόνη OLED
Οθόνη OLED
5. Μπαταρία 18650
Μπαταρία ιόντων λιθίου 18650
Μπαταρία ιόντων λιθίου 18650
μπαταρία 18650 κάτοχος
6. Μονάδα φόρτισης TP4056
tp4056
tp4056
7. διακόπτες κουμπιών ή βραχυκυκλωτήρα
swtich κόκκινο ντιπ
swtichers, πολλά διαφορετικά
8. καλώδια breadboard και dupont
μικρή σανίδα ψωμιού
σετ ψωμιού
9. θήκη, δημιουργώ από ξύλο + ταινία
γραφειοκρατία
3D εκτυπωτής Prusa, ελπίζω να κάνω θήκη από πλαστικό: D
Βήμα 3: Κύκλωμα
Το κύκλωμα είναι αρκετά απλό:
Συνδέστε όλες τις μονάδες i2c (TSL2591, OLED, HTU21D) σε ακίδες SCL και SDA σε wemos (SDA -> D2, SCL -> D1).
Τροφοδοτήστε τους με 3,3 V από wemos.
Συνδέστε το τερματικό συν της μπαταρίας με τον ακροδέκτη 5V στα wemos και τη μπαταρία + τον ακροδέκτη στη μονάδα φόρτισης tp4056 στο τερματικό συν της μπαταρίας.
Συνδέστε όλες τις βάσεις μαζί.
Βήμα 4: Αισθητήρας HTU21D
Αγοράζω νέο αισθητήρα θερμοκρασίας, ο οποίος μετρά με ακρίβεια 0,3 ° C!
Πράγματα που πρέπει να γνωρίζετε για αυτόν τον αισθητήρα (από sparkfun):
- Χρησιμοποιεί τη διεπαφή I2C
- Τυπική ακρίβεια υγρασίας ± 2%
- Τυπική ακρίβεια θερμοκρασίας ± 0,3 ° C
- Λειτουργεί από 0 έως 100% υγρασία, αλλά αυτός ο αισθητήρας δεν συνιστάται για σκληρά περιβάλλοντα όπου μπορεί να έρθει σε επαφή με νερό (όπως η βροχή).
- Αισθητήρας 3.3V - χρησιμοποιήστε μετατροπείς λογικής στάθμης ή αντιστάσεις 10k για να περιορίσετε τα σήματα 5V
- Μόνο ένας αισθητήρας HTU21D μπορεί να βρίσκεται στο δίαυλο I2C κάθε φορά
Η περίληψή μου: είναι καλός αισθητήρας, επειδή μετρά με ακρίβεια 0,3 ° C και τα δύο - θερμοκρασία και υγρασία. Τα πλεονεκτήματα είναι παρεμβολές I2C και μειονεκτήματα 3.3V, αλλά δεν έχει σημασία στην περίπτωσή μου.
Βήμα 5: TSL2591
Αυτός ο αισθητήρας είναι καλός για τη μέτρηση της ρύπανσης του νυχτερινού ουρανού λόγω της ευαισθησίας του (στα 188 μικρολούξ!).
1. είναι δίοδοι με πιθανό ir και πλήρες μέτρο. Δεν το χρησιμοποιώ.
2. ρυθμιστής τάσης από 5V έως 3,3 V
Προδιαγραφές τσιπ (από adafruit):
- Πλησιάζει την απόκριση του ανθρώπινου ματιού
- Εξαιρετικά ευρύ δυναμικό εύρος 1 έως 600, 000, 000 Μετρήσεις
- Εύρος Lux: Ευαισθησία 188 uLux, έως 88.000 μετρήσεις εισόδου Lux.
- Εύρος θερμοκρασίας: -30 έως 80 *C
- Εύρος τάσης: 3,3-5V σε ρυθμιστή επί του σκάφους
- Διεπαφή: I2C
- Αυτός ο πίνακας/τσιπ χρησιμοποιεί I2C διεύθυνση 7-bit 0x29 (σταθερό)
- Διαστάσεις: 19mm x 16mm x 1mm /.75 "x.63" x.04 "Βάρος: 1.1g
- 2 δίοδοι για μέτρηση τόσο - IR όσο και πλήρους φάσματος
Περίληψη:
188 uLux είναι perferct, επίσης η επικοινωνία I2C είναι απλή. Maybeσως το πρόβλημα μπορεί να διορθωθεί στη διεύθυνση I2C (0x29). Επίσης ο ρυθμιστής επί του σκάφους είναι καλός και είναι δυνατός ο χειρισμός του αισθητήρα κατά τη διάρκεια του χειμώνα (παγετός).
Βήμα 6: Κωδικός
Χρειάζεστε αυτές τις βιβλιοθήκες (τις προσθέτω σε ένα αρχείο zip):
- Adafruit-GFX-Library-master
- adafruit_gfx_library_master
- Adafruit_HTU21DF_Library-master
- Adafruit_Sensor-master
- Adafruit_TSL2591_Library-master
Κωδικός: μπορείτε να χρησιμοποιήσετε το δικό μου ή να δημιουργήσετε το δικό σας. Μην ξεχάσετε να ορίσετε τον μέγιστο χρόνο ενσωμάτωσης (600 MS) και το κέρδος στο μέγιστο (GAIN_MAX) για μέτρηση νυχτερινού ουρανού.
Εάν προσπαθείτε να χρησιμοποιήσετε τον κωδικό μου, κάντε λήψη του αρχείου ino. Όταν αντιγράφω τον κωδικό μου από εκπαιδευτικό, κάτι δεν πάει καλά με τις βιβλιοθήκες
Χρησιμοποιώ την φόρτωση της εικόνας του φεγγαριού μόνο για διασκέδαση. Μπορείτε να χρησιμοποιήσετε οποιαδήποτε, απλώς χρησιμοποιήστε αυτήν τη σελίδα για λήψη πίνακα:
javl.github.io/image2cpp/
//https://lastminuteengineers.com/oled-display-arduino-tutorial///https://javl.github.io/image2cpp/ // mcd σε μέγεθος https://unihedron.com/projects/darksky/magconv.php… // Το HD44780 είναι ένας ελεγκτής για οθόνες υγρών κρυστάλλων (LCD) βάσει χαρακτήρων. https://unihedron.com/projects/darksky/magconv.php… #include
#περιλαμβάνω
#include #include #include "Adafruit_HTU21DF.h" #include "Adafruit_TSL2591.h" int counter; // OLED οθόνη TWI διεύθυνση #define OLED_ADDR 0x3C Adafruit_SSD1306 display (-1); // - 1 για επανεκκίνηση οθόνης με κουμπί επανεκκίνησης στον πίνακα arduino Adafruit_HTU21DF htu = Adafruit_HTU21DF (); Adafruit_TSL2591 tsl = Adafruit_TSL2591 (2591); // περάστε έναν αριθμό για το αναγνωριστικό αισθητήρα (για χρήση αργότερα) uint32_t lum; uint16_t ir, full? int ulux; float lux? float temp? float rel_hum? float mag_arcsec2; // visual mags/arcsecond² [value in mag/arcsec2] = Log10 ([value in cd/m2]/108000)/-0,4 // σύμβολα // βαθμός για Κελσίου const ανυπόγραφο βαθμό char PROGMEM = {0xe, 0x11, 0x11, 0x11, 0xe, 0x0, 0x0, 0x0}; // εκθέτης 2 const ανυπόγραφος εκθέτης char PROGMEM = {0xe, 0x1b, 0x3, 0x6, 0xc, 0x18, 0x1f, 0x0}; // 'moon_logo', 128x64px const unsigned char intro PROGMEM = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xC1, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xFE, 0x0F, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf0, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff 0xff, 0xff, 0xff, 0xc0, 0xff, 0xfd, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x03, 0xff, 0xc0, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff 0xfc, 0x07, 0xff, 0xe0, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf0, 0x07, 0xff, 0xf8, 0xff, 0xff, 0xff, 0xff, 0xff 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe0, 0x0f, 0xff, 0xf0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc0, 0x0f, 0xff, 0x77, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x80, 0x1f, 0xbe, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x80, 0x1f, 0xcc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x3f, 0xc0, 0xff, 0xff, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,, 0xc0, 0xff, 0xff, 0x8f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x00, 0x3f, 0xe0, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x3F, 0x80, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0x00, 0x3F, 0x00, 0x0F, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0x00, 0x3f, 0xf1, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,, 0xff, 0xff, 0xf0, 0x00, 0x3f, 0xf9, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff ff, 0xff, 0xf0, 0x00, 0x3f, 0xfb, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf0, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe0, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff 0xe0, 0x18, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe0, 0x60, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe0, 0x00, 0xff, 0xff, 0xff, 0xff, 0xe7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff 0xff, 0xff, 0xff, 0xff, 0xe1, 0xe7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc0, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0χff 0xff, 0xff, 0xff, 0xff, 0xff, 0xC0, 0X18, 0xff, 0xff, 0xff, 0xff, 0xE0 ως, 0x0F, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xC0, 0x38, 0xff, 0xff, 0xff, 0xff, 0xe0, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc0, 0x48, 0x7f, 0xff, 0xff, 0xff, 0xc0, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc0, 0x80, 0x3f, 0xff, 0xff, 0xff, 0x00, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff 0xff, 0xff, 0xc0, 0xc4, 0x1f, 0xff, 0xff, 0xfc, 0x00, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc0, 0xff, 0xff, 0xff, 0xff, 0xc0, 0xff, 0xff, 0xff, 0xff, 0xc0, 0xff, 0xff, 0xff, 0xff, 0xc0, 0xff, 0xff, 0xff, 0xff, 0xc0, 0xff, 0xff, 0xff, 0xff, 0xff, 0χff 0x0f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc0, 0xf0, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x07, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff 0xc0, 0x00, 0x00, 0xff, 0xff, 0xff, 0xf0, 0xe3, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x01, 0xff, 0xff, 0xff, 0xf1, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff 0x43, 0xff, 0xff, 0xff, 0xfb, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe0, 0x00, 0x4f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe0, 0x00, 0x5f, 0xff, 0xff, 0x03, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xF0, 0x00, 0x3F, 0xff, 0xff, 0x87, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xF0, 0x00, 0x03, 0xff, 0xff, 0xcf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x01, 0xff, 0xff, 0xb7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,, 0xff, 0xff, 0xf8, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0xff, 0xff, 0xff, 0xff, 0xf8, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff,, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x01, 0x0f, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,, 0xfc, 0x01, 0xfe, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x80, 0xff 00, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x03, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xE0 ως, 0x00, 0x01, 0xff, 0xff, 0xfd, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xF0, 0x00, 0x00, 0x7f, 0xff, 0xf3, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0x00, 0x00, 0x1f, 0xff, 0xc7, 0xff, 0xff, 0xff, 0xff, 0xff 0xff, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x00, 0xfc, 0x0F, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x80, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff 0xff, 0xff, 0xff, 0xE0 ως, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe0, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff} · void setup () {// htu21d htu.begin (); // tsl2591 sensor_t sensor; tsl.getSensor (& αισθητήρας); tsl.setGain (TSL2591_GAIN_MAX); // MAX, HIGH MED, LOW, tsl.setTiming (TSL2591_INTEGRATIONTIME_600MS); // 100MS, 200 MS, 300MS, 400MS, 500MS, 600MS // εγκατάσταση για oled οθόνη. Αρχή (SSD1306_SWITCHCAPVCC, OLED_ADDR). display.clearDisplay (); display.display (); display.drawBitmap (0, 0, εισαγωγή, 128, 64, ΛΕΥΚΟ); display.display (); καθυστέρηση (1000)? display.setTextSize (1); display.setTextColor (ΛΕΥΚΟ); display.setFont (& FreeSerif9pt7b); display.clearDisplay (); } void loop () {lux = 0; ulux = 0; mag_arcsec2 = 0; θερμοκρασία = 0; rel_hum = 0; καθυστέρηση (100)? lum = tsl.getFullLuminosity (); ir = lum >> 16; πλήρης = lum & 0xFFFF; καθυστέρηση (100)? lux = tsl.calculateLux (πλήρες, ir); // ένταση φωτός στο microlux ulux = lux*1000000; αν (ulux <0) {ulux = 0; } mag_arcsec2 = log10 (lux/108000)/-0,4; // (log ((ulux/108000)) /(-0.4) temp = htu.readTemperature (); rel_hum = htu.readHumidity (); display_values ();} void display_values () {//display.drawPixel(120, 50, ΛΕΥΚΟ); display.clearDisplay (); display.setCursor (1, 15); display.print (temp); display.drawBitmap (42, 2, βαθμό, 8, 5, ΛΕΥΚΟ); display.setCursor (50, 15); display.print ("C"); display.setCursor (70, 15); display.print (rel_hum); display.setCursor (114, 15); display.print ("%"); display.drawLine (1, 20, 127, 20, ΛΕΥΚΟ); display.drawLine (67, 1, 67, 20, ΛΕΥΚΟ); display.setCursor (1, 35); display.print ("ulux ="); display.setCursor (50, 35); display.print (ulux); display.setCursor (1, 55); display.print ("mag/arsec"); display.drawBitmap (70, 45, εκθέτης, 8, 8, ΛΕΥΚΟ) · οθόνη. setCursor (83, 55); display.print (mag_arcsec2); display.display ();}
Βήμα 7: Μέσα
Δημιουργώ τη δική μου θήκη και χρησιμοποιώ το breadboard με καλώδια dupont όπως μπορείτε να δείτε.
Χρησιμοποιώ το TP4056 για φόρτιση της μπαταρίας με καλώδιο usb (χρειάζομαι βραχυκυκλωτήρα).
Για ενεργοποίηση/απενεργοποίηση χρησιμοποιώ βραχυκυκλωτήρα.
Για το φως της ημέρας, το TSL2591 δείχνει 0 και το mag/arcsec2 είναι ναν.
Για νυχτερινό ουρανό, το TSL2591 πρέπει να εμφανίζει από 0 έως 1000 000 microlux (ulux) και το αντίστοιχο mag/arcsec2
(περ. 14 έως 22 mag/arsec2).
Για το fullMoon μέτρησα 50k ulux που είναι 0,05 lux.
Συνιστάται:
Fanair: ένας μετεωρολογικός σταθμός για το δωμάτιό σας: 6 βήματα (με εικόνες)
Fanair: ένας μετεωρολογικός σταθμός για το δωμάτιό σας: Υπάρχουν αμέτρητοι τρόποι για να μάθετε τον τρέχοντα καιρό, αλλά τότε γνωρίζετε μόνο τον καιρό έξω. Τι γίνεται αν θέλετε να μάθετε τον καιρό μέσα στο σπίτι σας, μέσα σε ένα συγκεκριμένο δωμάτιο; Αυτό προσπαθώ να επιλύσω με αυτό το έργο. Ο Fanair χρησιμοποιεί mul
Μετεωρολογικός σταθμός NaTaLia: Μετεωρολογικός σταθμός Arduino Solar Powered Done the Right Way: 8 βήματα (με εικόνες)
Μετεωρολογικός Σταθμός NaTaLia: Ο Μετεωρολογικός Σταθμός Arduino έγινε με τον σωστό τρόπο: Μετά από 1 χρόνο επιτυχούς λειτουργίας σε 2 διαφορετικές τοποθεσίες, μοιράζομαι τα σχέδια έργων μου με ηλιακή ενέργεια και εξηγώ πώς εξελίχθηκε σε ένα σύστημα που μπορεί πραγματικά να επιβιώσει για μεγάλο χρονικό διάστημα περιόδους από την ηλιακή ενέργεια. Αν ακολουθείτε
Μετεωρολογικός σταθμός DIY & Σταθμός αισθητήρα WiFi: 7 βήματα (με εικόνες)
Μετεωρολογικός Σταθμός DIY & WiFi Sensor Station: Σε αυτό το έργο θα σας δείξω πώς να δημιουργήσετε έναν μετεωρολογικό σταθμό μαζί με έναν σταθμό αισθητήρα WiFi. Ο σταθμός αισθητήρων μετρά τα τοπικά δεδομένα θερμοκρασίας και υγρασίας και τα στέλνει, μέσω WiFi, στον μετεωρολογικό σταθμό. Ο μετεωρολογικός σταθμός εμφανίζει τότε
Μετεωρολογικός σταθμός με Arduino, BME280 & Display για να δείτε την τάση τις τελευταίες 1-2 ημέρες: 3 βήματα (με εικόνες)
Μετεωρολογικός σταθμός με Arduino, BME280 & Display για να δείτε την τάση μέσα στις τελευταίες 1-2 ημέρες: Γεια σας! Εδώ έχουν ήδη εισαχθεί οι εκπαιδευτικοί μετεωρολογικοί σταθμοί. Δείχνουν την τρέχουσα πίεση του αέρα, τη θερμοκρασία και την υγρασία. Αυτό που τους έλειπε μέχρι τώρα ήταν μια παρουσίαση του μαθήματος μέσα στις τελευταίες 1-2 ημέρες. Αυτή η διαδικασία θα έχει
Μετεωρολογικός σταθμός WiFi μετεωρολογικός σταθμός V1.0: 19 βήματα (με εικόνες)
Solar Powered WiFi Weather Station V1.0: Σε αυτό το Εκπαιδευτικό, θα σας δείξω πώς να φτιάξετε έναν Μετεωρολογικό σταθμό με ηλιακή ενέργεια με έναν πίνακα Wemos. Το Wemos D1 Mini Pro διαθέτει έναν μικρό παράγοντα μορφής και μια μεγάλη γκάμα ασπίδων plug-and-play το καθιστούν ιδανική λύση για γρήγορη απόκτηση