Sisukord:

Tee kaardistaja: 6 sammu
Tee kaardistaja: 6 sammu

Video: Tee kaardistaja: 6 sammu

Video: Tee kaardistaja: 6 sammu
Video: Сериал - "Сваты" (1-й сезон 1-я серия) фильм комедия для всей семьи 2024, November
Anonim
Raja kaardistaja
Raja kaardistaja
Raja kaardistaja
Raja kaardistaja
Raja kaardistaja
Raja kaardistaja

Selles IoT-projektis ühendame NEO-6M (GPS-moodul), et edastada asukohaandmed Arduino kaudu Exceli lehele, mis salvestatakse arvutisse. Pärast seda loome Tableau Publiciga nende andmete andmete visualiseerimise, et kaardistada meie valitud tee. Kuigi see on üks viis reaalajas andmete kogumiseks ja esitamiseks kõrge korrelatsiooniga andmetes, saab seda protsessi rakendada ka teiste andmepõhiste projektide puhul.

Samm: materjalide hankimine

Materjalide hankimine
Materjalide hankimine

Selle projekti jaoks vajate järgmist:

  • NEO-6M GPS-moodul
  • Arduino Uno
  • Meeste/isaste hüppajate juhtmed (vajate 4 juhtmest)
  • USB 2.0 kaabel tüüp A kuni B.
  • Nende programmidega arvuti: Tableau Public, Arduino IDE (koos TinyGPS ++) ja töötlemine

Samm 2: Seadmete seadistamine

Seadmete seadistamine
Seadmete seadistamine
Seadmete seadistamine
Seadmete seadistamine

Esmalt peame seadistama GPS -mooduli Arduino UNO -ga, et Arduino annaks meile andmete kuvamiseks liidese. Kõik NEO-6M-iga ühendatud neli juhtmest vastavad teatud portidele. Kui teie NEO-6M ei tule juhtmetega kaasa, peate selle otse ühendama hüppajajuhtmetega. Ülaltoodud diagrammil vastab punane võimsusele (VCC), must maapinnale (GND), kollane andmete edastamiseks (TxD) ja valge andmete vastuvõtmisele (RxD). Me ühendame need juhtmed isaste/isaste hüppajajuhtmetega, et saaksime need Arduinoga ühendada. Järgides ülaltoodud skeemi, ühendame maandusjuhe Arduino GND digitaalse tihvtiga, TxD juhe 4, RxD juhe ~ 3 ja VCC juhe pingega 5 V. Tulevikus peame määratlema TxD ja RxD SoftwareSerialis õigete numbritega.

Kui kaks seadet on omavahel ühendatud, peame varustama toiteallika. Ühendage USB 2.0 kaabel sülearvutiga ja NEO-6M tuli peaks süttima.

Samm: Arduino kodeerimine andmete ekstraheerimiseks

Arduino kodeerimine andmete ekstraheerimiseks
Arduino kodeerimine andmete ekstraheerimiseks

Nüüd, kui oleme seadmed seadistanud satelliitidelt GPS -i andmeid koguma, kirjutame soovitud GPS -andmete parsimiseks koodi. Eeldades, et olete signaali üles võtnud (minu GPS-moodul vilguks siniselt), prindib NEO-6M vaikimisi jadamonitorile NMEA-sõnumite kujul töötlemata andmed, mis näevad välja nagu $ GP, millele järgneb rohkem tähti ja seeria numbritest. Ülaltoodud pilt annab üldise ettekujutuse sellest, mida tuleks teie seeriamonitoril kuvada pärast Arduino põhikoodi sisestamist.

Lisatud koodi selgitamiseks (või kui soovite proovida seda ise kodeerida), peate esmalt kaasama nii raamatukogud SoftwareSerial kui ka TinyGPS ++ (viimase puhul valige Sketch> Include> Add. ZIP library). SoftwareSerial võimaldab meil olla jadaühendus; TinyGPS ++ pakub lihtsat tööriista sihitud teabe loetavas vormis printimiseks. Vormistage kindlasti SoftwareSerial objekt Arduino vastavatele tihvtidele. Seadistusfunktsioonis kasutame andmeedastuskiiruseks 9600.

Selle juhendi eesmärgil trükime silmusefunktsioonis välja ainult seitse tüüpi andmeid: laiuskraadid (kraadid), pikkuskraadid (kraadid), kiirus (km), kurss (kraadid), kõrgus (km), satelliitide arv) kasutamine ja hdop. Arduiniana raamatukogus saate selle teabe printimiseks otsida süntaksi. Üldine vorm on Serial.print (). Näiteks pikkuse printimiseks trükiksime välja Serial.print (gps.location.lng (), 6). 6 tähistab, mitu numbrit tahame koma paremal.

Minu koodis on järgmises etapis hõlpsasti vormindatava regulaaravaldise huvides trükitud lisamärke. Kui soovite aga selle sammuga peatuda, vormindage andmed jadamonitoril hõlpsaks muutmiseks teisiti.

4. samm: töötlemise kasutamine kuulamiseks

