Cuprins:

Tracker GPS LTE Arduino + tablou de bord IoT (partea 2): 6 pași (cu imagini)
Tracker GPS LTE Arduino + tablou de bord IoT (partea 2): 6 pași (cu imagini)

Video: Tracker GPS LTE Arduino + tablou de bord IoT (partea 2): 6 pași (cu imagini)

Video: Tracker GPS LTE Arduino + tablou de bord IoT (partea 2): 6 pași (cu imagini)
Video: CS50 2014 - Week 9 2024, Iulie
Anonim
Image
Image
Configurare ThingsBoard
Configurare ThingsBoard

Introducere și Partea 1 Recapitulare

Da, este timpul pentru un alt instructabil pe trackerul GPS SIM7000 cu Arduino și LTE! Dacă nu ați făcut-o deja, consultați tutorialul de început pentru scutul Botletics SIM7000 CAT-M / NB-IoT, apoi citiți partea 1 a tutorialului de urmărire GPS. Ca atare, am de gând să presupun că aveți tot hardware-ul configurat și gata să postați date în cloud, tot ce trebuie să facem în acest tutorial este să ne familiarizăm cu ThingsBoard și să facem un alt test rutier pentru a vedea datele uimitoare spectacole!

În partea 1, am obținut cu succes urmăritorul nostru GPS pentru a trimite date către dweet.io și am preluat datele de pe freeboard.io pentru a vizualiza datele. Cu toate acestea, mi-am dat seama curând că funcționalitatea hărții era destul de șchioapă pe bordul liber, deoarece nu vă permite să mutați cursorul în jurul sau chiar să redimensionați fereastra widgetului. Acest lucru m-a condus la o soluție mai bună: ThingsBoard.io, care este un tablou de bord IoT super-minunat (și gratuit!) Care vă permite să stocați, să vizualizați și să personalizați heck-ul din datele dvs.! Puteți trage pentru a rearanja widget-urile (și funcționează în Chrome, spre deosebire de bordul liber), iar calitatea generală este crema recoltei. Cel mai important, widget-ul hărții Google vă permite să vă deplasați liber, să măriți și să micșorați și să selectați diferite stiluri (satelit, vedere rutieră etc.) și chiar vă permite să trageți și să plasați micuțul galben pe drum pentru vedere la stradă !

Pasul 1: Configurarea ThingsBoard

Configurare ThingsBoard
Configurare ThingsBoard
Configurare ThingsBoard
Configurare ThingsBoard

Configurarea contului și dispozitivului ThingsBoard

Primul lucru pe care trebuie să-l faceți este să accesați pagina principală ThingsBoard, apoi să creați un cont făcând clic pe butonul din meniul din dreapta sus și selectând „Demo live”. Creați un cont, verificați-vă contul într-un e-mail pe care vi-l trimit, apoi conectați-vă din nou la ecranul de start Live Demo. Acest lucru ar trebui să vă aducă la un ecran în care să vă puteți gestiona toate dispozitivele, să editați tablouri de bord etc.

Apoi, selectați fila „Dispozitive” din partea stângă. Acest lucru ar trebui să afișeze o grămadă de dispozitive demo precum ESP8266, DHT22, Arduino și demonstrații Pi etc. Creați un dispozitiv nou făcând clic pe butonul roșu „+” din dreapta jos și introduceți un nume și alegeți „implicit” pentru tipul de dispozitiv. După ce faceți clic pe „ADĂUGARE”, ar trebui să vedeți noul dispozitiv în fila Dispozitive. Faceți clic pe „Gestionați acreditările” și ar trebui să vedeți o fereastră mică care să afișeze simbolul de acces al dispozitivului. Acesta este în esență ID-ul dispozitivului și este similar cu ID-ul dispozitivului utilizat pentru postarea datelor pe dweet.io. Puteți schimba acest ID de dispozitiv la numărul IMEI al scutului dvs., dacă doriți, dar puteți utiliza doar simbolul generat automat. Copiați acest jeton deoarece veți avea nevoie de el în schița Arduino.

Arduino Exemplu de configurare

În acest tutorial vom folosi exact același exemplu de schiță Arduino ca în primul tutorial, dar de data aceasta am actualizat schița pentru a include codul pentru a trimite date direct la ThingsBoard.io în loc de dweet.io în partea 1. Ca întotdeauna, puteți găsi exemplul de cod aici pe Github.

Primul lucru pe care trebuie să-l faci este să comentezi liniile care fac ca scutul să fie postat pe dweet.io:

// GET request / * // Puteți ajusta conținutul cererii dacă nu aveți nevoie de anumite lucruri, cum ar fi viteza, altitudinea etc. sprintf (URL, „https://dweet.io/dweet/for/%s ? lat =% s & long =% s & speed =% s & head =% s & alt=% s & temp =% s & batt =% s ", imei, latBuff, longBuff, speedBuff, headBuff, altBuff, tempBuff, battBuff);

contor int = 0; // Aceasta contorizează numărul de încercări eșuate

// Încercați în total de trei ori dacă postarea nu a reușit (încercați de 2 ori suplimentar) în timp ce (contor <3 &&! Fona.postData ("GET", URL, "")) {// Adăugați ghilimelele "" ca al treilea intrare deoarece pentru solicitarea GET nu există un „corp” Serial.println (F („Nu s-au putut posta date, se reîncearcă …”)); contor ++; // Întârziere contor increment (1000); } * /

Apoi, necomentați liniile care se postează pe thingsboard.io:

// Să încercăm o cerere POST către thingsboard.io const char * token = "YOUR_DEVICE_TOKEN"; // Din dispozitivul sprintf thingsboard.io (URL, „https://demo.thingsboard.io/api/v1/%s/telemetry”, simbol); sprintf (corp, "{" latitude / ":% s, \" longitude / ":% s, \" speed / ":% s, \" head / ":% s, \" alt / ":% s, / "temp \":% s, / "batt \":% s} ", latBuff, longBuff, speedBuff, headBuff, altBuff, tempBuff, battBuff); // sprintf (corp, "{" lat / ":% s, \" long / ":% s}", latBuff, longBuff); // Dacă tot ce vrei este lat / lung

contor int = 0;

while (! fona.postData ("POST", URL, corp)) {Serial.println (F ("Nu s-a finalizat HTTP POST …")); contor ++; întârziere (1000); }

Încărcați codul pe Arduino, asigurați-vă că aveți atașate cartela SIM și antena și verificați dacă ecranul trimite cod în cloud înainte de a continua!

NOTĂ: Arduino Uno are foarte puțină memorie (RAM) și postarea pe Thingsboard poate provoca blocarea Arduino. Dacă întâmpinați repornirea schiței la aproximativ locația funcției postData () sau alt comportament ciudat, cel mai probabil se întâmplă. Soluția ușoară la aceasta este schimbarea Uno cu un Arduino Mega sau o placă cu mai multă memorie RAM. De asemenea, puteți încerca să minimizați dimensiunea matricelor și să împărțiți datele în mai multe postări.

Pasul 2: Verificați recepția datelor

Verificați recepția datelor
Verificați recepția datelor

Pentru a verifica efectiv faptul că datele sunt trimise corect către ThingsBoard, accesați aceeași pagină cu detalii despre dispozitiv (faceți clic pe caseta dispozitivului GPS Tracker din pagina „Dispozitive”), apoi faceți clic pe fila „Ultimele telemetrii”. Dacă urmăritorul GPS trimite valori către ThingsBoard, ar trebui să vedeți aici cele mai recente valori și acestea se vor actualiza în timp real pe măsură ce intră.

Acum că ați verificat că ThingsBoard obține de fapt datele, este timpul să configurați tabloul de bord, astfel încât să putem vizualiza datele noastre atunci când le colectăm! (Sau după fapt)

Pasul 3: Configurarea tabloului de bord

Configurarea tabloului de bord
Configurarea tabloului de bord
Configurarea tabloului de bord
Configurarea tabloului de bord
Configurarea tabloului de bord
Configurarea tabloului de bord

Acum este timpul pentru partea distractivă! Acum faceți clic pe fila „Tablouri de bord” din stânga și selectați dispozitivul dvs. de urmărire GPS. Aceasta ar trebui să afișeze o nouă pagină care vă cere să adăugați widgeturi. Faceți clic pe butonul "+" din dreapta jos și pe "creați un widget nou" pentru a afișa un meniu derulant de widgeturi din care să alegeți. Deocamdată să adăugăm un „ecartament digital”. Selectând acest lucru ar trebui să încărcați o grămadă de previzualizări pentru toate tipurile diferite de indicatoare digitale din care puteți alege. Când faceți clic pe unul, va apărea un alt ecran pentru a configura parametrii widgetului. Primul lucru pe care trebuie să-l adăugați este sursa de date (dispozitivul dvs. de urmărire GPS care trimite datele către ThingsBoard). Apăsați butonul „+ ADĂUGARE” și selectați dispozitivul „GPS Tracker” și selectați variabila corespunzătoare pe care doriți să o afișeze widgetul. În acest caz, să alegem variabila „temp” (temperatură).

Acum, dacă doriți să adăugați lucruri precum un titlu pentru widget, accesați fila „Setări”, bifați „Afișați titlul” și introduceți un titlu. Există multe alte lucruri pe care le puteți face sub fila „Avansat”, dar vă voi lăsa să le investigați singur! Distrează-te schimbând intervalele de valori, textul etichetei, culorile și multe altele! După adăugarea widgetului, acesta va apărea în partea din stânga jos a tabloului de bord (poate fi necesar să derulați în jos dacă aveți mai multe widget-uri care umple ecranul). Puteți edita widgetul oricând apăsând butonul de pe widget dacă sunteți deja în modul de editare a tabloului de bord sau puteți intra în modul de editare apăsând butonul creion din partea dreaptă jos a întregului ecran pentru a vă permite să editați widget-urile. Destul de direct!

Pasul 4: Adăugarea unei hărți

Adăugarea unei hărți!
Adăugarea unei hărți!
Adăugarea unei hărți!
Adăugarea unei hărți!
Adăugarea unei hărți!
Adăugarea unei hărți!
Adăugarea unei hărți!
Adăugarea unei hărți!

Acum, pentru un GPS tracker, o hartă este o necesitate! Să adăugăm unul creând un nou widget (butonul „+” din dreapta jos din nou) și de această dată derulați în jos și selectați „Hărți”. Continuați și faceți clic pe unul și va afișa opțiunile pentru acesta. Adăugați sursa de date ca de obicei, dar de data aceasta, selectați atât variabile „lat”, cât și „lungi”, deoarece va avea nevoie de ambele pentru a obține locația. Apoi, accesați fila „Setări” și aici puteți seta fereastra de timp a datelor pentru a fi afișate pe hartă. De exemplu, este posibil să doriți să apară doar ultimele 2 minute de date sau să doriți toate datele de ieri sau poate doriți doar o fereastră fixă în timp (cum ar fi ora 14:00 ieri până la ora 10:00).

Dacă doriți, puteți accesa fila „Avansat” și selectați tipul hărții (foaie de parcurs, satelit, hibrid sau teren). Poate că cea mai importantă parte din toate acestea este să verificați numele cheilor de latitudine și longitudine. Asigurați-vă că aceste nume corespund exact cu numele variabilelor pe care le trimiteți efectiv către ThingsBoard. De exemplu, dacă schița dvs. Arduino spune că trimite variabile „lat” și „lung” (care este implicit), atunci trebuie să schimbați numele cheilor în „lat” și „lung” și folosind „latitudine” și „longitudine” nu vă va prelua datele!

Din nou, după adăugarea hărții, aceasta va apărea în partea de jos a tabloului de bord. Pur și simplu trageți-l pentru a-l repoziționa pe tabloul de bord și faceți clic și trageți marginile pentru a-l redimensiona. Dacă fereastra dvs. de timp a fost setată corect, ar trebui să vedeți locația dvs. curentă pe hartă. Super îngrijit nu? Acum suntem pregătiți pentru un test real!

Pasul 5: Test rutier

Test rutier
Test rutier
Test rutier
Test rutier

Testarea trackerului GPS este foarte simplă! Conectați Arduino la un adaptor USB pentru mașină pentru a-l alimenta, asigurați-vă că ledul verde se aprinde și ar trebui să înceapă să trimită date! Pentru a modifica rata de eșantionare a trackerului GPS, asigurați-vă că găsiți această linie de cod în schița de exemplu:

#define samplingRate 10 // Timpul dintre postări, în secunde

și setați-l la orice doriți. Am constatat că 10s funcționează destul de bine pentru un test rutier pe îndelete, dar dacă ești rapid și furios, poate ai vrea o rată de eșantionare chiar mai mare!

Pasul 6: Rezultate

Rezultate
Rezultate
Rezultate
Rezultate
Rezultate
Rezultate

În imaginile de mai sus puteți vedea configurarea tabloului meu de bord. Am adăugat diagrame pentru a grafica date istorice pentru lucruri precum viteza, altitudinea și temperatura și am inclus, de asemenea, indicatoare în timp real, în cazul în care vreau să le văd în timp real într-o altă călătorie rutieră (imaginea asta într-un RV!).

Harta a fost minunată și am reușit să adun câteva date cu adevărat exacte despre un traseu pe care l-am urmat. De asemenea, datele despre viteză au fost extrem de precise, deoarece nu am depășit niciodată aproximativ 40 mph (graficul este în km / h) pe drumurile orașului. Numeroasele fluctuații ale vitezei pot fi explicate de semafoare. În general, rezultate grozave și imaginați-vă pentru ce altceva am putea folosi acest lucru! Puteți instala acest lucru pe un RV, o motocicletă, o mașină etc. și să îl urmăriți tot timpul și să obțineți rezultatele pe ThingsBoard!

Pentru a rezuma, în acest tutorial am programat urmăritorul nostru GPS pentru a trimite date direct către ThingsBoard prin cereri HTTP POST și am gestionat datele pe un tablou de bord. Puteți adăuga mai multe dispozitive și tablouri de bord, fiecare conținând mai multe widget-uri care arată foarte cool și au o mulțime de opțiuni de personalizare! ThingsBoard s-a dovedit a fi un instrument foarte puternic (și gratuit!) Pentru vizualizarea datelor IoT și există chiar și alte caracteristici pe care nici măcar nu le-am zgâriat. Simțiți-vă liber să vă jucați cu el și să vedeți ce găsiți.

  • Dacă ți-a plăcut acest tutorial, ți l-ai făcut propriul sau ai întrebări, fă un comentariu mai jos!
  • Asigurați-vă că acordați o inimă acestui instructabil și abonați-vă aici și pe canalul meu YouTube pentru tutoriale mai minunate legate de Arduino!
  • Dacă doriți să susțineți ceea ce fac, vă rugăm să luați în considerare achiziționarea propriului scut Botletics SIM7000 pe Amazon.com!

Cu asta, ne vedem data viitoare!

Recomandat: