Sisällysluettelo:

Raspberry Pi MMA8452Q 3-akselinen 12-bittinen/8-bittinen digitaalinen kiihtyvyysanturi Java-opetusohjelma: 4 vaihetta
Raspberry Pi MMA8452Q 3-akselinen 12-bittinen/8-bittinen digitaalinen kiihtyvyysanturi Java-opetusohjelma: 4 vaihetta

Video: Raspberry Pi MMA8452Q 3-akselinen 12-bittinen/8-bittinen digitaalinen kiihtyvyysanturi Java-opetusohjelma: 4 vaihetta

Video: Raspberry Pi MMA8452Q 3-akselinen 12-bittinen/8-bittinen digitaalinen kiihtyvyysanturi Java-opetusohjelma: 4 vaihetta
Video: Raspberry Pi MMA8452Q 3-Axis 12-bit/8-bit Digital Accelerometer Java Tutorial 2024, Heinäkuu
Anonim
Image
Image

MMA8452Q on älykäs, pienitehoinen, kolmiakselinen, kapasitiivinen, mikrotyöstettävä kiihtyvyysanturi, jonka tarkkuus on 12 bittiä. Joustavat käyttäjän ohjelmoitavat vaihtoehdot on varustettu kiihtyvyysmittarin upotetuilla toiminnoilla, jotka voidaan konfiguroida kahteen keskeytystappiin. Siinä on käyttäjän valittavissa olevat täydet asteikot ± 2 g/± 4 g/± 8 g, joissa on ylipäästösuodattimen suodatettua dataa ja reaaliajassa saatavilla suodattamatonta tietoa. Tässä on sen esittely vadelma pi: llä java -koodilla.

Vaihe 1: Mitä tarvitset..

Mitä tarvitset..!!
Mitä tarvitset..!!

1. Vadelma Pi

2. MMA8452Q

3. I²C -kaapeli

4. I²C -kilpi Raspberry Pi: lle

5. Ethernet -kaapeli

Vaihe 2: Liitännät:

Liitännät
Liitännät
Liitännät
Liitännät
Liitännät
Liitännät
Liitännät
Liitännät

Ota I2C -kilpi vadelma pi: lle ja työnnä sitä varovasti vadelma pi: n gpio -nastojen päälle.

Liitä sitten I2C -kaapelin toinen pää MMA8452Q -anturiin ja toinen pää I2C -suojaan.

Liitä myös Ethernet -kaapeli pi: hen tai voit käyttää WiFi -moduulia.

Liitännät näkyvät yllä olevassa kuvassa.

Vaihe 3: Koodi:

Koodi
Koodi

MMA8452Q: n Java-koodin voi ladata GitHub-arkistostamme- Dcube Store

Tässä linkki samaan:

github.com/DcubeTechVentures/MMA8452Q

Olemme käyttäneet java -koodille pi4j -kirjastoa, vaiheet pi4j: n asentamiseksi vadelma pi: lle on kuvattu tässä:

pi4j.com/install.html

Voit myös kopioida koodin täältä, se annetaan seuraavasti:

// Jaetaan vapaaehtoisella lisenssillä.

// Käytä sitä haluamallasi tavalla, voittoa tai ilmaiseksi, jos se sopii siihen liittyvien teosten lisensseihin.

// MMA8452Q

// Tämä koodi on suunniteltu toimimaan Dcube Storesta saatavilla olevan MMA8452Q_I2CS I2C Mini -moduulin kanssa.

tuonti com.pi4j.io.i2c. I2CBus;

tuoda com.pi4j.io.i2c. I2CDevice;

tuonti com.pi4j.io.i2c. I2CFactory;

tuoda java.io. IOException;

julkinen luokka MMA8452Q

{

public staattinen void main (String args ) heittää Poikkeus

{

// Luo I2C -väylä

I2CBus -väylä = I2CFactory.getInstance (I2CBus. BUS_1);

// Hanki I2C -laite, MMA8452Q I2C -osoite on 0x1C (28)

I2CDlaitelaite = väylä.getDevice (0x1C);

// Lähetä valmiustilakomento

device.write (0x2A, (tavu) 0x00);

// Lähetä aktiivinen komento

device.write (0x2A, (tavu) 0x01);

// Aseta alue enintään +/- 2 g

device.write (0x0E, (tavu) 0x00);

Kierteet.unen (500);

// Lue 7 tavua dataa osoitteesta 0x00 (0)

// Tila, X msb, X lsb, Y msb, Y lsb, Z msb, Z lsb

tavu data = uusi tavu [7];

device.read (0x00, data, 0, 7);

// Muunna arvot

int xAccl = (((data [1] & 0xFF) * 256) + (data [2] & 0xFF)) / 16;

jos (xAccl> 2047)

{

xAccl = xAccl - 4096;

}

int yAccl = (((data [3] & 0xFF) * 256) + (data [4] & 0xFF)) / 16;

jos (yAccl> 2047)

{

yAccl = yAccl - 4096;

}

int zAccl = (((data [5] & 0xFF) * 256) + (data [6] & 0xFF)) / 16;

jos (zAccl> 2047)

{

zAccl = zAccl - 4096;

}

// Tulosta tiedot näytölle

System.out.printf ("X-akseli: %d %n", xAccl);

System.out.printf ("Y-akseli: %d %n", yAccl);

System.out.printf ("Z-akseli: %d %n", zAccl);

}

}

Vaihe 4: Sovellukset:

MMA8452Q: ssa on useita sovelluksia, joihin kuuluvat E-kompassisovellukset, staattisen suunnan tunnistus, joka sisältää pystysuuntaisen/vaakasuuntaisen, ylös/alas, vasen/oikea, taka-/etuasennon tunnistuksen, kannettavan, e-lukijan ja kannettavan tietokoneen rummun ja putoamisen tunnistuksen, reaaliaikainen suunnan havaitseminen, mukaan lukien virtuaalitodellisuus ja pelaamisen 3D-käyttäjäpalaute, reaaliaikainen toiminta-analyysi, kuten askelmittarin askellaskenta, vapaapudotuksen havaitseminen kiintolevylle, kuolleen laskennan GPS-varmuuskopiointi ja paljon muuta.

Suositeltava: