Tartalomjegyzék:

Helymeghatározó NodeMCU ESP8266 segítségével: 10 lépés
Helymeghatározó NodeMCU ESP8266 segítségével: 10 lépés

Videó: Helymeghatározó NodeMCU ESP8266 segítségével: 10 lépés

Videó: Helymeghatározó NodeMCU ESP8266 segítségével: 10 lépés
Videó: Arduino: NEO 6M GPS speed (2 Solutions!!) 2024, Július
Anonim
Helymeghatározó NodeMCU ESP8266 segítségével
Helymeghatározó NodeMCU ESP8266 segítségével

Kíváncsi arra, hogy a NodeMCU hogyan tudja nyomon követni a tartózkodási helyét? GPS modul és kijelző nélkül is lehetséges. A kimenet koordinátái lesznek az Ön helyén, és látni fogja őket a soros monitoron.

A következő beállításokat használtuk a NodeMCU 1.0 (ESP-12E modul) és Arduino IDE között.

  • Windows 10
  • Arduino IDE v. 1.8.4

1. lépés: Mire van szüksége

Az oktatóanyag követéséhez a következő összetevőkre van szüksége:

  • Micro USB kábel
  • NodeMCU ESP8266

Továbbá szüksége lesz:

  • LocationAPI (a Unwired Labs -ból)
  • Hozzáférés a wifihez vagy a hotspothoz

2. lépés: Lépjen a Vezeték nélküli laborok oldalra

Lépjen a Unwired Labs oldalra
Lépjen a Unwired Labs oldalra

A földrajzi helymeghatározás nagyon hasznos, mert amikor a GPS le van állítva, továbbra is használhatja a földrajzi helymeghatározást a tartózkodási helyének követésére. A földrajzi helymeghatározást biztosító házigazdánk a https://www.unwiredlabs.com/ lesz. Menjen az adott webhelyre, és regisztráljon (a narancssárga gomb a jobb felső sarokban).

3. lépés: Regisztráljon az API token beszerzéséhez

Iratkozzon fel az API token beszerzéséhez
Iratkozzon fel az API token beszerzéséhez

A regisztrációs oldalon meg kell adnia nevét, e -mail címét (az API -tokenjét az e -mail címére küldjük) és használati esetet (például személyes használatra). Válassza ki a fiók típusát. Az ingyenes verzió remekül fog működni, de ne feledje, hogy korlátozott, és nem tudja nyomon követni tartózkodási helyét a nap 24 órájában. Lássunk neki!

4. lépés: Ellenőrizze e -mailjét

Lépjen az e -mail címére, és látni fogja az API tokenjét. Másolja ki az API tokent, mert szüksége lesz erre a kódhoz, amelyet használni fogunk. Így néz ki az e -mail:

Helló!

Köszönjük, hogy feliratkozott a Unwired Labs LocationAPI szolgáltatásra! Az Ön API -tokenje "az Ön API -kódja itt van" (idézőjelek nélkül). Ez napi 100 kérést ad ingyen - örökre.

Ha 5 eszközt szeretne ingyenesen nyomon követni, kérjük, válaszoljon az alábbi részletekkel, és 12 órán belül frissítjük fiókját:

1. Telepítés típusa (Hardver/ Alkalmazás/ Egyéb):

2. A projektről:

3. Weboldal:

A műszerfalra itt tud bejelentkezni: https://unwiredlabs.com/dashboard. Ha bajba kerül vagy kérdése van, válaszoljon erre az e -mailre, és segítek!

Boldog helymeghatározást!

Sagar

Vezeték nélküli laborok

Lépés: Könyvtárak, amelyekre szüksége lesz

Könyvtárak, amelyekre szüksége lesz
Könyvtárak, amelyekre szüksége lesz

A következő lépés az Arduino megnyitása és a könyvtárak kezelése. Telepítenie kell az ArduinoJson könyvtárat. A többi könyvtár már be van építve. Ha készen áll, elkezdheti a kód írását.

6. lépés: Adjon hozzá kódot az Arduino -ban, hogy csatlakozzon a LocationAPI -hoz

Készítsen új vázlatot, és adja hozzá a következő kódot az Arduino -ban. Írja be saját wifi/hotspot nevét és jelszavát. Illessze be az e -mailben kapott API -tokent. Töltse fel a kódot a NodeMCU -ba.

#befoglalni

#befoglalni

#include "ESP8266WiFi.h"

// a hálózati SSID (név) és hálózati jelszó

char myssid = "A wifi/hotspot neve"; char mypass = "Az Ön jelszava";

// wiredlabs Hostname & Geolocation Endpoint url

const char* Host = "www.unwiredlabs.com"; Karakterlánc végpont = "/v2/process.php";

// UnwiredLabs API_Token. Iratkozzon fel ingyenes tokenért itt:

String token = "d99cccda52ec0b";

Karakterlánc jsonString = "{ n";

// Változók a Wiredlabs válasz tárolására

kettős szélesség = 0,0; kettős hosszúság = 0,0; kettős pontosság = 0,0;

void setup () {

Sorozat.kezdet (115200);

// Állítsa a WiFi -t állomás üzemmódba, és válassza le az AP -t, ha korábban csatlakoztatva volt

WiFi.mód (WIFI_STA); WiFi.disconnect (); Serial.println ("A telepítés kész");

// Kezdjük azzal, hogy csatlakozunk egy WiFi hálózathoz

Serial.print ("Csatlakozás"); Serial.println (myssid); WiFi.begin (myssid, mypass);

while (WiFi.status ()! = WL_CONNECTED) {

késleltetés (500); Soros.nyomtatás ("."); } Soros.println ("."); }

void loop () {

char bssid [6]; DynamicJsonBuffer jsonBuffer;

// A WiFi.scanNetworks visszaadja a talált hálózatok számát

int n = WiFi.scanNetworks (); Serial.println ("szkennelés kész");

ha (n == 0) {

Serial.println ("Nincs elérhető hálózat"); } else {Sorozat.nyomtatás (n); Serial.println ("talált hálózatok"); }

// most építsd fel a jsonString…

jsonString = "{ n"; jsonString += "\" token / ": \" "; jsonString += token; jsonString +=" / ", / n"; jsonString += "\" id / ": \" saikirandevice01 / ", / n"; jsonString += "\" wifi / ": [n"; for (int j = 0; j <n; ++ j) {jsonString += "{ n"; jsonString += "\" bssid / ": \" "; jsonString += (WiFi. BSSIDstr (j)); jsonString +=" / ", / n"; jsonString += "\" jel / ":"; jsonString += WiFi. RSSI (j); jsonString += "\ n"; if (j <n - 1) {jsonString += "}, / n"; } else {jsonString += "} n"; }} jsonString += ("] n"); jsonString += ("} n"); Soros.println (jsonString);

WiFiClientSecure kliens;

// Csatlakozzon az ügyfélhez, és kezdeményezze az api hívást

Serial.println ("Kérő URL: https://" + (String) Host + végpont); if (client.connect (Host, 443)) {Serial.println ("Csatlakoztatva"); client.println ("POST" + végpont + "HTTP/1.1"); client.println ("Host:" + (String) Host); client.println ("Kapcsolat: bezárás"); client.println ("Tartalom-típus: application/json"); client.println ("Felhasználó-ügynök: Arduino/1.0"); client.print ("Content-Length:"); kliens.println (jsonString.length ()); client.println (); client.print (jsonString); késleltetés (500); }

// Olvassa el és elemezze a szerver válaszának minden sorát

while (client.available ()) {String line = client.readStringUntil ('\ r'); JsonObject & root = jsonBuffer.parseObject (sor); if (root.success ()) {szélesség = gyökér ["lat"]; hosszúság = gyökér ["lon"]; pontosság = gyökér ["pontosság"];

Sorozat.println ();

Serial.print ("Szélesség ="); Soros.println (szélesség, 6); Serial.print ("Hosszúság ="); Soros.println (hosszúság, 6); Serial.print ("Pontosság ="); Serial.println (pontosság); }}

Serial.println ("záró kapcsolat");

Sorozat.println (); client.stop ();

késleltetés (5000);

}

7. lépés: Nyissa meg a soros monitort, hogy lássa, csatlakozik -e

Nyissa meg az Arduino eszközeit, és nyissa meg a soros monitort. Annak megtekintéséhez, hogy csatlakozik -e az internethez, a következőket kell látnia a soros monitoron:

Beállítás kész

Csatlakozás a (wifi neve)… szkennelés kész

8. lépés: Szerezze be a koordinátákat

Ha sikeresen működött, akkor a szkennelés alatt az adatok teljes listáját láthatja. Az egyetlen dolog, amire szükségünk van, az a kód a kérő URL alatt, tehát szükségünk lesz a szélességre és a hosszúságra. Ezek a koordináták.

Kérő URL:

csatlakoztatva

Szélesség = 52.385259

Hosszúság = 5,196099

Pontosság = 41.00

záró csatlakozás

5 másodperc múlva a kód folyamatosan frissül, és valószínűleg látni fogja a szélességi, hosszúsági és pontossági változásokat. Ennek az az oka, hogy az API megpróbálja a lehető legjobban követni a helyet.

9. lépés: Lépjen a Google Térképre

Lépjen a Google Térképre
Lépjen a Google Térképre

Lépjen a https://www.google.com/maps/ oldalra, és írja be a koordinátákat a keresősávba. A koordinátákat a következő módon kell írni: 52.385259, 5.196099. A Google Térképnek meg kell jelenítenie, hogy hol található a térképen.

10. lépés: Küldje el helyét a mobiljára

Hely küldése a mobilodra
Hely küldése a mobilodra

És… kész! Ezért, ha el szeretné küldeni a helyét a mobiljára, akkor lehetséges. A Google Térkép e -mailben elküldi a koordinátákat, ha szeretné.

Boldog lokalizációt!

Ajánlott: