PhoneLocator: Temukan Telepon Anda dengan Aman di Mana Saja
Komponen dan Perlengkapan
- Kabel Jumper (generik): 1 set
- Arduino Yun: 1 buah
- Resistor 221 ohm: 1 buah
- SparkFun Pushbutton switch 12mm: 1 buah
- Breadboard (generik): 1 buah
Aplikasi dan layanan online:
Tentang Proyek Ini
Ringkasan
Pernahkah Anda lupa menaruh telepon di rumah teman? Apakah Anda khawatir ada orang yang mengambil telepon Anda? Pasti semua orang pernah mengalami kehilangan atau melupakan telepon. PhoneLocator bertujuan untuk mencari telepon Anda (petunjuk ada dalam namanya) dan mengirimkan koordinat geolokasi melalui email sehingga Anda dapat memulihkan perangkat berharga Anda. Berkat Blynk, yang perlu Anda lakukan hanyalah menekan sebuah tombol. Perlu diperhatikan bahwa Anda membutuhkan akun Blynk untuk mengoperasikan proyek ini. Panduan untuk membuat akun tersedia di bagian konstruksi proyek di bawah ini.
Fungsi
Proyek ini bekerja dengan sangat sederhana; setiap kali pengguna menekan tombol, Arduino Yún akan membaca geolokasi telepon dan mengirim email kepada klien. Untuk membuat proyek ini lebih profesional, Anda dapat menganggap bahwa email dikirim kepada Anda dari aplikasi Blynk di telepon Anda, pencuri pintas. Berikut adalah gambar yang menggambarkan proyek ini.
Gambar ini mengilustrasikan ringkasan kode proyek.
- Jika tombol ditekan, akan memeriksa apakah tombol yang terhubung ke pin 2 ditekan.
- getLocation akan meminta lokasi telepon dari Blynk.
- Proses Data akan memproses koordinat yang diterima ke dalam isi email.
- Kirim email akan mengirim email kepada pengguna.
Respons dari Arduino akan diterima dalam sekitar 8 detik setelah menekan tombol jika telepon ditemukan. Perlu diperhatikan bahwa proyek ini dapat bekerja jika telepon dalam mode tidur atau menyala, asalkan aplikasi Blynk diizinkan berjalan di latar belakang (bahkan jika aplikasi ditutup). Pengguna harus memastikan bahwa proyek Blynk di telepon menyala; untuk detail lebih lanjut, lihat konstruksi proyek.
Manfaat
Pengguna yang mengoperasikan proyek ini akan mendapat manfaat dalam:
- Menemukan telepon mereka jika hilang atau dicuri
- Kemudahan penggunaan
Membangun Proyek
Langkah 1: Alat yang Diperlukan
Ada beberapa hal yang dibutuhkan dalam proyek ini.
- Kabel Jumper
- 1x Arduino Yún
- 1x Tombol
- 1x Breadboard
- 1x Resistor (220Ω)
- 1x Smartphone
Langkah 2: Menghubungkan Sirkuit
Proyek sederhana membutuhkan skematik sederhana. Berikut adalah gambar yang menampilkan sirkuit proyek ini.
Langkah 3: Memahami Kode
Ada tiga bagian dalam kode proyek ini, masing-masing sederhana.
- getLocation
- Proses Data Lokasi
- Kirim Email
Berikut adalah peninjauan setiap fungsi.
getLocation
BLYNK_WRITE(V0) // read virtual pin 0 for co-ordinates { latitude = param[0].asDouble(); longitude = param[1].asDouble(); altitude = param[2].asDouble(); speed = param[3].asDouble(); }
Blynk menyimpan variabel di Virtual pin; fungsi BLYNK_WRITE(V0) akan membaca virtual pin 0 dan menyimpan nilai dalam variabel terpisah. Latitude dan longitude akan digunakan dalam proyek ini. Pastikan proyek Blynk diatur dengan benar sebelum mengunggah kode. Lihat di bawah untuk petunjuk.
Proses Data Lokasi
if(latitude != 0.00 && longitude != 0.00) // if co-ordinates are valid { //String toSend is the string that will be sent as the emails body String toSend = "Phone Located! \n received co-ordinates \n LAT "; toSend += latitude; toSend += " LNG "; toSend += longitude; toSend += ". View location on Maps: "; toSend += "www.google.com/maps/?q="; toSend += latitude; toSend += ","; toSend += longitude; delay(500); }
Email hanya dapat dikirim sebagai string, jadi isinya harus berupa string. Bagian kode ini akan berjalan jika koordinat yang diterima dapat dipercaya. Beberapa item ditambahkan ke string, termasuk Latitude dan Longitude telepon serta tautan Google Maps untuk melihat lokasi pada peta.
Arduino akan selalu memeriksa apakah koordinat yang diterima ada (bukan 0) sebelum mengirim email. Arduino akan terus meminta lokasi telepon hingga koordinat yang valid diterima. Arduino akan mengulang fungsi ini hingga 10 kali.
Kirim Email
Blynk.email(userEmail, "PhoneLocator | Notification", toSend); // send email if(proDebug == 1) { Serial.println("Success"); Serial.println("Email Sent"); Serial.println("Restarting Protocol"); Serial.println(""); }
Ini adalah fungsi tempat Arduino akan mengirim email; Arduino akan mengirim string sebagai isi email. ProDebug adalah alat debugging yang harus diatur ke 0 dalam proyek untuk mengaktifkan proyek bekerja tanpa Serial Monitor. Pengaturan default adalah 1, yang memerlukan Serial Monitor terbuka agar proyek dapat bekerja.
Pengaturan Variabel
Pastikan semua variabel yang ditandai TODO telah diedit. Ini termasuk email Anda, token auth Blynk Anda, dan proDebug. Anda akan mendapatkan petunjuk untuk menerima token auth Blynk Anda lebih lanjut.
Pustaka
- Bridge - Arduino LLC (pustaka ini berada di domain publik)
- Blynk - Blynk (pustaka ini dirilis di bawah The MIT License (MIT))
Pengaturan Blynk
Blynk adalah aplikasi sederhana yang membantu Anda membuat produk IoT dengan mudah dan cepat. Untuk memulai, unduh Blynk untuk iOS atau Android.
- Langkah 2: Buat Akun Blynk Anda
Ikuti gambar dan data di bawah ini untuk menyiapkan akun Blynk Anda.
Pengaturan Akhir
Langkah terakhir adalah mengubah variabel TODO, jika belum dilakukan. Variabel auth harus diatur ke token auth yang diterima melalui email di langkah sebelumnya. Pastikan semua variabel yang ditandai TODO sudah benar. Hubungkan Arduino Yún Anda ke Mac/PC dan unggah kode.
Latar Belakang
Saya membuat proyek ini karena sedang memikirkan solusi mudah untuk menemukan telepon yang hilang. Blynk memungkinkan Arduino Yun pengguna untuk menerima geolokasi bahkan jika aplikasi hanya bekerja di latar belakang dan telepon dalam mode tidur. Dengan sekedar menekan tombol, telepon yang hilang dapat ditemukan. Diuji pada iPhone (iOS 11).
Kode
Kode lengkap PhoneLocator tersedia di bagian kode proyek.
Skematik
Gambar skematik tersedia di bagian bawah proyek.