Sisukord:
- Samm: mida vajate
- 2. samm: minge juhtmeta laborisse
- Samm: registreeruge API -märgi hankimiseks
- Samm: kontrollige oma e -posti
- Samm: raamatukogud, mida vajate
- Samm: lisage kood Arduinos, et luua ühendus asukohaAPI -ga
- Samm: avage jadamonitor, et näha, kas olete ühendatud
- Samm: hankige koordinaadid
- 9. samm: minge Google Mapsi
- Samm: saatke asukoht oma mobiiltelefonile
2025 Autor: John Day | [email protected]. Viimati modifitseeritud: 2025-01-13 06:57
Kas olete huvitatud sellest, kuidas teie NodeMCU saab teie asukohta jälgida? See on võimalik isegi ilma GPS -moodulita ja ilma ekraanita. Väljundiks on teie asukoha koordinaadid ja näete neid oma jadamonitoris.
NodeMCU 1.0 (ESP-12E moodul) ja Arduino IDE puhul kasutati järgmist seadistust.
- Windows 10
- Arduino IDE v. 1.8.4
Samm: mida vajate
Selle õpetuse järgimiseks on vaja järgmisi komponente:
- Micro USB kaabel
- SõlmMCU ESP8266
Lisaks vajate:
- LocationAPI (juhtmeta laboritest)
- Juurdepääs WiFi -le või levialale
2. samm: minge juhtmeta laborisse
Geolokatsioon on väga kasulik, sest kui teie GPS on maas, saate oma asukoha jälgimiseks siiski kasutada geolokatsiooni. Meie host, kes pakub geograafilist asukohta, on https://www.unwiredlabs.com/. Minge sellele veebisaidile ja registreeruge (oranž nupp paremas ülanurgas).
Samm: registreeruge API -märgi hankimiseks
Registreerimislehel peate sisestama oma nime, e -posti aadressi (teie API -märgi saadetakse teie e -posti aadressile) ja kasutusjuhtumi (näiteks isiklikuks kasutamiseks). Valige oma konto tüüp. Tasuta versioon läheb suurepäraselt, kuid pidage meeles, et olete piiratud ja te ei saa oma asukohta ööpäevaringselt jälgida. Alustame!
Samm: kontrollige oma e -posti
Minge oma e -posti aadressile ja näete oma API -märki. Kopeerige API -luba, kuna vajate seda koodi jaoks, mida kasutame. Nii näeb meil välja:
Tere!
Täname, et registreerusite Unwired Labsi asukohaAPI -ga! Teie API -märk on „teie API -kood on siin” (ilma jutumärkideta). See annab 100 taotlust päevas tasuta - igavesti.
Kui soovite 5 seadet tasuta jälgida, vastake palun järgmise teabega ja uuendame teie konto 12 tunni jooksul:
1. Juurutamise tüüp (riistvara/ rakendus/ muu):
2. Teie projekti kohta:
3. Veebisait:
Oma armatuurlauale saate sisse logida siin: https://unwiredlabs.com/dashboard. Kui teil tekib probleeme või teil on küsimusi, vastake sellele meilile ja ma aitan teid!
Head asukoha leidmist!
Sagar
Traadita laborid
Samm: raamatukogud, mida vajate
Järgmine samm on Arduino avamine ja raamatukogude haldamine. Peate installima ArduinoJsoni kogu. Teised teegid on juba sisse ehitatud. Kui olete valmis, võite hakata koodi kirjutama.
Samm: lisage kood Arduinos, et luua ühendus asukohaAPI -ga
Tehke uus visand ja lisage Arduinos järgmine kood. Kirjutage oma wifi/leviala nimi ja parool. Kleepige meilis saadud API -luba. Laadige oma kood üles oma NodeMCU -sse.
#kaasake
#kaasake
#include "ESP8266WiFi.h"
// teie võrgu SSID (nimi) ja võrgu parool
char myssid = "Sinu wifi/leviala nimi"; char mypass = "Teie parool";
// wiredlabs Hostname & Geolocation Endpoint url
const char* Host = "www.unwiredlabs.com"; Stringi lõpp -punkt = "/v2/process.php";
// UnwiredLabs API_Token. Registreeruge siin tasuta märgi saamiseks
String token = "d99cccda52ec0b";
String jsonString = "{ n";
// Muutujad soovimatute vastuste salvestamiseks
kahekordne laiuskraad = 0,0; kahekordne pikkuskraad = 0,0; kahekordne täpsus = 0,0;
tühine seadistus () {
Seriaalne algus (115200);
// Lülitage WiFi jaamarežiimi ja katkestage ühendus AP -ga, kui see oli varem ühendatud
WiFi -režiim (WIFI_STA); WiFi.disconnect (); Serial.println ("Seadistus tehtud");
// Alustame WiFi -võrguga ühenduse loomisest
Serial.print ("Ühendamine"); Serial.println (myssid); WiFi.begin (myssid, mypass);
samas (WiFi.status ()! = WL_CONNECTED) {
viivitus (500); Seeria.print ("."); } Serial.println ("."); }
void loop () {
char bssid [6]; DynamicJsonBuffer jsonBuffer;
// WiFi.scanNetworks tagastab leitud võrkude arvu
int n = WiFi.scanNetworks (); Serial.println ("skannimine tehtud");
kui (n == 0) {
Serial.println ("Võrke pole saadaval"); } else {Serial.print (n); Serial.println ("võrgud leitud"); }
// ehita nüüd jsonString …
jsonString = "{ n"; jsonString += "\" märk / ": \" "; jsonString += märk; jsonString +=" / ", / n"; jsonString += "\" id / ": \" saikirandevice01 / ", / n"; jsonString += "\" wifi / ": [n"; jaoks (int j = 0; j <n; ++ j) {jsonString += "{ n"; jsonString += "\" bssid / ": \" "; jsonString += (WiFi. BSSIDstr (j)); jsonString +=" / ", / n"; jsonString += "\" signaal / ":"; jsonString += WiFi. RSSI (j); jsonString += "\ n"; kui (j <n - 1) {jsonString += "}, / n"; } else {jsonString += "} n"; }} jsonString += ("] n"); jsonString += ("} n"); Serial.println (jsonString);
WiFiClientSecure klient;
// Looge ühendus kliendiga ja tehke api kõne
Serial.println ("Taotlev URL: https://" + (String) Host + lõpp -punkt); if (client.connect (Host, 443)) {Serial.println ("Ühendatud"); client.println ("POST" + lõpp -punkt + "HTTP/1.1"); client.println ("Host:" + (String) Host); client.println ("Ühendus: sulge"); client.println ("Sisu tüüp: rakendus/json"); client.println ("Kasutajaagent: Arduino/1.0"); client.print ("Sisu-pikkus:"); klient.println (jsonString.length ()); klient.println (); klient.print (jsonString); viivitus (500); }
// Loe ja analüüsi kõiki serveri vastuse ridu
while (client.available ()) {String line = client.readStringUntil ('\ r'); JsonObject & root = jsonBuffer.parseObject (rida); if (root.success ()) {laiuskraad = juur ["lat"]; pikkuskraad = juur ["lon"]; täpsus = juur ["täpsus"];
Serial.println ();
Serial.print ("Laiuskraad ="); Serial.println (laiuskraad, 6); Serial.print ("Pikkuskraad ="); Seeria.println (pikkuskraad, 6); Serial.print ("Täpsus ="); Serial.println (täpsus); }}
Serial.println ("ühenduse sulgemine");
Serial.println (); client.stop ();
viivitus (5000);
}
Samm: avage jadamonitor, et näha, kas olete ühendatud
Minge Arduino tööriistadesse ja avage jadamonitor. Et näha, kas teil on Interneti -ühendus, peaksite jadamonitoris nägema järgmist.
Seadistus tehtud
Ühendamine (teie wifi nimi) … skannimine on tehtud
Samm: hankige koordinaadid
Kui see õnnestus, peaksite skannimise all nägema tervet andmete loendit. Ainus, mida vajame, on taotleva URL -i all olev kood, seega vajame laius- ja pikkuskraade. Need on koordinaadid.
Taotlev URL:
Ühendatud
Laiuskraadid = 52,3385259
Pikkuskraadid = 5,196099
Täpsus = 41.00
sulguv ühendus
5 sekundi pärast uuendatakse koodi pidevalt ja tõenäoliselt näete laiuse, pikkuskraadi ja täpsuse muutumist. Selle põhjuseks on asjaolu, et API püüab asukohta võimalikult täpselt jälgida.
9. samm: minge Google Mapsi
Minge aadressile https://www.google.com/maps/ ja sisestage otsinguribale oma koordinaadid. Koordinaadid tuleb kirjutada järgmiselt: 52.385259, 5.196099. Google Maps peaks kaardil näitama, kus te asute.
Samm: saatke asukoht oma mobiiltelefonile
Ja… olete valmis! Seega, kui soovite asukoha oma mobiiltelefonile saata, on see võimalik. Seejärel saadab Google Maps soovi korral meili koos teie koordinaatidega.
Head leidmist!