Isi kandungan:
- Langkah 1: Perkakasan Diperlukan:
- Langkah 2: Penyambungan Perkakasan:
- Langkah 3: Kod untuk Mengukur Keamatan Medan Magnetik:
- Langkah 4: Aplikasi:
Video: Pengukuran Medan Magnetik Menggunakan HMC5883 dan Foton Zarah: 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 foton zarah. Partikel foton adalah papan yang memudahkan pengiriman dan penerimaan data dari laman web, yang menyokong ciri paling asas dari Internet Of Things (IoT).
Langkah 1: Perkakasan Diperlukan:
Bahan yang kami perlukan untuk mencapai tujuan kami merangkumi komponen perkakasan berikut:
1. HMC5883
2. Foton Zarah
3. Kabel I2C
4. Perisai I2C untuk Foton Zarah
Langkah 2: Penyambungan Perkakasan:
Bahagian penyambungan perkakasan pada dasarnya menerangkan sambungan pendawaian yang diperlukan antara sensor dan foton zarah. 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 untuk Mengukur Keamatan Medan Magnetik:
Mari mulakan dengan kod zarah sekarang.
Semasa menggunakan modul sensor dengan Arduino, kami menyertakan library application.h dan spark_wiring_i2c.h. Perpustakaan "application.h" dan spark_wiring_i2c.h mengandungi fungsi yang memudahkan komunikasi i2c antara sensor dan zarah.
Keseluruhan kod zarah diberikan di bawah untuk kemudahan pengguna:
#sertakan
#sertakan
// Alamat HMC5883 I2C adalah 0x1E (30)
#tentukan Addr 0x1E
int xMag = 0, yMag = 0, zMag = 0;
persediaan tidak sah ()
{
// Tetapkan pemboleh ubah
Particle.variable ("i2cdevice", "HMC5883");
Particle.variable ("xMag", xMag);
Particle.variable ("yMag", yMag);
Particle.variable ("zMag", zMag);
// Memulakan komunikasi I2C sebagai MASTER
Wire.begin ();
// Inisialisasi Serial Communication, tetapkan baud rate = 9600
Serial.begin (9600);
// Mulakan Penghantaran I2C
Wire.beginTransmission (Addr);
// Pilih konfigurasi register A
Wire.write (0x00);
// Tetapkan konfigurasi pengukuran normal, laju output data = 0.75Hz
Wire.write (0x60);
// Hentikan Penghantaran I2C
Wire.endTransmission ();
// Mulakan Penghantaran I2C
Wire.beginTransmission (Addr);
// Pilih Daftar mod
Wire.write (0x02);
// Tetapkan pengukuran berterusan
Wire.write (0x00);
// Hentikan Penghantaran I2C
Wire.endTransmission ();
kelewatan (300);
}
gelung kosong ()
{
data int yang tidak ditandatangani [6];
// Mulakan Penghantaran I2C
Wire.beginTransmission (Addr);
// Pilih daftar data
Wire.write (0x03);
// Hentikan Penghantaran I2C
Wire.endTransmission ();
// Minta 6 bait data
Wire.requestFrom (Addr, 6);
// Baca 6 bait data
// xMag msb, xMag lsb, zMag msb, zMag lsb, yMag msb, yMag lsb
jika (Wire.available () == 6)
{
data [0] = Wire.read ();
data [1] = Wire.read ();
data [2] = Wire.read ();
data [3] = Wire.read ();
data [4] = Wire.read ();
data [5] = Wire.read ();
}
kelewatan (300);
// Tukarkan 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 papan pemuka
Particle.publish ("Medan Magnetik dalam X-Axis:", String (xMag));
kelewatan (1000);
Particle.publish ("Medan Magnetik dalam Y-Axis:", String (yMag));
kelewatan (1000);
Particle.publish ("Medan Magnetik dalam Z-Paksi:", Rentetan (zMag));
kelewatan (1000);
}
Fungsi Particle.variable () mencipta pemboleh ubah untuk menyimpan output sensor dan fungsi Particle.publish () memaparkan output di papan pemuka laman web.
Output sensor ditunjukkan dalam gambar di atas untuk rujukan anda.
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 Raspberry Pi: 4 Langkah
Pengukuran Medan Magnetik Menggunakan HMC5883 dan Raspberry Pi: 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 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 Kelembapan Menggunakan HYT939 dan Foton Zarah: 4 Langkah
Pengukuran Kelembapan Menggunakan HYT939 dan Foton Partikel: HYT939 adalah sensor kelembapan digital yang berfungsi pada protokol komunikasi I2C. Kelembapan adalah parameter penting dalam sistem perubatan dan makmal. Oleh itu, untuk mencapai tujuan ini, kami berusaha untuk menghubungkan HYT939 dengan raspberry pi. Saya
Pengukuran Kelembapan dan Suhu Menggunakan HIH6130 dan Foton Zarah: 4 Langkah
Pengukuran Kelembapan dan Suhu Menggunakan HIH6130 dan Foton Partikel: HIH6130 adalah sensor kelembapan dan suhu dengan output digital. Sensor ini memberikan tahap ketepatan ± 4% RH. Dengan kestabilan jangka panjang yang terkemuka di industri, I2C digital yang diberi pampasan suhu sebenar, kebolehpercayaan terkemuka di industri, kecekapan tenaga
Pengukuran Kelembapan dan Suhu Menggunakan HTS221 dan Foton Zarah: 4 Langkah
Pengukuran Kelembapan dan Suhu Menggunakan HTS221 dan Foton Partikel: 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