Sisällysluettelo:
- Vaihe 1: Tarvittava laitteisto:
- Vaihe 2: Laitteiston kytkentä:
- Vaihe 3: Kiihtyvyysmittauksen koodi:
- Vaihe 4: Sovellukset:
Video: Kiihtyvyyden mittaus H3LIS331DL: n ja hiukkasfotonin 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 hiukkasfotonin kanssa.
Vaihe 1: Tarvittava laitteisto:
Tavoitteemme saavuttamiseen tarvittavat materiaalit sisältävät seuraavat laitteistokomponentit:
1. H3LIS331DL
2. Hiukkasfotoni
3. I2C -kaapeli
4. I2C -suoja hiukkasfotonille
Vaihe 2: Laitteiston kytkentä:
Laitteiston kytkentäosio selittää periaatteessa anturin ja hiukkasfotonin väliset tarvittavat johdotusliitännät. 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: Kiihtyvyysmittauksen koodi:
Aloitetaan nyt hiukkaskoodista.
Kun käytät anturimoduulia arduinon kanssa, sisällytämme hakemistoon application.h ja spark_wiring_i2c.h. "application.h" ja spark_wiring_i2c.h -kirjasto sisältävät toiminnot, jotka helpottavat i2c -tiedonsiirtoa anturin ja hiukkasen välillä.
Koko hiukkaskoodi annetaan alla käyttäjän mukavuuden vuoksi:
#sisältää
#sisältää
// H3LIS331DL I2C -osoite on 0x18 (24)
#define Addr 0x18
int xAccl = 0, yAccl = 0, zAccl = 0;
mitätön asennus ()
{
// Aseta muuttuja
Particle.variable ("i2cdevice", "H3LIS331DL");
Particle.variable ("xAccl", xAccl);
Particle.variable ("yAccl", yAccl);
Particle.variable ("zAccl", zAccl);
// 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]);
jos (xAccl> 32767)
{
xAccl -= 65536;
}
int yAccl = ((data [3] * 256) + data [2]);
jos (yAccl> 32767)
{
yAccl -= 65536;
}
int zAccl = ((data [5] * 256) + data [4]);
jos (zAccl> 32767)
{
zAccl -= 65536;
}
// Tulosta tiedot kojelautaan
Particle.publish ("Kiihtyvyys X-akselissa on:", Jono (xAccl));
Particle.publish ("Kiihtyvyys Y-akselilla on:", Jono (yAccl));
Particle.publish ("Kiihtyvyys Z-akselissa on:", String (zAccl));
viive (300);
}
Particle.variable () -funktio luo muuttujat anturin lähdön tallentamiseksi ja Particle.publish () -toiminto näyttää tuotoksen sivuston kojelaudalla.
Anturilähtö näkyy yllä olevassa kuvassa.
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 Arduino Nanon avulla: 4 vaihetta
Kiihtyvyyden mittaus H3LIS331DL: n ja Arduino Nanon 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 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