Daftar Isi:
- Langkah 1: Perangkat Keras Yang Dibutuhkan:
- Langkah 2: Sambungan Perangkat Keras:
- Langkah 3: Kode untuk Pengukuran Percepatan:
- Langkah 4: Aplikasi:
Video: Pengukuran Percepatan Menggunakan ADXL345 dan Foton Partikel: 4 Langkah
2024 Pengarang: John Day | [email protected]. Terakhir diubah: 2024-01-30 09:54
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°.
Dalam tutorial ini antarmuka modul sensor ADXL345 dengan foton partikel telah diilustrasikan. Untuk membaca nilai akselerasi, kami telah menggunakan partikel dengan adaptor I2c. Adaptor I2C ini membuat koneksi ke modul sensor menjadi mudah dan lebih andal.
Langkah 1: Perangkat Keras Yang Dibutuhkan:
Bahan yang kami butuhkan untuk mencapai tujuan kami meliputi komponen perangkat keras berikut:
1. ADXL345
2. Foton Partikel
3. Kabel I2C
4. Perisai I2C untuk foton partikel
Langkah 2: Sambungan Perangkat Keras:
Bagian hookup perangkat keras pada dasarnya menjelaskan koneksi kabel yang diperlukan antara sensor dan foton partikel. Memastikan koneksi yang benar adalah kebutuhan dasar saat bekerja pada sistem apa pun untuk output yang diinginkan. Jadi, koneksi yang diperlukan adalah sebagai berikut:
ADXL345 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 untuk Pengukuran Percepatan:
Mari kita mulai dengan kode partikel sekarang.
Saat menggunakan modul sensor dengan partikel, kami menyertakan library application.h dan spark_wiring_i2c.h. Pustaka "application.h" dan spark_wiring_i2c.h berisi fungsi-fungsi yang memfasilitasi komunikasi i2c antara sensor dan partikel.
Seluruh kode partikel diberikan di bawah ini untuk kenyamanan pengguna:
#termasuk
#termasuk
// Alamat ADXL345 I2C adalah 0x53(83)
#tentukan Addr 0x53
int xAccl = 0, yAccl = 0, zAccl = 0;
batalkan pengaturan()
{
// Tetapkan variabel
Particle.variable("i2cdevice", "ADXL345");
Particle.variable("xAccl", xAccl);
Particle.variable("yAccl", yAccl);
Particle.variable("zAccl", zAccl);
// Inisialisasi komunikasi I2C sebagai MASTER
Kawat.mulai();
// Inisialisasi komunikasi serial, setel baud rate = 9600
Serial.begin(9600);
// Mulai transmisi I2C
Wire.beginTransmission(Addr);
// Pilih daftar laju bandwidth
Wire.write(0x2C);
// Pilih kecepatan data keluaran = 100 Hz
Kawat. tulis (0x0A);
// Hentikan Transmisi I2C
Kawat.endTransmisi();
// Mulai transmisi I2C
Wire.beginTransmission(Addr);
// Pilih register kontrol daya
Kawat.tulis (0x2D);
// Pilih penonaktifan tidur otomatis
Kawat.tulis (0x08);
// Hentikan transmisi I2C
Kawat.endTransmisi();
// Mulai transmisi I2C
Wire.beginTransmission(Addr);
// Pilih format data register
Kawat.tulis (0x31);
// Pilih resolusi penuh, +/-2g
Kawat.tulis (0x08);
// Akhiri transmisi I2C
Kawat.endTransmisi();
penundaan (300);
}
lingkaran kosong()
{
data int yang tidak ditandatangani[6];
untuk(int i = 0; i < 6; i++)
{
// Mulai transmisi I2C
Wire.beginTransmission(Addr);
// Pilih daftar data
Wire.write((50+i));
// Hentikan transmisi I2C
Kawat.endTransmisi();
// Meminta 1 byte data dari perangkat
Wire.requestFrom(Addr, 1);
// Baca 6 byte data
// xAccl lsb, xAccl msb, yAccl lsb, yAccl msb, zAccl lsb, zAccl msb
jika(Kabel.tersedia()==1)
{
data = Wire.read();
}
penundaan (300);
}
// Ubah data menjadi 10-bit
int xAccl = (((data[1] & 0x03) * 256) + data[0]);
jika(xAccl > 511)
{
xAccl -= 1024;
}
int yAccl = (((data[3] & 0x03) * 256) + data[2]);
jika(yAccl > 511)
{
yAccl -= 1024;
}
int zAccl = (((data[5] & 0x03) * 256) + data[4]);
jika(zAccl > 511)
{
zAccl -= 1024;
}
// Keluarkan data ke dasbor
Particle.publish("Akselerasi pada sumbu X adalah:", String(xAccl));
Particle.publish("Percepatan pada Sumbu Y adalah:", String(yAccl));
Particle.publish("Percepatan pada Sumbu Z adalah:", String(zAccl));
}
Fungsi Particle.variable() membuat variabel untuk menyimpan output sensor dan fungsi Particle.publish() menampilkan output di dasbor situs.
Output sensor ditunjukkan pada gambar di atas untuk referensi Anda.
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:
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
Pengukuran Percepatan Menggunakan BMA250 dan Foton Partikel: 4 Langkah
Pengukuran Akselerasi Menggunakan BMA250 dan Foton Partikel: BMA250 adalah akselerometer 3-sumbu 3-sumbu kecil, tipis, berdaya ultralow dengan pengukuran resolusi tinggi (13-bit) hingga ±16 g. Data keluaran digital diformat sebagai pelengkap berpasangan 16-bit dan dapat diakses melalui antarmuka digital I2C. Ini mengukur statis
Pengukuran Kelembaban dan Suhu Menggunakan HIH6130 dan Foton Partikel: 4 Langkah
Pengukuran Kelembaban dan Suhu Menggunakan HIH6130 dan Foton Partikel: HIH6130 adalah sensor kelembaban dan suhu dengan output digital. Sensor ini memberikan tingkat akurasi ±4% RH. Dengan stabilitas jangka panjang terdepan di industri, I2C digital dengan kompensasi suhu sejati, keandalan terdepan di industri, Efisiensi energi