İçindekiler:

BME280 Göstergeleri ve Tablosu ile ESP8266 NodeMCU: 5 Adım
BME280 Göstergeleri ve Tablosu ile ESP8266 NodeMCU: 5 Adım

Video: BME280 Göstergeleri ve Tablosu ile ESP8266 NodeMCU: 5 Adım

Video: BME280 Göstergeleri ve Tablosu ile ESP8266 NodeMCU: 5 Adım
Video: RSSI Nedir? Hangi Antenlerden Uzak Durmalısınız. 2024, Kasım
Anonim
BME280 Göstergeleri ve Tablosu ile ESP8266 NodeMCU
BME280 Göstergeleri ve Tablosu ile ESP8266 NodeMCU
BME280 Göstergeleri ve Tablosu ile ESP8266 NodeMCU
BME280 Göstergeleri ve Tablosu ile ESP8266 NodeMCU

BME280 Sıcaklık, Nem ve Basınç sensörlü ESP8266 NodeMCU Geliştirme kartınız için Fantezi Göstergeler ve Tablo. Thingspeak, tüm verilerinizi (umarız) gelecek yıllar boyunca herhangi bir zamanda almak için bulutta saklar. Göstergeler ve çizelge,thingspeak'te depolanan verilerden doldurulur ve her 5 dakikada bir otomatik olarak güncellenir.

Gerekli Öğeler:

ESP8266 NodeMCU Geliştirme kartı (Banggood.com Hong Kong'dan 3,79 $)

Bosch BME280 (Banggood.com Hong Kong'dan 5,63 $)

Breadboard Jumper'lar (Banggood.com Hong Kong'dan 3,09 $)

Breadboard (Banggood.com Hong Kong'dan 2,28 $)

Güç Kaynağı, Mikro USB telefon şarj cihazınız varsa Ücretsiz

Mikro USB kablosu, Zaten varsa ücretsiz

Arduino IDE, Ücretsiz İndirme

.ino ve. HTML kod dosyalarını buradan alın

1. Adım: Thingspeak Kanallarınızı Oluşturun ve Ayarlayın

Thingspeak Kanallarınızı Oluşturun ve Ayarlayın
Thingspeak Kanallarınızı Oluşturun ve Ayarlayın

1. https://thingspeak.com adresinde ücretsiz bir Thingspeak hesabı ve yeni kanal oluşturun, "ESP8266-NodeMCU-12E-BME280" kanalını arayın

2. Yeni kanal, bu özel sırada Sıcaklık Nem Basıncı adlı 3 alana sahip olmalıdır (İlk Harf büyük harfe dikkat edin).

3. "Kanal Ayarları" altındaki yeni "kanal kimliğinizi" XXXXXX not alın

4. "API Anahtarları" bağlantısını tıklayın ve "API Yazma" ve "API Anahtarlarını Oku" XXXXXXXXXXXXXXX'inizi not alın. Ayrıca, bunu paylaşım altında herkese açık bir kanal yapın.

5. "Bugün" (gece yarısından beri) Yüksek Düşük verilerini tutacak ikinci bir Thingspeak kanalı oluşturun. "BME280 Günlük Yüksek Düşük Veri" olarak adlandırın

6. Bu yeni kanal, Tmax Tmin Hmax Hmin Pmax Pmin olarak adlandırılan belirli bir sırayla 6 alana sahip olmalıdır (İlk Harf büyük harf kullanımına dikkat edin).

7. Tıpkı yukarıdaki adımlarda olduğu gibi "BME280 Günlük Yüksek Düşük Veri" "kanal kimliği", "Oku" ve "API anahtarlarını yaz"ı not edin.

Adım 2: Arduino IDE'yi, Kitaplıkları kurun ve BME280'i yapılandırın

Arduino IDE'yi, Kitaplıkları kurun ve BME280'i yapılandırın
Arduino IDE'yi, Kitaplıkları kurun ve BME280'i yapılandırın

8. Arduino IDE & ESP8266 çekirdeğini kurmak için https://easy-esp.com/getting-started-with-easyesp-… adresindeki talimatları izleyin.

9. Arduino IDE'yi çalıştırın, böylece ihtiyacımız olan dört kütüphaneyi kurabiliriz.

10. "Adafruit Unified Sensor Driver" kütüphanesine ihtiyacınız olacak, Arduino IDE'deki "Library Manager" içine kurun. Menü Taslak Kitaplığı Dahil Et Kitaplıkları Yönet Type = "Önerilen" Konu = "Sensörler"e göre bir arama yapar ve ardından arama kutusuna Adafruit Unified Sensor Driver kelimelerini yazın. İstediğiniz "Adafruit Unified Sensor Driver by Adafruit" diyor

11. Ayrıca, Arduino IDE'deki "Library Manager" içine "Adafruit BME280 Library" yüklemesini de isteyeceksiniz. Menü Taslak Kitaplığı Dahil Et Kitaplıkları Yönet Type = "Önerilen" Konu = "Sensörler"e göre bir arama yapar ve ardından arama kutusuna Adafruit BME280 Kitaplığı kelimesini yazın. İstediğinizde "Adafruit BME280 Library by Adafruit" yazıyor

12. İhtiyacınız olan bir diğer kütüphane Wire.h, Arduino IDE'deki "Library Manager" içine kurun. Menü, Taslak Kitaplığı Dahil Et Kitaplıkları Yönet Type = "Contributed" Topic = "Signal Input/Output" ile bir arama yapın ve ardından arama kutusuna Wire kelimesini yazın. İstediğiniz, büyük olasılıkla seçimin altında "Arduino Tarafından Yerleşik Tel" yazıyor.

13. Bir kitaplık daha, ESP8266WiFi, onu Arduino IDE'deki "Library Manager" içine kurun. Menü, Taslak Kitaplığı Dahil Et Kitaplıkları Yönet Tür = "Katkıda Bulunan" Konu = "İletişim" ile bir arama yapın, ardından arama kutusuna ESP8266wifi kelimesini yazın. İstediğiniz "ESP8266wifi Yerleşik Ivan Grokhotkov" diyor

14. BME280 için I2C adresi Adafruit_BME280.h dosyasında (#define BME280_ADDRESS 0x77 satırını arayın) Adafruit_BME280_Library klasöründe sabit kodlanmıştır. Adafruit'in BME sensör modülleri, 0x77'nin I2C adresini kullanacak şekilde kablolanmıştır. Ancak, harici SDO pini topraklanmışsa, BME280 biraz farklı bir I2C adresine (0x76) sahip olabilir. Üçüncü şahıslara ait sensör modüllerini kullanıyorsanız, adresinin Adafruit kütüphanesindeki varsayılan değerle eşleşmemesi muhtemeldir. Örneğin, eBay veya Aliexpress'de bulunan BME280 sensör modüllerinin çoğu için I2C adresleri 0x76'dır. Adafruit_BME280.h dosyasında ayarlanan varsayılan adresi kullanarak sensörden yanıt alamazsanız, onu 0x76 olarak değiştirmeniz gerekebilir.

BME280 ve ESP8266 Bağlantı Noktaları. ESP8266 3,3V - BME280 Vin, ESP8266 GND - BME280 GND, ESP8266 D4 - BME280 SCL, ESP8266 D3 - BME280 SDA. 15. Sağlanan ESP8266-NodeMCU-12E-BME280.html dosyasını bir metin düzenleyicide açın ve "ESP8266-NodeMCU-12E-BME280" (oluşturduğunuz ilk kanal) "Kanal Kimliği" & "API Anahtarını Oku" girin. değişkenler key1 & chan1. Ayrıca key2 ve chan2 için "BME280 Günlük Yüksek Düşük Veri" (oluşturduğunuz ikinci kanal) için "API Anahtarını Oku" ve "Kanal Kimliği"ni girin. Ayrıca, UTC'den saat dilimi farkınızı girin. Benim için -5'te olduğu gibi. Tüm değerler, sağlanan tek tırnak 'XXXXX' içinde olmalıdır. Metin düzenleyiciyi kaydedin ve çıkın.

ESP8266'nızı USB kablosuyla bilgisayarınıza takın ve ardından USB bağlantı noktası olarak seri bağlantı noktanızı seçin.

Linux kullanıcıları, /dev/ttyUSB0 ile 'sudo chown kullanıcı adınız /dev/ttyUSB0'da olduğu gibi veya kurulumda portunuz olarak ne seçtiyseniz, iletişim kurmak için USB portunun sahipliğini değiştirmek zorunda kalabilirler.

Adım 3: ESP8266'yı Arduino IDE ile Programlayın

ESP8266'yı Arduino IDE ile Programlayın
ESP8266'yı Arduino IDE ile Programlayın

16. Daha sonra ESP8266'yı programlayacağız. ESP8266'nız ile bilgisayarınız arasına bir USB kablosu bağlayın.

Sağlanan New_BME_Sensor.ino dosyasını Arduino IDE'ye yükleyin. BME280 sensörünüz, ESP8266'daki D3 (SDA) ve D4 (SCL)'ye bağlanmalıdır. "ESP8266-NodeMCU-12E-BME280" (oluşturduğunuz ilk kanal) "Write Key" "Wireless SSID" & "Password" bilgilerinizi çizimin doğru bölümüne girin. Ardından "Çizim" ve "Yükle" menü öğesini tıklayın. Krokiyi (İlerleme %100'e ulaşır) ESP8266'nıza yükledikten sonra seri monitörü açabilir (sağ üstteki simge büyüteç gibi görünür) ve her 5 Dakikada bir 5 Dakika sonra verilerinizin çıktısını görebilirsiniz. Veriler 5 dakikalık aralıklarla şey söze gönderilir, bu nedenle anlamlı grafik verilerine sahip olmanız biraz zaman alacaktır, ancak 5 dakika sonra gösterge okumalarına sahip olmalısınız.

Seri monitörde BME280'den doğru okumalar aldığınızdan emin olun.

İlk ölçüm muhtemelen geçersiz bir nan olacaktır.

Bir sonraki okumaya kadar birkaç dakika bekleyin ve okumaların iyi göründüğünü doğrulayın.

Adım 4: Bazı Veri Ayarlarını Yapmak için Thingspeak'e Geri Dönün

Bazı Veri Ayarlarını Yapmak için Thingspeak'e Geri Dönün
Bazı Veri Ayarlarını Yapmak için Thingspeak'e Geri Dönün

17. Şimdi, veriler yavaş yavaş ThingsSpeak'e yüklenirken, yüklenenlerden bazı ek veriler elde etmek için biraz ince ayar yapalım. Thingspeak web sitesine geri dönün ve Thingspeak "BME280 Günlük Yüksek Düşük Veri" kanal sayfasında (oluşturduğunuz ikinci kanal) yeşil "MATLAB Analizi" düğmesini tıklayın. "Özel (Başlangıç Kodu Yok)" Şablonunu Seçin

18. MATLAB Analizine "Gece Yarısından Beri Min Maks Hesapla" adını verin.

19. MATLAB Analysis.txt kodunu sağlanan alana kopyalayın. "ESP8266-NodeMCU-12E-BME280" (oluşturduğunuz ilk kanal) için "kanal kimliğini" "readChannelID" içine girin. "BME280 Daily High Low Data" (Oluşturduğunuz ikinci kanal) girin "Channel ID" & "Write Key" writeNewChannelID & writeAPIKey'e sırasıyla yazın. Kulağa kafa karıştırıcı geldiğini biliyorum (tekrar okuyun). Kaydet ve çalıştır'ı tıklayın. Düzeltmeyi yaptıysanız ve okuma kanalı herkese açıksa, hata görmezsiniz ve değerleri başarıyla yazdırır. Not, Henüz o kanala hiçbir veri yüklenmediyse bir hata görebilirsiniz. Hataya rağmen devam ediyor. İsterseniz, veriler yüklendikten sonra çalıştığından emin olmak için kaydet ve çalıştır'ı tekrar ziyaret edebilirsiniz.

20. Ardından, her 5 dakikada bir bu kodu tetiklemek için bir "Zaman Kontrolü" oluşturmamız gerekiyor ve verilerimiz "BME280 Daily High Low Data" (Oluşturduğunuz ikinci kanal) kanalına yazılıyor. "BME280 Günlük Yüksek Düşük Veri" (oluşturduğunuz ikinci kanal) ana sayfasından en üstteki Uygulamalar'ı seçin. Eylemler altında "TimeControl" öğesini ve ardından Yeşil düğme "New TimeControl" öğesini seçin. "Yüksek Düşük Temps ESP8266 Gönder" olarak adlandırın. Gerekirse saat diliminizi seçin ve Sıklık altında "Yinelenen"i seçin. Yinelenme altında Dakika'yı seçin. Her 5 Dakikada bir çalışacak şekilde ayarlayın. Eylem MATLAB Analizi olmalı ve "Yürütülecek Kod", "Gece Yarısından Beri Min Maks Hesapla" olmalıdır. TimeControl'ü kaydedin.

Adım 5: Sağlanan HTML Dosyasını Düzenleyin

Sağlanan HTML Dosyasını Düzenleyin
Sağlanan HTML Dosyasını Düzenleyin

HTML dosyalarını düzenleyin ve "******** Beni Değiştir 1 / 8 *********" yazan yorumları arayın. Bunları tercihinize göre değiştirin.

Notlar:

24 Saat ve Hafta bölümü ve grafiği için tam gün ve tam hafta verileriniz olana kadar bazı metin alanları ve haftalık grafik doğru şekilde doldurulmayacaktır. Bir sürü veriye sahip olduğunuzda, fare tekerleği ile çizelgeleri yakınlaştırabilirsiniz (Sıfırlamak için Sağ Tıklayın). Ayrıca başka bir kanaldan başka bir sensörden dördüncü bir göstergeye (ekran görüntülerinde görüldüğü gibi) sahip olabilirsiniz, ancak ilgili kısımları değerlendirdim. Kendini güvende hissediyorsan, bağla. Dikkat edilmesi gereken bazı zamanlama sorunları da vardır. Muhtemelen en güncel verilere sahip olmayacaksınız, ancak her zaman 5 Dakikadan daha eski olmalıdır. Bu, zamanlama kontrolü tetiklendiğinde, ESP8266'dan veri gönderildiğinde ve web sayfasını yüklediğinizde/yenilediğinizde gelir.

Sağlanan ESP8266-NodeMCU-12E-BME280.html dosyasını web tarayıcınızda açın; göstergelerin ve grafiğin doldurulduğunu görmelisiniz.

.ino ve. HTML kod dosyalarını buradan alın

Önerilen: