Мазмуну:
- 1 -кадам: Бул долбоордо колдонулган нерселер
- 2 -кадам: Окуя
- 3 -кадам: Аппараттык туташуу
- 4 -кадам: Желе конфигурациясы
- 5 -кадам: Программалык камсыздоо
- 6 -кадам: Башка сенсор Grove менен кантип иштөө керек?
Video: Google Картасы менен Транспорттук маалыматтарды визуалдаштыруу: 6 кадам
2024 Автор: John Day | [email protected]. Акыркы өзгөртүү: 2024-01-30 10:41
Биз, адатта, велосипед тебүү учурунда ар кандай маалыматтарды жазгыбыз келет, бул жолу аларды көзөмөлдөө үчүн жаңы Wio LTEди колдондук.
1 -кадам: Бул долбоордо колдонулган нерселер
Hareware компоненттери
- Wio LTE EU Version v1.3- 4G, Cat.1, GNSS, Espruino Compatible
- Grove - Кулак -клип Жүрөктүн кагыш сенсору
- Grove - 16 x 2 ЖК (Сарыда Кара)
Программалык камсыздоо жана онлайн кызматтары
- Arduino IDE
- PubNub Publish/Subscribe API
- Google Карталар
2 -кадам: Окуя
3 -кадам: Аппараттык туташуу
GPS жана LTE антенналарын Wio LTEге орнотуңуз жана SIM картаны ага сайыңыз. Ear-clip Heart Rate Sensor жана 16x2 LCDди Wio LTEдин D20 жана I2C портуна туташтырыңыз.
Сиз Ear-clip Heart Rate Sensor'ду сизге жаккан башка сенсорлорго өзгөртө аласыз. Сураныч, бул макаланын аягына караңыз.
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де Reset баскычын басыңыз.
Андан кийин PubNubга кайрылыңыз, Демо Долбоордогу Мүчүлүштүктөрдү Оңдоо Консолун чыкылдатыңыз, Демейки Каналда каналдын атын толтуруңуз, Кардар Кошуу дегенди басыңыз.
Консолдо [1, "Жазылган", "велосипед"] дегенди көргөндө, Абонент ийгиликтүү кошулду. Бир аз күтө туруңуз, Wio LTE маалыматы консолдо көрүнөт.
3 -бөлүк: Google картасы
ENO Карталары PubNub жана MapBox менен реалдуу убакыт карталары, аны PubNub жана Google Map үчүн да колдонсо болот, аны GitHubдан жүктөп алсаңыз болот.
Мисалдар папкасында google-draw-line.html аттуу мисалды колдонсоңуз болот, Жарыялоо Ачкычын, Жазылуу Ачкычын, Каналды жана Google Ачкычын 29, 30, 33 жана 47-саптарда өзгөртүңүз.
ЭСКЕРТҮҮ: 42 -сапка комментарий бериңиз, антпесе ал PubNub -га симуляциялык маалыматтарды жөнөтөт.
Эгерде сиз жүрөктүн кагышынын диаграммасын төмөнкү оң бурчта көрсөтүүнү кааласаңыз, Chart.js колдонсоңуз болот, аны анын Веб-сайтынан жүктөп алып, ENO Карталардын түпкү папкасына салып, google-draw-line.html башына кошсоңуз болот..
Жана диаграмманы көрсөтүү үчүн divга холст кошуңуз:
Андан кийин диаграмма маалыматын сактоо үчүн эки массив түзүңүз
//… var chartLabels = жаңы Array (); var chartData = new Array (); //…
Алардын арасында chartLabels жайгашуу маалыматын сактоо үчүн колдонулат, chartData жүрөктүн кагышын сактоо үчүн колдонулат. Кабарлар келгенде, аларга жаңы маалыматтарды түртүп, диаграмманы жаңыртыңыз.
//… var map = eon.map ({билдирүү: функция (кабар, убакыт, канал) {//… chartLabels.push (obj2string (кабар [0].latlng)); chartData.push (билдирүү [0].маалымат); var ctx = document.getElementById ("chart"). getContext ('2d'); var chart = new Chart (ctx, {type: 'line', data: {labels: chartLabels, data set: [{label: " Жүрөктүн кагышы ", маалыматтар: chartData}]}}); //…}});
Баары аткарылды. Кийинки жолу велосипед менен алып кетүүгө аракет кылыңыз.
6 -кадам: Башка сенсор Grove менен кантип иштөө керек?
Wio LTE программасында, сиз диаграммада көрсөтүү үчүн бир жана бир нече жеке маалыматтарды ала аласыз же дагы көп нерселерди жасай аласыз. Төмөнкү макалада ага жетүү үчүн программаны кантип өзгөртүү керектиги көрсөтүлгөн.
Сиз билишиңиз керек болгон биринчи нерсе, PubNubга жарыялоону каалаган json url-коддолгон болушу керек. Коддолгон json BikeTracker классында катуу коддолгон, ал мындай көрүнөт:
%% 5b %% 7b %% 22latlng %% 22 %% 3a %% 5b%f %% 2c%f %% 5d %% 2c %% 22data %% 22 %% 3a%d %% 7d %% 5d
Ошентип, бир ыңгайлаштырылган маалыматты алуу оңой, же url-коддоо инструменттерин колдонуп, көбүрөөк маалыматты алуу үчүн өзүңүздүн коддолгон json жасаңыз.
Бул жолу биз Heart Rate Grove ордуна I2C High Accracy Temp & Humi Grove колдонууга аракет кылабыз. LCD Grove I2Cди колдонгондуктан, биз Temp & Humi Grove менен LCD Groveду Wio LTEге туташтыруу үчүн I2C Hub колдонобуз.
Андан кийин BickTracker.hге баш файлды кошуп, температураны сактоо жана өлчөө үчүн BikeTracker классына вариантты жана ыкманы кошуңуз.
/// BikeTracker.h
//… #inced "Seeed_SHT35.h" класстын колдонмосу:: BikeTracker: application:: interface:: IApplication {//… proteced: //… SHT35 _sht35; float _temperature; //… void MeasureTemperature (боштук); } /// BikeTracker.cpp //… // BikeTracker:: BikeTracker (void) //: _ethernet (Ethernet ()), _gnss (GNSS ()) {} // 21 - бул SCL пин номери BikeTracker:: BikeTracker (жараксыз): _ethernet (Ethernet ()), _gnss (GNSS ()), _sht35 (SHT35 (21)) {} //… жараксыз BikeTracker:: tedTemperature (void) {калкып жүрүүчү температура, нымдуулук; if (_sht35.read_meas_data_single_shot (HIGH_REP_WITH_STRCH, & температура, жана нымдуулук) == NO_ERROR) {_temperature = температура; }} //…
Кааласаңыз, ЖК дисплейин Loop () методунда өзгөртө аласыз:
// sprintf (line2, "Heart Rate: %d", _heartRate);
MeasureTemperature (); 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 %% 22data %% 22 %% 3a%d %% 7d %% 5d? Store = 0 HTTP/1.0 / n / r / n / r ", // _publishKey, _subscribeKey, _channel, _atitude, _longitude, _heartRate); sprintf (cmd, "GET/жарыялоо/%s/%s/0/%s/0/%% 5b %% 7b %% 22latlng %% 22 %% 3a %% 5b%f %% 2c%f %% 5d %% 2c %% 22data %% 22 %% 3a%f %% 7d %% 5d? Store = 0 HTTP/1.0 / n / r / n / r ", _publishKey, _subscribeKey, _channel, _latitude, _longitude, _temperature);
Андан кийин PubNub мүчүлүштүктөрдү оңдоо консолунан температураны көрө аласыз.
Сунушталууда:
AWSте Magicbitтен маалыматтарды визуалдаштыруу: 5 кадам
AWSте Magicbitтен маалыматтарды визуалдаштыруу: Magicbitке туташкан сенсорлордон чогултулган маалыматтар MQTT аркылуу AWS IOT ядросуна жарыяланат жана реалдуу убакытта графикалык түрдө көрсөтүлөт. Биз ESP32ге негизделген бул долбоордун өнүгүү тактасы катары magicbitти колдонуп жатабыз. Ошондуктан, ар кандай ESP32 д
BBQ Pi (Маалыматты визуалдаштыруу менен!): 4 кадам (Сүрөттөр менен)
Барбекю Pi (Маалыматты визуалдаштыруу менен!): Киришүү Барбекю көбүнчө сүйүктүү эттериңизди бышыруу үчүн кыйыр жылуулукту колдонуунун жай процессин билдирет. Бул тамак бышыруу ыкмасы абдан популярдуу болгону менен - айрыкча АКШда - кээ бирлери олуттуу деп эсептеген нерсеге ээ
Infinityon XMC4700 RelaxKit, Infineon DPS422 жана AWSти колдонуу менен барометрдик басым менен температураны визуалдаштыруу: 8 кадам
Infineon XMC4700 RelaxKit, Infineon DPS422 жана AWSти колдонуу менен барометрдик басымды жана температураны элестетүү: Infineon DPS 422ди колдонуу менен барометрдик басым менен температураны тартуу үчүн жөнөкөй проект. Бул бир мезгил ичинде басым менен температураны көзөмөлдөө үчүн олдоксон болуп калат. Бул жерде аналитика сүрөттө, өзгөрүүлөр жөнүндө түшүнүк пайда болот
MotoStudent Electric Racing Bike үчүн маалыматтарды алуу жана маалыматтарды визуалдаштыруу системасы: 23 кадам
MotoStudent Electric Racing Bike үчүн маалыматтарды алуу жана маалыматтарды визуалдаштыруу системасы: Маалыматты алуу системасы - бул тышкы сенсорлордон маалыматтарды чогултуу, сактоо жана иштетүү үчүн чогуу иштеген аппараттык жана программалык камсыздоолордун жыйындысы, аны графикалык түрдө визуалдаштыруу жана анализдөө үчүн, инженерлерге уруксат берүү
Аудио визуалдаштыруу, тийүү баскычтары жана NFC менен Bluetooth үстөл спикери: 24 кадам (сүрөттөр менен)
Аудио визуалдаштыруу, тийүү баскычтары жана NFC менен Bluetooth столунун Bluetooth спикери. Саламатсызбы! Бул көрсөтмөлөрдө мен сенсордук баскычтар жана NFC менен укмуштуудай Аудио визуалдаштыруусу бар бул Desk Bluetooth спикерин кантип жасаганымды көрсөтөм. Бир чыкылдатуу менен NFC иштетилген түзмөктөр менен оңой жупташууга болот. Физикалык баскыч жок