Obsah:

Jak vybudovat meteorologickou stanici pomocí XinaBoxu a Ubidots přes HTTP: 7 kroků
Jak vybudovat meteorologickou stanici pomocí XinaBoxu a Ubidots přes HTTP: 7 kroků

Video: Jak vybudovat meteorologickou stanici pomocí XinaBoxu a Ubidots přes HTTP: 7 kroků

Video: Jak vybudovat meteorologickou stanici pomocí XinaBoxu a Ubidots přes HTTP: 7 kroků
Video: Základy meteorologie pro piloty - 6. TLAKOVÉ ÚTVARY 2024, Listopad
Anonim
Jak vybudovat meteorologickou stanici pomocí XinaBoxu a Ubidots přes HTTP
Jak vybudovat meteorologickou stanici pomocí XinaBoxu a Ubidots přes HTTP

Zjistěte, jak vytvořit vlastní meteorologickou stanici v Ubidots pomocí XinaBox xChips (IP01, CW01 a SW01)

obraz
obraz

Modul ESP8266 Core a Wi-Fi (xChip CW01) umožňuje uživatelům odesílat data z modulárních xChipů XinaBoxu do cloudu. Tato data lze vzdáleně monitorovat v Ubidots, kde mohou uživatelé využívat výhod řady nástrojů IoT.

Pokročilý senzor počasí xChip SW01 (Bosch BME280) měří teplotu, vlhkost a atmosférický tlak, ze kterých lze také vypočítat nadmořskou výšku, základnu mraků a rosný bod.

V tomto kurzu používáme protokol HTTP k odesílání dat senzorů do Ubidots. To lze také provést pomocí protokolu MQTT.

Na konci této příručky budete moci monitorovat a měřit povětrnostní podmínky na vašem zařízení XinaBox odkudkoli vzdáleně pomocí Ubidots.

Krok 1: Požadavky

  • 1x CW01 - jádro WiFi (ESP8266/ESP -12F)
  • 1x IP01 - USB programovací rozhraní (FT232R)
  • 1x SW01 - pokročilý senzor počasí (BME280)
  • 1x XC10 - 10 x Pack konektory xBUS
  • Arduino IDE
  • Účet Ubidots

Krok 2: Nastavení hardwaru

Spojte CW01, SW01 a IP01 dohromady pomocí konektorů XC10 xBUS. Můžete jej připojit podle obrázku níže. Přečtěte si prosím tuto příručku, jak obecně sestavovat xChips.

obraz
obraz

Poté připojte své zařízení a počítač přes USB IP01. K tomu budete muset použít software xFlasher k bliknutí kódu, jakmile budete připraveni. Viz tato příručka k používání xFlasher.

Krok 3: Nastavení IDE Arduino

1. Nainstalujte Arduino IDE 1.8.8

2. Nainstalujte do Arduina tyto knihovny: ESP8266 Arduino, Ubidots ESP8266, xCore, xSW01.

POZNÁMKA: Pokud nejste obeznámeni s instalací knihoven, podívejte se na odkaz: Instalace knihoven Arduino

3. S nainstalovanou platformou ESP8266 vyberte zařízení ESP8266, se kterým pracujete. V tomto případě pracujeme s „CW01 (modul ESP12F)“. Chcete -li vybrat desku z Arduino IDE, vyberte Nástroje> Deska „NodeMCU 1.0 (modul ESP12E)“.

POZNÁMKA: ESP12F a ESP12E jsou pro tento účel zaměnitelné.

Krok 4: Porozumění kódu

Včetně knihoven:

#include "UbidotsMicroESP8266.h"

#include #include

Zadejte své pověření Wi-Fi a Ubidots:

#define TOKEN „Your-Token“// Sem vložte své Ubidots TOKEN

#define WIFISSID „Your-SSID“// Sem vložte své Wi-Fi SSID #define PASSWORD „password-of-ssid“// Sem vložte své Wi-Fi heslo

Vaše jedinečné Ubidots TOKEN se získávají z vašeho účtu Ubidots. Na následujícím odkazu se dozvíte, kde najít Ubidots TOKEN.

Jednorázové nastavení najdete v komentářích pro vlastní vysvětlení:

neplatné nastavení () {

// Ladění na 115200 pomocí sériového monitoru Serial.begin (115200); // Připojení k klientovi přístupového bodu.wifiConnection (WIFISSID, PASSWORD); // Komunikace I2C začíná Wire.begin (); // Spusťte senzor SW01 SW01.begin (); // Představujeme určité zpoždění, zpoždění 2-3 sekundy (DELAY_TIME); }

Smyčku operace, aby byla spuštěna a průběžně aktualizována:

prázdná smyčka () {

// Vytvořte proměnnou pro ukládání dat načtených z SW01 float tempC, vlhkost, tlak, alt; // Vytváření proměnných zařízení tempC = 0; vlhkost = 0; tlak = 0; alt=0; // Senzor hlasování pro sběr dat SW01.poll (); // Ukládání dat do proměnných zařízení tempC = SW01.getTempC (); // Teplota ve stupních Celsia Serial.println ("Teplota:"); Serial.print (tempC); Serial.println (" *C"); Serial.println (); vlhkost = SW01.getHumidity (); Serial.println ("Vlhkost:"); Sériový tisk (vlhkost); Serial.println (" %"); Serial.println (); tlak = SW01.getPressure (); Serial.println ("Tlak:"); Sériový tisk (tlak); Serial.println ("Pa"); Serial.println (); alt=SW01.getAltitude (101325); Serial.println ("Nadmořská výška:"); Serial.print (alt); Serial.println ("m"); Serial.println (); // Vytvořte proměnné ubidots client.add ("Teplota (*C)", tempC); zpoždění (500); client.add ("Vlhkost (%)", vlhkost); zpoždění (500); client.add ("Tlak (Pa)", tlak); zpoždění (500); client.add ("Nadmořská výška (m)", alt); // Odeslání všech teček client.sendAll (true); // zpoždění mezi čteními senzoru pro stabilizaci zpoždění (DELAY_TIME); }

Kompletní kód:

#include "UbidotsMicroESP8266.h"

#include #include #define TOKEN "Your-Token" // Sem vložte své Ubidots TOKEN #define WIFISSID "Your-SSID" // Sem vložte své Wi-Fi SSID #define PASSWORD "heslo-ssid" // Vložte sem vaše heslo pro Wi-Fi klienta Ubidots (TOKEN); const int DELAY_TIME = 2000; xSW01 SW01; // Vytvoření objektu senzoru SW01 void setup () {Serial.begin (115200); client.wifiConnection (WIFISSID, HESLO); Wire.begin (); // Spusťte senzor SW01 SW01.begin (); zpoždění (DELAY_TIME); } void loop () {// Vytvořte proměnnou pro ukládání dat načtených z SW01 float tempC, vlhkost, tlak, alt; tempC = 0; vlhkost = 0; tlak = 0; alt=0; // Senzor hlasování pro sběr dat SW01.poll (); // Ukládání dat do proměnných memory tempC = SW01.getTempC (); // Teplota ve stupních Celsia Serial.println ("Teplota:"); Serial.print (tempC); Serial.println (" *C"); Serial.println (); vlhkost = SW01.getHumidity (); Serial.println ("Vlhkost:"); Sériový tisk (vlhkost); Serial.println (" %"); Serial.println (); tlak = SW01.getPressure (); Serial.println ("Tlak:"); Sériový tisk (tlak); Serial.println ("Pa"); Serial.println (); alt=SW01.getAltitude (101325); Serial.println ("Nadmořská výška:"); Serial.print (alt); Serial.println ("m"); Serial.println (); // Vytvořte proměnné ubidots client.add ("Teplota (*C)", tempC); zpoždění (500); client.add ("Vlhkost (%)", vlhkost); zpoždění (500); client.add ("Tlak (Pa)", tlak); zpoždění (500); client.add ("Nadmořská výška (m)", alt); // Odeslání všech teček client.sendAll (true); // zpoždění mezi čteními senzoru pro stabilizaci zpoždění (DELAY_TIME); }

Krok 5: Přihlaste se do Ubidots

1. Otevřete svůj účet Ubidots. Uvidíte zařízení s názvem „ESP8266“se 4 proměnnými (viz obrázek níže).

Vizualizace zařízení

obraz
obraz

Vizualizace proměnných

obraz
obraz

Pokud chcete změnit název zařízení, použijte kód:

client.setDataSourceName ("New_name");

Krok 6: Vytvoření řídicích panelů v Ubidots

Panely (statické a dynamické) jsou uživatelská rozhraní pro organizaci a prezentaci dat zařízení a přehledů odvozených z dat. Panely obsahují widgety, které zobrazují data jako grafy, indikátory, ovládací prvky, tabulky, grafy a další velikosti, tvary a formuláře.

Chcete -li ve svém účtu Ubidots vytvořit nový Dashboard, přečtěte si následující tutoriál o Ubidots, kde se dozvíte, jak na to.

Jen jako reference, jakmile bude váš řídicí panel Ubidots vytvořen, měli byste mít něco podobného jako na obrázku níže:

obraz
obraz

PRO TIP: Existuje také řada nástrojů pro vytváření grafů a reportů. Pokud se o tom chcete dozvědět více, doporučujeme vám přečíst si tuto příručku.

obraz
obraz

Krok 7: Shrnutí

V tomto kurzu jsme ukázali, jak kódovat a připojit meteorologickou stanici XinaBox k Ubidots. To umožňuje vzdálené monitorování a může být dokončeno během 10–15 minut.

Další čtenáři také našli užitečné…

  • UbiFunctions: Integrujte data z platformy AmbientWeather do Ubidots
  • Analytics: Základy syntetických proměnných
  • Regulace teploty pomocí Ubidots MQTT a NodeMcu

Doporučuje: