Daftar Isi:
- Langkah 1: Memperoleh Bahan
- Langkah 2: Menyiapkan Perangkat
- Langkah 3: Coding Arduino untuk Mengekstrak Data
- Langkah 4: Memanfaatkan Pemrosesan untuk Mendengarkan
- Langkah 5: Menampilkan Data di Tableau Public
- Langkah 6: Memperbaiki Viz
Video: Path Mapper: 6 Langkah
2024 Pengarang: John Day | [email protected]. Terakhir diubah: 2024-01-30 09:57
Dalam proyek IoT ini, kami memasang NEO-6M (modul GPS) untuk mengirimkan data lokasi melalui Arduino ke lembar Excel yang akan disimpan di komputer. Setelah itu dengan Tableau Public, kami membuat visualisasi data dari data ini untuk memetakan jalur yang kami ambil. Meskipun ini adalah salah satu cara mengumpulkan dan menyajikan data waktu nyata dalam data yang sangat berkorelasi, proses ini juga dapat diterapkan pada proyek berbasis data lainnya.
Langkah 1: Memperoleh Bahan
Untuk proyek ini, Anda memerlukan yang berikut:
- Modul GPS NEO-6M
- Arduino Uno
- Kabel jumper pria / pria (Anda membutuhkan 4 kabel)
- Kabel USB 2.0 Tipe A ke B
- Komputer dengan program ini: Tableau Public, Arduino IDE (dengan TinyGPS++), dan Processing
Langkah 2: Menyiapkan Perangkat
Pertama-tama kita perlu mengatur modul GPS dengan Arduino UNO agar Arduino memberi kita antarmuka untuk menampilkan data. Masing-masing dari empat kabel yang terhubung ke NEO-6M sesuai dengan port tertentu. Jika NEO-6M Anda tidak dilengkapi dengan kabel, Anda harus menghubungkannya langsung dengan kabel jumper. Dalam diagram di atas, merah sesuai dengan daya (VCC), hitam ke tanah (GND), kuning untuk mengirimkan data (TxD), dan putih untuk menerima data (RxD). Kami menghubungkan kabel ini ke kabel jumper pria / pria sehingga kami dapat menghubungkannya ke Arduino. Mengikuti diagram di atas, kami menghubungkan kabel ground ke pin digital GND di Arduino, kabel TxD ke 4, kabel RxD ke ~3, dan kabel VCC ke 5V untuk tegangan. Pada langkah selanjutnya, kita perlu mendefinisikan TxD dan RxD dengan angka yang benar di SoftwareSerial.
Setelah kedua perangkat terhubung satu sama lain, kita perlu menyediakan sumber daya. Hubungkan kabel USB 2.0 ke laptop Anda dan lampu pada NEO-6M akan menyala.
Langkah 3: Coding Arduino untuk Mengekstrak Data
Sekarang kita memiliki perangkat yang disiapkan untuk mengumpulkan data GPS dari satelit, kita akan menulis kode untuk mengurai data GPS yang kita inginkan. Dengan asumsi Anda telah menerima sinyal (modul GPS saya akan berkedip biru), NEO-6M secara default mencetak data mentah pada monitor serial dalam bentuk pesan NMEA, yang terlihat seperti $GP diikuti oleh lebih banyak huruf dan seri dari angka. Gambar di atas memberikan gambaran umum tentang apa yang harus ditampilkan pada monitor serial Anda setelah kode Arduino dasar dimasukkan.
Untuk menjelaskan kode yang saya lampirkan (atau jika Anda ingin mencoba membuat kode sendiri), Anda harus terlebih dahulu menyertakan pustaka SoftwareSerial dan TinyGPS++ (untuk yang terakhir, Sketch > Include > Add. ZIP library). SoftwareSerial memungkinkan kita untuk memiliki koneksi serial; TinyGPS++ memberi kita alat yang mudah untuk mencetak informasi yang ditargetkan dalam bentuk yang dapat dibaca. Pastikan Anda menginisialisasi objek SoftwareSerial ke pin yang sesuai di Arduino. Dalam fungsi setup, kami menggunakan 9600 sebagai baud rate.
Untuk tujuan instruksi ini, kami hanya akan mencetak tujuh jenis data dalam fungsi loop: lintang (derajat), bujur (derajat), kecepatan (km), jalur (derajat), ketinggian (km), jumlah satelit di gunakan, dan hdop. Anda dapat mencari sintaks untuk mencetak informasi ini di perpustakaan Arduiniana. Bentuk umumnya adalah Serial.print(). Misalnya untuk mencetak garis bujur, kita ketik Serial.print(gps.location.lng(), 6). Angka 6 mewakili berapa banyak digit yang kita inginkan di sebelah kanan titik desimal.
Kode saya memiliki karakter tambahan yang dicetak demi regex yang mudah diformat di langkah berikutnya. Namun, jika Anda ingin berhenti pada langkah ini, jangan ragu untuk memformat data secara berbeda untuk kemudahan tampilan pada monitor serial.
Langkah 4: Memanfaatkan Pemrosesan untuk Mendengarkan
Meskipun kami memiliki kode untuk pengaturan Arduino IDE, kami memiliki masalah dalam menyimpan data ini. Untuk saat ini, kami hanya dapat melihat data di monitor serial saat kami mengumpulkannya. Ada banyak cara untuk mencatat data ini tetapi saya memilih Processing terutama karena antarmukanya meniru Arduino IDE dan menggunakan Java, bahasa yang saya kenal (perhatikan bahwa Anda juga dapat mengontrol papan Arduino dengan Processing jika Anda mengunduh Firmata). Pemrosesan mendengarkan pada port yang terhubung ke Arduino dan memiliki kemampuan untuk memanipulasi data yang dibaca ke monitor serial. Untuk menemukan nama port ini, lihat kembali file Arduino IDE Anda dan periksa di Tools > Port.
Saya telah memberikan kode Pemrosesan, tetapi di sini adalah ikhtisar singkat tentang cara kerja kode.
Sebelum fungsi setup, pastikan Anda memiliki variabel untuk port, tabel yang dihasilkan, baris yang akan kita kerjakan, dan nama file. Kemudian di fungsi setup, ada parameter untuk mengatur ukuran jendela Run Anda tetapi angka-angka itu tidak mempengaruhi fungsionalitas kami (misalnya, atur ke (500, 500)). Saat Anda menginisialisasi port, gunakan nama port dalam bentuk String dan baud rate 9600. Terakhir, buat sembilan kolom (untuk tujuh kategori GPS, waktu, dan tanggal) untuk menginisialisasi tabel.
Dalam fungsi undian, kami menggunakan fungsi tanggal dan waktu bawaan untuk melacak kapan setiap kumpulan data GPS diekstraksi. Sekarang untuk membaca aliran data dari Arduino dan meletakkannya di bawah header yang sesuai dengan waktu dan tanggal yang benar, kami menggunakan ekspresi reguler.
Saya menggunakan regex untuk mengurai data yang tepat dengan fungsi matchAll yang mencari ekspresi apa pun antara tanda sama dengan dan titik koma (pembatas yang saya masukkan ke kode Arduino saya). Ini kemudian menempatkan semua tag yang cocok, data numerik, dalam array dua dimensi. Kami kemudian dapat memanggil indeks array ini untuk meletakkannya di bawah header lembar Excel.
Untuk menyimpan file.csv baru, kami menggunakan tombol tekan untuk menutup jendela Run. Semakin lama Anda menunggu untuk menekan tombol, semakin banyak data yang akan Anda kumpulkan. Mengikuti cara panduan lain, saya juga memutuskan untuk menyimpan file ke folder data dengan tanggal dan waktu sebagai nama file.
Langkah 5: Menampilkan Data di Tableau Public
Langkah terakhir melibatkan beberapa visualisasi data. Ada banyak program untuk membuat dan menampilkan visualisasi data yaitu Plotly, tetapi untuk proyek ini kita akan menggunakan Tableau. Buka Tableau Public dan buka file Excel yang disimpan sebagai file teks. Untuk membuat lembar kerja, klik Lembar 1 di sisi kiri bawah.
Karena kami bekerja dengan data GPS, kami akan menggunakan peta untuk menggambarkan informasi kami. Di kolom kiri yang bertuliskan Measures, kita akan menyeret Bujur ke Kolom dan Garis Lintang ke Baris di bagian atas. Tableau menetapkan kedua ukuran secara default ke AVG, jadi klik tarik-turun di sebelah persyaratan dan ubah keduanya ke Dimensi. Sekarang peta harus memiliki jalur yang ditampilkan menggunakan nilai lintang dan bujur yang dikumpulkan.
Untuk membersihkan data Anda dari kesalahan (yang juga dapat dilakukan sebelum membuka Tableau), Anda dapat memilih untuk mengecualikan beberapa lingkaran lokasi dengan mengekliknya dan memilih opsi. Modul GPS saya tidak 100% akurat, karena beberapa bagian dari jalur saya belum ditemukan, tetapi jalur umum telah direkam.
Langkah 6: Memperbaiki Viz
Bagian terakhir adalah membuat data ini lebih mudah dibaca. Jika Anda ingin konteks jalanan, Anda bisa pergi ke Map > Map Layer > Streets and Highways. Jangan ragu untuk bereksperimen dengan Merek lain. Saya menyeret Speed over Color untuk menunjukkan bagaimana intensitas warna meningkat saat kecepatan meningkat. Saya juga menggunakan Detail daripada Label untuk Kursus karena Label akan menampilkan angka pada peta sedangkan saya hanya ingin informasi muncul saat Anda mengarahkan kursor ke titik lokasi.
Sekarang setelah Anda mengalami seluruh proses pengumpulan data dan menampilkan apa yang Anda miliki pada visualisasi data, Anda dapat menerapkannya ke proyek lain!
oleh Pingdi Huang, Musim Panas 2018
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
ESP32 Scraper-parser-mailer dan Live Mapper: 4 Langkah (dengan Gambar)
ESP32 Scraper-parser-mailer dan Live Mapper: Halo Dunia! Ini adalah Instruksi pertama saya! Saya Marco dari Grosseto Italia, saya bukan pengembang, saya bukan insinyur elektronik tetapi saya pemandu lingkungan di taman alam lokal kami (taman alam Maremma). Di koperasi saya, kami banyak bekerja dengan kano
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:
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++)