İçindekiler:

NodeMCU ESP8266 ile Konum İzleyici: 10 Adım
NodeMCU ESP8266 ile Konum İzleyici: 10 Adım

Video: NodeMCU ESP8266 ile Konum İzleyici: 10 Adım

Video: NodeMCU ESP8266 ile Konum İzleyici: 10 Adım
Video: Mioji GP88 GPS Araç Takip Cihazı Kurulum ve Uygulama Ayarları - Teknoloji Dünyası 2024, Kasım
Anonim
NodeMCU ESP8266 ile Konum İzleyici
NodeMCU ESP8266 ile Konum İzleyici

NodeMCU'nuzun konumunuzu nasıl takip edebileceğini merak ediyor musunuz? GPS modülü ve ekran olmadan da mümkündür. Çıktı, bulunduğunuz yerin koordinatları olacak ve bunları seri monitörünüzde göreceksiniz.

Arduino IDE ile NodeMCU 1.0 (ESP-12E Modülü) için aşağıdaki kurulum kullanıldı.

  • Windows 10
  • Arduino IDE sürüm 1.8.4

Adım 1: Neye İhtiyacınız Var?

Bu öğreticiyi takip etmek için ihtiyacınız olan şey aşağıdaki bileşenlerdir:

  • Mikro USB kablosu
  • DüğümMCU ESP8266

Ayrıca, ihtiyacınız olacak:

  • LocationAPI (Kablosuz Laboratuvarlardan)
  • Wi-Fi veya bir etkin noktaya erişim

2. Adım: Unwired Labs'a gidin

Unwired Labs'a gidin
Unwired Labs'a gidin

Geolocation çok kullanışlıdır çünkü GPS'iniz kapalıyken konumunuzu izlemek için Geolocation'ı kullanmaya devam edebilirsiniz. Coğrafi konum sağlayan sunucumuz https://www.unwiredlabs.com/ olacaktır. Bu web sitesine gidin ve kaydolun (sağ üst köşedeki turuncu düğme).

3. Adım: API Simgesini Almak için Kaydolun

API Simgesi Almak için Kaydolun
API Simgesi Almak için Kaydolun

Kaydolma sayfasında adınızı, e-posta adresinizi (API jetonunuz e-postanıza gönderilecektir) ve kullanım durumunuzu (örneğin, kişisel kullanım) doldurmanız gerekir. Hesap türünüzü seçin. Ücretsiz sürüm gayet iyi olacak, ancak sınırlı olduğunuzu ve konumunuzu 7/24 takip edemeyeceğinizi unutmayın. Başlayalım!

4. Adım: E-postanızı Kontrol Edin

E-postanıza gidin ve API simgenizi göreceksiniz. API belirtecini kopyalayın, çünkü kullanacağımız kod için buna ihtiyacınız var. E-posta şöyle görünür:

Merhaba!

Unwired Labs LocationAPI'ye kaydolduğunuz için teşekkür ederiz! API jetonunuz 'API kodunuz burada' şeklindedir (tırnak işaretleri olmadan). Bu, ücretsiz olarak günde 100 istek verecektir - sonsuza kadar.

5 cihazı ücretsiz olarak izlemek istiyorsanız, lütfen aşağıdaki ayrıntılarla yanıt verin, hesabınızı 12 saat içinde yükseltelim:

1. Dağıtım türü (Donanım/ Uygulama/ Diğer):

2. Projeniz hakkında:

3. Web sitesi:

Kontrol panelinize buradan giriş yapabilirsiniz: https://unwiredlabs.com/dashboard. Sorun yaşarsanız veya sorularınız varsa, bu e-postayı yanıtlayın, size yardımcı olayım!

Mutlu Konumlandırma!

Sagar

Kablosuz Laboratuvarlar

Adım 5: İhtiyacınız Olan Kütüphaneler

İhtiyacınız Olan Kütüphaneler
İhtiyacınız Olan Kütüphaneler

Bir sonraki adım Arduino'yu açmak ve kütüphaneleri yönetmek. ArduinoJson kütüphanesini kurmanız gerekiyor. Diğer kitaplıklar zaten yerleşiktir. Hazır olduğunuzda kodu yazmaya başlayabilirsiniz.

Adım 6: LocationAPI ile Bağlanmak için Arduino'ya Kod Ekleyin

Yeni bir çizim yapın ve Arduino'ya aşağıdaki kodu ekleyin. Kendi wifi/hotspot adınızı ve şifrenizi yazın. E-postada aldığınız API jetonunu yapıştırın. Kodunuzu NodeMCU'nuza yükleyin.

#Dahil etmek

#Dahil etmek

#include "ESP8266WiFi.h"

// ağ SSID'niz (adınız) ve ağ şifreniz

char myssid = "Wifi/hotspot adınız"; char mypass = "Şifreniz";

// unwiredlabs Ana Bilgisayar Adı ve Coğrafi Konum Bitiş Noktası url'si

const char* Ana Bilgisayar = "www.unwiredlabs.com"; Dize bitiş noktası = "/v2/process.php";

// UnwiredLabs API_Token. Ücretsiz jeton almak için buradan kaydolun

Dize belirteci = "d99cccda52ec0b";

String jsonString = "{n";

// Unwiredlabs yanıtını depolamak için değişkenler

çift enlem = 0.0; çift boylam = 0.0; çift doğruluk = 0.0;

geçersiz kurulum(){

Seri.başla(115200);

// WiFi'yi istasyon moduna ayarlayın ve daha önce bağlanmışsa bir AP ile bağlantısını kesin

WiFi.modu(WIFI_STA); WiFi.disconnect(); Serial.println("Kurulum tamamlandı");

// Bir WiFi ağına bağlanarak başlıyoruz

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

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

gecikme(500); Seri.print("."); } Serial.println("."); }

boşluk döngüsü () {

karakter bssid[6]; DynamicJsonBuffer jsonBuffer;

// WiFi.scanNetworks, bulunan ağ sayısını döndürür

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

if (n == 0) {

Serial.println("Kullanılabilir ağ yok"); } başka { Serial.print(n); Serial.println(" ağ bulundu"); }

// şimdi jsonString'i oluştur…

jsonString = "{n"; jsonString += "\"token\": \"";jsonString += belirteç;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 += "\"sinyal\": "; jsonString += WiFi. RSSI(j); jsonString += "\n"; if (j < n - 1) { jsonString += "}, \n"; } else { jsonString += "}\n"; } } jsonString += ("]\n"); jsonString += ("}\n"); Serial.println(jsonString);

WiFiClientSecure istemcisi;

// İstemciye bağlanın ve api çağrısını yapın

Serial.println("İsteyen URL: https://" + (Dize) Ana Bilgisayar + uç nokta); if (client.connect(Host, 443)) { Serial.println("Bağlandı"); client.println("POST" + uç nokta + "HTTP/1.1"); client.println("Ana Bilgisayar: " + (Dize)Ana Bilgisayar); client.println("Bağlantı: kapat"); client.println("İçerik Türü: uygulama/json"); client.println("Kullanıcı-Aracı: Arduino/1.0"); client.print("İçerik-Uzunluk: "); client.println(jsonString.length()); client.println(); client.print(jsonString); gecikme(500); }

//Sunucudan gelen cevabın tüm satırlarını oku ve ayrıştır

while (client.available()) { String line = client.readStringUntil('\r'); JsonObject& root = jsonBuffer.parseObject(satır); if (root.success()) { enlem = kök["enlem"]; boylam = kök["boylam"]; doğruluk = kök["doğruluk"];

Seri.println();

Serial.print("Enlem = "); Serial.println(enlem, 6); Serial.print("Boylam = "); Serial.println(boylam, 6); Serial.print("Doğruluk = "); Serial.println(doğruluk); } }

Serial.println("bağlantıyı kapat");

Seri.println(); istemci.durdur();

gecikme (5000);

}

7. Adım: Bağlı olup olmadığınızı görmek için Seri Monitörü açın

Arduino'daki araçlara gidin ve seri monitörü açın. İnternete bağlı olup olmadığınızı görmek için seri monitörde aşağıdakileri görmelisiniz:

Kurulum tamamlandı

(wifi adınız) bağlanılıyor… tarama tamamlandı

Adım 8: Koordinatları Alın

Başarılı bir şekilde çalıştıysa, tarama altında tam bir veri listesi yapıldığını görmelisiniz. İhtiyacımız olan tek şey, istekte bulunan URL'nin altındaki koddur, bu nedenle enlem ve boylama ihtiyacımız olacak. Bunlar koordinatlar.

İstek URL'si:

bağlı

Enlem = 52.385259

Boylam = 5.196099

Doğruluk = 41.00

kapanış bağlantısı

5 saniye sonra kod sürekli güncellenecek ve muhtemelen enlem, boylam ve doğruluk değişikliğini göreceksiniz. Bunun nedeni, API'nin konumu mümkün olduğunca kesin olarak takip etmeye çalışmasıdır.

9. Adım: Google Haritalar'a gidin

Google Haritalar'a git
Google Haritalar'a git

www.google.com/maps/ adresine gidin ve arama çubuğuna koordinatlarınızı yazın. Koordinatlar şu şekilde yazılmalıdır: 52.385259, 5.196099. Google Haritalar, haritada nerede olduğunuzu göstermelidir.

Adım 10: Konumunuzu Cep Telefonunuza Gönderin

Cep Telefonunuza Konum Gönderin
Cep Telefonunuza Konum Gönderin

Ve… İşiniz bitti! Bu nedenle, konumu cep telefonunuza göndermek istiyorsanız, mümkündür. Google Haritalar, isterseniz koordinatlarınızı içeren bir e-posta gönderecektir.

Mutlu yerleştirme!

Önerilen: