Мазмуну:

LTE Arduino GPS Tracker + IoT тактасы (2 -бөлүк): 6 кадам (сүрөттөр менен)
LTE Arduino GPS Tracker + IoT тактасы (2 -бөлүк): 6 кадам (сүрөттөр менен)

Video: LTE Arduino GPS Tracker + IoT тактасы (2 -бөлүк): 6 кадам (сүрөттөр менен)

Video: LTE Arduino GPS Tracker + IoT тактасы (2 -бөлүк): 6 кадам (сүрөттөр менен)
Video: 4G GPS Tracker using Blynk 2.0 🔥🔥 | No WiFi Required 🚫 2024, Ноябрь
Anonim
Image
Image
ThingsBoard орнотуу
ThingsBoard орнотуу

Intro & Part 1 Recap

Ооба, Arduino жана LTE менен SIM7000 GPS трекеринде дагы бир Инструкциялуу убакыт келди! Эгерде сизде азырынча жок болсо, сураныч, SIM7000 CAT-M/NB-IoT бөтөлкөсүнүн бөтөлкөлөрүн үйрөткүчтү окуп чыгыңыз, андан кийин GPSти көзөмөлдөө боюнча окуу куралынын 1-бөлүгүн окуп чыгыңыз. Ошентип, менде сизде бардык жабдыктар бар жана булутка маалыматтарды жайгаштырууга даярбыз деп ойлойм, бул окуу куралында биз чындыгында ThingsBoard менен таанышып, укмуштуудай маалыматтарды көрүү үчүн дагы бир жол тестин жасайбыз. көрсөтөт!

1 -бөлүктө биз тыкан GPS трекерибизди dweet.ioго жөнөтүү үчүн ийгиликтүү алдык жана маалыматтарды элестетүү үчүн freeboard.ioдогу маалыматтарды алдык. Бирок, көп өтпөй картанын функциясы бекер тактада абдан аксап турганын түшүндүм, анткени ал курсорду жылдырууга же виджет терезесинин өлчөмүн өзгөртүүгө мүмкүндүк бербейт. Бул мени жакшыраак чечимге алып келди: ThingsBoard.io-бул IoT супер укмуштуудай тактасы (жана бекер!), Бул сиздин маалыматыңызды сактоого, элестетүүгө жана ыңгайлаштырууга мүмкүндүк берет! Виджеттерди кайра иреттөө үчүн сүйрөңүз (жана ал Chrome'до freeboardдон айырмаланып иштейт), жана жалпы сапат - бул крем. Эң негизгиси, Google картасынын виджети сизди ары -бери жылдырууга, кичирейтүүгө жана кичирейтүүгө жана ар кандай стилдерди (спутник, жол көрүнүшү ж. !

1 -кадам: ThingsBoard орнотуусу

ThingsBoard орнотуу
ThingsBoard орнотуу
ThingsBoard орнотуу
ThingsBoard орнотуу

ThingsBoard эсебин жана түзмөктү орнотуу

Сиз кыла турган биринчи нерсе - ThingsBoard башкы барагына өтүү, андан кийин менюнун оң жактагы жогорку баскычын чыкылдатып, "Live Demo" тандоо менен каттоо эсебин түзүү. Аккаунт түзүңүз, алар жөнөткөн электрондук катта каттоо эсебиңизди ырастаңыз, анан кайра Live Demo башкы экранына кириңиз. Бул сизди бардык түзмөктөрүңүздү башкара турган, панелдерди түзөтө турган экранга алып келиши керек.

Андан кийин, сол жактагы "Түзмөктөр" өтмөгүн тандаңыз. Бул ESP8266, DHT22, Arduino жана Pi демо ж.б. сыяктуу демо түзмөктөрдүн бир тобун алып келиши керек. Оң жактын астындагы кызыл "+" баскычын басуу менен жаңы түзмөк түзүңүз жана атын киргизиңиз жана түзмөк түрү үчүн "демейки" тандаңыз. "КОШУУ" баскычын баскандан кийин, жаңы түзмөгүңүздү Түзмөктөр өтмөгүнөн көрүшүңүз керек. "Ишеним грамоталарын башкаруу" баскычын чыкылдатыңыз, анда кичинекей терезе ачылып, түзмөктүн жетүү белгисин көрсөтөт. Бул негизинен түзмөктүн идентификатору жана dweet.ioго маалыматтарды жайгаштыруу үчүн колдонулган түзмөктүн идентификаторуна окшош. Кааласаңыз, бул түзмөктүн идентификаторун калкаңыздын IMEI номерине өзгөртө аласыз, бирок сиз автоматтык түрдө түзүлгөн токенди колдоно аласыз. Бул белгини Arduino эскизинде сизге керек болгондой көчүрүңүз.

Arduino мисал орнотуусу

Бул үйрөткүчтө биз биринчи үйрөткүчтөгү Arduino эскизин колдонобуз, бирок бул жолу мен 1 -бөлүктөгү dweet.io ордуна маалыматты ThingsBoard.ioго жөнөтүү үчүн кодду камтыган эскизди жаңырттым., мисал кодун бул жерден Githubдан таба аласыз.

Эң биринчи эмне кылышыңыз керек, калкан билдирүүсүн dweet.ioго чыгарган саптарды комментарийлөө:

// Сурам алуу/* // Сиз ылдамдык, бийиктик ж.б сыяктуу кээ бир нерселерге муктаж болбосоңуз, сурамдын мазмунун тууралай аласыз sprintf (URL, "https://dweet.io/dweet/for/%s ? lat =%s & long =%s & speed =%s & head =%s & alt=%s & temp =%s & batt =%s ", imei, latBuff, longBuff, speedBuff, headBuff, altBuff, tempBuff, battBuff);

int counter = 0; // Бул ийгиликсиз аракеттердин санын эсептейт

// Пост ийгиликсиз болсо, жалпысынан үч жолу аракет кылыңыз (кошумча 2 жолу аракет кылыңыз), ал эми (counter <3 &&! Fona.postData ("GET", URL, "")) {// Цитаталарды "" үчүнчү катары кошуңуз киргизүү, анткени GET сурамы үчүн "body" жок Serial.println (F ("Маалыматтарды жайгаштыруу ишке ашкан жок, кайра аракет кылууда…")); counter ++; // Артка эсептегичти кечиктирүү (1000); } */

Андан кийин, thingsboard.ioго жазылган саптарды комментарийлебеңиз:

// Келгиле, нерселер тактасына POST өтүнүчүн карап көрөлү. Char const* token = "YOUR_DEVICE_TOKEN"; // From thingsboard.io device sprintf (URL, "https://demo.thingsboard.io/api/v1/%s/telemetry", токен); sprintf (дене, "{" кеңдик / ":%s, \" узундук / ":%s, \" ылдамдык / ":%s, \" баш / ":%s, \" alt / ":%s), / "temp \":%s, / "batt \":%s} ", latBuff, longBuff, speedBuff, headBuff, altBuff, tempBuff, battBuff); // sprintf (body, "{" lat / ":%s, \" long / ":%s}", latBuff, longBuff); // Эгерде сиз каалаган нерсенин баары лат/узун болсо

int counter = 0;

while (! fona.postData ("POST", URL, body)) {Serial.println (F ("HTTP POST аягына чыкпай калды…")); counter ++; кечигүү (1000); }

Кодду Arduinoго жүктөңүз, SIM картаны жана антеннаны тиркегениңизди текшериңиз жана улантуудан мурун калкан булутка код жөнөтүп жатканын текшериңиз!

ЭСКЕРТҮҮ: Arduino Uno эс тутуму (RAM) абдан аз жана Thingsboardго жайгаштыруу Arduino бузулушуна алып келиши мүмкүн. Эгерде сиз эскизди болжол менен postData () функциясы жайгашкан жерде же башка кызыктай жүрүм -турумда кайра баштасаңыз, анда бул эмне болуп жаткандыр. Оңой оңдоо - Unoну Arduino Mega же RAM менен тактага алмаштыруу. Сиз ошондой эле массивдердин өлчөмүн азайтууга аракет кылып, маалыматтарды бир нече билдирүүгө бөлө аласыз.

2 -кадам: Маалыматты кабыл алууну текшериңиз

Маалыматтардын кабыл алынышын текшерүү
Маалыматтардын кабыл алынышын текшерүү

Маалыматтар ThingsBoardго туура жөнөтүлүп жатканын текшерүү үчүн, ошол эле түзмөктүн чоо -жай баракчасына өтүңүз ("Түзмөктөр" барагындагы GPS Tracker түзмөгүн чыкылдатыңыз), андан кийин "Акыркы телеметрия" өтмөгүн басыңыз. Эгерде сиздин GPS трекериңиз ThingsBoardго баалуулуктарды жөнөтүп жатса, сиз бул жерде акыркы баалуулуктарды көрүшүңүз керек жана алар киргенде реалдуу убакытта жаңыртылат.

Эми ThingsBoard чындыгында маалыматтарды алып жатканын текшергенден кийин, биз маалыматты чогултуп жатканда элестете алышыбыз үчүн, тактаны орнотууга убакыт келди! (Же фактыдан кийин)

3 -кадам: Куралдар тактасын орнотуу

Куралдар тактасын орнотуу
Куралдар тактасын орнотуу
Куралдар тактасын орнотуу
Куралдар тактасын орнотуу
Куралдар тактасын орнотуу
Куралдар тактасын орнотуу

Эми кызыктуу бөлүгүнүн убактысы келди! Эми сол жактагы "Куралдар тактасы" өтмөгүн басып, GPS трекер түзмөгүңүздү тандаңыз. Бул виджеттерди кошууну суранган жаңы баракты алып келиши керек. Төмөнкү оң жактагы "+" баскычын чыкылдатып, "жаңы виджет түзүү" тандоо үчүн виджеттердин менюсун ачыңыз. Азырынча "санарип өлчөгүчтү" кошолу. Муну тандоо сиз тандаган санариптик өлчөгүчтөрдүн ар кандай түрлөрү үчүн бир топ алдын ала көрүүлөрдү жүктөшү керек. Бирин басканда, виджет параметрлерин орнотуу үчүн башка экран пайда болот. Сиз кошо турган биринчи нерсе - маалымат булагы (маалыматты ThingsBoardго жөнөтүүчү GPS трекериңиз). "+ КОШУУ" баскычын басыңыз жана "GPS Tracker" түзмөгүңүздү тандап, виджеттин көрсөтүүсүн каалаган ылайыктуу өзгөрмөнү тандаңыз. Бул учурда "темп" (температура) өзгөрмөсүн тандап алалы.

Эми виджеттин аталышы сыяктуу нерселерди кошкуңуз келсе, "Орнотуулар" өтмөгүнө өтүп, "Дисплейдин аталышын" текшерип, аталышты киргизиңиз. "Өркүндөтүлгөн" өтмөгүнүн астында кыла турган дагы көптөгөн нерселер бар, бирок мен аларды өзүңүз иликтөөгө уруксат берем! Баалардын диапазонун, этикетка текстин, түстөрдү жана башкаларды өзгөртүү менен көңүл ачыңыз! Виджетти кошкондон кийин ал панелиңиздин сол жагында пайда болот (эгер сизде экранды толтурган бир нече виджеттер болсо, ылдый жылдырышыңыз керек болот). Сиз виджетти каалаган убакта түзөтө аласыз, эгерде сиз панелдин түзөтүү режиминде болсоңуз же виджеттин баскычын басуу менен, же түзөтүүгө уруксат берүү үчүн алгач экрандын ылдый жагындагы карандаш баскычын басып түзөтүү режимине кире аласыз. виджеттер. Аябай түз!

4 -кадам: Карта кошуу

Карта кошуу!
Карта кошуу!
Карта кошуу!
Карта кошуу!
Карта кошуу!
Карта кошуу!
Карта кошуу!
Карта кошуу!

Эми GPS трекери үчүн карта керек! Келгиле, жаңы виджетти түзүү менен бирин кошобуз (кайра оң жактын асты "+" баскычы) жана бул жолу ылдый жылдырып "Карталарды" тандаңыз. Баргыла жана бирин чыкылдатыңыз, ал үчүн варианттарды алып келет. Маалымат булагын адаттагыдай эле кошуңуз, бирок бул жолу "лат" жана "узун" өзгөрмөлөрдү тандаңыз, анткени жайгашууну алуу үчүн экөөнө тең керек болот. Андан кийин, "Орнотуулар" өтмөгүнө өтүңүз жана бул жерде сиз маалыматтын убакыт терезесин картада көрсөтө аласыз. Мисалы, сиз маалыматтын акыркы 2 мүнөтүн гана көргүңүз келиши мүмкүн, же сиз кечээтен берки бардык маалыматтарды каалашыңыз мүмкүн, же сиз жөн гана убакыттын өтүшү менен туруктуу терезени каалайсыз (кечээ кечки саат 2ден кечки саат 10го чейин).

Кааласаңыз, анда "Өркүндөтүлгөн" өтмөгүнө өтүп, картанын түрүн (жол картасы, спутник, гибрид же рельеф) тандасаңыз болот. Балким, мунун эң маанилүү бөлүгү - кеңдиктин жана узунунун ачкыч аттарын текшерүү. Бул аттар чындыгында ThingsBoardго жөнөтүп жаткан өзгөрмө аттарга дал келерин текшериңиз. Мисалы, эгер сиздин Arduino эскизинде "lat" жана "long" өзгөрмөлөрү жөнөтүлүп жатса (демейки боюнча), анда сиз ачкыч аттарын "lat" жана "long" деп өзгөртүп, "latitude" жана "longitude" колдонушуңуз керек. дайындарыңыз алынбайт!

Дагы, картаны кошкондон кийин ал тактанын ылдый жагында пайда болот. Жөн гана аны панелге кайра жайгаштыруу үчүн сүйрөңүз жана өлчөмүн өзгөртүү үчүн четин басып, сүйрөңүз. Эгер убакыт терезеси туура коюлган болсо, картаңызда учурдагы жайгашкан жериңизди көрүшүңүз керек. Супер тыкан? Эми биз чыныгы сыноого даярбыз!

5 -кадам: Жол сынагы

Жол сынагы
Жол сынагы
Жол сынагы
Жол сынагы

GPS трекерин текшерүү өтө жөнөкөй! Жөн гана Arduino -ны машинанын USB адаптерине туташтырыңыз, жашыл LED күйүп турганын текшериңиз жана ал маалыматтарды жөнөтө башташы керек! GPS трекеринин тандалма ылдамдыгын өзгөртүү үчүн, бул сызыктын мисалын эскизден тапканыңызга ишениңиз:

#аныктоо үлгү алууRate 10 // Посттордун ортосундагы убакыт, секунда

жана аны каалаган нерсеңизге коюңуз. Мен 10s жай жол тестирлөө үчүн абдан жакшы иштээрин байкадым, бирок эгер сиз тез жана ачуулуу болсоңуз, балким андан да жогору тандоону талап кылышыңыз мүмкүн!

6 -кадам: Жыйынтыктар

Жыйынтыктар
Жыйынтыктар
Жыйынтыктар
Жыйынтыктар
Жыйынтыктар
Жыйынтыктар

Жогорудагы сүрөттөрдөн менин тактамдын орнотулушун көрө аласыз. Мен тарыхый маалыматтарды графикке ылдамдык, бийиктик жана температура сыяктуу нерселер үчүн коштум, ошондой эле реалдуу убакытта башка жол сапарында көргүм келсе, өлчөгүчтөрдү коштум (муну RVде көрүңүз!).

Карта өлтүргүч укмуш болчу, мен алган маршрутумдун так маалыматтарын чогулта алдым. Ошондой эле, ылдамдык маалыматы абдан так болчу, анткени биз шаардын жолдорунда саатына 40 мильден (график саатында) ашкан жокпуз. Ылдамдыктын көп өзгөрүүсүн светофор менен түшүндүрүүгө болот. Жалпысынан, сонун натыйжалар жана биз муну дагы эмне үчүн колдоно аларыбызды элестетиңиз! Сиз муну RVге, мотоциклге, унаага ж.б. орнотуп, аны дайыма көзөмөлдөп, ThingsBoardдо жыйынтыктарды чыгарсаңыз болот!

Жыйынтыктап айтканда, бул окуу куралында биз GPS трекерибизди маалыматты ThingsBoardго HTTP POST сурамдары аркылуу түз жөнөтүүгө программалап, маалымат тактасында башкарганбыз. Сиз бир нече түзмөктөрдү жана панелдерди кошо аласыз, алардын ар бири бир нече виджеттерди камтыйт, алар супер сонун көрүнөт жана көптөгөн ыңгайлаштыруу параметрлерине ээ! ThingsBoard IoT маалыматын көрүү үчүн абдан күчтүү (жана бекер!) Курал экени далилденди, ал тургай мен чийбеген дагы башка өзгөчөлүктөр бар. Аны менен ойноп, тапканыңызды көрүңүз.

  • Эгерде сизге бул окуу куралы жакса, өзүңүздүкү же кандайдыр бир суроолор болсо, астына комментарий жазыңыз!
  • Бул Instructable жүрөгүн берүүнү жана бул жерде жана менин YouTube каналыма жазылууну унутпаңыз, дагы сонун Arduino менен байланышкан сабактарды!
  • Эгерде сиз менин ишимди колдоону кааласаңыз, Amazon.com сайтында өзүңүздүн SIM7000 Botletics калканчыңызды сатып алыңыз!

Муну менен кийинки жолу көрүшөм!

Сунушталууда: