Table des matières:
- Étape 1: De quoi avez-vous besoin
- Étape 2: Accédez à Unwired Labs
- Étape 3: Inscrivez-vous pour obtenir un jeton d'API
- Étape 4: Vérifiez votre e-mail
- Étape 5: Bibliothèques dont vous aurez besoin
- Étape 6: Ajoutez du code dans Arduino pour vous connecter à LocationAPI
- Étape 7: Ouvrez le moniteur série pour voir si vous êtes connecté
- Étape 8: Obtenez les coordonnées
- Étape 9: Accédez à Google Maps
- Étape 10: Envoyez l'emplacement à votre mobile
Vidéo: Localisation Tracker avec NodeMCU ESP8266 : 10 étapes
2024 Auteur: John Day | [email protected]. Dernière modifié: 2024-01-30 09:08
Êtes-vous curieux de savoir comment votre NodeMCU peut suivre votre position ? C'est possible, même sans module GPS et sans affichage. La sortie sera les coordonnées où vous vous trouvez et vous les verrez sur votre moniteur série.
La configuration suivante a été utilisée pour NodeMCU 1.0 (module ESP-12E) avec Arduino IDE.
- Windows 10
- IDE Arduino v. 1.8.4
Étape 1: De quoi avez-vous besoin
Ce dont vous avez besoin pour suivre ce tutoriel sont les composants suivants:
- Câble micro-USB
- NodeMCU ESP8266
De plus, vous aurez besoin de:
- LocationAPI (de Unwired Labs)
- Accès au wifi ou à un hotspot
Étape 2: Accédez à Unwired Labs
La géolocalisation est très pratique car lorsque votre GPS est en panne, vous pouvez toujours utiliser la géolocalisation pour suivre votre position. Notre hébergeur qui fournit la géolocalisation, sera https://www.unwiredlabs.com/. Accédez à ce site Web et inscrivez-vous (le bouton orange dans le coin supérieur droit).
Étape 3: Inscrivez-vous pour obtenir un jeton d'API
Sur la page d'inscription, vous devez renseigner votre nom, votre e-mail (votre jeton API sera envoyé à votre e-mail) et votre cas d'utilisation (par exemple, usage personnel). Sélectionnez votre type de compte. La version gratuite fera très bien l'affaire, mais gardez à l'esprit que vous êtes limité et que vous ne pouvez pas suivre votre position 24h/24 et 7j/7. Commençons!
Étape 4: Vérifiez votre e-mail
Accédez à votre e-mail et vous verrez votre jeton API. Copiez le jeton API, car vous en avez besoin pour le code que nous utiliserons. Voici à quoi ressemble l'e-mail:
Salut!
Merci de vous être inscrit à Unwired Labs LocationAPI ! Votre jeton API est « votre code API est ici » (sans les guillemets). Cela donnera 100 demandes/jour gratuitement - pour toujours.
Si vous souhaitez suivre 5 appareils gratuitement, veuillez répondre avec les informations suivantes et nous mettrons à niveau votre compte dans les 12 heures:
1. Type de déploiement (Matériel/Application/Autre):
2. À propos de votre projet:
3. Site Web:
Vous pouvez vous connecter à votre tableau de bord ici: https://unwiredlabs.com/dashboard. Si vous rencontrez des problèmes ou avez des questions, répondez à cet e-mail et je vous aiderai !
Bonne localisation !
Sagar
Laboratoires non câblés
Étape 5: Bibliothèques dont vous aurez besoin
L'étape suivante consiste à ouvrir Arduino et à gérer les bibliothèques. Vous devez installer la bibliothèque ArduinoJson. Les autres bibliothèques sont déjà intégrées. Lorsque vous êtes prêt, vous pouvez commencer à écrire le code.
Étape 6: Ajoutez du code dans Arduino pour vous connecter à LocationAPI
Faites un nouveau croquis et ajoutez le code suivant dans Arduino. Écrivez votre propre nom de wifi/hotspot et votre mot de passe. Collez le jeton API que vous avez reçu dans l'e-mail. Téléchargez votre code sur votre NodeMCU.
#comprendre
#comprendre
#inclure "ESP8266WiFi.h"
// votre réseau SSID (nom) et mot de passe réseau
char myssid = "Votre nom wifi/hotspot"; char mypass = "Votre mot de passe";
// unwiredlabs Nom d'hôte et URL du point de terminaison de géolocalisation
const char* Hôte = "www.unwiredlabs.com"; Point de terminaison de chaîne = "/v2/process.php";
// UnwiredLabs API_Token. Inscrivez-vous ici pour obtenir un jeton gratuit
Jeton de chaîne = "d99cccda52ec0b";
Chaîne jsonString = "{n";
// Variables pour stocker la réponse unwiredlabs
double latitude = 0,0; double longitude = 0,0; double précision = 0,0;
void setup(){
Serial.begin(115200);
// Mettre le WiFi en mode station et se déconnecter d'un AP s'il était précédemment connecté
WiFi.mode(WIFI_STA); WiFi.disconnect(); Serial.println("Configuration terminée");
// On commence par se connecter à un réseau WiFi
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;
// WiFi.scanNetworks renverra le nombre de réseaux trouvés
int n = WiFi.scanNetworks(); Serial.println("scan terminé");
si (n == 0) {
Serial.println("Aucun réseau disponible"); } else { Serial.print(n); Serial.println(" réseaux trouvés "); }
// maintenant construire le 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 += "\"signal\": "; chaîne json += WiFi. RSSI(j); chaîne json += "\n"; if (j < n - 1) { jsonString += "}, \n"; } else { jsonString += "}\n"; } } chaîne json += ("]\n"); chaîne json += ("}\n"); Serial.println(jsonString);
Client WiFiClientSecure;
//Connectez-vous au client et effectuez l'appel api
Serial.println("URL de demande: https://" + (chaîne)Hôte + point de terminaison); if (client.connect(Host, 443)) { Serial.println("Connecté"); client.println("POST " + point de terminaison + " HTTP/1.1"); 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("Contenu-Longueur: "); 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()) { String line = client.readStringUntil('\r'); JsonObject& root = jsonBuffer.parseObject(line); if (root.success()) { latitude = root["lat"]; longitude = racine["lon"]; précision = racine["précision"];
Serial.println();
Serial.print("Latitude = "); Serial.println(latitude, 6); Serial.print("Longitude = "); Serial.println(longitude, 6); Serial.print("Précision = "); Serial.println (précision); } }
Serial.println ("fermeture de la connexion");
Serial.println(); client.stop();
retard (5000);
}
Étape 7: Ouvrez le moniteur série pour voir si vous êtes connecté
Accédez aux outils dans Arduino et ouvrez le moniteur série. Pour voir si vous êtes connecté à Internet, vous devriez voir ce qui suit sur le moniteur série:
Configuration terminée
Connexion à (votre nom wifi) … scan terminé
Étape 8: Obtenez les coordonnées
Si cela a fonctionné avec succès, vous devriez voir sous analyse effectuée toute une liste de données. La seule chose dont nous avons besoin est le code sous l'URL de demande, nous aurons donc besoin de la latitude et de la longitude. Ce sont les coordonnées.
URL de demande:
Connecté
Latitude = 52,385259
Longitude = 5.196099
Précision = 41,00
fermeture de la connexion
Après 5 secondes, le code sera constamment mis à jour et vous verrez probablement la latitude, la longitude et la précision changer. C'est parce que l'API essaie de suivre l'emplacement aussi précisément que possible.
Étape 9: Accédez à Google Maps
Rendez-vous sur https://www.google.com/maps/ et saisissez vos coordonnées dans la barre de recherche. Les coordonnées doivent être écrites de la manière suivante: 52.385259, 5.196099. Google Maps devrait montrer où vous vous trouvez sur la carte.
Étape 10: Envoyez l'emplacement à votre mobile
Et tu as fini! Par conséquent, si vous souhaitez envoyer la localisation sur votre mobile, c'est possible. Google Maps vous enverra ensuite un e-mail avec vos coordonnées si vous le souhaitez.
Bonne localisation !
Conseillé:
Horloge de localisation 'Weasley' à 4 aiguilles : 11 étapes (avec photos)
Horloge de localisation 'Weasley' à 4 mains : Donc, avec un Raspberry Pi qui fonctionnait depuis un moment, je voulais trouver un beau projet qui me permettrait d'en tirer le meilleur parti. Je suis tombé sur cette grande horloge de localisation Instructable Build Your Own Weasley par ppeters0502 et j'ai pensé que
Tête de mannequin de localisation sonore avec Kinect : 9 étapes (avec photos)
Tête de mannequin de localisation sonore avec Kinect : rencontrez Margaret, un mannequin de test pour un système de surveillance de la fatigue du conducteur. Elle a récemment pris sa retraite de ses fonctions et a trouvé le chemin de notre espace de bureau, et a depuis attiré l'attention de ceux qui pensent qu'elle est «effrayante». Dans l'intérêt de la justice, j'ai
Plume de localisation UWB : 6 étapes
Plume de localisation UWB : La plume ultra-large bande intègre le module Decawave DWM1000 et un ATSAMD21 ARM Cortex M0 dans le facteur de forme de plume Adafruit. Le module DWM1000 est un module sans fil conforme IEEE802.15.4-2011 UWB capable de positionnement intérieur de précision
Créer un site Web de localisation de cafés : 9 étapes
Créer un site Web de localisation de cafés : dans ce Instructable, je vais vous montrer comment créer un site Web simple affichant des cafés près de chez vous, à l'aide de Google Maps, HTML et CSS
Quelqu'un m'aime Horloge de localisation : 6 étapes (avec photos)
Horloge de localisation de quelqu'un qui m'aime : Avec des êtres chers à l'étranger ou hors de l'État, rien ne dit que je pense mieux à vous que de toujours savoir quelle heure il est pour eux ! Mes beaux-parents à la retraite se préparaient à servir une mission d'église à Berlin, en Allemagne et ma femme a proposé le g