Töötlemise kasutamine kuulamiseks
Töötlemise kasutamine kuulamiseks

Kuigi meil on Arduino IDE seadistamiseks kood, on meil probleem nende andmete salvestamisega. Praeguse seisuga saame andmeid vaadata ainult seeriamonitoril, kui neid kogume. Nende andmete registreerimiseks on palju viise, kuid valisin töötlemise peamiselt seetõttu, et selle liides jäljendab Arduino IDE -d ja kasutab Java -keelt, mis on mulle tuttav (pange tähele, et kui Firmata alla laadite, saate Arduino plaati ka töötlemisega juhtida). Töötlemine kuulab Arduinoga ühendatud porti ja tal on võimalus manipuleerida jadamonitorile loetud andmetega. Selle pordi nime leidmiseks vaadake tagasi oma Arduino IDE -faili ja valige Tools> Port.

Olen esitanud töötlemiskoodi, kuid siin on kiire ülevaade koodi toimimisest.

Enne seadistusfunktsiooni veenduge, et teil oleks pordi muutujad, tulemuseks olev tabel, rida, millega me töötame, ja faili nimi. Seejärel on seadistusfunktsioonis parameetrid, mis määravad teie akna Run suuruse, kuid need numbrid ei mõjuta meie funktsioone (näiteks määrake need väärtuseks (500, 500)). Kui lähtestate pordi, kasutage pordi nime kujul String ja edastuskiirust 9600. Lõpuks looge tabeli lähtestamiseks üheksa veergu (seitsme GPS -kategooria, kellaaja ja kuupäeva jaoks).

Joonistusfunktsioonis kasutame sisseehitatud kuupäeva ja kellaaja funktsioone, et jälgida, millal iga GPS -i andmebaas välja võetakse. Nüüd, et lugeda Arduino andmevoogu ja panna see õige kellaaja ja kuupäevaga vastavate päiste alla, kasutame regulaaravaldisi.

Kasutan regexit, et sõeluda täpsed andmed matchAll -funktsiooniga, mis otsib võrdusmärgi ja semikooloni (eraldajad, mille panin oma Arduino -koodi) vahele. Seejärel paigutatakse kõik sobitatud sildid, arvandmed, kahemõõtmelisse massiivi. Seejärel võime neid massiiviindekseid kasutada, et need Exceli lehe päiste alla panna.

Uue.csv -faili salvestamiseks kasutame klahvi vajutades akna Käivitamine. Mida kauem ootate klahvi vajutamist, seda rohkem andmeid kogute. Järgides teise juhendi viisi, otsustasin ka faili salvestada andmekausta koos kuupäeva ja kellaajaga.

5. samm: andmete kuvamine Tableau Publicis

Tableau Public andmete kuvamine
Tableau Public andmete kuvamine
Tableau Public andmete kuvamine
Tableau Public andmete kuvamine
Tableau Public andmete kuvamine
Tableau Public andmete kuvamine

Viimane samm hõlmab andmete visualiseerimist. Andmete visualiseerimise loomiseks ja kuvamiseks on palju programme, st Plotly, kuid selle projekti jaoks kasutame Tableau. Avage Tableau Public ja avage salvestatud Exceli fail tekstifailina. Töölehe loomiseks klõpsake vasakus alanurgas lehel 1.

Kuna töötame GPS -andmetega, kasutame oma teabe kujutamiseks kaarti. Vasakpoolses veerus, kus on kirjas Mõõdud, lohistame pikkuskraadi ülaosas veergudesse ja laiuskraadi ridadesse. Tableau vaikimisi on mõlemad mõõtmed AVG, nii et klõpsake tingimuste kõrval oleval rippmenüül ja muutke mõlemad mõõtmeteks. Nüüd peaks kaardil olema kuvatud tee, kasutades kogutud laius- ja pikkuskraate.

Andmete vigade puhastamiseks (mida saab teha ka enne Tableau avamist), võite mõne asukoharingi välistada, klõpsates neil ja valides suvandi. Minu GPS -moodul ei ole 100% täpne, kuna mõningaid minu teeosi pole leitud, kuid üldine tee on salvestatud.

6. samm: viisa täpsustamine

Viz'i täiustamine
Viz'i täiustamine

Viimane osa on muuta need andmed loetavamaks. Kui soovite tänavakonteksti, võite minna jaotisse Kaart> Kaardikiht> Tänavad ja maanteed. Katsetage julgelt teiste märkidega. Tõmbasin kiiruse üle värvi, et näidata, kuidas värvi intensiivsus suureneb kiiruse kasvades. Kasutasin kursuse Label asemel ka Detail, sest Label kuvaks kaardil olevaid numbreid, samas kui ma tahtsin, et teave ilmuks ainult siis, kui hõljutate kursorit asukohapunktide kohal.

Nüüd, kui olete kogenud kogu andmete kogumise ja andmete visualiseerimise protsessi kuvamist, saate seda rakendada ka teistele projektidele!

autor Pingdi Huang, suvi 2018

Soovitan: