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 Percepatan Menggunakan H3LIS331DL dan Raspberry Pi: 4 Langkah
2024 Pengarang: John Day | [email protected]. Terakhir diubah: 2024-01-30 09:55
H3LIS331DL, adalah akselerometer linier 3-sumbu kinerja tinggi berdaya rendah milik keluarga "nano", dengan antarmuka serial I²C digital. H3LIS331DL memiliki skala penuh yang dapat dipilih pengguna ±100g/±200g/±400g dan mampu mengukur akselerasi dengan kecepatan data keluaran dari 0,5 Hz hingga 1 kHz. H3LIS331DL dijamin beroperasi pada rentang suhu yang diperpanjang dari -40 °C hingga +85 °C.
Dalam tutorial ini kita akan mendemonstrasikan antarmuka H3LIS331DL dengan Raspberry Pi, menggunakan python sebagai bahasa pemrograman.
Langkah 1: Perangkat Keras Yang Dibutuhkan:
Bahan yang kami butuhkan untuk mencapai tujuan kami meliputi komponen perangkat keras berikut:
1. H3LIS331DL
2. Raspberry Pi
3. Kabel I2C
4. I2C Shield 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:
H3LIS331DL 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 H3LIS331DL 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 H3LIS331DL, 0x18(24)
# Pilih register kontrol 1, 0x20(32)
# 0x27(39) Mode Power ON, Kecepatan output data = 50 Hz# X, Y, Z-Axis diaktifkan
bus.write_byte_data(0x18, 0x20, 0x27)
# Alamat H3LIS331DL, 0x18(24)# Pilih register kontrol 4, 0x23(35)
# 0x00(00) Pembaruan berkelanjutan, Pemilihan skala penuh = +/-100g
bus.write_byte_data(0x18, 0x23, 0x00)
waktu.tidur(0.5)
# Alamat H3LIS331DL, 0x18(24)
# Baca data kembali dari 0x28(40), 2 byte
# Sumbu X LSB, Sumbu X MSB
data0 = bus.read_byte_data(0x18, 0x28)
data1 = bus.read_byte_data(0x18, 0x29)
# Konversikan dataxAccl = data1 * 256 + data0
jika xAccl > 32767:
xAccl -= 65536
# Alamat H3LIS331DL, 0x18(24)
# Baca data kembali dari 0x2A(42), 2 byte
# Sumbu Y LSB, Sumbu Y MSB
data0 = bus.read_byte_data(0x18, 0x2A)
data1 = bus.read_byte_data(0x18, 0x2B)
# Konversi data
yAccl = data1 * 256 + data0
jika yAccl > 32767:
yAccl -= 65536
# Alamat H3LIS331DL, 0x18(24)
# Baca data kembali dari 0x2C(44), 2 byte
# Sumbu Z LSB, Sumbu Z MSB
data0 = bus.read_byte_data(0x18, 0x2C)
data1 = bus.read_byte_data(0x18, 0x2D)
# Konversi data
zAccl = data1 * 256 + data0
jika zAccl > 32767:
zAccl -= 65536
# 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 H3LIS331DL.py gt; python H3LIS331DL.py
Output dari sensor ditunjukkan pada gambar di atas untuk referensi pengguna.
Langkah 4: Aplikasi:
Akselerometer seperti H3LIS331DL kebanyakan menemukan aplikasinya dalam permainan dan perpindahan profil tampilan. Modul sensor ini juga digunakan dalam sistem manajemen daya canggih untuk aplikasi seluler. H3LIS331DL adalah sensor akselerasi digital triaksial yang digabungkan dengan pengontrol interupsi yang dipicu gerakan on-chip yang cerdas.
Direkomendasikan:
Pengukuran Percepatan Menggunakan ADXL345 dan Foton Partikel: 4 Langkah
Pengukuran Percepatan Menggunakan ADXL345 dan Foton Partikel: ADXL345 adalah akselerometer 3-sumbu 3-sumbu kecil, tipis, dan 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
Pengukuran Percepatan Menggunakan H3LIS331DL dan Arduino Nano: 4 Langkah
Pengukuran Akselerasi Menggunakan H3LIS331DL dan Arduino Nano: H3LIS331DL, adalah akselerometer linier 3-sumbu kinerja tinggi berdaya rendah milik keluarga “nano”, dengan antarmuka serial I²C digital. H3LIS331DL memiliki skala penuh yang dapat dipilih pengguna ±100g/±200g/±400g dan mampu mengukur akselerasi dengan
Pengukuran Percepatan Menggunakan H3LIS331DL dan Foton Partikel: 4 Langkah
Pengukuran Akselerasi Menggunakan H3LIS331DL dan Foton Partikel: H3LIS331DL, adalah akselerometer linier 3-sumbu kinerja tinggi berdaya rendah yang termasuk dalam keluarga “nano”, dengan antarmuka serial I²C digital. H3LIS331DL memiliki skala penuh yang dapat dipilih pengguna ±100g/±200g/±400g dan mampu mengukur akselerasi dengan
Pengukuran Percepatan Menggunakan ADXL345 dan Raspberry Pi: 4 Langkah
Pengukuran Akselerasi Menggunakan ADXL345 dan Raspberry Pi: ADXL345 adalah akselerometer 3-sumbu 3-sumbu kecil, tipis, dan 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
Pengukuran Percepatan Menggunakan ADXL345 dan Arduino Nano: 4 Langkah
Pengukuran Akselerasi Menggunakan ADXL345 dan Arduino Nano: ADXL345 adalah akselerometer 3-sumbu 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