विषयसूची:
- चरण 1: पुर्जे और उपकरण
- चरण 2: Google API ढूंढें
- चरण 3: Arduino IDE पर NodeMCu सेटअप करें
- चरण 4: ArduinoJson लाइब्रेरी डाउनलोड करें
- चरण 5: कार्यक्रम
वीडियो: भौगोलिक स्थान: 5 कदम
2024 लेखक: John Day | [email protected]. अंतिम बार संशोधित: 2024-01-30 09:22
यह मेरा समर इंटर्नशिप प्रोजेक्ट है। मुझे वास्तव में आश्चर्य होता है जब मैंने सुना है कि हम केवल NodeMCU का उपयोग करके GPS मॉड्यूल का उपयोग किए बिना किसी भी उपकरण का पता लगा सकते हैं। इसके माध्यम से हम किसी भी डिवाइस को ट्रेस कर सकते हैं। आपको यह भी आश्चर्य होता है कि हम केवल वाईफाई का उपयोग करके डिवाइस को कैसे ट्रेस कर सकते हैं। इसे समझने के लिए यहां क्रमबद्ध विवरण दिया गया है।
- · यह आपके लगभग सभी वाईफाई को स्कैन करता है।
- · Google API का उपयोग करके इस उपकरण स्थान को Google को भेजें
- · इसके अनुसार यह आपके डिवाइस के स्थान का पता लगाता है
- · इस परियोजना के लिए आपके पास मजबूत नेटवर्क कनेक्शन है।
चरण 1: पुर्जे और उपकरण
पार्ट्स
- NodeMCU (ESP8266 1.0 12E)
- यूएसबी केबल
उपकरण
NodeMcu 1.0 12E बोर्ड के साथ Arduino IDE
गूगल एपीआई
चरण 2: Google API ढूंढें
- अपना ब्राउज़र खोलें और टाइप करें: console.developer.google.com
- एक नया प्रोजेक्ट बनाएं
- नया प्रोजेक्ट बनाने के बाद क्रेडेंशियल पर क्लिक करें
- एपीआई कुंजी पर क्लिक करें
-
आपकी एपीआई कुंजी उत्पन्न हो गई है
आसानी से समझने के लिए निम्न चित्र देखें |>
चरण 3: Arduino IDE पर NodeMCu सेटअप करें
- निम्न लिंक से Arduino IDE डाउनलोड करें: - https://www। मुख्य/सॉफ्टवेयर arduino.cc/hi/
- Arduino IDE पर नोड एमसीयू बोर्ड जोड़ें
-
NodeMCU पर कोड अपलोड करने के लिए आपको ARDUINO IDE पर NodeMCu बोर्ड जोड़ना होगा।
- Arduino IDE में फ़ाइल और वरीयता पर जाएं
- और अतिरिक्त बोर्ड प्रबंधक अनुभाग में निम्न लिंक को कॉपी करें
- arduino.esp8266.com/stable/package_esp8266c…
- और ठीक क्लिक करें
- बोर्ड डाउनलोड किया गया है
- टूल और बोर्ड पर जाएं और NodeMCU 1.0 12E चुनें
- आसानी से समझने के लिए एवोबे तस्वीर देखें
चरण 4: ArduinoJson लाइब्रेरी डाउनलोड करें
- के पास जाओ
स्केच लाइब्रेरी शामिल करें लाइब्रेरी प्रबंधित करें
सर्च बॉक्स में Arduino Json टाइप करें
ArduinoJson लाइब्रेरी का नवीनतम संस्करण डाउनलोड करें
लाइब्रेरी डाउनलोड करने के बाद बंद करें पर क्लिक करें
से पुस्तकालय जोड़ें
SketchincludeLibraryArduinoJson
चरण 5: कार्यक्रम
निम्नलिखित प्रोग्राम को NodeMCU बोर्ड पर अपलोड करें। और सीरियल मॉनिटर पर अपना डिवाइस (NodeMCU 1.0 12E बोर्ड) स्थान देखें।
#शामिल
#शामिल
#शामिल
चार मिसिड = "आपका एसएसआईडी"; // आपका नेटवर्क SSID (नाम)
चार मायपास = "आपका पासवर्ड"; // आपका नेटवर्क पासवर्ड
// गूगल जियोलोकेशन एपीआई के लिए क्रेडेंशियल…
कास्ट चार* होस्ट = "www.googleapis.com";
स्ट्रिंग thisPage = "/ जियोलोकेशन/v1/जियोलोकेट? की =";
// --- यहां एक Google मानचित्र एपी कुंजी प्राप्त करें:
developers.google.com/maps/documentation/geolocation/intro
स्ट्रिंग कुंजी = "आपकी Google API कुंजी";//चरण 2 से खोजें
अनुदेश
इंट स्थिति = WL_IDLE_STATUS;
स्ट्रिंग जेसनस्ट्रिंग = "{ n";
दोहरा अक्षांश = 0.0;
दोहरा देशांतर = 0.0;
दोहरी सटीकता = 0.0;
इंट मोर_टेक्स्ट = 1; // अधिक डिबग आउटपुट के लिए 1 पर सेट करें
व्यर्थ व्यवस्था() {
सीरियल.बेगिन (९६००);
Serial.println ("प्रारंभ");
// वाईफाई को स्टेशन मोड पर सेट करें और
एपी से डिस्कनेक्ट करें यदि यह पहले जुड़ा हुआ था
वाईफाई.मोड (वाईफाई_एसटीए);
वाईफाई.डिस्कनेक्ट ();
देरी (100);
Serial.println ( सेटअप
किया हुआ );
// हम a. से जुड़कर शुरू करते हैं
वाईफाई नेटवर्क
Serial.print ( से कनेक्ट हो रहा है
);
Serial.println (myssid);
WiFi.begin (myssid, mypass);
जबकि (वाईफाई.स्टेटस()!=WL_CONNECTED) {
देरी (500);
सीरियल.प्रिंट ("।");
}
सीरियल.प्रिंट्लन ("।");
}
शून्य लूप () {
चार बी एस आई डी [6];
डायनेमिकजसनबफर
Serial.println ("स्कैन स्टार्ट");
// WiFi.scanNetworks वापस आ जाएगा
पाए गए नेटवर्क की संख्या
int n = WiFi.scanNetworks ();
Serial.println ("स्कैंडोन");
अगर (एन == 0)
Serial.println ("कोई नेटवर्क नहीं मिला");
अन्यथा
{
सीरियल.प्रिंट (एन);
Serial.println ("नेटवर्क मिला …");
अगर (more_text) {
// फ़ॉर्मेट किए गए json का प्रिंट आउट लें…
सीरियल.प्रिंट्लन ("{");
Serial.println("\"homeMobileCountryCode\":२३४, "); // यह एक वास्तविक यूके एमसीसी है
Serial.println("\"homeMobileNetworkCode\":27, "); // और एक वास्तविक यूके एमएनसी
Serial.println("\"रेडियोटाइप\":\"जीएसएम\", "); // जीएसएम के लिए
Serial.println ("\"वाहक\":\"वोडाफोन\", "); // वोडाफोन से जुड़े
Serial.println ("\" सेलटॉवर्स \": ["); // मैं किसी भी सेल टावर की रिपोर्ट नहीं कर रहा हूँ
सीरियल.प्रिंट्लन ("], ");
Serial.println ("\"wifiAccessPoints\": [");
के लिए (int i = 0; i < n; ++i)
{
सीरियल.प्रिंट्लन ("{");
सीरियल.प्रिंट ("\"मैकएड्रेस\": \"");
सीरियल.प्रिंट (वाईफाई। बीएसएसआईडीस्ट्र (i));
सीरियल.प्रिंट्लन ("\", ");
सीरियल.प्रिंट ("\"सिग्नलस्ट्रेंथ\": ");
Serial.println (वाईफाई। आरएसएसआई (i));
अगर (मैं <एन -1)
{
सीरियल.प्रिंट्लन ("}, ");
}
अन्यथा
{
सीरियल.प्रिंट्लन ("}");
}
}
सीरियल.प्रिंट्लन ("]");
सीरियल.प्रिंट्लन ("}");
}
सीरियल.प्रिंट्लन ("");
}
// अब jsonString बनाएँ…
जेसनस्ट्रिंग = "{ n";
jsonString +="\"homeMobileCountryCode\": २३४, \n"; // यह एक वास्तविक यूके एमसीसी है
jsonString +="\"homeMobileNetworkCode\": 27, \n"; // और एक वास्तविक यूके एमएनसी
jsonString +="\"रेडियोटाइप\": \"जीएसएम\", \n"; // जीएसएम के लिए
jsonString +="\"वाहक\": \"वोडाफोन\", \n"; // वोडाफोन से जुड़े
jsonString +="\"wifiAccessPoints\": [n";
के लिए (इंट जे = 0; जे <एन; ++ जे)
{
जेसनस्ट्रिंग + = "{ n";
jsonString +="\"मैकएड्रेस\": \"";
जेसनस्ट्रिंग + = (वाईफाई। बीएसएसआईडीस्ट्र (जे));
जेसनस्ट्रिंग + = "\", / n";
jsonString +="\"सिग्नलस्ट्रेंथ\": ";
jsonString += WiFi. RSSI(j);
जेसनस्ट्रिंग + = "\ n";
अगर (जे <एन -1)
{
जेसनस्ट्रिंग + = "}, / n";
}
अन्यथा
{
जेसनस्ट्रिंग + = "} n";
}
}
जेसनस्ट्रिंग + = ("] n");
जेसनस्ट्रिंग + = ("} n");
//--------------------------------------------------------------------
सीरियल.प्रिंट्लन ("");
WiFiClientSecure क्लाइंट;
// क्लाइंट से कनेक्ट करें और एपीआई कॉल करें
सीरियल.प्रिंट ("यूआरएल का अनुरोध:");
// ---- यहां Google मानचित्र एपीआई कुंजी प्राप्त करें, लिंक:
Serial.println ("https://" + (स्ट्रिंग) होस्ट + यह पेज + "पुट-योर-गूगल-मैप्स-एपीआई-की-यहाँ");
सीरियल.प्रिंट्लन ("");
अगर (क्लाइंट.कनेक्ट (होस्ट, 443)) {
Serial.println ("कनेक्टेड");
client.println ("POST" + thisPage + key + "HTTP/1.1");
client.println ("होस्ट:" + (स्ट्रिंग) होस्ट);
client.println ("कनेक्शन: बंद करें");
client.println ("सामग्री-प्रकार: एप्लिकेशन/जेसन");
client.println ("उपयोगकर्ता-एजेंट: Arduino/1.0");
क्लाइंट.प्रिंट ("सामग्री-लंबाई:");
client.println (jsonString.length ());
क्लाइंट.प्रिंट्लन ();
क्लाइंट.प्रिंट (जेसनस्ट्रिंग);
देरी (500);
}
// की सभी पंक्तियों को पढ़ें और पार्स करें
सर्वर से उत्तर
जबकि (ग्राहक उपलब्ध ()) {
स्ट्रिंग लाइन =client.readStringUntil('\r');
अगर (more_text) {
सीरियल.प्रिंट (लाइन);
}
JsonObject और रूट =jsonBuffer.parseObject (लाइन);
अगर (रूट। सफलता ()) {
अक्षांश = जड़ ["स्थान"] ["अक्षांश"];
देशांतर = जड़ ["स्थान"] ["एलएनजी"];
सटीकता = जड़ ["सटीकता"];
}
}
Serial.println ("कनेक्शन बंद करना");
सीरियल.प्रिंट्लन ();
क्लाइंट.स्टॉप ();
सीरियल.प्रिंट ("अक्षांश =");
Serial.println(अक्षांश, ६);
सीरियल.प्रिंट ("देशांतर =");
Serial.println (देशांतर, ६);
सीरियल.प्रिंट ("सटीकता =");
Serial.println (सटीकता);
देरी (10000);
सीरियल.प्रिंट्लन ();
Serial.println ("पुनरारंभ कर रहा है…");
सीरियल.प्रिंट्लन ();
देरी (2000);
}
सिफारिश की:
Arduino कार रिवर्स पार्किंग अलर्ट सिस्टम - कदम दर कदम: 4 कदम
Arduino कार रिवर्स पार्किंग अलर्ट सिस्टम | स्टेप बाय स्टेप: इस प्रोजेक्ट में, मैं Arduino UNO और HC-SR04 अल्ट्रासोनिक सेंसर का उपयोग करके एक साधारण Arduino कार रिवर्स पार्किंग सेंसर सर्किट डिजाइन करूंगा। इस Arduino आधारित कार रिवर्स अलर्ट सिस्टम का उपयोग स्वायत्त नेविगेशन, रोबोट रेंजिंग और अन्य रेंज r के लिए किया जा सकता है
DIY कदम/डीआईआर लेजर गैल्वो नियंत्रक: 5 कदम (चित्रों के साथ)
DIY STEP / DIR LASER GALVO कंट्रोलर: नमस्ते, इस निर्देश में, मैं आपको दिखाना चाहता हूं कि आप ILDA मानक गैल्वो लेजर स्कैनर के लिए अपना खुद का स्टेप / dir इंटरफ़ेस कैसे बना सकते हैं। जैसा कि आप जानते होंगे कि मैं "DIY-SLS-3D-Printer" और "जेआरएलएस १००० DIY एसएलएस-३डी-पी
ब्लूटूथ के साथ एलईडी डिवाइस: एक और आयाम स्थान के लिए प्रवेश: 6 कदम
ब्लूटूथ के साथ एलईडी डिवाइस: एक और आयाम स्थान के लिए प्रवेश: यह सेक्रेड ऑब्जेक्ट नामक मेरी मूर्तिकला परियोजना के लिए एक एलईडी लाइट डिवाइस आर्ट वर्क है। मैं इस उपकरण का उपयोग एक नई दुनिया के लिए एक प्रविष्टि प्रस्तुत करने के लिए कर रहा हूं। जब मैं एलईडी लाइट चालू करता हूं, तो हम कंक्रीट बॉक्स के अंदर एक अनंत सुरंग देख सकते हैं। एलईडी पट्टी नियंत्रण है
NodeMCU ESP8266 के साथ स्थान ट्रैकर: 10 कदम
NodeMCU ESP8266 के साथ स्थान ट्रैकर: क्या आप इस बारे में उत्सुक हैं कि आपका NodeMCU आपके स्थान को कैसे ट्रैक कर सकता है? जीपीएस मॉड्यूल और बिना डिस्प्ले के भी यह संभव है। आउटपुट निर्देशांक होगा जहां आप स्थित हैं और आप उन्हें अपने सीरियल मॉनिटर में देखेंगे। निम्नलिखित सेटअप था
रंग स्थान की खोज: 6 कदम
रंग स्थान की खोज: हमारी आंखें उन रिसेप्टर्स के माध्यम से प्रकाश का अनुभव करती हैं जो दृश्य स्पेक्ट्रम में लाल, हरे और नीले रंगों के प्रति संवेदनशील होते हैं। पिछले एक सौ वर्षों में लोगों ने फिल्म, टेलीविजन, कंप्यूटर और अन्य उपकरणों के माध्यम से रंगीन चित्र प्रदान करने के लिए इस तथ्य का उपयोग किया है