Sisällysluettelo:

Raspberry Pi - ADXL345 3 -akselinen kiihtyvyysanturin Java -opetusohjelma: 4 vaihetta
Raspberry Pi - ADXL345 3 -akselinen kiihtyvyysanturin Java -opetusohjelma: 4 vaihetta

Video: Raspberry Pi - ADXL345 3 -akselinen kiihtyvyysanturin Java -opetusohjelma: 4 vaihetta

Video: Raspberry Pi - ADXL345 3 -akselinen kiihtyvyysanturin Java -opetusohjelma: 4 vaihetta
Video: Controlling Servo Motor with MPU6050 gyroscope #shorts 2024, Heinäkuu
Anonim
Image
Image

ADXL345 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 I2 C-liitännän kautta. Se mittaa staattisen painovoiman kiihtyvyyden kallistusanturisovelluksissa sekä liikkeen tai iskun aiheuttaman dynaamisen kiihtyvyyden. Sen suuri resoluutio (3,9 mg/LSB) mahdollistaa kaltevuuden muutosten mittaamisen alle 1,0 °. Tässä on esittely vadelma pi: llä java -koodilla.

Vaihe 1: Mitä tarvitset..

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

1. Vadelma Pi

2. ADXL345

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ää ADXL345 -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

ADXL345: n Java-koodin voi ladata GitHub-arkistostamme- Dcube Storesta

Tässä linkki samaan:

github.com/DcubeTechVentures/ADXL345

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.

// ADXL345

// Tämä koodi on suunniteltu toimimaan Dcube Storessa saatavilla olevan ADXL345_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 ADXL345

{

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

{

// Luo I2C -väylä

I2CBus Bus = I2CFactory.getInstance (I2CBus. BUS_1);

// Hanki I2C -laite, laitteen I2C -osoite on 0x53 (83)

I2CDevice device = Bus.getDevice (0x53);

// Valitse kaistanleveysrekisteri

// Normaalitila, Lähdön datanopeus = 100 Hz

device.write (0x2C, (tavu) 0x0A);

// Valitse Virranhallintarekisteri

// Automaattinen lepotila pois käytöstä

device.write (0x2D, (tavu) 0x08);

// Valitse Tietomuotorekisteri

// Itsetesti poissa käytöstä, 4-johtiminen liitäntä, Täysi resoluutio, alue = +/- 2 g

device.write (0x31, (tavu) 0x08);

Kierteet.unen (500);

// Lue 6 tavua dataa

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

tavu data = uusi tavu [6];

data [0] = (tavu) device.read (0x32);

data [1] = (tavu) device.read (0x33);

data [2] = (tavu) device.read (0x34);

data [3] = (tavu) device.read (0x35);

data [4] = (tavu) device.read (0x36);

data [5] = (tavu) device.read (0x37);

// Muunna tiedot 10-bittisiksi

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

jos (xAccl> 511)

{

xAccl -= 1024;

}

int yAccl = ((data [3] & 0x03) * 256 + (data [2] & 0xFF));

jos (yAccl> 511)

{

yAccl -= 1024;

}

int zAccl = ((data [5] & 0x03) * 256 + (data [4] & 0xFF));

jos (zAccl> 511)

{

zAccl -= 1024;

}

// Tulosta tiedot näytölle

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

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

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

}

}

Vaihe 4: Sovellukset:

ADXL345 on pieni, ohut, erittäin pienitehoinen, 3-akselinen kiihtyvyysmittari, jota voidaan käyttää luureissa, lääketieteellisissä laitteissa jne. Sen sovellus sisältää myös peli- ja osoitinlaitteet, teollisuuslaitteet, henkilökohtaiset navigointilaitteet ja kiintolevyaseman (HDD).

Suositeltava: