Daftar Isi:

Akselerometer 3-Axis, ADXL345 Dengan Raspberry Pi Menggunakan Python: 6 Langkah
Akselerometer 3-Axis, ADXL345 Dengan Raspberry Pi Menggunakan Python: 6 Langkah

Video: Akselerometer 3-Axis, ADXL345 Dengan Raspberry Pi Menggunakan Python: 6 Langkah

Video: Akselerometer 3-Axis, ADXL345 Dengan Raspberry Pi Menggunakan Python: 6 Langkah
Video: MPU6050 с Raspberry Pi самым простым способом с использованием Python | Акселерометр | Гироскоп | Температура 2024, November
Anonim
Akselerometer 3-Axis, ADXL345 Dengan Raspberry Pi Menggunakan Python
Akselerometer 3-Axis, ADXL345 Dengan Raspberry Pi Menggunakan Python

Memikirkan sebuah gadget yang dapat memeriksa titik di mana Offroader Anda dimiringkan untuk berlama-lama. Bukankah menyenangkan jika seseorang menyesuaikan diri ketika ada kemungkinan terbalik? Jelas ya. Ini akan sangat berguna bagi mereka yang suka pergi ke gunung dan perjalanan bisnis.

Tidak diragukan lagi, periode yang benar-benar brilian dari evaluasi perhitungan tingkat lanjut, IoT ada di depan kita. Sebagai pecinta Gadget dan Pemrograman, kami percaya, Raspberry Pi, PC mikro Linux telah memperlakukan kemampuan kreatif orang-orang pada umumnya, membawa serta ledakan dalam metodologi inovatif. Jadi apa kemungkinan hasil yang dapat kita lakukan jika kita memiliki Raspberry Pi dan Akselerometer 3-sumbu di dekatnya? Kita harus menemukan! Dalam tugas ini, kita akan merasakan percepatan pada 3 sumbu, X, Y dan Z menggunakan Raspberry Pi dan ADXL345, sebuah akselerometer 3-sumbu. Jadi kita harus mengamati perjalanan ini untuk membuat kerangka kerja untuk mengukur percepatan 3 dimensi atau G-Force.

Langkah 1: Perangkat Keras Dasar yang Kami Butuhkan

Perangkat Keras Dasar Yang Kami Butuhkan
Perangkat Keras Dasar Yang Kami Butuhkan
Perangkat Keras Dasar Yang Kami Butuhkan
Perangkat Keras Dasar Yang Kami Butuhkan
Perangkat Keras Dasar Yang Kami Butuhkan
Perangkat Keras Dasar Yang Kami Butuhkan

Masalahnya kurang bagi kami karena kami memiliki banyak hal untuk dikerjakan. Namun, kita tahu betapa sulitnya bagi orang lain untuk merakit bagian yang tepat pada waktu yang tepat dari tempat yang tepat dan itu dibenarkan terlepas dari setiap sen. Jadi kami akan membantu Anda di semua wilayah. Baca berikut ini untuk mendapatkan daftar suku cadang lengkap.

1. Raspberry Pi

Langkah awal adalah memperoleh papan Raspberry Pi. Komputer mungil bertenaga rendah ini menyediakan basis yang murah dan umumnya sederhana untuk usaha elektronik, Internet of Things (IoT), Kota Cerdas, Pendidikan Sekolah.

2. Perisai I2C untuk Raspberry Pi

Hal utama yang benar-benar hilang dari Raspberry Pi adalah port I²C. Jadi untuk itu, konektor TOUTPI2 I²C memberi Anda perasaan untuk menggunakan Rasp Pi dengan beberapa perangkat I²C. Dapat diakses di DCUBE Store

3. Akselerometer 3-sumbu, ADXL345

Diproduksi oleh Perangkat Analog, ADXL345, adalah akselerometer 3-sumbu berdaya rendah dengan pengukuran 13-bit resolusi tinggi hingga ±16g. Kami memperoleh sensor ini dari DCUBE Store

4. Menghubungkan Kabel

Kami memiliki kabel penghubung I2C yang dapat diakses di DCUBE Store

5. Kabel USB mikro

Yang paling membingungkan, namun paling ketat sejauh kebutuhan daya adalah Raspberry Pi! Pendekatan yang paling mudah untuk menyalakan Raspberry Pi adalah melalui kabel Micro USB.

6. Akses Web adalah Kebutuhan

Akses web dapat diberdayakan melalui kabel Ethernet (LAN) yang terkait dengan jaringan lokal dan web. Di sisi lain, Anda dapat mengaitkan dengan jaringan nirkabel menggunakan dongle nirkabel USB, yang memerlukan konfigurasi.

7. Kabel HDMI/Akses Jarak Jauh

Dengan kabel HDMI terpasang, Anda dapat menghubungkannya ke TV digital atau ke Monitor. Perlu cadangan uang tunai! Raspberry Pi dapat diperoleh dari jarak jauh dengan menggunakan strategi khusus seperti-SSH dan Akses melalui Web. Anda dapat menggunakan perangkat lunak sumber terbuka PuTTY.

Langkah 2: Menghubungkan Perangkat Keras

Menghubungkan Perangkat Keras
Menghubungkan Perangkat Keras
Menghubungkan Perangkat Keras
Menghubungkan Perangkat Keras
Menghubungkan Perangkat Keras
Menghubungkan Perangkat Keras
Menghubungkan Perangkat Keras
Menghubungkan Perangkat Keras

Buatlah rangkaian sesuai dengan skema yang muncul. Buat garis besar dan ikuti konfigurasi dengan sengaja.

Koneksi Raspberry Pi dan I2C Shield

Di atas segalanya, ambil Raspberry Pi dan temukan I2C Shield di atasnya. Tekan Perisai dengan hati-hati di atas pin GPIO Pi dan kita selesai dengan perkembangan ini sesederhana pie (lihat snap).

Koneksi Sensor dan Raspberry Pi

Ambil sensor dan Antarmuka Kabel I2C dengannya. Untuk pengoperasian yang tepat dari Kabel ini, harap ingat Output I2C SELALU berhubungan dengan Input I2C. Hal yang sama harus dilakukan untuk Raspberry Pi dengan pelindung I2C yang dipasang di atasnya pada pin GPIO.

Kami meresepkan penggunaan kabel I2C karena menolak persyaratan untuk membaca pinout, menyolder, dan malaise yang disebabkan oleh kesalahan terkecil sekalipun. Dengan kabel plug and play dasar ini, Anda dapat memperkenalkan, menukar perangkat, atau menambahkan lebih banyak perangkat ke aplikasi dengan mudah. Ini membuat segalanya tidak rumit.

Catatan: Kabel coklat harus selalu mengikuti koneksi Ground (GND) antara output dari satu perangkat dan input dari perangkat lain

Jaringan Web adalah Kunci

Untuk membuat usaha kami menang, kami memerlukan koneksi web untuk Raspberry Pi kami. Untuk ini, Anda memiliki alternatif seperti menghubungkan kabel Ethernet (LAN) dengan sistem rumah. Selain itu, sebagai pilihan, bagaimanapun, cara yang bermanfaat adalah dengan menggunakan konektor WiFi. Beberapa waktu untuk ini, Anda memerlukan driver untuk membuatnya bekerja. Jadi condong ke arah yang menggunakan Linux dalam penggambaran.

Sumber Daya listrik

Colokkan kabel Micro USB ke colokan listrik Raspberry Pi. Nyalakan dan kami siap berangkat.

Koneksi ke Layar

Kita dapat menghubungkan kabel HDMI dengan layar lain. Dalam beberapa kasus, Anda harus membuka Raspberry Pi tanpa menghubungkannya ke layar atau Anda mungkin perlu melihat beberapa data darinya dari tempat lain. Dapat dibayangkan, ada pendekatan inovatif dan cerdas secara finansial untuk melakukan hal tersebut. Salah satunya adalah memanfaatkan - SSH (remote command-line login). Anda juga dapat menggunakan perangkat lunak Putty untuk itu.

Langkah 3: Pengodean Python untuk Raspberry Pi

Pengkodean Python untuk Raspberry Pi
Pengkodean Python untuk Raspberry Pi

Kode Python untuk Sensor Raspberry Pi dan ADXL345 dapat diakses di Repositori Github kami.

Sebelum melanjutkan ke kode, pastikan Anda membaca panduan yang diberikan dalam dokumen Readme dan Siapkan Raspberry Pi Anda sesuai dengan itu. Ini hanya akan berhenti selama satu menit untuk melakukan seperti itu.

Akselerometer adalah perangkat yang mengukur akselerasi yang tepat; percepatan yang tepat tidak sama dengan percepatan koordinat (laju perubahan kecepatan). Model akselerometer sumbu tunggal dan multi dapat diakses untuk mengidentifikasi besar dan arah percepatan yang tepat, sebagai besaran vektor, dan dapat digunakan untuk merasakan orientasi, koordinat percepatan, getaran, guncangan, dan jatuh dalam media resistif.

Kodenya jelas di depan Anda dan itu dalam struktur paling mudah yang dapat Anda bayangkan dan Anda seharusnya tidak memiliki masalah.

# Didistribusikan dengan lisensi kehendak bebas.# Gunakan sesuka Anda, untung atau gratis, asalkan sesuai dengan lisensi karya terkait. # ADXL345 # Kode ini dirancang untuk bekerja dengan Modul Mini ADXL345_I2CS I2C yang tersedia dari dcubestore.com # https://dcubestore.com/product/adxl345-3-axis-accelerometer-13-bit-i%C2%B2c-mini -modul/

impor smbus

waktu impor

# Dapatkan bus I2C

bus = smbus. SMBus(1)

# alamat ADXL345, 0x53(83)

# Pilih register kecepatan bandwidth, 0x2C(44) # 0x0A(10) Mode normal, Output data rate = 100 Hz bus.write_byte_data(0x53, 0x2C, 0x0A) # alamat ADXL345, 0x53(83) # Pilih register kontrol daya, 0x2D(45) # 0x08(08) Auto Sleep nonaktifkan bus.write_byte_data(0x53, 0x2D, 0x08) # ADXL345 address, 0x53(83) # Pilih format data register, 0x31(49) # 0x08(08) Self test dinonaktifkan, 4-kawat antarmuka # Resolusi penuh, Rentang = +/-2g bus.write_byte_data (0x53, 0x31, 0x08)

waktu.tidur(0.5)

# alamat ADXL345, 0x53(83)

# Membaca data kembali dari 0x32(50), 2 byte # X-Axis LSB, X-Axis 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)

# Membaca data kembali dari 0x34(52), 2 byte # Y-Axis LSB, Y-Axis 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)

# Membaca data kembali dari 0x36(54), 2 byte # Z-Axis LSB, Z-Axis 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: Kepraktisan Kode

Kepraktisan Kode
Kepraktisan Kode

Unduh (atau git pull) kode dari Github dan buka di Raspberry Pi.

Jalankan perintah untuk Kompilasi dan Unggah kode di terminal dan lihat hasilnya di Monitor. Setelah beberapa saat, itu akan menunjukkan setiap parameter. Setelah memastikan bahwa semuanya bekerja dengan mudah, Anda dapat membawa usaha ini ke tugas yang lebih besar.

Langkah 5: Aplikasi dan Fitur

ADXL345 adalah akselerometer 3-sumbu kecil, tipis, berdaya ultra rendah dengan pengukuran resolusi tinggi (13-bit) hingga ±16 g. ADXL345 sesuai untuk Aplikasi Ponsel. Ini mengukur Percepatan Statis Gravitasi dalam Aplikasi Pendeteksi Kemiringan dan juga Percepatan Dinamis yang akan datang karena Gerak atau Guncangan. Aplikasi lain termasuk seperti Handset, instrumentasi Medis, Gaming dan Perangkat Penunjuk, Instrumentasi Industri, Perangkat Navigasi Pribadi, dan Perlindungan Hard Disk Drive (HDD).

Langkah 6: Kesimpulan

Semoga tugas ini memotivasi eksperimen lebih lanjut. Sensor I2C ini sangat fleksibel, murah, dan mudah diakses. Karena ini adalah sistem yang sangat tidak kekal, ada cara menarik untuk memperluas tugas ini dan bahkan meningkatkannya.

Misalnya, Anda dapat memulai dengan ide Inclinometer menggunakan ADXL345 dan Raspberry Pi. Dalam proyek di atas, kami telah menggunakan perhitungan dasar. Anda dapat mengimprovisasi kode untuk nilai-G, sudut kemiringan (atau kemiringan), elevasi atau depresi suatu objek sehubungan dengan gravitasi. Kemudian Anda dapat memeriksa opsi lanjutan seperti sudut rotasi untuk gulungan (sumbu depan-ke-belakang, X), pitch (sumbu samping-ke-sisi, Y) dan yaw (sumbu vertikal, Z). Akselerometer ini menampilkan 3-D G-Forces. Jadi Anda bisa memanfaatkan sensor ini dengan berbagai cara yang bisa Anda pertimbangkan.

Demi kenyamanan Anda, kami memiliki video latihan instruksional yang menarik di YouTube yang dapat membantu penyelidikan Anda. Kepercayaan usaha ini memotivasi eksplorasi lebih lanjut. Terus renungkan! Ingatlah untuk mencari karena lebih banyak terus datang.

Direkomendasikan: