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

Φορητός μετεωρολογικός σταθμός για παρατηρητές νυχτερινού ουρανού: 7 βήματα (με εικόνες)
Φορητός μετεωρολογικός σταθμός για παρατηρητές νυχτερινού ουρανού: 7 βήματα (με εικόνες)

Βίντεο: Φορητός μετεωρολογικός σταθμός για παρατηρητές νυχτερινού ουρανού: 7 βήματα (με εικόνες)

Βίντεο: Φορητός μετεωρολογικός σταθμός για παρατηρητές νυχτερινού ουρανού: 7 βήματα (με εικόνες)
Βίντεο: Φορητός μετεωρολογικός σταθμός - μόνο με 13,90€ 2024, Ιούλιος
Anonim
Φορητός μετεωρολογικός σταθμός για παρατηρητές νυχτερινού ουρανού
Φορητός μετεωρολογικός σταθμός για παρατηρητές νυχτερινού ουρανού

Η φωτορύπανση είναι ένα από τα πολλά προβλήματα στον κόσμο. Για να λύσουμε αυτό το πρόβλημα, πρέπει να γνωρίζουμε πόσο μολύνεται ο νυχτερινός ουρανός με τεχνητό φως. Πολλοί μαθητές με δασκάλους στον κόσμο προσπαθούν να μετρήσουν τη ρύπανση του φωτός με ακριβούς αισθητήρες. Αποφάσισα να αλλάξω το φορητό μου 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

BOM
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

Αισθητήρας HTU21D
Αισθητήρας 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

TSL2591
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.

Συνιστάται: