فهرست مطالب:
- مرحله 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 08:56
آیا کنجکاو هستید که چگونه NodeMCU شما می تواند مکان شما را ردیابی کند؟ این امکان وجود دارد ، حتی بدون ماژول GPS و بدون نمایشگر. خروجی مختصات محل شما خواهد بود و آنها را در مانیتور سریال خود مشاهده خواهید کرد.
تنظیمات زیر برای NodeMCU 1.0 (ماژول ESP-12E) با Arduino IDE استفاده شد.
- ویندوز 10
- Arduino IDE v. 1.8.4
مرحله 1: آنچه شما نیاز دارید
آنچه شما برای پیروی از این آموزش نیاز دارید اجزای زیر است:
- کابل میکرو USB
- NodeMCU ESP8266
علاوه بر این ، شما نیاز دارید:
- LocationAPI (از آزمایشگاه های بدون سیم)
- دسترسی به wifi یا hotspot
مرحله 2: به آزمایشگاه های بدون سیم بروید
موقعیت جغرافیایی بسیار مفید است زیرا وقتی GPS شما قطع است ، هنوز می توانید از موقعیت جغرافیایی برای ردیابی مکان خود استفاده کنید. میزبان ما که موقعیت مکانی را ارائه می دهد ، https://www.unwiredlabs.com/ خواهد بود. به آن وب سایت بروید و ثبت نام کنید (دکمه نارنجی در گوشه بالا سمت راست).
مرحله 3: برای دریافت API Token ثبت نام کنید
در صفحه ثبت نام ، باید نام خود را وارد کنید ، ایمیل (کد API شما به ایمیل شما ارسال می شود) و مورد استفاده (به عنوان مثال ، استفاده شخصی). نوع حساب خود را انتخاب کنید. نسخه رایگان بسیار خوب عمل می کند ، اما به خاطر داشته باشید که محدود هستید و نمی توانید موقعیت مکانی خود را به صورت 24 ساعته پیگیری کنید. بیایید شروع کنیم!
مرحله 4: ایمیل خود را بررسی کنید
به ایمیل خود بروید و توکن API خود را مشاهده خواهید کرد. توکن API را کپی کنید ، زیرا برای کدی که از آن استفاده می کنیم به آن نیاز دارید. ایمیل به این شکل است:
سلام!
از ثبت نام در Unwired Labs LocationAPI متشکریم! توکن API شما "کد API شما اینجاست" (بدون نقل قول). این 100 درخواست/ روز به صورت رایگان - برای همیشه ارائه می دهد.
اگر می خواهید 5 دستگاه را به صورت رایگان ردیابی کنید ، لطفاً با جزئیات زیر پاسخ دهید و ما ظرف 12 ساعت حساب شما را ارتقا می دهیم:
1. نوع استقرار (سخت افزار/ برنامه/ سایر موارد):
2. درباره پروژه شما:
3. وب سایت:
در اینجا می توانید به داشبورد خود وارد شوید: https://unwiredlabs.com/dashboard. اگر به مشکل برخوردید یا س questionsالی داشتید ، به این ایمیل پاسخ دهید تا من به شما کمک کنم!
موقعیت مکانی مبارک!
ساگار
آزمایشگاه های بدون سیم
مرحله 5: کتابخانه های مورد نیاز
مرحله بعدی باز کردن آردوینو و مدیریت کتابخانه ها است. شما باید کتابخانه ArduinoJson را نصب کنید. کتابخانه های دیگر در حال حاضر ساخته شده اند. هنگامی که آماده شدید ، می توانید نوشتن کد را شروع کنید.
مرحله 6: کد را در Arduino برای اتصال با LocationAPI اضافه کنید
یک طرح جدید ایجاد کنید و کد زیر را در آردوینو اضافه کنید. نام wifi/hotspot و رمز عبور خود را بنویسید. توکن API را که در ایمیل دریافت کرده اید جایگذاری کنید. کد خود را در NodeMCU خود بارگذاری کنید.
#عبارتند از
#عبارتند از
#شامل "ESP8266WiFi.h"
// SSID شبکه شما (نام) و رمز شبکه
char myssid = "نام wifi/hotspot شما"؛ char mypass = "گذرواژه شما"؛
// unwiredlabs نام میزبان و نشانی اینترنتی نقطه پایانی موقعیت جغرافیایی
const char* Host = "www.unwiredlabs.com"؛ نقطه پایانی رشته = "/v2/process.php"؛
// UnwiredLabs API_Token. برای دریافت یک رمز رایگان https://unwiredlabs.com/trial اینجا ثبت نام کنید
توکن رشته = "d99cccda52ec0b"؛
رشته jsonString = "{ n"؛
// متغیرها برای ذخیره پاسخ unwiredlabs
عرض جغرافیایی دو برابر = 0.0؛ طول جغرافیایی دو برابر = 0.0؛ دقت مضاعف = 0.0 ؛
void setup () {
Serial.begin (115200) ؛
// وای فای را روی حالت ایستگاه قرار دهید و درصورتی که قبلاً به آن متصل شده بود ، آن را قطع کنید
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 (".")؛ }
حلقه خالی () {
char bssid [6]؛ DynamicJsonBuffer jsonBuffer؛
// WiFi.scanNetworks تعداد شبکه های یافت شده را برمی گرداند
int n = WiFi.scanNetworks ()؛ Serial.println ("اسکن انجام شد") ؛
if (n == 0) {
Serial.println ("شبکه ای در دسترس نیست") ؛ } 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"؛ if (j <n - 1) {jsonString += "} ، / n" ؛ } else {jsonString += "} n"؛ }} jsonString += ("] n")؛ jsonString += ("} n")؛ Serial.println (jsonString) ؛
مشتری WiFiClientSecure ؛
// به مشتری متصل شوید و api را برقرار کنید
Serial.println ("نشانی اینترنتی درخواست: https://" + (رشته) میزبان + نقطه پایانی) ؛ if (client.connect (میزبان ، 443)) {Serial.println ("متصل") ؛ client.println ("POST" + نقطه پایانی + "HTTP/1.1") ؛ client.println ("میزبان:" + (رشته) میزبان)؛ 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"]؛ طول جغرافیایی = ریشه ["lon"]؛ دقت = ریشه ["دقت"]؛
Serial.println ()؛
Serial.print ("Latitude =")؛ Serial.println (عرض جغرافیایی ، 6) ؛ Serial.print ("طول جغرافیایی =")؛ Serial.println (طول جغرافیایی ، 6) ؛ Serial.print ("دقت =")؛ Serial.println (دقت) ؛ }}
Serial.println ("بستن اتصال") ؛
Serial.println ()؛ client.stop ()؛
تأخیر (5000) ؛
}
مرحله 7: مانیتور سریال را باز کنید تا ببینید اتصال دارید یا خیر
به ابزارهای موجود در آردوینو بروید و مانیتور سریال را باز کنید. برای مشاهده اتصال به اینترنت ، موارد زیر را در مانیتور سریال مشاهده کنید:
راه اندازی انجام شد
اتصال به (نام wifi شما)… اسکن انجام شد
مرحله 8: مختصات را دریافت کنید
اگر با موفقیت کار کرد ، باید در اسکن لیست کامل داده ها را مشاهده کنید. تنها چیزی که ما نیاز داریم کد زیر 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 ایمیلی با مختصات شما ارسال می کند.
موقعیت مکانی مبارک!
توصیه شده:
ردیاب رومیزی COVID19 با ساعت! ردیاب رزبری پای: 6 مرحله
ردیاب رومیزی COVID19 با ساعت! ردیاب رزبری پای: ما می دانیم که ما می توانیم در هر زمان بمیریم ، حتی من می توانم هنگام نوشتن این پست بمیرم ، به هر حال ، من ، شما ، همه ما فانی هستیم. تمام دنیا به دلیل همه گیری COVID19 لرزید. ما می دانیم چگونه از این امر جلوگیری کنیم ، اما هی! ما می دانیم چگونه دعا کنیم و چرا باید دعا کنیم ، آیا این کار را می کنیم
مکان یاب GPS: 5 مرحله
مکان یاب GPS: سلام به همه ، امروز اجازه دهید نحوه ساخت مکان یاب GPS را با استفاده از ماژول GPS NEO-6m و آردوینو ببینیم. ابتدا اجازه دهید ببینیم GPS چیست؟
سیستم مکان ذخیره سازی مقاومت "Resys": 7 مرحله (همراه با تصاویر)
Resistor Storage Location System "Resys": این سیستمی است که به راحتی می توانید مقاومت خود را پیدا کنید. با مقدار دلخواه جستجو کنید و کشوی مناسب روشن شود. این سیستم را می توان به تعداد کشوهای دلخواه گسترش داد
مکان نما موس کامپیوتر سفارشی: 11 مرحله
نشانگر ماوس رایانه ای سفارشی: آیا تا به حال خسته شده اید که نشانگر ماوس شما همیشه یکسان به نظر برسد؟ در این دستورالعمل ، شما یاد می گیرید که چگونه مکان نما موس سفارشی خود را بسازید و آن را تنظیم کنید تا بر روی رایانه ویندوز 10 کار کند
ربات انتخاب و مکان بر اساس RFID: 4 مرحله
ربات انتخاب و مکان بر اساس RFID: سالهاست که مردم سعی می کنند کار انسان را با ماشین جایگزین کنند. ماشینهایی به نام روبات سریعتر و م effectiveثرتر از مردم هستند. اصطلاح روباتیک عملاً به عنوان مطالعه ، طراحی و استفاده از سیستم های ربات برای تولید تعریف می شود. روبات ها g