Satura rādītājs:

Paātrinājuma mērīšana, izmantojot H3LIS331DL un Arduino Nano: 4 soļi
Paātrinājuma mērīšana, izmantojot H3LIS331DL un Arduino Nano: 4 soļi

Video: Paātrinājuma mērīšana, izmantojot H3LIS331DL un Arduino Nano: 4 soļi

Video: Paātrinājuma mērīšana, izmantojot H3LIS331DL un Arduino Nano: 4 soļi
Video: Neuerungen Funktionen & mehr der Garmin Venu sq 2 Test deutsch 2024, Novembris
Anonim
Image
Image

H3LIS331DL ir mazjaudas augstas veiktspējas 3 asu lineārs akselerometrs, kas pieder “nano” saimei, ar digitālo I²C sērijas interfeisu. H3LIS331DL ir lietotāja atlasītas pilnas skalas ± 100 g/± 200 g/± 400 g, un tas spēj mērīt paātrinājumus ar izejas datu pārraides ātrumu no 0,5 Hz līdz 1 kHz. Tiek garantēts, ka H3LIS331DL darbosies paplašinātā temperatūras diapazonā no -40 ° C līdz +85 ° C.

Šajā apmācībā mēs demonstrēsim H3LIS331DL saskarni ar Arduino Nano.

1. darbība. Nepieciešamā aparatūra:

Nepieciešamā aparatūra
Nepieciešamā aparatūra
Nepieciešamā aparatūra
Nepieciešamā aparatūra
Nepieciešamā aparatūra
Nepieciešamā aparatūra

Materiāli, kas nepieciešami mūsu mērķa sasniegšanai, ietver šādas aparatūras sastāvdaļas:

1. H3LIS331DL

2. Arduino Nano

3. I2C kabelis

4. I2C vairogs Arduino Nano

2. darbība. Aparatūras savienošana:

Aparatūras savienojums
Aparatūras savienojums
Aparatūras savienojums
Aparatūras savienojums

Aparatūras savienošanas sadaļa pamatā izskaidro nepieciešamos vadu savienojumus starp sensoru un arduino nano. Pareizu savienojumu nodrošināšana ir pamatvajadzība, strādājot pie jebkuras sistēmas vēlamajam rezultātam. Tātad nepieciešamie savienojumi ir šādi:

H3LIS331DL darbosies, izmantojot I2C. Šeit ir elektroinstalācijas shēmas piemērs, kas parāda, kā savienot katru sensora saskarni.

Izņemot komplektu, tāfele ir konfigurēta I2C saskarnei, tāpēc mēs iesakām izmantot šo savienojumu, ja esat citādi agnostiķis. Viss, kas Jums nepieciešams, ir četri vadi!

Nepieciešami tikai četri savienojumi Vcc, Gnd, SCL un SDA, un tie ir savienoti, izmantojot I2C kabeli.

Šie savienojumi ir parādīti iepriekš redzamajos attēlos.

3. darbība: Arduino paātrinājuma mērīšanas kods:

Arduino paātrinājuma mērīšanas kods
Arduino paātrinājuma mērīšanas kods
Arduino paātrinājuma mērīšanas kods
Arduino paātrinājuma mērīšanas kods

Sāksim ar arduino kodu tūlīt.

Izmantojot sensoru moduli ar arduino, mēs iekļaujam Wire.h bibliotēku. "Wire" bibliotēkā ir funkcijas, kas atvieglo i2c komunikāciju starp sensoru un arduino plati.

Viss arduino kods lietotāja ērtībai ir norādīts zemāk:

#iekļaut

// H3LIS331DL I2C adrese ir 0x18 (24)

#define Addr 0x18

anulēts iestatījums ()

{

// Inicializēt I2C komunikāciju kā MASTER

Wire.begin ();

// Inicializēt seriālo komunikāciju, iestatīt pārraides ātrumu = 9600

Sērijas sākums (9600);

// Sākt I2C pārraidi

Wire.beginTransmission (Addr);

// Atlasiet vadības reģistru 1

Wire.write (0x20);

// Iespējot X, Y, Z asi, ieslēgšanas režīmu, datu izvades ātrumu 50Hz

Wire.write (0x27);

// Apturēt I2C pārraidi

Wire.endTransmission ();

// Sākt I2C pārraidi

Wire.beginTransmission (Addr);

// Atlasiet vadības reģistru 4

Wire.write (0x23);

// Iestatīt pilnu mērogu, +/- 100 g, nepārtraukta atjaunināšana

Wire.write (0x00);

// Apturēt I2C pārraidi

Wire.endTransmission ();

kavēšanās (300);

}

tukša cilpa ()

{

neparakstīti int dati [6];

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

{

// Sākt I2C pārraidi

Wire.beginTransmission (Addr);

// Atlasiet datu reģistru

Wire.write ((40+i));

// Apturēt I2C pārraidi

Wire.endTransmission ();

// Pieprasīt 1 baitu datu

Wire.requestFrom (Addr, 1);

// Lasīt 6 baitus datu

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

ja (Wire.available () == 1)

{

dati = Wire.read ();

}

}

kavēšanās (300);

// Konvertēt datus

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

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

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

// Izvadiet datus uz seriālo monitoru

Serial.print ("Paātrinājums X-asī:");

Serial.println (xAccl);

Serial.print ("Paātrinājums Y-asī:");

Serial.println (yAccl);

Serial.print ("Paātrinājums Z-asī:");

Serial.println (zAccl);

kavēšanās (300);

}

Viss, kas jums jādara, ir ierakstīt kodu arduino un pārbaudīt savus rādījumus seriālajā portā. Izeja ir parādīta attēlā iepriekš.

4. darbība. Lietojumprogrammas:

Lietojumprogrammas
Lietojumprogrammas

Akselerometri, piemēram, H3LIS331DL, to galvenokārt izmanto spēlēs un displeja profila pārslēgšanā. Šis sensora modulis tiek izmantots arī uzlabotajā enerģijas pārvaldības sistēmā mobilajām lietojumprogrammām. H3LIS331DL ir trīsasu digitālais paātrinājuma sensors, kas ir apvienots ar inteliģentu mikroshēmas kustības izraisītu pārtraukuma kontrolieri.

Ieteicams: