Мазмұны:

Жол картасы: 6 қадам
Жол картасы: 6 қадам

Бейне: Жол картасы: 6 қадам

Бейне: Жол картасы: 6 қадам
Бейне: АСТАГФИРУЛЛАХ! ҚАБЫР ІШІНЕ КАМЕРА ОРНАТЫБ КӨМЫЛГЕН АДАМ 2024, Қараша
Anonim
Жол картасы
Жол картасы
Жол картасы
Жол картасы
Жол картасы
Жол картасы

Бұл IoT жобасында біз Arduino арқылы компьютерде сақталатын Excel парағына орналасу деректерін жеткізу үшін NEO-6M (GPS модулі) қосамыз. Кейіннен 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 әдепкі бойынша $ GP тәрізді сериялы мониторда NMEA хабарламалары түрінде бастапқы деректерді басып шығарады, одан кейін әріптер мен сериялар болады. сандар. Жоғарыдағы сурет негізгі Arduino коды енгізілгеннен кейін сериялық мониторда нені көрсету керектігі туралы жалпы түсінік береді.

Мен қосқан кодты түсіндіру үшін (немесе егер сіз оны өзіңіз кодтап көргіңіз келсе), алдымен SoftwareSerial және TinyGPS ++ кітапханаларын қосуыңыз керек (соңғысы үшін Sketch> Include> Add. ZIP кітапханасы). SoftwareSerial бізге сериялық қосылуға мүмкіндік береді; TinyGPS ++ бізге мақсатты ақпаратты оқылатын түрде басып шығарудың оңай құралы береді. SoftwareSerial нысанын Arduino -дегі сәйкес түйреуіштерге инициализациялағаныңызға көз жеткізіңіз. Орнату функциясында біз жылдамдық ретінде 9600 қолданамыз.

Бұл нұсқаулық үшін біз цикл функциясында деректердің тек жеті түрін басып шығарамыз: ендік (градус), бойлық (градус), жылдамдық (км), курс (градус), биіктік (км), жерсеріктер саны пайдалану, және hdop. Бұл ақпаратты басып шығару үшін синтаксисті Arduiniana кітапханасынан іздеуге болады. Жалпы форма - Serial.print (). Мысалы, бойлықты басып шығару үшін біз Serial.print (gps.location.lng (), 6) тереміз. 6 - ондық бөлшектің оң жағында қанша цифр қалайтынымызды білдіреді.

Менің кодымда келесі қадамда оңай пішімделген регекс үшін басып шығарылған қосымша таңбалар бар. Егер сіз бұл қадамды тоқтатқыңыз келсе, сериялық мониторда қарапайымдылық үшін деректерді басқаша пішімдеуге болады.

4 -қадам: Тыңдау үшін өңдеуді қолдану

Тыңдау үшін өңдеуді қолдану
Тыңдау үшін өңдеуді қолдану

Бізде Arduino IDE орнату коды болса да, бізде бұл деректерді сақтау мәселесі бар. Дәл қазір біз деректерді сериялық монитордан жинап жатқанда ғана қарай аламыз. Бұл деректерді тіркеудің көптеген жолдары бар, бірақ мен өңдеуді таңдадым, себебі оның интерфейсі Arduino IDE -ге еліктейді және ол мен білетін Java -ді қолданады (егер сіз Firmata жүктесеңіз Arduino тақтасын өңдеу арқылы басқаруға болатынын ескеріңіз). Өңдеу Arduino қосылған портта тыңдалады және сериялық мониторда оқылатын деректерді басқаруға қабілетті. Бұл порттың атауын табу үшін Arduino IDE файлына қайта оралыңыз және Құралдар> Портты тексеріңіз.

Мен өңдеу кодын ұсындым, бірақ мұнда кодтың қалай жұмыс істейтіні туралы қысқаша шолу.

Орнату функциясын бастамас бұрын, порттың айнымалысы бар екеніне көз жеткізіңіз, алынған кесте, біз жұмыс істейтін жол және файл атауы. Содан кейін орнату функциясында Іске қосу терезесінің өлшемін орнататын параметрлер бар, бірақ бұл сандар біздің функцияға әсер етпейді (мысалы, оларды (500, 500) етіп орнатыңыз). Портты инициализациялағанда, String түріндегі порт атауын және 9600 жіберу жылдамдығын қолданыңыз. Соңында кестені инициализациялау үшін тоғыз бағанды (жеті GPS санаты үшін, уақыт пен күн үшін) жасаңыз.

