Mündəricat:

NodeMCU ESP8266 ilə Məkan İzləyicisi: 10 addım
NodeMCU ESP8266 ilə Məkan İzləyicisi: 10 addım

Video: NodeMCU ESP8266 ilə Məkan İzləyicisi: 10 addım

Video: NodeMCU ESP8266 ilə Məkan İzləyicisi: 10 addım
Video: Введение в плату разработки NodeMCU ESP8266 WiFi с примером HTTP-клиента 2024, Iyul
Anonim
NodeMCU ESP8266 ilə Məkan İzləyicisi
NodeMCU ESP8266 ilə Məkan İzləyicisi

NodeMCU'nun yerinizi necə izləyə biləcəyi ilə maraqlanırsınız? GPS modulu olmadan və ekran olmadan belə mümkündür. Çıxış yerləşdiyiniz yerin koordinatları olacaq və bunları serial monitorunuzda görəcəksiniz.

Aşağıdakı qurğu Arduino IDE ilə NodeMCU 1.0 (ESP-12E Modulu) üçün istifadə edilmişdir.

  • Windows 10
  • Arduino IDE v. 1.8.4

Addım 1: Nə lazımdır

Bu təlimatı izləmək üçün aşağıdakı komponentlərə ehtiyacınız var:

  • Mikro USB kabeli
  • NodeMCU ESP8266

Bundan əlavə, sizə lazım olacaq:

  • Yer API (Kabelsiz Laboratoriyalardan)
  • WiFi və ya qaynar nöqtəyə giriş

Addım 2: Kabelsiz Laboratoriyalara gedin

Kabelsiz Laboratoriyalara gedin
Kabelsiz Laboratoriyalara gedin

Geolokasiya çox lazımlı gəlir, çünki GPS aşağı olduqda, yerinizi izləmək üçün hələ də Coğrafi Yerdən istifadə edə bilərsiniz. Geolokasiya təmin edən ev sahibimiz, https://www.unwiredlabs.com/ olacaq. Bu veb saytına gedin və qeydiyyatdan keçin (sağ üst küncdəki narıncı düymə).

Addım 3: API Token əldə etmək üçün qeydiyyatdan keçin

API Token əldə etmək üçün qeydiyyatdan keçin
API Token əldə etmək üçün qeydiyyatdan keçin

Qeydiyyat səhifəsində adınızı, e -poçtunuzu (API işarəniz e -poçtunuza göndəriləcək) və istifadə halını (məsələn, şəxsi istifadə) doldurmalısınız. Hesabınızın növünü seçin. Pulsuz versiya çox yaxşı olacaq, ancaq unutmayın ki, məhdudiyyətiniz var və 7/24 yerinizi izləyə bilməzsiniz. Gəlin başlayaq!

Addım 4: E -poçtunuzu yoxlayın

E -poçtunuza gedin və API əlamətinizi görəcəksiniz. API işarəsini kopyalayın, çünki istifadə edəcəyimiz kod üçün buna ehtiyacınız var. E -poçt belə görünür:

Salam!

Unwired Labs LocationAPI ilə qeydiyyatdan keçdiyiniz üçün təşəkkür edirik! API işarəniz 'API kodunuz buradadır' (tirnoq olmadan). Bu, hər gün pulsuz olaraq 100 sorğu verəcəkdir.

5 cihazı pulsuz izləmək istəyirsinizsə, aşağıdakı detallarla cavab verin və hesabınızı 12 saat ərzində təkmilləşdirək:

1. Yerləşdirmə növü (Hardware/ App/ Other):

2. Layihəniz haqqında:

3. Veb sayt:

Tablosuna buradan daxil ola bilərsiniz: https://unwiredlabs.com/dashboard. Bir problemlə qarşılaşsanız və ya suallarınız varsa, bu e -poçtu cavablandırın və sizə kömək edəcəyəm!

Xoşbəxt Yerləşmə!

Sagar

Kabelsiz Laboratoriyalar

Addım 5: Ehtiyacınız olacaq kitabxanalar

Ehtiyacınız olacaq kitabxanalar
Ehtiyacınız olacaq kitabxanalar

Növbəti addım Arduino'yu açmaq və kitabxanaları idarə etməkdir. ArduinoJson kitabxanasını quraşdırmalısınız. Digər kitabxanalar artıq qurulmuşdur. Hazır olduğunuzda kodu yazmağa başlaya bilərsiniz.

Addım 6: LocationAPI ilə əlaqə yaratmaq üçün Arduinoda Kod əlavə edin

Yeni bir eskiz hazırlayın və Arduinoda aşağıdakı kodu əlavə edin. Öz wifi/hotspot adınızı və şifrənizi yazın. E -poçtda aldığınız API işarəsini yapışdırın. Kodunuzu NodeMCU -ya yükləyin.

#daxil edin

#daxil edin

#"ESP8266WiFi.h" daxil edin

// şəbəkə SSID (adınız) və şəbəkə parolunuz

char myssid = "WiFi/hotspot adınız"; char mypass = "Şifrəniz";

// istenmeyen qurğular Host Adı və Coğrafi Yerləşmə Uç Noktası url

const char* Host = "www.unwiredlabs.com"; String son nöqtəsi = "/v2/process.php";

// UnwiredLabs API_Token. Pulsuz bir mö'cüzə əldə etmək üçün burada qeydiyyatdan keçin

String token = "d99cccda52ec0b";

String jsonString = "{ n";

// İstenmeyen cavabları saxlamaq üçün dəyişənlər

ikiqat enlik = 0.0; ikiqat uzunluq = 0.0; ikiqat dəqiqlik = 0.0;

boş quraşdırma () {

Serial.begin (115200);

// WiFi -ni stansiya rejiminə qoyun və əvvəllər qoşulubsa AP -dən ayırın

WiFi rejimi (WIFI_STA); WiFi.disconnect (); Serial.println ("Quraşdırma tamamlandı");

// WiFi şəbəkəsinə qoşulmaqla başlayırıq

Serial.print ("Bağlanır"); Serial.println (msssid); WiFi.begin (myssid, mypass);

isə (WiFi.status ()! = WL_CONNECTED) {

gecikmə (500); Serial.print ("."); } Serial.println ("."); }

boşluq döngəsi () {

char bssid [6]; DynamicJsonBuffer jsonBuffer;

// WiFi.scanNetworks tapılan şəbəkələrin sayını qaytaracaq

int n = WiFi.scanNetworks (); Serial.println ("tarama tamamlandı");

əgər (n == 0) {

Serial.println ("Şəbəkə yoxdur"); } başqa {Serial.print (n); Serial.println ("şəbəkələr tapıldı"); }

// indi jsonString qurun …

jsonString = "{ n"; jsonString += "\" token / ": \" "; jsonString += token; jsonString +=" / ", / n"; jsonString += "\" id / ": \" saikirandevice01 / ", / n"; jsonString += "\" wifi / ": [n"; üçün (int j = 0; j <n; ++ j) {jsonString += "{ n"; jsonString += "\" bssid / ": \" "; jsonString += (WiFi. BSSIDstr (j)); jsonString +=" / ", / n"; jsonString += "\" siqnalı / ":"; jsonString += WiFi. RSSI (j); jsonString += "\ n"; əgər (j <n - 1) {jsonString += "}, / n"; } başqa {jsonString += "} n"; }} jsonString += ("] n"); jsonString += ("} n"); Serial.println (jsonString);

WiFiClientSecure müştəri;

// Müştəriyə qoşulun və api zəng edin

Serial.println ("URL tələb olunur: https://" + (String) Host + son nöqtə); if (client.connect (Host, 443)) {Serial.println ("Bağlandı"); client.println ("POST" + son nöqtə + "HTTP/1.1"); client.println ("Host:" + (String) Host); client.println ("Bağlantı: yaxın"); client.println ("Məzmun Növü: application/json"); client.println ("İstifadəçi-Agent: Arduino/1.0"); client.print ("Məzmun-Uzunluq:"); müştəri.println (jsonString.length ()); müştəri.println (); client.print (jsonString); gecikmə (500); }

// Serverdən gələn cavabın bütün sətirlərini oxuyun və təhlil edin

while (client.available ()) {String line = client.readStringUntil ('\ r'); JsonObject & root = jsonBuffer.parseObject (xətt); if (root.success ()) {enlem = kök ["lat"]; uzunluq = kök ["lon"]; dəqiqlik = kök ["dəqiqlik"];

Serial.println ();

Serial.print ("Enlem ="); Serial.println (enlik, 6); Serial.print ("Boylam ="); Serial.println (uzunluq, 6); Serial.print ("Dəqiqlik ="); Serial.println (dəqiqlik); }}

Serial.println ("bağlanan əlaqə");

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

gecikmə (5000);

}

Addım 7: Bağlandığınızı görmək üçün Serial Monitoru açın

Arduino alətlərinə gedin və serial monitoru açın. İnternetə bağlı olduğunuzu görmək üçün serial monitorda aşağıdakıları görməlisiniz:

Quraşdırma tamamlandı

(Wifi adınıza) qoşulur … tarama tamamlandı

Addım 8: Koordinatları alın

Uğurla işləyirsə, taramanın altında bütün məlumatların siyahısını görməlisiniz. Ehtiyac duyduğumuz yeganə şey, tələb olunan URL -nin altındakı koddur, buna görə də enlem və uzunluq lazımdır. Bunlar koordinatlardır.

URL tələb olunur:

Əlaqədar

Enlem = 52.385259

Boylam = 5.196099

Dəqiqlik = 41.00

bağlanma bağlantısı

5 saniyədən sonra kod daim yenilənəcək və ehtimal ki, enlem, uzunluq və dəqiqlik dəyişikliyini görəcəksiniz. Bunun səbəbi, API -nin yerini mümkün qədər dəqiq izləməkdir.

Addım 9: Google Xəritələrə gedin

Google Xəritələrə keçin
Google Xəritələrə keçin

Https://www.google.com/maps/ saytına daxil olun və axtarış çubuğuna koordinatlarınızı daxil edin. Koordinatları aşağıdakı şəkildə yazmaq lazımdır: 52.385259, 5.196099. Google Xəritə xəritədə harada olduğunuzu göstərməlidir.

Addım 10: Cibinizə Yer Göndərin

Cibinizə Məkan Göndərin
Cibinizə Məkan Göndərin

Və… Bitirdin! Buna görə də, yeri mobil telefonunuza göndərmək istəyirsinizsə, bu mümkündür. İstəsəniz Google Xəritələr koordinatlarınızla birlikdə bir e -poçt göndərəcək.

Xoşbəxt yer!

Tövsiyə: