Daftar Isi:

Raspberry Pi MMA8452Q 3-Axis 12-bit/8-bit Digital Accelerometer Python Tutorial: 4 Langkah
Raspberry Pi MMA8452Q 3-Axis 12-bit/8-bit Digital Accelerometer Python Tutorial: 4 Langkah

Video: Raspberry Pi MMA8452Q 3-Axis 12-bit/8-bit Digital Accelerometer Python Tutorial: 4 Langkah

Video: Raspberry Pi MMA8452Q 3-Axis 12-bit/8-bit Digital Accelerometer Python Tutorial: 4 Langkah
Video: ADXL335: Raspberry Pi Interfacing with MEMS Sensor - 3 Axis Accelerometer 2024, November
Anonim
Image
Image

MMA8452Q adalah akselerometer micromachined yang cerdas, berdaya rendah, tiga sumbu, kapasitif, dengan resolusi 12 bit. Opsi yang dapat diprogram pengguna yang fleksibel disediakan dengan bantuan fungsi tertanam di akselerometer, dapat dikonfigurasi untuk dua pin interupsi. Ini memiliki skala penuh yang dapat dipilih pengguna ±2g/±4g/±8g dengan data terfilter filter high-pass serta data non-filter yang tersedia secara real-time. Berikut adalah demonstrasinya dengan raspberry pi menggunakan kode python.

Langkah 1: Yang Anda Butuhkan.

Apa yang kau butuhkan..!!
Apa yang kau butuhkan..!!

1. Raspberry Pi

2. MMA8452Q

3. Kabel I²C

4. Perisai I²C untuk Raspberry Pi

5. Kabel Ethernet

Langkah 2: Koneksi:

Koneksi
Koneksi
Koneksi
Koneksi
Koneksi
Koneksi
Koneksi
Koneksi

Ambil pelindung I2C untuk raspberry pi dan dorong perlahan ke atas pin gpio dari raspberry pi.

Kemudian sambungkan salah satu ujung kabel I2C ke sensor MMA8452Q dan ujung lainnya ke pelindung I2C.

Hubungkan juga kabel Ethernet ke pi atau Anda dapat menggunakan modul WiFi.

Koneksi ditunjukkan pada gambar di atas.

Langkah 3: Kode:

Kode
Kode

Kode python untuk MMA8452Q dapat diunduh dari repositori github kami- ControlEverythingCommunity

Ini tautannya.

Kami telah menggunakan perpustakaan SMBus untuk kode python, langkah-langkah untuk menginstal SMBus pada raspberry pi dijelaskan di sini:

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

Anda juga dapat menyalin kode dari sini, diberikan sebagai berikut:

# Didistribusikan dengan lisensi kehendak bebas.

# Gunakan dengan cara apa pun yang Anda inginkan, untung atau gratis, asalkan sesuai dengan lisensi karya terkaitnya.

#MMA8452Q

# Kode ini dirancang untuk bekerja dengan Modul Mini MMA8452Q_I2CS I2C.

impor smbus

waktu impor

# Dapatkan bus I2C

bus = smbus. SMBus(1)

# Alamat MMA8452Q, 0x1C(28)

# Pilih Kontrol register, 0x2A(42)

# 0x00(00) mode Siaga

bus.write_byte_data(0x1C, 0x2A, 0x00)

# Alamat MMA8452Q, 0x1C(28)

# Pilih Kontrol register, 0x2A(42)

# 0x01(01) Mode aktif

bus.write_byte_data(0x1C, 0x2A, 0x01)

# Alamat MMA8452Q, 0x1C(28)

# Pilih Daftar konfigurasi, 0x0E (14)

# 0x00(00) Setel rentang ke +/- 2g

bus.write_byte_data(0x1C, 0x0E, 0x00)

waktu.tidur(0.5)

# Alamat MMA8452Q, 0x1C(28)

# Baca data kembali dari 0x00(0), 7 byte

# Status register, MSB Sumbu X, LSB Sumbu X, MSB Sumbu Y, LSB Sumbu Y, MSB Sumbu Z, LSB Sumbu Z

data = bus.read_i2c_block_data(0x1C, 0x00, 7)

# Konversi data

xAccl = (data[1] * 256 + data[2]) / 16

jika xAccl > 2047:

xAccl -= 4096

yAccl = (data[3] * 256 + data[4]) / 16

jika yAccl > 2047:

yAccl -= 4096 z

Accl = (data[5] * 256 + data[6]) / 16

jika zAccl > 2047:

zAccl -= 4096

# 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

Langkah 4: Aplikasi:

MMA8452Q memiliki berbagai aplikasi yang meliputi aplikasi E-Compass, Deteksi orientasi statis yang menggabungkan Portrait/Landscape, Atas/Bawah, Kiri/Kanan, identifikasi posisi Belakang/Depan, Notebook, e-reader, dan Laptop Jatuh dan Deteksi Jatuh, Real-time deteksi orientasi termasuk realitas virtual dan umpan balik posisi pengguna game 3D, Analisis aktivitas waktu nyata seperti penghitungan langkah pedometer, deteksi jatuh bebas untuk HDD, pencadangan GPS perhitungan mati, dan banyak lagi.

Direkomendasikan: