Tartalomjegyzék:

LTE Arduino GPS Tracker + IoT Dashboard (1. rész): 6 lépés (képekkel)
LTE Arduino GPS Tracker + IoT Dashboard (1. rész): 6 lépés (képekkel)

Videó: LTE Arduino GPS Tracker + IoT Dashboard (1. rész): 6 lépés (képekkel)

Videó: LTE Arduino GPS Tracker + IoT Dashboard (1. rész): 6 lépés (képekkel)
Videó: #10 Real-Time LTE Arduino GPS Tracker (Part 1) 2024, Július
Anonim
LTE Arduino GPS Tracker + IoT Dashboard (1. rész)
LTE Arduino GPS Tracker + IoT Dashboard (1. rész)
LTE Arduino GPS Tracker + IoT Dashboard (1. rész)
LTE Arduino GPS Tracker + IoT Dashboard (1. rész)
LTE Arduino GPS Tracker + IoT Dashboard (1. rész)
LTE Arduino GPS Tracker + IoT Dashboard (1. rész)

Bevezetés

Mi van skacok! Ez az Instructable a Botletics LTE/NB-IoT pajzs Arduino használatára vonatkozó első utasításom folytatása, ezért ha még nem tette meg, kérjük, olvassa el, hogy jó áttekintést kapjon a pajzs használatáról és miről szól. Ebben az oktatóanyagban az IoT -adatnaplózásra, és különösen a GPS -re és a hőmérséklet -követésre fogok összpontosítani, és megadom az összes kódot és útmutatást, amelyekre szüksége van az út elindításához és kipróbálásához!

Ez az Instructable elsősorban az általam személyesen tervezett és épített LTE pajzsra összpontosít, de itt mindennek (beleértve a Github Arduino könyvtárat) működnie kell a SIMCom 2G és 3G moduljain is, mint például a SIM800/808/900/5320, mivel ez csak egy frissített az Adafruit FONA könyvtárának változata. A hardvertől függetlenül a koncepció pontosan ugyanaz, és ezzel sok érdekes dolgot tehet, beleértve az érzékelőadatok naplózását, az időjárás távoli megfigyelését, az automatikus lopás -karma GPS -nyomkövetést stb., Ezért olvasson tovább!

1. lépés: Gyűjtse össze az alkatrészeket

Gyűjtse össze az alkatrészeket
Gyűjtse össze az alkatrészeket
Gyűjtse össze az alkatrészeket
Gyűjtse össze az alkatrészeket
Gyűjtse össze az alkatrészeket
Gyűjtse össze az alkatrészeket

A lista ugyanaz, mint az első oktatóanyagomban, és nagyon egyszerű!

  • Arduino Uno, Mega vagy Leonardo. Alternatív megoldásként használhat bármilyen más 3.3V vagy 5V mikrokontrollert, de külsőleg be kell vezetni a csapokat.
  • Botletics SIM7000 Shield Kit (árnyékolással, kettős LTE/GPS uFL antennával és egymásra rakható női fejrészekkel). Feltétlenül nézze át ezt az oktatóanyagot a megfelelő verzió kiválasztásához!
  • Hologramos SIM kártya. Az első SIM -kártya ("fejlesztői" SIM -kártya) teljesen ingyenes, és havi 1 MB adatot tartalmaz! Az USA -ban valószínűleg a Verizon hálózaton lesz, ha a Hologram SIM -kártyát használja. Felveheti a Botletics pajzs mellett is, ha ez kényelmesebb.
  • 3,7 V -os LiPo akkumulátor (1000 mAh vagy nagyobb kapacitás ajánlott).
  • USB -kábel az Arduino programozásához vagy áramellátásához.

A GPS nyomkövetési teszthez!

  • Használhatja az autó USB -adapterét az Arduino áramellátásához, miközben teszteli a pajzsot az úton.
  • Alternatív megoldásként használhat egy akkumulátort (7-12 V) az Arduino áramellátásához a VIN és GND érintkezőkön keresztül.

2. lépés: Fizikai összeszerelés

Fizikai összeszerelés
Fizikai összeszerelés
Fizikai összeszerelés
Fizikai összeszerelés
Fizikai összeszerelés
Fizikai összeszerelés

Most, hogy megvan az összes alkatrész, itt van egy rövid összefoglaló arról, hogy mit kell tennie a hardver beállításához:

  • Forrasztja az egymásra rakható női fejléceket a pajzsra. Tekintse meg ezt az oktatóanyagot, hogyan kell ezt megtenni.
  • Csatlakoztassa a pajzsot az Arduino -hoz, ügyelve arra, hogy az összes csapot egy vonalba helyezze, hogy ne károsítsa őket!
  • Helyezze be a SIM -kártyát a képen látható módon. A fém érintkezők lefelé néznek, és jegyezze fel a sarokban lévő bevágást.
  • Csatlakoztassa a LiPo akkumulátort a pajzs JST csatlakozójához
  • Csatlakoztassa Arduino készülékét a számítógéphez USB -kábel segítségével. Észreveheti, hogy a pajzs zöld LED -je nem világít. Ez teljesen normális, mert a pajzs PWRKEY csapját egy kicsit alacsony impulzusra kell állítani a bekapcsoláshoz. A következő részben bemutatott példa Arduino vázlata gondoskodik erről az Ön számára!
  • Csatlakoztassa a kettős LTE/GPS antennát az árnyékolás jobb szélén lévő uFL csatlakozókhoz. Vegye figyelembe, hogy a vezetékek keresztbe fognak menni, ezért ne dugja be a rosszakat!
  • Minden készen áll a szoftverre!

3. lépés: Arduino beállítás és eszköz tesztelése

Arduino beállítás és eszköz tesztelése
Arduino beállítás és eszköz tesztelése

Arduino IDE beállítás

Ha még nem tette meg, kérjük, tekintse meg az "Arduino IDE beállítása" és az "Arduino példa" lépéseit az Instructable fő termékben, hogy megbizonyosodjon arról, hogy az alaplap megfelelően működik. Ezekben az utasításokban le kell töltenie a könyvtárat a Github oldalon, és meg kell nyitnia az „LTE_Demo” példakódot. Miután követte ezeket az utasításokat, tesztelnie kellett volna a hálózati kapcsolatot, a GPS -t és az adatok közzétételét a dweet.io webhelyen.

IoT példa vázlat

Most, hogy tesztelte a pajzs alapvető tulajdonságait, töltse be az "IoT_Example" vázlatot az Arduino IDE -ben. Itt a Githubon is megtalálod. Töltse fel ezt a kódot az Arduino készülékére, és nyissa meg a soros monitort, és látnia kell, hogy az Arduino megtalálja a SIM7000 modult, csatlakozik a mobilhálózathoz, engedélyezi a GPS -t, és addig próbálkozik, amíg meg nem találja a helymeghatározást, és közzéteszi az adatokat a dweet.io webhelyen. Ennek mind a kód sorának megváltoztatása nélkül kell futnia, feltételezve, hogy LTE pajzsot és hologramos SIM -kártyát használ.

Alapértelmezés szerint a következő sor fogja meghatározni a mintavételi gyakoriságot (nos, valójában a bejegyzések közötti késés).

#define samplingRate 30 // A bejegyzések közötti idő másodpercben

Ha ezt a sort megjegyzés nélkül hagyja, az Arduino adatokat tesz közzé, késlelteti a 30-as éveket, ismét közzéteszi az adatokat, megismétli stb. egyszerű dolgok Csak a delay () függvényt használom a művelet szüneteltetéséhez. Ha megjegyzést fűz ehhez a sorhoz, az Arduino közzéteszi az adatokat, majd határozatlan ideig közvetlenül alacsony energiaigényű alvó üzemmódba kapcsol, amíg meg nem nyomja az Arduino reset gombját. Ez akkor hasznos, ha tesztel valamit, és nem akarja elégetni értékes értékes adatait (bár őszintén szólva, minden bejegyzés gyakorlatilag semmit sem használ), vagy esetleg van külső áramköre az Arduino alaphelyzetbe állításához (555 időzítő? RTC megszakítás? Gyorsulásmérő megszakítás? Hőmérséklet -érzékelő) megszakítani? Gondoljon a dobozon kívülre!). Valójában a Burgalert 7000 bemutatójában bemutatom, hogyan lehet PIR mozgásérzékelővel felébreszteni a mikrokontrollert.

A következő sor azt állítja be, hogy a pajzs kikapcsol -e az adatok közzététele után, vagy bekapcsolva marad. Ha csak egyszer vesz mintavételt, akkor választhatja az előbbi választást, ha megjegyzést nem tesz a sorhoz, de ha viszonylag magas mintavételi aránya van, akkor hagyja a sort megjegyzésként, hogy a pajzs bekapcsolva maradjon, és újra inicializálni, újra engedélyezni a GPRS-t és a GPS-t, stb. Ha a pajzs rajta marad, rendkívül gyorsan tud posztolni!

//#define turnOffShield // Adatok közzététele után kapcsolja ki a pajzsot

Ne feledje továbbá, hogy ez a példa automatikusan lekéri a SIM7000 modul-specifikus és globálisan egyedi IMEI-számát, és azt használja az eszköz azonosítójaként (vagy "névként", ha úgy tetszik) az eszköz azonosításához, amikor adatokat tesz közzé a dweet.io webhelyen.. Ezen változtathatsz, ha akarod, úgyhogy gondoltam, csak tájékoztatlak:)

Annak ellenőrzéséhez, hogy adatait valóban elküldik -e a dweet.io címre, egyszerűen töltse ki a megfelelő adatokat, és másolja/illessze be az URL -t bármely böngészőbe:

dweet.io/get/latest/dweet/for/{deviceID}

ahol az {deviceID} -ot fel kell cserélni az IMEI -számmal, amelyet az elején, közvetlenül az Arduino megtalálása után nyomtattak ki a soros monitoron. Miután megadta ezt az URL -t a böngészőjében, a következőhöz hasonló JSON -választ kell látnia:

A "tartalmat" tekintve látnia kell a tartózkodási hely szélességét, hosszúságát, sebességét (kilométer per óra), irányt (fok, 0 fok észak), magasság (méter), hőmérséklet (*C, de szabadon konvertálható a kódban), és a tápfeszültség milli-voltban (ami VBAT, az akkumulátor feszültsége). Az NMEA adatsorral kapcsolatos további információkért tekintse meg a SIM7000 AT parancs kézikönyvének 149. oldalát.

Miután ellenőrizte, hogy a beállítás sikeresen küld adatokat a dweet -nek, állítsuk be az irányítópultot, hogy az összes adatunkat egy szép felületen tekintse meg!

4. lépés: Freeboard.io beállítás

Freeboard.io beállítás
Freeboard.io beállítás
Freeboard.io beállítás
Freeboard.io beállítás
Freeboard.io beállítás
Freeboard.io beállítás

Ebben az oktatóanyagban a freeboard.io -t fogjuk használni, egy igazán klassz IoT -irányítópultot, amely számos felhőplatformhoz csatlakozhat, mint például a PubNub és a dweet, valamint más olyan funkciókhoz, mint a JSON és az MQTT. Mint valószínűleg sejtette, a dweet.io -t is használjuk, amelyet az előző szakasz példakódjában használunk. Fontos megjegyzés, hogy az ablaktábla húzása a freeboard.io -ban úgy tűnik, nem működik a Chrome -ban, ezért használja inkább a Firebox -ot vagy a Microsoft Edge -t. Ha nem, akkor valódi "ablaktábla" lehet a képernyőn lévő elemek újrarendezése!

Fiók és eszköz beállítása

  • Az első dolog, amit meg kell tennie, hozzon létre egy fiókot a freeboard.io kezdőlapján található piros "START NOW" gombra kattintva, írja be a hitelesítő adatokat, majd kattintson a "Fiókom létrehozása" gombra. Ezután e -mailben értesítést kap az új fiók megerősítéséről.
  • Most kattintson a "Bejelentkezés" gombra a kezdőlap jobb felső sarkában, és a bejelentkezés után látnia kell az "ingyenes táblákat", amelyek csak irányítópultok, amelyeket a projektekhez állított be. Nyilvánvaló, hogy ha a fiók új, akkor semmit nem fog látni itt, ezért csak írja be az új projekt nevét, és kattintson a jobb felső sarokban található "Új létrehozása" gombra. Ekkor egy üres műszerfalra jut, ahol beállíthatja a kezelőfelületet, ahogy tetszik. A szabadtáblán különféle "paneleket" állíthat be, és minden ablaktábla tartalmazhat egy vagy több "kütyüt", például grafikonokat, térképeket, mérőeszközöket stb., Amelyek valamilyen módon megjelenítik az adatokat.
  • Az első dolog, amit most meg kell tennünk, a tényleges adatforrás beállítása, amely az Ön Arduino + LTE pajzsa. Ehhez kattintson a jobb felső sarokban található "ADD FORRÁS" "ADD" gombra. Ezután válassza a "Dweet.io" lehetőséget, és írja be a kívánt nevet a "Név" mezőbe. Ügyeljen azonban arra, hogy a "Dolog neve" mezőbe írja be a pajzs IMEI -számát tetszőleges név helyett, mert a freeboard ezt fogja használni a dweet adatainak lekéréséhez.
  • A „Mentés” gombra kattintás után az eszköz megjelenik az „Adatforrások” alatt, valamint az utolsó alkalom, amikor adatokat küldött a dweetnek. A frissítés gombra kattintva is ellenőrizheti a legújabb értékeket, de a freeboard magától frissül, így általában nem kell ezt a gombot használni.

Műszerfal beállítása

Most nézzük meg, hogyan állíthatjuk be a képernyőn látni kívánt harangokat és sípokat!

  • Egy panel hozzáadásához kattintson a bal felső sarokban található "ADD PANE" gombra, és látni fogja, hogy hozzáad egy kis ablakot a képernyőn. Azonban itt még nincs semmi, mert nem adtunk hozzá widgeteket!
  • Widget hozzáadásához kattintson a kis "+" gombra az ablaktáblán. Ekkor megjelenik egy legördülő menü különböző widget -lehetőségekkel. Mivel GPS nyomkövetést fogunk végezni, válasszuk a "Google Térkép" widgetet. Ekkor két mezőt kell látnia, a szélességet és a hosszúságot. Annak érdekében, hogy ezeket megfelelően kitöltse, az eszköznek már közzé kell tennie a dweetben. Feltételezve, hogy van, kattintson a "+ Adatforrás" gombra, kattintson az adatforrásra (a "SIM7000 GPS -nyomkövető"), majd kattintson a "lat" -ra, amely a változó neve, amelyet a pajzs a dweetbe történő közzétételkor használ. Ismételje meg az eljárást a hosszúsági mezőhöz, és kattintson az alsó csúszkára, ha azt szeretné, hogy a térkép vonalakat húzzon az adatpontok között, hogy megjelölje, hol járt.
  • Most látnia kell egy kis térképet a hozzávetőleges helyéről! Annak teszteléséhez, hogy a térkép működik -e, próbálja meg megváltoztatni a jelenlegi GPS szélességét/hosszúságát valami másra, például megváltoztatva a lat/long értékek tizedespontja utáni első számjegyet a diveet URL -ben, amelyet a soros monitoron nyomtattak. Arduino IDE, amikor a pajzs adatokat tett közzé. Miután módosította őket, másolja ki és illessze be az URL -t, és hajtsa végre a böngészőben.

dweet.io/dweet/for/112233445566778?lat=11.223344&long=-55.667788&speed=0&head=10&alt=324.8&temp=22.88&batt=3629

Most váltson vissza a szabaddeszkára, és látnia kell, hogy az ábrázolta a módosított helyét, és narancssárga vonalat húzott a pontok közé! Klassz cuccok, mi? Szóval azt hiszem, megkapja azt a képet, hogy a GPS nyomkövetőnk helyadatokat küld a dweetnek, hogy láthassa őket a szabadtáblán valós időben vagy a kaland vége után

Extrák

Mivel a mi kis GPS nyomkövetőnk nemcsak szélességi/hosszú adatokat, hanem magasságot, sebességet, irányt és hőmérsékletet is küld, dobjunk be még néhány kütyüt, hogy színesebbé tegyük a műszerfalunkat!

  • Kezdjük egy új ablaktábla hozzáadásával, majd egy mérőeszköz hozzáadásához az új ablaktáblához kattintson a panel „+” gombjára, és válassza a „Mérő” lehetőséget. Csakúgy, mint korábban, használja az adatforrást, és válassza ki a "speed" adatot, amelyet le kívánunk tölteni ehhez a mérőeszközhöz. Ekkor egy szép mérőt kell látnia a műszerfalon!
  • Ismételje meg ezt a magasság- és hőmérsékletértékekkel.
  • Most a címsorhoz adjunk hozzá egy "mutatót". Ez lényegében iránytű, mert 0 fokos felfelé (észak) indul, és az óramutató járásával megegyező irányba forog pozitív irányokért. Perfecto!
  • A panel méretének módosításához vigye az egeret a térképet tartalmazó ablaktábla fölé, és a jobb felső sarokban egy kis csavarkulcs szimbólumot kell látnia. Kattintson erre, és írja be az ablaktábla címét, majd az oszlopok szélességének növeléséhez írja be az "Oszlopok" mezőbe a "2" értéket.
  • Az ablakok helyének megváltoztatásához egyszerűen húzza körbe őket! Kísérletezhet egy "Sparkline" hozzáadásával, amely alapvetően csak egy vonaldiagram, így nemcsak a legfrissebb adatokat, hanem a korábbi adatokat is láthatja.

Jó szórakozást, és állítsa be az egészet, ahogy tetszik, mert készen állunk kirándulni!

5. lépés: Tesztelés

Image
Image
Tesztelés
Tesztelés

A beállítás teszteléséhez azt javaslom, hogy a mintavételi időt állítsa alacsonyabb értékre, például 10-20 másodpercre, hogy nagyobb felbontással rögzíthesse útját. A "turnOffShield" változót is megjegyzésként hagynám ki, hogy a pajzs ne aludjon el. Ez lehetővé teszi az adatok gyors egymás utáni közzétételét.

Miután feltöltötte a kódot Arduino-jába, vegyen be egy akkumulátort (7-12 V) az Arduino áramellátásához, vagy egyszerűen csatlakoztassa az Arduino-t az autó USB-adapterével. Szüksége lesz egy 3,7 V -os LiPo akkumulátorra is, amely a pajzsba van csatlakoztatva, amint azt korábban említettük; a fenti képen látható pajzs egy régi verzió, és nem támogatta a LiPo akkumulátort, de most minden újabb verzióra szükség van rá.

Ezután nyisson ki valahol szabaddeszkát, így ha visszatér, láthatja az eredményeket! Miután csatlakoztatta az Arduino -t, már indulhat is! Kezdjen el autózni, igyon egy kávét, térjen haza, és látnia kell az adatokat a szabaddeszkán. Ha nagyon szeretné (ezt nem javaslom vezetés közben …), akkor valós időben megtekintheti a szabaddeszka adatait a telefonján, miközben barátja vezeti a járművet. Szórakoztató dolog!

6. lépés: Eredmények

Eredmények
Eredmények

Ehhez a teszthez édesapámmal elmentünk csirkedobot venni Trader Joe -hoz (omnomnomnom…), és elég pontos adatokat gyűjtöttünk össze. A készülék 10 másodpercenként küldött adatokat, és az utazás maximális sebessége körülbelül 92 km volt (körülbelül 57 km / h), ami elég pontos, mert egész idő alatt szemmel tartottuk a sebességmérőt. Az LTE pajzs határozottan jól végzi a dolgát, és nagyon gyorsan küld adatokat a felhőbe. Eddig jó!

Azonban talán a nem túl jó hír az, hogy a freeboard térkép widgetje nem olyan nagyszerű, mint azt eredetileg gondoltam. Nem teszi lehetővé az egér helyének mozgatását, és az utolsó hely középpontjában marad, így kiválóan alkalmas olyan dolgokra, mint az autó GPS -nyomkövetője, de nem akkor, ha elemezni szeretné az összes adatot tartalmazó adatot, különösen akkor, ha hosszú út volt.

Ebben az oktatóanyagban megtanultuk, hogyan kell használni az LTE pajzsot GPS nyomkövetőként és adatgyűjtőként, és hogyan lehet gyorsan megtekinteni az adatokat a freeboard.io webhelyen. Most használja a fantáziáját, és alkalmazza saját projektjében. Még több pajzsot is hozzáadhat, és ezt a dolgot kis teljesítményű napelemes adatgyűjtővé alakíthatja! (Valószínűleg azt tervezem, hogy a jövőben oktatóanyagot készítek erről!). A szabadtérkép korlátozásai miatt azt is tervezem, hogy készítek egy új oktatóanyagot arról, hogyan készítsünk saját Android -alkalmazást, amely lekéri az adatokat a dweet -ből, és lehetővé teszi a nyomkövető helyének grafikonját a Google Térképen a kezdéssel, szünet, és állítsa le az utazás funkcióit! Maradjon velünk!

  • Ha tetszett ez a projekt, adj egy szívet!
  • Ha bármilyen kérdése, megjegyzése, javaslata van egy új oktatóanyaggal kapcsolatban, vagy maga is kipróbálta ezt a projektet, feltétlenül írjon megjegyzést az alábbiakban!
  • Kövess engem itt az Instructables -en, iratkozz fel a YouTube -csatornámra, vagy kövess a Twitteren, hogy értesülj legújabb Arduino -projektjeimről! Fiatal mérnök vagyok, aki szenvedélyesen osztja meg a tanultakat, így minden bizonnyal hamarosan lesz még néhány oktatóanyag!
  • Ha támogatni szeretné, amit én teszek a nyílt forráskódú hardverek megosztásában és alapos dokumentálásában oktatási célokra, fontolja meg saját pajzsának megvásárlását az Amazon.com -on, hogy játsszon!

Ajánlott: