Агуулгын хүснэгт:

NodeMCU ESP8266: 10 алхамтай байршлыг хянах төхөөрөмж
NodeMCU ESP8266: 10 алхамтай байршлыг хянах төхөөрөмж

Видео: NodeMCU ESP8266: 10 алхамтай байршлыг хянах төхөөрөмж

Видео: NodeMCU ESP8266: 10 алхамтай байршлыг хянах төхөөрөмж
Видео: Удаленно контролировать энергопотребление дома | ПЗЭМ-004Т | Облако Интернета вещей RemoteXY 2024, Долдугаар сарын
Anonim
NodeMCU ESP8266 -тэй байршлыг хянах төхөөрөмж
NodeMCU ESP8266 -тэй байршлыг хянах төхөөрөмж

Таны NodeMCU таны байршлыг хэрхэн хянах талаар сонирхож байна уу? Энэ нь GPS модульгүй, дэлгэцгүй байсан ч боломжтой. Гаралт нь таны байрлаж буй координат байх бөгөөд та тэдгээрийг сериал монитор дээрээ харах болно.

Дараах тохиргоог Arduino IDE бүхий NodeMCU 1.0 (ESP-12E модуль) -д ашигласан болно.

  • Windows 10
  • Arduino IDE v. 1.8.4

Алхам 1: Танд юу хэрэгтэй байна

Энэхүү гарын авлагыг дагаж мөрдөхийн тулд танд дараах бүрэлдэхүүн хэсгүүд хэрэгтэй болно.

  • Микро USB кабель
  • NodeMCU ESP8266

Нэмж хэлэхэд танд хэрэгтэй болно:

  • Байршил API (Утасгүй лаборатороос)
  • Wi -Fi эсвэл халуун цэг рүү нэвтрэх

Алхам 2: Утасгүй лабораторид очно уу

Утасгүй лаборатори руу очно уу
Утасгүй лаборатори руу очно уу

Газарзүйн байршлыг тогтооход маш хялбар байдаг, учир нь таны GPS унтарсан үед та байршлаа хянахдаа Гео байршлыг ашиглаж болно. Газарзүйн байршлыг өгдөг манай хост бол https://www.unwiredlabs.com/ болно. Энэ вэбсайт руу ороод бүртгүүлнэ үү (баруун дээд буланд байгаа улбар шар товчлуур).

Алхам 3: API токен авахын тулд бүртгүүлнэ үү

API Token авахын тулд бүртгүүлнэ үү
API Token авахын тулд бүртгүүлнэ үү

Бүртгүүлэх хуудсан дээр та өөрийн нэр, имэйл (таны 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: LocationAPI -тэй холбогдохын тулд Arduino -д код нэмнэ үү

Шинэ ноорог хийж, дараах кодыг Arduino дээр нэмнэ үү. Өөрийн wifi/халуун цэгийн нэр, нууц үгээ бичнэ үү. Имэйлд хүлээн авсан API жетоноо оруулна уу. Кодоо NodeMCU -д байршуулна уу.

#оруулах

#оруулах

#"ESP8266WiFi.h" -ийг оруулна уу

// таны сүлжээний SSID (нэр) ба сүлжээний нууц үг

char myssid = "Таны wifi/халуун цэгийн нэр"; char mypass = "Таны нууц үг";

// шаардлагагүй утас Хостын нэр ба Газарзүйн байршлын төгсгөлийн URL

const char* Host = "www.unwiredlabs.com"; String төгсгөлийн цэг = "/v2/process.php";

// UnwiredLabs API_Token. Үнэгүй токен авахын тулд энд бүртгүүлнэ үү

String жетон = "d99cccda52ec0b";

String jsonString = "{ n";

// Утасгүй хүсэлтийн хариуг хадгалах хувьсагчууд

давхар өргөрөг = 0.0; давхар уртраг = 0.0; давхар нарийвчлал = 0.0;

хүчингүй тохиргоо () {

Цуваа.begin (115200);

// WiFi -ийг станцын горимд тохируулж, өмнө нь холбогдсон байсан бол АП -аас салга

WiFi горим (WIFI_STA); WiFi.disconnect (); Serial.println ("Тохируулга хийгдсэн");

// Бид WiFi сүлжээнд холбогдож эхэлдэг

Serial.print ("Холбогдож байна"); Serial.println (myssid); WiFi.begin (myssid, mypass);

байхад (WiFi.status ()! = WL_CONNECTED) {

саатал (500); Serial.print ("."); } Serial.println ("."); }

void loop () {

char bssid [6]; DynamicJsonBuffer jsonBuffer;

// WiFi.scanNetworks олдсон сүлжээний тоог буцаана

int n = WiFi.scanNetworks (); Serial.println ("скан хийсэн");

хэрэв (n == 0) {

Serial.println ("Сүлжээ байхгүй байна"); } өөр {Serial.print (n); Serial.println ("сүлжээ олдсон"); }

// одоо jsonString -ийг бүтээнэ үү …

jsonString = "{ n"; jsonString += "\" жетон / ": \" "; jsonString += жетон; 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 += "\" дохио / ":"; jsonString += WiFi. RSSI (j); jsonString += "\ n"; хэрэв (j <n - 1) {jsonString += "}, / n"; } өөр {jsonString += "} n"; }} jsonString += ("] n"); jsonString += ("} n"); Serial.println (jsonString);

WiFiClientSecure үйлчлүүлэгч;

// Үйлчлүүлэгчтэй холбогдож api дуудлага хийх

Serial.println ("URL хүсэж байна: https://" + (String) Host + төгсгөлийн цэг); if (client.connect (Host, 443)) {Serial.println ("Холбогдсон"); client.println ("POST" + төгсгөлийн цэг + "HTTP/1.1"); client.println ("Host:" + (String) Host); client.println ("Холболт: хаах"); client.println ("Агуулгын төрөл: application/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 ()) {latitude = root ["lat"]; уртраг = үндэс ["lon"]; нарийвчлал = root ["нарийвчлал"];

Serial.println ();

Serial.print ("Өргөрөг ="); Serial.println (өргөрөг, 6); Serial.print ("Уртраг ="); Serial.println (уртраг, 6); Serial.print ("Нарийвчлал ="); Serial.println (нарийвчлал); }}

Serial.println ("хаалтын холболт");

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

саатал (5000);

}

Алхам 7: Та холбогдсон эсэхийг шалгахын тулд цуваа дэлгэцийг нээнэ үү

Arduino дахь хэрэгслүүд рүү очоод цуваа дэлгэцийг нээнэ үү. Та интернетэд холбогдсон эсэхээ шалгахын тулд цуваа дэлгэц дээр дараахь зүйлийг харах ёстой.

Тохиргоог хийлээ

(Таны wifi нэр) -тэй холбогдож байна … скан хийлээ

Алхам 8: Координат авах

Хэрэв энэ нь амжилттай ажилласан бол өгөгдлийн бүх жагсаалтыг скан хийх дор харах ёстой. Бидэнд хэрэгтэй цорын ганц зүйл бол хүсэлт тавьж буй URL -ийн доорх код тул өргөрөг, уртраг хэрэгтэй болно. Эдгээр нь координатууд юм.

URL хүсэх:

Холбогдсон

Өргөрөг = 52.385259

Уртраг = 5.196099

Нарийвчлал = 41.00

хаах холболт

5 секундын дараа код байнга шинэчлэгдэх бөгөөд та өргөрөг, уртраг, нарийвчлалын өөрчлөлтийг харах болно. Учир нь API нь байршлыг аль болох нарийвчлан хянах нь хамгийн сайн арга юм.

Алхам 9: Google газрын зураг руу очно уу

Google газрын зураг руу очно уу
Google газрын зураг руу очно уу

Https://www.google.com/maps/ хаягаар орж координатаа хайлтын талбарт бичнэ үү. Координатыг дараах байдлаар бичих шаардлагатай: 52.385259, 5.196099. Google Газрын зураг нь таны хаана байгааг газрын зураг дээр харуулах ёстой.

Алхам 10: Байршлыг гар утсандаа илгээх

Гар утсандаа байршлыг илгээнэ үү
Гар утсандаа байршлыг илгээнэ үү

Тэгээд … Та дууслаа! Тиймээс, хэрэв та байршлыг гар утсандаа илгээхийг хүсч байвал боломжтой. Хэрэв та хүсвэл Google Газрын зураг таны координатыг имэйлээр илгээх болно.

Аз жаргалтай байршил!

Зөвлөмж болгож буй: