Obsah:
- Krok 1: Diely a nástroj
- Krok 2: Nájdite Google API
- Krok 3: Nastavte NodeMCu na Arduino IDE
- Krok 4: Stiahnite si knižnicu ArduinoJson
- Krok 5: Program
Video: GEOLOACÁCIA: 5 krokov
2024 Autor: John Day | [email protected]. Naposledy zmenené: 2024-01-30 12:00
Je to môj projekt letnej stáže. Skutočne ma prekvapuje, keď počujem, že môžeme sledovať polohu akéhokoľvek zariadenia bez použitia modulu GPS iba pomocou NodeMCU. Prostredníctvom toho môžeme sledovať akékoľvek zariadenie. Tiež vás prekvapuje, ako môžeme sledovať zariadenie iba pomocou WiFi. Tu je popis zoradenia, aby ste tomu porozumeli.
- · Skenuje takmer všetky vaše WiFi.
- · Odošlite toto umiestnenie zariadenia spoločnosti Google pomocou rozhrania Google API
- · Podľa toho vyhľadá polohu vášho zariadenia
- · Pre tento projekt máte silné sieťové pripojenie.
Krok 1: Diely a nástroj
Časti
- NodeMCU (ESP8266 1.0 12E)
- USB kábel
Nástroje
Arduino IDE s doskou NodeMcu 1.0 12E
Google API
Krok 2: Nájdite Google API
- Otvorte prehliadač a zadajte: console.developer.google.com
- Vytvorte nový projekt
- Po vytvorení nového projektu kliknite na prihlasovacie údaje
- Kliknite na kľúč API
-
Váš kľúč API bol vygenerovaný
Ľahké porozumenie nájdete na nasledujúcom obrázku |>
Krok 3: Nastavte NodeMCu na Arduino IDE
- Stiahnite si Arduino IDE z nasledujúceho odkazu:- https:// www. Hlavné/Software arduino.cc/en/
- Pridajte dosku Node MCu na Arduino IDE
-
Na odosielanie kódu na NodeMCU musíte pridať dosku NodeMCu na ARDUINO IDE.
- Choďte na súbor a preferencie v Arduino IDE
- A v doplnkovej správe manažmentu skopírujte nasledujúci odkaz
- arduino.esp8266.com/stable/package_esp8266c…
- a kliknite na Ok
- Doska sa stiahne
- Prejdite na nástroje a dosku a vyberte položku NodeMCU 1.0 12E
- Ľahko pochopiteľné nájdete na obrázku avobe
Krok 4: Stiahnite si knižnicu ArduinoJson
- Choďte do
Sketch Include Library Spravovať knižnicu
Do vyhľadávacieho poľa napíšte Arduino Json
Stiahnite si najnovšiu verziu knižnice ArduinoJson
po stiahnutí knižnice kliknite na Zavrieť
Pridať knižnicu z
SketchincludeLibraryArduinoJson
Krok 5: Program
Nahrajte nasledujúci program na dosku NodeMCU. a na sériovom monitore si pozrite umiestnenie svojho zariadenia (doska NodeMCU 1.0 12E).
#zahrnúť
#zahrnúť
#zahrnúť
char myssid = "Váš SSID"; // SSID vašej siete (názov)
char mypass = "Vaše heslo"; // heslo do siete
// Poverenia pre API Google GeoLocation…
const char* Host = "www.googleapis.com";
String thisPage = "/geolocation/v1/geolocate? Key =";
// --- Získajte kľúč Google Maps ap tu:
developers.google.com/maps/documentation/geolocation/intro
String key = "Váš kľúč Google API"; // Nájdite od kroku 2
Pokyn
int status = WL_IDLE_STATUS;
Reťazec jsonString = "{ n";
dvojitá zemepisná šírka = 0,0;
dvojnásobná dĺžka = 0,0;
dvojnásobná presnosť = 0,0;
int viac_text = 1; // nastavenie na 1 pre viac ladiaceho výstupu
neplatné nastavenie () {
Serial.begin (9600);
Serial.println ("Štart");
// Nastavte WiFi na režim stanice a
odpojte sa od AP, ak bol predtým pripojený
WiFi.mode (WIFI_STA);
WiFi.disconnect ();
oneskorenie (100);
Serial.println ( Nastavenie
hotový );
// Začíname pripojením k a
WiFi sieť
Serial.print ( Pripojenie k
);
Serial.println (myssid);
WiFi.begin (myssid, mypass);
while (WiFi.status ()! = WL_CONNECTED) {
oneskorenie (500);
Serial.print (".");
}
Serial.println (".");
}
prázdna slučka () {
char bssid [6];
DynamicJsonBuffer jsonBuffer;
Serial.println ("štart skenovania");
// WiFi.scanNetworks sa vráti
počet nájdených sietí
int n = WiFi.scanNetworks ();
Serial.println ("scandone");
ak (n == 0)
Serial.println („neboli nájdené žiadne siete“);
inak
{
Serial.print (n);
Serial.println („nájdené siete …“);
if (more_text) {
// Vytlačte formátovaný json …
Serial.println ("{");
Serial.println ("\" homeMobileCountryCode / ": 234,"); // toto je skutočný britský MCC
Serial.println ("\" homeMobileNetworkCode / ": 27,"); // a skutočný britský MNC
Serial.println ("\" radioType / ": \" gsm / ","); // pre gsm
Serial.println ("\" operátor / ": \" Vodafone / ","); // spojené s Vodafone
Serial.println ("\" cellTowers / ": ["); // Nehlásim žiadne veže s bunkami
Serial.println ("],");
Serial.println ("\" wifiAccessPoints / ": [");
pre (int i = 0; i <n; ++ i)
{
Serial.println ("{");
Serial.print ("\" macAddress / ": \" ");
Serial.print (WiFi. BSSIDstr (i));
Serial.println ("\", ");
Serial.print ("\" sila signálu / ":");
Serial.println (WiFi. RSSI (i));
ak (i <n - 1)
{
Serial.println ("},");
}
inak
{
Serial.println ("}");
}
}
Serial.println ("]");
Serial.println ("}");
}
Serial.println ("");
}
// teraz vytvorte jsonString …
jsonString = "{ n";
jsonString += "\" homeMobileCountryCode / ": 234, / n"; // toto je skutočný britský MCC
jsonString += "\" homeMobileNetworkCode / ": 27, / n"; // a skutočný britský MNC
jsonString += "\" radioType / ": \" gsm / ", / n"; // pre gsm
jsonString += "\" operátor / ": \" Vodafone / ", / n"; // spojené s Vodafone
jsonString += "\" wifiAccessPoints / ": [ n";
pre (int j = 0; j <n; ++ j)
{
jsonString += "{ n";
jsonString += "\" macAddress / ": \" ";
jsonString += (WiFi. BSSIDstr (j));
jsonString += "\", / n ";
jsonString += "\" sila signálu / ":";
jsonString += WiFi. RSSI (j);
jsonString += "\ n";
ak (j <n - 1)
{
jsonString += "}, / n";
}
inak
{
jsonString += "} n";
}
}
jsonString += ("] n");
jsonString += ("} n");
//--------------------------------------------------------------------
Serial.println ("");
WiFiClientSecure klient;
// Pripojte sa ku klientovi a uskutočnite api hovor
Serial.print ("Požadovaná adresa URL:");
// ---- Získajte kľúč Google Maps Api tu, odkaz:
Serial.println ("https://" + (Reťazec) Hostiteľ + tátoStránka + "VLOŽTE SVOJU GOOGLE-MAPY-API-KEY-TU");
Serial.println ("");
if (client.connect (Host, 443)) {
Serial.println („Pripojené“);
client.println ("POST" + thisPage + kľúč + "HTTP/1.1");
client.println ("Hostiteľ:" + (reťazec) hostiteľ);
client.println („Pripojenie: zavrieť“);
client.println ("Typ obsahu: aplikácia/json");
client.println ("User-Agent: Arduino/1.0");
client.print („Dĺžka obsahu:“);
client.println (jsonString.length ());
client.println ();
client.print (jsonString);
oneskorenie (500);
}
// Prečítajte a analyzujte všetky riadky
odpoveď zo servera
while (client.available ()) {
Reťazec riadka = client.readStringUntil ('\ r');
if (more_text) {
Serial.print (riadok);
}
JsonObject & root = jsonBuffer.parseObject (riadok);
if (root.success ()) {
zemepisná šírka = root ["umiestnenie"] ["lat"];
longitude = root ["location"] ["lng"];
správnosť = koreň ["presnosť"];
}
}
Serial.println ("zatváranie pripojenia");
Serial.println ();
client.stop ();
Serial.print ("Latitude =");
Serial.println (zemepisná šírka, 6);
Serial.print ("Longitude =");
Serial.println (zemepisná dĺžka, 6);
Serial.print ("Presnosť =");
Serial.println (presnosť);
oneskorenie (10 000);
Serial.println ();
Serial.println ("Reštartuje sa …");
Serial.println ();
oneskorenie (2000);
}
Odporúča:
Počítadlo krokov - mikro: bit: 12 krokov (s obrázkami)
Počítadlo krokov - mikro: bit: Tento projekt bude počítadlom krokov. Na meranie našich krokov použijeme senzor akcelerometra, ktorý je vstavaný v Micro: Bit. Zakaždým, keď sa Micro: Bit zatrasie, pridáme k počtu 2 a zobrazíme ho na obrazovke
Akustická levitácia s Arduino Uno krok za krokom (8 krokov): 8 krokov
Akustická levitácia s Arduino Uno krok za krokom (8 krokov): Ultrazvukové meniče zvuku L298N Dc napájací adaptér ženského adaptéra s mužským DC kolíkom Arduino UNOBreadboard Ako to funguje: Najprv nahráte kód do Arduino Uno (je to mikrokontrolér vybavený digitálnym a analógové porty na prevod kódu (C ++)
Bolt - Nočné hodiny pre bezdrôtové nabíjanie DIY (6 krokov): 6 krokov (s obrázkami)
Bolt - Nočné hodiny bezdrôtového nabíjania DIY (6 krokov): Indukčné nabíjanie (tiež známe ako bezdrôtové nabíjanie alebo bezdrôtové nabíjanie) je typ bezdrôtového prenosu energie. Na prenos elektriny do prenosných zariadení používa elektromagnetickú indukciu. Najbežnejšou aplikáciou je bezdrôtové nabíjanie Qi
Ako rozobrať počítač pomocou jednoduchých krokov a fotografií: 13 krokov (s obrázkami)
Ako rozobrať počítač jednoduchými krokmi a obrázkami: Toto je návod, ako rozobrať počítač. Väčšina základných komponentov je modulárna a dá sa ľahko odstrániť. Je však dôležité, aby ste o tom boli organizovaní. Pomôže to zabrániť strate súčiastok a tiež pri opätovnej montáži
Od Roomby k Roveru iba 5 krokov!: 5 krokov
Od Roomby po Rover za pouhých 5 krokov !: Roboti Roomba sú zábavným a jednoduchým spôsobom, ako ponoriť prsty do nohy vo svete robotiky. V tomto návode podrobne popíšeme, ako previesť jednoduchú Roombu na ovládateľný rover, ktorý súčasne analyzuje svoje okolie. Zoznam dielov 1.) MATLAB2.) Roomb