Daftar Isi:

LTE Arduino GPS Tracker + IoT Dashboard (Bagian 1): 6 Langkah (dengan Gambar)
LTE Arduino GPS Tracker + IoT Dashboard (Bagian 1): 6 Langkah (dengan Gambar)

Video: LTE Arduino GPS Tracker + IoT Dashboard (Bagian 1): 6 Langkah (dengan Gambar)

Video: LTE Arduino GPS Tracker + IoT Dashboard (Bagian 1): 6 Langkah (dengan Gambar)
Video: GPS Tracking 2024, Juli
Anonim
Pelacak GPS Arduino LTE + Dasbor IoT (Bagian 1)
Pelacak GPS Arduino LTE + Dasbor IoT (Bagian 1)
Pelacak GPS Arduino LTE + Dasbor IoT (Bagian 1)
Pelacak GPS Arduino LTE + Dasbor IoT (Bagian 1)
Pelacak GPS Arduino LTE + Dasbor IoT (Bagian 1)
Pelacak GPS Arduino LTE + Dasbor IoT (Bagian 1)

pengantar

Apa kabar teman-teman! Instruksi ini adalah tindak lanjut dari Instruksi pertama saya tentang penggunaan pelindung Botletics LTE/NB-IoT untuk Arduino jadi jika Anda belum melakukannya, silakan baca untuk mendapatkan gambaran umum yang baik tentang cara menggunakan pelindung dan apa itu semua.. Dalam tutorial ini saya akan fokus pada pencatatan data IoT, dan khususnya, GPS dan pelacakan suhu dan memberi Anda semua kode dan panduan yang Anda perlukan untuk memulai dan mengujinya!

Instruksi ini terutama difokuskan pada perisai LTE yang saya rancang dan bangun secara pribadi, tetapi semua yang ada di sini (termasuk perpustakaan Github Arduino) harus bekerja pada modul 2G dan 3G SIMCom seperti SIM800/808/900/5320 juga karena ini baru saja diperbarui. versi perpustakaan FONA Adafruit. Terlepas dari perangkat keras, konsepnya persis sama dan Anda dapat melakukan banyak hal keren dengan ini, termasuk pencatatan data sensor, pemantauan cuaca jarak jauh, pelacakan karma pencurian otomatis GPS, dll… jadi baca terus!

Langkah 1: Kumpulkan Bagian

Kumpulkan Bagian
Kumpulkan Bagian
Kumpulkan Bagian
Kumpulkan Bagian
Kumpulkan Bagian
Kumpulkan Bagian

Daftarnya sama dengan tutorial pertama saya dan sangat sederhana!

  • Arduino Uno, Mega, atau Leonardo. Atau Anda dapat menggunakan mikrokontroler 3.3V atau 5V lainnya tetapi Anda harus memasang pin secara eksternal.
  • Botletics SIM7000 Shield Kit (dilengkapi dengan pelindung, antena uFL LTE/GPS ganda, dan header perempuan susun). Pastikan Anda melalui tutorial ini untuk memilih versi yang sesuai!
  • Kartu SIM hologram. Kartu SIM pertama (disebut kartu SIM "pengembang") sepenuhnya gratis dan dilengkapi dengan 1MB data per bulan! Di AS kemungkinan besar Anda akan berada di jaringan Verizon jika Anda menggunakan kartu SIM Hologram. Anda juga dapat mengambilnya di samping pelindung Botletics jika itu lebih nyaman.
  • Baterai LiPo 3.7V (disarankan kapasitas 1000mAH atau lebih besar).
  • Kabel USB untuk memprogram Arduino Anda atau untuk menyalakannya.

Untuk tes pelacakan GPS!

  • Anda dapat menggunakan adaptor USB mobil untuk memberi daya pada Arduino Anda saat menguji pelindung di jalan.
  • Atau, Anda dapat menggunakan baterai (7-12V) untuk memberi daya pada Arduino melalui pin VIN dan GND.

Langkah 2: Perakitan Fisik

Perakitan Fisik
Perakitan Fisik
Perakitan Fisik
Perakitan Fisik
Perakitan Fisik
Perakitan Fisik

Sekarang setelah Anda memiliki semua bagian Anda, berikut adalah rekap singkat tentang apa yang perlu Anda lakukan untuk menyiapkan perangkat keras Anda:

  • Solder header wanita yang menumpuk ke perisai. Lihat tutorial ini tentang cara melakukannya.
  • Pasang pelindung ke Arduino, pastikan untuk menyejajarkan semua pin sehingga Anda tidak merusaknya!
  • Masukkan kartu SIM seperti yang ditunjukkan pada gambar. Kontak logam menghadap ke bawah dan perhatikan lokasi takik di sudut.
  • Colokkan baterai LiPo ke konektor JST pada pelindung
  • Colokkan Arduino Anda ke komputer Anda menggunakan kabel USB. Anda mungkin memperhatikan bahwa LED daya hijau pelindung tidak menyala. Itu sangat normal karena pin PWRKEY perisai perlu di-pulse sedikit untuk menyalakannya. Contoh sketsa Arduino di bagian berikut akan menanganinya untuk Anda!
  • Pasang antena LTE/GPS ganda ke konektor uFL di tepi kanan pelindung. Perhatikan bahwa kabel akan saling bersilangan jadi jangan mencolokkan kabel yang salah!
  • Anda siap untuk perangkat lunak!

Langkah 3: Pengaturan Arduino & Pengujian Perangkat

Pengaturan Arduino & Pengujian Perangkat
Pengaturan Arduino & Pengujian Perangkat

Pengaturan Arduino IDE

Jika Anda belum melakukannya, silakan lihat langkah-langkah "Arduino IDE Setup" dan "Arduino Example" di produk utama Instructable untuk memastikan board Anda berfungsi dengan baik. Dalam instruksi tersebut, Anda harus mengunduh pustaka di halaman Github dan membuka kode contoh "LTE_Demo". Setelah mengikuti instruksi tersebut, Anda seharusnya menguji koneksi jaringan, GPS, dan memposting data ke dweet.io.

Sketsa Contoh IoT

Sekarang setelah Anda menguji fitur inti perisai Anda, muat sketsa "IoT_Example" di Arduino IDE. Anda juga dapat menemukannya di sini di Github. Unggah kode ini ke Arduino Anda dan buka monitor serial dan Anda akan melihat Arduino menemukan modul SIM7000, sambungkan ke jaringan seluler, aktifkan GPS dan terus coba hingga mendapatkan perbaikan di lokasi, dan kirim data ke dweet.io. Ini semua harus berjalan tanpa mengubah baris kode apa pun, dengan asumsi Anda menggunakan pelindung LTE dan kartu SIM Hologram.

Secara default Anda akan melihat baris berikut menentukan laju pengambilan sampel (well, sebenarnya penundaan di antara posting).

#define samplingRate 30 // Waktu di antara postingan, dalam detik

Jika baris ini dibiarkan tanpa komentar, Arduino akan memposting data, menunda 30 detik, memposting data lagi, mengulangi, dll. Selama penundaan 30 detik Anda dapat melakukan hal-hal seperti menempatkan Arduino dalam mode daya rendah dan hal-hal mewah seperti itu, tetapi untuk menjaga hal-hal sederhana Saya hanya akan menggunakan fungsi delay() untuk menghentikan sementara operasi. Jika Anda mengomentari baris ini, Arduino akan memposting data kemudian langsung masuk ke mode tidur berdaya rendah tanpa batas hingga Anda menekan tombol reset pada Arduino Anda. Ini berguna jika Anda menguji sesuatu dan tidak ingin membakar data gratis Anda yang berharga (walaupun sejujurnya setiap posting praktis tidak menggunakan apa-apa) atau mungkin Anda memiliki sirkuit eksternal untuk mereset Arduino (pengatur waktu 555? Interupsi RTC? Interupsi akselerometer? Sensor suhu? interupsi? Pikirkan di luar kotak!). Sebenarnya dalam tutorial Burgalert 7000 saya menunjukkan bagaimana Anda dapat menggunakan detektor gerakan PIR untuk membangunkan mikrokontroler.

Baris berikutnya mengatur apakah pelindung akan mati setelah memposting data atau tetap menyala. Anda dapat memilih pilihan sebelumnya dengan membatalkan komentar pada saluran jika Anda hanya mengambil sampel sesekali, tetapi jika Anda memiliki tingkat pengambilan sampel yang relatif tinggi, Anda akan ingin meninggalkan saluran yang dikomentari sehingga perisai tetap menyala dan tidak memiliki untuk menginisialisasi ulang, mengaktifkan kembali GPRS dan GPS, dll. Ketika perisai dibiarkan, ia dapat memposting dengan sangat cepat!

//#define turnOffShield // Matikan pelindung setelah memposting data

Juga perlu diingat bahwa contoh ini secara otomatis mengambil nomor IMEI khusus modul dan unik secara global dari SIM7000 dan menggunakannya sebagai ID perangkat (atau "nama" jika Anda mau) untuk mengidentifikasi perangkat saat mengirim data ke dweet.io. Anda dapat mengubah ini jika Anda mau, jadi saya pikir saya akan memberi tahu Anda:)

Untuk memeriksa apakah data Anda benar-benar dikirim ke dweet.io, cukup isi info yang sesuai dan salin/tempel URL ke browser apa pun:

dweet.io/get/latest/dweet/for/{deviceID}

di mana {deviceID} harus diganti dengan nomor IMEI yang tercetak di monitor serial di awal, tepat setelah Arduino menemukannya. Setelah memasukkan URL itu di browser Anda, Anda akan melihat respons JSON seperti berikut:

Melihat "konten" Anda akan melihat garis lintang, garis bujur lokasi Anda, kecepatan Anda (dalam kilometer per jam), arah tujuan (derajat, dengan 0 derajat menjadi Utara), ketinggian (meter), suhu (*C, tetapi rasakan bebas untuk dikonversi dalam kode), dan tegangan suplai dalam mili-Volt (yaitu VBAT, tegangan baterai). Untuk info lebih lanjut tentang string data NMEA Anda dapat melihat halaman 149 dari manual perintah SIM7000 AT.

Setelah Anda memverifikasi bahwa pengaturan Anda berhasil mengirim data ke dweet, mari siapkan dasbor untuk melihat semua data kami di antarmuka yang bagus!

Langkah 4: Pengaturan Freeboard.io

Pengaturan Freeboard.io
Pengaturan Freeboard.io
Pengaturan Freeboard.io
Pengaturan Freeboard.io
Pengaturan Freeboard.io
Pengaturan Freeboard.io

Untuk tutorial ini kita akan menggunakan freeboard.io, dasbor IoT yang sangat keren yang dapat terhubung dengan berbagai platform cloud seperti PubNub dan dweet, serta fitur lain seperti JSON dan MQTT. Seperti yang mungkin sudah Anda duga, kami juga akan menggunakan dweet.io yang digunakan dalam kode contoh dari bagian sebelumnya. Sebagai catatan penting, menyeret panel di freeboard.io tampaknya tidak berfungsi di Chrome jadi gunakan Firebox atau Microsoft Edge sebagai gantinya. Jika tidak, itu bisa menjadi "panel" nyata untuk mengatur ulang item di layar Anda!

Pengaturan Akun & Perangkat

  • Hal pertama yang perlu Anda lakukan adalah membuat akun dengan mengeklik tombol merah "MULAI SEKARANG" di beranda freeboard.io, masukkan kredensial, dan klik "Buat Akun Saya". Anda kemudian akan mendapatkan notifikasi email yang mengonfirmasi akun baru Anda.
  • Sekarang klik "Masuk" di kanan atas halaman beranda dan setelah masuk Anda akan melihat "papan bebas" Anda, yang hanya merupakan dasbor yang Anda atur dari proyek Anda. Jelas jika akun baru, Anda tidak akan melihat apa pun di sini, jadi masukkan saja nama proyek baru dan klik "Buat Baru" di dekat kanan atas. Ini kemudian akan membawa Anda ke dasbor kosong tempat Anda dapat mengatur antarmuka sesuai keinginan Anda. Di freeboard di sana Anda dapat mengatur berbagai "panel", dan setiap panel dapat memiliki satu atau beberapa "widget" yang merupakan hal-hal seperti grafik, peta, pengukur, dll. yang menampilkan data Anda dalam beberapa cara.
  • Hal pertama yang perlu kita lakukan sekarang adalah mengatur sumber data yang sebenarnya, yaitu perisai Arduino + LTE Anda. Untuk melakukannya, klik "TAMBAHKAN" di kanan atas di bawah "Sumber data". Selanjutnya, pilih "Dweet.io" dan masukkan nama apa pun yang Anda inginkan di bawah bidang "Nama". Namun, pastikan bahwa di bawah bidang "Nama Benda" Anda memasukkan nomor IMEI perisai alih-alih nama sembarang, karena itulah yang akan digunakan freeboard untuk menarik data dari dweet.
  • Setelah mengklik "Simpan" Anda akan melihat perangkat Anda muncul di bawah "Sumber data" serta terakhir kali mengirim data ke dweet. Anda juga dapat mengklik tombol segarkan untuk memeriksa nilai terbaru, tetapi freeboard akan memperbarui dengan sendirinya sehingga Anda biasanya tidak perlu menggunakan tombol itu.

Pengaturan Dasbor

Sekarang mari kita lihat cara mengatur lonceng dan peluit sebenarnya yang ingin Anda lihat di layar Anda!

  • Untuk menambahkan panel, klik tombol "TAMBAHKAN PANEL" di kiri atas dan Anda akan melihatnya menambahkan jendela kecil di layar Anda. Namun, belum ada apa pun di sini karena kami belum menambahkan widget apa pun!
  • Untuk menambahkan widget, klik tombol "+" kecil di panel. Ini akan memunculkan menu tarik-turun dengan berbagai opsi widget. Karena kita akan melakukan beberapa pelacakan GPS, mari pilih widget "Google Map". Anda kemudian akan melihat dua bidang, garis lintang dan garis bujur. Untuk mengisi ini dengan benar, perangkat Anda harus sudah diposting ke dweet. Dengan asumsi sudah, Anda harus dapat mengklik "+ Sumber data", klik pada sumber data ("SIM7000 GPS Tracker"), lalu klik "lat", yang merupakan nama variabel yang digunakan perisai saat memposting ke dweet. Ulangi prosedur untuk bidang bujur dan klik penggeser di bagian bawah jika Anda ingin peta menggambar garis di antara titik data untuk menandai tempat yang pernah Anda kunjungi.
  • Sekarang Anda akan melihat peta kecil perkiraan lokasi Anda! Untuk menguji apakah peta berfungsi, coba ubah lintang/bujur GPS Anda saat ini ke sesuatu yang sedikit berbeda dengan mengubah, misalnya, digit pertama setelah titik desimal dari nilai lintang/bujur di URL dweet yang dicetak di monitor serial di Arduino IDE ketika perisai memposting data. Setelah mengutak-atiknya, salin dan tempel URL dan jalankan di browser Anda.

dweet.io/dweet/for/112233445566778?lat=11.223344&long=-55.667788&speed=0&head=10&alt=324.8&temp=22.88&batt=3629

Sekarang beralih kembali ke freeboard dan Anda akan melihat grafik lokasi tweak Anda dan menggambar garis oranye di antara titik-titiknya! Barang keren ya? Jadi saya pikir Anda mendapatkan gambaran bahwa pelacak GPS kami akan mengirimkan data lokasi ke dweet untuk Anda lihat di freeboard secara real time atau setelah petualangan Anda berakhir

Ekstra

Karena pelacak GPS kecil kami tidak hanya mengirimkan data lintang/bujur tetapi juga ketinggian, kecepatan, arah, dan suhu, mari tambahkan beberapa widget lagi untuk membuat dasbor kita lebih berwarna!

  • Mari kita mulai dengan menambahkan panel baru lalu untuk menambahkan pengukur di dalam panel baru, klik tombol "+" di panel dan pilih "Gauge". Sama seperti sebelumnya, gunakan sumber data dan pilih "kecepatan" sebagai data yang ingin kami ambil untuk pengukur ini. Anda kemudian akan melihat pengukur yang bagus di dasbor Anda!
  • Ulangi ini untuk nilai ketinggian dan suhu.
  • Sekarang untuk heading mari kita tambahkan "Pointer" sebagai gantinya. Ini pada dasarnya adalah kompas karena mulai mengarah ke atas (Utara) pada 0 derajat dan berputar searah jarum jam untuk arah positif.. Perfecto!
  • Untuk mengubah ukuran panel, arahkan kursor ke panel yang berisi peta dan Anda akan melihat simbol kunci inggris kecil di kanan atas. Klik itu dan masukkan judul untuk panel dan masukkan "2" di bawah "Kolom" untuk menambah lebar panel.
  • Untuk mengubah lokasi panel cukup seret mereka! Anda juga dapat bereksperimen menambahkan "Sparkline" yang pada dasarnya hanya grafik garis sehingga Anda tidak hanya dapat melihat data terbaru tetapi juga data historis.

Bersenang-senanglah dan atur semuanya sesuka Anda karena kami siap untuk melakukan kunjungan lapangan!

Langkah 5: Pengujian

Image
Image
Pengujian
Pengujian

Untuk menguji pengaturan Anda, saya akan merekomendasikan pengaturan waktu pengambilan sampel ke nilai yang lebih rendah, seperti 10-20 detik sehingga Anda dapat menangkap perjalanan Anda dengan resolusi yang lebih tinggi. Saya juga akan membiarkan variabel "turnOffShield" dikomentari sehingga perisai tidak tertidur. Ini memungkinkannya untuk mengirim data secara berurutan.

Setelah mengunggah kode ke Arduino Anda, dapatkan paket baterai (7-12V) untuk memberi daya pada Arduino atau cukup colokkan Arduino menggunakan adaptor USB mobil. Anda juga memerlukan baterai LiPo 3.7V yang dicolokkan ke pelindung seperti yang disebutkan sebelumnya; perisai yang ditunjukkan pada gambar di atas adalah versi lama dan tidak memiliki dukungan baterai LiPo tetapi sekarang diperlukan pada semua versi yang lebih baru.

Selanjutnya, buka freeboard di suatu tempat sehingga ketika Anda kembali, Anda dapat melihat hasilnya! Setelah Anda mencolokkan Arduino, Anda siap melakukannya! Mulai berkeliling, minum kopi, pulang ke rumah, dan Anda akan melihat data yang diplot di papan bebas. Jika Anda benar-benar ingin (saya tidak merekomendasikan ini saat mengemudi…) Anda dapat melihat data freeboard di ponsel Anda secara real time saat teman Anda mengemudikan kendaraan. Hal menyenangkan!

Langkah 6: Hasil

Hasil
Hasil

Untuk tes ini ayah saya dan saya pergi untuk mendapatkan beberapa drum ayam di Trader Joe (omnomnomnom…) dan kami mengumpulkan beberapa data yang cukup akurat. Saya meminta perangkat mengirim data setiap 10 detik dan kecepatan maksimal dari perjalanan sekitar 92khm (sekitar 57mph) yang cukup akurat karena kami terus mengawasi speedometer sepanjang waktu. Perisai LTE pasti melakukan tugasnya dengan cukup baik dan mengirimkan data ke cloud dengan sangat cepat. Sejauh ini baik!

Namun, mungkin kabar yang tidak terlalu bagus adalah bahwa widget peta di freeboard tidak sebagus yang saya kira sebelumnya. Itu tidak memungkinkan Anda untuk memindahkan lokasi mouse Anda dan tetap terpusat pada lokasi terakhir sehingga bagus untuk hal-hal seperti pelacak GPS mobil tetapi tidak jika Anda ingin menganalisis perjalanan yang telah selesai dengan semua titik data, terutama jika itu adalah perjalanan yang panjang.

Dalam tutorial ini kita belajar bagaimana menggunakan pelindung LTE sebagai pelacak GPS dan pencatat data dan cara cepat melihat data di freeboard.io. Sekarang gunakan imajinasi Anda dan terapkan dalam proyek Anda sendiri. Anda bahkan dapat menambahkan lebih banyak perisai dan mengubah benda ini menjadi pencatat data tenaga surya berdaya rendah! (Saya mungkin benar-benar berencana melakukan tutorial tentang itu di masa depan!). Karena keterbatasan peta freeboard, saya juga berencana membuat tutorial baru tentang cara membuat aplikasi Android Anda sendiri yang mengambil data dari dweet dan memungkinkan Anda untuk membuat grafik lokasi pelacak di Google Maps dengan memulai, jeda, dan hentikan fitur untuk perjalanan Anda! Pantau terus!

  • Jika Anda menyukai proyek ini, tolong beri hati!
  • Jika Anda memiliki pertanyaan, komentar, saran tentang tutorial baru, atau mencoba proyek ini sendiri, beri komentar di bawah!
  • Ikuti saya di sini di Instructables, berlangganan saluran YouTube saya, atau ikuti saya di Twitter untuk tetap diperbarui dengan proyek Arduino terbaru saya! Saya seorang insinyur muda dengan hasrat untuk berbagi apa yang telah saya pelajari, jadi pasti akan ada beberapa tutorial lagi segera!
  • Jika Anda ingin mendukung apa yang saya lakukan dalam berbagi perangkat keras sumber terbuka dan mendokumentasikannya secara menyeluruh untuk tujuan pendidikan, pertimbangkan untuk membeli perisai Anda sendiri di Amazon.com untuk dimainkan!

Direkomendasikan: