Daftar Isi:
Video: Raspberry Pi - ADXL345 3-Axis Accelerometer Python Tutorial: 4 Langkah
2024 Pengarang: John Day | [email protected]. Terakhir diubah: 2024-01-30 09:53
ADXL345 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 I2 C. 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°. Ini dia demonstrasi dengan raspberry pi menggunakan kode python.
Langkah 1: Yang Anda Butuhkan.
1. Raspberry Pi
2. ADXL345
3. Kabel I²C
4. Perisai I²C untuk Raspberry Pi
5. Kabel Ethernet
Langkah 2: 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 ADXL345 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 python untuk ADXL345 dapat diunduh dari repositori GitHub kami- Dcube Store
Berikut ini tautan untuk hal yang sama:
github.com/DcubeTechVentures/ADXL345..
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.
# ADXL345
# Kode ini dirancang untuk bekerja dengan Modul Mini ADXL345_I2CS I2C yang tersedia di Dcube Store.
impor smbus
waktu impor
# Dapatkan bus I2C
bus = smbus. SMBus(1)
# alamat ADXL345, 0x53(83)
# Pilih register laju bandwidth, 0x2C(44)# 0x0A(10) Mode normal, Kecepatan data keluaran = 100 Hz
bus.write_byte_data(0x53, 0x2C, 0x0A)
# alamat ADXL345, 0x53(83)
# Pilih register kontrol daya, 0x2D(45)
# 0x08(08) Auto Sleep menonaktifkan
bus.write_byte_data(0x53, 0x2D, 0x08)
# alamat ADXL345, 0x53(83)
# Pilih format data register, 0x31(49)
# 0x08(08) Tes mandiri dinonaktifkan, antarmuka 4-kawat
# Resolusi penuh, Rentang = +/-2g
bus.write_byte_data(0x53, 0x31, 0x08)
waktu.tidur(0.5)
# alamat ADXL345, 0x53(83)
# Baca data kembali dari 0x32(50), 2 byte
# Sumbu X LSB, Sumbu X MSB
data0 = bus.read_byte_data(0x53, 0x32)
data1 = bus.read_byte_data(0x53, 0x33)
# Ubah data menjadi 10-bit
xAccl = ((data1 & 0x03) * 256) + data0
jika xAccl > 511:
xAccl -= 1024
# alamat ADXL345, 0x53(83)
# Baca data kembali dari 0x34(52), 2 byte
# Sumbu Y LSB, Sumbu Y MSB
data0 = bus.read_byte_data(0x53, 0x34)
data1 = bus.read_byte_data(0x53, 0x35)
# Ubah data menjadi 10-bit
yAccl = ((data1 & 0x03) * 256) + data0
jika yAccl > 511:
yAccl -= 1024
# alamat ADXL345, 0x53(83)
# Baca data kembali dari 0x36(54), 2 byte
# Sumbu Z LSB, Sumbu Z MSB
data0 = bus.read_byte_data(0x53, 0x36)
data1 = bus.read_byte_data(0x53, 0x37)
# Ubah data menjadi 10-bit
zAccl = ((data1 & 0x03) * 256) + data0
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
Langkah 4: Aplikasi:
ADXL345 adalah akselerometer 3-sumbu kecil, tipis, berdaya ultra rendah yang dapat digunakan di Handset, Instrumentasi medis, dll. Aplikasinya juga mencakup Gaming dan perangkat penunjuk, instrumentasi Industri, Perangkat navigasi pribadi, dan perlindungan Hard disk drive (HDD).
Direkomendasikan:
Tutorial Python Sensor Kelembaban & Suhu Raspberry Pi SHT25: 4 Langkah
Raspberry Pi SHT25 Sensor Kelembaban & Suhu Python Tutorial: SHT25 I2C Sensor Kelembaban dan Suhu ±1.8%RH ±0.2°C Modul Mini I2C. Sensor kelembaban dan suhu akurasi tinggi SHT25 telah menjadi standar industri dalam hal faktor bentuk dan kecerdasan, memberikan sinyal sensor yang dikalibrasi dan dilin
Raspberry Pi - MPL3115A2 Precision Altimeter Sensor Python Tutorial: 4 Langkah
Raspberry Pi - MPL3115A2 Precision Altimeter Sensor Python Tutorial: MPL3115A2 menggunakan sensor tekanan MEMS dengan antarmuka I2C untuk memberikan data Tekanan/Ketinggian dan Suhu yang akurat. Output sensor didigitalkan oleh ADC 24-bit resolusi tinggi. Pemrosesan internal menghilangkan tugas kompensasi dari
Raspberry Pi - BH1715 Digital Ambient Light Sensor Python Tutorial: 4 Langkah
Raspberry Pi - BH1715 Digital Ambient Light Sensor Python Tutorial: BH1715 adalah Digital Ambient Light Sensor dengan antarmuka bus I²C. BH1715 biasanya digunakan untuk mendapatkan data cahaya sekitar untuk menyesuaikan daya lampu latar LCD dan Keypad untuk perangkat seluler. Perangkat ini menawarkan resolusi 16-bit dan
Raspberry Pi - TMP007 Inframerah Thermopile Sensor Python Tutorial: 4 Langkah
Raspberry Pi - TMP007 Sensor Thermopile Inframerah Python Tutorial: TMP007 adalah sensor thermopile inframerah yang mengukur suhu suatu benda tanpa bersentuhan dengannya. Energi inframerah yang dipancarkan oleh objek di bidang sensor diserap oleh thermopile yang terintegrasi dalam sensor. Termopil
Raspberry Pi - PCA9536 Input/output Expander Python Tutorial: 4 Langkah
Raspberry Pi - PCA9536 Input/output Expander Python Tutorial: PCA9536 adalah perangkat CMOS 8-pin yang menyediakan 4 bit ekspansi General Purpose paralel Input/Output (GPIO) untuk aplikasi I2C-bus/SMBus. Ini terdiri dari register Konfigurasi 4-bit untuk melayani tujuan pemilihan input atau output, 4-bit