Jika Anda ingin mengintegrasikan sensor 9 derajat kebebasan (9-DOF) ke dalam proyek Arduino Anda, Anda datang ke tempat yang tepat. Perangkat ini sangat berguna untuk mengukur orientasi, percepatan dan rotasi dalam ruang tiga dimensi. Pada artikel ini, kita akan mempelajari secara menyeluruh cara menggunakan Adafruit 9-DOF, koneksi dan konfigurasinya dengan Arduino.
Sensor 9-DOF menggabungkan tiga jenis sensor: akselerometer, magnetometer, dan giroskop. Hal ini menjadikannya alat penting untuk melacak orientasi dan pergerakan secara tepat. Dengan petunjuk ini, Anda dapat mulai menggunakan sensor Adafruit 9-DOF dengan Arduino dengan cepat dan efisien.
Apa itu sensor 9 derajat kebebasan (9-DOF)?
Sensor 9-DOF memiliki tiga sensor dalam satu: a akselerometersebuah magnetometer dan giroskop. Akselerometer mengukur percepatan dalam tiga sumbu, memungkinkannya mendeteksi orientasi relatif terhadap gravitasi. Magnetometer mendeteksi medan magnet, berguna untuk menentukan arah utara magnet. Terakhir, giroskop mengukur rotasi sudut.
Ketiga sensor ini digabungkan untuk menawarkan a persepsi gerakan tiga dimensi dan orientasi, sehingga ideal untuk aplikasi seperti robotika, drone, atau perangkat yang dapat dikenakan.
Menghubungkan Sensor 9-DOF dengan Arduino
Setelah Anda memiliki sensor, langkah selanjutnya adalah menghubungkannya ke papan Arduino Anda. Jika Anda berencana untuk menggunakan Antarmuka I2C, yang paling umum, sensor Adafruit 9-DOF memiliki alamat I2C default 0x69. Namun Anda juga bisa mengubahnya menjadi 0x68 dengan menghubungkan pin alamat ke GND.
Koneksi melalui I2C
Proses koneksinya mudah. Dengan menggunakan konektor STEMMA QT atau a papan tempat memotong roti tanpa solder, Anda hanya perlu mencocokkan pin daya dan data. Jika menggunakan konektor STEMMA, Anda hanya perlu menghubungkannya ke pin I2C (SCL dan SDA).
Gunakan sensor 9-DOF dengan SPI
Jika Anda lebih suka menggunakan antarmuka SPI, Anda harus mengaktifkan pin CS, SCK, MOSI, dan MISO untuk koneksi, serta menentukan pengaturan dalam kode.
Instal perpustakaan yang diperlukan di Arduino

Agar sensor Adafruit Anda berfungsi dengan baik dengan Arduino, Anda perlu menginstal beberapa perpustakaan. Hal pertama yang Anda perlukan adalah Pustaka Adafruit ICM20X, yang kompatibel dengan sensor ICM20948 dan ICM20649. Untuk menginstalnya, buka Manajer Perpustakaan di Arduino IDE dan cari “Adafruit ICM20X”.
Selain itu, Anda juga harus menginstal Perpustakaan BusIO Adafruit dan Perpustakaan Sensor Terpadu Adafruit.
Contoh kode untuk sensor Adafruit 9-DOF
Setelah semuanya terhubung dan perpustakaan yang diperlukan diinstal, Anda dapat memuat salah satu contoh untuk memeriksa apakah semuanya berfungsi dengan baik. Pergi ke File -> Contoh -> Adafruit ICM20X dan pilih tes yang kompatibel dengan sensor Anda.
Contoh ini akan mencetak nilai seperti suhu, serta nilai pada sumbu X, Y dan Z giroskop, akselerometer, dan magnetometer. Anda dapat memeriksa hasilnya pada monitor serial yang disetel ke 115200 baud.
Contoh dasar pengukuran dengan ICM20948
#include <Adafruit_ICM20X.h>#include <Adafruit_ICM20948.h>#include <Adafruit_Sensor.h>#include <Wire.h>
Kode yang disediakan dalam contoh perpustakaan akan memungkinkan Anda memperoleh peristiwa dari berbagai sensor. Namun, untuk proyek lebih lanjut, Anda dapat mengubah pengaturan rentang sensitivitas akselerometer dan giroskop sesuai kebutuhan Anda.
Cara kerja laporan rotasi pada sensor BNO085
Jika selain sensor ICM20948 Anda menggunakan sensor 9-DOF seperti BNO085, ini memungkinkan Anda untuk menghasilkan laporan rotasi, penting untuk memperoleh data yang lebih rinci tentang orientasi dalam gerakan kompleks.
Detail penting yang harus Anda ingat adalah bahwa sensor ini memerlukan mikrokontroler kapasitas memori yang lebih besar, seperti SAMD21, SAMD51 atau nRF52. Penggunaan papan Arduino yang lebih mendasar seperti Uno atau Leonardo tidak disarankan karena tidak memiliki cukup RAM.
Selain itu, BNO085 menggunakan implementasi I2C khusus yang tidak didukung oleh semua sistem. Misalnya, sensor ini tidak berfungsi dengan benar dengan chip seperti ESP32 atau dengan multiplexer I2C. Namun, pengoperasiannya cukup andal pada platform seperti RP2040, STM32F4 atau SAMD51.
Desain dan fitur terobosan LSM9DS1
Sensor LSM9DS9 1-DOF sangat ideal untuk melacak orientasi dan pergerakan dengan harga yang lebih terjangkau dibandingkan sensor sejenis lainnya. Ini mengintegrasikan beberapa rentang pengukuran yang memungkinkan Anda menyesuaikan tingkat presisi yang diperlukan untuk proyek Anda.
Sensor ini memiliki Antarmuka I2C y SPI, menjadikannya serbaguna untuk platform pengembangan yang berbeda. Anda dapat dengan mudah menghubungkannya ke Arduino, memberikan tegangan antara 3 dan 5V dan menghubungkan pin I2C SCL y SDA.
Beda dengan LSM9DS0
Salah satu perbedaan utamanya terletak pada rentang akselerometer, yang pada LSM9DS1 berukuran ±2, ±4, ±8, dan ±16 g, sedangkan sensor lain seperti LSM9DS0 menyertakan rentang tambahan ±6g.
Apa yang dapat Anda lakukan dengan sensor Adafruit 9-DOF?
Jenis sensor ini ideal untuk mengembangkan proyek seperti robot otonom, sistem navigasi, dan perangkat berbasis gerakan. Dengan informasi akselerasi, rotasi, dan orientasi yang diberikan, Anda dapat membuat perangkat yang melacak gerakan kompleks dengan tepat.