Table des matières:
- Étape 1: pièces et outils
- Étape 2: Trouvez l'API Google
- Étape 3: Configurer NodeMCu sur Arduino IDE
- Étape 4: Téléchargez la bibliothèque ArduinoJson
- Étape 5: programmer
Vidéo: GEOLOACATION : 5 Étapes
2024 Auteur: John Day | [email protected]. Dernière modifié: 2024-01-30 09:09
C'est mon projet de stage d'été. Je suis vraiment surpris d'entendre que nous pouvons localiser n'importe quel appareil sans utiliser le module GPS uniquement en utilisant NodeMCU. Grâce à cela, nous pouvons tracer n'importe quel appareil. Vous surprenez également comment pouvons-nous tracer un appareil en utilisant uniquement le WiFi. Voici la description du tri pour le comprendre.
- · C'est Scannez votre presque tout WiFi.
- · Envoyer l'emplacement de cet appareil à Google à l'aide de l'API Google
- · Selon cela, il localise l'emplacement de votre appareil
- · Vous disposez d'une connexion réseau solide pour ce projet.
Étape 1: pièces et outils
les pièces
- NodeMCU (ESP8266 1.0 12E)
- Cable USB
Outils
IDE Arduino avec carte NodeMcu 1.0 12E
API Google
Étape 2: Trouvez l'API Google
- Ouvrez votre navigateur et tapez: console.developer.google.com
- Créer un nouveau projet
- Après avoir créé un nouveau projet, cliquez sur les informations d'identification
- Cliquez sur la clé API
-
Votre clé API a été générée
Pour comprendre facilement, voir l'image suivante |>
Étape 3: Configurer NodeMCu sur Arduino IDE
- Téléchargez Arduino IDE à partir du lien suivant:- https://www. Principal/Logiciel arduino.cc/en/
- Ajouter une carte Node Mcu sur Arduino IDE
-
Pour télécharger du code sur NodeMCU, vous devez ajouter la carte NodeMCu sur ARDUINO IDE.
- Aller au fichier et aux préférences dans Arduino IDE
- Et dans la section Gestionnaire de conseil supplémentaire, copiez le lien suivant
- arduino.esp8266.com/stable/package_esp8266c…
- et cliquez sur Ok
- Le tableau est téléchargé
- Accédez aux outils et au tableau et sélectionnez NodeMCU 1.0 12E
- Voir l'image avobe pour comprendre facilement
Étape 4: Téléchargez la bibliothèque ArduinoJson
- Allez au
Sketch Inclure la bibliothèque Gérer la bibliothèque
Tapez Arduino Json dans le champ de recherche
Téléchargez la dernière version de la bibliothèque ArduinoJson
après avoir téléchargé la bibliothèque, cliquez sur fermer
Ajouter une bibliothèque à partir de
SketchincludeLibraryArduinoJson
Étape 5: programmer
Téléchargez le programme suivant sur la carte NodeMCU. et voir l'emplacement de votre appareil (carte NodeMCU 1.0 12E) sur le moniteur série.
#comprendre
#comprendre
#comprendre
char myssid = "Votre SSID"; // votre réseau SSID (nom)
char mypass = "Votre mot de passe"; // votre mot de passe réseau
//Identifiants pour l'API Google GeoLocation…
const char* Hôte = "www.googleapis.com";
String thisPage = "/geolocation/v1/geolocate?key=";
// --- Obtenez une clé ap google maps ici:
developers.google.com/maps/documentation/geolocation/intro
String key = "Votre clé Google API"; //Rechercher à partir de l'étape 2
Instruction
int état = WL_IDLE_STATUS;
Chaîne jsonString = "{n";
double latitude = 0,0;
double longitude = 0,0;
double précision = 0,0;
int more_text = 1; // mis à 1 pour plus de sortie de débogage
void setup() {
Serial.begin(9600);
Serial.println("Démarrer");
// Mettre le WiFi en mode station et
se déconnecter d'un point d'accès s'il était précédemment connecté
WiFi.mode(WIFI_STA);
WiFi.disconnect();
retard (100);
Serial.println( Configuration
terminé );
// On commence par se connecter à un
Réseau Wi-Fi
Serial.print( Connexion à
);
Serial.println(myssid);
WiFi.begin(myssid, mypass);
while (WiFi.status() !=WL_CONNECTED) {
retard (500);
Serial.print(".");
}
Serial.println(".");
}
boucle vide() {
char bssid[6];
DynamicJsonBuffer jsonBuffer;
Serial.println("début de l'analyse");
// WiFi.scanNetworks retournera
le nombre de réseaux trouvés
int n = WiFi.scanNetworks();
Serial.println("scandone");
si (n == 0)
Serial.println("aucun réseau trouvé");
autre
{
Serial.print(n);
Serial.println("réseaux trouvés…");
si (plus_texte) {
// Imprime le json formaté…
Serial.println("{");
Serial.println("\"homeMobileCountryCode\":234, "); // c'est un vrai MCC britannique
Serial.println("\"homeMobileNetworkCode\":27, "); // et une vraie multinationale britannique
Serial.println("\"radioType\":\"gsm\", "); //pour GSM
Serial.println("\"transporteur\":\"Vodafone\", "); //associé à Vodafone
Serial.println("\"cellTowers\": ["); // Je ne signale aucune antenne relais
Serial.println("], ");
Serial.println("\"wifiAccessPoints\": [");
pour (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));
si (i < n - 1)
{
Serial.println("}, ");
}
autre
{
Serial.println("}");
}
}
Serial.println("]");
Serial.println("}");
}
Serial.println(" ");
}
// maintenant construire le jsonString…
jsonString = "{n";
jsonString +="\"homeMobileCountryCode\": 234, \n"; // c'est un vrai MCC britannique
jsonString +="\"homeMobileNetworkCode\": 27, \n"; // et une vraie multinationale britannique
jsonString +="\"radioType\": \"gsm\", \n"; // pour GSM
jsonString +="\"carrier\": \"Vodafone\", \n"; // associé à Vodafone
jsonString +="\"wifiAccessPoints\": [n";
pour (int j = 0; j < n; ++j)
{
chaîne json += "{n";
jsonString +="\"macAddress\": \"";
jsonString +=(WiFi. BSSIDstr(j));
chaîne json +="\", \n";
jsonString +="\"signalStrength\": ";
chaîne json += WiFi. RSSI(j);
chaîne json += "\n";
si (j < n - 1)
{
chaîne json +="}, \n";
}
autre
{
chaîne json +="}\n";
}
}
chaîne json += ("]\n");
chaîne json += ("}\n");
//--------------------------------------------------------------------
Serial.println("");
Client WiFiClientSecure;
//Connectez-vous au client et effectuez l'appel api
Serial.print("URL de demande: ");
// ---- Obtenez la clé Google Maps Api ici, lien:
Serial.println("https://" + (Chaîne)Hôte + thisPage +"PUT-YOUR-GOOGLE-MAPS-API-KEY-HERE");
Serial.println(" ");
if (client.connect(Host, 443)) {
Serial.println("Connecté");
client.println("POST" + thisPage + clé +"
client.println("Hôte:" + (Chaîne)Hôte);
client.println("Connexion: fermer");
client.println("Type de contenu: application/json");
client.println("User-Agent: Arduino/1.0");
client.print("Content-Length: ");
client.println(jsonString.length());
client.println();
client.print(jsonString);
retard (500);
}
//Lire et analyser toutes les lignes de
la réponse du serveur
while (client.available()) {
Ligne de chaîne =client.readStringUntil('\r');
si (plus_texte) {
Serial.print(ligne);
}
JsonObject& root =jsonBuffer.parseObject(line);
if (root.success()) {
latitude =root["emplacement"]["lat"];
longitude =root["emplacement"]["lng"];
précision = racine["précision"];
}
}
Serial.println ("fermeture de la connexion");
Serial.println();
client.stop();
Serial.print("Latitude =");
Serial.println(latitude, 6);
Serial.print("Longitude =");
Serial.println(longitude, 6);
Serial.print("Précision =");
Serial.println (précision);
retard (10000);
Serial.println();
Serial.println("Redémarrage…");
Serial.println();
retard (2000);
}
Conseillé:
Comment fabriquer une antenne double biquade 4G LTE en quelques étapes faciles : 3 étapes
Comment créer une antenne double biquade 4G LTE Étapes faciles : La plupart du temps, je n'ai pas une bonne force de signal pour mes travaux quotidiens. Donc. Je recherche et essaye différents types d'antenne mais ne fonctionne pas. Après une perte de temps, j'ai trouvé une antenne que j'espère fabriquer et tester, car ce n'est pas un principe de construction
Game Design dans Flick en 5 étapes : 5 étapes
Game Design dans Flick en 5 étapes : Flick est un moyen très simple de créer un jeu, en particulier quelque chose comme un puzzle, un roman visuel ou un jeu d'aventure
Système d'alerte de stationnement en marche arrière Arduino - Étapes par étape : 4 étapes
Système d'alerte de stationnement en marche arrière Arduino | Étapes par étape : dans ce projet, je vais concevoir un circuit de capteur de stationnement inversé pour voiture Arduino simple à l'aide d'un capteur à ultrasons Arduino UNO et HC-SR04. Ce système d'alerte de marche arrière basé sur Arduino peut être utilisé pour une navigation autonome, une télémétrie de robot et d'autres r
Détection de visage sur Raspberry Pi 4B en 3 étapes : 3 étapes
Détection de visage sur Raspberry Pi 4B en 3 étapes : dans ce Instructable, nous allons effectuer une détection de visage sur Raspberry Pi 4 avec Shunya O/S en utilisant la bibliothèque Shunyaface. Shunyaface est une bibliothèque de reconnaissance/détection de visage. Le projet vise à atteindre la vitesse de détection et de reconnaissance la plus rapide avec
Miroir de vanité de bricolage en étapes faciles (à l'aide de bandes lumineuses à LED): 4 étapes
Miroir de vanité DIY en étapes faciles (à l'aide de bandes lumineuses à LED) : Dans cet article, j'ai fabriqué un miroir de vanité DIY à l'aide des bandes LED. C'est vraiment cool et vous devez les essayer aussi