Draw функциясында біз GPS деректерінің әр жиынтығы қашан алынғанын бақылау үшін кіріктірілген күн мен уақыт функцияларын қолданамыз. Енді Arduino -дан деректер ағынын оқу және оны уақыт пен күнді сәйкес тақырыптар астына қою үшін біз тұрақты өрнектерді қолданамыз.

Мен тең дерек пен нүктелі үтір арасындағы кез келген өрнекті іздейтін matchAll функциясымен нақты деректерді талдау үшін regex қолданамын (мен Arduino кодыма қойған бөлгіштер). Бұл кейін сәйкес келетін барлық тегтерді, сандық деректерді екі өлшемді массивке орналастырады. Содан кейін біз осы индекстерді Excel парағының тақырыптарының астына қоюға шақыра аламыз.

Жаңа.csv файлын сақтау үшін біз іске қосу терезесін жабу үшін пернені басамыз. Пернені басуды неғұрлым ұзақ күтсеңіз, соғұрлым көп деректер жиналады. Басқа нұсқаулыққа сәйкес, мен файлды деректер қалтасына файл атауы ретінде күні мен уақытымен сақтауды шештім.

5 -қадам: Tableau Public туралы деректерді көрсету

Tableau Public туралы деректерді көрсету
Tableau Public туралы деректерді көрсету
Tableau Public туралы деректерді көрсету
Tableau Public туралы деректерді көрсету
Tableau Public туралы деректерді көрсету
Tableau Public туралы деректерді көрсету

Соңғы қадам деректерді визуализациялауды қамтиды. Деректердің визуализациясын құруға және көрсетуге арналған көптеген бағдарламалар бар, яғни Plotly, бірақ бұл жоба үшін Tableau қолданамыз. Tableau Public бағдарламасын ашыңыз және сақталған Excel файлын мәтіндік файл ретінде ашыңыз. Жұмыс парағын құру үшін төменгі сол жақтағы 1 -парақты басыңыз.

Біз GPS деректерімен жұмыс жасайтындықтан, біз ақпаратты көрсету үшін картаны қолданамыз. Өлшемдер жазылған сол жақ бағанда біз бойлықты бағандарға, ендік жолдардың жоғарғы жағына апарамыз. Tableau екі шараны да AVG бойынша әдепкі етіп қояды, сондықтан шарттардың жанындағы ашылмалы мәзірді нұқыңыз және екеуін де Өлшемге өзгертіңіз. Енді картада ендік пен бойлық мәндерін жинау арқылы көрсетілетін жол болуы керек.

Деректеріңізді қателікке тазарту үшін (бұл Tableau ашылмас бұрын жасалуы мүмкін), сіз оларды шертіп, опцияны таңдау арқылы кейбір орын шеңберлерін алып тастауды таңдай аласыз. Менің GPS модулім 100% дәл емес, себебі менің жолымның кейбір бөліктері табылмаған, бірақ жалпы жол жазылған.

6 -қадам: Визді тазарту

Визаны тазарту
Визаны тазарту

Соңғы бөлім - бұл деректерді оқуға ыңғайлы ету. Егер сіз көше контекстін алғыңыз келсе, Карта> Карта қабаты> Көшелер мен тас жолдарға өтуге болады. Басқа белгілермен тәжірибе жасаңыз. Мен Түстің үстіндегі Жылдамдықты сүйреп апардым, бұл жылдамдық жоғарылаған кезде түс қарқындылығы қалай артады. Мен сонымен қатар Label for Course орнына Detail қолдандым, себебі Label сандарды картадан көрсетеді, ал мен сіз орналасқан жердің нүктелерінің үстіне апарған кезде ғана ақпарат шығуын қалайтынмын.

Енді сіз деректерді жинаудың барлық процесін бастан өткердіңіз және деректерді визуализацияда не бар екенін көрсете аласыз, сіз оны басқа жобаларға қолдана аласыз!

Пинди Хуанг, жаз 2018 ж

Ұсынылған: