Daftar Isi:

Cara Membangun Stasiun Cuaca Menggunakan XinaBox dan Ubidots Melalui HTTP: 7 Langkah
Cara Membangun Stasiun Cuaca Menggunakan XinaBox dan Ubidots Melalui HTTP: 7 Langkah

Video: Cara Membangun Stasiun Cuaca Menggunakan XinaBox dan Ubidots Melalui HTTP: 7 Langkah

Video: Cara Membangun Stasiun Cuaca Menggunakan XinaBox dan Ubidots Melalui HTTP: 7 Langkah
Video: ESP32 Based IoT Weather Station | How To Make | Complete Guide 2024, November
Anonim
Cara Membangun Stasiun Cuaca Menggunakan XinaBox dan Ubidots Melalui HTTP
Cara Membangun Stasiun Cuaca Menggunakan XinaBox dan Ubidots Melalui HTTP

Pelajari cara membuat Stasiun Cuaca Anda sendiri di Ubidots, menggunakan XinaBox xChips (IP01, CW01 dan SW01)

Gambar
Gambar

ESP8266 Core dan modul Wi-Fi (xChip CW01) memungkinkan pengguna untuk mengirim data dari xChips modular XinaBox ke cloud. Data ini dapat dipantau dari jarak jauh di Ubidots, di mana pengguna dapat memanfaatkan berbagai alat IoT mereka.

Sensor Cuaca Tingkat Lanjut xChip SW01 (Bosch BME280) mengukur suhu, kelembaban, dan tekanan atmosfer, yang darinya ketinggian, dasar awan, dan titik embun juga dapat dihitung.

Dalam tutorial ini kami menggunakan protokol HTTP untuk mengirim data sensor ke Ubidots. Ini juga dapat dilakukan dengan menggunakan protokol MQTT.

Pada akhir panduan ini, Anda akan dapat memantau dan mengukur kondisi cuaca di perangkat XinaBox Anda dari mana saja dari jarak jauh menggunakan Ubidots.

Langkah 1: Persyaratan

  • 1x CW01 - inti WiFi (ESP8266/ESP-12F)
  • 1x IP01 - Antarmuka Pemrograman USB (FT232R)
  • 1x SW01 - Sensor Cuaca Canggih (BME280)
  • 1x XC10 - Konektor xBUS 10 Paket
  • Arduino IDE
  • akun Ubidots

Langkah 2: Pengaturan Perangkat Keras

Hubungkan CW01, SW01 dan IP01 bersama-sama menggunakan konektor XC10 xBUS. Anda dapat menghubungkannya seperti yang ditunjukkan pada diagram di bawah ini. Silakan lihat panduan ini tentang cara merakit xChips secara umum.

Gambar
Gambar

Kemudian, sambungkan perangkat dan PC Anda melalui USB IP01. Untuk ini, Anda perlu menggunakan perangkat lunak xFlasher untuk mem-flash kode setelah siap. Lihat panduan ini tentang menggunakan xFlasher.

Langkah 3: Menyiapkan Arduino IDE

1. Instal Arduino IDE 1.8.8

2. Instal perpustakaan ini ke Arduino: ESP8266 Arduino, Ubidots ESP8266, xCore, xSW01.

CATATAN: Jika Anda tidak terbiasa dengan cara Menginstal pustaka, silakan merujuk ke tautan: Memasang pustaka Arduino

3. Dengan platform ESP8266 terinstal, pilih perangkat ESP8266 yang Anda gunakan. Dalam hal ini, kami bekerja dengan "CW01 (modul ESP12F)". Untuk memilih board Anda dari Arduino IDE, pilih Tools > Board “NodeMCU 1.0(ESP12E module)”.

CATATAN: ESP12F dan ESP12E dapat dipertukarkan untuk tujuan ini.

Langkah 4: Memahami Kode

Termasuk perpustakaan:

#sertakan "UbidotsMicroESP8266.h"

#sertakan #sertakan

Masukkan Kredensial Wi-Fi dan Ubidots Anda:

#define TOKEN "Token-Anda" // Letakkan di sini Ubidots TOKEN Anda

#define WIFISSID "Your-SSID" // Letakkan di sini SSID Wi-Fi Anda #define PASSWORD "password-of-ssid" // Letakkan di sini kata sandi Wi-Fi Anda

TOKEN Ubidots unik Anda diperoleh dari akun Ubidots Anda. Lihat tautan berikut untuk mempelajari di mana menemukan TOKEN Ubidots Anda.

Pengaturan satu kali, lihat komentar untuk penjelasan sendiri:

batalkan pengaturan() {

//Debugging pada 115200 menggunakan serial monitor Serial.begin(115200); //Hubungkan ke Access Point client.wifiConnection(WIFISSID, PASSWORD); // Komunikasi I2C dimulai Wire.begin(); // Mulai Sensor SW01 SW01.begin(); //Memperkenalkan beberapa penundaan, penundaan 2-3 detik(DELAY_TIME); }

Ulangi operasi, agar tetap berjalan dan memperbarui terus menerus:

lingkaran kosong() {

// Buat variabel untuk menyimpan data yang dibaca dari SW01 float tempC, moisture, pressure, alt; //Membuat variabel perangkat tempC = 0; kelembaban = 0; tekanan = 0; alt=0; // Sensor Poll untuk mengumpulkan data SW01.poll(); //Menyimpan data ke variabel perangkat tempC = SW01.getTempC(); // Suhu dalam Celcius Serial.println("Suhu: "); Serial.print(tempC); Serial.println("*C"); Serial.println(); kelembaban = SW01.getHumidity(); Serial.println("Kelembaban: "); Serial.print(kelembaban); Serial.println("%"); Serial.println(); tekanan = SW01.getTekanan(); Serial.println("Tekanan: "); Serial.print(tekanan); Serial.println("Pa"); Serial.println(); alt=SW01.getAltitude(101325); Serial.println("Ketinggian: "); Serial.print(alt); Serial.println("m"); Serial.println(); //Buat variabel ubidots client.add("Suhu (*C)", tempC); penundaan (500); client.add("Kelembaban (%)", kelembaban); penundaan (500); client.add("Tekanan (Pa)", tekanan); penundaan (500); client.add("Ketinggian (m)", alt); //Kirim semua titik client.sendAll(true); // penundaan antara pembacaan sensor untuk menstabilkan penundaan(DELAY_TIME); }

Kode lengkapnya:

#sertakan "UbidotsMicroESP8266.h"

#include #include #define TOKEN "Your-Token" // Letakkan di sini Ubidots TOKEN Anda #define WIFISSID "Your-SSID" // Letakkan di sini SSID Wi-Fi Anda #define PASSWORD "password-of-ssid" // Letakkan di sini kata sandi Wi-Fi Anda, klien Ubidots (TOKEN); const int DELAY_TIME = 2000; xSW01 SW01; //Membuat objek dari SW01 sensor void setup() { Serial.begin(115200); client.wifiConnection(WIFISSID, PASSWORD); Kawat.mulai(); // Mulai Sensor SW01 SW01.begin(); tunda(DELAY_TIME); } void loop() { // Buat variabel untuk menyimpan data yang dibaca dari SW01 float tempC, kelembaban, tekanan, alt; suhu C = 0; kelembaban = 0; tekanan = 0; alt=0; // Sensor Poll untuk mengumpulkan data SW01.poll(); //Menyimpan data ke variabel memori tempC = SW01.getTempC(); // Suhu dalam Celcius Serial.println("Suhu: "); Serial.print(tempC); Serial.println("*C"); Serial.println(); kelembaban = SW01.getHumidity(); Serial.println("Kelembaban: "); Serial.print(kelembaban); Serial.println("%"); Serial.println(); tekanan = SW01.getTekanan(); Serial.println("Tekanan: "); Serial.print(tekanan); Serial.println("Pa"); Serial.println(); alt=SW01.getAltitude(101325); Serial.println("Ketinggian: "); Serial.print(alt); Serial.println("m"); Serial.println(); //Buat variabel ubidots client.add("Suhu (*C)", tempC); penundaan (500); client.add("Kelembaban (%)", kelembaban); penundaan (500); client.add("Tekanan (Pa)", tekanan); penundaan (500); client.add("Ketinggian (m)", alt); //Kirim semua titik client.sendAll(true); // penundaan antara pembacaan sensor untuk menstabilkan penundaan(DELAY_TIME); }

Langkah 5: Masuk ke Ubidots

1. Buka akun Ubidots Anda. Anda akan melihat perangkat bernama "ESP8266" dengan 4 variabel (lihat gambar di bawah).

Visualisasi perangkat

Gambar
Gambar

Visualisasi variabel

Gambar
Gambar

Jika Anda ingin mengubah nama perangkat, gunakan kode:

client.setDataSourceName("Nama_baru");

Langkah 6: Membuat Dasbor di Ubidots

Dasbor (statis dan dinamis) adalah antarmuka pengguna untuk mengatur dan menyajikan data perangkat dan wawasan yang diperoleh dari data. Dasbor berisi widget yang menampilkan data sebagai bagan, indikator, kontrol, tabel, grafik, dan ukuran, bentuk, dan formulir lainnya.

Untuk membuat Dasbor baru di akun Ubidots Anda, lihat tutorial Ubidots berikut untuk mempelajari cara melakukannya.

Sebagai referensi, setelah Dashboard Ubidots Anda dibuat, Anda harus memiliki sesuatu yang mirip dengan gambar di bawah ini:

Gambar
Gambar

KIAT PRO: Ada juga berbagai alat grafik dan pelaporan. Jika Anda ingin mempelajari lebih lanjut tentang ini, kami sarankan Anda memeriksa panduan ini.

Gambar
Gambar

Langkah 7: Ringkasan

Dalam tutorial ini, kami telah menunjukkan cara membuat kode dan menghubungkan stasiun Cuaca XinaBox ke Ubidots. Ini memungkinkan pemantauan jarak jauh dan dapat diselesaikan dalam waktu 10-15 menit.

Pembaca lain juga merasa berguna…

  • UbiFunctions: Mengintegrasikan data dari AmbientWeather Platform ke Ubidots
  • Analisis: Dasar-dasar Variabel Sintetis
  • Kontrol Suhu dengan Ubidots MQTT dan NodeMcu

Direkomendasikan: