Isi kandungan:

Pengukuran Pecutan Menggunakan BMA250 dan Raspberry Pi: 4 Langkah
Pengukuran Pecutan Menggunakan BMA250 dan Raspberry Pi: 4 Langkah

Video: Pengukuran Pecutan Menggunakan BMA250 dan Raspberry Pi: 4 Langkah

Video: Pengukuran Pecutan Menggunakan BMA250 dan Raspberry Pi: 4 Langkah
Video: GAMPANG!! Cara pasang gombyok pecut// gombyok bulat #pecut #gambuh @hqpecutponcokusumo 2024, November
Anonim
Image
Image

BMA250 adalah kecil, tipis, kuasa ultralow, akselerometer 3-paksi dengan ukuran resolusi tinggi (13-bit) hingga ± 16 g. Data output digital diformat sebagai pelengkap dua-bit 16-bit dan dapat diakses melalui antara muka digital I2C. Ini mengukur percepatan graviti statik dalam aplikasi penginderaan kecondongan, serta percepatan dinamis yang dihasilkan dari gerakan atau kejutan. Resolusi tinggi (3.9 mg / LSB) memungkinkan pengukuran perubahan kecenderungan kurang dari 1.0 °.

Dalam tutorial ini kita akan mengukur pecutan di ketiga paksi tegak lurus menggunakan BMA250 dan Raspberry Pi. Sensor telah diprogramkan dalam bahasa python.

Langkah 1: Perkakasan Diperlukan:

Perkakasan Diperlukan
Perkakasan Diperlukan
Perkakasan Diperlukan
Perkakasan Diperlukan
Perkakasan Diperlukan
Perkakasan Diperlukan

Bahan yang kami perlukan untuk mencapai tujuan kami merangkumi komponen perkakasan berikut:

1. BMA250

2. Raspberry Pi

3. Kabel I2C

4. Perisai I2C untuk Raspberry Pi

5. Kabel Ethernet

Langkah 2: Penyambungan Perkakasan:

Penyambungan Perkakasan
Penyambungan Perkakasan
Penyambungan Perkakasan
Penyambungan Perkakasan

Bahagian penyambungan perkakasan pada dasarnya menerangkan sambungan pendawaian yang diperlukan antara sensor dan raspberry pi. Memastikan sambungan yang betul adalah keperluan asas semasa mengerjakan sistem apa pun untuk output yang diinginkan. Jadi, sambungan yang diperlukan adalah seperti berikut:

BMA250 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 Python untuk Pengukuran Pecutan:

Kod Python untuk Pengukuran Pecutan
Kod Python untuk Pengukuran Pecutan
Kod Python untuk Pengukuran Pecutan
Kod Python untuk Pengukuran Pecutan

Kelebihan menggunakan raspberry pi adalah, yang memberi anda fleksibiliti bahasa pengaturcaraan di mana anda ingin memprogram papan untuk menghubungkan antara sensor dengannya. Dengan memanfaatkan kelebihan papan ini, kami menunjukkan di sini pengaturcaraannya di python. Python adalah salah satu bahasa pengaturcaraan termudah dengan sintaks termudah. Kod python untuk BMA250 boleh dimuat turun dari komuniti GitHub kami iaitu Dcube Store

Serta untuk kemudahan pengguna, kami menerangkan kodnya di sini juga:

Sebagai langkah pertama pengekodan, anda perlu memuat turun perpustakaan SMBus sekiranya terdapat python kerana perpustakaan ini menyokong fungsi yang digunakan dalam kod. Oleh itu, untuk memuat turun perpustakaan anda boleh melayari pautan berikut:

pypi.python.org/pypi/smbus-cffi/0.5.1

Anda boleh menyalin kod kerja dari sini juga:

import smbus

masa import

# Dapatkan bus2 I2C = smbus. SMBus (1)

# Alamat BMA250, 0x18 (24)

# Pilih daftar pilihan julat, 0x0F (15)

# 0x03 (03) Tetapkan julat = +/- 2gbus.write_byte_data (0x18, 0x0F, 0x03)

# Alamat BMA250, 0x18 (24) # Pilih daftar lebar jalur, 0x10 (16)

# 0x08 (08) Lebar Lebar = 7.81 Hzbus.write_byte_data (0x18, 0x10, 0x08)

masa. tidur (0.5)

# Alamat BMA250, 0x18 (24)

# Baca kembali data dari 0x02 (02), 6 bait

# X-Axis LSB, X-Axis MSB, Y-Axis LSB, Y-Axis MSB, Z-Axis LSB, Z-Axis MSB

data = bas.read_i2c_block_data (0x18, 0x02, 6)

# Tukar 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 skrin

cetak "Pecutan dalam X-Axis:% d"% xAccl

cetak "Pecutan dalam Paksi-Y:% d"% yAccl

cetak "Pecutan dalam Z-Axis:% d"% zAccl

Kod tersebut dilaksanakan dengan menggunakan arahan berikut:

$> python BMA250.py gt; python BMA250.py

Output sensor ditunjukkan pada gambar di atas untuk rujukan pengguna.

Langkah 4: Aplikasi:

Permohonan
Permohonan

Accelerometer seperti BMA250 kebanyakannya menggunakan aplikasinya dalam permainan dan menukar profil paparan. Modul sensor ini juga digunakan dalam sistem pengurusan kuasa lanjutan untuk aplikasi mudah alih. BMA250 adalah sensor pecutan digital triaksial yang digabungkan dengan pengawal interrupt yang dicetuskan oleh gerakan on-chip pintar.

Disyorkan: