Satura rādītājs:

Kā izveidot meteoroloģisko staciju, izmantojot XinaBox un Ubidots, izmantojot HTTP: 7 soļi
Kā izveidot meteoroloģisko staciju, izmantojot XinaBox un Ubidots, izmantojot HTTP: 7 soļi

Video: Kā izveidot meteoroloģisko staciju, izmantojot XinaBox un Ubidots, izmantojot HTTP: 7 soļi

Video: Kā izveidot meteoroloģisko staciju, izmantojot XinaBox un Ubidots, izmantojot HTTP: 7 soļi
Video: Наука о данных с Python! Объединение таблиц без общего столбца 2024, Jūlijs
Anonim
Kā izveidot meteoroloģisko staciju, izmantojot XinaBox un Ubidots, izmantojot HTTP
Kā izveidot meteoroloģisko staciju, izmantojot XinaBox un Ubidots, izmantojot HTTP

Uzziniet, kā izveidot savu meteoroloģisko staciju Ubidots, izmantojot XinaBox xChips (IP01, CW01 un SW01)

Attēls
Attēls

ESP8266 Core un Wi-Fi modulis (xChip CW01) ļauj lietotājiem nosūtīt datus no XinaBox modulārajiem xChips uz mākoni. Šos datus var attālināti uzraudzīt Ubidots, kur lietotāji var izmantot sava IoT rīku klāsta priekšrocības.

XChip SW01 uzlabotais laika sensors (Bosch BME280) mēra temperatūru, mitrumu un atmosfēras spiedienu, pēc kura var aprēķināt arī augstumu, mākoņu bāzi un rasas punktu.

Šajā apmācībā mēs izmantojam HTTP protokolu, lai nosūtītu sensora datus uz Ubidots. To var izdarīt arī, izmantojot MQTT protokolu.

Šīs rokasgrāmatas beigās jūs varēsit uzraudzīt un izmērīt laika apstākļus savā XinaBox ierīcē no jebkuras vietas attālināti, izmantojot Ubidots.

1. darbība. Prasības

  • 1x CW01 - WiFi kodols (ESP8266/ESP -12F)
  • 1x IP01 - USB programmēšanas interfeiss (FT232R)
  • 1x SW01 - uzlabots laika sensors (BME280)
  • 1x XC10 - 10 -Pack xBUS savienotāji
  • Arduino IDE
  • Ubidots konts

2. darbība. Aparatūras iestatīšana

Savienojiet CW01, SW01 un IP01 kopā, izmantojot XC10 xBUS savienotājus. Jūs varat to savienot, kā parādīts zemāk redzamajā diagrammā. Lūdzu, skatiet šo rokasgrāmatu par to, kā parasti salikt xChips.

Attēls
Attēls

Pēc tam pievienojiet ierīci un datoru, izmantojot IP01 USB. Lai to izdarītu, jums būs jāizmanto xFlasher programmatūra, lai mirgot kodu, kad tas būs gatavs. Skatiet šo rokasgrāmatu par xFlasher lietošanu.

3. darbība: Arduino IDE iestatīšana

1. Instalējiet Arduino IDE 1.8.8

2. Instalējiet šīs bibliotēkas programmā Arduino: ESP8266 Arduino, Ubidots ESP8266, xCore, xSW01.

PIEZĪME. Ja neesat pazīstams ar bibliotēku instalēšanu, lūdzu, skatiet saiti: Arduino bibliotēku instalēšana

3. Ja ir instalēta ESP8266 platforma, izvēlieties ESP8266 ierīci, ar kuru strādājat. Šajā gadījumā mēs strādājam ar “CW01 (ESP12F modulis)”. Lai izvēlētos savu dēli no Arduino IDE, izvēlieties Tools> Board “NodeMCU 1.0 (ESP12E modulis)”.

PIEZĪME. Šim nolūkam ESP12F un ESP12E ir savstarpēji aizvietojami.

4. darbība: izpratne par kodu

Ieskaitot bibliotēkas:

#include "UbidotsMicroESP8266.h"

#iekļaut #iekļaut

Ievadiet savus Wi-Fi un Ubidots akreditācijas datus:

#define TOKEN "Your-Token" // Ievieto šeit savu Ubidots TOKEN

#define WIFISSID "Tavs SSID" // Ievieto šeit savu Wi-Fi SSID #define PASSWORD "password-of-ssid" // Ievieto šeit savu Wi-Fi paroli

Jūsu unikālais Ubidots TOKEN tiek iegūts no jūsu Ubidots konta. Skatiet šo saiti, lai uzzinātu, kur atrast savu Ubidots TOKEN.

Vienreizēja iestatīšana, paskaidrojumus skatiet komentāros:

void setup () {

// Atkļūdošana pie 115200, izmantojot seriālo monitoru Serial.begin (115200); // Izveidojiet savienojumu ar piekļuves punkta klientu. WifiConnection (WIFISSID, PASSWORD); // Sākas I2C komunikācija Wire.begin (); // Palaidiet SW01 sensoru SW01.begin (); // ieviešam kādu kavēšanos, 2-3 sekunžu aizkavi (DELAY_TIME); }

Atkārtojiet darbību, lai tā nepārtraukti darbotos un tiktu atjaunināta:

void loop () {

// Izveidojiet mainīgo, lai saglabātu datus, kas nolasīti no SW01 pludiņa tempC, mitrums, spiediens, alt; // Ierīces mainīgo izveide tempC = 0; mitrums = 0; spiediens = 0; alt=0; // Aptaujas sensors datu vākšanai SW01.poll (); // Datu saglabāšana ierīces mainīgajos tempC = SW01.getTempC (); // Temperatūra pēc Celsija Serial.println ("Temperatūra:"); Sērijas nospiedums (tempC); Sērijas.println (" *C"); Sērijas.println (); mitrums = SW01.getHumidity (); Serial.println ("Mitrums:"); Sērijas nospiedums (mitrums); Serial.println (" %"); Sērijas.println (); spiediens = SW01.getPressure (); Serial.println ("Spiediens:"); Sērijas nospiedums (spiediens); Serial.println ("Pa"); Sērijas.println (); alt=SW01.getAltitude (101325); Serial.println ("Augstums:"); Sērijas nospiedums (alt); Serial.println ("m"); Sērijas.println (); // Izveidot ubidots mainīgos client.add ("Temperatūra (*C)", tempC); kavēšanās (500); client.add ("Mitrums (%)", mitrums); kavēšanās (500); client.add ("Spiediens (Pa)", spiediens); kavēšanās (500); client.add ("Augstums (m)", alt); // Sūtīt visus punktus client.sendAll (true); // aizkave starp sensora nolasījumiem, lai stabilizētu aizkavi (DELAY_TIME); }

Pilns kods:

#include "UbidotsMicroESP8266.h"

#include #include #define TOKEN "Your-Token" // Ievietojiet šeit savus Ubidots TOKEN #define WIFISSID "Your-SSID" // Ievietojiet šeit savu Wi-Fi SSID #define PASSWORD "password-of-ssid" // Ievietojiet šeit jūsu Wi-Fi parole Ubidots klients (TOKEN); const int DELAY_TIME = 2000; xSW01 SW01; // SW01 sensora void setup iestatīšanas objekts () {Serial.begin (115200); client.wifiConnection (WIFISSID, PASSWORD); Wire.begin (); // Palaidiet SW01 sensoru SW01.begin (); kavēšanās (DELAY_TIME); } void loop () {// Izveidojiet mainīgo, lai saglabātu datus, kas nolasīti no SW01 pludiņa tempC, mitrums, spiediens, alt; tempC = 0; mitrums = 0; spiediens = 0; alt=0; // Aptaujas sensors datu vākšanai SW01.poll (); // Datu saglabāšana mainīgajos atmiņā tempC = SW01.getTempC (); // Temperatūra pēc Celsija Serial.println ("Temperatūra:"); Sērijas nospiedums (tempC); Sērijas.println (" *C"); Sērijas.println (); mitrums = SW01.getHumidity (); Serial.println ("Mitrums:"); Sērijas nospiedums (mitrums); Serial.println (" %"); Sērijas.println (); spiediens = SW01.getPressure (); Serial.println ("Spiediens:"); Sērijas nospiedums (spiediens); Serial.println ("Pa"); Sērijas.println (); alt=SW01.getAltitude (101325); Serial.println ("Augstums:"); Sērijas nospiedums (alt); Serial.println ("m"); Sērijas.println (); // Izveidot ubidots mainīgos client.add ("Temperatūra (*C)", tempC); kavēšanās (500); client.add ("Mitrums (%)", mitrums); kavēšanās (500); client.add ("Spiediens (Pa)", spiediens); kavēšanās (500); client.add ("Augstums (m)", alt); // Sūtīt visus punktus client.sendAll (true); // aizkave starp sensora nolasījumiem, lai stabilizētu aizkavi (DELAY_TIME); }

5. darbība: piesakieties Ubidots

1. Atveriet savu Ubidots kontu. Jūs redzēsit ierīci ar nosaukumu “ESP8266” ar 4 mainīgajiem (skatiet attēlu zemāk).

Ierīces vizualizācija

Attēls
Attēls

Mainīgo vizualizācija

Attēls
Attēls

Ja vēlaties mainīt ierīces nosaukumu, izmantojiet kodu:

client.setDataSourceName ("Jauns_nosaukums");

6. darbība: informācijas paneļu izveide Ubidots

Informācijas paneļi (statiski un dinamiski) ir lietotāja saskarnes, lai organizētu un prezentētu ierīces datus un no tiem iegūtos ieskatus. Informācijas paneļos ir logrīki, kas attēlo datus kā diagrammas, rādītājus, vadīklas, tabulas, diagrammas un citus izmērus, formas un formas.

Lai izveidotu jaunu informācijas paneli savā Ubidots kontā, skatiet šo Ubidots apmācību, lai uzzinātu, kā to izdarīt.

Vienkārši atsaucei, kad jūsu Ubidots informācijas panelis ir izveidots, jums vajadzētu būt kaut kas līdzīgs zemāk redzamajam attēlam:

Attēls
Attēls

PRO PADOMS: Ir arī virkne grafiku un ziņošanas rīku. Ja vēlaties uzzināt vairāk par to, iesakām iepazīties ar šo rokasgrāmatu.

Attēls
Attēls

7. darbība. Kopsavilkums

Šajā apmācībā mēs esam parādījuši, kā kodēt un savienot XinaBox laika staciju ar Ubidots. Tas ļauj attālināti uzraudzīt un to var pabeigt 10-15 minūšu laikā.

Arī citi lasītāji ir atraduši noderīgu…

  • UbiFunctions: integrējiet datus no AmbientWeather platformas uz Ubidots
  • Analītika: Sintētisko mainīgo pamati
  • Temperatūras kontrole ar Ubidots MQTT un NodeMcu

Ieteicams: