Sadržaj:

Kako izgraditi meteorološku postaju koristeći XinaBox i Ubidots putem HTTP -a: 7 koraka
Kako izgraditi meteorološku postaju koristeći XinaBox i Ubidots putem HTTP -a: 7 koraka

Video: Kako izgraditi meteorološku postaju koristeći XinaBox i Ubidots putem HTTP -a: 7 koraka

Video: Kako izgraditi meteorološku postaju koristeći XinaBox i Ubidots putem HTTP -a: 7 koraka
Video: Плато Путорана. Озеро Аян. Заповедники Таймыра. Nature of Russia. 2024, Srpanj
Anonim
Kako izgraditi meteorološku postaju koristeći XinaBox i Ubidots putem HTTP -a
Kako izgraditi meteorološku postaju koristeći XinaBox i Ubidots putem HTTP -a

Naučite kako napraviti vlastitu meteorološku stanicu na Ubidotsu pomoću XinaBox x čipova (IP01, CW01 i SW01)

Slika
Slika

Jezgreni i Wi-Fi modul ESP8266 (xChip CW01) omogućuje korisnicima slanje podataka iz XinaBox-ovih modularnih x čipova u oblak. Ti se podaci mogu daljinski nadzirati u Ubidotsu, gdje korisnici mogu iskoristiti svoj raspon IoT alata.

Napredni senzor vremena xChip SW01 (Bosch BME280) mjeri temperaturu, vlažnost i atmosferski tlak, iz čega se također može izračunati nadmorska visina, baza oblaka i točka rosišta.

U ovom vodiču koristimo HTTP protokol za slanje podataka senzora na Ubidots. To se također može učiniti korištenjem MQTT protokola.

Do kraja ovog vodiča moći ćete pratiti i mjeriti vremenske uvjete na vašem XinaBox uređaju s bilo kojeg mjesta na daljinu pomoću Ubidota.

Korak 1: Zahtjevi

  • 1x CW01 - WiFi jezgra (ESP8266/ESP -12F)
  • 1x IP01 - USB programsko sučelje (FT232R)
  • 1x SW01 - napredni senzor vremena (BME280)
  • 1x XC10 - 10 -x xUSB konektori
  • Arduino IDE
  • Ubidots račun

Korak 2: Postavljanje hardvera

Spojite CW01, SW01 i IP01 zajedno pomoću XC10 xBUS konektora. Možete ga spojiti kao što je prikazano na donjem dijagramu. Molimo pogledajte ovaj vodič o tome kako općenito sastaviti xChips.

Slika
Slika

Zatim povežite uređaj i računalo putem USB -a IP01. Za to ćete morati upotrijebiti softver xFlasher za bljeskanje koda nakon što bude spreman. Pogledajte ovaj vodič o korištenju xFlashera.

Korak 3: Postavljanje Arduino IDE -a

1. Instalirajte Arduino IDE 1.8.8

2. Instalirajte ove knjižnice na Arduino: ESP8266 Arduino, Ubidots ESP8266, xCore, xSW01.

NAPOMENA: Ako niste upoznati s načinom instaliranja knjižnica, pogledajte vezu: Instaliranje Arduino knjižnica

3. S instaliranom platformom ESP8266 odaberite uređaj ESP8266 s kojim radite. U ovom slučaju radimo s “CW01 (ESP12F modul)”. Da biste odabrali svoju ploču iz Arduino IDE -a, odaberite Alati> Ploča “NodeMCU 1.0 (ESP12E modul)”.

NAPOMENA: ESP12F i ESP12E su zamjenjivi u tu svrhu.

Korak 4: Razumijevanje Kodeksa

Uključujući knjižnice:

#include "UbidotsMicroESP8266.h"

#include #include

Unesite svoje vjerodajnice za Wi-Fi i Ubidots:

#define TOKEN "Your-Token" // Ovdje unesite svoj Ubidots TOKEN

#define WIFISSID "Your-SSID" // Ovdje unesite svoj Wi-Fi SSID #define PASSWORD "password-of-ssid" // Ovdje unesite svoju lozinku za Wi-Fi

Vaš jedinstveni Ubidots TOKEN dobiva se s vašeg Ubidots računa. Na sljedećoj poveznici saznajte gdje možete pronaći svoj Ubidots TOKEN.

Jednokratna postavka, pogledajte komentare za samoobjašnjenje:

void setup () {

// Otklanjanje pogrešaka na 115200 pomoću serijskog monitora Serial.begin (115200); // Povezivanje s pristupnom točkom client.wifiConnection (WIFISSID, PASSWORD); // I2C komunikacija počinje Wire.begin (); // Pokretanje senzora SW01 SW01.begin (); // Uvođenje kašnjenja, kašnjenje od 2-3 sekunde (DELAY_TIME); }

Ponovite radnju da biste je neprestano izvodili i ažurirali:

void loop () {{100} {101}

// Stvorimo varijablu za spremanje podataka pročitanih sa SW01 float tempC, vlažnost, tlak, alt; // Stvaranje varijabli uređaja tempC = 0; vlažnost = 0; tlak = 0; alt=0; // Senzor ankete za prikupljanje podataka SW01.poll (); // Spremanje podataka u varijable uređaja tempC = SW01.getTempC (); // Temperature in Celsius Serial.println ("Temperatura:"); Serijski.ispis (tempC); Serial.println (" *C"); Serial.println (); vlažnost = SW01.getHumidity (); Serial.println ("Vlažnost:"); Serijski.tisak (vlažnost); Serial.println (" %"); Serial.println (); tlak = SW01.getPressure (); Serial.println ("Tlak:"); Serijski.tisak (pritisak); Serial.println ("Pa"); Serial.println (); alt=SW01.getAltitude (101325); Serial.println ("Nadmorska visina:"); Serijski.ispis (alt); Serial.println ("m"); Serial.println (); // Stvaranje ubidots varijabli client.add ("Temperatura (*C)", tempC); kašnjenje (500); client.add ("Vlažnost (%)", vlažnost); kašnjenje (500); client.add ("Tlak (Pa)", tlak); kašnjenje (500); client.add ("Nadmorska visina (m)", alt); // Pošalji sve točke client.sendAll (true); // kašnjenje između očitanja senzora radi stabilizacije kašnjenja (DELAY_TIME); }

Potpuni kod:

#include "UbidotsMicroESP8266.h"

#include #include #define TOKEN "Your-Token" // Stavite ovdje svoj Ubidots TOKEN #define WIFISSID "Your-SSID" // Ovdje postavite svoj Wi-Fi SSID #define PASSWORD "password-of-ssid" // Stavite ovdje vaša Wi-Fi lozinka Ubidots klijent (TOKEN); const int DELAY_TIME = 2000; xSW01 SW01; // Stvaranje objekta SW01 senzora void setup () {Serial.begin (115200); client.wifiConnection (WIFISSID, PASSWORD); Wire.begin (); // Pokretanje senzora SW01 SW01.begin (); kašnjenje (DELAY_TIME); } void loop () {// Stvorite varijablu za spremanje podataka pročitanih sa SW01 float tempC, vlažnost, tlak, alt; tempC = 0; vlažnost = 0; tlak = 0; alt=0; // Senzor ankete za prikupljanje podataka SW01.poll (); // Spremanje podataka u varijable memorija tempC = SW01.getTempC (); // Temperature in Celsius Serial.println ("Temperatura:"); Serijski.ispis (tempC); Serial.println (" *C"); Serial.println (); vlažnost = SW01.getHumidity (); Serial.println ("Vlažnost:"); Serijski.tisak (vlažnost); Serial.println (" %"); Serial.println (); tlak = SW01.getPressure (); Serial.println ("Tlak:"); Serijski.tisak (pritisak); Serial.println ("Pa"); Serial.println (); alt=SW01.getAltitude (101325); Serial.println ("Nadmorska visina:"); Serijski.ispis (alt); Serial.println ("m"); Serial.println (); // Stvaranje ubidots varijabli client.add ("Temperatura (*C)", tempC); kašnjenje (500); client.add ("Vlažnost (%)", vlažnost); kašnjenje (500); client.add ("Tlak (Pa)", tlak); kašnjenje (500); client.add ("Nadmorska visina (m)", alt); // Pošalji sve točke client.sendAll (true); // kašnjenje između očitanja senzora radi stabilizacije kašnjenja (DELAY_TIME); }

Korak 5: Prijavite se na Ubidots

1. Otvorite svoj Ubidots račun. Vidjet ćete uređaj pod nazivom “ESP8266” s 4 varijable (pogledajte sliku ispod).

Vizualizacija uređaja

Slika
Slika

Vizualizacija varijabli

Slika
Slika

Ako želite promijeniti naziv uređaja, upotrijebite kôd:

client.setDataSourceName ("Novo_ime");

Korak 6: Stvaranje nadzornih ploča u Ubidotsima

Nadzorne ploče (statičke i dinamičke) korisnička su sučelja za organizaciju i prezentaciju podataka uređaja i uvida koji proizlaze iz podataka. Nadzorne ploče sadrže widgete koji prikazuju podatke kao grafikone, pokazatelje, kontrole, tablice, grafikone i druge veličine, oblike i obrasce.

Da biste stvorili novu nadzornu ploču na svom Ubidots računu, pogledajte sljedeće uputstvo Ubidots da biste saznali kako to učiniti.

Samo kao referencu, nakon što stvorite svoju Ubidots nadzornu ploču, trebali biste imati nešto slično slici ispod:

Slika
Slika

PRO SAVJET: Također postoji niz grafičkih alata i alata za izvješćivanje. Ako želite saznati više o ovome, preporučujemo da pogledate ovaj vodič.

Slika
Slika

Korak 7: Sažetak

U ovom smo vodiču pokazali kako kodirati i spojiti vremensku postaju XinaBox na Ubidots. To omogućuje daljinsko praćenje i može se dovršiti u roku od 10-15 minuta.

Drugi čitatelji također su smatrali korisnim …

  • UbiFunctions: Integrirajte podatke s platforme AmbientWeather u Ubidots
  • Analytics: Osnove sintetičkih varijabli
  • Kontrola temperature s Ubidots MQTT i NodeMcu

Preporučeni: