Daftar Isi:
- Langkah 1: Perangkat Keras Yang Dibutuhkan:
- Langkah 2: Sambungan Perangkat Keras:
- Langkah 3: Kode Java untuk Mengukur Intensitas Medan Magnet:
- Langkah 4: Aplikasi:
Video: Pengukuran Medan Magnet Menggunakan HMC5883 dan Raspberry Pi: 4 Langkah
2024 Pengarang: John Day | [email protected]. Terakhir diubah: 2024-01-30 09:54
HMC5883 adalah kompas digital yang dirancang untuk penginderaan magnetik medan rendah. Perangkat ini memiliki rentang medan magnet yang luas +/-8 Oe dan tingkat output 160 Hz. Sensor HMC5883 mencakup driver strap degaussing otomatis, pembatalan offset, dan ADC 12-bit yang memungkinkan akurasi arah kompas 1° hingga 2°. Semua Modul Mini I²C dirancang untuk beroperasi pada 5VDC.
Dalam tutorial ini, kami akan menjelaskan cara kerja HMC5883 dengan Raspberry pi dan pemrogramannya menggunakan bahasa pemrograman java.
Langkah 1: Perangkat Keras Yang Dibutuhkan:
Perangkat keras yang diperlukan untuk menyelesaikan tugas adalah sebagai berikut:
1. HMC5883
2. Raspberry Pi
3. Kabel I2C
4. Perisai I2C Untuk Raspberry Pi
5. Kabel Ethernet
Langkah 2: Sambungan Perangkat Keras:
Bagian hookup perangkat keras pada dasarnya menjelaskan koneksi kabel yang diperlukan antara sensor dan raspberry pi. Memastikan koneksi yang benar adalah kebutuhan dasar saat bekerja pada sistem apa pun untuk output yang diinginkan. Jadi, koneksi yang diperlukan adalah sebagai berikut:
HMC5883 akan bekerja melalui I2C. Berikut adalah contoh diagram pengkabelan, yang menunjukkan cara memasang setiap antarmuka sensor.
Out-of-the-box, papan dikonfigurasi untuk antarmuka I2C, karena itu kami sarankan menggunakan hookup ini jika Anda agnostik. Yang Anda butuhkan hanyalah empat kabel!
Hanya empat koneksi yang diperlukan pin Vcc, Gnd, SCL dan SDA dan ini terhubung dengan bantuan kabel I2C.
Koneksi ini ditunjukkan pada gambar di atas.
Langkah 3: Kode Java untuk Mengukur Intensitas Medan Magnet:
Keuntungan menggunakan raspberry pi adalah, yang memberi Anda fleksibilitas bahasa pemrograman di mana Anda ingin memprogram papan untuk menghubungkan sensor dengannya. Memanfaatkan keunggulan papan ini, kami mendemonstrasikan di sini pemrograman di Jawa. Kode java untuk HMC5883 dapat diunduh dari komunitas github kami yaitu Dcube Store.
Selain untuk memudahkan pengguna, kami juga menjelaskan kodenya di sini:
Sebagai langkah pertama pengkodean, Anda perlu mengunduh pustaka pi4j untuk Java, karena pustaka ini mendukung fungsi yang digunakan dalam kode. Nah, untuk mendownload librarynya anda bisa mengunjungi link berikut ini:
pi4j.com/install.html
Anda dapat menyalin kode Java yang berfungsi untuk sensor ini dari sini juga:
impor com.pi4j.io.i2c. I2CBus;
impor com.pi4j.io.i2c. I2CDevice;
mport com.pi4j.io.i2c. I2CFactory;
impor java.io. IOException; kelas publik HMC5883
{
public static void main(String args) melempar Pengecualian
{
// Buat bus I2C
I2CBus Bus = I2CFfactory.getInstance(I2CBus. BUS_1);
// Dapatkan perangkat I2C, alamat I2C HMC5883 adalah 0x1E(30)
Perangkat I2CDevice = Bus.getDevice(0x1E);
// Pilih Daftar konfigurasi A
// Konfigurasi pengukuran normal, kecepatan data o/p = 0,75 Hz
device.write(0x00, (byte)0x60);
// Pilih Mode register
// Mode pengukuran berkelanjutan
device.write(0x02, (byte)0x00);
Thread.sleep(500);
// Baca 6 byte data dari 0x03(3)
// xMag msb, xMag lsb, zMag msb, zMag lsb, yMag msb, yMag lsb
byte data = byte baru[6];
device.read(0x03, data, 0, 6);
// Konversi data
int xMag = ((data[0] & 0xFF) * 256 + (data[1] & 0xFF));
jika (xMag > 32767)
{
xMag -= 65536;
}
int zMag = ((data[2] & 0xFF) * 256 + (data[3] & 0xFF));
jika(zMag > 32767)
{
zMag -= 65536;
}
int yMag = ((data[4] & 0xFF) * 256 + (data[5] & 0xFF));
jika(yMag > 32767)
{
yMag -= 65536;
}
// Keluarkan data ke layar
System.out.printf("Medan magnet pada sumbu X: %d %n", xMag);
System.out.printf("Medan magnet pada Sumbu Y: %d %n", yMag);
System.out.printf("Medan magnet pada Sumbu Z: %d %n", zMag);
}
}
Write() dan read() fungsi digunakan untuk menulis perintah dan membaca output sensor masing-masing. Bagian berikut mengilustrasikan pembacaan nilai medan magnet.
// Baca 6 byte data dari 0x03(3)
// xMag msb, xMag lsb, zMag msb, zMag lsb, yMag msb, yMag lsb
byte data = byte baru[6];
device.read(0x03, data, 0, 6);
Outputnya ditunjukkan pada gambar di atas.
Langkah 4: Aplikasi:
HMC5883 adalah modul multi-chip pemasangan permukaan yang dirancang untuk penginderaan magnet medan rendah dengan antarmuka digital untuk aplikasi seperti kompas dan magnetometri berbiaya rendah. Akurasi dan presisi tingkat tinggi satu hingga dua derajat memungkinkan Navigasi Pejalan Kaki dan Aplikasi LBS.
Direkomendasikan:
Pengukuran Medan Magnet Menggunakan HMC5883 dan Arduino Nano: 4 Langkah
Pengukuran Medan Magnet Menggunakan HMC5883 dan Arduino Nano: HMC5883 adalah kompas digital yang dirancang untuk penginderaan magnet medan rendah. Perangkat ini memiliki rentang medan magnet yang luas +/-8 Oe dan tingkat output 160 Hz. Sensor HMC5883 mencakup driver strap degaussing otomatis, pembatalan offset, dan
Pengukuran Medan Magnet Menggunakan HMC5883 dan Foton Partikel: 4 Langkah
Pengukuran Medan Magnet Menggunakan HMC5883 dan Foton Partikel: HMC5883 adalah kompas digital yang dirancang untuk penginderaan medan magnet rendah. Perangkat ini memiliki rentang medan magnet yang luas +/-8 Oe dan tingkat output 160 Hz. Sensor HMC5883 mencakup driver strap degaussing otomatis, pembatalan offset, dan
Pengukuran Kelembaban dan Suhu Menggunakan HTS221 dan Raspberry Pi: 4 Langkah
Pengukuran Kelembaban dan Suhu Menggunakan HTS221 dan Raspberry Pi: HTS221 adalah sensor digital kapasitif ultra kompak untuk kelembaban dan suhu relatif. Ini mencakup elemen penginderaan dan sirkuit terintegrasi khusus aplikasi sinyal campuran (ASIC) untuk memberikan informasi pengukuran melalui serial digital
Buat Ferit Anda Sendiri untuk Meningkatkan Medan Magnet: 9 Langkah
Buat Ferit Anda Sendiri untuk Meningkatkan Medan Magnet: Perbarui 09/05/2018: Saya melakukannya lagi, selamat menikmati! Perbarui 07/07/2015: Saya menemukan solusi yang tepat - periksa langkah terakhir! Bagaimana semuanya dimulai Anda mungkin bertanya-tanya, jadi saya akan memberi tahu Anda;) Anda mungkin telah melihat Instruksi saya untuk Pemanas Induksi Sederhana dan dengan
Sensor Medan Magnet 3-Sumbu: 10 Langkah (dengan Gambar)
Sensor Medan Magnet 3-Sumbu: Sistem transfer daya nirkabel sedang dalam perjalanan untuk menggantikan pengisian kabel konvensional. Mulai dari implan biomedis kecil hingga pengisian ulang kendaraan listrik besar secara nirkabel. Bagian integral dari penelitian tentang daya nirkabel adalah