Բովանդակություն:

Տեղադրության որոնիչ NodeMCU ESP8266- ով `10 քայլ
Տեղադրության որոնիչ NodeMCU ESP8266- ով `10 քայլ

Video: Տեղադրության որոնիչ NodeMCU ESP8266- ով `10 քայլ

Video: Տեղադրության որոնիչ NodeMCU ESP8266- ով `10 քայլ
Video: GPS Tools : Հեռավորության որոնիչ ( Distance Finder ) 2024, Նոյեմբեր
Anonim
Տեղադրության որոնիչ NodeMCU ESP8266- ով
Տեղադրության որոնիչ NodeMCU ESP8266- ով

Հետաքրքրվա՞ծ եք, թե ինչպես կարող է ձեր NodeMCU- ն հետևել ձեր գտնվելու վայրին: Դա հնարավոր է, նույնիսկ առանց GPS մոդուլի և առանց ցուցադրման: Արդյունքը կլինի կոորդինատներ, որտեղ դուք գտնվում եք, և դրանք կտեսնեք ձեր սերիական մոնիտորի վրա:

Հետևյալ կարգավորումը օգտագործվել է NodeMCU 1.0 (ESP-12E մոդուլ) Arduino IDE- ի համար:

  • Windows 10
  • Arduino IDE ընդդեմ 1.8.4

Քայլ 1: Ի՞նչ է ձեզ անհրաժեշտ

Այս ձեռնարկին հետևելու համար ձեզ հարկավոր են հետևյալ բաղադրիչները.

  • Միկրո USB մալուխ
  • NodeMCU ESP8266

Ավելին, ձեզ հարկավոր կլինի.

  • LocationAPI (Unwired Labs- ից)
  • Մուտք է գործում wifi կամ թեժ կետ

Քայլ 2: Գնացեք Unwired Labs

Գնացեք Unwired Labs
Գնացեք Unwired Labs

Երկրաբաշխումը շատ օգտակար է, քանի որ երբ GPS- ն անջատված է, դուք դեռ կարող եք օգտագործել Geolocation- ը ՝ ձեր գտնվելու վայրը հետևելու համար: Մեր տանտերը, որն ապահովում է տեղաբաշխում, կլինի https://www.unwiredlabs.com/: Գնացեք այդ կայք և գրանցվեք (վերին աջ անկյունում գտնվող նարնջագույն կոճակը):

Քայլ 3. Գրանցվեք ՝ API նշան ստանալու համար

Գրանցվեք ՝ API նշան ստանալու համար
Գրանցվեք ՝ API նշան ստանալու համար

Գրանցման էջում դուք պետք է լրացնեք ձեր անունը, էլ. Ընտրեք ձեր հաշվի տեսակը: Անվճար տարբերակը լավ կանի, բայց հիշեք, որ դուք սահմանափակ եք և չեք կարող հետևել ձեր գտնվելու վայրը 24/7 ռեժիմով: Եկեք սկսենք!

Քայլ 4: Ստուգեք ձեր էլ

Գնացեք ձեր էլ. Փոստին և կտեսնեք ձեր API նշանը: Պատճենեք API նշանը, քանի որ ձեզ դա անհրաժեշտ է այն կոդի համար, որը մենք կօգտագործենք: Ահա, թե ինչ տեսք ունի նամակը.

Բարեւ Ձեզ!

Շնորհակալություն Unwired Labs LocationAPI- ին գրանցվելու համար: Ձեր API նշանը «ձեր API կոդը այստեղ է» (առանց չակերտների): Սա կտա 100 հարցում/ օր անվճար `ընդմիշտ:

Եթե ցանկանում եք անվճար հետևել 5 սարքերի, խնդրում ենք պատասխանել հետևյալ մանրամասներով, և մենք կբարելավենք ձեր հաշիվը 12 ժամվա ընթացքում.

1. Տեղակայման տեսակը (Սարքաշար/ /րագիր/ Այլ).

2. Ձեր նախագծի մասին.

3. Վեբ կայք:

Կարող եք մուտք գործել ձեր վահանակ այստեղ ՝ https://unwiredlabs.com/dashboard: Եթե խնդիրներ ունեք կամ հարցեր ունեք, պատասխանեք այս էլ. Փոստին, և ես կօգնեմ ձեզ:

Երջանիկ տեղադրություն:

Սագար

Անլար լաբորատորիաներ

Քայլ 5: Ձեզ անհրաժեշտ գրադարաններ

Ձեզ անհրաժեշտ գրադարաններ
Ձեզ անհրաժեշտ գրադարաններ

Հաջորդ քայլը Arduino- ի բացումն է և գրադարանների կառավարումը: Անհրաժեշտ է տեղադրել ArduinoJson գրադարանը: Մյուս գրադարաններն արդեն ներկառուցված են: Երբ պատրաստ լինեք, կարող եք սկսել գրել կոդը:

Քայլ 6. Ավելացրեք կոդը Arduino- ում ՝ LocationAPI- ին միանալու համար

Կատարեք նոր ուրվագիծ և ավելացրեք հետևյալ կոդը Arduino- ում: Գրեք ձեր սեփական wifi/թեժ կետի անունը և ձեր գաղտնաբառը: Տեղադրեք ձեր ստացած API նշանը էլ. Վերբեռնեք ձեր կոդը ձեր NodeMCU- ում:

#ներառում

#ներառում

#ներառել «ESP8266WiFi.h»

// ձեր ցանցի SSID (անունը) և ցանցի գաղտնաբառը

char myssid = "Ձեր wifi/թեժ կետի անունը"; char mypass = "Ձեր գաղտնաբառը";

// unwiredlabs Hostname & Geolocation Endpoint url

const char* Host = "www.unwiredlabs.com"; Լարային վերջնակետ = "/v2/process.php";

// UnwiredLabs API_Token: Գրանցվեք այստեղ ՝ անվճար խորհրդանիշ ստանալու համար ՝

Լարային նշան = "d99cccda52ec0b";

Լար jsonString = "{ n";

// Փոփոխականներ ՝ անլար սալերի պատասխանը պահելու համար

կրկնակի լայնություն = 0.0; կրկնակի երկայնություն = 0.0; կրկնակի ճշգրտություն = 0.0;

void setup () {

Serial.begin (115200);

// Անջատեք WiFi կայանի ռեժիմին և անջատեք AP- ից, եթե այն նախկինում միացված էր

WiFi.mode (WIFI_STA); WiFi.d անջատել (); Serial.println («Կարգավորումն ավարտված է»);

// Մենք սկսում ենք միանալով WiFi ցանցին

Serial.print («Միացում»); Serial.println (myssid); WiFi.begin (myssid, mypass);

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

ուշացում (500); Serial.print ("."); } Serial.println ("."); }

դատարկ շրջան () {

char bssid [6]; DynamicJsonBuffer jsonBuffer;

// WiFi.scanNetworks- ը կվերադարձնի գտնված ցանցերի քանակը

int n = WiFi.scanNetworks (); Serial.println («սկան կատարված է»);

եթե (n == 0) {

Serial.println («availableանցեր չկան»); } else {Serial.print (n); Serial.println («ցանցերը գտնվել են»); }

// այժմ կառուցեք jsonString- ը …

jsonString = "{ n"; jsonString += "\" նշան / ": \" "; jsonString += նշան; jsonString +=" / ", / n"; jsonString += "\" id / ": \" saikirandevice01 / ", / n"; jsonString += "\" wifi / ": [n"; համար (int j = 0; j <n; ++ j) {jsonString += "{ n"; jsonString += "\" bssid / ": \" "; jsonString += (WiFi. BSSIDstr (j)); jsonString +=" / ", / n"; jsonString += "\" ազդանշան / ":"; jsonString += WiFi. RSSI (j); jsonString += "\ n"; եթե (j <n - 1) {jsonString += "}, / n"; } else {jsonString += "} n"; }} jsonString += ("] n"); jsonString += ("} n"); Serial.println (jsonString);

WiFiClientSecure հաճախորդ;

// Միացեք հաճախորդին և կատարեք api զանգ

Serial.println ("Պահանջվող URL: https://" + (Լարային) Հոսթ + վերջնակետ); if (client.connect (Host, 443)) {Serial.println ("Միացված է"); client.println ("POST" + վերջնակետ + "HTTP/1.1"); client.println ("Host:" + (String) Host); client.println («Միացում ՝ փակ»); client.println («Բովանդակության տեսակը ՝ ծրագիր/json»); client.println ("Օգտվող-գործակալ. Arduino/1.0"); client.print ("Բովանդակություն-երկարություն."); client.println (jsonString.length ()); client.println (); client.print (jsonString); ուշացում (500); }

// Կարդացեք և վերլուծեք սերվերի պատասխանի բոլոր տողերը

while (client.available ()) {String line = client.readStringUntil ('\ r'); JsonObject & root = jsonBuffer.parseObject (տող); if (root.success ()) {լայնություն = արմատ ["լատ"]; երկայնություն = արմատ ["lon"]; ճշտություն = արմատ ["ճշգրտություն"];

Serial.println ();

Serial.print ("Latitude ="); Serial.println (լայնություն, 6); Serial.print ("Երկայնություն ="); Serial.println (երկայնություն, 6); Serial.print ("uracyշգրտություն ="); Serial.println (ճշգրտություն); }}

Serial.println («կապի փակումը»);

Serial.println (); client.stop ();

ուշացում (5000);

}

Քայլ 7: Բացեք սերիական մոնիտորը `տեսնելու, թե արդյոք կապ ունեք

Գնացեք Arduino- ի գործիքներ և բացեք սերիական մոնիտորը: Ինտերնետին միացված լինելու համար սերիական մոնիտորում պետք է տեսնեք հետևյալը.

Կարգավորումն ավարտված է

Միացում (ձեր wifi անունին)… սկան կատարվեց

Քայլ 8: Ստացեք կոորդինատները

Եթե այն հաջողությամբ աշխատեց, ապա սկանավորման ներքո պետք է տեսնեք տվյալների ամբողջական ցուցակ: Միակ բանը, որ մեզ պետք է, հայցող URL- ի ներքո գտնվող ծածկագիրն է, ուստի մեզ պետք կլինեն լայնությունը և երկայնությունը: Սրանք կոորդինատներն են:

Հարցման URL ՝

Միացված է

Լայնություն = 52.385259

Երկարություն = 5.196099

Uracyշգրտություն = 41.00

փակման միացում

5 վայրկյան հետո ծածկագիրն անընդհատ կթարմացվի, և հավանաբար կտեսնեք լայնության, երկայնության և ճշգրտության փոփոխություն: Դա այն պատճառով է, որ API- ն փորձում է հնարավորինս ճշգրիտ հետևել գտնվելու վայրը:

Քայլ 9: Գնացեք Google Քարտեզներ

Գնացեք Google Քարտեզներ
Գնացեք Google Քարտեզներ

Գնացեք https://www.google.com/maps/ և որոնման տողում մուտքագրեք ձեր կոորդինատները: Կոորդինատները պետք է գրվեն հետևյալ կերպ ՝ 52.385259, 5.196099: Google Քարտեզները պետք է ցույց տան, թե որտեղ եք գտնվում քարտեզի վրա:

Քայլ 10: Տեղադրեք գտնվելու վայրը ձեր բջջայինին

Տեղադրեք ձեր բջջայինին
Տեղադրեք ձեր բջջայինին

Եվ… ավարտեցիք: Հետևաբար, եթե ցանկանում եք գտնվելու վայրը ուղարկել ձեր բջջայինին, դա հնարավոր է: Եթե ցանկանում եք, Google Քարտեզներն այնուհետև նամակ կուղարկեն ձեր կոորդինատներով:

Երջանիկ տեղադրություն:

Խորհուրդ ենք տալիս: