Përmbajtje:
- Hapi 1: Çfarë ju nevojitet
- Hapi 2: Shkoni te Labs Unwired
- Hapi 3: Regjistrohuni për të marrë API Token
- Hapi 4: Kontrolloni emailin tuaj
- Hapi 5: Bibliotekat që ju nevojiten
- Hapi 6: Shtoni kodin në Arduino për t'u lidhur me vendndodhjen API
- Hapi 7: Hapni Monitorin Serial për të parë nëse jeni lidhur
- Hapi 8: Merrni Koordinatat
- Hapi 9: Shkoni te Google Maps
- Hapi 10: Dërgoni vendndodhjen në celularin tuaj
2025 Autor: John Day | [email protected]. E modifikuara e fundit: 2025-01-13 06:58
A jeni kurioz se si NodeMCU juaj mund të gjurmojë vendndodhjen tuaj? Possibleshtë e mundur, edhe pa një modul GPS dhe pa ekran. Dalja do të jetë koordinata ku ndodheni dhe do t'i shihni në monitorin tuaj serik.
Konfigurimi i mëposhtëm u përdor për NodeMCU 1.0 (Moduli ESP-12E) me Arduino IDE.
- Windows 10
- Arduino IDE v. 1.8.4
Hapi 1: Çfarë ju nevojitet
Ajo që ju nevojitet për të ndjekur këtë tutorial janë përbërësit e mëposhtëm:
- Kabllo mikro USB
- NodeMCU ESP8266
Për më tepër, do t'ju duhet:
- Vendndodhja API (nga Laboratorët pa lidhje)
- Qaset në wifi ose në një pikë të nxehtë
Hapi 2: Shkoni te Labs Unwired
Gjeolokacioni vjen shumë i dobishëm sepse kur GPS -i juaj është i fikur, ju ende mund të përdorni Gjeolokacionin për të gjetur vendndodhjen tuaj. Pritësi ynë që siguron gjeolokacion, do të jetë https://www.unwiredlabs.com/. Shkoni në atë faqe interneti dhe regjistrohuni (butoni portokalli në këndin e sipërm të djathtë).
Hapi 3: Regjistrohuni për të marrë API Token
Në faqen e regjistrimit, duhet të plotësoni emrin tuaj, emailin (shenja juaj API do të dërgohet në emailin tuaj) dhe rastin e përdorimit (për shembull, përdorimi personal). Zgjidhni llojin e llogarisë tuaj. Versioni falas do të funksionojë mirë, por mbani në mend se jeni i kufizuar dhe nuk mund të gjurmoni vendndodhjen tuaj 24/7. Le të fillojmë!
Hapi 4: Kontrolloni emailin tuaj
Shkoni në emailin tuaj dhe do të shihni shenjën tuaj API. Kopjoni shenjën API, sepse ju nevojitet për kodin që do të përdorim. Kështu duket emaili:
Përshëndetje!
Faleminderit që u regjistruat me Vendndodhjen e Labwires UnwiredAPI! Shenja juaj API është 'kodi juaj API është këtu' (pa thonjëza). Kjo do të japë 100 kërkesa/ ditë falas - përgjithmonë.
Nëse dëshironi të gjurmoni 5 pajisje falas, ju lutemi përgjigjuni me detajet e mëposhtme dhe ne do ta përmirësojmë llogarinë tuaj brenda 12 orëve:
1. Lloji i vendosjes (Hardware/ App/ Other):
2. Rreth projektit tuaj:
3. Faqja e internetit:
Mund të identifikoheni në pultin tuaj këtu: https://unwiredlabs.com/dashboard. Nëse keni probleme ose keni pyetje, përgjigjuni këtij emaili dhe unë do t'ju ndihmoj!
Gëzuar Lokalizimi!
Sagar
Laboratorë pa tel
Hapi 5: Bibliotekat që ju nevojiten
Hapi tjetër është të hapni Arduino dhe të shkoni për të menaxhuar bibliotekat. Ju duhet të instaloni bibliotekën ArduinoJson. Bibliotekat e tjera janë ndërtuar tashmë. Kur të jeni gati, mund të filloni të shkruani kodin.
Hapi 6: Shtoni kodin në Arduino për t'u lidhur me vendndodhjen API
Bëni një skicë të re dhe shtoni kodin e mëposhtëm në Arduino. Shkruani emrin tuaj wifi/hotspot dhe fjalëkalimin tuaj. Ngjitni shenjën API që keni marrë në email. Ngarko kodin tuaj në NodeMCU tuaj.
#përfshi
#përfshi
#përfshi "ESP8266WiFi.h"
// SSID (emri) i rrjetit tuaj dhe fjalëkalimi i rrjetit
char myssid = "Emri yt wifi/pika e nxehtë"; char mypass = "Fjalëkalimi juaj";
// unwiredlabs Emri i hostit dhe url e pikës përfundimtare të vendndodhjes
const char* Host = "www.unwiredlabs.com"; Pika përfundimtare e vargut = "/v2/process.php";
// UnwiredLabs API_Token. Regjistrohuni këtu për të marrë një shenjë falas
Shenja e vargut = "d99cccda52ec0b";
String jsonString = "{ n";
// Variablat për të ruajtur përgjigjen e padëshiruar
gjerësi gjeografike të dyfishtë = 0.0; gjatësi të dyfishtë = 0.0; saktësi e dyfishtë = 0.0;
void setup () {
Serial.fillo (115200);
// Vendosni WiFi në modalitetin e stacionit dhe shkëputeni nga një AP nëse ishte i lidhur më parë
Modaliteti WiFi (WIFI_STA); WiFi. Shkëputje (); Serial.println ("Konfigurimi u krye");
// Fillojmë duke u lidhur me një rrjet WiFi
Serial.print ("Lidhu me"); Serial.println (myssid); WiFi.filloj (myssid, mypass);
ndërsa (WiFi.status ()! = WL_CONNECTED) {
vonesë (500); Serial.print ("."); } Serial.println ("."); }
lak void () {
char bssid [6]; DynamicJsonBuffer jsonBuffer;
// WiFi.scanNetworks do të kthejë numrin e rrjeteve të gjetura
int n = WiFi.scanNetworks (); Serial.println ("skanimi u krye");
nëse (n == 0) {
Serial.println ("Nuk ka rrjete në dispozicion"); } else {Serial.print (n); Serial.println ("rrjetet e gjetura"); }
// tani ndërto jsonString…
jsonString = "{ n"; jsonString += "\" shenja / ": \" "; jsonString += shenja; jsonString +=" / ", / n"; jsonString += "\" id / ": \" saikirandevice01 / ", / n"; jsonString += "\" wifi / ": [ n"; për (int j = 0; j <n; ++ j) {jsonString += "{ n"; jsonString += "\" bssid / ": \" "; jsonString += (WiFi. BSSIDstr (j)); jsonString +=" / ", / n"; jsonString += "\" sinjal / ":"; jsonString += WiFi. RSSI (j); jsonString += "\ n"; nëse (j <n - 1) {jsonString += "}, / n"; } else {jsonString += "} n"; }} jsonString += ("] n"); jsonString += ("} n"); Serial.println (jsonString);
Klient WiFiClientSecure;
// Lidhuni me klientin dhe bëni thirrjen api
Serial.println ("Duke kërkuar URL: https://" + (String) Host + pika përfundimtare); if (client.connect (Host, 443)) {Serial.println ("I lidhur"); client.println ("POST" + pika përfundimtare + "HTTP/1.1"); client.println ("Host:" + (String) Host); client.println ("Lidhja: mbyll"); client.println ("Lloji i përmbajtjes: aplikacion/json"); client.println ("Agjenti i Përdoruesit: Arduino/1.0"); client.print ("Përmbajtja-Gjatësia:"); client.println (jsonString.length ()); klient.println (); klient.print (jsonString); vonesë (500); }
// Lexoni dhe analizoni të gjitha rreshtat e përgjigjes nga serveri
ndërsa (client.available ()) {String line = client.readStringUntil ('\ r'); JsonObject & root = jsonBuffer.parseObject (linjë); if (rrënja.suksesi ()) {gjerësia gjeografike = rrënja ["lat"]; gjatësi gjeografike = rrënjë ["lon"]; saktësi = rrënjë ["saktësi"];
Serial.println ();
Serial.print ("Gjerësia gjeografike ="); Serial.println (gjerësi gjeografike, 6); Serial.print ("Gjatësia gjeografike ="); Serial.println (gjatësia gjeografike, 6); Serial.print ("Saktësia ="); Serial.println (saktësia); }}
Serial.println ("lidhja mbyllëse");
Serial.println (); client.stop ();
vonesa (5000);
}
Hapi 7: Hapni Monitorin Serial për të parë nëse jeni lidhur
Shkoni te mjetet në Arduino dhe hapni monitorin serik. Për të parë nëse jeni i lidhur me internetin, duhet të shihni sa më poshtë në monitorin serik:
Konfigurimi u krye
Lidhja me (emrin tuaj wifi)… skanimi u krye
Hapi 8: Merrni Koordinatat
Nëse funksionoi me sukses, duhet të shihni nën skanim të bërë një listë të tërë të të dhënave. E vetmja gjë që na nevojitet është kodi nën URL -në kërkuese, kështu që do të kemi nevojë për gjerësinë dhe gjatësinë gjeografike. Këto janë koordinatat.
URL e kërkuar:
I lidhur
Gjerësia gjeografike = 52.385259
Gjatësia gjeografike = 5.196099
Saktësia = 41.00
lidhja mbyllëse
Pas 5 sekondash kodi do të azhurnohet vazhdimisht dhe ndoshta do të shihni ndryshimin e gjerësisë, gjatësisë dhe saktësisë. Kjo për shkak se API po përpiqet që më së miri të gjurmojë vendndodhjen sa më saktë që të jetë e mundur.
Hapi 9: Shkoni te Google Maps
Shkoni te https://www.google.com/maps/ dhe shkruani koordinatat tuaja në shiritin e kërkimit. Koordinatat duhet të shkruhen në mënyrën e mëposhtme: 52.385259, 5.196099. Google Maps duhet të tregojë se ku ndodheni në hartë.
Hapi 10: Dërgoni vendndodhjen në celularin tuaj
Dhe… Mbarove! Prandaj, nëse doni të dërgoni vendndodhjen në celularin tuaj, është e mundur. Google Maps do të dërgojë një email me koordinatat tuaja nëse dëshironi.
Gëzuar gjetjen!