Мазмұны:
- 1 -қадам: Бұл жобада қолданылатын заттар
- 2 -қадам: Әңгіме
- 3 -қадам: аппараттық қосылым
- 4 -қадам: веб -конфигурация
- 5 -қадам: бағдарламалық қамтамасыз ету
- 6 -қадам: Басқа сенсорлық тоғаймен қалай жұмыс істеу керек?
Бейне: Google картасының көмегімен деректерді тасымалдау: 6 қадам
2024 Автор: John Day | [email protected]. Соңғы өзгертілген: 2024-01-30 10:25
Біз әдетте велосипедпен жүру кезінде әр түрлі деректерді жазғымыз келеді, бұл жолы біз оларды бақылау үшін жаңа Wio LTE қолдандық.
1 -қадам: Бұл жобада қолданылатын заттар
Hareware компоненттері
- Wio LTE EU нұсқасы v1.3- 4G, Cat.1, GNSS, Espruino үйлесімді
- Гроув - жүрек соғу жиілігінің сенсоры
- Grove - 16 x 2 LCD (Сарыда қара)
Бағдарламалық жасақтама және онлайн қызметтері
- Arduino IDE
- PubNub Publish/Subscribe API
- Гугл картасы
2 -қадам: Әңгіме
3 -қадам: аппараттық қосылым
GPS және LTE антенналарын Wio LTE -ге орнатыңыз және оған SIM картаны қосыңыз. Құлақ қысқышының жүрек соғу жиілігі сенсоры мен 16x2 СКД Wio LTE D20 және I2C портына қосыңыз.
Құлақ қысқышының жүрек соғу жиілігін сенсорды өзіңізге ұнайтын басқа сенсорларға өзгертуге болады. Осы мақаланың соңын қараңыз.
4 -қадам: веб -конфигурация
1 -бөлім: PubNub
PubNub есептік жазбасына кіру немесе тіркелу үшін мына жерді басыңыз, PubNub нақты уақыттағы деректерді картаға жіберу үшін қолданылады.
PubNub әкімші порталында демонстрациялық жобаны ашыңыз, сіз жариялау кілті мен жазылу кілтін көресіз, оларды бағдарламалық қамтамасыз ету үшін есте сақтаңыз.
2 -бөлім: Google картасы
Google Map API кілтін алу үшін осында өтіңіз, ол бағдарламалық қамтамасыз етуде де қолданылады.
5 -қадам: бағдарламалық қамтамасыз ету
1 -бөлім: Wio LTE
Wio LTE үшін PubNub кітапханасы болмағандықтан, біз өз деректерімізді HTTP сұрауынан жібере аламыз, PubNub REST API құжатын қараңыз.
Wio LTE қосылған SIM картасы арқылы HTTP байланысын орнату үшін алдымен APN орнату керек, егер білмесеңіз, ұялы байланыс операторларына хабарласыңыз.
Содан кейін PubNub жариялау кілтін, жазылу кілтін және арнаны орнатыңыз. Бұл жердегі арна баспагерлер мен жазылушыларды ажырату үшін қолданылады. Мысалы, біз мұнда арна велосипедін қолданамыз, барлық велосипед жазылушылары біз жариялаған хабарларды алады.
Жоғарыда келтірілген параметрлерді біз сыныпта жинамадық, сондықтан оларды bike.ino -да оңай өзгертуге болады, сіз осы кодтарды осы мақаланың соңынан жүктей аласыз.
2 -бөлім: PubNub
Wio LTE -де Boot0 пернесін басып тұрыңыз, оны USB кабелі арқылы компьютерге қосыңыз, Arduino IDE бағдарламасына жүктеңіз, Wio LTE -де Қалпына келтіру түймесін басыңыз.
Содан кейін PubNub -қа жүгініңіз, Demo Project -те Debug Console түймесін басыңыз, әдепкі арнада арнаңыздың атын толтырыңыз, Клиент қосу түймешігін басыңыз.
Консольде [1, «Жазылған», «велосипед»] дегенді көргенде, Абонент сәтті қосылды. Біраз күтіңіз, консольде Wio LTE деректері пайда болады.
3 -бөлім: Google картасы
ENO Maps-бұл PubNub және MapBox бар нақты уақыттағы карталар, оны PubNub және Google Map үшін де қолдануға болады, оны GitHub сайтынан жүктеуге болады.
Мысалдар қалтасында google-draw-line.html деп аталатын мысалды қолдануға болады, 29, 30, 33 және 47-жолда Publish Key, Subscribe Key, Channel және Google Key-ді өзгертіңіз.
ЕСКЕРТУ: 42 -жолға түсініктеме беріңіз, әйтпесе ол PubNub -қа модельдеу деректерін жібереді.
Егер сіз жүрек соғу жиілігін диаграмманы төменгі оң жақта көрсеткіңіз келсе, Chart.js-ті қолдана аласыз, оны оның веб-сайтынан жүктеуге болады, оны ENO Maps-тің түпкі қалтасына салып, оны google-draw-line.html басына қосыңыз..
Диаграмманы көрсету үшін div -ге кенеп қосыңыз:
Содан кейін диаграмма деректерін сақтау үшін екі массив жасаңыз
//… var chartLabels = new Array (); var chartData = new Array (); //…
Олардың ішінде chartLabels орналасу деректерін сақтау үшін, chartData жүрек соғу жиілігін сақтау үшін қолданылады. Хабарлар келгенде, оларға жаңа деректерді жіберіп, диаграмманы жаңартыңыз.
//… var map = eon.map ({хабар: функция (хабар, уақыт, канал) {//… chartLabels.push (obj2string (хабар [0].latlng)); chartData.push (хабар [0].мәліметтер); var ctx = document.getElementById («диаграмма»). getContext ('2d'); var chart = жаңа диаграмма (ctx, {type: 'line', деректер: {labels: chartLabels, деректер жиынтығы: [{label: « Жүрек соғу жиілігі «, деректер: chartData}]}}); //…}});
Барлығы жасалды. Келесі жолы велосипедпен алып кетуге тырысыңыз.
6 -қадам: Басқа сенсорлық тоғаймен қалай жұмыс істеу керек?
Wio LTE бағдарламасында диаграммада көрсету үшін бір немесе бірнеше реттелетін деректерді алуға немесе басқаларын жасауға болады. Келесі мақалада оған жету үшін бағдарламаны қалай өзгерту керектігі көрсетілген.
Сіз білуіңіз керек бірінші нәрсе-PubNub-та жариялағыңыз келетін json url-кодталған болуы керек. Кодталған json BikeTracker сыныбында қатты кодталған, ол келесідей:
%% 5b %% 7b %% 22latlng %% 22 %% 3a %% 5b%f %% 2c%f %% 5d %% 2c %% 22data %% 22 %% 3a%d %% 7d %% 5d
Сонымен, бір реттелетін деректерді алу оңай, немесе сіз қосымша деректерді алу үшін өзіңіздің кодталған json жасау үшін url-кодтау құралдарын пайдалана аласыз.
Бұл жолы біз Heart Rate Grove орнына I2C High Accracy Temp & Humi Grove қолдануға тырысамыз. LCD Grove -де I2C қолданылғандықтан, біз Temp & Humi Grove мен LCD Grove -ді Wio LTE -ге қосу үшін I2C хабын қолданамыз.
Содан кейін BickTracker.h файлына бас файлды енгізіңіз және температураны сақтау мен өлшеу үшін BikeTracker класына вариант пен әдісті қосыңыз.
/// BikeTracker.h
//… #«Seeed_SHT35.h» сынып қосымшасын қосыңыз:: BikeTracker: application:: interface:: IApplication {//… қорғалған: //… SHT35 _sht35; float _temperature; //… void MeasureTemperature (void); } /// BikeTracker.cpp //… // BikeTracker:: BikeTracker (void) //: _ethernet (Ethernet ()), _gnss (GNSS ()) {} // 21 - бұл SCL PIN нөмірі BikeTracker:: BikeTracker (жарамсыз): _ethernet (Ethernet ()), _gnss (GNSS ()), _sht35 (SHT35 (21)) {} //… жарамсыз BikeTracker:: tedTemperature (void) {өзгермелі температура, ылғалдылық; if (_sht35.read_meas_data_single_shot (HIGH_REP_WITH_STRCH, & температура, және ылғалдылық) == ЖОҚ_ҚАТЕ) {_temperature = температура; }} //…
Қаласаңыз, СКД дисплейін Loop () әдісімен өзгертуге болады:
// sprintf (2 -жол, «Жүрек соғу жиілігі: %d», _heartRate);
Температураны өлшеу (); sprintf (line2, «Temp: %f», _temperature);
Бірақ оны PubNub -те қалай жариялау керек? PublishToPubNub () әдісінде кодталған json және sprintf () функциясының параметрлерін өзгерту қажет, ол келесідей болсын:
// sprintf (cmd, «GET/жариялау/%s/%s/0/%s/0/%% 5b %% 7b %% 22latlng %% 22 %% 3a %% 5b%f %% 2c%f% %5d %% 2c %% 22мәліметтер %% 22 %% 3a%d %% 7d %% 5d? Store = 0 HTTP/1.0 / n / r / n / r «, // _publishKey, _subscribeKey, _kanal, _латitude, _longitude, _heartRate); sprintf (cmd, «GET/жариялау/%s/%s/0/%s/0/%% 5b %% 7b %% 22latlng %% 22 %% 3a %% 5b%f %% 2c%f %% 5d %% 2c %% 22мәліметтер %% 22 %% 3a%f %% 7d %% 5d? Store = 0 HTTP/1.0 / n / r / n / r «, _publishKey, _subscribeKey, _kanal, _латит, _ ұзындық, _температура);
Содан кейін PubNub отладтау консолінде температураны көре аласыз.
Ұсынылған:
ESP8266, электронды қағаз дисплейі көмегімен коронавирустық COVID 19 тірі деректерді бақылау құралын қалай жасауға болады: 7 қадам
ESP8266, электронды қағаз дисплейі көмегімен коронавирустық COVID 19 тірі деректерді бақылау құралын қалай жасауға болады: 1
NodeMcu көмегімен кез келген веб -сайттан деректерді Wi -Fi арқылы (Солтүстік шамдар индикаторы) тартыңыз және тез көрсетіңіз: 6 қадам
NodeMcu көмегімен кез келген веб -сайттағы деректерді Wifi желісінен (Солтүстік шамдар индикаторы) тартып, тез арада көрсетіңіз: Менің мотивациям: IoT (заттардың интернеті) жобаларын жасау үшін NodeMCU (ESP8266 модулінде салынған) орнату/ пайдалану бойынша көптеген нұсқауларды көрдім. . Алайда, бұл оқулықтардың өте азында жаңадан бастаушыға арналған барлық мәліметтер/ кодтар/ диаграммалар болды
LPWAN-ға негізделген IoT құрылғыларының көмегімен фотосуреттерді тасымалдау мүмкін бе ?: 6 қадам
LPWAN-ға негізделген IoT құрылғыларының көмегімен фотосуреттерді тасымалдауға болады ма? Өкіл технологиялар-Sigfox, LoRa NB-IoT және LTE Cat.M1. Мұның бәрі төмен қуатты қалааралық байланыс технологиясы. Жалпы алғанда
MotoStudent электрлік велосипедіне арналған деректерді алу және деректерді визуализациялау жүйесі: 23 қадам
MotoStudent электрлік велосипедіне арналған деректерді жинау және деректерді визуализациялау жүйесі: Деректерді жинау жүйесі - бұл сыртқы датчиктерден деректерді жинау, сақтау және өңдеу үшін оны бірге өңдейтін аппараттық және бағдарламалық қамтамасыз етудің жиынтығы, оны графикалық түрде көруге және талдауға болады. инженерлерге мүмкіндік береді
RFID және Arduino Ethernet Shield көмегімен Google электрондық кестесінде деректерді сақтайтын қатысу жүйесі: 6 қадам
RFID және Arduino Ethernet Shield көмегімен Google электрондық кестесінде деректерді сақтайтын келушілер жүйесі: Сәлеметсіздер ме, балалар, біз өте қызықты жобаны ойлап табамыз, бұл Arduino көмегімен Google кестесіне rfid деректерін жіберу. Қысқаша айтқанда, біз rfid оқу құралына негізделген келу жүйесін құратын боламыз, бұл қатысушылардың деректерін нақты уақыт режимінде сақтауға мүмкіндік береді