İçindekiler:

ThingSpeak, ESP32 ve Uzun Menzilli Kablosuz Sıcaklık ve Nem: 5 Adım
ThingSpeak, ESP32 ve Uzun Menzilli Kablosuz Sıcaklık ve Nem: 5 Adım

Video: ThingSpeak, ESP32 ve Uzun Menzilli Kablosuz Sıcaklık ve Nem: 5 Adım

Video: ThingSpeak, ESP32 ve Uzun Menzilli Kablosuz Sıcaklık ve Nem: 5 Adım
Video: 5 Efsane Proje (NodeMCU) 2024, Temmuz
Anonim
ThingSpeak, ESP32 ve Uzun Menzilli Kablosuz Sıcaklık ve Nem
ThingSpeak, ESP32 ve Uzun Menzilli Kablosuz Sıcaklık ve Nem

Bu eğitimde, Sıcaklık ve nem sensörünü kullanarak farklı sıcaklık ve nem verilerini ölçeceğiz. Bu verileri ThingSpeak'e nasıl göndereceğinizi de öğreneceksiniz. Böylece farklı uygulamalar için her yerden analiz edebilirsiniz

Adım 1: Donanım ve Yazılım Gerekli

Donanım ve Yazılım Gerekli
Donanım ve Yazılım Gerekli
Donanım ve Yazılım Gerekli
Donanım ve Yazılım Gerekli

Donanım:

  • ESP-32:ESP32, IoT uygulamaları için Arduino IDE ve Arduino Wire Dilini kullanmayı kolaylaştırır. Bu ESp32 IoT Modülü, çeşitli çeşitli uygulamalar için Wi-Fi, Bluetooth ve Bluetooth BLE'yi birleştirir. Bu modül, ayrı ayrı kontrol edilebilen ve çalıştırılabilen 2 CPU çekirdeği ve 80 MHz ila 240 MHz arasında ayarlanabilir saat frekansı ile tam donanımlı olarak gelir. Entegre USB'li bu ESP32 IoT WiFi BLE Modülü, tüm ncd.io IoT ürünlerine uyacak şekilde tasarlanmıştır. Bir web sayfası veya özel bir sunucu kullanarak sensörleri ve kontrol rölelerini, FET'leri, PWM kontrol cihazlarını, solenoidleri, valfleri, motorları ve çok daha fazlasını dünyanın her yerinden izleyin. ESP32'nin kendi versiyonumuzu NCD IoT cihazlarına uyacak şekilde ürettik ve dünyadaki diğer tüm cihazlardan daha fazla genişletme seçeneği sunduk! Entegre bir USB bağlantı noktası, ESP32'nin kolay programlanmasını sağlar. ESP32 IoT WiFi BLE Modülü, IoT uygulama geliştirme için inanılmaz bir platformdur. Bu ESP32 IoT WiFi BLE Modülü, Arduino IDE kullanılarak programlanabilir.
  • IoT Uzun Menzilli Kablosuz Sıcaklık Ve Nem Sensörü: Endüstriyel Uzun Menzilli Kablosuz Sıcaklık Nem Sensörü. ±1.7%RH ±0.5°C Sensör Çözünürlüğü ile Sınıflandırma. 2 AA Pilden 500.000'e Kadar İletim. Bu Derecelere Dayanan Pillerle -40°C ila 125°C arasında ölçüm yapar. Üstün 2 Mil LOS Menzili ve Yüksek Kazançlı Antenler ile 28 mil. Raspberry Pi, Microsoft Azure, Arduino ve Daha Fazlasına Arayüz.
  • USB Arayüzü ile Uzun Menzilli Kablosuz Mesh Modem

Kullanılan Yazılım

  • Arduino IDE'si
  • ThingSpeak

Kullanılan Kitaplık

  • PubSubClient Kitaplığı
  • tel.h

MQTT için Arduino İstemcisi

Bu kitaplık, MQTT'yi destekleyen bir sunucuyla basit yayınlama/abone olma mesajlaşması yapmak için bir istemci sağlar.

MQTT hakkında daha fazla bilgi için mqtt.org adresini ziyaret edin.

İndirmek

Kütüphanenin en son sürümü GitHub'dan indirilebilir.

belgeler

Kütüphane bir dizi örnek eskiz ile birlikte gelir. Arduino uygulamasında Dosya > Örnekler > PubSubClient bölümüne bakın. Tam API Belgeleri.

Uyumlu Donanım

Kitaplık, temel ağ donanımıyla etkileşim kurmak için Arduino Ethernet İstemci API'sini kullanır. Bu, Just Works'ün, aşağıdakiler de dahil olmak üzere, artan sayıda pano ve kalkanla çalıştığı anlamına gelir:

  • Arduino Etherneti
  • Arduino Ethernet Kalkanı
  • Arduino YUN – EthernetClient yerine dahil edilen YunClient'i kullanın ve önce bir Bridge.begin() yaptığınızdan emin olun
  • Arduino WiFi Shield - Bu kalkanla 90 bayttan büyük paketler göndermek istiyorsanız, PubSubClient.h'de MQTT_MAX_TRANSFER_SIZE seçeneğini etkinleştirin.
  • SparkFun WiFly Shield – bu kitaplık ile kullanıldığında
  • Intel Galileo/Edison
  • ESP8266
  • ESP32Kitaplık şu anda Nanode veya Nuelectronics Ethernet Shield gibi ENC28J60 yongasına dayalı donanımla kullanılamaz. Bunlar için alternatif bir kütüphane mevcut.

Tel Kitaplığı

Wire kitaplığı, genellikle "2 telli" veya "TWI" (İki Telli Arabirim) olarak da adlandırılan I2C cihazlarıyla iletişim kurmanıza olanak tanır ve Wire.h adresinden indirilebilir.

Temel Kullanım

  • Wire.begin() Wire'ı ana modda kullanmaya başlayın, burada veri aktarımlarını başlatıp kontrol edeceksiniz. Bu, çoğu I2C çevre birimi yongasıyla arabirim oluştururken en yaygın kullanımdır.
  • Wire.begin(adres)Wire'ı bağımlı modda kullanmaya başlayın, burada diğer I2C ana yongaları iletişimi başlattığında "adres"te yanıt vereceksiniz. verici
  • Wire.beginTransmission(address)"adres"deki bir cihaza yeni bir iletim başlatın. Ana mod kullanılır.
  • Wire.write(veri)Veri gönder. Ana modda, önce startTransmission çağrılmalıdır.
  • Wire.endTransmission()Ana modda bu, iletimi sonlandırır ve arabelleğe alınan tüm verilerin gönderilmesine neden olur.

alma

  • Wire.requestFrom(adres, sayım)"adres" konumundaki bir aygıttan "sayma" baytlarını okuyun. Ana mod kullanılır.
  • Wire.available()Al'ı çağırarak mevcut bayt sayısını döndürür.
  • Wire.read()1 bayt alır.

Adım 2: Arduino IDE Kullanarak Kodu ESP32'ye Yükleme

  • Kodu yüklemeden önce, bu sensörün çalışmasını verilen bir bağlantıdan görüntüleyebilirsiniz.
  • PubSubClient Kitaplığı ve Wire.h Kitaplığı'nı indirin ve ekleyin.
  • Kullanılabilir ağın API anahtarınızı, SSID'nizi (WiFi Adı) ve Parolanızı atamanız gerekir.
  • Temp-ThinSpeak.ino kodunu derleyin ve yükleyin.
  • Aygıtın bağlantısını ve gönderilen verileri doğrulamak için seri monitörü açın. Herhangi bir yanıt görülmezse, ESP32'nizin fişini çekip tekrar takmayı deneyin. Seri monitörün baud hızının, kod 115200'de belirtilenle aynı şekilde ayarlandığından emin olun.

Adım 3: Seri Monitör Çıkışı

Seri Monitör Çıkışı
Seri Monitör Çıkışı

Adım 4: ThingSpeak'i Çalıştırmak

ThingSpeak'i Çalıştırma
ThingSpeak'i Çalıştırma
ThingSpeak'i Çalıştırma
ThingSpeak'i Çalıştırma
ThingSpeak'i Çalıştırma
ThingSpeak'i Çalıştırma
  • Hesabı ThnigSpeak'te oluşturun.
  • Kanallar'a tıklayarak yeni bir kanal oluşturun.
  • Kanallarım'a tıklayın.
  • Yeni Kanal'ı tıklayın.
  • Yeni Kanalın içinde kanalı adlandırın.
  • Kanalın İçindeki Alanı adlandırın, Alan, verilerin yayınlandığı değişkendir.
  • Şimdi Kanalı kaydedin.
  • Artık API anahtarlarınızı kontrol panelinde bulabilirsiniz. Ana sayfadaki musluğa gidin ve kodu ESP32'ye yüklemeden önce güncellenmesi gereken 'Api Anahtarını Yaz'ınızı bulun.
  • Kanal oluşturulduktan sonra, Kanal içinde oluşturduğunuz Alanlar ile sıcaklık ve Nem verilerinizi özel görünümde görüntüleyebilirsiniz.
  • Sıcaklık ve Nem verileri arasında bir grafik çizmek için MATLAB Görselleştirmeyi kullanabilirsiniz.
  • Bunun için Uygulamaya gidin, MATLAB Görselleştirme'ye tıklayın.
  • İçinde Özel'i seçer, burada örnek olarak iki farklı y ekseninde 8 çizim sıcaklığı ve rüzgar hızı seçtik. Şimdi oluştur'u tıklayın.
  • Görselleştirme oluştururken MATLAB kodu otomatik olarak oluşturulacaktır ancak alan kimliğini düzenlemeniz, kanal kimliğini okumanız gerekiyor, aşağıdaki şekli kontrol edebilirsiniz.
  • Ardından kodu kaydedip çalıştırın.
  • Senaryoyu göreceksin.

Önerilen: