Daftar Isi:
- Langkah 1: Prasyarat
- Langkah 2: Konsep Utama
- Langkah 3: Modul SIM800L
- Langkah 4: Ublox Neo 6m
- Langkah 5: Sirkuit
- Langkah 6: Kode
- Langkah 7: Server web
- Langkah 8: Akhir/Pengalaman
Video: Pelacak GPS Realtime Buatan Sendiri (SIM800L, Ublox NEO-6M, Arduino): 8 Langkah
2024 Pengarang: John Day | [email protected]. Terakhir diubah: 2024-01-30 09:57
Jadi Anda punya modul GSM tergeletak di sekitar seperti saya? Juga pelacak GPS?
Kami berpikir sama!
Dalam instruksi ini, saya akan mencoba memandu Anda bagaimana mencapai tujuan Anda dari sudut pandang pemula.
Karena saya tidak memiliki pengetahuan teknik elektro sebelumnya (sejujurnya, proyek ini tidak membutuhkan banyak, tapi nah), dan tidak tahu bagaimana membuat perangkat yang memompa data secara real-time ke server web, saya mengalami banyak masalah. Namun, saya akhirnya berhasil menyelesaikan semuanya.
Jadi, dalam tutorial ini, saya ingin menekankan kesalahan yang bisa dilakukan oleh seorang pemula, dan membangun proyek yang sesuai.
Ingat: Selalu berhati-hati saat Anda bekerja dengan listrik!
CATATAN: Saya tidak profesional. Kode mungkin tidak cukup canggih untuk semua kebutuhan Anda. Proyek ini dimaksudkan untuk menjadi "proyek hobi", tapi! itu berhasil untuk saya. Dan jika itu berhasil untuk saya, itu juga akan berhasil untuk Anda!
Langkah 1: Prasyarat
MODUL GSM - SIM800L
- Cukup kecil, mudah digunakan
- Mampu menggunakan internet seluler (GPRS)
- Murah
MODUL GPS - Ublox NEO6M
- Juga kecil
- Menangani tugasnya dengan sangat baik
Mikrokontroler - bisa apa saja - Anda bisa menggunakan Arduino Uno atau Nano yang terkenal untuk mengosongkan ruang
Baterai - Saya menggunakan sel 18650 sebagai sumber daya utama, dan satu-satunya (Nominal 3.7V)
Tempat baterai - mengapa? - karena menyolder baterai 18650 cukup berbahaya karena panas.
DC-DC Boost Converter Step Up Module 5V - Harus ada, karena Arduino yang saya gunakan membutuhkan 5V
Alat, hal-hal dasar yang dapat berguna:
Kabel, besi solder, papan tempat memotong roti untuk pengujian
Langkah 2: Konsep Utama
Konsep utama dari sistem ini adalah sebagai berikut:
Terdiri dari 3 bagian:
- Perangkat - yang memiliki Koordinat GPS yang tepat dan dapat terhubung ke server dari jarak jauh dan mengirim data ke sana
- Server web - yang dapat menerima data masuk - menyimpannya - dan melayani klien lain
- Platform - tempat kita dapat melihat koordinat - Idealnya sekarang menjadi aplikasi seluler, atau situs web
Langkah 3: Modul SIM800L
Saya mengalami masa-masa sulit dengan modul.
Saya ingin memulai dengan beberapa karakteristik dan referensi.
Menurut lembar data:
- Ini beroperasi antara 3.4V - 4.4V
- Itu dapat mengirim SMS, melakukan panggilan suara ke telepon lain, dan bahkan terhubung ke Internet!
- Kami dapat berkomunikasi dengannya melalui AT-commands!
- Itu dapat menggunakan hingga 2A pada waktu puncak! Catatan: Anda mungkin tidak akan dapat mengukurnya dengan multimeter - karena tingkat pengambilan sampelnya yang rendah
Pengalaman saya adalah bahwa SIM800L di bawah 3.8V tidak benar-benar berfungsi.
Untuk informasi lebih lanjut kunjungi: datasheet
Jadi tugas Anda adalah menyediakan setidaknya 3,8V ke modul (idealnya 4V), catu daya yang menghasilkan setidaknya 2A.
Sebelum menggunakan modul di perangkat terakhir, saya sarankan Anda menjalin komunikasi dengan SIM800L dan komputer Anda untuk memastikan perangkat Anda berfungsi dengan baik.
Pertama-tama, pasang SIM Card seperti pada gambar di atas.
Untuk menghubungkannya dengan PC Anda, Anda dapat menggunakan konverter USB ke TTL atau Arduino.
Sekarang, saya pergi dengan Arduino.
Hubungkan SIM800L VCC dan GND ke terminal sumber daya Anda.
Hubungkan TX ke pin digital ke-10 Arduino, RX ke pin digital ke-11 arduino.
Unduh kodenya, saya tautkan di langkah ini.
Dengan kode tersebut, Anda dapat mengirim perintah, dan mendapatkannya kembali, di Serial Monitor Anda.
Beberapa perintah sederhana:
AT Mengembalikan OK, jika koneksi OK.
ATD+123456789; Hubungi nomor telepon yang diberikan. Catatan: Jangan lupa untuk mengakhirinya dengan titik koma.
AT+CPIN? Mengembalikan status Kartu SIM (terkunci atau tidak)
Jika Anda ingin mengirim SMS, Anda harus mengakhiri input Anda dengan karakter khusus, itu dapat dilakukan dengan simbol '$'.
Untuk perintah menarik lebih lanjut saya sarankan Anda membaca ini.
Ada berbagai perintah, kenali mereka, mereka sangat berguna.
Ada LED status merah yang memberi tahu Anda pengoperasian SIM800L.
64 MS ON - 800MS OFF - SIM800L tidak terdaftar ke jaringan.
64 MS ON - 3000MS OFF - SIM800L terdaftar ke jaringan.
64 MS AKTIF - 300MS MATI - SIM800l dalam mode GPRS
Jika SIM800L terus menyala ulang setelah sekitar 8-10 kedipan, mungkin karena catu daya yang kurang efisien.
Jika Anda tidak mendapatkan OK setelah AT, periksa kabel! Jika Anda memiliki multimeter, periksa kontinuitas kabel.
Periksa sambungan kabel dan sambungan solder! Modul hanya akan bekerja saat berkedip.
Langkah 4: Ublox Neo 6m
Beberapa karakteristik
- Tegangan maksimum: 3.6V - Saya menyalakannya dengan pin 3.3V Arduino
- Penarikan arus maksimum adalah 67mA - jadi Anda dapat menyalakannya dari arduino
- Kisaran suhu:: -40-85 Celcius (saya kira itu akan cocok untuk Anda)
Unit yang saya pesan datang dengan antena yang terlihat pada gambar, saya hanya memasangnya di slot yang sesuai.
Perangkat ketika memiliki sinyal, berkedip dengan LED biru.
Pertama, periksa cara kerja GPS di sini, jika Anda tidak tahu.
Ketika perangkat menyala, dan menemukan 3 satelit, ia mengirimkan banyak nilai yang dipisahkan koma ke Arduino seperti di atas.
Untuk membantu pekerjaan kami, kami dapat menggunakan beberapa perpustakaan eksternal untuk mengurai data ini agar lebih mudah dibaca manusia.
Anda dapat menggunakan perpustakaan TinyGps atau perpustakaan NeoGPS. Saya menggunakan yang ke-2 karena lebih ringan.
Untuk pengujian, Anda harus menghubungkan pin daya ke arduino 3.3V dan GND.
Unduh kode ini, dan gunakan dengan GPS Anda. RX Digital pin 10, TX Digital pin 11
Catatan: Jangan lupa untuk menggunakan modul di luar ruangan, sebaiknya saat tidak ada awan.
Setelah setengah menit, perangkat akan berkedip dan menampilkan koordinat GPS Anda!:)
Setelah Anda mengetahui bahwa modul SIM800L dan GPS Anda berfungsi dengan baik, Anda dapat melanjutkan ke langkah berikutnya.
Langkah 5: Sirkuit
Rangkaiannya seperti pada gambar.
Jadi, baterai 3.4V - 4.2V 18650 adalah sumber daya utama. Sim800L mendapatkan energi langsung darinya. Ada kapasitor di antara mereka secara paralel untuk meningkatkan stabilitas rangkaian.
Ketika Anda memilih kapasitor, Anda harus memilih kapasitor ESR rendah.
Satu konverter step-up 5V meningkatkan tegangan baterai menjadi 5V (ir diperlukan karena Arduino bekerja dengan 5V).
Rel daya 5V terhubung ke Nano di sini. Sim800L dan Neo6m terhubung dengan Nano seperti pada gambar. (Sim Tx-D10, SimRx-D11; NeoTX-D3, NeoRX-D4)
D12 terhubung ke RST, sehingga kami dapat mem-boot ulang sistem secara terprogram (kecuali SIM800L). CATATAN: Metode reboot ini mungkin bukan praktik terbaik)
Dan terakhir, dua LED terhubung ke NANO, sehingga kami dapat memberi tahu pengguna, jika terjadi kesalahan.
Langkah 6: Kode
Kode dilampirkan ke Instructables atau lihat di github.
Anda dapat memodifikasinya agar berfungsi dengan baik untuk kebutuhan Anda, atau Anda dapat menggunakan kode orang lain jika Anda mau.
tungguSampaiRespon(); fungsi pembantu diambil dari kodenya. Periksa karyanya, dan kode juga!
Secara singkat, dalam fungsi setup, kita perlu mengaktifkan koneksi GPRS modul SIM800L kita. Kita tahu jika berhasil jika LED berkedip cepat. (setupGPRSConnection())
Dalam fungsi loop - setiap 15 detik fungsi sendData() dipanggil - yang memiliki permintaan
Saya menggunakan string kueri untuk mendorong data ke server web dalam format ini:
alamat ip/file.php?key=value&key=value mis.
Jika terjadi kesalahan, LED yang sesuai akan menyala. (SIM, GPS)
Langkah 7: Server web
Untuk penggunaan kami, server web ringan sederhana sudah cukup.
Ada beberapa opsi yang dapat Anda pilih:
- Anda dapat menggunakan server jarak jauh perusahaan, yang mungkin perlu Anda bayar secara berkala.
- Anda bisa menggunakan komputer Anda sendiri. Saya hanya menyarankannya untuk pengujian, tidak terlalu efisien untuk menjalankannya 24/7, karena pemborosan energi, masalah keamanan.
- Anda bisa menggunakan komputer kecil, seperti Raspberry PI. Ringan, murah, tidak memakan banyak daya.
Saya mencoba opsi ke-2, dan ke-3, mereka bekerja dengan baik. Yah, tujuan utamanya bukanlah server dari instruksi ini, tetapi saya memberi Anda beberapa saran.
Jika Anda menggunakan PC, Anda mungkin menggunakan Windows. Jika saya jadi Anda, saya akan menginstal server Apache atau XAMPP ke dalamnya.
XAMPP sudah memiliki PHP di dalamnya, selain itu juga dilengkapi dengan HTML, Perl, dan Database Managing System. Dengan PHP, Anda dapat membuat server dinamis. Jika Anda ingin menggunakan server lokal yang baru saja Anda buat dari mana saja di dunia, Anda perlu menetapkan IP statis ke PC Anda dan melakukan beberapa portforwarding. Tutorial bermanfaat untuk IP statis:
Dan seluruh hal portforwarding:
Jika Anda memiliki Raspberry, ini adalah praktik yang baik untuk menggunakannya. Anda dapat membiasakan diri dengan perintah Linux, dan menjalankan server Anda sendiri 24/7.
OSnya adalah Raspbian Jessie dengan pengaturan tanpa kepala (tanpa keyboard, monitor) - Saya mengendalikannya dengan komputer saya dengan koneksi SSH.
Saya menggunakan Putty untuk masuk ke Raspberry saya. Jangan lupa untuk mengubah kata sandi akun Anda, sehingga orang lain tidak bisa masuk ke Anda Pi. Defaultnya adalah: pi, passw: raspberry.
Saya menginstal server web lighttpd dengan sqlite3. Tutorial bagus ditemukan di sini:
Saya menggunakan terutama PHP dalam kode server. Dengan PHP Anda dapat menerima data, membaca/menulis database - mengkodekan kueri ke dalam format json, dll. …Tutorial ini akan banyak membantu Anda, bagaimana mengelola database Anda dengan PHP.
Anda juga dapat melihat kode saya di github, di folder server_files.
Dan tentu saja, Anda harus mengaktifkan portforwarding ke Pi Anda di router Anda, jika Anda ingin mengaksesnya dari jarak jauh.
Langkah 8: Akhir/Pengalaman
Kandang belum dibuat.
Pengalaman saya adalah, sistem bekerja tidak terlalu buruk. Tetapi ada peningkatan stabilitas yang menunggu.
Jika pelacak tidak bekerja dengan kode yang saya lampirkan, jangan khawatir. Coba pastikan SIM800L dan NEO 6M berfungsi sebagaimana mestinya. Anda dapat memodifikasi kode saya dengan bebas, atau mencari yang lebih baik. Saya hanya berharap, bahwa saya dapat menunjukkan kepada Anda sebuah contoh, bagaimana Anda dapat menyelesaikan proyek ini.
Saya menerima saran, koreksi dari komentar. Jangan ragu untuk bertanya.
Direkomendasikan:
Pelacak COVID19 Desktop Dengan Jam! Pelacak Bertenaga Raspberry Pi: 6 Langkah
Pelacak COVID19 Desktop Dengan Jam! Raspberry Pi Powered Tracker: Kita tahu bahwa kita bisa mati kapan saja, bahkan saya bisa mati saat menulis posting ini, bagaimanapun juga, saya saya, Anda, kita semua adalah manusia. Seluruh dunia berguncang karena pandemi COVID19. Kami tahu cara mencegahnya, tapi hei! kita tahu bagaimana berdoa dan mengapa harus berdoa, apakah kita
Pelacak Realtime COVID-19 untuk ESP32: 3 Langkah
Pelacak Realtime COVID-19 untuk ESP32: Pelacak kecil ini akan membantu Anda mengetahui informasi terkini tentang wabah virus corona dan situasi di negara Anda. Layar menunjukkan data bergantian saat ini dari berbagai negara pilihan Anda. Data dikumpulkan oleh situs web www.wo
Pelacak Covid19 Langsung Menggunakan ESP8266 dan OLED - Dasbor Covid19 Realtime: 4 Langkah
Pelacak Covid19 Langsung Menggunakan ESP8266 dan OLED | Dasbor Covid19 Realtime: Kunjungi Situs Web Techtronic Harsh: http://techtronicharsh.comDi mana-mana ada wabah besar Novel Corona Virus (COVID19). Menjadi perlu untuk mengawasi skenario COVID-19 saat ini di Dunia. Jadi, berada di rumah, ini adalah p
Pelacak Film - Pelacak Rilis Teater Bertenaga Raspberry Pi: 15 Langkah (dengan Gambar)
Movie Tracker - Pelacak Rilis Teater Bertenaga Raspberry Pi: Pelacak Film adalah Pelacak Rilis bertenaga Raspberry Pi yang berbentuk clapperboard. Ini menggunakan TMDb API untuk mencetak poster, judul, tanggal rilis, dan ikhtisar film mendatang di wilayah Anda, dalam interval waktu tertentu (mis. rilis film minggu ini) pada
Akses Manual GPS Ublox Neo 6M Dengan Raspberry Pi B+: 3 Langkah
Akses Manual GPS Ublox Neo 6M Dengan Raspberry Pi B+: Raspberry Pi adalah mini PC yang sangat kompatibel untuk berbagai modul yang cukup mudah digunakan. Pada dasarnya hampir sama dengan PC tetapi dapat dikontrol dengan GPIO dari Raspberry Pi. Raspberry Pi juga support dengan beberapa jalur komunikasi, salah satunya