Indholdsfortegnelse:

Tilslut din Magicbit til Thingsboard: 3 trin
Tilslut din Magicbit til Thingsboard: 3 trin

Video: Tilslut din Magicbit til Thingsboard: 3 trin

Video: Tilslut din Magicbit til Thingsboard: 3 trin
Video: Start Using Wemos D1 Mini NodeMCU WiFi ESP8266 module with Arduino 2024, September
Anonim
Tilslut din Magicbit til Thingsboard
Tilslut din Magicbit til Thingsboard

I dette projekt vil vi sende data fra sensorer forbundet til magicbit, som vi kan vise visuelt på tingbrættet.

Tilbehør:

  • Magicbit
  • DHT11 temperatur- og luftfugtighedssensor (4 ben)

Trin 1: Historie

Historie
Historie
Historie
Historie
Historie
Historie
Historie
Historie

Introduktion

ThingsBoard er en open-source platform på serversiden, der giver dig mulighed for at overvåge og styre IoT-enheder. Det er gratis til både personlig og kommerciel brug, og du kan implementere det overalt. Hvis dette er din første oplevelse med platformen, anbefaler vi at gennemgå hvad-er-tingboard-siden og vejledningen til at komme i gang.

Denne prøveapplikation giver dig mulighed for at vise fugtigheds-/temperaturdata fra DHT11 -sensoren ved hjælp af din magicbit -enhed og ThingsBoard web -brugergrænseflade.

Den applikation, der kører på Magicbit -enheden, er skrevet ved hjælp af ThingsBoard Arduino SDK, som er ret enkel og let at forstå.

Når du har gennemført denne prøve/tutorial, vil du se dine sensordata på følgende dashboard.

Besøg Thingsboard Demos officielle side, og tilmeld dig.

Efter at have logget ind på venstre sidelinje vil du se Enheder. Klik på enheder, og tilføj en ny enhed.

Marker fanen Tilføj legitimationsoplysninger på fanen Legitimationsoplysninger, og vælg Adgangstoken fra rullemenuen. Enten kan du tilføje dit eget adgangstoken eller lade det stå tomt for automatisk at generere token.

Indstil enheden til magicbit i alias. Gå til fanen dashboard og importer dashboard.

Følg følgende trin i billeder for at importere instrumentbrættet. Find demo -JSON -filen kaldet "magicbit_temperature_humidity_demo_dashboard.json" i vedhæftede filer.

Tilslut din magiske bit med DHT11 -modul som følger til pin 33.

I Arduino IDE download ovenstående biblioteker.

Følgende er den Arduino -kode, du vil bruge.

Bemærk Du skal redigere følgende konstanter og variabler i skitsen:

  • WIFI_AP - navnet på dit adgangspunkt
  • WIFI_PASSWORD - adgangspunkt adgangskode
  • TOKEN - konfigurationstrinnet $ ACCESS_TOKEN fra ThingsBoard.
  • THINGSBOARD_SERVER - ThingsBoard HOST/IP -adresse, der er tilgængelig i dit wifi -netværk. Angiv demo.thingsboard.io, hvis du bruger live demoserver.

Trin 2: Arduino -kode

#include // DHT til bibliotekbibliotek#include // WiFi -kontrol til ESP32#include // ThingsBoard SDK#definer DHTPIN 33 // hvilken digital pin vi er forbundet til#definere DHTTYPE DHT11 // DHT 11DHT dht (DHTPIN, DHTTYPE); // Hjælpemakro til at beregne arraystørrelse#definere COUNT_OF (x) ((sizeof (x)/ sizeof (0 [x]))/ ((size_t) (! (Sizeof (x) % sizeof (0 [x])))))) // WiFi-adgangspunkt#definer WIFI_AP_NAME "4G" // "WIFI_AP" // WiFi-adgangskode#definer WIFI_PASSWORD "nevergiveup" // "WIFI_PASSWORD" // Se https://thingsboard.io/docs/getting- started-guides/helloworld /// for at forstå, hvordan man får et adgangstoken#definere TOKEN "XZjQ26r9XJcsNkWGuASY" // "TOKEN" // ThingsBoard-serverinstans.#definere THINGSBOARD_SERVER "demo.thingsboard.io" // Baudrate for fejlfindingsserie #define SERIAL_DEBUG_BAUD 115200 // Initialize ThingsBoard -klientWiFiClient espClient; // Initialiser ThingsBoard instanceThingsBoard tb (espClient); // Wifi -radioens statusint status = WL_IDLE_STATUS; // Periode for afsendelse af data om temperatur/luftfugtighed.int send_delay = 2000; usigneret lang millis_counter; ugyldig InitWiFi () {Serial.println ("Opretter forbindelse til AP …"); // forsøg på at oprette forbindelse til WiFi -netværk WiFi.begin (WIFI_AP_NAME, WIFI_PASSWORD); mens (WiFi.status ()! = WL_CONNECTED) {forsinkelse (500); Serial.print ("."); } Serial.println ("Tilsluttet AP");} ugyldig genforbindelse () {// Loop, indtil vi genforbinder status = WiFi.status (); hvis (status! = WL_CONNECTED) {WiFi.begin (WIFI_AP_NAME, WIFI_PASSWORD); mens (WiFi.status ()! = WL_CONNECTED) {forsinkelse (500); Serial.print ("."); } Serial.println ("Tilsluttet AP"); }} // Opsætning af en applikationstab opsætning () {// Initialiser seriel til fejlfinding af Serial.begin (SERIAL_DEBUG_BAUD); WiFi.begyndt (WIFI_AP_NAME, WIFI_PASSWORD); InitWiFi (); // Initialiser temperatursensor dht.begin ();} // Hovedapplikation loopvoid loop () {// Genopret forbindelse til WiFi, hvis det er nødvendigt, hvis (WiFi.status ()! = WL_CONNECTED) {genforbind (); Vend tilbage; } // Tilslut igen til ThingsBoard, hvis det er nødvendigt, hvis (! Tb.connected ()) {// Opret forbindelse til ThingsBoard Serial.print ("Opretter forbindelse til:"); Serial.print (THINGSBOARD_SERVER); Serial.print ("med token"); Serial.println (TOKEN); if (! tb.connect (THINGSBOARD_SERVER, TOKEN)) {Serial.println ("Kunne ikke oprette forbindelse"); Vend tilbage; }} // Kontroller, om det er tid til at sende DHT11-temperatur og fugtighed, hvis (millis ()-millis_counter> send_delay) {Serial.println ("Sender data …"); // Uploader ny telemetri til ThingsBoard ved hjælp af MQTT. // Se https://thingsboard.io/docs/reference/mqtt-api/#telemetry-upload-api // for flere detaljer float h = dht.readHumidity (); // Læs temperaturen som Celsius (standard) float t = dht.readTemperature (); if (isnan (h) || isnan (t)) {Serial.println ("Kunne ikke læse fra DHT -sensor!"); } else {Serial.print ("Temperatur:"); Serial.print (t); Serial.print ("Fugtighed"); Serial.println (h); tb.sendTelemetryFloat ("temperatur", t); tb.sendTelemetryFloat ("fugtighed", h); } millis_counter = millis (); // nulstil millis counter} // Behandl meddelelser tb.loop ();}

Trin 3: Datavisualisering

Datavisualisering
Datavisualisering

I live-demo-server:

  • login: dit live-demo brugernavn (e-mail)
  • password: dit live-demo password

Se live-demoside for flere detaljer om, hvordan du får din konto.

Gå til afsnittet "Enheder", og find "Magicbit", åbn enhedsoplysninger og skift til fanen "Seneste telemetri". Hvis alt er konfigureret korrekt, skal du kunne se de seneste værdier for "temperatur" og "fugtighed".

Åbn derefter sektionen "Dashboards", og find derefter og åbn "magicbit_temperature_humidity_demo_dashboard". Som et resultat vil du se et tidsseriediagram, der viser temperatur og fugtighedsniveau (ligner dashboardbillede i indledningen).

Anbefalede: