Daftar Isi:
- Langkah 1: Ikhtisar BMG160:
- Langkah 2: Yang Anda Butuhkan.
- Langkah 3: Sambungan Perangkat Keras:
- Langkah 4: Pengukuran Giroskop 3-Axis Kode Arduino:
- Langkah 5: Aplikasi:
Video: Antarmuka Sensor Giroskop 3-Sumbu BMG160 Dengan Arduino Nano: 5 Langkah
2024 Pengarang: John Day | [email protected]. Terakhir diubah: 2024-01-30 09:54
Di dunia saat ini, lebih dari separuh remaja dan anak-anak menyukai game dan semua orang yang menyukainya, terpesona oleh aspek teknis game, mengetahui pentingnya penginderaan gerak dalam domain ini. Kami juga kagum dengan hal yang sama dan hanya untuk membawanya ke papan, kami berpikir untuk bekerja pada sensor giroskop yang dapat mengukur laju sudut objek apa pun. Jadi, sensor yang kami pakai untuk menangani tugas tersebut adalah BMG160. BMG160 adalah sensor giroskop 16-bit, digital, triaksial, yang dapat mengukur laju sudut dalam tiga dimensi ruang yang tegak lurus.
Dalam tutorial ini, kita akan mendemonstrasikan cara kerja BMG160 dengan Arduino Nano.
Perangkat keras yang Anda perlukan untuk tujuan ini adalah sebagai berikut:
1. BMG160
2. Arduino Nano
3. Kabel I2C
4. Perisai I2C Untuk Arduino Nano
Langkah 1: Ikhtisar BMG160:
Pertama-tama kami ingin membiasakan Anda dengan fitur dasar modul sensor yaitu BMG160 dan protokol komunikasi yang digunakannya.
BMG160 pada dasarnya adalah sensor giroskop 16-bit, digital, triaksial, yang dapat mengukur kecepatan sudut. Hal ini mampu menghitung tingkat sudut dalam tiga dimensi ruang tegak lurus, sumbu x-, y- dan z, dan memberikan sinyal output yang sesuai. Itu dapat berkomunikasi dengan papan raspberry pi menggunakan protokol komunikasi I2C. Modul khusus ini dirancang untuk memenuhi persyaratan untuk aplikasi konsumen serta keperluan industri.
Protokol komunikasi tempat sensor bekerja adalah I2C. I2C adalah singkatan dari inter-integrated circuit. Ini adalah protokol komunikasi di mana komunikasi terjadi melalui jalur SDA (data serial) dan SCL (jam serial). Ini memungkinkan menghubungkan beberapa perangkat secara bersamaan. Ini adalah salah satu protokol komunikasi yang paling sederhana dan paling efisien.
Langkah 2: Yang Anda Butuhkan.
Bahan yang kami butuhkan untuk mencapai tujuan kami meliputi komponen perangkat keras berikut:
1. BMG160
2. Arduino Nano
3. Kabel I2C
4. Perisai I2C untuk Arduino Nano
Langkah 3: Sambungan Perangkat Keras:
Bagian hookup perangkat keras pada dasarnya menjelaskan koneksi kabel yang diperlukan antara sensor dan Arduino. Memastikan koneksi yang benar adalah kebutuhan dasar saat bekerja pada sistem apa pun untuk output yang diinginkan. Jadi, koneksi yang diperlukan adalah sebagai berikut:
BMG160 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 4: Pengukuran Giroskop 3-Axis Kode Arduino:
Mari kita mulai dengan kode arduino sekarang.
Saat menggunakan modul sensor dengan arduino, kami menyertakan pustaka Wire.h. Pustaka "Wire" berisi fungsi-fungsi yang memfasilitasi komunikasi i2c antara sensor dan board arduino.
Seluruh kode arduino diberikan di bawah ini untuk kenyamanan pengguna:
#include// Alamat I2C BMG160 adalah 0x68(104)
#definisikan Addr 0x68
batalkan pengaturan()
{
// Inisialisasi komunikasi I2C sebagai MASTER
Kawat.mulai();
// Inisialisasi Komunikasi Serial, setel baud rate = 9600
Serial.begin(9600);
// Mulai Transmisi I2C
Wire.beginTransmission(Addr);
// Pilih Daftar rentang
Wire.write(0x0F);
// Konfigurasi rentang skala penuh 2000 dps
Kawat.tulis (0x80);
// Hentikan Transmisi I2C
Kawat.endTransmisi();
// Mulai Transmisi I2C
Wire.beginTransmission(Addr);
// Pilih daftar Bandwidth
Kawat.tulis (0x10);
// Setel bandwidth = 200 Hz
Kawat.tulis (0x04);
// Hentikan Transmisi I2C
Kawat.endTransmisi();
penundaan (300);
}
lingkaran kosong()
{
data int yang tidak ditandatangani[6];
// Mulai Transmisi I2C
Wire.beginTransmission(Addr);
// Pilih daftar data Girometer
Kawat.tulis (0x02);
// Hentikan Transmisi I2C
Kawat.endTransmisi();
// Meminta 6 byte data
Wire.requestFrom(Addr, 6);
// Baca 6 byte data
// xGyro lsb, xGyro msb, yGyro lsb, yGyro msb, zGyro lsb, zGyro msb
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
int xGyro = ((data[1] * 256) + data[0]);
int yGyro = ((data[3] * 256) + data[2]);
int zGyro = ((data[5] * 256) + data[4]);
// Keluarkan data ke monitor serial
Serial.print("Sumbu X dari Rotasi: ");
Serial.println(xGyro); Serial.print("Sumbu Rotasi Y: ");
Serial.println(yGyro); Serial.print("Sumbu Z dari Rotasi: ");
Serial.println(zGyro);
penundaan (500);
}
Langkah 5: Aplikasi:
BMG160 memiliki beragam jumlah aplikasi di perangkat seperti ponsel, perangkat antarmuka mesin manusia. Modul sensor ini telah dirancang untuk memenuhi persyaratan untuk aplikasi konsumen seperti stabilisasi gambar (DSC dan ponsel kamera), game, dan perangkat penunjuk. Ini juga digunakan dalam sistem yang memerlukan pengenalan gerakan dan sistem yang digunakan dalam navigasi dalam ruangan.
Direkomendasikan:
Memulai Dengan Antarmuka Sensor I2C?? - Antarmuka MMA8451 Anda Menggunakan ESP32: 8 Langkah
Memulai Dengan Antarmuka Sensor I2C?? - Antarmuka MMA8451 Anda Menggunakan ESP32: Dalam tutorial ini, Anda akan mempelajari semua tentang Cara memulai, menghubungkan, dan membuat perangkat I2C (Akselerometer) bekerja dengan pengontrol (Arduino, ESP32, ESP8266, ESP12 NodeMCU)
Antarmuka Arduino Dengan Sensor Ultrasonik dan Sensor Suhu Tanpa Kontak: 8 Langkah
Antarmuka Arduino Dengan Sensor Ultrasonik dan Sensor Suhu Tanpa Kontak: Saat ini, Pembuat, Pengembang lebih memilih Arduino untuk pengembangan prototipe proyek yang cepat. Arduino adalah platform elektronik open-source berdasarkan perangkat keras dan perangkat lunak yang mudah digunakan. Arduino memiliki komunitas pengguna yang sangat baik. Dalam proyek ini
Antarmuka Sensor Giroskop 3-Axis BMG160 Dengan Raspberry Pi: 5 Langkah
Antarmuka Sensor Giroskop 3-Sumbu BMG160 Dengan Raspberry Pi: Di dunia sekarang ini, lebih dari separuh remaja dan anak-anak menyukai game dan semua yang menyukainya, terpesona oleh aspek teknis game, mengetahui pentingnya penginderaan gerak dalam domain ini. Kami juga kagum dengan hal yang sama dan
Arduino Nano dan Visuino: Konversi Akselerasi ke Sudut Dari Akselerometer dan Giroskop Sensor MPU6050 I2C: 8 Langkah (dengan Gambar)
Arduino Nano dan Visuino: Konversi Akselerasi ke Sudut Dari Sensor Akselerometer dan Giroskop MPU6050 I2C: Beberapa waktu yang lalu saya memposting tutorial tentang bagaimana Anda dapat menghubungkan Sensor Akselerometer, Giroskop, dan Kompas MPU9250 ke Arduino Nano dan memprogramnya dengan Visuino untuk mengirim data paket dan tampilan pada Scope dan Instrumen Visual. Accelerometer mengirimkan X, Y
Arduino Nano: Sensor Accelerometer Giroskop Kompas MPU9250 I2C Dengan Visuino: 11 Langkah
Arduino Nano: Accelerometer Gyroscope Compass Sensor MPU9250 I2C Dengan Visuino: MPU9250 adalah salah satu sensor gabungan Accelerometer, Giroskop, dan Kompas ukuran kecil yang tersedia saat ini. Mereka memiliki banyak fitur canggih, termasuk penyaringan lolos rendah, deteksi gerakan, dan bahkan prosesor khusus yang dapat diprogram