Sadržaj:

Povežite svoj Magicbit sa pločom sa stvarima: 3 koraka
Povežite svoj Magicbit sa pločom sa stvarima: 3 koraka

Video: Povežite svoj Magicbit sa pločom sa stvarima: 3 koraka

Video: Povežite svoj Magicbit sa pločom sa stvarima: 3 koraka
Video: How to Crochet: Classic V Neck Sweater | Pattern & Tutorial DIY 2024, Studeni
Anonim
Povežite svoj Magicbit sa pločom za stvari
Povežite svoj Magicbit sa pločom za stvari

U ovom ćemo projektu poslati podatke sa senzora spojenih na magicbit koje možemo vizualno prikazati na ploči sa stvarima.

Pribor:

  • Magicbit
  • DHT11 Senzor temperature i vlage (4 pina)

Korak 1: Priča

Priča
Priča
Priča
Priča
Priča
Priča
Priča
Priča

Uvod

ThingsBoard je platforma sa poslužitelja otvorenog koda koja vam omogućuje nadzor i kontrolu IoT uređaja. Besplatan je za osobnu i komercijalnu uporabu i možete ga postaviti bilo gdje. Ako vam je ovo prvo iskustvo s platformom, preporučujemo vam da pregledate stranicu što je-to-ploča i vodič za početak rada.

Ovaj uzorak aplikacije omogućit će vam da prikažete podatke o vlažnosti/temperaturi sa senzora DHT11 pomoću vašeg čarobnog uređaja i web -sučelja ThingsBoard.

Aplikacija koja se izvodi na Magicbit uređaju napisana je pomoću ThingsBoard Arduino SDK -a koji je prilično jednostavan i lako razumljiv.

Nakon što dovršite ovaj uzorak/vodič, vidjet ćete svoje podatke senzora na sljedećoj nadzornoj ploči.

Posjetite službenu stranicu Thingsboard Demo i prijavite se.

Nakon prijave Na lijevoj bočnoj traci vidjet ćete Uređaji. Kliknite uređaji i dodajte novi uređaj.

Na kartici vjerodajnice označite karticu Dodaj vjerodajnice i odaberite pristupni token iz padajućeg okvira. Ili možete dodati vlastiti pristupni token ili ostaviti prazno za automatsko generiranje tokena.

Postavite uređaj na magicbit u aliasu. Idite na karticu nadzorne ploče i uvezite nadzornu ploču.

Slijedite ove korake na slikama za uvoz nadzorne ploče. U privitcima pronađite demo JSON datoteku pod nazivom "magicbit_temperature_humidity_demo_dashboard.json".

Spojite svoj čarobni bit s DHT11 modulom na sljedeći način na pin 33.

U Arduino IDE -u preuzmite gore navedene knjižnice.

Slijedi Arduino kôd koji ćete koristiti.

Napomena Na skici morate urediti sljedeće konstante i varijable:

  • WIFI_AP - naziv vaše pristupne točke
  • WIFI_PASSWORD - lozinka pristupne točke
  • TOKEN - $ ACCESS_TOKEN iz koraka konfiguracije ThingsBoarda.
  • THINGSBOARD_SERVER - HOST/IP adresa ThingsBoarda koja je dostupna unutar vaše WiFi mreže. Navedite demo.thingsboard.io ako koristite demo poslužitelj uživo.

Korak 2: Arduino kod

#include // DHT za knjižnicu Library#include // WiFi kontrola za ESP32#include // ThingsBoard SDK#definirajte DHTPIN 33 // na koji smo digitalni pin povezani#definirajte DHTTYPE DHT11 // DHT 11DHT dht (DHTPIN, DHTTYPE); // Pomoćni makro za izračunavanje veličine niza#define COUNT_OF (x) ((sizeof (x)/ sizeof (0 [x]))/ ((size_t) (! (Sizeof (x) % sizeof (0 [x]))))) // WiFi pristupna točka#definiraj WIFI_AP_NAME "4G" // "WIFI_AP" // WiFi lozinka#definiraj WIFI_PASSWORD "nevergiveup" // "WIFI_PASSWORD" // Vidi https://thingsboard.io/docs/getting- started-guides/helloworld /// da biste razumjeli kako dobiti pristupni token#define TOKEN "XZjQ26r9XJcsNkWGuASY" // "TOKEN" // ThingsBoard poslužitelj instanca.#define THINGSBOARD_SERVER "demo.thingsboard.io" // Brzina prijenosa za otklanjanje pogrešaka serijski #define SERIAL_DEBUG_BAUD 115200 // Inicijalizacija ThingsBoard clientWiFiClient espClient; // Inicijalizacija ThingsBoard instanceThingsBoard tb (espClient); // statusin status Wifi radija = WL_IDLE_STATUS; // Razdoblje slanja podataka o temperaturi/vlažnosti = 2000 send_delay; unsigned long millis_counter; void InitWiFi () {Serial.println ("Spajanje na AP …"); // pokušaj povezivanja na WiFi mrežu WiFi.begin (WIFI_AP_NAME, WIFI_PASSWORD); while (WiFi.status ()! = WL_CONNECTED) {odgoda (500); Serial.print ("."); } Serial.println ("Povezano s pristupnom tačkom");} void reconnect () {// Petlja dok se ponovno ne povežemo status = WiFi.status (); if (status! = WL_CONNECTED) {WiFi.begin (WIFI_AP_NAME, WIFI_PASSWORD); while (WiFi.status ()! = WL_CONNECTED) {odgoda (500); Serial.print ("."); } Serial.println ("Povezano s pristupnom tačkom"); }} // Postavljanje applicationvoid setup () {// Pokretanje serijskog programa za ispravljanje pogrešaka Serial.begin (SERIAL_DEBUG_BAUD); WiFi.započni (WIFI_AP_NAME, WIFI_PASSWORD); InitWiFi (); // Inicijalizacija osjetnika temperature dht.begin ();} // Glavna aplikacija loopvoid loop () {// Ponovno se povežite na WiFi, ako je potrebno if (WiFi.status ()! = WL_CONNECTED) {reconnect (); povratak; } // Ponovo se povežite na ThingsBoard, ako je potrebno if (! Tb.connected ()) {// Povežite se sa ThingsBoard Serial.print ("Spajanje na:"); Serial.print (THINGSBOARD_SERVER); Serial.print ("sa žetonom"); Serial.println (TOKEN); if (! tb.connect (THINGSBOARD_SERVER, TOKEN)) {Serial.println ("Neuspješno povezivanje"); povratak; }} // Provjeri je li vrijeme za slanje temperature i vlažnosti DHT11 if (millis ()-millis_counter> send_delay) {Serial.println ("Slanje podataka …"); // Prenosi novu telemetriju na ThingsBoard pomoću MQTT -a. // Pogledajte https://thingsboard.io/docs/reference/mqtt-api/#telemetry-upload-api // za više detalja float h = dht.readHumidity (); // Očitavanje temperature kao Celsius (zadano) float t = dht.readTemperature (); if (isnan (h) || isnan (t)) {Serial.println ("Nije uspjelo čitanje s DHT senzora!"); } else {Serial.print ("Temperatura:"); Serijski.tisak (t); Serial.print ("Vlažnost"); Serijski.println (h); tb.sendTelemetryFloat ("temperatura", t); tb.sendTelemetryFloat ("vlažnost", h); } millis_counter = millis (); // resetiranje brojača milis}} // Obradi poruke tb.loop ();}

Korak 3: Vizualizacija podataka

Vizualizacija podataka
Vizualizacija podataka

U poslužitelju za demonstraciju uživo:

  • prijava: vaše korisničko ime za demo (email)
  • lozinka: vaša lozinka za demonstraciju uživo

Za detaljnije informacije o tome kako doći do svog računa pogledajte demo stranicu uživo.

Idite na odjeljak "Uređaji" i pronađite "Magicbit", otvorite detalje o uređaju i prijeđite na karticu "Najnovija telemetrija". Ako je sve ispravno konfigurirano, trebali biste moći vidjeti najnovije vrijednosti "temperature" i "vlažnosti".

Nakon toga otvorite odjeljak "Nadzorne ploče", a zatim pronađite i otvorite "magicbit_temperature_humidity_demo_dashboard". Kao rezultat toga, vidjet ćete grafikon vremenskih serija koji prikazuje temperaturu i razinu vlage (slično slici nadzorne ploče u uvodu).

Preporučeni: