Isi kandungan:

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

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

Video: LTE Arduino GPS Tracker + IoT Dashboard (Bahagian 1): 6 Langkah (dengan Gambar)
Video: Fast checkout with Scan and Pay at Lotus 2024, Julai
Anonim
LTE Arduino GPS Tracker + IoT Dashboard (Bahagian 1)
LTE Arduino GPS Tracker + IoT Dashboard (Bahagian 1)
LTE Arduino GPS Tracker + IoT Dashboard (Bahagian 1)
LTE Arduino GPS Tracker + IoT Dashboard (Bahagian 1)
LTE Arduino GPS Tracker + IoT Dashboard (Bahagian 1)
LTE Arduino GPS Tracker + IoT Dashboard (Bahagian 1)

Pengenalan

Apa khabar, rakan sekalian! Instructable ini adalah tindak lanjut dari Instructable pertama saya untuk menggunakan perisai Botletics LTE / NB-IoT untuk Arduino, jadi jika anda belum melakukannya, sila baca untuk mendapatkan gambaran keseluruhan yang baik tentang cara menggunakan perisai dan apa sebenarnya. Dalam tutorial ini saya akan memfokuskan pada pembalakan data IoT, dan khususnya, penjejakan GPS dan suhu dan memberikan anda semua kod dan panduan yang anda perlukan untuk mencuba dan mengujinya!

Instructable ini terutama tertumpu pada perisai LTE yang saya reka dan bina secara peribadi, tetapi semua yang ada di sini (termasuk perpustakaan Github Arduino) harus berfungsi pada modul 2G dan 3G SIMCom seperti SIM800 / 808/900/5320 juga kerana ia hanya dikemas kini versi perpustakaan Adafruit FONA. Terlepas dari perkakasan, konsepnya sama persis dan anda dapat melakukan banyak hal menarik dengan ini, termasuk log data sensor, pemantauan cuaca jarak jauh, penjejakan GPS karma pencurian automatik, dll … jadi baca terus!

Langkah 1: Kumpulkan Bahagian

Kumpulkan Bahagian
Kumpulkan Bahagian
Kumpulkan Bahagian
Kumpulkan Bahagian
Kumpulkan Bahagian
Kumpulkan Bahagian

Senarainya sama seperti dalam tutorial pertama saya dan sangat mudah!

  • Arduino Uno, Mega, atau Leonardo. Sebagai alternatif anda boleh menggunakan mikrokontroler 3.3V atau 5V lain tetapi anda perlu memasang pin secara luaran.
  • Botletics SIM7000 Shield Kit (dilengkapi dengan pelindung, antena uFL dual LTE / GPS, dan susun kepala wanita). Pastikan anda mengikuti tutorial ini untuk memilih versi yang sesuai!
  • Kad SIM hologram. Kad SIM pertama (disebut kad SIM "pemaju") adalah percuma dan dilengkapi dengan data 1MB sebulan! Di Amerika Syarikat kemungkinan besar anda akan berada di rangkaian Verizon jika anda menggunakan kad SIM Hologram. Anda juga boleh mengambilnya di samping perisai Botletik sekiranya lebih mudah.
  • Bateri LiPo 3.7V (disyorkan kapasiti 1000mAH atau lebih besar).
  • Kabel USB untuk memprogram Arduino anda atau mengaktifkannya.

Untuk ujian penjejakan GPS!

  • Anda boleh menggunakan penyesuai USB kereta untuk menghidupkan Arduino anda semasa menguji perisai di jalan.
  • Sebagai alternatif, anda boleh menggunakan pek bateri (7-12V) untuk menghidupkan Arduino melalui pin VIN dan GND.

Langkah 2: Perhimpunan Fizikal

Perhimpunan Fizikal
Perhimpunan Fizikal
Perhimpunan Fizikal
Perhimpunan Fizikal
Perhimpunan Fizikal
Perhimpunan Fizikal

Sekarang anda mempunyai semua bahagian anda, berikut adalah ringkasan ringkas mengenai perkara yang perlu anda lakukan untuk menyiapkan perkakasan anda:

  • Pasang kepala wanita yang bertumpuk ke perisai. Lihat tutorial ini mengenai cara melakukannya.
  • Pasang perisai ke Arduino, pastikan untuk menyusun semua pin supaya anda tidak merosakkannya!
  • Masukkan kad SIM seperti yang ditunjukkan dalam gambar. Kenalan logam menghadap ke bawah dan perhatikan lokasi takik di sudut.
  • Pasangkan bateri LiPo ke penyambung JST pada pelindung
  • Pasangkan Arduino anda ke komputer anda menggunakan kabel USB. Anda mungkin menyedari bahawa LED kuasa hijau perisai tidak menyala. Itu betul-betul normal kerana pin PWRKEY perisai perlu berdenyut sedikit untuk menghidupkannya. Contoh lakaran Arduino di bahagian berikut akan menguruskannya untuk anda!
  • Pasang antena dual LTE / GPS ke penyambung uFL di tepi kanan pelindung. Perhatikan bahawa wayar akan bersilang sehingga jangan pasang yang salah!
  • Anda sudah bersedia untuk perisian!

Langkah 3: Penyediaan Arduino & Ujian Peranti

Penyediaan Arduino & Ujian Peranti
Penyediaan Arduino & Ujian Peranti

Persediaan IDE Arduino

Sekiranya anda belum melakukannya, lihat langkah "Arduino IDE Setup" dan "Arduino Contoh" langkah-langkah dalam produk utama Diperintahkan untuk memastikan papan anda berfungsi dengan baik. Dalam arahan tersebut, anda perlu memuat turun perpustakaan di halaman Github dan membuka contoh kod "LTE_Demo". Setelah mengikuti arahan tersebut, anda seharusnya menguji sambungan rangkaian, GPS, dan menghantar data ke dweet.io.

Lakaran Contoh IoT

Setelah anda menguji ciri teras perisai anda, muatkan lakaran "IoT_Example" di Arduino IDE. Anda juga boleh menemuinya di Github. Muat naik kod ini ke Arduino anda dan buka monitor bersiri dan anda akan melihat Arduino menemui modul SIM7000, menyambung ke rangkaian sel, mengaktifkan GPS dan terus mencuba sehingga ia mendapat perbaikan pada lokasi, dan hantarkan data ke dweet.io. Ini semua harus berjalan tanpa mengubah garis kod apa pun, dengan andaian anda menggunakan perisai LTE dan kad Hologram SIM.

Secara lalai anda akan melihat baris berikut menentukan kadar persampelan (baik, sebenarnya kelewatan di antara catatan).

#tentukan persampelanNilai 30 // Masa di antara catatan, dalam beberapa saat

Sekiranya baris ini dibiarkan, Arduino akan menghantar data, menunda 30-an, mengeposkan data sekali lagi, mengulangi, dan lain-lain. Semasa kelewatan 30-an, anda boleh melakukan perkara seperti meletakkan Arduino dalam mod kuasa rendah dan perkara-perkara mewah seperti itu, tetapi untuk mengekalkan perkara mudah Saya hanya akan menggunakan fungsi delay () untuk menghentikan operasi. Sekiranya anda mengomentari baris ini, Arduino akan menghantar data, kemudian terus ke mod tidur kuasa rendah selama-lamanya sehingga anda menekan butang reset pada Arduino anda. Ini berguna jika anda menguji sesuatu dan tidak mahu membakar data percuma anda yang berharga (walaupun secara jujur setiap pos tidak menggunakan apa-apa) atau mungkin anda mempunyai litar luaran untuk menetapkan semula Arduino (pemasa 555? Gangguan RTC? Gangguan Accelerometer? Sensor suhu mengganggu? Berfikir di luar kotak!). Sebenarnya dalam tutorial Burgalert 7000 saya menunjukkan bagaimana anda boleh menggunakan pengesan gerakan PIR untuk membangunkan mikrokontroler.

Baris seterusnya menetapkan sama ada perisai akan mati setelah menyiarkan data atau tetap hidup. Anda mungkin memilih pilihan yang pertama dengan melepaskan garis jika anda hanya mengambil sampel sekali-sekala, tetapi jika anda mempunyai kadar persampelan yang agak tinggi, anda ingin membiarkan garisan itu dikomentari sehingga perisai tetap dan tidak mempunyai untuk menginisialisasi semula, aktifkan semula GPRS dan GPS, dan lain-lain. Apabila perisai dibiarkan, ia dapat mengepos dengan sangat cepat!

// # define turnOffShield // Matikan perisai setelah menghantar data

Perlu diingat juga bahawa contoh ini secara automatik mengambil nombor IMEI khusus modul dan global IM7I SIM7000 dan menggunakannya sebagai ID peranti (atau "nama" jika anda lebih suka) untuk mengenal pasti peranti semasa menghantar data ke dweet.io. Anda boleh mengubahnya jika anda mahu, jadi saya fikir saya akan memberitahu anda:)

Untuk memeriksa sama ada data anda sebenarnya dihantar ke dweet.io, cukup isi maklumat yang sesuai dan salin / tampal URL ke mana-mana penyemak imbas:

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

di mana {deviceID} harus diganti dengan nombor IMEI yang dicetak di monitor bersiri pada awal, tepat setelah Arduino menemuinya. Setelah memasukkan URL tersebut di penyemak imbas anda, anda akan melihat respons JSON seperti berikut:

Melihat "kandungan" anda harus melihat garis lintang, garis bujur lokasi anda, kelajuan anda (dalam kilometer per jam), arah arah (darjah, dengan 0 darjah ke utara), ketinggian (meter), suhu (* C, tetapi terasa bebas menukar dalam kod), dan voltan bekalan dalam mili-Volt (yang merupakan VBAT, voltan bateri). Untuk maklumat lebih lanjut mengenai rentetan data NMEA, anda boleh melihat halaman 149 manual arahan SIM7000 AT.

Setelah anda mengesahkan bahawa persediaan anda berjaya menghantar data ke dweet, mari sediakan papan pemuka untuk melihat semua data kami di antara muka yang bagus!

Langkah 4: Persediaan Freeboard.io

Persediaan Freeboard.io
Persediaan Freeboard.io
Persediaan Freeboard.io
Persediaan Freeboard.io
Persediaan Freeboard.io
Persediaan Freeboard.io

Untuk tutorial ini, kami akan menggunakan freeboard.io, papan pemuka IoT yang sangat hebat yang boleh berhubung dengan banyak platform awan seperti PubNub dan dweet, serta ciri lain seperti JSON dan MQTT. Seperti yang anda duga, kita juga akan menggunakan dweet.io yang digunakan dalam kod contoh dari bahagian sebelumnya. Sebagai catatan penting, menyeret panel di freeboard.io nampaknya tidak berfungsi di Chrome jadi gunakan Firebox atau Microsoft Edge sebagai gantinya. Sekiranya tidak, ini boleh menjadi "panel" sebenar untuk menyusun semula item di skrin anda!

Penyediaan Akaun & Peranti

  • Perkara pertama yang perlu anda lakukan ialah membuat akaun dengan mengklik butang "MULAI SEKARANG" berwarna merah di laman utama freeboard.io, masukkan bukti kelayakan, dan klik "Buat Akaun Saya". Anda kemudian akan mendapat pemberitahuan e-mel yang mengesahkan akaun baru anda.
  • Sekarang klik "Login" di kanan atas halaman utama dan setelah log masuk anda akan melihat "freeboards" anda, yang hanya dashboard yang anda siapkan dari projek anda. Jelas sekali jika akaun itu baru anda tidak akan melihat apa-apa di sini jadi masukkan nama projek baru dan klik "Buat Baru" di sebelah kanan atas. Ini kemudian akan membawa anda ke papan pemuka kosong di mana anda boleh menyediakan antara muka seperti yang anda suka. Di papan bebas di sana anda dapat mengatur berbagai "panel", dan setiap panel dapat memiliki satu atau beberapa "widget" yang berupa grafik, peta, alat ukur, dll. Yang memaparkan data anda dalam beberapa cara.
  • Perkara pertama yang perlu kita lakukan sekarang ialah menyiapkan sumber data sebenar, yang merupakan perisai Arduino + LTE anda. Untuk melakukannya, klik "TAMBAHKAN" di bahagian kanan atas di bawah "Sumber Data". Seterusnya, pilih "Dweet.io" dan masukkan nama yang anda mahukan di bawah bidang "Nama". Walau bagaimanapun, pastikan bahawa di bawah bidang "Nama Perkara" anda memasukkan nombor IMEI perisai dan bukannya nama sewenang-wenangnya, kerana itulah yang akan digunakan oleh papan kenyataan untuk menarik data dari dweet.
  • Setelah mengklik "Simpan" anda akan melihat peranti anda muncul di bawah "Sumber Data" dan kali terakhir ia menghantar data ke dweet. Anda juga dapat mengklik butang muat semula untuk memeriksa nilai terbaru, tetapi papan bebas akan diperbaharui dengan sendirinya sehingga biasanya Anda tidak perlu menggunakan butang itu.

Persediaan Papan Pemuka

Sekarang mari kita lihat cara memasang loceng dan wisel sebenar yang anda mahu lihat di skrin anda!

  • Untuk menambah panel, klik butang "TAMBAH PANE" di kiri atas dan anda akan melihatnya menambah tetingkap kecil di skrin anda. Namun, belum ada apa-apa di sini kerana kami belum menambahkan widget!
  • Untuk menambahkan widget, klik butang "+" kecil di panel. Ini akan memunculkan menu dropdown dengan pelbagai pilihan widget. Oleh kerana kita akan melakukan penjejakan GPS, mari pilih widget "Peta Google". Anda kemudian harus melihat dua medan, garis lintang dan garis bujur. Untuk mengisinya dengan betul, peranti anda perlu menghantarnya ke tweet. Dengan mengandaikannya, anda seharusnya dapat mengklik "+ Datasource", klik pada sumber data ("SIM7000 GPS Tracker"), kemudian klik "lat", yang merupakan nama pemboleh ubah yang digunakan perisai ketika mengirim ke dweet. Ulangi prosedur untuk medan garis bujur dan klik gelangsar di bahagian bawah jika anda mahu peta melukis garis antara titik data untuk menandakan tempat anda berada.
  • Sekarang anda akan melihat peta kecil dari lokasi anggaran anda! Untuk menguji sama ada peta berfungsi, cuba ubah lat / long GPS semasa anda menjadi sesuatu yang sedikit berbeza dengan menukar, sebagai contoh, digit pertama setelah titik perpuluhan nilai lat / panjang dalam URL dweet yang dicetak di monitor bersiri di Arduino IDE ketika perisai menyiarkan data. Setelah mengubahnya, salin dan tampal URL dan jalankan di penyemak imbas 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 papan bebas dan anda akan melihat bahawa ia menggambarkan lokasi anda dan mengubah garis oren di antara titik! Barang sejuk ya? Oleh itu, saya rasa anda mendapat gambaran bahawa pelacak GPS kami akan menghantar data lokasi untuk dweet agar anda dapat melihatnya di papan kenyataan dalam masa nyata atau setelah pengembaraan anda selesai

Tambahan

Oleh kerana pelacak GPS kecil kami tidak hanya mengirim data lat / panjang tetapi juga ketinggian, kelajuan, arah, dan suhu, mari kita masukkan beberapa widget untuk menjadikan papan pemuka kami lebih berwarna!

  • Mari mulakan dengan menambahkan panel baru kemudian untuk menambahkan tolok dalam panel baru klik butang "+" di panel dan pilih "Tolok". Sama seperti sebelumnya, gunakan sumber data dan pilih "kelajuan" sebagai data yang kami berminat untuk mendapatkan ukuran ini. Anda harus melihat alat pengukur yang bagus di papan pemuka anda!
  • Ulangi ini untuk nilai ketinggian dan suhu.
  • Sekarang untuk tajuk mari kita tambahkan "Pointer". Ini pada dasarnya adalah kompas kerana ia mula menunjuk ke atas (Utara) pada 0 darjah dan berputar mengikut arah jam untuk tajuk positif.. Perfecto!
  • Untuk menukar ukuran panel, arahkan kursor ke atas panel yang mengandungi peta dan anda akan melihat simbol sepana kecil di kanan atas. Klik itu dan masukkan tajuk untuk panel dan masukkan "2" di bawah "Lajur" untuk menambah lebar panel.
  • Untuk menukar lokasi panel, seretnya! Anda juga boleh bereksperimen dengan menambahkan "Sparkline" yang pada dasarnya hanya grafik garis sehingga anda dapat melihat bukan sahaja data terkini tetapi juga data bersejarah.

Selamat mencuba dan siapkan semua yang anda sukai kerana kami bersedia untuk pergi bersiar-siar!

Langkah 5: Menguji

Image
Image
Ujian
Ujian

Untuk menguji persediaan anda, saya akan mengesyorkan menetapkan masa pengambilan sampel ke nilai yang lebih rendah, seperti 10-20s sehingga anda dapat menangkap perjalanan anda dengan resolusi yang lebih tinggi. Saya juga akan membiarkan pemboleh ubah "turnOffShield" berkomentar supaya perisai tidak tidur. Ini memungkinkan untuk menghantar data secara berturut-turut.

Setelah memuat naik kod ke Arduino anda, dapatkan bateri (7-12V) untuk menghidupkan Arduino atau pasangkan Arduino dengan menggunakan penyesuai USB kereta. Anda juga memerlukan bateri LiPo 3.7V yang dipasang ke pelindung seperti yang disebutkan sebelumnya; perisai yang ditunjukkan dalam gambar di atas adalah versi lama dan tidak mempunyai sokongan bateri LiPo tetapi kini diperlukan pada semua versi yang lebih baru.

Seterusnya, buka papan kenyataan di suatu tempat sehingga apabila anda kembali, anda dapat melihat hasilnya! Sebaik sahaja anda memasang Arduino, anda boleh pergi! Mula berkeliling, dapatkan kopi, pulang ke rumah, dan anda akan melihat data yang ditunjukkan di papan kenyataan. Sekiranya anda benar-benar mahukan (saya tidak mengesyorkan ini semasa memandu …) anda dapat melihat data papan kenyataan di telefon anda dalam masa nyata semasa rakan anda memandu kenderaan. Perkara yang menyeronokkan!

Langkah 6: Hasil

Keputusan
Keputusan

Untuk ujian ini, saya dan ayah saya pergi untuk mendapatkan beberapa gendang ayam di Trader Joe's (omnomnomnom…) dan kami mengumpulkan beberapa data yang cukup tepat. Peranti saya menghantar data setiap 10s dan kelajuan maksimum perjalanan adalah sekitar 92khm (sekitar 57mph) yang cukup tepat kerana kami mengawasi speedometer sepanjang masa. Perisai LTE pasti menjalankan tugasnya dengan cukup baik dan menghantar data ke awan dengan sangat cepat. Setakat ini bagus!

Namun, mungkin berita yang tidak begitu baik adalah widget peta di papan kenyataan tidak sehebat yang saya sangka. Itu tidak membenarkan anda memindahkan lokasi tetikus anda dan tetap berpusat di lokasi terakhir jadi sangat bagus untuk perkara seperti pelacak GPS kereta tetapi tidak jika anda ingin menganalisis perjalanan yang telah selesai dengan semua titik data, terutamanya jika ia adalah perjalanan yang panjang.

Dalam tutorial ini kami belajar bagaimana menggunakan perisai LTE sebagai pelacak GPS dan pencatat data dan bagaimana melihat data di freeboard.io dengan cepat. Sekarang gunakan imaginasi anda dan terapkan dalam projek anda sendiri. Anda bahkan boleh menambahkan lebih banyak perisai dan mengubah benda ini menjadi pencatat data solar berkuasa rendah! (Saya mungkin sebenarnya merancang untuk membuat tutorial mengenai hal itu di masa depan!). Kerana keterbatasan peta papan kenyataan, saya juga merancang untuk membuat tutorial baru mengenai cara membuat aplikasi Android anda sendiri yang mengambil data dari dweet dan akan membolehkan anda membuat grafik lokasi pelacak di Peta Google dengan permulaan, berhenti seketika, dan hentikan ciri untuk perjalanan anda! Nantikan!

  • Sekiranya anda menyukai projek ini, sila beri hati!
  • Sekiranya anda mempunyai pertanyaan, komen, cadangan mengenai tutorial baru, atau mencuba sendiri projek ini, pasti komen di bawah!
  • Ikuti saya di Instructables, langgan saluran YouTube saya, atau ikuti saya di Twitter untuk terus mengetahui projek Arduino terbaru saya! Saya seorang jurutera muda dengan semangat untuk berkongsi apa yang telah saya pelajari, jadi pasti akan ada beberapa lagi tutorial tidak lama lagi!
  • Sekiranya anda ingin menyokong apa yang saya lakukan dalam berkongsi perkakasan sumber terbuka dan mendokumentasikannya secara menyeluruh untuk tujuan pendidikan, pertimbangkan untuk membeli perisai anda sendiri di Amazon.com untuk dimainkan!

Disyorkan: