Mündəricat:
- Təchizat:
- Alətlər:
- Addım 1: Delikləri işarələyin və kəsin və Pəncərə Ekranına qoyun
- Addım 2: Oled və Sensor Dağı
- Addım 3: Arduino Dağı və Komponentləri Bağlayın
- Addım 4: Kod
Video: Əl Hava İstasyonu: 4 addım
2024 Müəllif: John Day | [email protected]. Son dəyişdirildi: 2024-01-30 07:43
Bu Təlimat kitabında, temperaturu, rütubəti, TVOC səviyyələrini, barometrik təzyiqi və karbon qazı səviyyələrini ölçən bir cihaz qurmaq üçün CCS811 və BME280 sensörlü bir Arduino, oled displey və SparkFun ətraf mühit sensoru kombinasiyasından istifadə edəcəyik. Verilən kodla hər hansı bir Arduino istifadə edə bilərsiniz, amma mən SparkFun Qwiic pro micro istifadə edirəm. Bir başlanğıcsınızsa, işimi asanlaşdırmaq üçün istifadə etdiyim hissələri istifadə etməyi təklif edirəm. Kiçik ölçüsü və Qwiic konnektoru üçün SparkFun Qwiic pro mikro lövhəsini seçdim, bu da komponentlərinizi birləşdirməyi asanlaşdırdı. Fərqli bir taxta istifadə edirsinizsə, taxtanıza uyğun bir Qwiic şapka, phat və ya qalxan aldığınızdan əmin olun.
Təchizat:
- SparkFun Ətraf Mühit Combo Breakout -
- SparkFun Micro OLED Breakout -
- SparkFun Qwiic Pro Micro -
- Qwiic Kabeli, 50 mm -
- Layihə qutusu, komponentlərinizin ölçüsü, təxminən 3 x 2 x 1 istifadə edirəm -
- İsteğe bağlı: Qwiic Pro Micro istifadə edirsinizsə, güc və proqramlaşdırma üçün usb-c kabelinə ehtiyacınız ola bilər.
- Pəncərə ekranı, təxminən 1,5 x 1,5 düym
- Vintlər (yuxarıdakı şəklə baxın)
Alətlər:
- İsti yapışqan çubuqlar və isti yapışqan silahı
- Qayçı
- Tıraş bıçağı və ya x-acto bıçağı, layihə qutunuzu kəsə bilər
Addım 1: Delikləri işarələyin və kəsin və Pəncərə Ekranına qoyun
Proqramlaşdırma və güc üçün oled, ətraf mühit sensoru və USB-C konnektoru üçün deşikləri kəsəcəyik.
- Komponentlərinizi istədiyiniz yerə düzün və vida deliklərini işarələyin.
- İşarələmək üçün ekranın ölçüsündə bir kvadrat və ətraf mühit sensoru üçün 2 sensordan bir qədər böyük olan bir kvadrat (yuxarıdakı şəkillərə baxın).
- USB-C konnektoru üçün boşluğu qeyd edin. Qwiic Pro Micro lövhəmin başlıqları artıq lehimlənmişdi, buna görə bir parça köpük qoyub işarələdim. Sizinki yoxdursa, çuxuru işarələmək üçün kassanın dibinə düz qoyun.
- İşarələnmiş delikləri qazın və USB-C konnektorunu kəsin. Qazılmış deliklər vintlərin keçməsinə imkan verəcək qədər böyük olmalıdır.
- Sensor çuxurundan bir az daha böyük bir kvadrat pəncərə ekranı kəsin. Pəncərə ekranında vida çuxuru və montaj dirəyi üçün yer kəsin (yuxarıdakı şəkillərə baxın).
- Ekranı yerinə isti yapışdırın.
Addım 2: Oled və Sensor Dağı
Çantaya oled və ətraf mühit sensorunu quraşdırın. Daha böyük vintlər qazdığınız deliklərə, daha kiçik vintlər korpus qapağının küncündəki dirəklərə daxil olur. Aralıqlar üçün yuyuculardan istifadə edin. Daha böyük vintlər üçün aydınlıq üçün yuxarıdakı diaqrama baxın. Aralıq üçün birdən çox yuyucudan istifadə etməyiniz lazım ola bilər.
Addım 3: Arduino Dağı və Komponentləri Bağlayın
- Qwiic Pro Micro lövhəmin başlıqları artıq lehimli idi, buna görə bir parça köpük qoydum və yapışdırdım. Başlıqlarınız yoxdursa, qutunun altına yapışdırın. Qwiic kabelinin bağlanması üçün kifayət qədər yer olduğundan əmin olun.
- Komponentləri Qwiic bağlayıcıları ilə birləşdirin. Qwiic bağlayıcısının nə sifarişi, nə də tərəfi var. Aydınlıq üçün yuxarıdakı şəkillərə baxın.
- İndi layihə qutunuzu birlikdə bağlaya bilərsiniz. Qwiic kabellərinin sıx bağlandığından və sıxılmamasından əmin olun.
Addım 4: Kod
Qwiic pro mikro kartınızı işə salmaq üçün bu təlimatı izləyin.
Bunu etdikdən sonra kod aşağıda yerləşir, GitHub -da tapa bilərsiniz.
#include #include #include #define PIN_RESET 9 #DC_JUMPER təyin 1 #CCS811_ADDR 0x5B təyin et // Default I2C AddressMicroOLED oled (PIN_RESET, DC_JUMPER); CCS811 myCCS811 (CCS8E2_80); BMMME2_80);; Wire.begin (); oled.begin (); // OLED -ni işə salın oled.clear (ALL); // Ekranın daxili yaddaşını təmizləyin oled.display (); // Tamponda olanları göstərin (sıçrayış ekranı) oled.clear (PAGE); // Tamponu silin. randomSeed (analogRead (A0) + analogRead (A1)); // BME280 -i işə salın // I2C üçün aşağıdakını aktivləşdirin və SPI bölməsini aradan buraxın myBME280.settings.commInterface = I2C_MODE; myBME280.settings. I2CAddress = 0x77; myBME280.settings.runMode = 3; // Normal rejim myBME280.settings.tStandby = 0; myBME280.settings.filter = 4; myBME280.settings.tempOverSample = 5; myBME280.settings.pressOverSample = 5; myBME280.settings.humidOverSample = 5; CCS811Core:: CCS811_Status_e returnCode = myCCS811.beginWithStatus (); //.begin () çağırılması parametrlərin gecikməsinə səbəb olur (10); // Sensorun açmaq üçün kifayət qədər vaxtının olduğundan əmin olun. BME280 -in işə salınması üçün 2 ms lazımdır. bayt id = myBME280.begin (); // Uğurlu gecikmə olarsa 0x60 ID -ni qaytarır (10000); } void print_data () {oled.setFontType (0); oled.setCursor (0, 0); oled.print ("TMP"); oled.setCursor (25, 0); oled.print (dəyirmi (myBME280.readTempF ()))); oled.setCursor (0, 10); oled.print ("HUM"); oled.setCursor (25, 10); oled.print (yuvarlaq (myBME280.readFloatHumidity ())); oled.setCursor (0, 20); oled.print ("VOC"); oled.setCursor (25, 20); oled.print (dəyirmi (myCCS811.getTVOC ()))); oled.setCursor (0, 30); oled.print ("BAR"); oled.setCursor (25, 30); oled.print (dəyirmi (myBME280.readFloatPressure ()))); oled.setCursor (0, 40); oled.print ("CO2"); oled.setCursor (25, 40); oled.print (dəyirmi (myCCS811.getCO2 ()))); oled.display (); } void loop () {gecikmə (2000); // (myCCS811.dataAvailable ()) olduqda məlumatların olub olmadığını yoxlayın {// Bu funksiyaya zəng etmək qlobal tVOC və eCO2 dəyişənlərini myCCS811.readAlgorithmResults (); // printData tVOC və eCO2 float BMEtempC = myBME280.readTempC () dəyərlərini alır; float BMEhumid = myBME280.readFloatHumidity (); // Bu, temperatur məlumatlarını CCS811 myCCS811.setEnvironmentalData (BMEhumid, BMEtempC) göndərir; } print_data (); gecikmə (2000); }
Kodu Arduino IDE -ə yapışdırın və tərtib edin. Ekran bir neçə saniyə ərzində SparkFun loqotipini göstərməli və sonra canlı şərtləri göstərməyə başlamalıdır. Şərtlər hər 2 saniyədə bir yenilənir. Oxuduğunuz üçün təşəkkürlər.
Sualınız var?
Buraya bir şərh yazın və ya mənə e -poçt göndərin
Tövsiyə:
HC-12 Uzun Mənzilli Məsafə Hava İstasyonu və DHT Sensorları: 9 Addım
HC-12 Uzun Mesafeli Hava İstasyonu və DHT Sensorları: Bu dərsdə iki dht sensoru, HC12 modulu və I2C LCD Ekranından istifadə edərək uzaq məsafəli bir hava stansiyası qurmağı öyrənəcəyik
Peyk Yardımlı Hava İstasyonu: 5 addım
Peyk Dəstəkli Hava İstasyonu: Bu layihə öz hava məlumatlarını toplamaq istəyən insanlar üçündür. Küləyin sürətini və istiqamətini, temperaturu və havanın rütubətini ölçə bilir. Hər 100 dəqiqədə bir dəfə Yerin ətrafında fırlanan hava peyklərini dinləyə bilir. İstəyərəm
ESP8266 Hava İstasyonu Saatı: 4 addım
ESP8266 Hava İstasyonu Saatı: Bu layihə, vaxtı və havanı kiçik bir rahat paketdə göstərmək üçün gözəl bir yoldur. Layihəni, necə işlədiyini izah edəcəyəm və kodu burada göstərəcəyəm. Müəyyən bir yerdə mövcud hava vəziyyətini göstərmək üçün fərqli düymələrə basa bilərsiniz
NaTaLia Hava İstasyonu: Arduino Günəş Enerjili Hava İstasyonu Düzgün Edildi: 8 Addım (Şəkillərlə)
NaTaLia Hava İstasyonu: Arduino Günəş Enerjili Hava İstasyonu Düzgün Edildi: 2 fərqli yerdə 1 illik uğurlu əməliyyatdan sonra günəş enerjisi ilə işləyən hava stansiyası layihə planlarımı paylaşıram və uzun müddət ərzində həqiqətən də sağ qala biləcək bir sistemə necə çevrildiyini izah edirəm. günəş enerjisindən dövrlər. Təqib etsəniz
Raspberry Pi və Weewx istifadə edərək Acurite 5 -də 1 Hava İstasyonu (digər Hava İstasyonları Uyğundur): 5 Addım (Şəkillərlə)
Raspberry Pi və Weewx istifadə edərək Acurite 5 -də 1 Hava İstasyonu (digər Hava İstasyonları Uyğundur): Acurite 5 -i 1 hava stansiyasından alanda evdən kənarda olduğum zaman havanı yoxlamaq istəyirdim. Evə gəlib qurduqda ya ekranı kompüterə bağlamalı olduğumu, ya da ağıllı mərkəzini almalı olduğumu başa düşdüm