Sommario:
- Passaggio 1: requisiti
- Passaggio 2: configurazione hardware
- Passaggio 3: configurazione dell'IDE Arduino
- Passaggio 4: comprensione del codice
- Passaggio 5: accedi a Ubidots
- Passaggio 6: creazione di dashboard in Ubidots
- Passaggio 7: riepilogo
Video: Come costruire una stazione meteorologica usando XinaBox e Ubidots su HTTP: 7 passaggi
2024 Autore: John Day | [email protected]. Ultima modifica: 2024-01-30 10:02
Scopri come creare la tua stazione meteorologica su Ubidots, utilizzando XinaBox xChips (IP01, CW01 e SW01)
Il modulo ESP8266 Core e Wi-Fi (xChip CW01) consente agli utenti di inviare dati dagli xChips modulari di XinaBox al cloud. Questi dati possono essere monitorati da remoto in Ubidots, dove gli utenti possono sfruttare la loro gamma di strumenti IoT.
Il sensore meteorologico avanzato xChip SW01 (Bosch BME280) misura la temperatura, l'umidità e la pressione atmosferica, da cui è possibile calcolare anche l'altitudine, la base delle nuvole e il punto di rugiada.
In questo tutorial utilizziamo il protocollo HTTP per inviare i dati del sensore a Ubidots. Questo potrebbe essere fatto anche utilizzando il protocollo MQTT.
Alla fine di questa guida, sarai in grado di monitorare e misurare le condizioni meteorologiche sul tuo dispositivo XinaBox da qualsiasi luogo in remoto utilizzando Ubidots.
Passaggio 1: requisiti
- 1x CW01 - Nucleo WiFi (ESP8266/ESP-12F)
- 1x IP01 - Interfaccia di programmazione USB (FT232R)
- 1x SW01 - Sensore meteorologico avanzato (BME280)
- 1x XC10 - connettori xBUS da 10 pezzi
- Arduino IDE
- Conto Ubidots
Passaggio 2: configurazione hardware
Collegare CW01, SW01 e IP01 insieme utilizzando i connettori XC10 xBUS. Puoi collegarlo come mostrato nello schema qui sotto. Si prega di consultare questa guida su come assemblare xChips in generale.
Quindi, collega il dispositivo e il PC tramite l'USB dell'IP01. Per questo, dovrai utilizzare il software xFlasher per eseguire il flashing del codice una volta pronto. Vedi questa guida sull'uso di xFlasher.
Passaggio 3: configurazione dell'IDE Arduino
1. Installa Arduino IDE 1.8.8
2. Installa queste librerie su Arduino: ESP8266 Arduino, Ubidots ESP8266, xCore, xSW01.
NOTA: se non si ha familiarità con l'installazione delle librerie, fare riferimento al collegamento: Installazione delle librerie Arduino
3. Con la piattaforma ESP8266 installata, seleziona il dispositivo ESP8266 con cui stai lavorando. Nel caso, stiamo lavorando con un "CW01 (modulo ESP12F)". Per selezionare la tua scheda dall'IDE Arduino, seleziona Strumenti > Scheda "NodeMCU 1.0 (modulo ESP12E)".
NOTA: ESP12F ed ESP12E sono intercambiabili per questo scopo.
Passaggio 4: comprensione del codice
Comprese le librerie:
#include "UbidotsMicroESP8266.h"
#include #include
Inserisci le tue credenziali Wi-Fi e Ubidots:
#define TOKEN "Your-Token" // Metti qui il tuo TOKEN Ubidots
#define WIFISSID "Your-SSID" // Inserisci qui il tuo SSID Wi-Fi #define PASSWORD "password-of-ssid" // Inserisci qui la tua password Wi-Fi
Il tuo TOKEN Ubidots unico è ottenuto dal tuo account Ubidots. Fai riferimento al seguente link per sapere dove trovare il tuo TOKEN Ubidots.
Configurazione una tantum, vedere i commenti per l'auto-esplicazione:
void setup() {
//Debug a 115200 utilizzando il monitor seriale Serial.begin(115200); //Connettiti all'Access Point client.wifiConnection(WIFISSID, PASSWORD); // Inizia la comunicazione I2C Wire.begin(); // Avvia il sensore SW01 SW01.begin(); // Introducendo un po' di ritardo, 2-3 secondi di ritardo (DELAY_TIME); }
Ripeti l'operazione, per mantenerla in esecuzione e aggiornarsi continuamente:
ciclo vuoto() {
// Crea una variabile per memorizzare i dati letti da SW01 float tempC, umidità, pressione, alt; //Creazione delle variabili del dispositivo tempC = 0; umidità = 0; pressione = 0; alt=0; // Poll Sensor per la raccolta dei dati SW01.poll(); //Salvataggio dei dati nelle variabili del dispositivo tempC = SW01.getTempC(); // Temperatura in gradi Celsius Serial.println("Temperature: "); Serial.print(tempC); Serial.println("*C"); Serial.println(); umidità = SW01.getHumidity(); Serial.println("Umidità: "); Serial.print(umidità); Serial.println("%"); Serial.println(); pressione = SW01.getPressure(); Serial.println("Pressione: "); Serial.print(pressione); Serial.println("Pa"); Serial.println(); alt=SW01.getAltitude(101325); Serial.println("Altitudine: "); Serial.print(alt); Serial.println("m"); Serial.println(); //Crea variabili ubidot client.add("Temperatura (*C)", tempC); ritardo (500); client.add("Umidità (%)", umidità); ritardo (500); client.add("Pressione (Pa)", pressione); ritardo (500); client.add("Altitudine (m)", alt); //Invia tutti i punti client.sendAll(true); // ritardo tra le letture del sensore per stabilizzare il ritardo (DELAY_TIME); }
Il codice completo:
#include "UbidotsMicroESP8266.h"
#include #include #define TOKEN "Your-Token" // Inserisci qui il tuo TOKEN Ubidots #define WIFISSID "Your-SSID" // Inserisci qui il tuo SSID Wi-Fi #define PASSWORD "password-of-ssid" // Inserisci qui la tua password Wi-Fi client Ubidots (TOKEN); const int DELAY_TIME = 2000; xSW01 SW01; //Creazione oggetto del sensore SW01 void setup() { Serial.begin(115200); client.wifiConnection(WIFISSID, PASSWORD); Wire.begin(); // Avvia il sensore SW01 SW01.begin(); ritardo(DELAY_TIME); } void loop() { // Crea una variabile per memorizzare i dati letti da SW01 float tempC, umidità, pressione, alt; tempC = 0; umidità = 0; pressione = 0; alt=0; // Poll Sensor per la raccolta dei dati SW01.poll(); //Salvataggio dei dati nella memoria delle variabili tempC = SW01.getTempC(); // Temperatura in gradi Celsius Serial.println("Temperature: "); Serial.print(tempC); Serial.println("*C"); Serial.println(); umidità = SW01.getHumidity(); Serial.println("Umidità: "); Serial.print(umidità); Serial.println("%"); Serial.println(); pressione = SW01.getPressure(); Serial.println("Pressione: "); Serial.print(pressione); Serial.println("Pa"); Serial.println(); alt=SW01.getAltitude(101325); Serial.println("Altitudine: "); Serial.print(alt); Serial.println("m"); Serial.println(); //Crea variabili ubidot client.add("Temperatura (*C)", tempC); ritardo (500); client.add("Umidità (%)", umidità); ritardo (500); client.add("Pressione (Pa)", pressione); ritardo (500); client.add("Altitudine (m)", alt); //Invia tutti i punti client.sendAll(true); // ritardo tra le letture del sensore per stabilizzare il ritardo (DELAY_TIME); }
Passaggio 5: accedi a Ubidots
1. Apri il tuo account Ubidots. Vedrai un dispositivo chiamato "ESP8266" con 4 variabili (vedi immagine sotto).
Visualizzazione del dispositivo
Visualizzazione delle variabili
Se vuoi cambiare il nome del dispositivo, usa il codice:
client.setDataSourceName("Nuovo_nome");
Passaggio 6: creazione di dashboard in Ubidots
I dashboard (statici e dinamici) sono interfacce utente per organizzare e presentare i dati di un dispositivo e gli insight derivati dai dati. I dashboard contengono widget che visualizzano i dati come grafici, indicatori, controlli, tabelle, grafici e altre dimensioni, forme e moduli.
Per creare una nuova Dashboard nel tuo account Ubidots, fai riferimento al seguente tutorial Ubidots per imparare come farlo.
Solo come riferimento, una volta creata la tua Dashboard Ubidots dovresti avere qualcosa di simile all'immagine qui sotto:
SUGGERIMENTO: È disponibile anche una gamma di strumenti grafici e di reportistica. Se vuoi saperne di più, ti consigliamo di consultare questa guida.
Passaggio 7: riepilogo
In questo tutorial, abbiamo mostrato come codificare e connettere una stazione meteo XinaBox a Ubidots. Ciò consente il monitoraggio remoto e può essere completato entro 10-15 minuti.
Anche altri lettori hanno trovato utile…
- UbiFunctions: integra i dati dalla piattaforma AmbientWeather a Ubidots
- Analisi: nozioni di base sulle variabili sintetiche
- Controllo della temperatura con Ubidots MQTT e NodeMcu
Consigliato:
Come creare una stazione meteorologica semplice: 8 passaggi
Come realizzare una semplice stazione meteorologica: ciao ragazzi, in questo video vi mostrerò come realizzare una semplice stazione meteorologica per rilevare la temperatura e l'umidità utilizzando il sensore DHT11
Come realizzare una stazione meteorologica IoT tascabile: 7 passaggi (con immagini)
Come realizzare una stazione meteorologica IoT tascabile: Ciao lettore! In questo tutorial imparerai come creare un piccolo Weather Cube usando il D1 mini (ESP8266) che è collegato al WiFi di casa, in modo da poter guardare il suo output ovunque dalla terra, ovviamente purché disponi di una connessione a Internet
Come costruire una stazione di monitoraggio del comfort: 10 passaggi (con immagini)
Come costruire una stazione di monitoraggio del comfort: questa istruzione descrive la progettazione e la costruzione di una cosiddetta stazione di monitoraggio del comfort CoMoS, un dispositivo sensore combinato per le condizioni ambientali, sviluppato presso il dipartimento dell'ambiente costruito presso TUK, Technische Universität Ka
Come creare una semplice stazione meteorologica usando Arduino: 6 passaggi (con immagini)
Come creare una semplice stazione meteorologica usando Arduino: Ciao ragazzi, in questo Instructable spiegherò come realizzare una semplice stazione meteorologica per rilevare la temperatura e l'umidità utilizzando il sensore DHT11 e Arduino, i dati rilevati verranno visualizzati sul display LCD. Prima di iniziare questo tutorial devi sapere che
Inizia a costruire una stazione di monitoraggio PM: 3 passaggi (con immagini)
Inizia a costruire una stazione di monitoraggio PM: sono particolarmente interessato ai livelli di inquinamento atmosferico, perché vivo in Cina e mentre la mia città, Shenzhen, è probabilmente una delle città più pulite della Cina, ha ancora i suoi giorni brutti. volevo costruire il mio da confrontare con l'aria di mezza dozzina