Stazione meteo Blynk: 7 passaggi
Stazione meteo Blynk: 7 passaggi
Anonim
Stazione meteo Blynk
Stazione meteo Blynk

Ricevi aggiornamenti meteo direttamente sul tuo dispositivo mobile dalla tua stazione meteo! Costruzione sorprendentemente facile e veloce con xChips.

Passaggio 1: cose utilizzate in questo progetto

Componenti hardware

  • XinaBox CW01 x 1
  • XinaBox SW01 x 1
  • XinaBox SL01 x 1
  • XinaBox OD01 x 1
  • XinaBox IP01 x 1
  • XinaBox XC10 x 1

App software e servizi online

  • Arduino IDE
  • Blynk

Fase 2: Storia

introduzione

Ho costruito questo progetto usando XinaBox xChips e Arduino IDE. Si tratta di un progetto di 5 minuti, che permette di ricevere i dati meteo sul telefono tramite l'app Blynk e sullo schermo OLED dell'OD01. Questo progetto è così utile perché puoi monitorare il meteo ovunque tu scelga e ricevere aggiornamenti direttamente sul tuo telefono tramite l'app. Ho scelto di utilizzare gli xChips perché sono facili da usare, eliminano anche la necessità di saldature e di una progettazione seria del circuito. Usando Arduino IDE potrei facilmente programmare gli xChips.

Passaggio 3: download delle librerie

  • Vai a Github.xinabox
  • Scarica xCore ZIP
  • Installalo nell'IDE Arduino andando su "Sketch", "Includi libreria", quindi "Aggiungi libreria. ZIP". Come visto di seguito

Figura 1: aggiunta delle librerie ZIP

  • Scarica xSW01 ZIP
  • Aggiungi la libreria nello stesso modo in cui hai fatto per xCore.
  • Ripetere per xSL01 e xOD01
  • È inoltre necessario installare la libreria Blynk in modo da poter utilizzare l'app. Potete trovare qui
  • Prima di poter programmare, devi assicurarti di utilizzare la scheda corretta. In questo progetto utilizzo l'ESP8266 generico che si trova nell'xChip CW01. Puoi scaricare la libreria della scheda qui.

Passaggio 4: programmazione

Collegare IP01, CW01, SW01, SL01 e OD01 utilizzando connettori xBUS. Assicurati che i nomi degli xChips siano orientati correttamente

Figura 2: xChip collegati

  • Ora inserisci l'IP01 e gli xChips collegati in una porta USB disponibile.
  • Scarica o copia e incolla il codice dall'intestazione "CODE" nel tuo IDE Arduino. Inserisci il tuo token di autenticazione, il nome WiFi e la password dove indicato.
  • In alternativa puoi creare il tuo codice utilizzando i principi pertinenti per raggiungere lo stesso obiettivo
  • Per assicurarti che non ci siano errori compila il codice.

Passaggio 5: configurazione di Blynk

  • Dopo aver installato l'app Blynk gratuitamente dal tuo app store, è il momento di eseguire la configurazione del progetto.
  • Prima di fare clic su "Accedi" dopo aver inserito l'indirizzo e-mail e la password, assicurati che le "Impostazioni server" siano impostate su "BLYNK".

Figura 3: Impostazioni del server

  • Accesso.
  • Crea nuovo progetto.
  • Scegli il dispositivo "ESP8266"

Figura 4: Scelta del dispositivo/scheda

  • Assegna un nome al progetto
  • Ricevi la notifica "Auth Token" e l'e-mail contenente il "Auth Token".

Figura 5: notifica del token di autenticazione

Vai alla "Casella dei widget"

Figura 6: riquadro dei widget

  • Aggiungi 4 "Pulsanti" e 4 "Visualizzatori di valori"
  • Assegnare ai rispettivi "Pulsanti" e "Visualizzatori valore" i rispettivi Pin virtuali come specificato nel "CODICE". Ho usato i numeri pari per i "Pulsanti" e i corrispondenti numeri dispari per i "Visualizzatori di valore"
  • Questa configurazione può essere regolata in base alle proprie esigenze mentre si modifica il codice.

Figura 7: Project Dashboard (Disclaimer: ignora i valori questo è uno screenshot dopo aver testato la stazione meteorologica. Il tuo dovrebbe essere simile, solo con facce vuote come V7)

Passaggio 6: caricamento del codice

  • Dopo aver compilato con successo il passaggio 2 (nessun errore trovato) puoi caricare il codice sul tuo xChips. Assicurati che gli interruttori siano rivolti rispettivamente a "B" e "DCE" prima del caricamento.
  • Una volta che il caricamento è andato a buon fine, apri l'app Blynk sul tuo dispositivo mobile.
  • Apri il tuo progetto dal passaggio 3.

Figura 8

  • Premi play e premi i rispettivi "Pulsanti" in modo che i dati possano essere visualizzati nella tua app e sullo schermo OLED.
  • Ora la tua stazione meteorologica Blynk è pronta per partire!

Passaggio 7: codice

Blynk_Weather_Station.ino Arduino Codice Arduino per Stazione Meteo con Blynk e xCHIPS. Questo codice ti consente di controllare in modalità wireless la stazione meteo dal tuo dispositivo mobile e ricevere gli aggiornamenti dei dati meteo direttamente sul tuo dispositivo mobile dalla stazione meteo xCHIP

#include //include la libreria principale

#include //include libreria di sensori meteorologici #include //include libreria di sensori di luce #include //include libreria ESP8266 per WiFi #include //include libreria Blynk da utilizzare con ESP8266 #include //include libreria OLEDxSW01 SW01; //xSL01 SL01; galleggiante TempC; galleggiante Umidità; galleggiante UVA; float UV_Index; // token di autenticazione che ti è stato inviato via email // copia e incolla il token tra virgolette char auth = "your auth token"; // le tue credenziali wifi char WIFI_SSID = "il tuo nome WiFi"; // inserisci il tuo nome wifi tra virgolette char WIFI_PASS = "la tua password WiFi"; // inserisci la tua password wifi tra le doppie virgolette del timer BlynkTimer; // VirtualPin per la temperatura BLYNK_WRITE(V2){ int pinValue = param.asInt(); // assegna il valore in ingresso dal pin V1 a una variabile if(pinValue == 1) { Blynk.virtualWrite(V1, TempC); OD01.println("Temp_C:"); OD01.println(TempC); } else{ } } // VirtualPin per l'umidità BLYNK_WRITE(V4){ int pin_value = param.asInt(); // assegnazione del valore in ingresso dal pin V3 a una variabile if(pin_value == 1) { Blynk.virtualWrite(V3, Humidity); OD01.println("Umidità:"); OD01.println(Umidità); } else{ } } // VirtualPin per UVA BLYNK_WRITE(V6){ int pinvalue = param.asInt(); // assegna il valore in ingresso dal pin V5 a una variabile if(pinvalue == 1) { Blynk.virtualWrite(V5, UVA); OD01.println("UVA:"); OD01.println(UVA); } else{ } } // VirtualPin per UV_Index BLYNK_WRITE(V8){ int pin_Value = param.asInt(); // assegna il valore in ingresso dal pin V7 a una variabile if(pin_Value == 1) { Blynk.virtualWrite(V7, UV_Index); OD01.println("Indice_UV:"); OD01.println(Indice_UV); } else{ } } void setup() { // Debug console TempC = 0; Serial.begin(115200); Wire.begin(2, 14); SW01.begin(); OLED.begin(); SL01.begin(); Blynk.begin(auth, WIFI_SSID, WIFI_PASS); ritardo (2000); } loop vuoto() { SW01.poll(); TempC = SW01.getTempC(); Umidità = SW01.getHumidity(); SL01.poll(); UVA = SL01.getUVA(); Indice_UV = SL01.getIndice UV(); Blynk.run(); }

Consigliato: