Mục lục:
- Bước 1: Ô nhiễm ban đêm là gì và đo lường nó như thế nào
- Bước 2: BOM
- Bước 3: Mạch
- Bước 4: Cảm biến HTU21D
- Bước 5: TSL2591
- Bước 6: Mã
- Bước 7: Bên trong
Video: Trạm thời tiết di động dành cho người quan sát bầu trời đêm: 7 bước (có hình ảnh)
2024 Tác giả: John Day | [email protected]. Sửa đổi lần cuối: 2024-01-30 13:33
Ô nhiễm ánh sáng là một trong nhiều vấn đề trên thế giới. Để giải quyết vấn đề đó, chúng ta cần biết bầu trời đêm bị ô nhiễm ánh sáng nhân tạo đến mức nào. Nhiều sinh viên cùng giáo viên trên thế giới cố gắng đo ô nhiễm ánh sáng bằng các cảm biến đắt tiền. Tôi đã quyết định thay đổi lux kế cầm tay của mình (để kiểm tra thêm dự án hướng dẫn trước đó là Portable Luxmeter) thành trạm thời tiết có cảm biến TSL2591. Cảm biến này đủ nhạy để đo ô nhiễm ban đêm. Ngoài ra, tôi thêm HTU21D để đo nhiệt độ và độ ẩm.
Bước 1: Ô nhiễm ban đêm là gì và đo lường nó như thế nào
Ô nhiễm ban đêm là ánh sáng từ đèn, ô tô, nhà ở, các tấm màn hình LCD khổng lồ trong thành phố và mọi ánh sáng do con người tạo ra. Ánh sáng đó gọi là nhân tạo. Đối với những người quan sát, ánh sáng nhân tạo là vấn đề chính để nhìn thấy các ngôi sao từ thành phố, và họ phải đi ra ngoài thành phố. Đối với con người, ô nhiễm ánh sáng cao là có hại. Và cũng cho cây cối, cỏ và động vật.
Để kiểm tra mức độ ô nhiễm ánh sáng của nơi bạn ở, bạn có thể xem bản đồ ô nhiễm ánh sáng tại đây
Nó chỉ là mô hình và giá trị thực có thể khác nhau. Đó là lý do tại sao tôi tạo ra luxmeter đó.
Để đo độ ô nhiễm ánh sáng, tôi chỉ đo lux và tính độ lớn / arsec2.
Tôi có thể tính toán từ lux đến candela trên mét vuông:
1 cd / m2 = 1 lux
Độ lớn trên một giây vuông (mag / arcsec2) mô tả nền bầu trời đêm (nó gọi là độ sáng bề mặt).
Thêm trên wiki: Độ sáng bề mặt
Để tính cd / m2 thành mag / arcsec2 là công thức:
[giá trị tính bằng mag / arcsec2] = Log10 ([giá trị tính bằng cd / m2] / 108000) / - 0,4
unihedron.com/projects/darksky/magconv.php
Bước 2: BOM
Đối với dự án này, bạn cần:
1. WEMOS D1 Mini hoặc bất kỳ vi điều khiển nào
(Tôi sử dụng wemos, vì nó là cái nhỏ nhất, có cổng usb, bạn có thể thử Arduino Nano)
WEMOS D1 MINI (Yanwen Economic Air Mail)
WEMOS D1 MINI (Giao hàng tiêu chuẩn của AliExpress)
WEMOS D1 MINI 10 chiếc (Thư Hàng không Đăng ký tại Trung Quốc - Giao hàng miễn phí)
cáp usb để lập trình và tải mã lên wemos
2. Cảm biến TSL2591
TSL2591 (Yanwen Economic Air Mail)
TSL2591 (Thư hàng không đăng ký tại Trung Quốc)
TSL2591 (Thư hàng không đăng ký tại Trung Quốc)
3. Cảm biến nhiệt độ và độ ẩm HTU21D
HTU21D (Siêu kinh tế Cainiao)
HTU21D (Yanwen Economic Air Mail - miễn phí vận chuyển)
4. Màn hình OLED 0,96 (128 x 64)
Màn hình OLED
Màn hình OLED
Màn hình OLED
5. pin 18650
Pin lithium ion 18650
Pin lithium ion 18650
giá đỡ pin 18650
6. Mô-đun sạc TP4056
tp4056
tp4056
7. nút chuyển đổi hoặc jumper nhúng
swtich màu đỏ nhúng
swtichers, rất nhiều khác nhau
8. breadboard và cáp dupont
breadboard nhỏ
bộ breadboard
9. trường hợp, tôi tạo ra từ gỗ + băng
băng đỏ
Máy in 3D Prusa, tôi hy vọng tôi sẽ làm được vỏ từ nhựa: D
Bước 3: Mạch
Mạch khá đơn giản:
Kết nối tất cả các mô-đun i2c (TSL2591, OLED, HTU21D) với chân SCL và SDA trên wemos (SDA -> D2, SCL -> D1).
Cấp nguồn cho chúng với 3,3 V từ wemos.
Kết nối thiết bị đầu cuối cộng của pin với chân 5V trên wemos và pin + chân trên mô-đun sạc tp4056 với thiết bị đầu cuối cộng trên pin.
Kết nối tất cả các căn cứ với nhau.
Bước 4: Cảm biến HTU21D
Tôi mua cảm biến nhiệt độ mới, đo với độ chính xác 0,3 ° C!
Những điều bạn nên biết về cảm biến này (từ sparkfun):
- Sử dụng giao diện I2C
- Độ ẩm điển hình chính xác ± 2%
- Độ chính xác nhiệt độ điển hình ± 0,3 ° C
- Hoạt động ở độ ẩm từ 0 đến 100% nhưng cảm biến này không được khuyến nghị cho các môi trường khắc nghiệt nơi nó có thể tiếp xúc với nước (chẳng hạn như mưa).
- Cảm biến 3.3V - sử dụng bộ chuyển đổi mức logic nội tuyến hoặc điện trở 10k để giới hạn tín hiệu 5V
- Chỉ một cảm biến HTU21D có thể nằm trên bus I2C tại một thời điểm
Tóm tắt của tôi: đó là cảm biến tốt, vì nó đo với độ chính xác 0,3 ° C và cả hai - nhiệt độ và độ ẩm. Ưu điểm là nhiễu I2C và nhược điểm là 3.3V, nhưng nó không quan trọng trong trường hợp của tôi.
Bước 5: TSL2591
Cảm biến này rất tốt để đo ô nhiễm bầu trời đêm vì độ nhạy của nó (tới 188 micro lux!).
1. là điốt có thể có ir và đo đầy đủ. Tôi không sử dụng nó.
2. bộ điều chỉnh điện áp từ 5V đến 3,3 V
Thông số kỹ thuật chip (từ adafruit):
- Phản ứng tương đối của mắt người
- Dải động cực rộng 1 đến 600, 000, 000 Đếm
- Phạm vi Lux: Độ nhạy 188 uLux, lên đến 88, 000 phép đo đầu vào Lux.
- Phạm vi nhiệt độ: -30 đến 80 * C
- Dải điện áp: 3.3-5V vào bộ điều chỉnh trên bo mạch
- Giao diện: I2C
- Bo mạch / chip này sử dụng địa chỉ I2C 7-bit 0x29 (cố định)
- Kích thước: 19mm x 16mm x 1mm /.75 "x.63" x.04 "Trọng lượng: 1.1g
- 2 điốt để đo cả hai - Hồng ngoại và Toàn phổ
Tóm lược:
188 uLux là perferct, giao tiếp I2C cũng đơn giản. Có thể vấn đề có thể được khắc phục địa chỉ I2C (0x29). Ngoài ra, bộ điều chỉnh trên tàu là tốt và có thể sử dụng cảm biến trong mùa đông (sương giá).
Bước 6: Mã
Bạn cần những thư viện này (tôi thêm chúng vào một tệp zip):
- Adafruit-GFX-Library-master
- adafruit_gfx_library_master
- Adafruit_HTU21DF_Library-master
- Adafruit_Sensor-master
- Adafruit_TSL2591_Library-master
Mã: bạn có thể sử dụng của tôi hoặc tạo của riêng. Đừng quên đặt thời gian tích hợp tối đa (600 MS) và tăng lên tối đa (GAIN_MAX) để đo bầu trời đêm.
Nếu bạn cố gắng sử dụng mã của tôi, vui lòng tải xuống tệp ino. Khi tôi sao chép từ mã có thể hướng dẫn của mình, thư viện đã xảy ra lỗi
Tôi sử dụng tải hình ảnh của mặt trăng chỉ cho vui. Bạn có thể sử dụng bất kỳ, chỉ cần sử dụng trang này cho mảng get:
javl.github.io/image2cpp/
//https://lastminuteengineers.com/oled-display-arduino-tutorial///https://javl.github.io/image2cpp/ // mcd theo độ lớn https://unihedron.com/projects/darksky/magconv.php… // HD44780 là bộ điều khiển cho màn hình tinh thể lỏng dựa trên ký tự (LCD). https://unihedron.com/projects/darksky/magconv.php… #include
#bao gồm
#include #include #include "Adafruit_HTU21DF.h" #include "Adafruit_TSL2591.h" int counter; // Địa chỉ màn hình OLED TWI #define OLED_ADDR 0x3C Adafruit_SSD1306 display (-1); // - 1 để hiển thị khởi động lại với nút khởi động lại trên bảng arduino Adafruit_HTU21DF htu = Adafruit_HTU21DF (); Adafruit_TSL2591 tsl = Adafruit_TSL2591 (2591); // chuyển một số cho mã nhận dạng cảm biến (để bạn sử dụng sau này) uint32_t lum; uint16_t ir, đầy đủ; int ulux; lux nổi; nhiệt độ nổi; float rel_hum; float mag_arcsec2; // visual mags / arcsecond² [value in mag / arcsec2] = Log10 ([value in cd / m2] / 108000) / - 0.4 // ký hiệu // độ cho độ C const không dấu char độ PROGMEM = {0xe, 0x11, 0x11, 0x11, 0xe, 0x0, 0x0, 0x0}; // số mũ 2 const unsigned char exponent 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, 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, 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, 0xfd, 0xff, 0 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x03, 0xff, 0xc0, 0x3f, 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, 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, 0x80, 0x1f, 0xbe, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x80, 0x1f, 0xcc, 0xff, 0xff, 0x8f, 0xff, 0xff, 0xffxff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x3f, 0xc0, 0xff, 0xff, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf00, 0xfe, 0xf00, 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, 0xfc, 0x00, 0x3f, 0x80, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0x00, 0x00, 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, 0xff, 0xff, 0xf0, 0x00, 0x3f, 0xf9, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x ff, 0xff, 0xf0, 0x00, 0x3f, 0xfb, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x3f, 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 0xe0, 0x18, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe0, 0x60, 0xff, 0xff, 0xff, 0xff, 0xef, 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, 0xc0 0xff, 0xff, 0xff, 0xff, 0xe1, 0xe7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc0, 0x00, 0xff, 0xff, 0xff, 0xff, 0xe0, 0x07, 0xff, 0xff, 0xff, 0xff, 0xff 0xff, 0xff, 0xff, 0xff, 0xff, 0xc0, 0x18, 0xff, 0xff, 0xff, 0xff, 0xe0, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc0, 0x38ff, 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 0xff, 0xff, 0xc0, 0xc4, 0x1f, 0xff, 0xff, 0xfc, 0x00, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc0, 0xfc, 0x00, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc0, 0x60, 0x0f, 0xff, 0xff, 0xff, 0xff 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, 0xff 0xc0, 0x00, 0x00, 0xff, 0xff, 0xff, 0xf0, 0xe3, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0xff, 0xff, 0xff, 0xf0, 0xffx 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x01, 0xff, 0xff, 0xff, 0xf1, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0 0x43, 0xff, 0xff, 0xff, 0xfb, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe0, 0x00, 0x4f, 0xff, 0xff, 0xff, 0xfb, 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, 0, 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, 0xf8, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0x00, 0x03, 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, 0xfc, 0x01, 0xfe, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x00, 0x00, 0x3f, 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, 0x00, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x80, 0x 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, 0xff, 0xe0, 0x00, 0x01, 0xff, 0xff, 0xfd, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf0, 0xff, 0xf0, 0xff 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, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x00, 0xfc, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0xff, 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, 0xff, 0xe0, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0xff, 0x00, 0x03, 0xff, 0x00, 0x03, 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, 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 (& cảm biến); tsl.setGain (TSL2591_GAIN_MAX); // TỐI ĐA, CAO MED, THẤP, tsl.setTiming (TSL2591_INTEGRATIONTIME_600MS); // 100MS, 200 MS, 300MS, 400MS, 500MS, 600MS // thiết lập cho oled display.begin (SSD1306_SWITCHCAPVCC, OLED_ADDR); display.clearDisplay (); display.display (); display.drawBitmap (0, 0, intro, 128, 64, WHITE); display.display (); chậm trễ (1000); display.setTextSize (1); display.setTextColor (TRẮNG); display.setFont (& FreeSerif9pt7b); display.clearDisplay (); } void loop () {lux = 0; ulux = 0; mag_arcsec2 = 0; tạm thời = 0; rel_hum = 0; chậm trễ (100); lum = tsl.getFullLuminosity (); ir = lum >> 16; đầy đủ = lum & 0xFFFF; chậm trễ (100); lux = tsl.calculateLux (đầy đủ, ir); // cường độ ánh sáng trong microlux ulux = lux * 1000000; if (ulux <0) {ulux = 0; } mag_arcsec2 = log10 (lux / 108000) / - 0,4; // (log ((ulux / 108000)) /(-0.4) temp = htu.readTempe Heat (); rel_hum = htu.readHumidity (); display_values ();} void display_values () {//display.drawPixel(120, 50, WHITE); display.clearDisplay (); display.setCursor (1, 15); display.print (temp); display.drawBitmap (42, 2, độ, 8, 5, WHITE); 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, WHITE); display.drawLine (67, 1, 67, 20, WHITE); 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, lũy thừa, 8, 8, WHITE); hiển thị. setCursor (83, 55); display.print (mag_arcsec2); display.display ();}
Bước 7: Bên trong
Tôi tạo trường hợp riêng và tôi sử dụng breadboard với cáp dupont như bạn có thể thấy.
Tôi sử dụng TP4056 để sạc pin bằng cáp usb (cần jumper nhúng swtich).
Để bật / tắt, tôi sử dụng jumper nhúng.
Đối với ánh sáng ban ngày, TSL2591 hiển thị 0 và mag / arcsec2 là nan.
Đối với bầu trời đêm TSL2591 sẽ hiển thị từ 0 đến 1000 000 microlux (ulux) và mag / arcsec2 tương ứng
(cca. 14 đến 22 mag / arsec2).
Đối với fullMoon, tôi đo được 50k ulux là 0,05 lux.
Đề xuất:
Trạm thời tiết NaTaLia: Trạm thời tiết sử dụng năng lượng mặt trời Arduino Đã thực hiện đúng cách: 8 bước (có hình ảnh)
Trạm thời tiết NaTaLia: Trạm thời tiết sử dụng năng lượng mặt trời Arduino Đã hoàn thành đúng cách: Sau 1 năm hoạt động thành công trên 2 địa điểm khác nhau, tôi đang chia sẻ kế hoạch dự án trạm thời tiết sử dụng năng lượng mặt trời của mình và giải thích cách nó phát triển thành một hệ thống thực sự có thể tồn tại trong thời gian dài thời kỳ từ năng lượng mặt trời. Nếu bạn theo dõi
Tình yêu dành cho người chơi game, Dự án Arduino dành cho người độc thân: 5 bước
Tình yêu dành cho người chơi game, Dự án Arduino dành cho người độc thân: Có thể hướng dẫn này nói về dự án Arduino của tôi có tên " Tình yêu dành cho người chơi game " vốn bắt đầu như một công cụ để cười khúc khích và vui vẻ. Nó không hoàn hảo hay bất cứ thứ gì, nhưng nó hoạt động
Acurite 5 trong 1 Trạm thời tiết sử dụng Raspberry Pi và Weewx (các trạm thời tiết khác tương thích): 5 bước (có Hình ảnh)
Trạm thời tiết Acurite 5 trong 1 Sử dụng Raspberry Pi và Weewx (các Trạm thời tiết khác Tương thích): Khi tôi mua trạm thời tiết Acurite 5 trong 1, tôi muốn có thể kiểm tra thời tiết tại nhà của mình khi tôi đi vắng. Khi tôi về nhà và thiết lập nó, tôi nhận ra rằng tôi phải có màn hình kết nối với máy tính hoặc mua trung tâm thông minh của họ,
Trạm thời tiết ngoài trời cho La COOL Board: 3 bước (có hình ảnh)
Trạm thời tiết ngoài trời cho Bảng điều khiển La COOL: Xin chào, Hôm nay tôi sẽ chỉ cho bạn cách làm một vỏ bọc chi phí thấp cho Bảng điều khiển La COOL có thể chịu được điều kiện thời tiết khắc nghiệt, nó bao gồm một bảng điều khiển Năng lượng mặt trời có thể cung cấp năng lượng cho trạm mà không cần sạc lại ( nếu bạn sống trong một khu vực có đủ
Làm cho máy ảnh của bạn thành "chế độ chụp đêm quân sự", thêm hiệu ứng ban đêm hoặc tạo chế độ chụp ảnh ban đêm trên bất kỳ máy ảnh nào !!!: 3 bước
Đặt Máy ảnh của bạn thành "Chế độ chụp đêm quân sự", Thêm Hiệu ứng Ban đêm hoặc Tạo Chế độ Cảnh báo Ban đêm trên Bất kỳ Máy ảnh nào !!!: *** Điều này đã được đưa vào CUỘC THI KỸ THUẬT SỐ DAYS PHOTO , Hãy bình chọn cho tôi ** * Nếu bạn cần bất kỳ trợ giúp nào, vui lòng gửi email: [email protected] Tôi nói tiếng Anh, Pháp, Nhật, Tây Ban Nha và tôi biết các ngôn ngữ khác nếu bạn