Სარჩევი:
- ნაბიჯი 1: რა არის ღამის დაბინძურება და როგორ იზომება იგი
- ნაბიჯი 2: BOM
- ნაბიჯი 3: წრე
- ნაბიჯი 4: HTU21D სენსორი
- ნაბიჯი 5: TSL2591
- ნაბიჯი 6: კოდი
- ნაბიჯი 7: შიგნით
ვიდეო: პორტატული ამინდის სადგური ღამის ცის დამკვირვებლებისთვის: 7 ნაბიჯი (სურათებით)
2024 ავტორი: John Day | [email protected]. ბოლოს შეცვლილი: 2024-01-30 10:18
სინათლის დაბინძურება მსოფლიოში ერთ -ერთი მრავალი პრობლემაა. ამ პრობლემის გადასაჭრელად, ჩვენ უნდა ვიცოდეთ რამდენად არის დაბინძურებული ღამის ცა ხელოვნური შუქით. მსოფლიოში ბევრი მასწავლებელი მასწავლებელთან ერთად ცდილობს გაზომოს სინათლის დაბინძურება ძვირადღირებული სენსორებით. მე გადავწყვიტე ჩემი პორტატული ლუქსიმეტრის შეცვლა (უფრო მეტი წინა შემოწმების პროექტის Portable Luxmeter– ის შესამოწმებლად) ამინდის სადგურზე TSL2591 სენსორით. ეს სენსორი საკმარისად მგრძნობიარეა ღამის დაბინძურების გასაზომად. ასევე, მე დავამატებ HTU21D ტემპერატურასა და ტენიანობას.
ნაბიჯი 1: რა არის ღამის დაბინძურება და როგორ იზომება იგი
ღამის დაბინძურება არის ნათურები, მანქანები, სახლები, ქალაქში უზარმაზარი LCD პანელები და ადამიანის მიერ შექმნილი ყველა შუქი. ეს მსუბუქი ზარი ხელოვნურია. დამკვირვებლებისთვის ხელოვნური შუქი არის მთავარი პრობლემა ვარსკვლავების დანახვა ქალაქიდან და ისინი უნდა წავიდნენ ქალაქგარეთ. ადამიანისთვის მაღალი სინათლის დაბინძურება საზიანოა. ასევე ხეებისთვის, ბალახისთვის და ცხოველებისთვის.
თქვენი ადგილის სინათლის დაბინძურების შესამოწმებლად, აქ შეგიძლიათ ნახოთ სინათლის დაბინძურების რუკა
ის მხოლოდ მოდელია და რეალური ღირებულებები შეიძლება განსხვავდებოდეს. სწორედ ამიტომ შევქმენი ეს ლუქსმეტრი.
სინათლის დაბინძურების გასაზომად, მე ვზომავ მხოლოდ ლუქსს და ვიანგარიშებ სიდიდეს/ arsec2.
მე შემიძლია გამოვთვალო ლუქსიდან კანდელაზე თითო მეტრზე:
1 cd/m2 = 1 ლუქსი
სიდიდე კვადრატულ რკალის წამში (mag/arcsec2) აღწერს ღამის ცის ფონს (მას ზედაპირის სიკაშკაშეს უწოდებს).
მეტი ვიკიზე: ზედაპირის სიკაშკაშე
Cd/m2 to mag/arcsec2 არის ფორმულა:
[მნიშვნელობა mag/arcsec2] = Log10 ([მნიშვნელობა cd/m2]/108000)/-0.4
unihedron.com/projects/darksky/magconv.php
ნაბიჯი 2: BOM
ამ პროექტისთვის გჭირდებათ:
1. WEMOS D1 Mini ან ნებისმიერი მიკროკონტროლი
(მე ვიყენებ ვემოს, რადგან ის ყველაზე პატარაა, USB პორტით, შეგიძლიათ სცადოთ არდუინო ნანო)
WEMOS D1 MINI (Yanwen Economic Air Mail)
WEMOS D1 MINI (AliExpress სტანდარტული გადაზიდვა)
WEMOS D1 MINI 10 ცალი (China Post რეგისტრირებული საჰაერო ფოსტა - უფასო გადაზიდვა)
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. შეცვლა ღილაკები ან dip jumper
სვიჩის წითელი დიპლომატიური
სვიჩერები, ბევრი განსხვავებული
8. პურის დაფა და დუპონტის კაბელები
პატარა დაფა
პურის დაფის ნაკრები
9. საქმე, ვქმნი ხისგან + ლენტიდან
წითელი ლენტი
Prusa 3D პრინტერი, ვიმედოვნებ პლასტმასისგან გავაკეთებ საქმეს: D
ნაბიჯი 3: წრე
წრე საკმაოდ მარტივია:
შეაერთეთ ყველა i2c მოდული (TSL2591, OLED, HTU21D) SCL და SDA ქინძისთავებზე wemos– ზე (SDA -> D2, SCL -> D1).
ჩართეთ ისინი wemos– დან 3.3 V– ით.
შეაერთეთ ბატარეის პლუს ტერმინალი ქალებთან 5V პინზე და ბატარეა + პინი 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– მდე
ჩიპის სპეციფიკაციები (ადაფრუტიდან):
- უახლოვდება ადამიანის თვალის რეაქციას
- უკიდურესად ფართო დინამიური დიაპაზონი 1 -დან 600, 000, 000 რიცხვამდე
- ლუქსის დიაპაზონი: 188 uLux მგრძნობელობა, 88 000 000 ლუქსამდე შესასვლელი გაზომვები.
- ტემპერატურის დიაპაზონი: -30 -დან 80 *C- მდე
- ძაბვის დიაპაზონი: 3.3-5V ბორტზე რეგულატორში
- ინტერფეისი: I2C
- ეს დაფა/ჩიპი იყენებს I2C 7 ბიტიან მისამართს 0x29 (ფიქსირებული)
- ზომები: 19 მმ x 16 მმ x 1 მმ /.75 "x.63" x.04 "წონა: 1.1 გ
- 2 დიოდი საზომი ორივე - IR და სრული სპექტრი
Შემაჯამებელი:
188 uLux არის სრულყოფილი, ასევე I2C კომუნიკაცია მარტივია. შესაძლოა პრობლემა იყოს I2C მისამართი (0x29). ასევე ბორტზე მარეგულირებელი არის კარგი და შესაძლებელია სენსორის გამოყენება ზამთარში (ყინვა).
ნაბიჯი 6: კოდი
თქვენ გჭირდებათ ეს ბიბლიოთეკები (მე მათ ვამატებ ერთ zip ფაილში):
- ადაფრუტი-GFX- ბიბლიოთეკა-ოსტატი
- adafruit_gfx_library_master
- Adafruit_HTU21DF_Library-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… #მოიცავს
#ჩართეთ
#მოიცავს #მოიცავს #მოიცავს #Adafruit_HTU21DF.h " #მოიცავს" 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; float lux; მცურავი ტემპერატურა; float rel_hum; float mag_arcsec2; // ვიზუალური mags/arcsecond² [მნიშვნელობა mag/arcsec2] = Log10 ([მნიშვნელობა 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, 0xc1, 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, 0xc0, 0xff, 0xfd, 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, 0x0 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, 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, 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, 0x00, 0x3f, 0xc0, 0xff, 0xff, 0x1f, 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, 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 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, 0xe1, 0xe7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc0, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf0 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, 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, 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 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, 0xc0, 0x00, 0x01, 0xff, 0xff, 0xff, 0xf1, 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, 0xf0, 0x00, 0x3f, 0xff, 0xff, 0x87, 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, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf, 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, 0xff8, 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, 0xff, 0x00, 0x00, 0x1f, 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, 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, 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}; 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 // oled ეკრანის დაყენება. დასაწყისი (SSD1306_SWITCHCAPVCC, OLED_ADDR); display.clearDisplay (); ჩვენება. ჩვენება (); display.drawBitmap (0, 0, შესავალი, 128, 64, WHITE); ჩვენება. ჩვენება (); დაგვიანება (1000); display.setTextSize (1); display.setTextColor (WHITE); 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; if (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, 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, ექსპონენტი, 8, 8, WHITE); ჩვენება setCursor (83, 55); display.print (mag_arcsec2); display.display ();}
ნაბიჯი 7: შიგნით
მე ვქმნი საკუთარ კეისს და ვიყენებ breadboard დუპონტის კაბელებით, როგორც ხედავთ.
მე ვიყენებ TP4056 ბატარეის დასატენად USB კაბელით (მჭირდება swtich dip jumper).
ჩართვის/გამორთვისთვის ვიყენებ დიპლომატს.
დღის სინათლისთვის, TSL2591 გვიჩვენებს 0 -ს და mag/arcsec2 არის ნან.
ღამის ცისათვის TSL2591 უნდა აჩვენოს 0 -დან 1000 000 მიკროლუქსამდე (ulux) და შესაბამისი mag/arcsec2
(დაახლ. 14 -დან 22 მგ/არსეკ 2).
სრული თვისთვის მე გავზომე 50k ulux რაც არის 0.05 ლუქსი.
გირჩევთ:
მინი ამინდის ამინდის სადგური Arduino– ს და ThingSpeak– ის გამოყენებით: 4 ნაბიჯი
მინი ამინდის ამინდის სადგური Arduino– ს და ThingSpeak– ის გამოყენებით: გამარჯობა ყველას. ამ ინსტრუქციაში, მე გაგიწევთ ნაბიჯებს პერსონალური მინი ამინდის სადგურის შესაქმნელად. ასევე, ჩვენ ვიყენებთ ThingSpeak API– ს, რომ ატვირთავს ჩვენი ამინდის მონაცემებს მათ სერვერებზე, წინააღმდეგ შემთხვევაში რა არის ამინდის სტატისტიკის მიზანი
DIY ამინდის სადგური და WiFi სენსორული სადგური: 7 ნაბიჯი (სურათებით)
DIY ამინდის სადგური და WiFi სენსორული სადგური: ამ პროექტში მე გაჩვენებთ თუ როგორ უნდა შექმნათ ამინდის სადგური WiFi სენსორულ სადგურთან ერთად. სენსორული სადგური ზომავს ადგილობრივი ტემპერატურისა და ტენიანობის მონაცემებს და აგზავნის მას WiFi– ით ამინდის სადგურზე. ამის შემდეგ ამინდის სადგური აჩვენებს
ESP32 ამინდის ამინდის სადგური: 16 ნაბიჯი (სურათებით)
ESP32 Weathercloud ამინდის სადგური: გასულ წელს, მე გამოვაქვეყნე ჩემი ყველაზე დიდი Instructable დღემდე სახელწოდებით Arduino Weathercloud Weather Station. ძალიან პოპულარული იყო მე ვიტყოდი. ის ნაჩვენები იყო Instructables– ის მთავარ გვერდზე, Arduino– ს ბლოგში, Wiznet მუზეუმში, Instructables Instagram– ში, Arduino Instagr
TESS-W ღამის ცის სიკაშკაშის ფოტომეტრი: 8 ნაბიჯი (სურათებით)
TESS-W ღამის ცის სიკაშკაშის ფოტომეტრი: TESS-W არის ფოტომეტრი, რომელიც შექმნილია ღამის ცის სიკაშკაშის გაზომვისა და უწყვეტი მონიტორინგისთვის ლიგატების დაბინძურების კვლევებისათვის. იგი შეიქმნა STARS4ALL H2020 ევროპული პროექტის დროს ღია დიზაინით (აპარატურა და პროგრამული უზრუნველყოფა). TESS-W ფოტომეტრი
Acurite 5 in 1 ამინდის სადგური Raspberry Pi და Weewx გამოყენებით (სხვა ამინდის სადგურები თავსებადია): 5 ნაბიჯი (სურათებით)
Acurite 5 in 1 ამინდის სადგური Raspberry Pi და Weewx– ის გამოყენებით (სხვა ამინდის სადგურები თავსებადია): როდესაც მე ვიყიდე Acurite 5 in 1 ამინდის სადგური, მინდოდა შემეძლოს ამინდის შემოწმება ჩემს სახლში ყოფნისას. როდესაც სახლში მივედი და დავაყენე მივხვდი, რომ ან ეკრანი კომპიუტერთან უნდა მქონოდა ჩართული, ან მათი ჭკვიანი კერა შემეძინა