Isi kandungan:

Pengukuran Pecutan Menggunakan H3LIS331DL dan Arduino Nano: 4 Langkah
Pengukuran Pecutan Menggunakan H3LIS331DL dan Arduino Nano: 4 Langkah

Video: Pengukuran Pecutan Menggunakan H3LIS331DL dan Arduino Nano: 4 Langkah

Video: Pengukuran Pecutan Menggunakan H3LIS331DL dan Arduino Nano: 4 Langkah
Video: GAMPANG!! Cara pasang gombyok pecut// gombyok bulat #pecut #gambuh @hqpecutponcokusumo 2024, Julai
Anonim
Image
Image

H3LIS331DL, adalah akselerometer linier 3-paksi berprestasi tinggi berkuasa rendah milik keluarga "nano", dengan antara muka siri I²C digital. H3LIS331DL mempunyai skala penuh yang dapat dipilih pengguna ± 100g / ± 200g / ± 400g dan mampu mengukur pecutan dengan kadar data output dari 0,5 Hz hingga 1 kHz. H3LIS331DL dijamin beroperasi pada julat suhu yang diperpanjang dari -40 ° C hingga +85 ° C.

Dalam tutorial ini kita akan menunjukkan antara muka H3LIS331DL dengan Arduino Nano.

Langkah 1: Perkakasan Diperlukan:

Perkakasan Diperlukan
Perkakasan Diperlukan
Perkakasan Diperlukan
Perkakasan Diperlukan
Perkakasan Diperlukan
Perkakasan Diperlukan

Bahan yang kami perlukan untuk mencapai tujuan kami merangkumi komponen perkakasan berikut:

1. H3LIS331DL

2. Arduino Nano

3. Kabel I2C

4. Perisai I2C untuk Arduino Nano

Langkah 2: Penyambungan Perkakasan:

Penyambungan Perkakasan
Penyambungan Perkakasan
Penyambungan Perkakasan
Penyambungan Perkakasan

Bahagian penyambungan perkakasan pada dasarnya menerangkan sambungan pendawaian yang diperlukan antara sensor dan arduino nano. Memastikan sambungan yang betul adalah keperluan asas semasa mengerjakan sistem apa pun untuk output yang diinginkan. Jadi, sambungan yang diperlukan adalah seperti berikut:

H3LIS331DL akan berfungsi menggunakan I2C. Berikut adalah contoh rajah pendawaian, yang menunjukkan cara memasang setiap antara muka sensor.

Di luar kotak, papan dikonfigurasikan untuk antara muka I2C, oleh itu kami mengesyorkan menggunakan penyambungan ini jika anda tidak agnostik. Yang anda perlukan hanyalah empat wayar!

Hanya diperlukan empat sambungan pin Vcc, Gnd, SCL dan SDA dan ini disambungkan dengan bantuan kabel I2C.

Sambungan ini ditunjukkan dalam gambar di atas.

Langkah 3: Kod Arduino untuk Pengukuran Pecutan:

Kod Arduino untuk Pengukuran Pecutan
Kod Arduino untuk Pengukuran Pecutan
Kod Arduino untuk Pengukuran Pecutan
Kod Arduino untuk Pengukuran Pecutan

Mari mulakan dengan kod arduino sekarang.

Semasa menggunakan modul sensor dengan arduino, kami menyertakan perpustakaan Wire.h. Perpustakaan "Wire" mengandungi fungsi yang memudahkan komunikasi i2c antara sensor dan papan arduino.

Keseluruhan kod arduino diberikan di bawah untuk kemudahan pengguna:

#sertakan

// Alamat H3LIS331DL I2C adalah 0x18 (24)

#tentukan Addr 0x18

persediaan tidak sah ()

{

// Memulakan komunikasi I2C sebagai MASTER

Wire.begin ();

// Inisialisasi Serial Communication, tetapkan baud rate = 9600

Serial.begin (9600);

// Mulakan Penghantaran I2C

Wire.beginTransmission (Addr);

// Pilih daftar kawalan 1

Wire.write (0x20);

// Aktifkan paksi X, Y, Z, modus hidup, kadar output data 50Hz

Wire.write (0x27);

// Hentikan Penghantaran I2C

Wire.endTransmission ();

// Mulakan Penghantaran I2C

Wire.beginTransmission (Addr);

// Pilih daftar kawalan 4

Wire.write (0x23);

// Tetapkan skala penuh, +/- 100g, kemas kini berterusan

Wire.write (0x00);

// Hentikan Penghantaran I2C

Wire.endTransmission ();

kelewatan (300);

}

gelung kosong ()

{

data int yang tidak ditandatangani [6];

untuk (int i = 0; i <6; i ++)

{

// Mulakan Penghantaran I2C

Wire.beginTransmission (Addr);

// Pilih daftar data

Wire.write ((40 + i));

// Hentikan Penghantaran I2C

Wire.endTransmission ();

// Minta 1 bait data

Wire.requestFrom (Addr, 1);

// Baca 6 bait data

// xAccl lsb, xAccl msb, yAccl lsb, yAccl msb, zAccl lsb, zAccl msb

jika (Wire.available () == 1)

{

data = Wire.read ();

}

}

kelewatan (300);

// Tukarkan data

int xAccl = ((data [1] * 256) + data [0]);

int yAccl = ((data [3] * 256) + data [2]);

int zAccl = ((data [5] * 256) + data [4]);

// Keluarkan data ke monitor bersiri

Serial.print ("Pecutan dalam X-Axis:");

Serial.println (xAccl);

Serial.print ("Pecutan dalam Y-Axis:");

Serial.println (yAccl);

Serial.print ("Pecutan dalam Z-Axis:");

Serial.println (zAccl);

kelewatan (300);

}

Yang perlu anda buat hanyalah membakar kod di arduino dan periksa bacaan anda di port bersiri. Outputnya ditunjukkan dalam gambar di atas.

Langkah 4: Aplikasi:

Permohonan
Permohonan

Accelerometer seperti H3LIS331DL kebanyakannya menggunakan aplikasinya dalam permainan dan menukar profil paparan. Modul sensor ini juga digunakan dalam sistem pengurusan kuasa lanjutan untuk aplikasi mudah alih. H3LIS331DL adalah sensor pecutan digital triaksial yang digabungkan dengan pengawal interupsi yang dicetuskan oleh gerakan on-chip pintar.

Disyorkan: