Mundarija:
- 1 -qadam: Materiallarni olish
- 2 -qadam: Qurilmalarni sozlash
- 3 -qadam: Ma'lumotlarni olish uchun Arduino -ni kodlash
- 4 -qadam: Tinglash uchun ishlov berishdan foydalanish
- 5 -qadam: Tableau Public -da ma'lumotlarni ko'rsatish
- 6 -qadam: Vizni tozalash
Video: Yo'l xaritasi: 6 qadam
2024 Muallif: John Day | [email protected]. Oxirgi o'zgartirilgan: 2024-01-30 13:27
Ushbu IoT loyihasida biz joylashuv ma'lumotlarini Arduino orqali kompyuterda saqlanadigan Excel varagiga etkazish uchun NEO-6M (GPS moduli) ni ulaymiz. Keyinchalik Tableau Public -da biz o'tgan yo'lni aniqlash uchun ma'lumotlar vizualizatsiyasini yaratamiz. Garchi bu yuqori darajadagi o'zaro bog'liq ma'lumotlarda real vaqtda ma'lumotlarni to'plash va taqdim etishning bir usuli bo'lsa-da, bu jarayon ma'lumotlarga asoslangan boshqa loyihalarga ham qo'llanilishi mumkin.
1 -qadam: Materiallarni olish
Ushbu loyiha uchun sizga quyidagilar kerak bo'ladi:
- NEO-6M GPS moduli
- Arduino Uno
- Erkak/erkak o'tish simlari (sizga 4 ta sim kerak bo'ladi)
- USB 2.0 kabeli A dan B gacha
- Bu dasturlarga ega kompyuter: Tableau Public, Arduino IDE (TinyGPS ++ bilan) va ishlov berish
2 -qadam: Qurilmalarni sozlash
Arduino bizga ma'lumotlarni ko'rsatish uchun interfeys berishi uchun biz avval GPS modulini Arduino UNO bilan sozlashimiz kerak. NEO-6M ga ulangan to'rtta simning har biri ma'lum portlarga mos keladi. Agar sizning NEO-6M simlar bilan kelmasa, uni to'g'ridan-to'g'ri o'tish simlari bilan ulashingiz kerak bo'ladi. Yuqoridagi diagrammada qizil kuchga (VCC), qora erga (GND), sariq ma'lumot uzatishga (TxD) va oq qabul qilish uchun (RxD) mos keladi. Biz bu simlarni Arduino -ga ulashimiz uchun erkak/erkak o'tish simlariga ulaymiz. Yuqoridagi diagramaga binoan, biz topraklama simini Arduino -dagi GND raqamli piniga, TxD simini 4 ga, RxD simini ~ 3 ga va VCC simini kuchlanish uchun 5V ga ulaymiz. Kelgusi qadamda biz TxD va RxD ni SoftwareSerial -da to'g'ri raqamlar bilan aniqlashimiz kerak bo'ladi.
Ikkala qurilma bir -biriga ulanganidan so'ng, biz quvvat manbasini ta'minlashimiz kerak. USB 2.0 kabelini noutbukga ulang va NEO-6M chirog'i yonishi kerak.
3 -qadam: Ma'lumotlarni olish uchun Arduino -ni kodlash
Endi bizda yo'ldoshlardan GPS ma'lumotlarini yig'ish uchun moslamalar o'rnatilgan, biz kerakli GPS ma'lumotlarini ajratish uchun kod yozamiz. Siz signal olgan bo'lsangiz (mening GPS moduli ko'k rangda yonadi), NEO-6M sukut bo'yicha ketma-ket monitorda NMEA xabarlari ko'rinishidagi ma'lumotlarni chiqaradi, ular $ GPga o'xshaydi, keyin yana harflar va seriyalar. raqamlar. Yuqoridagi rasm Arduino -ning asosiy kodini kiritgandan so'ng, ketma -ket monitoringizda nima ko'rsatilishi kerakligi haqida umumiy tasavvur beradi.
Men biriktirgan kodni tushuntirish uchun (yoki agar siz uni o'zingiz kodlamoqchi bo'lsangiz), avval SoftwareSerial va TinyGPS ++ kutubxonalarini kiritishingiz kerak (ikkinchisi uchun Sketch> Include>. ZIP kutubxonasini qo'shish). SoftwareSerial bizga ketma -ket ulanishga imkon beradi; TinyGPS ++ bizga maqsadli ma'lumotni o'qiladigan shaklda chop etishning oson vositasini beradi. SoftwareSerial ob'ektini Arduino -dagi mos keladigan pinlarga ishga tushirganingizga ishonch hosil qiling. O'rnatish funktsiyasida biz tezlik sifatida 9600 dan foydalanamiz.
Buning uchun biz loop funktsiyasida faqat etti turdagi ma'lumotlarni chop etamiz: kenglik (daraja), uzunlik (daraja), tezlik (km), yo'nalish (daraja), balandlik (km), yo'ldoshlar soni. foydalanish va hdop. Siz bu ma'lumotlarni Arduiniana kutubxonasida chop etish uchun sintaksisini qidirishingiz mumkin. Umumiy shakl - Serial.print (). Masalan, uzunlikni bosib chiqarish uchun biz Serial.print (gps.location.lng (), 6) ni yozamiz. 6, o'nlik kasrning o'ng tomonida biz xohlagan qancha raqamni bildiradi.
Mening kodim keyingi bosqichda oson formatlangan regex uchun bosilgan qo'shimcha belgilarga ega. Agar siz bu qadamda to'xtamoqchi bo'lsangiz, ketma -ket monitorda ko'rish qulayligi uchun ma'lumotlarni boshqacha formatlashdan qo'rqing.
4 -qadam: Tinglash uchun ishlov berishdan foydalanish
Bizda Arduino IDE -ni sozlash kodi bo'lsa -da, bizda bu ma'lumotlarni saqlash muammosi bor. Hozircha biz ketma -ket monitorda ma'lumotlarni yig'ish paytida ko'rishimiz mumkin. Bu ma'lumotlarni yozib olishning ko'p usullari bor, lekin men asosan ishlov berishni tanladim, chunki uning interfeysi Arduino IDE -ni taqlid qiladi va u menga tanish bo'lgan Java -dan foydalanadi (agar siz Firmata -ni yuklasangiz, Arduino platasini Processing bilan ham boshqarishingiz mumkin). Qayta ishlash Arduino -ga ulangan portda eshitiladi va ketma -ket monitorda o'qiladigan ma'lumotlarni boshqarish imkoniyatiga ega. Ushbu port nomini topish uchun Arduino IDE faylingizga qayting va Asboblar> Port -ni tanlang.
Men ishlov berish kodini taqdim qildim, lekin bu erda kod qanday ishlashi haqida qisqacha ma'lumot.
O'rnatish funktsiyasidan oldin sizda port, o'zgaruvchi jadval, biz ishlaydigan qator va fayl nomi uchun o'zgaruvchilar borligiga ishonch hosil qiling. Keyin sozlash funktsiyasida ishga tushirish oynasining hajmini belgilaydigan parametrlar mavjud, lekin bu raqamlar bizning funksiyamizga ta'sir qilmaydi (masalan, ularni (500, 500) qilib belgilang). Portni ishga tushirayotganingizda, String shaklidagi port nomini va 9600 ta uzatma tezligini ishlating. Nihoyat, jadvalni ishga tushirish uchun to'qqizta ustunni (ettita GPS toifasi, vaqt va sana uchun) yarating.
O'ynash funktsiyasida biz har bir GPS ma'lumotlari qachon chiqarilishini kuzatib borish uchun o'rnatilgan sana va vaqt funktsiyalaridan foydalanamiz. Endi Arduino -dan ma'lumotlar oqimini o'qish va uni to'g'ri sarlavha ostiga to'g'ri vaqt va sana qo'yish uchun biz oddiy iboralarni ishlatamiz.
Men teng ma'lumotlarni va nuqta -vergul orasidagi har qanday ifodani qidiradigan matchAll funktsiyasi bilan aniq ma'lumotlarni ajratish uchun regexdan foydalanaman (men Arduino kodimga qo'ygan chegarachilar). Bu keyinchalik barcha mos keladigan teglarni, raqamli ma'lumotlarni ikki o'lchovli qatorga joylashtiradi. Keyin biz ushbu indekslarni Excel varag'ining sarlavhalari ostiga qo'yish uchun chaqira olamiz.
Yangi.csv faylini saqlash uchun "Run" oynasini yopish uchun tugmani bosamiz. Tugmani bosish uchun qancha kutsangiz, shuncha ko'p ma'lumotlar to'planadi. Boshqa yo'riqnomaga binoan, men ham faylni ma'lumotlar papkasida sana va vaqtni fayl nomi sifatida saqlashga qaror qildim.
5 -qadam: Tableau Public -da ma'lumotlarni ko'rsatish
Oxirgi bosqich ba'zi ma'lumotlarni vizualizatsiya qilishni o'z ichiga oladi. Ma'lumot vizualizatsiyasini yaratish va ko'rsatish uchun ko'plab dasturlar mavjud, ya'ni Plotly, lekin biz bu loyihada Tableau -dan foydalanamiz. Tableau Public -ni oching va saqlangan Excel faylini matnli fayl sifatida oching. Ishchi varaq yaratish uchun chap pastki burchakdagi 1 -varaqni bosing.
Biz GPS ma'lumotlari bilan ishlayotganimiz sababli, biz ma'lumotimizni tasvirlash uchun xaritadan foydalanamiz. O'lchovlar yozilgan chap ustunda biz uzunlikni ustunlarga, kenglikni esa satrlarga yuqoriga tortamiz. Tableau ikkala o'lchovni ham AVG -ga o'rnatadi, shuning uchun shartlar yonidagi ochiladigan belgini bosing va ikkalasini ham O'lchamga o'zgartiring. Endi xaritada to'plangan kenglik va uzunlik qiymatlari yordamida ko'rsatiladigan yo'l bo'lishi kerak.
Ma'lumotlaringizni xatolardan tozalash uchun (buni Tableau -ni ochishdan oldin ham qilish mumkin), siz ularni bosish va variantni tanlash orqali ba'zi joylashuv doiralarini chiqarib tashlashni tanlashingiz mumkin. Mening GPS modulim 100% aniq emas, chunki yo'lning ba'zi qismlari aniqlanmagan, lekin umumiy yo'l yozilgan.
6 -qadam: Vizni tozalash
Oxirgi qism - bu ma'lumotni yanada o'qiydigan qilish. Agar siz ko'cha kontekstini xohlasangiz, xarita> xarita qatlami> ko'chalar va avtomagistrallarga o'tishingiz mumkin. Boshqa belgilar bilan tajriba o'tkazing. Tezlik oshganda rangning qizg'inligi qanday oshishini ko'rsatish uchun Tezlikni Rang ustidan tortdim. Shuningdek, men "Kurs uchun yorliq" o'rniga "Tafsilot" dan foydalandim, chunki Label raqamlarni xaritada aks ettirar edi, men faqat ma'lumotni joylashuv nuqtalari ustida turganingizda paydo bo'lishini xohlardim.
Endi siz ma'lumotlarni yig'ish va ma'lumotlarni vizualizatsiya qilish jarayonini boshdan kechirgan bo'lsangiz, buni boshqa loyihalarga qo'llashingiz mumkin!
Pingdi Huang tomonidan, yoz 2018
Tavsiya:
London metrosi xaritasi: 9 qadam (rasmlar bilan)
London er osti xaritasi soati: 2014 yilda, Londonda 3D bosib chiqarish bo'yicha maslahatxonada amaliyot o'tab, Stratasys mashinasi yordamida rangli litofanlar bilan tajriba o'tkazganimda, men o'z qo'llarim bilan sovg'a tayyorladim. ofislar. Men edim
Kompyuter o'yinlarini boshqaruvchi xaritasi (Linux va Windows): 5 qadam
Kompyuter o'yinlari boshqaruvchisi xaritasi (Linux va Windows): Agar siz shaxsiy kompyuterda o'yin sohasini boshlayotgan bo'lsangiz, u erga borishingiz uchun bir necha qadam bo'lishi mumkin. Bugun men sizga USB o'yin boshqaruvchisidan, hatto eng qadimgi kompyuter o'yinlaridan ham bepul foydalanishni ko'rsataman. Texnika
4 -loyiha - elektron xaritasi: 9 qadam
4 -loyiha - Elektron xaritasi: Bu loyiha men yaxshi niyatda topgan Raptor New Bright F -150 RC o'yinchog'iga qaratilgan. Ushbu loyihada men o'yinchoq ichida nima bo'layotganini ko'rib chiqaman va o'yinchoqning har bir qismini qanday qismlarga ajratganimni ko'rsataman. Shuni ham ta'kidlash kerakki, bu o'yinchoq noto'g'ri edi
GPS kuzatuvining 3D xaritasi: 9 qadam
GPSni kuzatish 3D xaritasi: Bu loyiha 3D bosma 3D xaritadir, yo'llar, daryolar va shaharlar, oila a'zolarining joylashishini ko'rsatish uchun LED chiroqlari bilan. Bu bolaning maktabda yoki yo'qligini yoki faqat ikkala ota -onaning joyini ko'rsatishi mumkin. Bundan tashqari, biz bashorat qilishimiz mumkin
Yangi Taypey shahar sayyohlik xaritasi !!!: 6 qadam
Yangi Taypey shahar sayyohlik xaritasi !!!: Ushbu loyihada men quti yasayman va uning tepasida Yangi Taypey shahri xaritasi bo'ladi. Loyihaning maqsadi - bolalar va kattalarga Yangi Taypey shahridagi 3 ta asosiy maydonni bilish. Qutining yon tomonida 3 ta tugma joylashgan