Turinys:

„LTE Arduino GPS Tracker + IoT“prietaisų skydelis (2 dalis): 6 žingsniai (su paveikslėliais)
„LTE Arduino GPS Tracker + IoT“prietaisų skydelis (2 dalis): 6 žingsniai (su paveikslėliais)

Video: „LTE Arduino GPS Tracker + IoT“prietaisų skydelis (2 dalis): 6 žingsniai (su paveikslėliais)

Video: „LTE Arduino GPS Tracker + IoT“prietaisų skydelis (2 dalis): 6 žingsniai (su paveikslėliais)
Video: Heated Acetone to Smooth Polycarbonate 2024, Liepa
Anonim
Image
Image
„ThingsBoard“sąranka
„ThingsBoard“sąranka

Įvadas ir 1 dalies santrauka

Taip, atėjo laikas dar vienai instrukcijai SIM7000 GPS sekimo priemonėje su „Arduino“ir LTE! Jei to dar nepadarėte, peržiūrėkite „Botletics SIM7000 CAT-M/NB-IoT“skydo darbo pradžios pamoką, tada perskaitykite GPS sekimo vadovo 1 dalį. Taigi aš darysiu prielaidą, kad esate sukūrę visą aparatinę įrangą ir pasiruošę paskelbti duomenis debesyje, viskas, ko mums iš tikrųjų reikia padaryti šioje pamokoje, yra susipažinti su „ThingsBoard“ir atlikti kitą kelio testą, kad pamatytumėte nuostabius duomenis šou!

1 dalyje mes sėkmingai gavome savo puikų GPS sekiklį, kuris nusiųs duomenis į dweet.io, ir paėmėime duomenis „freeboard.io“, kad vizualizuotume duomenis. Tačiau netrukus supratau, kad žemėlapio funkcijos yra gana menkos ant laisvųjų bortų, nes neleidžia perkelti žymeklio ar net pakeisti valdiklio lango dydį. Tai paskatino mane rasti geresnį sprendimą: „ThingsBoard.io“, kuris yra nuostabus „IoT“prietaisų skydelis (ir nemokamas!), Leidžiantis saugoti, vizualizuoti ir pritaikyti jūsų duomenis! Galite vilkti, kad pertvarkytumėte valdiklius (ir tai veikia „Chrome“, skirtingai nei „freeboard“), o bendra kokybė yra pasėlių kremas. Svarbiausia, kad „Google“žemėlapio valdiklis leidžia jums laisvai judėti, priartinti ir nutolinti ir pasirinkti skirtingus stilius (palydovas, vaizdas iš kelio ir pan.) Ir netgi leidžia nuvilkti mažą geltoną vaikiną į kelią, kad būtų galima pamatyti gatvės vaizdus !

1 žingsnis: „ThingsBoard“sąranka

„ThingsBoard“sąranka
„ThingsBoard“sąranka
„ThingsBoard“sąranka
„ThingsBoard“sąranka

„ThingsBoard“paskyra ir įrenginio sąranka

Pirmas dalykas, kurį turėtumėte padaryti, yra eiti į „ThingsBoard“pagrindinį puslapį, tada susikurti paskyrą spustelėję viršutinį dešinįjį meniu mygtuką ir pasirinkę „Tiesioginė demonstracija“. Sukurkite paskyrą, patvirtinkite paskyrą el. Laiške, kurį jie jums atsiųs, tada vėl prisijunkite prie pagrindinio „Live Demo“ekrano. Tai turėtų nukreipti jus į ekraną, kuriame galite valdyti visus savo įrenginius, redaguoti prietaisų skydelius ir pan.

Tada kairėje pasirinkite skirtuką „Įrenginiai“. Tai turėtų parodyti daugybę demonstracinių įrenginių, tokių kaip ESP8266, DHT22, „Arduino“ir „Pi“demonstracinės versijos ir tt. Sukurkite naują įrenginį spustelėdami raudoną mygtuką „+“apačioje dešinėje, įveskite pavadinimą ir pasirinkite „numatytasis“įrenginio tipui. Spustelėję „PRIDĖTI“skirtuke „Įrenginiai“turėtumėte pamatyti naują įrenginį. Spustelėkite „Tvarkyti kredencialus“ir turėtumėte pamatyti mažą langą, rodantį įrenginio prieigos raktą. Tai iš esmės yra įrenginio ID ir yra analogiškas įrenginio ID, naudojamam duomenims skelbti į dweet.io. Jei norite, galite pakeisti šį įrenginio ID į skydo IMEI numerį, tačiau taip pat galite tiesiog naudoti automatiškai sukurtą prieigos raktą. Nukopijuokite šį žetoną taip, kaip jums reikės „Arduino“eskize.

„Arduino“sąrankos pavyzdys

Šioje pamokoje naudosime tą patį „Arduino“eskizo pavyzdį, kaip ir pirmoje pamokoje, tačiau šį kartą aš atnaujinau eskizą, įtraukdamas kodą duomenims siųsti tiesiai į „ThingsBoard.io“, o ne į „dweet.io“1 dalyje. Kaip visada, pavyzdinį kodą galite rasti čia „Github“.

Pirmas dalykas, kurį jums reikia padaryti, yra pakomentuoti eilutes, dėl kurių skydo įrašas pateikiamas dweet.io:

// GET request/* // Galite koreguoti užklausos turinį, jei jums nereikia tam tikrų dalykų, tokių kaip greitis, aukštis ir pan. 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);

int skaitiklis = 0; // Tai skaičiuoja nesėkmingų bandymų skaičių

// Pabandykite iš viso tris kartus, jei įrašas buvo nesėkmingas (pabandykite dar 2 kartus), o (counter <3 &&! Fona.postData ("GET", URL, "")) {// Pridėkite kabutes "" kaip trečias įvestis, nes GET užklausai nėra „body“Serial.println (F („Nepavyko paskelbti duomenų, bandoma iš naujo …“)); skaitiklis ++; // Padidinimo skaitiklio uždelsimas (1000); } */

Tada panaikinkite komentarus eilutėse, kurios skelbiamos „thingsboard.io“:

// Pabandykime POST užklausą thingsboard.io const char* token = "YOUR_DEVICE_TOKEN"; // Iš thingsboard.io įrenginio sprintf (URL, „https://demo.thingsboard.io/api/v1/%s/telemetry“, prieigos raktas); sprintf (body, "{" platuma / ":%s, \" ilguma / ":%s, \" greitis / ":%s, \" galva / ":%s, \" alt / ":%s, / "temp \":%s, / "batt \":%s} ", latBuff, longBuff, speedBuff, headBuff, altBuff, tempBuff, battBuff); // sprintf (body, "{" lat / ":%s, \" long / ":%s}", latBuff, longBuff); // Jei viskas, ko norite, yra lat/long

int skaitiklis = 0;

while (! fona.postData ("POST", URL, body)) {Serial.println (F ("Nepavyko užbaigti HTTP POST …")); skaitiklis ++; vėlavimas (1000); }

Įkelkite kodą į „Arduino“, įsitikinkite, kad prijungta SIM kortelė ir antena, ir prieš tęsdami patikrinkite, ar skydas siunčia kodą į debesį!

PASTABA: „Arduino Uno“turi labai mažai atminties (RAM), o paskelbimas „Thingsboard“gali sukelti „Arduino“gedimą. Jei eskizas paleidžiamas iš naujo maždaug „postData“() funkcijos vietoje arba veikia kitas keistas elgesys, greičiausiai tai vyksta. Lengvas sprendimas yra pakeisti „Uno“į „Arduino Mega“arba plokštę su daugiau RAM. Taip pat galite pabandyti sumažinti masyvų dydį ir padalyti duomenis į kelis įrašus.

2 veiksmas: patikrinkite duomenų priėmimą

Patikrinkite duomenų priėmimą
Patikrinkite duomenų priėmimą

Norėdami iš tikrųjų patikrinti, ar duomenys teisingai siunčiami į „ThingsBoard“, eikite į tą patį įrenginio informacijos puslapį (spustelėkite „GPS sekimo įrenginio plytelę“puslapyje „Įrenginiai“), tada spustelėkite skirtuką „Naujausia telemetrija“. Jei jūsų GPS sekiklis siunčia vertes į „ThingsBoard“, čia turėtumėte pamatyti naujausias vertes ir jos bus atnaujintos realiu laiku.

Dabar, kai įsitikinote, kad „ThingsBoard“iš tikrųjų gauna duomenis, laikas nustatyti prietaisų skydelį, kad galėtume vizualizuoti savo duomenis, kai juos renkame! (Arba po fakto)

3 veiksmas: prietaisų skydelio nustatymas

Prietaisų skydelio nustatymas
Prietaisų skydelio nustatymas
Prietaisų skydelio nustatymas
Prietaisų skydelio nustatymas
Prietaisų skydelio nustatymas
Prietaisų skydelio nustatymas

Dabar atėjo laikas linksmai daliai! Dabar kairėje spustelėkite skirtuką „Prietaisų skydeliai“ir pasirinkite savo GPS sekimo įrenginį. Tai turėtų parodyti naują puslapį, kuriame prašoma pridėti valdiklių. Spustelėkite apatinį dešinįjį mygtuką „+“ir „sukurti naują valdiklį“, kad būtų rodomas išskleidžiamasis valdiklių meniu. Kol kas pridėkime „skaitmeninį matuoklį“. Pasirinkus šį, turėtų būti įkelta daugybė visų skirtingų tipų skaitmeninių matuoklių, kuriuos galite pasirinkti, peržiūrų. Spustelėjus vieną, pasirodys kitas ekranas, kuriame galėsite nustatyti valdiklio parametrus. Pirmas dalykas, kurį turite pridėti, yra duomenų šaltinis (jūsų GPS sekimo įrenginys, siunčiantis duomenis į „ThingsBoard“). Paspauskite mygtuką „+ ADD“ir pasirinkite „GPS Tracker“įrenginį ir pasirinkite tinkamą kintamąjį, kurį norite rodyti valdiklyje. Tokiu atveju rinkimės kintamąjį „temp“(temperatūra).

Dabar, jei norite pridėti tokius dalykus kaip valdiklio pavadinimas, eikite į skirtuką „Nustatymai“, pažymėkite „Rodyti pavadinimą“ir įveskite pavadinimą. Skirtuke „Išplėstinė“galite padaryti daug kitų dalykų, tačiau aš leisiu jums tai ištirti! Smagiai keiskite verčių diapazonus, etikečių tekstą, spalvas ir dar daugiau! Pridėjus valdiklį, jis bus rodomas prietaisų skydelio apačioje kairėje (gali tekti slinkti žemyn, jei ekraną užpildo keli valdikliai). Valdiklį galite redaguoti bet kuriuo metu paspausdami valdiklio mygtuką, jei jau esate prietaisų skydelio redagavimo režime, arba įjungti redagavimo režimą paspausdami pieštuko mygtuką, esantį viso ekrano apačioje dešinėje, kad galėtumėte redaguoti valdiklius. Gana paprasta!

4 žingsnis: pridėkite žemėlapį

Pridedamas žemėlapis!
Pridedamas žemėlapis!
Pridedamas žemėlapis!
Pridedamas žemėlapis!
Pridėkite žemėlapį!
Pridėkite žemėlapį!
Pridedamas žemėlapis!
Pridedamas žemėlapis!

Dabar GPS sekikliui žemėlapis yra būtinas! Pridėkime vieną sukurdami naują valdiklį (apačioje dešinėje „+“mygtukas) ir šį kartą slinkite žemyn ir pasirinkite „Žemėlapiai“. Eikite į priekį ir spustelėkite vieną ir pasirodys jo parinktys. Pridėkite duomenų šaltinį kaip įprasta, tačiau šį kartą pasirinkite ir „lat“, ir „long“kintamuosius, nes norint gauti vietą, reikės abiejų. Tada eikite į skirtuką „Nustatymai“ir čia galite nustatyti žemėlapyje rodomų duomenų laiko langą. Pvz., Galbūt norėsite, kad būtų rodomos tik paskutinės 2 minutės duomenų, arba visi duomenys nuo vakarykštės dienos, o gal tiesiog norite fiksuoto laiko lango (pvz., Vakar 2 val. Iki šiandien 10 val.).

Jei norite, eikite į skirtuką „Išplėstinė“ir pasirinkite žemėlapio tipą (planą, palydovą, hibridą ar reljefą). Bene svarbiausia viso to dalis - patikrinti platumos ir ilgumos raktų pavadinimus. Įsitikinkite, kad šie pavadinimai tiksliai atitinka kintamųjų pavadinimus, kuriuos iš tikrųjų siunčiate „ThingsBoard“. Pvz., Jei jūsų „Arduino“eskizas sako, kad siunčiami „lat“ir „long“kintamieji (pagal numatytuosius nustatymus), turite pakeisti raktų pavadinimus į „lat“ir „long“ir naudoti „platumą“ir „ilgumą“neatgaus jūsų duomenų!

Vėlgi, pridėjus žemėlapį, jis bus rodomas prietaisų skydelio apačioje. Tiesiog vilkite jį, kad pakeistumėte padėtį prietaisų skydelyje, tada spustelėkite ir vilkite kraštus, kad pakeistumėte jo dydį. Jei jūsų laiko langas buvo nustatytas teisingai, žemėlapyje turėtų būti rodoma jūsų dabartinė vieta. Super tvarkinga ar ne? Dabar mes pasiruošę tikram išbandymui!

5 žingsnis: kelio bandymas

Kelio bandymas
Kelio bandymas
Kelio bandymas
Kelio bandymas

Išbandyti GPS sekiklį yra labai paprasta! Tiesiog prijunkite „Arduino“prie automobilio USB adapterio, kad jį įjungtumėte, įsitikinkite, kad dega žalias šviesos diodas, ir jis turėtų pradėti siųsti duomenis! Jei norite pakeisti GPS sekimo priemonės atrankos dažnį, įsitikinkite, kad pavyzdiniame eskize rasite šią kodo eilutę:

#define samplingRate 10 // Laikas tarp įrašų, sekundėmis

ir nustatykite tai, ko norite. Pastebėjau, kad 10 -asis gana gerai veikia neskubant kelio bandymui, bet jei esate greitas ir įsiutę, galbūt norėsite dar didesnio mėginių ėmimo dažnio!

6 žingsnis: Rezultatai

Rezultatai
Rezultatai
Rezultatai
Rezultatai
Rezultatai
Rezultatai

Aukščiau esančiose nuotraukose galite pamatyti mano prietaisų skydelio sąranką. Pridėjau diagramas prie istorinių duomenų, tokių kaip greitis, aukštis ir temperatūra, grafiko, taip pat įtraukiau realaus laiko matuoklius, jei noriu juos pamatyti realiu laiku kitoje kelionėje (pavaizduokite tai RV!).

Žemėlapis buvo žudikas ir man pavyko surinkti tikrai tikslius duomenis apie pasirinktą maršrutą. Be to, greičio duomenys buvo itin tikslūs, nes miesto keliuose niekada neviršijome apie 40 km / h (grafikas yra km / h). Daugelį greičio svyravimų galima paaiškinti šviesoforais. Apskritai, puikūs rezultatai ir įsivaizduokite, kam dar galėtume tai panaudoti! Galite tai įdiegti ant RV, motociklo, automobilio ir pan.

Apibendrinant, šioje pamokoje mes užprogramavome savo GPS sekimo priemonę siųsti duomenis tiesiai į „ThingsBoard“per HTTP POST užklausas ir tvarkėme duomenis prietaisų skydelyje. Galite pridėti kelis įrenginius ir prietaisų skydelius, kuriuose yra keli valdikliai, kurie atrodo labai šauniai ir turi daug tinkinimo parinkčių! „ThingsBoard“pasirodė esąs labai galingas (ir nemokamas!) Įrankis, skirtas peržiūrėti daiktų interneto duomenis, ir yra net kitų funkcijų, kurių net nesubraižiau. Nesivaržykite žaisti su juo ir pamatyti, ką rasite.

  • Jei jums patiko ši pamoka, sukūrėte savo ar turite klausimų, parašykite komentarą žemiau!
  • Būtinai suteikite šiam „Instructable“širdį ir užsiprenumeruokite čia ir mano „YouTube“kanale, kad gautumėte daugiau nuostabių su „Arduino“susijusių pamokų!
  • Jei norite paremti tai, ką darau, apsvarstykite galimybę įsigyti savo „Botletics SIM7000“skydą „Amazon.com“!

Su tuo susitiksim kitą kartą!

Rekomenduojamas: