Inhaltsverzeichnis:
- Schritt 1: Teile & Werkzeug
- Schritt 2: Google API finden
- Schritt 3: NodeMCu auf Arduino IDE einrichten
- Schritt 4: ArduinoJson-Bibliothek herunterladen
- Schritt 5: Programm
Video: GEOLOACATION: 5 Schritte
2024 Autor: John Day | [email protected]. Zuletzt bearbeitet: 2024-01-30 07:20
Es ist mein Sommerpraktikumsprojekt. Ich bin wirklich überrascht, wenn ich höre, dass wir den Standort jedes Geräts verfolgen können, ohne das GPS-Modul nur mit NodeMCU zu verwenden. Dadurch können wir jedes Gerät verfolgen. Sie sind auch überrascht, wie wir Geräte nur mit WiFi verfolgen können. Hier sind die Sortierbeschreibungen, um es zu verstehen.
- · Es scannt fast Ihr gesamtes WLAN.
- · Diesen Gerätestandort über die Google API an Google senden
- · Demnach ist es Ihren Gerätestandort zu lokalisieren
- · Sie haben eine starke Netzwerkverbindung für dieses Projekt.
Schritt 1: Teile & Werkzeug
Teile
- KnotenMCU (ESP8266 1.0 12E)
- USB-Kabel
Werkzeuge
Arduino-IDE mit NodeMcu 1.0 12E-Board
Google-API
Schritt 2: Google API finden
- Öffnen Sie Ihren Browser und geben Sie ein: console.developer.google.com
- Erstellen Sie ein neues Projekt
- Klicken Sie nach Erstellen eines neuen Projekts auf Anmeldeinformationen
- Klicken Sie auf API-Schlüssel
-
Ihr API-Schlüssel wurde generiert
Zum leichteren Verständnis siehe folgendes Bild |>
Schritt 3: NodeMCu auf Arduino IDE einrichten
- Laden Sie Arduino IDE von folgendem Link herunter: - https://www. Main/Software arduino.cc/de/
- Node MCu-Board auf Arduino IDE hinzufügen
-
Um Code auf NodeMCU hochzuladen, müssen Sie das NodeMCu-Board auf der ARDUINO IDE hinzufügen.
- Gehen Sie zu Datei & Einstellungen in Arduino IDE
- Und kopieren Sie im Abschnitt Zusätzliche Board-Manager den folgenden Link
- arduino.esp8266.com/stable/package_esp8266c…
- und klicke auf Ok
- Das Board wird heruntergeladen
- Gehen Sie zu Tools und Board und wählen Sie NodeMCU 1.0 12E
- Sehen Sie sich das Avobe-Bild zum leichteren Verständnis an
Schritt 4: ArduinoJson-Bibliothek herunterladen
- Gehe zum
Skizze Bibliothek einbeziehen Bibliothek verwalten
Geben Sie Arduino Json in das Suchfeld ein
Laden Sie die neueste Version der ArduinoJson-Bibliothek herunter
Klicken Sie nach dem Herunterladen der Bibliothek auf Schließen
Bibliothek hinzufügen aus
SketchincludeLibraryArduinoJson
Schritt 5: Programm
Laden Sie das folgende Programm auf die NodeMCU-Platine hoch. und sehen Sie den Standort Ihres Geräts (NodeMCU 1.0 12E-Platine) auf dem seriellen Monitor.
#enthalten
#enthalten
#enthalten
char myssid = "Ihre SSID"; // Ihre Netzwerk-SSID (Name)
char mypass = "Ihr Passwort"; // Ihr Netzwerk-Passwort
//Anmeldedaten für die Google GeoLocation API…
const char* Host = "www.googleapis.com";
String thisPage = "/geolocation/v1/geolocate?key=";
// --- Holen Sie sich hier einen Google Maps-App-Schlüssel:
developers.google.com/maps/documentation/geolocation/intro
String key = "Ihr Google API-Schlüssel";//Find from step2
Anweisung
int-Status = WL_IDLE_STATUS;
String jsonString = "{n";
doppelter Breitengrad = 0,0;
doppelter Längengrad = 0,0;
doppelte Genauigkeit = 0,0;
int more_text = 1; // auf 1 setzen für mehr Debug-Ausgabe
Leere Einrichtung () {
Serial.begin (9600);
Serial.println ("Start");
// WLAN auf Stationsmodus setzen und
Trennen Sie sich von einem AP, wenn dieser zuvor verbunden war
WiFi.mode(WIFI_STA);
WiFi.disconnect();
Verzögerung (100);
Serial.println( Setup
getan );
// Wir beginnen mit der Verbindung zu a
WLAN-Netzwerk
Serial.print( Verbinden mit
);
Serial.println (myssid);
WiFi.begin(myssid, mypass);
while (WiFi.status() !=WL_CONNECTED) {
Verzögerung (500);
Serial.print(".");
}
Serial.println(".");
}
Leere Schleife () {
char bssid[6];
DynamicJsonBuffer jsonBuffer;
Serial.println("Scanstart");
// WiFi.scanNetworks wird zurückkehren
die Anzahl der gefundenen Netzwerke
int n = WiFi.scanNetworks();
Serial.println("scandone");
wenn (n == 0)
Serial.println ("keine Netzwerke gefunden");
anders
{
Serial.print (n);
Serial.println("Netzwerke gefunden…");
if (more_text) {
// Drucken Sie das formatierte JSON aus…
Serial.println("{");
Serial.println("\"homeMobileCountryCode\":234, "); // das ist ein echter UK MCC
Serial.println("\"homeMobileNetworkCode\":27, "); // und ein echter britischer MNC
Serial.println("\"radioType\":\"gsm\", "); //für GSM
Serial.println("\"Träger\":\"Vodafone\", "); //verbunden mit Vodafone
Serial.println("\"cellTowers\": ["); // Ich melde keine Mobilfunkmasten
Serial.println("], ");
Serial.println("\"wifiAccessPoints\": [");
für (int i = 0; i < n; ++i)
{
Serial.println("{");
Serial.print("\"macAddress\":\"");
Serial.print (WiFi. BSSIDstr(i));
Serial.println("\", ");
Serial.print("\"signalStrength\": ");
Serial.println (WiFi. RSSI (i));
wenn (i < n - 1)
{
Serial.println("}, ");
}
anders
{
Serial.println("}");
}
}
Serial.println("]");
Serial.println("}");
}
Serial.println(" ");
}
// baue jetzt den jsonString…
jsonString = "{n";
jsonString +="\"homeMobileCountryCode\": 234, \n"; // das ist ein echter UK MCC
jsonString +="\"homeMobileNetworkCode\": 27, \n"; // und ein echter britischer MNC
jsonString +="\"radioType\": \"gsm\", \n"; // für gsm
jsonString +="\"Träger\": \"Vodafone\", \n"; // mit Vodafone verbunden
jsonString +="\"wifiAccessPoints\": [n";
für (int j = 0; j < n; ++j)
{
jsonString += "{n";
jsonString +="\"macAddress\": \"";
jsonString +=(WiFi. BSSIDstr(j));
jsonString +="\", \n";
jsonString +="\"signalStrength\": ";
jsonString += WiFi. RSSI(j);
jsonString += "\n";
wenn (j < n - 1)
{
jsonString +="}, \n";
}
anders
{
jsonString +="}\n";
}
}
jsonString += ("]\n");
jsonString += ("}\n");
//--------------------------------------------------------------------
Serial.println("");
WiFiClientSecure-Client;
// Verbinden Sie sich mit dem Client und machen Sie den API-Aufruf
Serial.print ("Anfordernde URL: ");
// ---- Holen Sie sich den Google Maps Api Key hier, Link:
Serial.println ("https://" + (String)Host + thisPage +"PUT-YOUR-GOOGLE-MAPS-API-KEY-HERE");
Serial.println(" ");
if (client.connect(Host, 443)) {
Serial.println("Verbunden");
client.println("POST" + thisPage + key + "HTTP/1.1");
client.println("Host:" + (String)Host);
client.println("Verbindung: schließen");
client.println("Inhaltstyp: Anwendung/json");
client.println("Benutzer-Agent: Arduino/1.0");
client.print("Inhaltslänge: ");
client.println(jsonString.length());
client.println();
client.print (jsonString);
Verzögerung (500);
}
// Lesen und analysieren Sie alle Zeilen von
die Antwort vom Server
while (client.verfügbar()) {
String-Zeile =client.readStringUntil('\r');
if (more_text) {
Serial.print (Zeile);
}
JsonObject& root =jsonBuffer.parseObject(line);
if (root.success()) {
Breite = root["location"]["lat"];
Längengrad = root["location"]["lng"];
Genauigkeit = root["Genauigkeit"];
}
}
Serial.println ("Verbindung schließen");
Serial.println();
client.stop();
Serial.print ("Breitengrad =");
Serial.println (Breitengrad, 6);
Serial.print ("Längengrad =");
Serial.println (Längengrad, 6);
Serial.print ("Genauigkeit = ");
Serial.println (Genauigkeit);
Verzögerung (10000);
Serial.println();
Serial.println("Neustart…");
Serial.println();
Verzögerung (2000);
}
Empfohlen:
Erste Schritte mit Amara: 7 Schritte
Erste Schritte mit Amara: Amara ist ein kostenloser Untertitel-Editor, mit dem Sie ganz einfach Untertitel zu Videos hinzufügen können – vom Unterricht bis zum persönlichen Gebrauch. Diese Anweisungen helfen Ihnen, ein Amara-Konto einzurichten, damit Sie schnell und einfach Untertitel hinzufügen können
Erste Schritte mit der Heimautomatisierung: Home Assistant installieren: 3 Schritte
Erste Schritte mit der Hausautomation: Home Assistant installieren: Wir starten jetzt die Hausautomationsserie, in der wir ein Smart Home erstellen, das es uns ermöglicht, Dinge wie Licht, Lautsprecher, Sensoren usw. über einen zentralen Hub zusammen mit einem Sprachassistent. In diesem Beitrag erfahren Sie, wie Sie in
Erste Schritte mit dem SkiiiD-Editor: 11 Schritte
Erste Schritte mit dem SkiiiD-Editor: skiiiD-Editor, Entwicklungsboard-Firmware IDEskiiiD-Editor basiert auf skiiiD (Firmware Development Engine). Jetzt ist es mit Arduino UNO, MEGA und NANO mit 70+ Komponenten kompatibel.BetriebssystemmacOS / WindowsInstallierenBesuchen Sie die Website https:
Erste Schritte mit Python: 7 Schritte (mit Bildern)
Erste Schritte mit Python: Programmieren ist großartig! Es ist kreativ, macht Spaß und gibt Ihrem Gehirn ein mentales Training. Viele von uns wollen etwas über Programmieren lernen, aber überzeugen sich selbst davon, dass wir es nicht können. Vielleicht hat es zu viel Mathematik, vielleicht der Jargon, der erschreckend herumgeworfen wird
Raspbian in Raspberry Pi 3 B ohne HDMI installieren - Erste Schritte mit Raspberry Pi 3B - Einrichten Ihres Raspberry Pi 3: 6 Schritte
Raspbian in Raspberry Pi 3 B ohne HDMI installieren | Erste Schritte mit Raspberry Pi 3B | Einrichten Ihres Raspberry Pi 3: Wie einige von Ihnen wissen, sind Raspberry Pi-Computer ziemlich großartig und Sie können den gesamten Computer nur auf einer einzigen winzigen Platine bekommen. Das Raspberry Pi 3 Model B verfügt über einen Quad-Core 64-Bit ARM Cortex A53 mit 1,2 GHz getaktet. Damit ist der Pi 3 ungefähr 50