Isi kandungan:
- Langkah 1: Perkakasan Diperlukan:
- Langkah 2: Penyambungan Perkakasan:
- Langkah 3: Kod Java untuk Mengukur Intensiti Medan Magnetik:
- Langkah 4: Aplikasi:
Video: Pengukuran Medan Magnetik Menggunakan HMC5883 dan Raspberry Pi: 4 Langkah
2024 Pengarang: John Day | [email protected]. Diubah suai terakhir: 2024-01-30 11:07
HMC5883 adalah kompas digital yang direka untuk penderiaan medan rendah. Peranti ini mempunyai jarak medan magnet yang luas +/- 8 Oe dan kadar output 160 Hz. Sensor HMC5883 merangkumi pemacu tali degaussing automatik, pembatalan offset, dan ADC 12-bit yang memungkinkan ketepatan tajuk kompas 1 ° hingga 2 °. Semua Modul Mini I²C direka untuk beroperasi pada 5VDC.
Dalam tutorial ini, kita akan menerangkan kerja terperinci HMC5883 dengan Raspberry pi dan pengaturcaraannya menggunakan bahasa pengaturcaraan java.
Langkah 1: Perkakasan Diperlukan:
Perkakasan yang diperlukan untuk menyelesaikan tugas adalah seperti berikut:
1. HMC5883
2. Raspberry Pi
3. Kabel I2C
4. Perisai I2C Untuk Raspberry Pi
5. Kabel Ethernet
Langkah 2: Penyambungan Perkakasan:
Bahagian penyambungan perkakasan pada dasarnya menerangkan sambungan pendawaian yang diperlukan antara sensor dan raspberry pi. Memastikan sambungan yang betul adalah keperluan asas semasa mengerjakan sistem apa pun untuk output yang diinginkan. Jadi, sambungan yang diperlukan adalah seperti berikut:
HMC5883 akan berfungsi di atas I2C. Berikut adalah contoh rajah pendawaian, yang menunjukkan cara memasang setiap antara muka sensor.
Di luar kotak, papan dikonfigurasikan untuk antara muka I2C, oleh itu kami mengesyorkan menggunakan penyambungan ini jika anda tidak agnostik. Yang anda perlukan hanyalah empat wayar!
Hanya diperlukan empat sambungan pin Vcc, Gnd, SCL dan SDA dan ini disambungkan dengan bantuan kabel I2C.
Sambungan ini ditunjukkan dalam gambar di atas.
Langkah 3: Kod Java untuk Mengukur Intensiti Medan Magnetik:
Kelebihan menggunakan raspberry pi adalah, yang memberi anda fleksibiliti bahasa pengaturcaraan di mana anda ingin memprogram papan untuk menghubungkan antara sensor dengannya. Dengan memanfaatkan kelebihan papan ini, kami menunjukkan di sini programnya di Java. Kod java untuk HMC5883 boleh dimuat turun dari komuniti github kami iaitu Dcube Store.
Serta untuk kemudahan pengguna, kami menerangkan kodnya di sini juga:
Sebagai langkah pertama pengekodan, anda perlu memuat turun pustaka pi4j sekiranya terdapat java, kerana perpustakaan ini menyokong fungsi yang digunakan dalam kod. Oleh itu, untuk memuat turun perpustakaan anda boleh melayari pautan berikut:
pi4j.com/install.html
Anda boleh menyalin kod java yang berfungsi untuk sensor ini dari sini juga:
import com.pi4j.io.i2c. I2CBus;
import com.pi4j.io.i2c. I2CDevice;
mport com.pi4j.io.i2c. I2CFactory;
import java.io. IOException; kelas awam HMC5883
{
utama kekosongan statik awam (String args ) melontarkan Pengecualian
{
// Buat bas I2C
Bas I2CBus = I2CFactory.getInstance (I2CBus. BUS_1);
// Dapatkan peranti I2C, alamat HMC5883 I2C adalah 0x1E (30)
Peranti I2CDevice = Bus.getDevice (0x1E);
// Pilih Configuration register A
// Konfigurasi pengukuran normal, kadar data o / p = 0,75 Hz
device.write (0x00, (byte) 0x60);
// Pilih Daftar mod
// Mod pengukuran berterusan
device.write (0x02, (bait) 0x00);
Thread.sleep (500);
// Baca 6 bait data dari 0x03 (3)
// xMag msb, xMag lsb, zMag msb, zMag lsb, yMag msb, yMag lsb
bait data = bait baru [6];
device.read (0x03, data, 0, 6);
// Tukarkan 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 skrin
System.out.printf ("Medan magnet dalam X-Axis:% d% n", xMag);
System.out.printf ("Medan magnet dalam Y-Axis:% d% n", yMag);
System.out.printf ("Medan magnet dalam Z-Paksi:% d% n", zMag);
}
}
Fungsi Write () dan read () digunakan untuk menulis perintah dan membaca output sensor masing-masing. Bahagian berikut menggambarkan pembacaan nilai medan magnet.
// Baca 6 bait data dari 0x03 (3)
// xMag msb, xMag lsb, zMag msb, zMag lsb, yMag msb, yMag lsb
bait data = bait baru [6];
device.read (0x03, data, 0, 6);
Keluaran ditunjukkan dalam gambar di atas.
Langkah 4: Aplikasi:
HMC5883 adalah modul multi-chip permukaan-mount yang direka untuk penginderaan magnet medan rendah dengan antara muka digital untuk aplikasi seperti kompas dan magnetometri kos rendah. Ketepatan dan ketepatan tahap tinggi satu hingga dua darjah membolehkan Navigasi Pejalan Kaki dan Aplikasi LBS.
Disyorkan:
Pengukuran Medan Magnetik Menggunakan HMC5883 dan Arduino Nano: 4 Langkah
Pengukuran Medan Magnetik Menggunakan HMC5883 dan Arduino Nano: HMC5883 adalah kompas digital yang direka untuk penderiaan medan rendah. Peranti ini mempunyai jarak medan magnet yang luas +/- 8 Oe dan kadar output 160 Hz. Sensor HMC5883 merangkumi pemacu tali degaussing automatik, pembatalan ofset, dan
Pengukuran Medan Magnetik Menggunakan HMC5883 dan Foton Zarah: 4 Langkah
Pengukuran Medan Magnetik Menggunakan HMC5883 dan Foton Partikel: HMC5883 adalah kompas digital yang direka untuk penderiaan medan rendah. Peranti ini mempunyai jarak medan magnet yang luas +/- 8 Oe dan kadar output 160 Hz. Sensor HMC5883 merangkumi pemacu tali degaussing automatik, pembatalan ofset, dan
Pengukuran Kelembapan dan Suhu Menggunakan HTS221 dan Raspberry Pi: 4 Langkah
Pengukuran Kelembapan dan Suhu Menggunakan HTS221 dan Raspberry Pi: HTS221 adalah sensor digital kapasitif ultra kompak untuk kelembapan dan suhu relatif. Ini termasuk elemen penginderaan dan litar bersepadu khusus aplikasi isyarat campuran (ASIC) untuk memberikan maklumat pengukuran melalui siri digital
Buat Ferit Sendiri untuk Meningkatkan Medan Magnetik: 9 Langkah
Buat Ferit Sendiri untuk Meningkatkan Medan Magnetik: Kemas kini 05/09/2018: Saya melakukannya lagi, nikmati! Kemas kini 03/07/2015: Saya menemui penyelesaian yang tepat - periksa langkah terakhir! Bagaimana semuanya bermula yang mungkin anda tertanya-tanya, jadi saya akan memberitahu anda;) Anda mungkin telah melihat Instruksiku untuk Pemanas Induksi Mudah dan dengan
Sensor Medan Magnetik 3-Paksi: 10 Langkah (dengan Gambar)
Sensor Medan Magnetik 3-Paksi: Sistem pemindahan kuasa tanpa wayar sedang dalam perjalanan untuk menggantikan pengecasan berwayar konvensional. Mulai dari implan bioperubatan kecil hingga pengisian semula kenderaan elektrik besar tanpa wayar. Bahagian penting dari penyelidikan mengenai kuasa tanpa wayar adalah