Daftar Isi:
- Langkah 1: Suku Cadang & Alat
- Langkah 2: Temukan Google API
- Langkah 3: Setup NodeMCu di Arduino IDE
- Langkah 4: Unduh Perpustakaan ArduinoJson
- Langkah 5: Program
Video: GEOLOACATION: 5 Langkah
2024 Pengarang: John Day | [email protected]. Terakhir diubah: 2024-01-30 09:57
Ini Proyek Magang Musim Panas saya. Saya sangat terkejut ketika saya mendengar kami dapat melacak lokasi perangkat apa pun tanpa menggunakan modul GPS hanya menggunakan NodeMCU. Melalui ini kami dapat melacak perangkat apa pun. Anda juga terkejut bagaimana kami dapat melacak perangkat hanya dengan menggunakan WiFi. Berikut adalah deskripsi sortir untuk memahaminya.
- · Ini Pindai hampir semua WiFi Anda.
- · Kirim lokasi perangkat ini ke Google menggunakan Google API
- · Menurut ini Ini menemukan lokasi perangkat Anda
- · Anda memiliki koneksi jaringan yang kuat untuk Proyek ini.
Langkah 1: Suku Cadang & Alat
Bagian
- NodeMCU (ESP8266 1.0 12E)
- Kabel USB
Peralatan
Arduino IDE dengan Papan NodeMcu 1.0 12E
Google API
Langkah 2: Temukan Google API
- Buka Browser Anda dan ketik: console.developer.google.com
- Buat proyek baru
- Setelah Buat Proyek baru, klik kredensial
- Klik pada Kunci API
-
Kunci API Anda telah dibuat
Untuk Mudah memahami lihat gambar berikut |>
Langkah 3: Setup NodeMCu di Arduino IDE
- Unduh Arduino IDE dari Tautan berikut: - https://www. Utama/Perangkat Lunak arduino.cc/en/
- Tambahkan papan Node Mcu di Arduino IDE
-
Untuk mengupload kode pada NodeMCU Anda harus menambahkan board NodeMCu pada ARDUINO IDE.
- PERGI ke file & Preferensi di Arduino IDE
- Dan di bagian Pengelola Dewan Tambahan salin tautan berikut
- arduino.esp8266.com/stable/package_esp8266c…
- dan klik Oke
- Papan diunduh
- Buka alat dan papan dan pilih NodeMCU 1.0 12E
- Lihat gambar avobe agar mudah dipahami
Langkah 4: Unduh Perpustakaan ArduinoJson
- Pergi ke
Sketsa Sertakan Perpustakaan Kelola Perpustakaan
Ketik Arduino Json di kotak pencarian
Unduh versi terbaru perpustakaan ArduinoJson
setelah mengunduh perpustakaan klik tutup
Tambahkan perpustakaan dari
SketsatermasukPerpustakaanArduinoJson
Langkah 5: Program
Unggah program berikut di papan NodeMCU. dan lihat lokasi perangkat Anda (papan NodeMCU 1.0 12E) di monitor Serial.
#termasuk
#termasuk
#termasuk
char myssid = "SSID Anda"; // SSID jaringan Anda (nama)
char mypass = "Kata Sandi Anda"; // kata sandi jaringan Anda
//Kredensial untuk Google GeoLocation API…
const char* Host = "www.googleapis.com";
String thisPage = "/geolocation/v1/geolocate?key=";
// --- Dapatkan kunci ap google maps di sini:
developers.google.com/maps/documentation/geolocation/intro
Kunci string = "Kunci Google API Anda";//Temukan dari langkah2
Petunjuk
int status = WL_IDLE_STATUS;
String jsonString = "{n";
lintang ganda = 0,0;
bujur ganda = 0,0;
akurasi ganda = 0,0;
int lebih_teks = 1; // set ke 1 untuk lebih banyak keluaran debug
batalkan pengaturan() {
Serial.begin(9600);
Serial.println("Mulai");
// Atur WiFi ke mode stasiun dan
putuskan sambungan dari AP jika sebelumnya terhubung
WiFi.mode(WIFI_STA);
WiFi.putuskan();
penundaan(100);
Serial.println( Pengaturan
selesai );
// Kita mulai dengan menghubungkan ke a
jaringan Wi-Fi
Serial.print( Menghubungkan ke
);
Serial.println(myssid);
WiFi.begin(myssid, mypass);
sementara (WiFi.status() !=WL_CONNECTED) {
penundaan (500);
Serial.print(".");
}
Serial.println(".");
}
lingkaran kosong() {
char bssid[6];
DynamicJsonBuffer jsonBuffer;
Serial.println("scan mulai");
// WiFi.scanNetworks akan kembali
jumlah jaringan yang ditemukan
int n = WiFi.scanNetworks();
Serial.println("scandon");
jika (n == 0)
Serial.println("tidak ada jaringan yang ditemukan");
lain
{
Serial.print(n);
Serial.println("jaringan ditemukan…");
if (teks_lebih) {
// Cetak json yang diformat…
Serial.println("{");
Serial.println("\"homeMobileCountryCode\":234, "); // ini adalah PKS Inggris asli
Serial.println("\"homeMobileNetworkCode\":27, "); // dan MNC Inggris asli
Serial.println("\"radioType\":\"gsm\", "); //untuk gsm
Serial.println("\"operator\":\"Vodafone\", "); //terkait dengan Vodafone
Serial.println("\"cellTowers\": ["); // Saya tidak melaporkan menara seluler apa pun
Serial.println("], ");
Serial.println("\"wifiAccessPoints\": [");
untuk (int i = 0; i < n; ++i)
{
Serial.println("{");
Serial.print("\"macAddress\": \"");
Serial.print(WiFi. BSSIDstr(i));
Serial.println("\", ");
Serial.print("\"Kekuatan sinyal\": ");
Serial.println(WiFi. RSSI(i));
jika (i < n - 1)
{
Serial.println("}, ");
}
lain
{
Serial.println("}");
}
}
Serial.println("]");
Serial.println("}");
}
Serial.println(" ");
}
// sekarang buat jsonString…
jsonString = "{n";
jsonString +="\"homeMobileCountryCode\": 234, \n"; // ini adalah PKS Inggris asli
jsonString +="\"homeMobileNetworkCode\": 27, \n"; // dan MNC Inggris asli
jsonString +="\"radioType\": \"gsm\", \n"; // untuk gsm
jsonString +="\"operator\": \"Vodafone\", \n"; // terkait dengan Vodafone
jsonString +="\"wifiAccessPoints\": [n";
untuk (int j = 0; j < n; ++j)
{
jsonString += "{n";
jsonString +="\"macAddress\": \"";
jsonString +=(WiFi. BSSIDstr(j));
jsonString +="\", \n";
jsonString +="\"signalStrength\": ";
jsonString += WiFi. RSSI(j);
jsonString += "\n";
jika (j < n - 1)
{
jsonString +="}, \n";
}
lain
{
jsonString +="}\n";
}
}
jsonString += ("]\n");
jsonString += ("}\n");
//--------------------------------------------------------------------
Serial.println("");
Klien WiFiClientSecure;
//Hubungkan ke klien dan lakukan panggilan api
Serial.print("Meminta URL: ");
// ---- Dapatkan Google Maps Api Key di sini, Tautan:
Serial.println("https://" + (String)Host + Halaman ini +"PUT-YOUR-GOOGLE-MAPS-API-KEY-HERE");
Serial.println(" ");
if (client.connect(Host, 443)) {
Serial.println("Terhubung");
client.println("POST" + Halaman ini + kunci +"
client.println("Host:" + (String)Host);
client.println("Koneksi: tutup");
client.println("Tipe Konten: aplikasi/json");
client.println("User-Agent: Arduino/1.0");
client.print("Panjang Konten: ");
client.println(jsonString.length());
klien.println();
client.print(jsonString);
penundaan (500);
}
//Baca dan parsing semua baris dari
balasan dari server
while (client.available()) {
String baris =client.readStringUntil('\r');
if (teks_lebih) {
Serial.print(baris);
}
JsonObject& root =jsonBuffer.parseObject(baris);
if (root.sukses()) {
lintang =root["lokasi"]["lat"];
bujur =root["lokasi"]["lng"];
akurasi = root["akurasi"];
}
}
Serial.println("menutup koneksi");
Serial.println();
klien.berhenti();
Serial.print("Lintang =");
Serial.println(lintang, 6);
Serial.print("Bujur =");
Serial.println(bujur, 6);
Serial.print("Akurasi =");
Serial.println(akurasi);
penundaan (10000);
Serial.println();
Serial.println("Memulai Ulang…");
Serial.println();
penundaan(2000);
}
Direkomendasikan:
Sistem Peringatan Parkir Terbalik Mobil Arduino - Langkah demi Langkah: 4 Langkah
Sistem Peringatan Parkir Mundur Mobil Arduino | Langkah demi Langkah: Pada proyek kali ini, saya akan merancang Rangkaian Sensor Parkir Mundur Mobil Arduino sederhana menggunakan Sensor Ultrasonik Arduino UNO dan HC-SR04. Sistem peringatan mundur mobil berbasis Arduino ini dapat digunakan untuk Navigasi Otonom, Jarak Robot, dan r
Langkah demi Langkah Membangun PC: 9 Langkah
Langkah demi Langkah Membangun PC: Perlengkapan: Perangkat Keras: MotherboardCPU & Pendingin CPUPSU (Unit catu daya)Penyimpanan (HDD/SSD)RAMGPU (tidak diperlukan)Kasing Alat: Obeng Gelang ESD/pasta matstermal dengan aplikator
Tiga Sirkuit Loudspeaker -- Tutorial Langkah-demi-Langkah: 3 Langkah
Tiga Sirkuit Loudspeaker || Tutorial Langkah-demi-Langkah: Sirkuit Loudspeaker memperkuat sinyal audio yang diterima dari lingkungan ke MIC dan mengirimkannya ke Speaker dari mana audio yang diperkuat diproduksi. Di sini, saya akan menunjukkan kepada Anda tiga cara berbeda untuk membuat Sirkuit Loudspeaker ini menggunakan:
Pendidikan Langkah demi Langkah dalam Robotika Dengan Kit: 6 Langkah
Pendidikan Selangkah demi Selangkah dalam Robotika Dengan Kit: Setelah beberapa bulan membuat robot saya sendiri (silakan lihat semua ini), dan setelah dua kali mengalami bagian yang gagal, saya memutuskan untuk mengambil langkah mundur dan memikirkan kembali strategi dan arahan. Pengalaman beberapa bulan terkadang sangat bermanfaat, dan
Levitasi Akustik Dengan Arduino Uno Langkah-demi-Langkah (8-langkah): 8 Langkah
Akustik Levitation Dengan Arduino Uno Langkah-demi-Langkah (8-langkah): transduser suara ultrasonik L298N Dc female adapter power supply dengan pin dc laki-laki Arduino UNOBreadboardCara kerjanya: Pertama, Anda mengunggah kode ke Arduino Uno (ini adalah mikrokontroler yang dilengkapi dengan digital dan port analog untuk mengonversi kode (C++)