Sisällysluettelo:

LTE Arduino GPS -seuranta + IoT -kojelauta (osa 1): 6 vaihetta (kuvilla)
LTE Arduino GPS -seuranta + IoT -kojelauta (osa 1): 6 vaihetta (kuvilla)

Video: LTE Arduino GPS -seuranta + IoT -kojelauta (osa 1): 6 vaihetta (kuvilla)

Video: LTE Arduino GPS -seuranta + IoT -kojelauta (osa 1): 6 vaihetta (kuvilla)
Video: Gilticus в такси)) 2024, Heinäkuu
Anonim
LTE Arduino GPS -seuranta + IoT -kojelauta (osa 1)
LTE Arduino GPS -seuranta + IoT -kojelauta (osa 1)
LTE Arduino GPS -seuranta + IoT -kojelauta (osa 1)
LTE Arduino GPS -seuranta + IoT -kojelauta (osa 1)
LTE Arduino GPS -seuranta + IoT -kojelauta (osa 1)
LTE Arduino GPS -seuranta + IoT -kojelauta (osa 1)

Johdanto

Mitä kuuluu, kaverit! Tämä Instructable on jatkoa ensimmäiselle ohjeelleni, joka koskee Botletics LTE/NB-IoT -kilven käyttöä Arduinolle, joten jos et ole jo lukenut sitä, lue se saadaksesi hyvän yleiskuvan suojan käytöstä ja mistä on kyse. Tässä opetusohjelmassa keskityn IoT -tietojen kirjaamiseen ja erityisesti GPS- ja lämpötilanseurantaan ja annan sinulle kaikki tarvitsemasi koodit ja ohjeet, jotta voit päästä tiellä ja testata sen!

Tämä Instructable keskittyy lähinnä LTE -kilpeen, jonka suunnittelin ja rakensin, mutta kaiken täällä (mukaan lukien Github Arduino -kirjasto) pitäisi toimia myös SIMComin 2G- ja 3G -moduuleissa, kuten SIM800/808/900/5320, koska se on vain päivitetty versio Adafruit FONA -kirjastosta. Laitteistosta riippumatta konsepti on täsmälleen sama, ja voit tehdä paljon hienoja juttuja, kuten anturitietojen kirjaamisen, etäsäävalvonnan, automaattisen varkauden karman GPS -seurannan jne.… Joten lue eteenpäin!

Vaihe 1: Kerää osat

Kerää osat
Kerää osat
Kerää osat
Kerää osat
Kerää osat
Kerää osat

Lista on sama kuin ensimmäisessä opetusohjelmassani ja se on todella yksinkertainen!

  • Arduino Uno, Mega tai Leonardo. Vaihtoehtoisesti voit käyttää mitä tahansa muuta 3,3 V: n tai 5 V: n mikro -ohjainta, mutta sinun on johdotettava nastat ulkoisesti.
  • Botletics SIM7000 Shield Kit (mukana tulee suoja, kaksi LTE/GPS -uFL -antennia ja pinoavat naaraspuoliset otsikot). Varmista, että käyt läpi tämän opetusohjelman valitaksesi sopivan version!
  • Hologrammi SIM -kortti. Ensimmäinen SIM -kortti (nimeltään "kehittäjä" SIM -kortti) on täysin ilmainen ja sen mukana tulee 1 Mt dataa kuukaudessa! Yhdysvalloissa olet todennäköisesti Verizon -verkossa, jos käytät Hologram -SIM -korttia. Voit myös noutaa sen Botletics -kilven rinnalle, jos se on kätevämpää.
  • 3,7 V LiPo -akku (suositus 1000 mAh tai suurempi).
  • USB -kaapeli Arduinon ohjelmoimiseksi tai virran saamiseksi.

GPS -seurantatestiä varten!

  • Voit käyttää Arduinon virtalähteenä auton USB -sovitinta testatessasi suojaa tiellä.
  • Vaihtoehtoisesti voit käyttää akkua (7-12 V) Arduinon virransyöttöön VIN- ja GND-nastojen kautta.

Vaihe 2: Fyysinen kokoonpano

Fyysinen kokoonpano
Fyysinen kokoonpano
Fyysinen kokoonpano
Fyysinen kokoonpano
Fyysinen kokoonpano
Fyysinen kokoonpano

