
Բովանդակություն:
2025 Հեղինակ: John Day | [email protected]. Վերջին փոփոխված: 2025-01-23 14:48

Լույսի աղտոտվածությունը աշխարհի բազմաթիվ խնդիրներից մեկն է: Այդ խնդիրը լուծելու համար մենք պետք է իմանանք, թե որքանով է գիշերային երկինքը աղտոտված արհեստական լույսով: Աշխարհում ուսուցիչներ ունեցող շատ աշակերտներ փորձում են լուսային աղտոտվածությունը չափել թանկարժեք տվիչներով: Ես որոշեցի փոխել իմ շարժական լյուքսիմետրը (ավելի մանրամասն ՝ նախորդ հրահանգների նախագիծը ՝ Portable Luxmeter), եղանակային կայանի ՝ TSL2591 սենսորով: Այս սենսորը բավական զգայուն է գիշերային աղտոտումը չափելու համար: Բացի այդ, ես ավելացնում եմ HTU21D ջերմաստիճանի և խոնավության չափման համար:
Քայլ 1. Ինչ է գիշերային աղտոտումը և ինչպես է այն չափվում

Գիշերային աղտոտումը լույս է լամպերից, մեքենաներից, տներից, քաղաքի հսկայական LCD վահանակներից և մարդու կողմից արված յուրաքանչյուր լույսից: Այդ թեթեւ զանգը արհեստական է: Դիտորդների համար արհեստական լույսը քաղաքից աստղեր տեսնելու հիմնական խնդիրն է, և նրանք պետք է դուրս գան քաղաքից: Մարդու համար բարձր լուսային աղտոտումը վնասակար է: Եվ նաև ծառերի, խոտի և կենդանիների համար:
Ձեր վայրի լուսային աղտոտվածությունը ստուգելու համար կարող եք տեսնել այստեղ lightpollutionmap
Դա միայն մոդել է, և իրական արժեքները կարող են տարբեր լինել: Դրա համար ես ստեղծեցի այդ լյուքսմետրը:
Լույսի աղտոտվածությունը չափելու համար ես չափում եմ միայն լյուքսը և հաշվարկում մեծությունը/ arsec2:
Ես կարող եմ լյուքսից մինչև candela հաշվարկել մեկ քառակուսի մետրի համար.
1 cd/m2 = 1 լյուքս
Մեծությունը մեկ քառակուսի աղոթքի վայրկյանում (mag/arcsec2) նկարագրում է գիշերային երկնքի ֆոնը (այն կոչում է մակերեսի պայծառություն):
Ավելին վիքիում ՝ Մակերևութային պայծառություն
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 - free առաքում)
usb մալուխ `ծրագրավորման և wemos- ում ծածկագիր վերբեռնելու համար
2. TSL2591 ցուցիչ
TSL2591 (Yanwen Economic Air Mail)
TSL2591 (China Post գրանցված օդային փոստ)
TSL2591 (China Post գրանցված օդային փոստ)
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. տախտակամած և dupont մալուխներ
փոքր տախտակ
տախտակի հավաքածու
9. գործ, ես ստեղծում եմ փայտից + ժապավենից
Կարմիր ժապավեն
Prusa 3D տպիչ, հուսով եմ պլաստիկից պատյան կանեմ: D
Քայլ 3: Շղթա

Շղթան բավականին պարզ է.
Միացրեք i2c- ի բոլոր մոդուլները (TSL2591, OLED, HTU21D) wemos- ի SCL և SDA կապերին (SDA -> D2, SCL -> D1):
Միացրեք դրանք wemos- ից 3.3 Վ լարման միջոցով:
Wemos- ում մարտկոցի գումարած տերմինալը միացրեք 5V pin- ին և tp4056 լիցքավորման մոդուլի մարտկոցը + pin- ը մարտկոցի plus տերմինալին:
Միացրեք բոլոր հիմքերը միասին:
Քայլ 4: HTU21D սենսոր

Ես գնում եմ նոր ջերմաստիճանի տվիչ, որը չափում է 0.3 ° C ճշգրտությամբ:
Այն, ինչ դուք պետք է իմանաք այս սենսորի մասին (sparkfun- ից).
- Օգտագործում է I2C ինտերֆեյսը
- Խոնավության տիպիկ ճշգրտություն ± 2%
- Տիպիկ ջերմաստիճանի ճշգրտություն ± 0.3 ° C
- Գործում է 0 -ից 100% խոնավության պայմաններում, սակայն այս սենսորը խորհուրդ չի տրվում օգտագործել այնպիսի ծանր միջավայրերում, որտեղ այն կարող է շփվել ջրի հետ (օրինակ ՝ անձրևը):
- 3.3 Վ տվիչ - օգտագործեք տրամաբանական մակարդակի փոխակերպիչներ կամ 10k դիմադրիչներ `5 Վ ազդանշանները սահմանափակելու համար
- Միայն մեկ HTU21D սենսոր կարող է միաժամանակ տեղակայվել I2C ավտոբուսում
Իմ ամփոփագիրը. Դա լավ տվիչ է, քանի որ այն չափում է 0.3 ° C ճշգրտությամբ և երկուսն էլ `ջերմաստիճան և խոնավություն: Դրական կողմը I2C միջամտությունն է և 3.3 Վ -ն դեմ, բայց իմ դեպքում դա նշանակություն չունի:
Քայլ 5: TSL2591

Այս տվիչը լավ է գիշերային երկնքի աղտոտվածությունը չափելու համար `իր զգայունության պատճառով (մինչև 188 միկրո լյուքս):
1. դիոդներ են հնարավոր ir և լրիվ չափով: Ես չեմ օգտագործում այն:
2. լարման կարգավորիչ 5 Վ -ից մինչև 3.3 Վ
Չիպի բնութագրերը (ադաֆրուտից).
- Մոտենում է մարդու աչքի արձագանքին
- Չափազանց լայն դինամիկ տիրույթ 1 -ից 600, 000, 000 հաշվարկ
- Լյուքս տեսականի ՝ 188 uLux զգայունություն, մինչև 88 000 լյուքս մուտքային չափումներ:
- Temերմաստիճանի միջակայքը `-30 -ից 80 *C
- Լարման միջակայք `3.3-5V ներկառուցված կարգավորիչում
- Ինտերֆեյս ՝ I2C
- Այս տախտակը/չիպը օգտագործում է I2C 7-բիթ հասցե 0x29 (ֆիքսված)
- Չափերը ՝ 19 մմ x 16 մմ x 1 մմ /.75 "x.63" x.04 "Քաշ` 1.1 գ
- Չափման երկու դիոդ `IR և Full սպեկտր
Ամփոփում:
188 uLux- ը կատարյալ է, ինչպես նաև I2C հաղորդակցությունը պարզ է: Գուցե խնդիրը կարող է շտկվել I2C հասցեով (0x29): Նաև կարգավորիչի վրա լավ է և հնարավոր է օգտագործել սենսորը ձմռանը (ցրտահարություն):
Քայլ 6: Կոդ
Ձեզ անհրաժեշտ են այս գրադարանները (դրանք ավելացնում եմ մեկ zip ֆայլում).
- Adafruit-GFX- Գրադարան-վարպետ
- adafruit_gfx_library_master
- Adafruit_HTU21DF_Library-master
- Adafruit_Sensor- վարպետ
- Adafruit_TSL2591_Library-master
Կոդ. Կարող եք օգտագործել իմը կամ ստեղծել սեփականը: Մի մոռացեք գիշերային երկնքի չափման համար սահմանել ինտեգրման առավելագույն ժամանակը (600 MS) և ձեռք բերել առավելագույնը (GAIN_MAX):
Եթե փորձում եք օգտագործել իմ կոդը, ներբեռնեք ներբեռնված ֆայլը: Երբ ես պատճենում եմ իմ ծածկագիրը, գրադարանների հետ ինչ -որ բան այն չէ:
Ես օգտագործում եմ լուսնի բեռնման պատկերը պարզապես հաճույքի համար: Դուք կարող եք օգտագործել ցանկացած, պարզապես օգտագործեք այս էջը զանգված ստանալու համար.
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… #ներառել
#ներառում
#ներառել #ներառել #ներառել "Adafruit_HTU21DF.h" #Include "Adafruit_TSL2591.h" int counter; // OLED էկրան TWI հասցե #սահմանել OLED_ADDR 0x3C Adafruit_SSD1306 էկրան (-1); // - 1 վերագործարկման ցուցադրման համար `arduino տախտակի վրա վերագործարկման կոճակով Adafruit_HTU21DF htu = Adafruit_HTU21DF (); Adafruit_TSL2591 tsl = Adafruit_TSL2591 (2591); // փոխանցել համարը սենսորային նույնացուցիչի համար (ձեր հետագա օգտագործման համար) uint32_t lum; uint16_t ir, լրիվ; int ulux; բոց լյուքս; բոց ջերմաստիճան; բոց rel_hum; բոց mag_arcsec2; // visual mags/arcsecond² [value in mag/arcsec2] = Log10 ([value in cd/m2]/108000)/-0.4 // խորհրդանիշներ // աստիճան Celsius- ի համար const unsigned char degree PROGMEM = {0xe, 0x11, 0x11, 0x11, 0xe, 0x0, 0x0, 0x0}; // ցուցիչ 2 const անստորագիր նշանի ցուցիչ 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, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0fff, 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, 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, 0ff 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, 0xff, 0xff, 0xff, 0xff, 0x00, 0x3f, 0xc0, 0xff, 0xff, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x00, 0x3f, 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, 0ffff, 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, 0xff, 0xe0, 0x0f, 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, 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, 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, 0xe1, 0xe7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc0, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff 0, 0xff, 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, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf 0xff, 0xff, 0xe0, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc0, 0x48, 0x7f, 0xff, 0xff, 0 xff, 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, 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, 0x60, 0x0f, 0xff, 0xff, 0xff, 0x80, 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, 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, 0xff, 0xff, 0xff, 0xff, 0 xff, 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, 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, 0xff, 0xe0, 0x00, 0x5f, 0xff, 0xff, 0x03, 0xff, 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, 0x00, 0x03, 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,, 0xfc, 0x01, 0xfe, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0xfe, 0x00, 0x00, 0xff, 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, 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, 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, 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}; void setup () {// htu21d htu.begin (); // tsl2591 sensor_t ցուցիչ; tsl.getSensor (& ցուցիչ); tsl.setGain (TSL2591_GAIN_MAX); // MAX, HIGH MED, LOW, tsl.setTiming (TSL2591_INTEGRATIONTIME_600MS); // 100MS, 200 MS, 300MS, 400MS, 500MS, 600MS // յուղոտ ցուցադրման կարգավորում. Սկիզբ (SSD1306_SWITCHCAPVCC, OLED_ADDR); display.clearDisplay (); display.display (); display.drawBitmap (0, 0, ներածություն, 128, 64, WHITE); 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 (լյուքս/108000)/-0.4; // (log ((ulux/108000)) /(-0.4) temp = htu.readTemperature (); 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, ՍՊԻՏԱԿ); 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, WHITE); ցուցադրում: setCursor (83, 55); display.print (mag_arcsec2); display.display ();}
Քայլ 7: Ներսում


Ես ստեղծում եմ սեփական պատյան և օգտագործում եմ տախտակ ՝ dupont մալուխներով, ինչպես տեսնում եք:
Ես օգտագործում եմ TP4056 մարտկոցը USB մալուխով լիցքավորելու համար (անհրաժեշտ է swtich dip jumper):
Միացման/անջատման համար ես օգտագործում եմ ցատկիչ թռիչք:
Dayերեկվա համար TSL2591- ը ցույց է տալիս 0, իսկ mag/arcsec2- ը նան է:
Գիշերային երկնքի համար TSL2591- ը պետք է ցույց տա 0 -ից մինչև 1000 000 microlux (ulux) և համապատասխան mag/arcsec2
(մոտ 14 -ից 22 մգ/արսեկ 2):
FullMoon- ի համար ես չափեցի 50k ulux, որը 0,05 լյուքս է:
Խորհուրդ ենք տալիս:
NaTaLia եղանակային կայան. Arduino արևային էներգիայով աշխատող եղանակային կայանը կատարվել է ճիշտ ճանապարհով. 8 քայլ (նկարներով)

NaTaLia եղանակային կայան. Arduino արևային էներգիայով աշխատող եղանակային կայանը կատարվեց ճիշտ ճանապարհով. 2 տարբեր վայրերում 1 տարվա հաջող աշխատանքից հետո ես կիսում եմ իմ արևային էներգիայով աշխատող եղանակային կայանի նախագծի ծրագրերը և բացատրում, թե ինչպես այն վերածվեց համակարգի, որն իսկապես կարող է գոյատևել երկար ժամանակ: արևային էներգիայի ժամանակաշրջաններ: Եթե հետևեք
DIY եղանակային կայան և WiFi սենսորային կայան. 7 քայլ (նկարներով)

DIY եղանակային կայան և WiFi սենսորային կայան. Այս նախագծում ես ձեզ ցույց կտամ, թե ինչպես կարելի է եղանակային կայան ստեղծել WiFi սենսորային կայանի հետ միասին: Սենսորային կայանը չափում է տեղական ջերմաստիճանի և խոնավության տվյալները և այն WiFi- ի միջոցով ուղարկում է եղանակային կայանին: Օդերևութաբանական կայանն այնուհետև ցուցադրում է
TESS-W Գիշերային երկնքի պայծառության լուսաչափ-8 քայլ (նկարներով)

TESS-W Գիշերային երկնքի պայծառության ֆոտոմետր. TESS-W- ը լուսաչափ է, որը նախատեսված է գիշերային երկնքի պայծառության չափման և շարունակական մոնիտորինգի համար կապանների աղտոտման ուսումնասիրությունների համար: Այն ստեղծվել է STARS4ALL H2020 եվրոպական նախագծի ընթացքում ՝ բաց դիզայնով (ապարատային և ծրագրային ապահովում): TESS-W լուսաչափը
Էժան դյուրակիր համակարգ կառուցելու համար հին դյուրակիր համակարգչի մասերի վերաօգտագործում. 3 քայլ (նկարներով)

Էժան դյուրակիր համակարգ կառուցելու համար հին դյուրակիր համակարգչի մասերի օգտագործումը. Վերջերս իմ հին նոութբուքը մահացավ, և ես ստիպված էի գնել նորը, (RIP! 5520 դուք բաց կթողնեք): Նոութբուքի մայր տախտակը մահացավ, և վնասը վերականգնելի էր: Մինչև վերջերս ես բերեցի ազնվամորու կարկանդակ և սկսեցի շաղ տալ IOT սուտֆով, բայց կարիք ունեի նվիրված
Acurite 5 in 1 եղանակային կայան ՝ օգտագործելով Raspberry Pi և Weewx (այլ եղանակային կայաններ համատեղելի են). 5 քայլ (նկարներով)

Acurite 5 in 1 եղանակային կայան ՝ օգտագործելով Raspberry Pi և Weewx (այլ եղանակային կայաններ համատեղելի են). Երբ ես գնել էի Acurite 5 in 1 օդերևութաբանական կայանը, ես ցանկանում էի, որ կարողանայի ստուգել եղանակը իմ տանը, երբ ես հեռու էի: Երբ տուն հասա և տեղադրեցի, հասկացա, որ կամ պետք է միացնեմ համակարգչին կամ գնեմ նրանց խելացի հանգույցը