Πίνακας περιεχομένων:

Πώς να χτίσετε έναν μετεωρολογικό σταθμό χρησιμοποιώντας το XinaBox και το Ubidots μέσω HTTP: 7 βήματα
Πώς να χτίσετε έναν μετεωρολογικό σταθμό χρησιμοποιώντας το XinaBox και το Ubidots μέσω HTTP: 7 βήματα

Βίντεο: Πώς να χτίσετε έναν μετεωρολογικό σταθμό χρησιμοποιώντας το XinaBox και το Ubidots μέσω HTTP: 7 βήματα

Βίντεο: Πώς να χτίσετε έναν μετεωρολογικό σταθμό χρησιμοποιώντας το XinaBox και το Ubidots μέσω HTTP: 7 βήματα
Βίντεο: Φτιάξε ενα μικρό μετεωρολογικό σταθμό 2024, Ιούλιος
Anonim
Πώς να φτιάξετε έναν μετεωρολογικό σταθμό χρησιμοποιώντας το XinaBox και το Ubidots μέσω HTTP
Πώς να φτιάξετε έναν μετεωρολογικό σταθμό χρησιμοποιώντας το XinaBox και το Ubidots μέσω HTTP

Μάθετε πώς να φτιάξετε τον δικό σας Μετεωρολογικό Σταθμό στο Ubidots, χρησιμοποιώντας το XinaBox xChips (IP01, CW01 και SW01)

Εικόνα
Εικόνα

Η μονάδα ESP8266 Core and Wi-Fi (xChip CW01) επιτρέπει στους χρήστες να στέλνουν δεδομένα από τα αρθρωτά xChips της XinaBox στο cloud. Αυτά τα δεδομένα μπορούν να παρακολουθούνται εξ αποστάσεως στο Ubidots, όπου οι χρήστες μπορούν να επωφεληθούν από τη γκάμα των εργαλείων IoT.

Ο xChip SW01 Advanced Weather Sensor (Bosch BME280) μετρά τη θερμοκρασία, την υγρασία και την ατμοσφαιρική πίεση, από τα οποία μπορούν επίσης να υπολογιστούν το υψόμετρο, η βάση του νέφους και το σημείο δρόσου.

Σε αυτό το σεμινάριο χρησιμοποιούμε πρωτόκολλο HTTP για την αποστολή δεδομένων αισθητήρων στο Ubidots. Αυτό θα μπορούσε επίσης να γίνει χρησιμοποιώντας πρωτόκολλο MQTT.

Μέχρι το τέλος αυτού του οδηγού, θα μπορείτε να παρακολουθείτε και να μετράτε τις καιρικές συνθήκες στη συσκευή σας XinaBox από οπουδήποτε απομακρυσμένα χρησιμοποιώντας το Ubidots.

Βήμα 1: Απαιτήσεις

  • 1x CW01 - πυρήνας WiFi (ESP8266/ESP -12F)
  • 1x IP01 - Διασύνδεση προγραμματισμού USB (FT232R)
  • 1x SW01 - Advanced Weather Sensor (BME280)
  • 1x XC10 - 10 συσκευασίες xBUS Συνδετήρες
  • Arduino IDE
  • Λογαριασμός Ubidots

Βήμα 2: Ρύθμιση υλικού

Συνδέστε τα CW01, SW01 και IP01 μαζί χρησιμοποιώντας τις υποδοχές XC10 xBUS. Μπορείτε να το συνδέσετε όπως φαίνεται στο παρακάτω διάγραμμα. Ανατρέξτε σε αυτόν τον οδηγό σχετικά με τον τρόπο γενικής συναρμολόγησης των xChips.

Εικόνα
Εικόνα

Στη συνέχεια, συνδέστε τη συσκευή και τον υπολογιστή σας μέσω USB του IP01. Για αυτό, θα χρειαστεί να χρησιμοποιήσετε το λογισμικό xFlasher για να αναβοσβήνει ο κώδικας μόλις είναι έτοιμος. Δείτε αυτόν τον οδηγό για τη χρήση του xFlasher.

Βήμα 3: Ρύθμιση του Arduino IDE

1. Εγκαταστήστε το Arduino IDE 1.8.8

2. Εγκαταστήστε αυτές τις βιβλιοθήκες στο Arduino: ESP8266 Arduino, Ubidots ESP8266, xCore, xSW01.

ΣΗΜΕΙΩΣΗ: Εάν δεν είστε εξοικειωμένοι με τον τρόπο εγκατάστασης βιβλιοθηκών, ανατρέξτε στον σύνδεσμο: Εγκατάσταση βιβλιοθηκών Arduino

3. Με εγκατεστημένη την πλατφόρμα ESP8266, επιλέξτε τη συσκευή ESP8266 με την οποία εργάζεστε. Στην περίπτωση, εργαζόμαστε με ένα "CW01 (μονάδα ESP12F)". Για να επιλέξετε την πλακέτα σας από το Arduino IDE, επιλέξτε Εργαλεία> Πίνακας "NodeMCU 1.0 (μονάδα ESP12E)".

ΣΗΜΕΙΩΣΗ: Τα ESP12F και ESP12E είναι εναλλάξιμα για το σκοπό αυτό.

Βήμα 4: Κατανόηση του κώδικα

Συμπεριλαμβανομένων των βιβλιοθηκών:

#include "UbidotsMicroESP8266.h"

#συμπεριλάβω #συμπεριλάβω

Εισαγάγετε τα διαπιστευτήρια Wi-Fi και Ubidots:

#define TOKEN "Your-Token" // Βάλτε εδώ το Ubidots TOKEN σας

#define WIFISSID "Your-SSID" // Βάλτε εδώ το Wi-Fi SSID σας #define PASSWORD "password-of-ssid" // Βάλτε εδώ τον κωδικό πρόσβασης Wi-Fi

Το μοναδικό σας Ubidots TOKEN προέρχεται από τον λογαριασμό σας στο Ubidots. Ανατρέξτε στον παρακάτω σύνδεσμο για να μάθετε πού μπορείτε να βρείτε το Ubidots TOKEN.

Μία φορά ρύθμιση, δείτε τα σχόλια για αυτοεξήγηση:

void setup () {

// Εντοπισμός σφαλμάτων στο 115200 χρησιμοποιώντας σειριακή οθόνη Serial.begin (115200); // Σύνδεση με το client.wifiConnection Access Point (WIFISSID, PASSWORD); // Η επικοινωνία I2C ξεκινά Wire.begin (); // Εκκινήστε τον αισθητήρα SW01 SW01.begin (); // Παρουσίαση κάποιας καθυστέρησης, καθυστέρησης 2-3 δευτερολέπτων (DELAY_TIME). }

Βιδώστε τη λειτουργία, για να τη διατηρείτε σε λειτουργία και να ενημερώνεται συνεχώς:

void loop () {

// Δημιουργήστε μια μεταβλητή για να αποθηκεύσετε τα δεδομένα που διαβάζονται από SW01 float tempC, υγρασία, πίεση, alt. // Δημιουργία μεταβλητών συσκευής tempC = 0; υγρασία = 0; πίεση = 0; alt=0; // Αισθητήρας δημοσκόπησης για τη συλλογή δεδομένων SW01.poll (); // Αποθήκευση δεδομένων σε μεταβλητές συσκευής tempC = SW01.getTempC (); // Θερμοκρασία σε Κελσίου Serial.println ("Θερμοκρασία:"); Serial.print (tempC); Serial.println (" *C"); Serial.println (); υγρασία = SW01.getHumidity (); Serial.println ("Υγρασία:"); Serial.print (υγρασία)? Serial.println (" %"); Serial.println (); πίεση = SW01.getPressure (); Serial.println ("Πίεση:"); Serial.print (πίεση); Serial.println ("Pa"); Serial.println (); alt=SW01.getAltitude (101325); Serial.println ("Υψόμετρο:"); Serial.print (alt); Serial.println ("m"); Serial.println (); // Δημιουργία μεταβλητών ubidots client.add ("Θερμοκρασία (*C)", tempC); καθυστέρηση (500)? client.add ("Υγρασία (%)", υγρασία); καθυστέρηση (500)? client.add ("Πίεση (Pa)", πίεση); καθυστέρηση (500)? client.add ("Υψόμετρο (m)", alt); // Αποστολή όλων των κουκκίδων client.sendAll (true); // καθυστέρηση ανάγνωσης αισθητήρα για σταθεροποίηση της καθυστέρησης (DELAY_TIME). }

Ο πλήρης κωδικός:

#include "UbidotsMicroESP8266.h"

#include #include #define TOKEN "Your-Token" // Βάλτε εδώ τα Ubidots TOKEN #define WIFISSID "Your-SSID" // Βάλτε εδώ το Wi-Fi SSID σας #define PASSWORD "password-of-ssid" // Βάλτε εδώ τον κωδικό πρόσβασης Wi-Fi πελάτη Ubidots (TOKEN). const int DELAY_TIME = 2000; xSW01 SW01; // Δημιουργία αντικειμένου του αισθητήρα SW01 void setup () {Serial.begin (115200); client.wifiConnection (WIFISSID, PASSWORD); Wire.begin (); // Εκκινήστε τον αισθητήρα SW01 SW01.begin (); καθυστέρηση (DELAY_TIME) } void loop () {// Δημιουργήστε μια μεταβλητή για να αποθηκεύσετε τα δεδομένα που διαβάζονται από SW01 float tempC, υγρασία, πίεση, alt. tempC = 0; υγρασία = 0; πίεση = 0; alt=0; // Αισθητήρας δημοσκόπησης για τη συλλογή δεδομένων SW01.poll (); // Αποθήκευση δεδομένων σε μεταβλητές μνήμης tempC = SW01.getTempC (); // Θερμοκρασία σε Κελσίου Serial.println ("Θερμοκρασία:"); Serial.print (tempC); Serial.println (" *C"); Serial.println (); υγρασία = SW01.getHumidity (); Serial.println ("Υγρασία:"); Serial.print (υγρασία)? Serial.println (" %"); Serial.println (); πίεση = SW01.getPressure (); Serial.println ("Πίεση:"); Serial.print (πίεση); Serial.println ("Pa"); Serial.println (); alt=SW01.getAltitude (101325); Serial.println ("Υψόμετρο:"); Serial.print (alt); Serial.println ("m"); Serial.println (); // Δημιουργία μεταβλητών ubidots client.add ("Θερμοκρασία (*C)", tempC); καθυστέρηση (500)? client.add ("Υγρασία (%)", υγρασία); καθυστέρηση (500)? client.add ("Πίεση (Pa)", πίεση); καθυστέρηση (500)? client.add ("Υψόμετρο (m)", alt); // Αποστολή όλων των κουκκίδων client.sendAll (true); // καθυστέρηση ανάγνωσης αισθητήρα για σταθεροποίηση της καθυστέρησης (DELAY_TIME). }

Βήμα 5: Συνδεθείτε στο Ubidots

1. Ανοίξτε τον λογαριασμό σας στο Ubidots. Θα δείτε μια συσκευή με το όνομα "ESP8266" με 4 μεταβλητές (δείτε την παρακάτω εικόνα).

Οπτικοποίηση συσκευής

Εικόνα
Εικόνα

Οπτικοποίηση μεταβλητών

Εικόνα
Εικόνα

Εάν θέλετε να αλλάξετε το όνομα της συσκευής, χρησιμοποιήστε τον κωδικό:

client.setDataSourceName ("New_name");

Βήμα 6: Δημιουργία πίνακα ελέγχου σε Ubidots

Οι πίνακες ελέγχου (στατικοί και δυναμικοί) είναι διεπαφές χρήστη για την οργάνωση και παρουσίαση των δεδομένων μιας συσκευής και των πληροφοριών που προέρχονται από τα δεδομένα. Οι πίνακες ελέγχου περιέχουν γραφικά στοιχεία που εμφανίζουν τα δεδομένα ως γραφήματα, δείκτες, στοιχεία ελέγχου, πίνακες, γραφήματα και άλλα μεγέθη, σχήματα και φόρμες.

Για να δημιουργήσετε έναν νέο Πίνακα ελέγχου στον λογαριασμό σας στο Ubidots, ανατρέξτε στο ακόλουθο σεμινάριο Ubidots για να μάθετε πώς να το κάνετε.

Ακριβώς ως αναφορά, μόλις δημιουργηθεί ο Πίνακας ελέγχου Ubidots, θα πρέπει να έχετε κάτι παρόμοιο με την παρακάτω εικόνα:

Εικόνα
Εικόνα

ΣΥΜΒΟΥΛΗ PRO: Υπάρχει επίσης μια σειρά από εργαλεία γραφικών παραστάσεων και αναφοράς. Αν θέλετε να μάθετε περισσότερα σχετικά με αυτό, σας συνιστούμε να ελέγξετε αυτόν τον οδηγό.

Εικόνα
Εικόνα

Βήμα 7: Περίληψη

Σε αυτό το σεμινάριο, έχουμε δείξει πώς να κωδικοποιείτε και να συνδέετε έναν μετεωρολογικό σταθμό XinaBox στο Ubidots. Αυτό επιτρέπει την απομακρυσμένη παρακολούθηση και μπορεί να ολοκληρωθεί μέσα σε 10-15 λεπτά.

Άλλοι αναγνώστες βρήκαν επίσης χρήσιμο…

  • UbiFunctions: Ενσωματώστε δεδομένα από την πλατφόρμα AmbientWeather στο Ubidots
  • Analytics: Βασικές συνθετικές μεταβλητές
  • Έλεγχος θερμοκρασίας με Ubidots MQTT και NodeMcu

Συνιστάται: