Përmbajtje:

GJEOLOAKIMI: 5 hapa
GJEOLOAKIMI: 5 hapa

Video: GJEOLOAKIMI: 5 hapa

Video: GJEOLOAKIMI: 5 hapa
Video: Convenience items needed in the family 2024, Korrik
Anonim
GJEOLOAKIMI
GJEOLOAKIMI

Projectshtë Projekti im i Praktikës Verore. Unë vërtet befasohem kur dëgjoj se mund të gjurmojmë vendndodhjen e çdo pajisjeje pa përdorur modulin GPS vetëm duke përdorur NodeMCU. Përmes kësaj ne mund të gjurmojmë çdo pajisje. Ju gjithashtu befasoni se si mund ta gjurmojmë pajisjen duke përdorur vetëm WiFi. Këtu janë përshkrimet e llojit për ta kuptuar atë.

  • · Skanon pothuajse të gjithë WiFi -në tuaj.
  • · Dërgoni këtë vendndodhje të pajisjes në Google duke përdorur API të Google
  • · Sipas kësaj Gjeni vendndodhjen e pajisjes tuaj
  • · Keni lidhje të fortë rrjeti për këtë Projekt.

Hapi 1: Pjesët dhe vegla

Pjesët

  • NodeMCU (ESP8266 1.0 12E)
  • Kabllo USB

Mjetet

Arduino IDE me bordin NodeMcu 1.0 12E

API e Google

Hapi 2: Gjeni API të Google

Gjeni Google API
Gjeni Google API
Gjeni Google API
Gjeni Google API
Gjeni Google API
Gjeni Google API
  • Hapni Shfletuesin tuaj dhe shkruani: console.developer.google.com
  • Krijoni një projekt të ri
  • Pasi Krijoni një Projekt të ri klikoni në letër kredenciale
  • Klikoni në API Key
  • Çelësi juaj API është krijuar

    Për ta kuptuar më lehtë shikoni foton e mëposhtme |>

Hapi 3: Konfiguroni NodeMCu në Arduino IDE

Vendosni NodeMCu në Arduino IDE
Vendosni NodeMCu në Arduino IDE
Vendosni NodeMCu në Arduino IDE
Vendosni NodeMCu në Arduino IDE
Vendosni NodeMCu në Arduino IDE
Vendosni NodeMCu në Arduino IDE
  • Shkarkoni Arduino IDE nga lidhja e mëposhtme:- https:// www. Kryesore/Softueri arduino.cc/en/
  • Shtoni tabelën Node MCu në Arduino IDE
  • Për ngarkimin e kodit në NodeMCU duhet të shtoni tabelën NodeMCu në ARDUINO IDE.

    • SHKO te skedari & Preferenca në Arduino IDE
    • Dhe në seksionin e menaxhimit të Bordit shtesë kopjoni lidhjen e mëposhtme
    • arduino.esp8266.com/stable/package_esp8266c…
    • dhe kliko Ok
    • Bordi është shkarkuar
    • Shkoni te mjetet dhe bordi dhe zgjidhni NodeMCU 1.0 12E
    • Shikoni foton avobe për ta kuptuar lehtë

Hapi 4: Shkarkoni Bibliotekën ArduinoJson

Shkarkoni Bibliotekën ArduinoJson
Shkarkoni Bibliotekën ArduinoJson
  • Shkoni te
  • Skica Përfshi Bibliotekën Menaxhoni Bibliotekën

    Shkruani Arduino Json në kutinë e kërkimit

    Shkarkoni versionin më të fundit të bibliotekës ArduinoJson

    pas shkarkimit të bibliotekës kliko mbyll

    Shto bibliotekë nga

    SketchincludeLibraryraryArduinoJson

Hapi 5: Programi

Ngarko programin e mëposhtëm në tabelën NodeMCU. dhe shihni vendndodhjen e pajisjes tuaj (bordi NodeMCU 1.0 12E) në monitorin serik.

#përfshi

#përfshi

#përfshi

char myssid = "SSID -i juaj"; // SSID i rrjetit tuaj (emri)

char mypass = "Fjalëkalimi juaj"; // fjalëkalimi i rrjetit tuaj

// Kredencialet për Google GeoLocation API…

const char* Host = "www.googleapis.com";

String thisPage = "/gjeolocation/v1/gjeolocate? Key =";

// --- Merrni një çelës Google Maps këtu:

developers.google.com/maps/documentation/geolocation/intro

Çelësi i vargut = "Çelësi juaj API i Google"; // Gjeni nga hapi 2

Udhëzim

int status = WL_IDLE_STATUS;

String jsonString = "{ n";

gjerësi gjeografike të dyfishtë = 0.0;

gjatësi të dyfishtë = 0.0;

saktësi e dyfishtë = 0.0;

int more_tekst = 1; // vendosur në 1 për më shumë dalje të korrigjimit

void setup () {

Serial.filloj (9600);

Serial.println ("Fillimi");

// Vendosni WiFi në modalitetin e stacionit dhe

shkëputeni nga një AP nëse ishte e lidhur më parë

Modaliteti WiFi (WIFI_STA);

WiFi. Shkëputje ();

vonesa (100);

Serial.println ( Konfigurimi

bërë );

// Fillojmë duke u lidhur me a

Rrjet WiFi

Serial.print ( Lidhu me

);

Serial.println (myssid);

WiFi.filloj (myssid, mypass);

ndërsa (WiFi.status ()! = WL_CONNECTED) {

vonesë (500);

Serial.print (".");

}

Serial.println (".");

}

lak void () {

char bssid [6];

DynamicJsonBuffer jsonBuffer;

Serial.println ("fillimi i skanimit");

// WiFi.scanNetworks do të kthehet

numri i rrjeteve të gjetura

int n = WiFi.scanNetworks ();

Serial.println ("skandone");

nëse (n == 0)

Serial.println ("nuk u gjet asnjë rrjet");

tjeter

{

Serial.print (n);

Serial.println ("rrjetet e gjetura …");

nëse (më shumë_tekst) {

// Shtypni json -in e formatuar…

Serial.println ("{");

Serial.println ("\" homeMobileCountryCode / ": 234,"); // kjo është një MCC e vërtetë në Mbretërinë e Bashkuar

Serial.println ("\" homeMobileNetworkCode / ": 27,"); // dhe një MNC e vërtetë në Mbretërinë e Bashkuar

Serial.println ("\" radioTipi / ": \" gsm / ","); // për gsm

Serial.println ("\" transportuesi / ": \" Vodafone / ","); // lidhur me Vodafone

Serial.println ("\" cellTowers / ": ["); // Unë nuk jam duke raportuar ndonjë kullë qelizash

Serial.println ("],");

Serial.println ("\" wifiAccessPoints / ": [");

pë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));

nëse (i <n - 1)

{

Serial.println ("},");

}

tjeter

{

Serial.println ("}");

}

}

Serial.println ("]");

Serial.println ("}");

}

Serial.println ("");

}

// tani ndërto jsonString…

jsonString = "{ n";

jsonString += "\" homeMobileCountryCode / ": 234, / n"; // kjo është një MCC e vërtetë në Mbretërinë e Bashkuar

jsonString += "\" homeMobileNetworkCode / ": 27, / n"; // dhe një MNC e vërtetë në Mbretërinë e Bashkuar

jsonString += "\" radioTipi / ": \" gsm / ", / n"; // për gsm

jsonString += "\" transportues / ": \" Vodafone / ", / n"; // lidhur me Vodafone

jsonString += "\" wifiAccessPoints / ": [ n";

për (int j = 0; j <n; ++ j)

{

jsonString += "{ n";

jsonString += "\" macAdresa / ": \" ";

jsonString += (WiFi. BSSIDstr (j));

jsonString += "\", / n ";

jsonString += "\" signalStrength / ":";

jsonString += WiFi. RSSI (j);

jsonString += "\ n";

nëse (j <n - 1)

{

jsonString += "}, / n";

}

tjeter

{

jsonString += "} n";

}

}

jsonString += ("] n");

jsonString += ("} n");

//--------------------------------------------------------------------

Serial.println ("");

Klient WiFiClientSecure;

// Lidhuni me klientin dhe bëni thirrjen api

Serial.print ("Kërkohet URL:");

// ---- Merrni Google Maps Api Key këtu, Lidhje:

Serial.println ("https://" + (String) Pritësi + kjo faqe + "VENDOS-JUAJ-GOOGLE-HAPS-API-KRYESORE-KERTU");

Serial.println ("");

if (client.connect (Host, 443)) {

Serial.println ("I lidhur");

client.println ("POST" + kjo faqe + çelës + "HTTP/1.1");

client.println ("Host:" + (String) Host);

client.println ("Lidhja: mbyll");

client.println ("Lloji i përmbajtjes: aplikacion/json");

client.println ("Agjenti i Përdoruesit: Arduino/1.0");

client.print ("Përmbajtja-Gjatësia:");

client.println (jsonString.length ());

klient.println ();

klient.print (jsonString);

vonesë (500);

}

// Lexoni dhe analizoni të gjitha rreshtat e

përgjigja nga serveri

ndërsa (client.available ()) {

String line = client.readStringUntil ('\ r');

nëse (më shumë_tekst) {

Serial.print (linjë);

}

JsonObject & root = jsonBuffer.parseObject (linjë);

nëse (root.success ()) {

gjerësi gjeografike = rrënjë ["vendndodhje"] ["lat"];

gjatësia gjeografike = rrënja ["vendndodhja"] ["lng"];

saktësi = rrënjë ["saktësi"];

}

}

Serial.println ("lidhja mbyllëse");

Serial.println ();

client.stop ();

Serial.print ("Gjerësia gjeografike =");

Serial.println (gjerësi gjeografike, 6);

Serial.print ("Gjatësia gjeografike =");

Serial.println (gjatësia gjeografike, 6);

Serial.print ("Saktësia =");

Serial.println (saktësia);

vonesë (10000);

Serial.println ();

Serial.println ("Rinisja …");

Serial.println ();

vonesa (2000);

}

Recommended: