Daftar Isi:
- Langkah 1: Perangkat Keras Yang Dibutuhkan:
- Langkah 2: Sambungan Perangkat Keras:
- Langkah 3: Kode Python untuk Pengukuran Akselerasi:
- Langkah 4: Aplikasi:
Video: Pengukuran Akselerasi Menggunakan BMA250 dan Raspberry Pi: 4 Langkah
2024 Pengarang: John Day | [email protected]. Terakhir diubah: 2024-01-30 09:55
BMA250 adalah akselerometer 3-sumbu kecil, tipis, berdaya ultra rendah dengan pengukuran resolusi tinggi (13-bit) hingga ±16 g. Data keluaran digital diformat sebagai pelengkap berpasangan 16-bit dan dapat diakses melalui antarmuka digital I2C. Ini mengukur akselerasi statis gravitasi dalam aplikasi sensor kemiringan, serta akselerasi dinamis yang dihasilkan dari gerakan atau guncangan. Resolusi tinggi (3,9 mg/LSB) memungkinkan pengukuran perubahan kemiringan kurang dari 1,0°.
Dalam tutorial ini kita akan mengukur percepatan di ketiga sumbu tegak lurus menggunakan BMA250 dan Raspberry Pi. Sensor telah diprogram dalam bahasa python.
Langkah 1: Perangkat Keras Yang Dibutuhkan:
Bahan yang kami butuhkan untuk mencapai tujuan kami meliputi komponen perangkat keras berikut:
1. BMA250
2. Raspberry Pi
3. Kabel I2C
4. Perisai I2C untuk Raspberry Pi
5. Kabel Ethernet
Langkah 2: Sambungan Perangkat Keras:
Bagian hookup perangkat keras pada dasarnya menjelaskan koneksi kabel yang diperlukan antara sensor dan raspberry pi. Memastikan koneksi yang benar adalah kebutuhan dasar saat bekerja pada sistem apa pun untuk output yang diinginkan. Jadi, koneksi yang diperlukan adalah sebagai berikut:
BMA250 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 Python untuk Pengukuran Akselerasi:
Keuntungan menggunakan raspberry pi adalah, memberikan Anda fleksibilitas bahasa pemrograman di mana Anda ingin memprogram papan untuk menghubungkan sensor dengannya. Memanfaatkan keunggulan papan ini, kami mendemonstrasikan di sini pemrogramannya dengan python. Python adalah salah satu bahasa pemrograman termudah dengan sintaks termudah. Kode python untuk BMA250 dapat diunduh dari komunitas GitHub kami yaitu Dcube Store
Selain untuk memudahkan pengguna, kami juga menjelaskan kodenya di sini:
Sebagai langkah pertama pengkodean, Anda perlu mengunduh pustaka SMBus untuk python karena pustaka ini mendukung fungsi yang digunakan dalam kode. Nah, untuk mendownload librarynya anda bisa mengunjungi link berikut ini:
pypi.python.org/pypi/smbus-cffi/0.5.1
Anda dapat menyalin kode kerja dari sini juga:
impor smbus
waktu impor
# Dapatkan bus I2C = smbus. SMBus(1)
# Alamat BMA250, 0x18 (24)
# Pilih daftar pemilihan rentang, 0x0F (15)
# 0x03(03) Setel rentang = +/-2gbus.write_byte_data(0x18, 0x0F, 0x03)
# Alamat BMA250, 0x18(24)# Pilih register bandwidth, 0x10(16)
# 0x08(08) Bandwidth = 7,81 Hzbus.write_byte_data(0x18, 0x10, 0x08)
waktu.tidur(0.5)
# Alamat BMA250, 0x18 (24)
# Baca data kembali dari 0x02(02), 6 byte
# LSB Sumbu X, MSB Sumbu X, LSB Sumbu Y, MSB Sumbu Y, LSB Sumbu Z, MSB Sumbu Z
data = bus.read_i2c_block_data(0x18, 0x02, 6)
# Ubah data menjadi 10 bit
xAccl = (data[1] * 256 + (data[0] & 0xC0)) / 64
jika xAccl > 511:
xAccl -= 1024
yAccl = (data[3] * 256 + (data[2] & 0xC0)) / 64
jika yAccl > 511:
yAccl -= 1024
zAccl = (data[5] * 256 + (data[4] & 0xC0)) / 64
jika zAccl > 511:
zAccl -= 1024
# Keluarkan data ke layar
print "Percepatan pada Sumbu X: %d" % xAccl
print "Percepatan pada Sumbu Y: %d" % yAccl
print "Percepatan pada Sumbu Z: %d" % zAccl
Kode dieksekusi menggunakan perintah berikut:
$> python BMA250.py gt; python BMA250.py
Output dari sensor ditunjukkan pada gambar di atas untuk referensi pengguna.
Langkah 4: Aplikasi:
Akselerometer seperti BMA250 kebanyakan menemukan aplikasinya dalam permainan dan perpindahan profil tampilan. Modul sensor ini juga digunakan dalam sistem manajemen daya canggih untuk aplikasi seluler. BMA250 adalah sensor akselerasi digital triaksial yang digabungkan dengan pengontrol interupsi yang dipicu gerakan on-chip yang cerdas.
Direkomendasikan:
Memantau Akselerasi Menggunakan Raspberry Pi dan AIS328DQTR Menggunakan Python: 6 Langkah
Memantau Akselerasi Menggunakan Raspberry Pi dan AIS328DQTR Menggunakan Python: Akselerasi terbatas, menurut saya menurut beberapa hukum Fisika.- Terry Riley Seekor cheetah menggunakan akselerasi yang luar biasa dan perubahan kecepatan yang cepat saat mengejar. Makhluk tercepat di darat sesekali menggunakan kecepatan tertingginya untuk menangkap mangsa. NS
Pengukuran Akselerasi Menggunakan BMA250 dan Arduino Nano: 4 Langkah
Pengukuran Akselerasi Menggunakan BMA250 dan Arduino Nano: BMA250 adalah akselerometer 3-sumbu kecil, tipis, berdaya sangat rendah, dengan pengukuran resolusi tinggi (13-bit) hingga ±16 g. Data keluaran digital diformat sebagai pelengkap berpasangan 16-bit dan dapat diakses melalui antarmuka digital I2C. Ini mengukur statis
Pengukuran Percepatan Menggunakan BMA250 dan Foton Partikel: 4 Langkah
Pengukuran Akselerasi Menggunakan BMA250 dan Foton Partikel: BMA250 adalah akselerometer 3-sumbu 3-sumbu kecil, tipis, berdaya ultralow dengan pengukuran resolusi tinggi (13-bit) hingga ±16 g. Data keluaran digital diformat sebagai pelengkap berpasangan 16-bit dan dapat diakses melalui antarmuka digital I2C. Ini mengukur statis
Melacak Variasi Akselerasi Dengan Raspberry Pi dan MMA7455 Menggunakan Python: 6 Langkah
Melacak Variasi Akselerasi Dengan Raspberry Pi dan MMA7455 Menggunakan Python: Saya tidak tersandung, saya sedang menguji gravitasi. Masih berfungsi… Sebuah representasi dari pesawat ulang-alik yang dipercepat menjelaskan bahwa jam di titik tertinggi pesawat ulang-alik akan memilih lebih cepat daripada jam di pangkalan karena ekspansi waktu gravitasi. Beberapa
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