Sisällysluettelo:
- Vaihe 1: Tarvittava laitteisto:
- Vaihe 2: Laitteiston kytkentä:
- Vaihe 3: Arduino -koodi kiihtyvyyden mittaamiseen:
- Vaihe 4: Sovellukset:
Video: Kiihtyvyyden mittaus H3LIS331DL: n ja Arduino Nanon avulla: 4 vaihetta
2024 Kirjoittaja: John Day | [email protected]. Viimeksi muokattu: 2024-01-30 09:00
H3LIS331DL on pienitehoinen, suorituskykyinen 3-akselinen lineaarinen kiihtyvyysanturi, joka kuuluu nano-perheeseen, ja jossa on digitaalinen I²C-sarjaliitäntä. H3LIS331DL: ssä on käyttäjän valittavissa olevat täydet asteikot ± 100 g/± 200 g/± 400 g, ja se pystyy mittaamaan kiihtyvyydet lähtötiedonsiirtonopeuksilla 0,5 Hz - 1 kHz. H3LIS331DL: n taataan toimivan laajemmalla lämpötila -alueella -40 ° C -+85 ° C.
Tässä opetusohjelmassa aiomme osoittaa H3LIS331DL: n rajapinnan Arduino Nanon kanssa.
Vaihe 1: Tarvittava laitteisto:
Tavoitteemme saavuttamiseen tarvittavat materiaalit sisältävät seuraavat laitteistokomponentit:
1. H3LIS331DL
2. Arduino Nano
3. I2C -kaapeli
4. I2C -kilpi Arduino Nanolle
Vaihe 2: Laitteiston kytkentä:
Laitteiston kytkentäosio selittää periaatteessa anturin ja arduino nanon väliset tarvittavat johdot. Oikeiden liitosten varmistaminen on perustarve, kun työskentelet minkä tahansa järjestelmän kanssa halutun lähdön saavuttamiseksi. Tarvittavat liitännät ovat siis seuraavat:
H3LIS331DL toimii I2C: n yli. Tässä on esimerkki kytkentäkaaviosta, joka osoittaa, miten anturin jokainen liitäntä kytketään.
Valmis levy on konfiguroitu I2C-rajapintaa varten, joten suosittelemme käyttämään tätä kytkentää, jos olet muuten agnostikko. Tarvitset vain neljä johtoa!
Tarvitaan vain neljä liitäntää Vcc, Gnd, SCL ja SDA, ja ne on kytketty I2C -kaapelin avulla.
Nämä yhteydet on esitetty yllä olevissa kuvissa.
Vaihe 3: Arduino -koodi kiihtyvyyden mittaamiseen:
Aloitetaan nyt arduino -koodilla.
Kun käytät anturimoduulia arduinon kanssa, sisällytämme Wire.h -kirjaston. "Wire" -kirjasto sisältää toiminnot, jotka helpottavat i2c -tiedonsiirtoa anturin ja arduino -kortin välillä.
Koko arduino -koodi on annettu alla käyttäjän mukavuuden vuoksi:
#sisältää
// H3LIS331DL I2C -osoite on 0x18 (24)
#define Addr 0x18
mitätön asennus ()
{
// Alusta I2C -viestintä MASTERiksi
Wire.begin ();
// Alusta sarjaliikenne, aseta baudinopeus = 9600
Sarja.alku (9600);
// Käynnistä I2C -lähetys
Wire.beginTransmission (Addr);
// Valitse ohjausrekisteri 1
Wire.write (0x20);
// Ota käyttöön X, Y, Z -akseli, käynnistystila, tiedonsiirtonopeus 50 Hz
Wire.write (0x27);
// Pysäytä I2C -lähetys
Wire.endTransmission ();
// Käynnistä I2C -lähetys
Wire.beginTransmission (Addr);
// Valitse ohjausrekisteri 4
Wire.write (0x23);
// Aseta koko asteikko, +/- 100 g, jatkuva päivitys
Wire.write (0x00);
// Pysäytä I2C -lähetys
Wire.endTransmission ();
viive (300);
}
tyhjä silmukka ()
{
allekirjoittamattomat int -tiedot [6];
(int i = 0; i <6; i ++)
{
// Käynnistä I2C -lähetys
Wire.beginTransmission (Addr);
// Valitse tietorekisteri
Wire.write ((40+i));
// Pysäytä I2C -lähetys
Wire.endTransmission ();
// Pyydä 1 tavu dataa
Wire.requestFrom (Addr, 1);
// Lue 6 tavua dataa
// xAccl lsb, xAccl msb, yAccl lsb, yAccl msb, zAccl lsb, zAccl msb
jos (Wire.available () == 1)
{
data = Wire.read ();
}
}
viive (300);
// Muunna tiedot
int xAccl = ((data [1] * 256) + data [0]);
int yAccl = ((data [3] * 256) + data [2]);
int zAccl = ((data [5] * 256) + data [4]);
// Tulostustiedot sarjamittarille
Serial.print ("Kiihtyvyys X-akselissa:");
Sarja.println (xAccl);
Serial.print ("Kiihtyvyys Y-akselilla:");
Sarja.println (yAccl);
Serial.print ("Kiihtyvyys Z-akselissa:");
Sarja.println (zAccl);
viive (300);
}
Sinun tarvitsee vain polttaa koodi arduino -ohjelmassa ja tarkistaa lukemat sarjaportista.
Vaihe 4: Sovellukset:
Kiihtyvyysmittarit, kuten H3LIS331DL, löytävät sovelluksensa enimmäkseen peleissä ja näyttöprofiilin vaihtamisessa. Tätä anturimoduulia käytetään myös kehittyneessä mobiilisovellusten virranhallintajärjestelmässä. H3LIS331DL on kolmiaksiaalinen digitaalinen kiihtyvyysanturi, joka on varustettu älykkäällä sirulla tapahtuvalla liikkeen laukaisemalla keskeytysohjaimella.
Suositeltava:
Kiihtyvyyden mittaus H3LIS331DL: n ja hiukkasfotonin avulla: 4 vaihetta
Kiihtyvyyden mittaus H3LIS331DL: n ja hiukkasfotonin avulla: H3LIS331DL on pienitehoinen, korkean suorituskyvyn 3-akselinen lineaarinen kiihtyvyysanturi, joka kuuluu nano-perheeseen ja jossa on digitaalinen I²C-sarjaliitäntä. H3LIS331DL: ssä on käyttäjän valittavissa täydet asteikot ± 100 g/± 200 g/± 400 g, ja se pystyy mittaamaan kiihtyvyydet
Kiihtyvyyden mittaus käyttäen H3LIS331DL ja Raspberry Pi: 4 vaihetta
Kiihtyvyyden mittaus H3LIS331DL: n ja Raspberry Pi: n avulla: H3LIS331DL on pienitehoinen ja suorituskykyinen 3-akselinen lineaarinen kiihtyvyysanturi, joka kuuluu nano-perheeseen, ja jossa on digitaalinen I²C-sarjaliitäntä. H3LIS331DL: ssä on käyttäjän valittavissa täydet asteikot ± 100 g/± 200 g/± 400 g, ja se pystyy mittaamaan kiihtyvyydet
Kiihtyvyyden mittaus BMA250: n ja Arduino Nanon avulla: 4 vaihetta
Kiihtyvyyden mittaus BMA250: n ja Arduino Nanon avulla: BMA250 on pieni, ohut, erittäin matalatehoinen, 3-akselinen kiihtyvyysanturi, jonka tarkkuus (13-bittinen) mitataan jopa ± 16 g. Digitaalinen lähtötieto on muotoiltu 16-bittiseksi kaksoiskappaleeksi ja se on saatavana digitaalisen I2C-liitännän kautta. Se mittaa staattisen
Kiihtyvyyden mittaus BMA250: n ja Raspberry Pi: n avulla: 4 vaihetta
Kiihtyvyyden mittaus käyttämällä BMA250: tä ja Raspberry Pi: tä: BMA250 on pieni, ohut, erittäin pienitehoinen, 3-akselinen kiihtyvyysanturi, jonka tarkkuus (13-bittinen) mitataan jopa ± 16 g. Digitaalinen lähtötieto on muotoiltu 16-bittiseksi kaksoiskappaleeksi ja se on saatavana digitaalisen I2C-liitännän kautta. Se mittaa staattisen
Kiihtyvyyden mittaus BMA250: n ja hiukkasfotonin avulla: 4 vaihetta
Kiihtyvyyden mittaus käyttämällä BMA250: tä ja hiukkasfotonia: BMA250 on pieni, ohut, erittäin pienitehoinen 3-akselinen kiihtyvyysmittari, jolla on suuri resoluutio (13-bittinen) mittaus jopa ± 16 g. Digitaalinen lähtötieto on muotoiltu 16-bittiseksi kaksoiskappaleeksi ja se on saatavana digitaalisen I2C-liitännän kautta. Se mittaa staattisen