Агуулгын хүснэгт:

Замын зураглагч: 6 алхам
Замын зураглагч: 6 алхам

Видео: Замын зураглагч: 6 алхам

Видео: Замын зураглагч: 6 алхам
Видео: Milan, Italy Evening Walking Tour - 4K60fps with Captions - Prowalk Tours 2024, Арваннэгдүгээр
Anonim
Замын зураглагч
Замын зураглагч
Замын зураглагч
Замын зураглагч
Замын зураглагч
Замын зураглагч

Энэхүү IoT төсөлд бид NEO-6M (GPS модуль) -ыг холбож, байршлын өгөгдлийг Arduino-ээр дамжуулан компьютерт хадгалагдах Excel хуудсанд хүргэх болно. Үүний дараа Tableau Public -ийн тусламжтайгаар бид энэ өгөгдлүүдийн өгөгдлийг дүрслэн харуулах замаар өөрсдийн хийсэн замыг тодорхойлдог. Хэдийгээр энэ нь хоорондоо нягт уялдаатай өгөгдөлд бодит цагийн мэдээллийг цуглуулах, танилцуулах нэг арга боловч энэ үйл явцыг өгөгдөлд суурилсан бусад төслүүдэд ашиглаж болно.

Алхам 1: Материал авах

Материал олж авах
Материал олж авах

Энэ төслийн хувьд танд дараахь зүйлс хэрэгтэй болно.

  • NEO-6M GPS модуль
  • Ардуино Уно
  • Эрэгтэй/эрэгтэй холбогч утас (танд 4 утас хэрэгтэй болно)
  • USB 2.0 кабель А -аас В хүртэл
  • Эдгээр програмтай компьютер: Tableau Public, Arduino IDE (TinyGPS ++ -тэй), Боловсруулалт

Алхам 2: Төхөөрөмжүүдийг тохируулах

Төхөөрөмжүүдийг тохируулах
Төхөөрөмжүүдийг тохируулах
Төхөөрөмжүүдийг тохируулах
Төхөөрөмжүүдийг тохируулах

Arduino бидэнд өгөгдлийг харуулах интерфэйсийг өгөхийн тулд бид эхлээд GPS модулийг Arduino UNO -той тохируулах хэрэгтэй. NEO-6M-д холбогдсон дөрвөн утас тус бүр нь тодорхой портуудтай тохирдог. Хэрэв таны NEO-6M утастай хамт ирээгүй бол шууд холбогч утсаар холбох хэрэгтэй болно. Дээрх диаграммд улаан нь хүч (VCC), хар нь газарт (GND), шар нь өгөгдөл дамжуулахад (TxD), цагаан мэдээлэл хүлээн авахад (RxD) харгалзана. Бид эдгээр утсыг эрэгтэй/эрэгтэй холбогч утас руу холбодог тул Arduino -тэй холбох боломжтой болно. Дээрх диаграмын дагуу бид газардуулгын утсыг Arduino дээрх GND дижитал зүү, TxD утсыг 4, RxD утсыг ~ 3, VCC утсыг хүчдэлийн хувьд 5В -т холбоно. Ирээдүйн алхамд бид TxD ба RxD -ийг SoftwareSerial дээрх зөв тоогоор тодорхойлох шаардлагатай болно.

Хоёр төхөөрөмжийг хооронд нь холбосны дараа бид тэжээлийн эх үүсвэрээр хангах ёстой. USB 2.0 кабелийг зөөврийн компьютерт холбоно уу, NEO-6M дээрх гэрэл асах ёстой.

Алхам 3: Өгөгдлийг задлахын тулд Arduino -г кодлох

Өгөгдлийг задлахын тулд Arduino -г кодлох
Өгөгдлийг задлахын тулд Arduino -г кодлох

Одоо хиймэл дагуулаас GPS өгөгдөл цуглуулах төхөөрөмжүүдийг тохируулсны дараа бид хүссэн GPS өгөгдлөө задлан шинжлэх код бичих болно. Та дохио авсан гэж үзвэл (миний GPS модуль цэнхэр анивчих болно), NEO-6M нь өгөгдлийг цуваа дэлгэц дээр NMEA мессеж хэлбэрээр хэвлэдэг бөгөөд үүний дараа $ GP гэх мэт үсэг, цуврал гарч ирдэг. тоо. Дээрх зураг нь Arduino -ийн үндсэн кодыг оруулсны дараа таны цуваа дэлгэц дээр юу харагдах ёстой талаар ерөнхий ойлголтыг өгдөг.

Миний хавсаргасан кодыг тайлбарлахын тулд (эсвэл хэрэв та өөрөө кодлохыг хүсвэл) эхлээд SoftwareSerial болон TinyGPS ++ номын санг хоёуланг нь оруулах хэрэгтэй (сүүлийнх нь Sketch> Include> Add. ZIP номын сан). SoftwareSerial нь цуваа холболт хийх боломжийг бидэнд олгодог; TinyGPS ++ нь зорилтот мэдээллийг уншигдах хэлбэрээр хэвлэх хялбар хэрэгсэл юм. SoftwareSerial объектыг Arduino дээрх харгалзах зүү рүү эхлүүлсэн эсэхээ шалгаарай. Тохиргооны функцэд бид 9600 -ийг baud rate болгон ашигладаг.

Энэхүү зааварчилгааны зорилгоор бид давталтын функцэд зөвхөн долоон төрлийн өгөгдлийг хэвлэх болно: өргөрөг (градус), уртраг (градус), хурд (км), курс (градус), өндөр (км), хиймэл дагуулын тоо ашиглах, мөн hdop. Та энэ мэдээллийг Arduiniana номын санд хэвлэхийн тулд синтаксийг хайж олох боломжтой. Ерөнхий хэлбэр нь Serial.print () юм. Жишээлбэл, уртраг хэвлэхийн тулд бид Serial.print (gps.location.lng (), 6) гэж бичнэ. 6 нь аравтын бутархайн баруун талд хэдэн цифр байхыг хүсч байгааг илэрхийлнэ.

Дараагийн алхамд хялбархан форматлахын тулд миний код нэмэлт тэмдэгтүүдийг хэвлэв. Хэрэв та энэ алхам дээр зогсохыг хүсч байвал цуваа дэлгэц дээр харахад хялбар байхын тулд өгөгдлийг өөр өөр хэлбэрээр форматлаж болно.

Алхам 4: Сонсохын тулд боловсруулалтыг ашиглах

Боловсруулалтыг ашиглахын тулд сонсох
Боловсруулалтыг ашиглахын тулд сонсох

Бид Arduino IDE -ийг тохируулах кодтой боловч энэ өгөгдлийг хадгалах асуудал гардаг. Одоогийн байдлаар бид цуваа монитор дээрх өгөгдлийг цуглуулж байхдаа л харах боломжтой. Энэ өгөгдлийг бүртгэх олон арга бий, гэхдээ би интерфэйс нь Arduino IDE -ийг дуурайдаг бөгөөд миний мэддэг Java хэлийг ашигладаг тул боловсруулалтыг сонгосон (хэрэв та Firmata -ийг татаж авбал Arduino самбарыг Processing ашиглан хянах боломжтой гэдгийг анхаарна уу). Боловсруулалт нь Arduino -той холбогдсон порт дээр сонсогддог бөгөөд цуваа дэлгэц дээр уншсан өгөгдлийг удирдах чадвартай байдаг. Энэ портын нэрийг олохын тулд Arduino IDE файл руугаа буцаж очоод Хэрэгслүүд> Порт руу очно уу.

Би Боловсруулах кодыг өгсөн боловч код хэрхэн ажилладаг талаар товч танилцуулга энд байна.

Тохируулах функцын өмнө портын хувьсагч, үр дүнгийн хүснэгт, бидний ажиллах мөр, файлын нэр байгаа эсэхийг шалгаарай. Дараа нь тохиргооны функц дээр Run цонхны хэмжээг тохируулах параметрүүд байдаг боловч эдгээр тоо нь бидний үйл ажиллагаанд нөлөөлдөггүй (жишээлбэл, тэдгээрийг (500, 500) болгож тохируулна уу). Портийг эхлүүлэхдээ String хэлбэрээр боомтын нэр болон 9600 өгөгдлийн хурдыг ашиглана уу. Эцэст нь хүснэгтийг эхлүүлэхийн тулд есөн багана (GPS -ийн долоон ангилал, цаг, огнооны хувьд) үүсгэнэ үү.

Татах функц дээр бид GPS -ийн өгөгдлийн багц бүрийг хэзээ гаргаж авсныг хянах зорилгоор огноо, цагийн функцийг ашигладаг. Одоо Arduino -аас өгөгдлийн урсгалыг уншиж, зөв цаг, огноог зохих гарчигт оруулахын тулд бид тогтмол илэрхийллийг ашигладаг.

Тэнцүү тэмдэг ба цэг таслал хоёрын хооронд ямар нэгэн илэрхийлэлийг хайж олох matchAll функцээр яг өгөгдлийг задлахын тулд би regex -ийг ашигладаг (миний Arduino кодонд оруулсан тусгаарлагч). Энэ нь дараа нь таарсан бүх хаяг, тоон өгөгдлийг хоёр хэмжээст массивт байрлуулна. Дараа нь бид эдгээр массивын индексүүдийг дуудаж Excel хуудасны толгойн доор байрлуулж болно.

Шинэ.csv файлыг хадгалахын тулд бид товчлуурыг дарж Run цонхыг хаадаг. Түлхүүр дарах хүртэл хүлээх тусам илүү их мэдээлэл цуглуулах болно. Өөр гарын авлагын дагуу би файлыг өгөгдлийн хавтсанд огноо, цагийг файлын нэрээр хадгалахаар шийдсэн.

Алхам 5: Tableau дээрх мэдээллийг олон нийтэд үзүүлэх

Tableau -ийн мэдээллийг олон нийтэд үзүүлэх
Tableau -ийн мэдээллийг олон нийтэд үзүүлэх
Tableau -ийн мэдээллийг олон нийтэд үзүүлэх
Tableau -ийн мэдээллийг олон нийтэд үзүүлэх
Tableau -ийн мэдээллийг олон нийтэд харуулах
Tableau -ийн мэдээллийг олон нийтэд харуулах

Эцсийн алхам нь зарим өгөгдлийг дүрслэн харуулах явдал юм. Өгөгдлийн дүрслэлийг бий болгох, харуулах олон програмууд байдаг, өөрөөр хэлбэл Plotly, гэхдээ энэ төслийн хувьд бид Tableau -ийг ашиглах болно. Tableau Public -ийг нээж, хадгалсан Excel файлыг текст файл хэлбэрээр нээнэ үү. Ажлын хуудас үүсгэхийн тулд зүүн доод буланд байгаа 1 -р хуудсан дээр дарна уу.

Бид GPS өгөгдөлтэй ажиллаж байгаа тул газрын зургийг ашиглан мэдээллээ дүрслэх болно. Хэмжилт гэж бичсэн зүүн баганад бид уртрагыг багана руу, өргөргийг эгнээ рүү чирнэ. Tableau нь хоёуланг нь AVG гэж тохируулдаг тул нэр томъёоны хажууд байгаа дусал дээр дарж хоёуланг нь Хэмжээ болгон өөрчилнө үү. Одоо газрын зураг дээр цуглуулсан өргөрөг ба уртрагийн утгыг ашиглан замыг харуулах ёстой.

Өгөгдлөө алдаанаас цэвэрлэхийн тулд (үүнийг Tableau -ийг нээхээс өмнө хийж болно), та зарим байршлын тойргийг дарж сонголтыг сонгож хасах боломжтой. Миний GPS -ийн модуль 100% үнэн зөв биш, учир нь миний замын зарим хэсгийг олоогүй байгаа боловч ерөнхий замыг тэмдэглэсэн болно.

Алхам 6: Viz -ийг сайжруулах

Визийг сайжруулах
Визийг сайжруулах

Сүүлийн хэсэг нь энэ өгөгдлийг илүү унших боломжтой болгох явдал юм. Хэрэв та гудамжны нөхцөл байдлыг мэдэхийг хүсч байвал Газрын зураг> Газрын зургийн давхарга> Гудамж ба хурдны зам руу очиж болно. Бусад тэмдэгтүүдтэй туршилт хийхээс бүү эргэлзээрэй. Хурд нэмэгдэхэд өнгөний эрч хүч хэрхэн нэмэгддэгийг харуулахын тулд би Speed over Color -ийг чирсэн. Би бас Label for Course -ийн оронд Detail -ийг ашигласан, учир нь Label нь тоонуудыг газрын зураг дээр харуулдаг байсан бол байршлын цэгүүд дээр хулганыг байрлуулахад л мэдээлэл гарч ирэхийг хүссэн юм.

Та өгөгдөл цуглуулах, өөрт байгаа бүхнээ харуулах бүх үйл явцыг мэдэрсэн тул үүнийг бусад төслүүдэд ашиглах боломжтой боллоо!

Пинди Хуанг, 2018 оны зун

Зөвлөмж болгож буй: