- Bahan yang Dibutuhkan
- Apa itu Magnetometer dan Bagaimana Cara Kerjanya?
- Cara Kerja Modul Sensor HMC5883L
- Diagram Sirkuit
- Fabrikasi PCB untuk Kompas Digital
- Merakit PCB
- Memprogram Arduino
Otak manusia dibangun dari lapisan struktur kompleks yang membantu kita menjadi spesies dominan di bumi. Misalnya korteks entorhinal di otak Anda dapat memberi Anda arah yang membantu Anda menavigasi dengan mudah melalui tempat-tempat yang tidak Anda kenal. Namun tidak seperti kami, Robot dan kendaraan Ariel tak berawak membutuhkan sesuatu untuk mengetahui arah ini sehingga mereka dapat bermanuver secara mandiri di medan dan lanskap baru. Robot yang berbeda menggunakan jenis sensor yang berbeda untuk mencapai hal ini, tetapi yang umum digunakan adalah magnetometer, yang dapat menginformasikan robot ke arah mana arah geografisnya saat ini. Ini tidak hanya akan membantu robot untuk merasakan arah tetapi juga untuk bergiliran ke arah dan malaikat yang telah ditentukan sebelumnya.
Karena sensor dapat menunjukkan grafik geografis Utara, Selatan, Timur dan Barat, kita manusia juga dapat menggunakannya pada saat diperlukan. Jadi pada artikel ini mari kita coba memahami cara kerja sensor Magnetometer dan cara menghubungkannya dengan mikrokontroler seperti Arduino. Di sini kita akan membangun Kompas Digital keren yang akan membantu kita menemukan arah dengan menyalakan LED yang menunjuk ke Arah Utara. Kompas Digital ini dibuat dengan rapi di PCB dari PCBGOGO, sehingga saya dapat membawanya lain kali ketika saya pergi ke alam liar dan berharap saya tersesat hanya dengan menggunakan benda ini untuk menemukan jalan pulang. Mari kita mulai.
Bahan yang Dibutuhkan
- Arduino Pro mini
- Sensor Magnetometer HMC5883L
- Lampu LED - 8Nos
- 470Ohm Resistor - 8Nos
- Barrel Jack
- Produsen PCB yang andal seperti PCBgogo
- FTDI Programmer untuk mini
- PC / Laptop
Apa itu Magnetometer dan Bagaimana Cara Kerjanya?
Sebelum kita masuk ke sirkuit, mari kita pahami sedikit tentang magnetometer dan cara kerjanya. Seperti namanya, istilah Magneto tidak mengacu pada mutan gila dalam keajaiban yang bisa mengendalikan logam hanya dengan bermain piano di udara. Ohh! Tapi aku suka pria itu, dia keren.
Magnetometer sebenarnya adalah sebuah peralatan yang dapat merasakan kutub magnet bumi dan menunjukkan arah yang sesuai dengan itu. Kita semua tahu bahwa Bumi adalah magnet bola besar dengan Kutub Utara dan Kutub Selatan. Dan ada medan magnet karenanya. Magnetometer merasakan medan magnet ini dan berdasarkan arah medan magnet itu dapat mendeteksi arah yang kita hadapi.
Cara Kerja Modul Sensor HMC5883L
The HMC5883L menjadi sensor magnetometer melakukan hal yang sama. Memiliki IC HMC5883L yang berasal dari Honeywell. IC ini memiliki 3 bahan magnet-resistif di dalamnya yang tersusun dalam sumbu x, y dan z. Jumlah arus yang mengalir melalui bahan-bahan ini sensitif terhadap medan magnet bumi. Jadi dengan mengukur perubahan arus yang mengalir melalui bahan-bahan ini kita dapat mendeteksi perubahan medan magnet bumi. Setelah perubahan medan magnet diserap, nilainya kemudian dapat dikirim ke pengontrol tertanam apa pun seperti mikrokontroler atau prosesor melalui protokol I2C.
Karena sensor bekerja dengan merasakan medan magnet, nilai keluaran akan sangat terpengaruh jika logam ditempatkan di dekatnya. Perilaku ini dapat dimanfaatkan untuk menggunakan sensor ini sebagai detektor logam juga. Berhati-hatilah untuk tidak membawa magnet di dekat sensor ini karena medan magnet yang kuat dari magnet dapat memicu nilai yang salah pada sensor.
Perbedaan antara HMC5883L dan QMC5883L
Ada kebingungan umum seputar sensor ini bagi banyak pemula. Ini karena beberapa vendor (sebenarnya sebagian besar) menjual sensor QMC5883L alih-alih HMC5883L asli dari Honeywell. Ini sebagian besar karena QMC5883L jauh lebih murah daripada modul HMC5883L. Bagian yang menyedihkan adalah cara kerja kedua sensor ini sedikit berbeda dan kode yang sama tidak dapat digunakan untuk keduanya. Ini karena alamat I2C dari kedua sensor tersebut tidak sama. Kode yang diberikan dalam tutorial ini hanya akan berfungsi untuk QMC5883L modul sensor yang umum tersedia.
Untuk mengetahui model sensor yang Anda miliki, Anda hanya perlu melihat IC itu sendiri untuk membaca apa yang tertulis di atasnya. Jika ada tertulis seperti L883 maka itu adalah HMC58836L dan jika ditulis seperti DA5883 maka itu adalah IC QMC5883L. Kedua modul tersebut ditunjukkan pada gambar di bawah ini agar mudah dipahami.
Diagram Sirkuit
Rangkaian untuk Kompas Digital berbasis Arduino ini cukup sederhana, kita cukup menghubungkan sensor HMC5883L dengan Arduino dan menghubungkan 8 LED ke pin GPIO Arduino Pro mini. Diagram sirkuit lengkap ditunjukkan di bawah ini
The Modul Sensor memiliki 5 pin keluar dari mana DRDY (Data Ready) tidak digunakan dalam proyek kami karena kami beroperasi sensor secara kontinyu. Pin Vcc dan ground digunakan untuk menyalakan Modul dengan 5V dari papan Arduino. SCL dan SDA adalah jalur bus komunikasi I2C yang terhubung ke pin A4 dan A5 I2C dari Arduino Pro mini masing-masing. Karena modul itu sendiri memiliki resistor tinggi tarikan pada saluran, tidak perlu menambahkannya secara eksternal.
Untuk menunjukkan arah, kami telah menggunakan 8 LED yang semuanya terhubung ke pin GPIO Arduino melalui resistor pembatas arus 470 Ohm. Sirkuit Lengkap didukung oleh baterai 9V melalui jack barel. 9V ini disediakan langsung ke pin Vin dari Arduino yang diatur ke 5V menggunakan regulator on-board pada Arduino. 5V ini kemudian digunakan untuk menyalakan sensor dan Arduino juga.
Fabrikasi PCB untuk Kompas Digital
Ide rangkaiannya adalah menempatkan 8 LED secara melingkar sehingga setiap Led menunjuk ke 8 arah yaitu Utara, Timur Laut, Timur, Tenggara, Selatan, Barat Daya, Barat dan Barat Laut masing-masing. Jadi tidak mudah untuk mengaturnya dengan rapi di papan tempat memotong roti atau bahkan papan kinerja dalam hal ini. Mengembangkan PCB untuk rangkaian ini akan membuatnya terlihat lebih rapi dan mudah digunakan. Jadi saya membuka perangkat lunak perancangan PCB saya dan menempatkan LED dan resistor dalam pola melingkar yang rapi dan menghubungkan trek untuk membentuk koneksi. Desain saya terlihat seperti ini di bawah ketika selesai. Anda juga dapat mengunduh file Gerber dari tautan yang diberikan di bawah ini.
- Unduh file Gerber untuk Digital Compass PCB
Saya telah merancangnya menjadi papan sisi ganda karena saya ingin Arduino berada di sisi bawah PCB saya sehingga tidak merusak tampilan di atas PCB saya. Jika Anda khawatir bahwa Anda harus membayar tinggi untuk PCB sisi ganda kemudian tunggu saya mendapat yang baru.
Sekarang, setelah Desain kita siap, sekarang saatnya membuatnya dibuat. Untuk menyelesaikan PCB cukup mudah, cukup ikuti langkah-langkah di bawah ini
Langkah 1: Masuk ke www.pcbgogo.com, daftar jika ini adalah pertama kalinya Anda. Kemudian, pada tab Prototipe PCB masukkan dimensi PCB Anda, jumlah lapisan dan jumlah PCB yang Anda butuhkan. PCB saya berukuran 80cm × 80cm jadi tabnya terlihat seperti di bawah ini
Langkah 2: Lanjutkan dengan mengklik tombol Kutip Sekarang . Anda akan dibawa ke halaman di mana untuk mengatur beberapa parameter tambahan jika diperlukan seperti material yang digunakan jarak trek dll. Tetapi sebagian besar nilai default akan berfungsi dengan baik. Satu-satunya hal yang harus kita pertimbangkan di sini adalah harga dan waktu. Seperti yang Anda lihat, Build Time hanya 2-3 hari dan biayanya hanya $ 5 untuk PSB kami. Anda kemudian dapat memilih metode pengiriman yang disukai berdasarkan kebutuhan Anda.
Langkah 3: Langkah terakhir adalah mengunggah file Gerber dan melanjutkan pembayaran. Untuk memastikan prosesnya lancar, PCBGOGO memverifikasi apakah file Gerber Anda valid sebelum melanjutkan pembayaran. Dengan cara ini Anda dapat memastikan bahwa PCB Anda ramah fabrikasi dan akan menghubungi Anda sesuai komitmen.
Merakit PCB
Setelah papan dipesan, itu sampai kepada saya setelah beberapa hari melalui kurir dalam kotak yang diberi label rapi dan seperti biasa kualitas PCBnya luar biasa. Saya membagikan beberapa gambar papan di bawah ini untuk Anda nilai.
Saya menyalakan batang solder saya dan mulai memasang Papan. Karena Footprints, pad, vias, dan silkscreen memiliki bentuk dan ukuran yang tepat, saya tidak mengalami masalah dalam merakit board. Papan itu sudah siap hanya dalam 10 menit dari saat kotak dibongkar.
Beberapa gambar papan setelah penyolderan ditunjukkan di bawah ini.
Memprogram Arduino
Sekarang perangkat keras kita sudah siap, mari kita lihat program yang harus diunggah ke papan Arduino kita. Kode ini bertujuan untuk membaca data dari sensor magnetometer QMC5883L dan mengubahnya menjadi derajat (0 hingga 360). Setelah kita mengetahui derajatnya, kita harus menyalakan LED yang menunjuk ke arah tertentu. Arah yang saya gunakan dalam program ini adalah arah utara. Jadi di mana pun Anda berada, hanya akan ada satu LED yang menyala di papan Anda dan arah LED akan menunjukkan arah UTARA. Setelah nanti bisa menghitung arah lain yang satu arah diketahui.
Kode lengkap untuk Proyek Kompas Digital ini dapat ditemukan di akhir halaman ini. Anda dapat langsung mengunggahnya ke papan Anda setelah memasukkan perpustakaan dan Anda siap untuk pergi. Tapi, jika Anda ingin tahu