Isi kandungan:
- Langkah 1: Gambaran Keseluruhan BMG160:
- Langkah 2: Apa yang Anda Perlu..
- Langkah 3: Penyambungan Perkakasan:
- Langkah 4: Kod Zarah Pengukuran Giroskop 3-Paksi:
- Langkah 5: Aplikasi:
Video: Antara muka Sensor Giroskop 3-Paksi BMG160 Dengan Zarah: 5 Langkah
2024 Pengarang: John Day | [email protected]. Diubah suai terakhir: 2024-01-30 11:09
Di dunia sekarang ini, lebih daripada separuh belia dan kanak-kanak gemar bermain permainan dan semua yang menyukainya, terpesona dengan aspek teknikal permainan mengetahui pentingnya penginderaan gerakan dalam domain ini. Kami juga kagum dengan perkara yang sama dan hanya untuk membawanya ke papan, kami memikirkan untuk menggunakan sensor giroskop yang dapat mengukur kadar sudut objek apa pun. Jadi, sensor yang kami gunakan untuk menangani tugas tersebut adalah BMG160. BMG160 adalah sensor giroskop 16-bit, digital, triaksial, yang dapat mengukur kadar sudut dalam tiga dimensi ruang tegak lurus.
Dalam tutorial ini, kita akan menunjukkan cara kerja BMG160 dengan Particle Photon.
Perkakasan yang anda perlukan untuk tujuan ini adalah seperti berikut:
1. BMG160
2. Foton zarah
3. Kabel I2C
4. Perisai I2C untuk Foton Zarah
Langkah 1: Gambaran Keseluruhan BMG160:
Pertama sekali, kami ingin membiasakan anda dengan ciri asas modul sensor iaitu BMG160 dan protokol komunikasi yang berfungsi.
BMG160 pada dasarnya adalah sensor giroskop 16-bit, digital, triaksial, yang dapat mengukur kadar sudut. Ia mampu mengira kadar sudut dalam tiga dimensi ruang tegak lurus, paksi x-, y- dan z, dan memberikan isyarat output yang sesuai. Ia boleh berkomunikasi dengan papan raspberry pi menggunakan protokol komunikasi I2C. Modul khusus ini dirancang untuk memenuhi keperluan untuk aplikasi pengguna dan juga keperluan industri.
Protokol komunikasi di mana sensor berfungsi adalah I2C. I2C bermaksud litar antara bersepadu. Ini adalah protokol komunikasi di mana komunikasi berlaku melalui talian SDA (data bersiri) dan SCL (jam bersiri). Ia membolehkan menyambungkan pelbagai peranti pada masa yang sama. Ini adalah salah satu protokol komunikasi yang paling mudah dan berkesan.
Langkah 2: Apa yang Anda Perlu..
Bahan yang kami perlukan untuk mencapai tujuan kami merangkumi komponen perkakasan berikut:
1. BMG160
2. Foton Zarah
3. Kabel I2C
4. Perisai I2C Untuk Foton Zarah
Langkah 3: Penyambungan Perkakasan:
Bahagian penyambungan perkakasan pada dasarnya menerangkan sambungan pendawaian yang diperlukan antara sensor dan Partikel. Memastikan sambungan yang betul adalah keperluan asas semasa mengerjakan sistem apa pun untuk output yang diinginkan. Jadi, sambungan yang diperlukan adalah seperti berikut:
BMG160 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 4: Kod Zarah Pengukuran Giroskop 3-Paksi:
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 BMG160 I2C adalah 0x68 (104)
#tentukan Addr 0x68
int xGyro = 0, yGyro = 0, zGyro = 0;
persediaan tidak sah ()
{
// Tetapkan pemboleh ubah
Particle.variable ("i2cdevice", "BMG160");
Particle.variable ("xGyro", xGyro);
Particle.variable ("yGyro", yGyro);
Particle.variable ("zGyro", zGyro);
// Memulakan komunikasi I2C sebagai MASTER
Wire.begin ();
// Memulakan Komunikasi Bersiri
Serial.begin (9600);
// Mulakan Penghantaran I2C
Wire.beginTransmission (Addr);
// Pilih Range register
Wire.write (0x0F);
// Konfigurasikan skala penuh 2000 dps
Wire.write (0x80);
// Hentikan Penghantaran I2C
Wire.endTransmission ();
// Mulakan Penghantaran I2C
Wire.beginTransmission (Addr);
// Pilih daftar lebar jalur
Wire.write (0x10);
// Tetapkan Lebar Jalur = 200 Hz
Wire.write (0x04);
// 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 (0x02);
// Hentikan Penghantaran I2C
Wire.endTransmission ();
// Minta 6 bait data
Wire.requestFrom (Addr, 6);
// Baca 6 bait data
// xGyro lsb, xGyro msb, yGyro lsb, yGyro msb, zGyro lsb, zGyro msb
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
xGyro = ((data [1] * 256) + data [0]);
jika (xGyro> 32767)
{
xGyro - = 65536;
}
yGyro = ((data [3] * 256) + data [2]);
jika (yGyro> 32767)
{
yGyro - = 65536;
}
zGyro = ((data [5] * 256) + data [4]);
jika (zGyro> 32767)
{
zGyro - = 65536;
}
// Keluarkan data ke papan pemuka
Particle.publish ("X-Axis of Rotation:", String (xGyro));
Particle.publish ("Y-Axis of Rotation:", String (yGyro));
Particle.publish ("Z-Axis of Rotation:", String (zGyro));
kelewatan (1000);
}
Langkah 5: Aplikasi:
BMG160 memiliki sejumlah aplikasi yang bervariasi dalam peranti seperti telefon bimbit, perangkat antara muka mesin manusia. Modul sensor ini telah dirancang untuk memenuhi keperluan untuk aplikasi pengguna seperti penstabilan gambar (DSC dan kamera-telefon), permainan dan peranti penunjuk. Ini juga digunakan dalam sistem yang memerlukan pengenalan gerakan dan sistem yang digunakan dalam navigasi dalam ruangan.
Disyorkan:
Antara muka Sensor Giroskop 3-Axis BMG160 Dengan Arduino Nano: 5 Langkah
Antaramuka Sensor Giroskop 3-Axis BMG160 Dengan Arduino Nano: Di dunia sekarang, lebih daripada separuh belia dan kanak-kanak gemar bermain permainan dan semua yang menyukainya, terpesona dengan aspek teknikal permainan mengetahui pentingnya penginderaan gerakan dalam domain ini. Kami juga kagum dengan perkara yang sama
Antara muka Sensor Giroskop 3-Axis BMG160 Dengan Raspberry Pi: 5 Langkah
Antaramuka Sensor Giroskop 3-Axis BMG160 Dengan Raspberry Pi: Di dunia sekarang, lebih daripada separuh belia dan kanak-kanak gemar bermain permainan dan semua yang menyukainya, terpesona dengan aspek teknikal permainan mengetahui pentingnya penginderaan gerakan dalam domain ini. Kami juga kagum dengan perkara yang sama
Tangki Raspberry Dengan Antara Muka Web dan Streaming Video: 8 Langkah (dengan Gambar)
Tangki Raspberry Dengan Antara Muka Web dan Penstriman Video: Kami akan melihat bagaimana saya telah menyedari sedikit Tangki WiFi, yang mampu melakukan Kawalan Web jarak jauh dan Streaming Video. Ini bertujuan untuk menjadi tutorial yang memerlukan pengetahuan asas mengenai pengaturcaraan elektronik dan perisian. Atas sebab ini saya ' telah memilih
Tutorial Cara Memaparkan Antara Muka 4-Digit Dengan Arduino UNO: 6 Langkah (dengan Gambar)
Tutorial Cara Memaparkan Tampilan 4-Digit Dengan Arduino UNO: Tutorial ini akan mengajar anda beberapa asas menggunakan 4- Digit Display dengan Arduino UNO
Antara Muka Keypad Dengan 8051 dan Memaparkan Nombor Papan Kekunci dalam 7 Segmen: 4 Langkah (dengan Gambar)
Antaramuka Papan Kekunci Dengan 8051 dan Memaparkan Nombor Papan Kekunci dalam 7 Segmen: Dalam tutorial ini saya akan memberitahu anda tentang bagaimana kita dapat antara muka pad kekunci dengan 8051 dan memaparkan nombor keypad dalam paparan 7 segmen