Съдържание:
- Стъпка 1: Какво ви трябва
- Стъпка 2: Отидете в Нежични лаборатории
- Стъпка 3: Регистрирайте се, за да получите API Token
- Стъпка 4: Проверете имейла си
- Стъпка 5: Библиотеки, които ще ви трябват
- Стъпка 6: Добавете код в Arduino, за да се свържете с LocationAPI
- Стъпка 7: Отворете серийния монитор, за да видите дали сте свързани
- Стъпка 8: Вземете координатите
- Стъпка 9: Отидете на Google Maps
- Стъпка 10: Изпратете местоположението на мобилния си телефон
Видео: Проследяване на местоположението с NodeMCU ESP8266: 10 стъпки
2024 Автор: John Day | [email protected]. Последно модифициран: 2024-01-30 07:53
Любопитни ли сте как вашият NodeMCU може да проследи вашето местоположение? Възможно е дори без GPS модул и без дисплей. Изходът ще бъде координати, където се намирате и ще ги видите на вашия сериен монитор.
Следната настройка е използвана за NodeMCU 1.0 (ESP-12E модул) с Arduino IDE.
- Windows 10
- Arduino IDE v. 1.8.4
Стъпка 1: Какво ви трябва
Това, от което се нуждаете, за да следвате този урок, са следните компоненти:
- Микро USB кабел
- NodeMCU ESP8266
Освен това ще ви трябва:
- LocationAPI (от Unwired Labs)
- Достъп до wifi или гореща точка
Стъпка 2: Отидете в Нежични лаборатории
Геолокацията е много полезна, защото когато GPS -то ви е изключено, все още можете да използвате Geolocation за проследяване на вашето местоположение. Нашият хост, който осигурява геолокация, ще бъде https://www.unwiredlabs.com/. Отидете на този уебсайт и се регистрирайте (оранжевият бутон в горния десен ъгъл).
Стъпка 3: Регистрирайте се, за да получите API Token
На страницата за регистрация трябва да попълните вашето име, имейл (вашият API маркер ще бъде изпратен на вашия имейл) и случай на използване (например за лична употреба). Изберете типа на акаунта си. Безплатната версия ще се справи отлично, но имайте предвид, че сте ограничени и не можете да проследявате местоположението си денонощно. Да започваме!
Стъпка 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/hotspot и паролата си. Поставете маркера на API, който сте получили в имейла. Качете вашия код във вашия NodeMCU.
#включва
#включва
#include "ESP8266WiFi.h"
// вашият мрежов SSID (име) и мрежова парола
char myssid = "Името на вашия wifi/hotspot"; char mypass = "Вашата парола";
// unwiredlabs URL адрес на име на хост и геолокация
const char* Host = "www.unwiredlabs.com"; Низова крайна точка = "/v2/process.php";
// UnwiredLabs API_Token. Регистрирайте се тук, за да получите безплатен жетон
Низов жетон = "d99cccda52ec0b";
Низ jsonString = "{ n";
// Променливи за съхраняване на отговор на unwiredlabs
двойна ширина = 0,0; двойна дължина = 0,0; двойна точност = 0,0;
void setup () {
Serial.begin (115200);
// Задайте WiFi в режим на станция и изключете от точка за достъп, ако преди това е била свързана
WiFi.mode (WIFI_STA); WiFi.disconnect (); Serial.println ("Настройката е извършена");
// Започваме със свързване към WiFi мрежа
Serial.print ("Свързване към"); Serial.println (myssid); WiFi.begin (myssid, mypass);
while (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 ("Няма налични мрежи"); } else {Serial.print (n); Serial.println ("намерени мрежи"); }
// сега изграждаме jsonString …
jsonString = "{ n"; jsonString += "\" token / ": \" "; jsonString += token; 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"; if (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 ("Content-Length:"); 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"]; longitude = root ["lon"]; точност = корен ["точност"];
Serial.println ();
Serial.print ("Latitude ="); Serial.println (географска ширина, 6); Serial.print ("Longitude ="); 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 Maps
Отидете на https://www.google.com/maps/ и въведете координатите си в лентата за търсене. Координатите трябва да бъдат записани по следния начин: 52.385259, 5.196099. Google Maps трябва да показва къде се намирате на картата.
Стъпка 10: Изпратете местоположението на мобилния си телефон
И … Готово! Следователно, ако искате да изпратите местоположението на мобилния си телефон, това е възможно. След това Google Maps ще изпрати имейл с вашите координати, ако желаете.
Приятно намиране!
Препоръчано:
Проследяване на актуализации на Covid-19 с помощта на ESP8266: 9 стъпки
Проследяване на актуализации на Covid-19 с помощта на ESP8266: Този проект показва текущите данни за епидемията от коронавирус в различни градове на щати Индия в реално време на OLED дисплей. Този инструмент за проследяване на състоянието на живо ви помага да следите актуализацията на Covid-19 в реално време на вашия район. Този проект е напълно
Как да направите проследяване на данни на живо от Coronavirus COVID 19 с ESP8266, дисплей на електронна хартия: 7 стъпки
Как да направите проследяване на данни на живо от Coronavirus COVID 19 с ESP8266, дисплей на електронна хартия: 1
Проследяване и проследяване за малки магазини: 9 стъпки (със снимки)
Проследяване и следене за малки магазини: Това е система, създадена за малки магазини, която трябва да се монтира на електронни велосипеди или електронни тротинетки за доставки на къси разстояния, например пекарна, която иска да доставя сладкиши. Какво означава Track and Trace? Проследяване и проследяване е система, използвана от ca
Направи си сам интелигентен робот за проследяване на комплекти за кола Проследяване на фоточувствителна кола: 7 стъпки
DIY Smart Robot Tracking Car Kits Проследяване на автомобил Фоточувствителен: Дизайн от SINONING ROBOT Можете да закупите от проследяващ робот car Теорът LM393 сравнете двата фоторезистора, когато има един страничен фоторезистор LED на БЯЛО, страната на двигателя ще спре веднага, другата страна на двигателя завърти се, така че
Как да промените местоположението на носителя в библиотеката на JW: 4 стъпки
Как да промените местоположението на медията в библиотеката JW: Библиотеката JW е приложение на Metro, което означава, че има опростен интерфейс. Това е добро нещо в повечето случаи, тъй като за повечето потребители просто просто зареждате приложението и го използвате по начина, по който имате нужда. Разтриването идва, когато искате да направите малко по -напреднали неща