Daftar Isi:
- Langkah 1: Perangkat Keras Yang Dibutuhkan:
- Langkah 2: Sambungan Perangkat Keras:
- Langkah 3: Kode untuk Mengukur Intensitas Medan Magnet:
- Langkah 4: Aplikasi:
Video: Pengukuran Medan Magnet Menggunakan HMC5883 dan Foton Partikel: 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, kita akan menjelaskan detail kerja HMC5883 dengan partikel foton. Partikel foton adalah papan yang memfasilitasi pengiriman dan penerimaan data dari situs web, yang mendukung fitur paling dasar dari Internet Of Things (IoT).
Langkah 1: Perangkat Keras Yang Dibutuhkan:
Bahan yang kami butuhkan untuk mencapai tujuan kami meliputi komponen perangkat keras berikut:
1. HMC5883
2. Foton Partikel
3. Kabel I2C
4. Perisai I2C untuk Foton Partikel
Langkah 2: Sambungan Perangkat Keras:
Bagian hookup perangkat keras pada dasarnya menjelaskan koneksi kabel yang diperlukan antara sensor dan foton partikel. 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 untuk Mengukur Intensitas Medan Magnet:
Mari kita mulai dengan kode partikel sekarang.
Saat menggunakan modul sensor dengan Arduino, kami menyertakan library application.h dan spark_wiring_i2c.h. Pustaka "application.h" dan spark_wiring_i2c.h berisi fungsi-fungsi yang memfasilitasi komunikasi i2c antara sensor dan partikel.
Seluruh kode partikel diberikan di bawah ini untuk kenyamanan pengguna:
#termasuk
#termasuk
// Alamat I2C HMC5883 adalah 0x1E(30)
#define Addr 0x1E
int xMag = 0, yMag = 0, zMag = 0;
batalkan pengaturan()
{
// Tetapkan variabel
Particle.variable("i2cdevice", "HMC5883");
Particle.variable("xMag", xMag);
Particle.variable("yMag", yMag);
Particle.variable("zMag", zMag);
// Inisialisasi komunikasi I2C sebagai MASTER
Kawat.mulai();
// Inisialisasi Komunikasi Serial, setel baud rate = 9600
Serial.begin(9600);
// Mulai Transmisi I2C
Wire.beginTransmission(Addr);
// Pilih konfigurasikan register A
Kawat.tulis (0x00);
// Atur konfigurasi pengukuran normal, tingkat keluaran data = 0,75Hz
Kawat.tulis (0x60);
// Hentikan Transmisi I2C
Kawat.endTransmisi();
// Mulai Transmisi I2C
Wire.beginTransmission(Addr);
// Pilih Mode register
Kawat.tulis (0x02);
// Tetapkan pengukuran berkelanjutan
Kawat.tulis (0x00);
// Hentikan Transmisi I2C
Kawat.endTransmisi();
penundaan (300);
}
lingkaran kosong()
{
data int yang tidak ditandatangani[6];
// Mulai Transmisi I2C
Wire.beginTransmission(Addr);
// Pilih daftar data
Kawat.tulis (0x03);
// Hentikan Transmisi I2C
Kawat.endTransmisi();
// Meminta 6 byte data
Wire.requestFrom(Addr, 6);
// Baca 6 byte data
// xMag msb, xMag lsb, zMag msb, zMag lsb, yMag msb, yMag lsb
if(Wire.available() == 6)
{
data[0] = Wire.read();
data[1] = Kawat.baca();
data[2] = Wire.read();
data[3] = Wire.read();
data[4] = Kawat.baca();
data[5] = Wire.read();
}
penundaan (300);
// Konversi data
xMag = ((data[0] * 256) + data[1]);
jika (xMag > 32767)
{
xMag -= 65536;
}
zMag = ((data[2] * 256) + data[3]);
jika(zMag > 32767)
{
zMag -= 65536;
}
yMag = ((data[4] * 256) + data[5]);
jika(yMag > 32767)
{
yMag -= 65536;
}
// Keluarkan data ke dasbor
Particle.publish("Medan Magnet pada Sumbu X: ", String(xMag));
penundaan (1000);
Particle.publish("Medan Magnet pada Sumbu Y: ", String(yMag));
penundaan (1000);
Particle.publish("Medan Magnet pada Sumbu Z: ", String(zMag));
penundaan (1000);
}
Fungsi Particle.variable() membuat variabel untuk menyimpan output sensor dan fungsi Particle.publish() menampilkan output di dasbor situs.
Output sensor ditunjukkan pada gambar di atas untuk referensi Anda.
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 Raspberry Pi: 4 Langkah
Pengukuran Medan Magnet Menggunakan HMC5883 dan Raspberry Pi: 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 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 Kelembaban dan Suhu Menggunakan HIH6130 dan Foton Partikel: 4 Langkah
Pengukuran Kelembaban dan Suhu Menggunakan HIH6130 dan Foton Partikel: HIH6130 adalah sensor kelembaban dan suhu dengan output digital. Sensor ini memberikan tingkat akurasi ±4% RH. Dengan stabilitas jangka panjang terdepan di industri, I2C digital dengan kompensasi suhu sejati, keandalan terdepan di industri, Efisiensi energi
Pengukuran Suhu dan Kelembaban Menggunakan HDC1000 dan Foton Partikel: 4 Langkah
Pengukuran Suhu dan Kelembaban Menggunakan HDC1000 dan Foton Partikel: HDC1000 adalah sensor kelembaban digital dengan sensor suhu terintegrasi yang memberikan akurasi pengukuran yang sangat baik pada daya yang sangat rendah. Perangkat mengukur kelembaban berdasarkan sensor kapasitif baru. Sensor kelembaban dan suhu adalah fak
Pengukuran Kelembaban dan Suhu Menggunakan HTS221 dan Foton Partikel: 4 Langkah
Pengukuran Kelembaban dan Suhu Menggunakan HTS221 dan Foton Partikel: 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