Nyt kun sinulla on kaikki osat, tässä on lyhyt yhteenveto siitä, mitä sinun on tehtävä laitteiston asentamiseksi:

  • Juotos pinottavat naaraspäät kilpeen. Katso tämä opetusohjelma, miten se tehdään.
  • Kytke kilpi Arduinoon ja varmista, että kaikki nastat ovat linjassa, jotta et vahingoita niitä!
  • Aseta SIM -kortti paikalleen kuvan osoittamalla tavalla. Metallikoskettimet ovat alaspäin ja merkitse kulmassa olevan loven sijainti.
  • Liitä LiPo -akku suojalevyn JST -liittimeen
  • Liitä Arduino tietokoneeseen USB -kaapelilla. Saatat huomata, että kilven vihreä virran merkkivalo ei syty. Tämä on täysin normaalia, koska kilven PWRKEY -tappia on sykettävä vähän aikaa, jotta se kytkeytyy päälle. Seuraavassa osassa oleva Arduinon luonnos huolehtii siitä puolestasi!
  • Kiinnitä kaksois -LTE/GPS -antenni uFL -liittimiin suojan oikeassa reunassa. Huomaa, että johdot risteytyvät, joten älä kytke niitä väärin!
  • Olet valmis ohjelmistoon!

Vaihe 3: Arduino Setup & Device Testing

Arduino Setup & Device Testing
Arduino Setup & Device Testing

Arduino IDE -asennus

Jos et ole jo tehnyt niin, katso "Arduino IDE Setup" ja "Arduino Example" -vaiheet päätuotteessa Instructable ja varmista, että korttisi toimii oikein. Näissä ohjeissa sinun on ladattava kirjasto Github -sivulta ja avattava esimerkkikoodi "LTE_Demo". Näiden ohjeiden noudattamisen jälkeen sinun olisi pitänyt testata verkkoyhteys, GPS ja tietojen lähettäminen dweet.io -sivustoon.

IoT -esimerkkiluonnos

Nyt kun olet testannut kilven ydinominaisuuksia, lataa "IoT_Example" -luonnos Arduino IDE: hen. Löydät sen myös täältä Githubista. Lataa tämä koodi Arduinoosi ja avaa sarjamonitori, ja sinun pitäisi nähdä, että Arduino löytää SIM7000 -moduulin, muodostaa yhteyden matkapuhelinverkkoon, ottaa GPS: n käyttöön ja jatkaa yrittämistä, kunnes se saa paikan sijainnin, ja lähettää tiedot dweet.io -sivustoon. Tämän pitäisi toimia muuttamatta koodiriviä, olettaen, että käytät LTE -suojaa ja hologrammi -SIM -korttia.

Oletusarvoisesti näet seuraavan rivin, joka määrittelee näytteenottotaajuuden (no, itse asiassa viive viestien välillä).

#define samplingRate 30 // Aika viestien välillä sekunteina

Jos tämä rivi jätetään kommentoimatta, Arduino lähettää tietoja, viivästyttää 30 sekuntia, lähettää tiedot uudelleen, toistaa jne. 30 sekunnin viiveen aikana voit tehdä esimerkiksi laittaa Arduinon virransäästötilaan ja kuvitella sellaisia asioita, mutta yksinkertaisia asioita Käytän vain delay () -toimintoa toiminnon keskeyttämiseen. Jos kommentoit tätä riviä, Arduino lähettää tietoja ja siirtyy sitten virransäästötilaan loputtomiin, kunnes painat Arduinon nollauspainiketta. Tästä on hyötyä, jos testaat jotain etkä halua polttaa arvokkaita ilmaisia tietojasi (vaikka rehellisesti sanottuna jokainen viesti ei käytä käytännössä mitään) tai ehkä sinulla on ulkoinen piiri Arduinon nollaamiseksi (555 ajastin? RTC keskeyttää? Kiihtyvyysmittari keskeyttää? Lämpötila -anturi Ajattele laatikon ulkopuolella!). Itse asiassa Burgalert 7000 -opetusohjelmassa näytän, kuinka voit käyttää PIR -liiketunnistinta herättääksesi mikro -ohjaimen.

Seuraava rivi määrittää, sammuuko suojaus tietojen lähettämisen jälkeen vai pysyykö päällä. Voit valita edellisen vaihtoehdon poistamalla linjan kommentit, jos otat näytteitä vain silloin tällöin, mutta jos näytteenottotaajuus on suhteellisen korkea, haluat jättää rivin kommentoitavaksi, jotta suoja pysyy päällä eikä alustaa uudelleen, ottaa GPRS ja GPS uudelleen käyttöön jne. Kun suoja on jätetty päälle, se voi lähettää erittäin nopeasti!

//#define turnOffShield // Sammuta suojaus tietojen lähettämisen jälkeen

Muista myös, että tämä esimerkki hakee automaattisesti SIM7000: n moduulikohtaisen ja maailmanlaajuisesti yksilöllisen IMEI-numeron ja käyttää sitä laitetunnuksena (tai "nimenä", jos haluat) laitteen tunnistamiseksi, kun se lähettää tietoja dweet.io-palveluun.. Voit halutessasi muuttaa tätä, joten ajattelin vain kertoa sinulle:)

Jos haluat tarkistaa, lähetetäänkö tiedot todella osoitteeseen dweet.io, täytä tarvittavat tiedot ja kopioi/liitä URL -osoite mihin tahansa selaimeen:

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

jossa {deviceID} on korvattava IMEI -numerolla, joka tulostetaan sarjamonitorissa alussa heti, kun Arduino löytää sen. Kun olet kirjoittanut URL -osoitteen selaimeesi, näet seuraavanlaisen JSON -vastauksen:

"Sisältöä" tarkasteltaessa sinun pitäisi nähdä sijaintisi leveysaste, pituusaste, nopeutesi (kilometreinä tunnissa), suunta (astetta, 0 astetta pohjoista), korkeus (metriä), lämpötila (*C, mutta tunne vapaasti muunnettavissa koodissa) ja syöttöjännite millivoltteina (joka on VBAT, akun jännite). Lisätietoja NMEA -datasarjasta saat SIM7000 AT -käyttöoppaan sivulta 149.

Kun olet varmistanut, että asetukset lähettävät tiedot dweetille onnistuneesti, asetetaan koontinäyttö katsomaan kaikki tietomme mukavassa käyttöliittymässä!

Vaihe 4: Freeboard.io -asennus

Freeboard.io -asennus
Freeboard.io -asennus
Freeboard.io -asennus
Freeboard.io -asennus
Freeboard.io -asennus
Freeboard.io -asennus

Tässä opetusohjelmassa käytämme freeboard.io, todella siistiä IoT -koontinäyttöä, joka voi muodostaa yhteyden lukuisiin pilvialustoihin, kuten PubNub ja dweet, sekä muihin ominaisuuksiin, kuten JSON ja MQTT. Kuten luultavasti olette arvanneet, käytämme myös dweet.io -ohjelmaa, jota käytetään edellisen osan esimerkkikoodissa. Tärkeä huomautus: ruutujen vetäminen freeboard.io: ssa ei näytä toimivan Chromessa, joten käytä sen sijaan Fireboxia tai Microsoft Edgeä. Jos et, se voi olla todellinen "ruutu" järjestääksesi ruudun kohteet uudelleen!

Tilin ja laitteen asetukset

  • Ensimmäinen asia, joka sinun on tehtävä, on luoda tili napsauttamalla freeboard.io -kotisivun punaista "ALOITA NYT" -painiketta, kirjoita tunnistetiedot ja napsauta "Luo tili". Saat sitten sähköposti -ilmoituksen, jossa vahvistetaan uusi tilisi.
  • Napsauta nyt "Kirjaudu" etusivun oikeassa yläkulmassa ja sisäänkirjautumisen jälkeen sinun pitäisi nähdä "freeboards", jotka ovat vain koontinäyttöjä, jotka olet määrittänyt projekteillesi. Ilmeisesti, jos tili on uusi, et näe mitään täällä, joten kirjoita vain uuden projektin nimi ja napsauta "Luo uusi" oikeassa yläkulmassa. Tämä vie sinut tyhjään kojelautaan, jossa voit määrittää käyttöliittymän haluamallasi tavalla. Vapaalla laidalla voit asettaa erilaisia "ruutuja", ja jokaisessa ruudussa voi olla yksi tai useampi "widget", jotka ovat esimerkiksi kaavioita, karttoja, mittareita jne., Jotka näyttävät tietosi jollakin tavalla.
  • Ensimmäinen asia, joka meidän on nyt tehtävä, on määrittää todellinen tietolähde, joka on Arduino + LTE -kilpi. Voit tehdä tämän napsauttamalla "LISÄÄ" oikeassa yläkulmassa "Tietolähteet" -kohdassa. Valitse seuraavaksi "Dweet.io" ja kirjoita haluamasi nimi "Nimi" -kenttään. Varmista kuitenkin, että "Asian nimi" -kenttään kirjoitat kilven IMEI -numeron minkä tahansa mielivaltaisen nimen sijasta, koska sitä freeboard käyttää datan hakemiseen dweetistä.
  • Kun olet napsauttanut "Tallenna", laitteesi pitäisi näkyä "Tietolähteet" -kohdassa sekä viimeksi, kun se lähetti tietoja dweetille. Voit myös napsauttaa päivityspainiketta tarkistaaksesi uusimmat arvot, mutta freeboard päivittyy itsestään, joten sinun ei normaalisti tarvitse käyttää tätä painiketta.

Kojelaudan asetukset

Katsotaanpa nyt, miten voit asettaa todelliset kellot ja pillit, jotka haluat nähdä näytölläsi!

  • Jos haluat lisätä ruudun, napsauta "LISÄÄ PANEELI" -painiketta vasemmassa yläkulmassa ja näet sen lisäävän pienen ikkunan näytölle. Tässä ei kuitenkaan ole vielä mitään, koska emme ole lisänneet widgettejä!
  • Voit lisätä widgetin napsauttamalla pientä "+" -painiketta ruudussa. Tämä tuo esiin avattavan valikon, jossa on erilaisia widget -vaihtoehtoja. Koska aiomme tehdä GPS -seurantaa, valitaan "Google Map" -widget. Sinun pitäisi nähdä kaksi kenttää, leveys- ja pituusaste. Jotta voit täyttää nämä tiedot oikein, laitteesi on oltava jo lähetetty dweetiin. Jos oletetaan, että sinun pitäisi pystyä napsauttamaan "+ tietolähde", napsauttamaan tietolähdettä ("SIM7000 GPS -seurantalaite") ja napsauttamalla sitten "lat", joka on muuttujan nimi, jota kilpi käyttää dweet -viesteissä. Toista vaihe pituuspiirille ja napsauta alareunassa olevaa liukusäädintä, jos haluat kartan piirtävän viivat datapisteiden väliin osoittamaan, missä olet ollut.
  • Nyt sinun pitäisi nähdä pieni kartta likimääräisestä sijainnistasi! Jos haluat testata, toimiiko kartta, kokeile vaihtaa nykyinen GPS -leveys/pituus johonkin hieman erilaiseen muuttamalla esimerkiksi ensimmäistä numeroa lat/long -arvojen desimaalipisteen jälkeen dweet -URL -osoitteessa, joka tulostettiin sarjamonitorissa Arduino IDE, kun kilpi lähetti tietoja. Kun olet säätänyt niitä, kopioi ja liitä URL -osoite ja suorita se selaimessasi.

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

Vaihda nyt takaisin vapalautaan ja sinun pitäisi nähdä, että se piirtää säätämäsi sijainnin ja piirsi oranssin viivan pisteiden väliin! Hienoja juttuja vai? Joten luulen, että saat kuvan siitä, että GPS -seurantalaitteemme lähettää sijaintitiedot dweetille, jotta voit nähdä sen freeboardilla reaaliajassa tai seikkailun jälkeen

Ekstrat

Koska pieni GPS -seurantalaitteemme lähettää paitsi leveys/pituus tietoja myös korkeuden, nopeuden, suunnan ja lämpötilan, heitetään vielä muutama widget, jotta kojelaudastamme tulee värikkäämpi!

  • Aloitetaan lisäämällä uusi ruutu ja lisäämällä mittari uuteen ruutuun napsauttamalla ruudun "+" -painiketta ja valitsemalla "Mittari". Aivan kuten ennenkin, käytä tietolähdettä ja valitse "nopeus" tiedoiksi, joita haluamme hakea tälle mittarille. Sinun pitäisi sitten nähdä mukava mittari kojelaudallasi!
  • Toista tämä korkeus- ja lämpötila -arvoille.
  • Nyt otsikkoon lisätään sen sijaan "osoitin". Tämä on pohjimmiltaan kompassi, koska se alkaa ylöspäin (pohjoiseen) 0 astetta ja pyörii myötäpäivään positiivisten otsikoiden saamiseksi.. Perfecto!
  • Jos haluat muuttaa ruudun kokoa, vie hiiri kartan sisältävän ruudun päälle ja näet pienen jakoavainsymbolin oikeassa yläkulmassa. Napsauta sitä ja kirjoita ruudulle otsikko ja lisää "2" sarakkeisiin "ruudun leveyden lisäämiseksi".
  • Voit muuttaa lasien sijainteja vetämällä niitä ympäri! Voit myös kokeilla Sparkline -viivan lisäämistä, joka on pohjimmiltaan vain viivakaavio, jotta näet viimeisimpien tietojen lisäksi myös historialliset tiedot.

Pidä hauskaa ja aseta kaikki haluamallasi tavalla, koska olemme valmiita lähtemään retkelle!

Vaihe 5: Testaus

Image
Image
Testaus
Testaus

Asetusten testaamiseksi suosittelen näytteenottoajan asettamista pienemmäksi, esimerkiksi 10-20 sekunniksi, jotta voit tallentaa matkan korkeammalla resoluutiolla. Jätän myös "turnOffShield" -muuttujan kommentoitavaksi, jotta suoja ei mene nukkumaan. Tämän avulla se voi lähettää tietoja nopeasti peräkkäin.

Kun olet ladannut koodin Arduinoosi, hanki akku (7-12 V) Arduinon virransyöttöön tai kytke Arduino vain auton USB-sovittimella. Tarvitset myös 3,7 V LiPo -akun, joka on kytketty suojaan, kuten aiemmin mainittiin; yllä olevassa kuvassa näkyvä kilpi on vanha versio, eikä siinä ollut LiPo -akkua, mutta sitä tarvitaan nyt kaikissa uudemmissa versioissa.

Seuraavaksi avaa vapalauta jonnekin, joten kun palaat, näet tulokset! Kun liität Arduinon, olet valmis lähtemään! Aloita ajaminen ympäri, juo kahvia, palaa kotiin, ja sinun pitäisi nähdä tiedot, jotka on piirretty freeboardiin. Jos todella haluat (en suosittele tätä ajon aikana …), voit tarkastella puhelimesi freeboard -tietoja reaaliajassa, kun ystäväsi ajaa ajoneuvoa. Hauskoja juttuja!

Vaihe 6: Tulokset

Tulokset
Tulokset

Tätä testiä varten isäni ja minä menimme hakemaan kanarumpuja Trader Joe'silta (omnomnomnom…) ja keräsimme melko tarkkoja tietoja. Minulla oli laite lähettää tietoja 10 sekunnin välein ja matkan maksiminopeus oli noin 92 km (noin 57 mph), mikä on varsin tarkka, koska tarkkailimme nopeusmittaria koko ajan. LTE -kilpi tekee varmasti tehtävänsä melko hyvin ja lähettää tiedot pilveen erittäin nopeasti. Toistaiseksi niin hyvin!

Ehkä ei-niin hyvä uutinen on kuitenkin se, että freeboardin karttawidget ei ole niin suuri kuin alun perin ajattelin. Se ei salli hiiren sijainnin siirtämistä ja se pysyy keskellä viimeistä sijaintia, joten se sopii erinomaisesti esimerkiksi auton GPS -paikannukseen, mutta ei, jos haluat analysoida valmistuneen matkan kaikilla datapisteillä, varsinkin jos se oli pitkä matka.

Tässä opetusohjelmassa opimme käyttämään LTE -suojaa GPS -paikannimena ja tiedonkerääjänä sekä kuinka tarkastella tietoja nopeasti freeboard.io -sivustolla. Käytä nyt mielikuvitustasi ja käytä sitä omassa projektissasi. Voit jopa lisätä lisää kilpiä ja muuttaa tämän asian pienitehoiseksi aurinkotietolokeriksi! (Ehkä aion tehdä opetusohjelman siitä tulevaisuudessa!). Vapaan laidan kartan rajoitusten vuoksi aion myös tehdä aivan uuden opetusohjelman siitä, miten voit luoda oman Android -sovelluksesi, joka hakee tiedot dweetistä ja jonka avulla voit piirtää seurannan sijainnin Google Mapsissa alun, keskeytä ja pysäytä matkasi ominaisuudet! Pysy kanavalla!

  • Jos pidit tästä projektista, anna sille sydän!
  • Jos sinulla on kysyttävää, kommentteja, ehdotuksia uudesta opetusohjelmasta tai olet kokeillut tätä projektia itse, kommentoi ehdottomasti alla!
  • Seuraa minua täällä Instructablesissa, tilaa YouTube -kanavani tai seuraa minua Twitterissä, niin pysyt ajan tasalla uusimmista Arduino -projekteistani! Olen nuori insinööri, jolla on intohimo jakaa oppimani, joten pian tulee varmasti lisää opetusohjelmia!
  • Jos haluat tukea toimintaani avoimen lähdekoodin laitteiston jakamisessa ja dokumentoinnissa perusteellisesti opetustarkoituksiin, harkitse oman kilven ostamista Amazon.com -sivustolta pelataksesi!

Suositeltava: