İçindekiler:

HTTP Üzerinden XinaBox ve Ubidots Kullanarak Bir Hava Durumu İstasyonu Nasıl Kurulur: 7 Adım
HTTP Üzerinden XinaBox ve Ubidots Kullanarak Bir Hava Durumu İstasyonu Nasıl Kurulur: 7 Adım

Video: HTTP Üzerinden XinaBox ve Ubidots Kullanarak Bir Hava Durumu İstasyonu Nasıl Kurulur: 7 Adım

Video: HTTP Üzerinden XinaBox ve Ubidots Kullanarak Bir Hava Durumu İstasyonu Nasıl Kurulur: 7 Adım
Video: Sıfırdan Akıllı Ev Kurulumu - Bölüm 1: ESP32 ve DHT11 ile sıcaklık ölçümü ve mysql e veri yazma 2024, Haziran
Anonim
HTTP Üzerinden XinaBox ve Ubidots Kullanarak Bir Hava Durumu İstasyonu Nasıl Kurulur
HTTP Üzerinden XinaBox ve Ubidots Kullanarak Bir Hava Durumu İstasyonu Nasıl Kurulur

XinaBox xChips (IP01, CW01 ve SW01) kullanarak Ubidots'ta kendi Hava İstasyonunuzu nasıl yapacağınızı öğrenin

resim
resim

ESP8266 Çekirdek ve Wi-Fi modülü (xChip CW01), kullanıcıların XinaBox'ın modüler xChips'inden buluta veri göndermesine olanak tanır. Bu veriler, kullanıcıların çeşitli IoT araçlarından yararlanabileceği Ubidots'ta uzaktan izlenebilir.

xChip SW01 Gelişmiş Hava Sensörü (Bosch BME280), irtifa, bulut tabanı ve çiy noktasının da hesaplanabileceği sıcaklık, nem ve atmosfer basıncını ölçer.

Bu eğitimde, sensör verilerini Ubidots'a göndermek için HTTP protokolünü kullanıyoruz. Bu, MQTT protokolü kullanılarak da yapılabilir.

Bu kılavuzun sonunda, Ubidots kullanarak herhangi bir yerden XinaBox cihazınızdaki hava koşullarını izleyebilecek ve ölçebileceksiniz.

Adım 1: Gereksinimler

  • 1x CW01 - WiFi çekirdeği (ESP8266/ESP-12F)
  • 1x IP01 - USB Programlama Arayüzü (FT232R)
  • 1x SW01 - Gelişmiş Hava Sensörü (BME280)
  • 1x XC10 - 10'lu xBUS Konnektörleri
  • Arduino IDE'si
  • Ubidot hesabı

Adım 2: Donanım Kurulumu

XC10 xBUS konektörlerini kullanarak CW01, SW01 ve IP01'i birbirine bağlayın. Aşağıdaki şemada gösterildiği gibi bağlayabilirsiniz. Lütfen xChips'in genel olarak nasıl monte edileceğine ilişkin bu kılavuza bakın.

resim
resim

Ardından, cihazınızı ve PC'nizi IP01'in USB'si üzerinden bağlayın. Bunun için, hazır olduğunda kodu flash etmek için xFlasher yazılımını kullanmanız gerekecektir. xFlasher kullanımıyla ilgili bu kılavuza bakın.

Adım 3: Arduino IDE'yi Ayarlama

1. Arduino IDE 1.8.8'i kurun

2. Bu kütüphaneleri Arduino'ya kurun: ESP8266 Arduino, Ubidots ESP8266, xCore, xSW01.

NOT: Kitaplıkların nasıl kurulacağına aşina değilseniz, lütfen bağlantıya bakın: Arduino kitaplıklarını kurma

3. ESP8266 platformu kuruluyken, birlikte çalıştığınız ESP8266 cihazını seçin. Bu durumda, bir “CW01(ESP12F modülü)” ile çalışıyoruz. Arduino IDE'den kartınızı seçmek için Araçlar > Kart “NodeMCU 1.0(ESP12E modülü)” öğesini seçin.

NOT: ESP12F ve ESP12E bu amaçla birbirinin yerine kullanılabilir.

Adım 4: Kodu Anlama

Kütüphaneler dahil:

#include "UbidotsMicroESP8266.h"

#include #include

Wi-Fi ve Ubidots Kimlik Bilgilerinizi girin:

#define TOKEN "Your-Token" // Ubidots TOKEN'ınızı buraya koyun

#define WIFISSID "SSID'niz" // Wi-Fi SSID'nizi buraya koyun #define PASSWORD "ssid şifrenizi" // Buraya Wi-Fi şifrenizi girin

Benzersiz Ubidots TOKEN'iniz, Ubidots hesabınızdan elde edilir. Ubidots TOKEN'inizi nerede bulacağınızı öğrenmek için aşağıdaki bağlantıya bakın.

Tek seferlik kurulum, kendi kendine açıklama için yorumlara bakın:

geçersiz kurulum() {

// Seri monitör Serial.begin(115200) kullanılarak 115200'de hata ayıklama; //Erişim Noktasına bağlanın client.wifiConnection(WIFISSID, PASSWORD); // I2C iletişimi başlar Wire.begin(); // SW01 Sensörünü Başlat SW01.begin(); //Biraz gecikme ile tanışın, 2-3 saniye gecikme(DELAY_TIME); }

Çalışmasını ve sürekli güncellenmesini sağlamak için işlemi döngüye alın:

boşluk döngüsü () {

// SW01 float tempC, nem, basınç, alt'tan okunan verileri depolamak için bir değişken oluşturun; //Cihaz değişkenleri oluşturuluyor tempC = 0; nem = 0; basınç = 0; alt=0; // Veri toplamak için Anket Sensörü SW01.poll(); //Verileri cihaz değişkenlerine kaydetme tempC = SW01.getTempC(); // Santigrat cinsinden sıcaklık Serial.println("Sıcaklık: "); Seri.print(tempC); Serial.println(" *C"); Seri.println(); nem = SW01.getHumidity(); Serial.println("Nem: "); Seri.print(nem); Serial.println(" %"); Seri.println(); basınç = SW01.getPressure(); Serial.println("Basınç: "); Seri.print(basınç); Serial.println(" Pa"); Seri.println(); alt=SW01.getAltitude(101325); Serial.println("Yükseklik: "); Seri.baskı(alt); Seri.println("m"); Seri.println(); //ubidots değişkenleri oluştur client.add("Sıcaklık (*C)", tempC); gecikme(500); client.add("Nem (%)", nem); gecikme(500); client.add("Basınç (Pa)", basınç); gecikme(500); client.add("Yükseklik (m)", alt); //Tüm noktaları gönder client.sendAll(true); // gecikmeyi stabilize etmek için sensör okumaları arasındaki gecikme(DELAY_TIME); }

Tam kod:

#include "UbidotsMicroESP8266.h"

#include #include #define TOKEN "Your-Token" // Buraya Ubidots TOKEN #define WIFISSID "Your-SSID" // buraya Wi-Fi SSID'nizi koyun #define PASSWORD "password-of-ssid" // Buraya koyun Wi-Fi şifreniz Ubidots istemciniz(TOKEN); const int DELAY_TIME = 2000; xSW01 SW01; //SW01 sensör void kurulumunun nesnesi oluşturuluyor() { Serial.begin(115200); client.wifiConnection(WIFISSID, ŞİFRE); Wire.begin(); // SW01 Sensörünü Başlat SW01.begin(); gecikme(DELAY_TIME); } void loop() { // SW01 float tempC, nem, basınç, alttan okunan verileri depolamak için bir değişken oluşturun; sıcaklıkC = 0; nem = 0; basınç = 0; alt=0; // Veri toplamak için Anket Sensörü SW01.poll(); //Verileri değişkenlere kaydetme tempC = SW01.getTempC(); // Santigrat cinsinden sıcaklık Serial.println("Sıcaklık: "); Seri.print(tempC); Serial.println(" *C"); Seri.println(); nem = SW01.getHumidity(); Serial.println("Nem: "); Seri.print(nem); Serial.println(" %"); Seri.println(); basınç = SW01.getPressure(); Serial.println("Basınç: "); Seri.print(basınç); Serial.println(" Pa"); Seri.println(); alt=SW01.getAltitude(101325); Serial.println("Yükseklik: "); Seri.baskı(alt); Seri.println("m"); Seri.println(); //ubidots değişkenleri oluştur client.add("Sıcaklık (*C)", tempC); gecikme(500); client.add("Nem (%)", nem); gecikme(500); client.add("Basınç (Pa)", basınç); gecikme(500); client.add("Yükseklik (m)", alt); //Tüm noktaları gönder client.sendAll(true); // gecikmeyi stabilize etmek için sensör okumaları arasındaki gecikme(DELAY_TIME); }

Adım 5: Ubidots'a Giriş Yapın

1. Ubidots hesabınızı açın. 4 değişkenli “ESP8266” adlı bir cihaz göreceksiniz (aşağıdaki resme bakın).

Cihaz görselleştirme

resim
resim

Değişken görselleştirme

resim
resim

Cihazın adını değiştirmek istiyorsanız, kodu kullanın:

client.setDataSourceName("Yeni_isim");

Adım 6: Ubidots'ta Gösterge Tabloları Oluşturma

Gösterge tabloları (statik ve dinamik), bir cihazın verilerini ve verilerden elde edilen öngörüleri düzenlemek ve sunmak için kullanıcı arayüzleridir. Panolar, verileri çizelgeler, göstergeler, kontroller, tablolar, grafikler ve diğer boyut, şekil ve formlar olarak görüntüleyen widget'lar içerir.

Ubidots hesabınızda yeni bir Gösterge Tablosu oluşturmak için nasıl yapılacağını öğrenmek için aşağıdaki Ubidots eğitimine bakın.

Bir referans olarak, Ubidots Dashboard'unuz oluşturulduktan sonra aşağıdaki resme benzer bir şeye sahip olmalısınız:

resim
resim

PROFESYONELLER İÇİN İPUCU: Ayrıca bir dizi grafik ve raporlama aracı da vardır. Bununla ilgili daha fazla bilgi edinmek istiyorsanız, bu kılavuzu incelemenizi öneririz.

resim
resim

7. Adım: Özet

Bu eğitimde, bir XinaBox Hava İstasyonunun nasıl kodlanacağını ve Ubidots'a nasıl bağlanacağını gösterdik. Bu uzaktan izleme sağlar ve 10-15 dakika içinde tamamlanabilir.

Diğer okuyucular da faydalı buldular…

  • UbiFunctions: AmbientWeather Platformundan Ubidots'a verileri entegre edin
  • Analitik: Sentetik Değişkenler Temelleri
  • Ubidots MQTT ve NodeMcu ile Sıcaklık Kontrolü

Önerilen: