Turinys:

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

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

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

Įvadas

Kas vyksta vaikinai! Šis „Instructable“yra mano pirmojo instrukcijos, kaip naudoti „Botletics LTE/NB-IoT“skydą „Arduino“, tęsinys, taigi, jei to dar nepadarėte, perskaitykite jį, kad gautumėte gerą apžvalgą, kaip naudoti skydą ir kas tai yra. Šioje pamokoje aš sutelksiu dėmesį į daiktų interneto duomenų registravimą, ypač į GPS ir temperatūros stebėjimą, ir pateiksiu visą kodą ir gaires, kurių jums prireiks norint pradėti kelią ir jį išbandyti!

Šis „Instructable“daugiausia skirtas LTE skydui, kurį aš asmeniškai suprojektavau ir sukūriau, tačiau viskas čia (įskaitant „Github Arduino“biblioteką) turėtų veikti ir su SIMCom 2G ir 3G moduliais, tokiais kaip SIM800/808/900/5320, nes tai tik atnaujinta „Adafruit FONA“bibliotekos versija. Nepriklausomai nuo techninės įrangos, koncepcija yra visiškai tokia pati, ir jūs galite tai padaryti daug įdomių dalykų, įskaitant jutiklių duomenų registravimą, nuotolinį oro stebėjimą, automatinį vagystės karmos GPS sekimą ir tt … todėl skaitykite toliau!

1 žingsnis: Surinkite dalis

Surinkite dalis
Surinkite dalis
Surinkite dalis
Surinkite dalis
Surinkite dalis
Surinkite dalis

Sąrašas yra toks pat kaip mano pirmoje pamokoje ir yra tikrai paprastas!

  • „Arduino Uno“, „Mega“arba „Leonardo“. Arba galite naudoti bet kurį kitą 3,3 V arba 5 V mikrovaldiklį, tačiau kaiščius turėsite prijungti išoriškai.
  • „Botletics“SIM7000 skydo rinkinys (komplektuojamas su ekranu, dviguba LTE/GPS uFL antena ir sukraunamomis moterų antraštėmis). Norėdami pasirinkti tinkamą versiją, būtinai pereikite prie šios pamokos!
  • Holograminė SIM kortelė. Pirmoji SIM kortelė (vadinama „kūrėjo“SIM kortele) yra visiškai nemokama ir su 1 MB duomenų per mėnesį! JAV greičiausiai būsite „Verizon“tinkle, jei naudosite „Hologram“SIM kortelę. Taip pat galite jį pasiimti kartu su „Botletics“skydu, jei taip patogiau.
  • 3,7 V LiPo baterija (rekomenduojama 1000 mAh arba didesnė talpa).
  • USB kabelis, skirtas „Arduino“programuoti arba įjungti.

GPS sekimo testui!

  • Bandydami skydą kelyje, galite naudoti automobilio USB adapterį, kad įjungtumėte „Arduino“maitinimą.
  • Arba galite naudoti akumuliatorių (7–12 V), kad „Arduino“maitintų per VIN ir GND kaiščius.

2 žingsnis: fizinis surinkimas

Fizinis surinkimas
Fizinis surinkimas
Fizinis surinkimas
Fizinis surinkimas
Fizinis surinkimas
Fizinis surinkimas

Dabar, kai turite visas dalis, čia yra trumpas aprašymas, ką reikia padaryti, kad nustatytumėte aparatūrą:

  • Ant skydo lituokite sukraunamas antgalius. Peržiūrėkite šią pamoką, kaip tai padaryti.
  • Prijunkite skydą prie „Arduino“, įsitikinkite, kad visi kaiščiai yra sulygiuoti, kad jų nepažeistumėte!
  • Įdėkite SIM kortelę, kaip parodyta paveikslėlyje. Metaliniai kontaktai nukreipti žemyn ir pažymėti įpjovos vietą kampe.
  • Prijunkite „LiPo“akumuliatorių prie skydo JST jungties
  • Prijunkite „Arduino“prie kompiuterio naudodami USB kabelį. Galite pastebėti, kad žalias skydo maitinimo šviesos diodas neužsidega. Tai visiškai normalu, nes skydo PWRKEY kaištį reikia šiek tiek pulsuoti, kad jį įjungtumėte. Kitame skyriuje pateiktas „Arduino“eskizo pavyzdys pasirūpins už jus!
  • Pritvirtinkite dvigubą LTE/GPS anteną prie uFL jungčių dešiniajame skydo krašte. Atminkite, kad laidai bus kryžminami, todėl nejunkite netinkamų laidų!
  • Viskas paruošta programinei įrangai!

3 žingsnis: „Arduino“sąranka ir įrenginio testavimas

„Arduino“sąranka ir įrenginio testavimas
„Arduino“sąranka ir įrenginio testavimas

„Arduino IDE“sąranka

Jei to dar nepadarėte, peržiūrėkite pagrindinio produkto „Instructable“veiksmus „Arduino IDE Setup“ir „Arduino Example“, kad įsitikintumėte, jog jūsų plokštė veikia tinkamai. Šiose instrukcijose turėsite atsisiųsti biblioteką „Github“puslapyje ir atidaryti pavyzdinį kodą „LTE_Demo“. Vykdę šias instrukcijas, turėtumėte išbandyti tinklo ryšį, GPS ir duomenų paskelbimą dweet.io.

IoT pavyzdinis eskizas

Dabar, kai išbandėte pagrindines skydo funkcijas, įkelkite eskizą „IoT_Example“į „Arduino IDE“. Taip pat galite rasti čia „Github“. Įkelkite šį kodą į savo „Arduino“ir atidarykite nuoseklųjį monitorių ir pamatysite, kad „Arduino“suranda SIM7000 modulį, prisijungia prie mobiliojo ryšio tinklo, įgalina GPS ir toliau bando, kol ištaiso vietą, ir paskelbia duomenis į dweet.io. Visa tai turėtų veikti nekeičiant jokios kodo eilutės, darant prielaidą, kad naudojate LTE skydą ir holograminę SIM kortelę.

Pagal numatytuosius nustatymus pamatysite, kad ši eilutė apibrėžia atrankos dažnį (na, iš tikrųjų vėlavimas tarp įrašų).

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

Jei ši eilutė paliekama nekomentuojama, „Arduino“paskelbs duomenis, atidės 30 sekundžių, vėl paskelbs duomenis, pakartos ir tt viskas paprasta Aš tiesiog naudosiu funkciją delay (), kad pristabdyčiau operaciją. Jei komentuosite šią eilutę, „Arduino“paskelbs duomenis, tada neribotą laiką pereis tiesiai į mažos galios miego režimą, kol paspausite „Arduino“atstatymo mygtuką. Tai naudinga, jei ką nors bandote ir nenorite įrašyti savo brangių nemokamų duomenų (nors sąžiningai kiekvienas įrašas praktiškai nieko nenaudoja), o gal turite išorinę grandinę, kad iš naujo nustatytumėte „Arduino“(555 laikmatis? RTC pertraukimas? Akselerometro pertraukimas? Temperatūros jutiklis) nutraukti? Pagalvokite už dėžutės ribų!). Tiesą sakant, „Burgalert 7000“pamokoje aš parodysiu, kaip galite naudoti PIR judesio jutiklį, kad pažadintumėte mikrovaldiklį.

Kitoje eilutėje nustatoma, ar skydas išsijungs paskelbus duomenis, ar liks įjungtas. Galite pasirinkti ankstesnį pasirinkimą, nekomentuodami eilutės, jei imate mėginius tik retkarčiais, tačiau jei turite palyginti didelį atrankos dažnį, norėsite palikti eilutę komentuotą, kad skydas liktų įjungtas ir jo nebūtų iš naujo inicijuoti, iš naujo įjungti GPRS ir GPS ir tt

//#define turnOffShield // Paskelbus duomenis, išjunkite skydą

Taip pat atminkite, kad šis pavyzdys automatiškai nuskaito konkrečiam moduliui būdingą ir visame pasaulyje unikalų SIM7000 IMEI numerį ir naudoja jį kaip įrenginio ID (arba „vardą“, jei norite), kad identifikuotų įrenginį, kai jis skelbia duomenis dweet.io. Jei norite, galite tai pakeisti, todėl maniau, kad tiesiog pranešiu jums:)

Norėdami patikrinti, ar jūsų duomenys iš tikrųjų siunčiami į dweet.io, tiesiog užpildykite reikiamą informaciją ir nukopijuokite/įklijuokite URL į bet kurią naršyklę:

dweet.io/get/latest/dweet/for/{deviceID}

kur {deviceID} turėtų būti pakeistas IMEI numeriu, kuris buvo išspausdintas serijiniame monitoriuje pradžioje, iškart po to, kai „Arduino“jį suranda. Įvedę tą URL naršyklėje, turėtumėte pamatyti tokį JSON atsakymą:

Žvelgdami į „turinį“, turėtumėte pamatyti savo vietos platumą, ilgumą, greitį (kilometrais per valandą), kryptį (laipsniai, 0 laipsnių šiaurėje), aukštį (metrais), temperatūrą (*C, bet jausti) nemokamai konvertuoti į kodą), o maitinimo įtampa-milivoltais (tai yra VBAT, akumuliatoriaus įtampa). Daugiau informacijos apie NMEA duomenų eilutę rasite SIM7000 AT komandų vadovo 149 puslapyje.

Kai patvirtinsite, kad jūsų sąranka sėkmingai siunčia duomenis į „Dweet“, nustatykime prietaisų skydelį, kad visi mūsų duomenys būtų rodomi gražioje sąsajoje!

4 žingsnis: „Freeboard.io“sąranka

„Freeboard.io“sąranka
„Freeboard.io“sąranka
„Freeboard.io“sąranka
„Freeboard.io“sąranka
„Freeboard.io“sąranka
„Freeboard.io“sąranka

Šiai pamokai naudosime „freeboard.io“- tikrai šaunų „IoT“prietaisų skydelį, kuris gali prisijungti prie daugybės debesų platformų, tokių kaip „PubNub“ir „dweet“, taip pat su kitomis funkcijomis, tokiomis kaip JSON ir MQTT. Kaip jūs tikriausiai atspėjote, mes taip pat naudosime dweet.io, kuris naudojamas ankstesnio skyriaus pavyzdiniame kode. Svarbu pažymėti, kad stiklų tempimas „freeboard.io“neveikia „Chrome“, todėl naudokite „Firebox“arba „Microsoft Edge“. Jei to nepadarysite, ekrane esančių elementų pertvarkymas gali būti tikra „sritis“!

Paskyros ir įrenginio sąranka

  • Pirmas dalykas, kurį turėsite padaryti, tai susikurti paskyrą, freeboard.io pagrindiniame puslapyje spustelėję raudoną mygtuką „PRADĖTI DABAR“, įvesti kredencialus ir spustelėti „Sukurti mano paskyrą“. Tada el. Paštu gausite pranešimą, patvirtinantį jūsų naują paskyrą.
  • Dabar pagrindinio puslapio viršutiniame dešiniajame kampe spustelėkite „Prisijungti“ir prisijungę turėtumėte pamatyti savo „nemokamas lentas“, kurios yra tik prietaisų skydeliai, kuriuos nustatėte savo projektams. Akivaizdu, kad jei paskyra nauja, čia nieko nematysite, todėl tiesiog įveskite naują projekto pavadinimą ir spustelėkite „Sukurti naują“viršuje dešinėje. Tada būsite nukreipti į tuščią prietaisų skydelį, kuriame galėsite nustatyti sąsają taip, kaip jums patinka. „Freeboard“ten galite nustatyti įvairias „sritis“, o kiekviena sritis gali turėti vieną ar kelis „valdiklius“, tokius kaip grafikai, žemėlapiai, matuokliai ir pan., Kurie tam tikru būdu rodo jūsų duomenis.
  • Pirmas dalykas, kurį turime padaryti dabar, yra nustatyti faktinį duomenų šaltinį, kuris yra jūsų „Arduino + LTE“skydas. Norėdami tai padaryti, viršutiniame dešiniajame skiltyje „Duomenų šaltiniai“spustelėkite „PRIDĖTI“. Tada pasirinkite „Dweet.io“ir lauke „Pavadinimas“įveskite norimą vardą. Tačiau įsitikinkite, kad lauke „Daikto pavadinimas“įvesite skydo IMEI numerį, o ne bet kokį savavališką pavadinimą, nes būtent tai „Freeboard“naudos duomenų ištraukimui iš „dweet“.
  • Spustelėję „Išsaugoti“, turėtumėte pamatyti savo įrenginį, esantį skiltyje „Duomenų šaltiniai“, ir paskutinį kartą, kai jis siuntė duomenis „dweet“. Taip pat galite spustelėti atnaujinimo mygtuką, kad patikrintumėte naujausias reikšmes, tačiau „freeboard“bus atnaujinta savaime, todėl paprastai to mygtuko naudoti nereikės.

Prietaisų skydelio sąranka

Dabar pažvelkime, kaip nustatyti tikrus varpus ir švilpukus, kuriuos norite matyti savo ekrane!

  • Norėdami pridėti sritį, spustelėkite mygtuką „ADD PANE“, esantį viršutiniame kairiajame kampe, ir pamatysite, kad ekrane bus pridėtas mažas langas. Tačiau čia dar nieko nėra, nes nepridėjome jokių valdiklių!
  • Norėdami pridėti valdiklį, spustelėkite mažą mygtuką „+“srityje. Tai parodys išskleidžiamąjį meniu su įvairiomis valdiklių parinktimis. Kadangi mes ketiname sekti GPS, pasirinkite „Google“žemėlapio valdiklį. Tada turėtumėte pamatyti du laukus - platumą ir ilgumą. Kad tinkamai užpildytumėte, jūsų įrenginys jau turi būti paskelbtas „Dweet“. Darant prielaidą, kad turite, turėtumėte spustelėti „+ Duomenų šaltinis“, spustelėti duomenų šaltinį („SIM7000 GPS sekimo priemonė“), tada spustelėti „lat“, kuris yra kintamojo pavadinimas, kurį skydas naudoja skelbdamas „Dweet“. Pakartokite ilgumos ilgio lauko procedūrą ir spustelėkite apačioje esantį slankiklį, jei norite, kad žemėlapis nubrėžtų linijas tarp duomenų taškų ir pažymėtų, kur buvote.
  • Dabar turėtumėte pamatyti nedidelį savo apytikslės vietos žemėlapį! Jei norite patikrinti, ar žemėlapis veikia, pabandykite pakeisti dabartinį GPS platumą/ilgį į kažką šiek tiek kitokio, pavyzdžiui, pakeisdami, pvz., Pirmąjį skaitmenį po dešimtainio taško taško, skirto „lat/long“reikšmėms dweet URL, kuris buvo išspausdintas serijiniame monitoriuje. „Arduino IDE“, kai skydas paskelbė duomenis. Pakeitę juos, nukopijuokite ir įklijuokite URL ir paleiskite jį savo naršyklėje.

dweet.io/dweet/for/112233445566778?lat=11.223344&long=-55.667788&speed=0&head=10&alt=324.8&temp=22.88&batt=3629

Dabar perjunkite atgal į laisvąjį bortą ir turėtumėte pamatyti, kad jis nubraižė jūsų patobulintą vietą ir tarp taškų nubrėžė oranžinę liniją! Šaunūs dalykai? Taigi manau, kad jūs susidarėte vaizdą, kad mūsų GPS sekimo priemonė atsiųs vietos duomenis į „Dweet“, kad galėtumėte juos pamatyti realiuoju laiku arba pasibaigus nuotykiui

Priedai

Kadangi mūsų mažasis GPS sekiklis siunčia ne tik platumo/ilgio duomenis, bet ir aukštį, greitį, kryptį ir temperatūrą, įsiminkime dar keletą valdiklių, kad prietaisų skydelis taptų spalvingesnis!

  • Pradėkime pridėdami naują sritį, tada norėdami pridėti matuoklį naujoje srityje, spustelėkite „+“mygtuką ir pasirinkite „Gauge“. Kaip ir anksčiau, naudokite duomenų šaltinį ir pasirinkite „greitis“kaip duomenis, kuriuos norime gauti šiam matuokliui. Tada savo prietaisų skydelyje turėtumėte pamatyti gražų matuoklį!
  • Pakartokite tai aukščio ir temperatūros reikšmėms.
  • Dabar prie antraštės pridėkime „žymeklį“. Tai iš esmės yra kompasas, nes jis pradeda rodyti aukštyn (šiaurė) 0 laipsnių kampu ir sukasi pagal laikrodžio rodyklę, kad gautų teigiamas kryptis.. Perfecto!
  • Norėdami pakeisti srities dydį, užveskite pelės žymeklį virš srities, kurioje yra žemėlapis, ir viršutiniame dešiniajame kampe turėtumėte pamatyti mažą veržliarakčio simbolį. Spustelėkite tai ir įveskite srities pavadinimą, o „Stulpeliuose“įveskite „2“, kad padidintumėte srities plotį.
  • Norėdami pakeisti stiklų vietą, tiesiog vilkite juos aplink! Taip pat galite eksperimentuoti pridėdami „Sparkline“, kuri iš esmės yra tik linijinė diagrama, kad galėtumėte matyti ne tik naujausius, bet ir istorinius duomenis.

Linksminkitės ir nustatykite viską taip, kaip jums patinka, nes mes pasiruošę išvykti į ekskursiją!

5 žingsnis: bandymas

Image
Image
Testavimas
Testavimas

Norėdami išbandyti jūsų sąranką, rekomenduoju nustatyti mažesnę mėginių ėmimo trukmę, pvz., 10–20 sekundžių, kad galėtumėte užfiksuoti savo kelionę didesne raiška. Taip pat paliksiu pakomentuotą „turnOffShield“kintamąjį, kad skydas neužmigtų. Tai leidžia greitai paskelbti duomenis iš eilės.

Įkėlę kodą į „Arduino“, įsigykite akumuliatorių (7–12 V), kad galėtumėte įjungti „Arduino“, arba tiesiog prijunkite „Arduino“naudodami automobilio USB adapterį. Jums taip pat reikės 3,7 V LiPo baterijos, prijungtos prie skydo, kaip minėta anksčiau; skydas, parodytas aukščiau esančiame paveikslėlyje, yra sena versija ir neturėjo „LiPo“akumuliatoriaus palaikymo, tačiau dabar jis reikalingas visoms naujesnėms versijoms.

Tada kažkur atidarykite „freeboard“, kad grįžę pamatytumėte rezultatus! Kai prijungsite „Arduino“, galėsite eiti! Pradėkite važiuoti, išgerkite kavos, grįžkite namo ir turėtumėte matyti duomenis, pateiktus ant laisvosios borto. Jei tikrai norite (aš to nerekomenduoju vairuodamas …), galite pamatyti laisvojo borto duomenis savo telefone realiu laiku, kai jūsų draugas vairuoja transporto priemonę. Linksmas dalykas!

6 žingsnis: Rezultatai

Rezultatai
Rezultatai

Atlikdami šį testą, mes su tėčiu nuėjome pasiimti vištienos būgnų pas „Trader Joe“(omnomnomnom …) ir surinkome gana tikslius duomenis. Įrenginys siuntė duomenis kas 10 sekundžių, o maksimalus kelionės greitis buvo apie 92 km (apie 57 mylių per valandą), o tai yra gana tiksliai, nes visą laiką stebėjome spidometrą. LTE skydas tikrai puikiai atlieka savo darbą ir labai greitai siunčia duomenis į debesį. Kol kas viskas gerai!

Tačiau turbūt nelabai gera žinia yra ta, kad „freeboard“žemėlapio valdiklis nėra toks puikus, kaip maniau iš pradžių. Tai neleidžia perkelti pelės vietos ir yra centre paskutinėje vietoje, todėl puikiai tinka tokiems dalykams kaip automobilio GPS sekiklis, bet ne, jei norite išanalizuoti užbaigtą kelionę su visais duomenų taškais, ypač jei ji buvo ilga kelionė.

Šioje pamokoje mes sužinojome, kaip naudoti LTE skydą kaip GPS sekiklį ir duomenų kaupiklį ir kaip greitai peržiūrėti duomenis „freeboard.io“. Dabar pasitelkite savo vaizduotę ir pritaikykite ją savo projekte. Jūs netgi galite pridėti daugiau skydų ir paversti tai mažos galios saulės duomenų kaupikliu! (Galbūt aš iš tikrųjų planuoju tai padaryti ateityje!). Dėl laisvųjų borto žemėlapio apribojimų aš taip pat planuoju sukurti visiškai naują mokymo programą, kaip sukurti savo „Android“programą, kuri paimtų duomenis iš „dweet“ir leis jums pradėti grafiškai sekti „Google“žemėlapių vietą, pristabdyti ir sustabdyti savo kelionės funkcijas! Sekite naujienas!

  • Jei jums patiko šis projektas, palikite jam širdį!
  • Jei turite klausimų, komentarų, pasiūlymų dėl naujos pamokos ar patys išbandėte šį projektą, būtinai komentuokite žemiau!
  • Sekite mane čia „Instructables“, užsiprenumeruokite mano „YouTube“kanalą arba sekite mane „Twitter“, kad būtumėte informuoti apie naujausius „Arduino“projektus! Esu jaunas inžinierius, turintis aistrą dalytis tuo, ką sužinojau, todėl tikrai netrukus bus daugiau pamokų!
  • Jei norite paremti tai, ką darau dalindamasi atvirojo kodo aparatine įranga ir kruopščiai dokumentuodama ją švietimo tikslais, apsvarstykite galimybę įsigyti savo skydą „Amazon.com“, kad galėtumėte žaisti!

Rekomenduojamas: