Innholdsfortegnelse:

Raspberry Pi - ADXL345 3 -akset akselerometer Java Opplæring: 4 trinn
Raspberry Pi - ADXL345 3 -akset akselerometer Java Opplæring: 4 trinn

Video: Raspberry Pi - ADXL345 3 -akset akselerometer Java Opplæring: 4 trinn

Video: Raspberry Pi - ADXL345 3 -akset akselerometer Java Opplæring: 4 trinn
Video: Raspberry Pi ADXL345 3-Axis Accelerometer Java Tutorial 2024, Juni
Anonim
Image
Image

ADXL345 er et lite, tynt, ultralavt, 3-akset akselerometer med høy oppløsning (13-bit) måling på opptil ± 16 g. Digitale utdata er formatert som 16-biters tokomplement og er tilgjengelig via I2 C digitalt grensesnitt. Den måler den statiske gravitasjonsakselerasjonen i tilt-sensing-applikasjoner, samt dynamisk akselerasjon som følge av bevegelse eller sjokk. Den høye oppløsningen (3,9 mg/LSB) muliggjør måling av hellingsendringer mindre enn 1,0 °. Her er det demonstrasjon med bringebær pi ved hjelp av java -kode.

Trinn 1: Hva du trenger..

Hva trenger du..!!
Hva trenger du..!!

1. Bringebær Pi

2. ADXL345

3. I²C -kabel

4. I²C Shield for Raspberry Pi

5. Ethernet -kabel

Trinn 2: Tilkoblinger:

Tilkoblinger
Tilkoblinger
Tilkoblinger
Tilkoblinger
Tilkoblinger
Tilkoblinger
Tilkoblinger
Tilkoblinger

Ta et I2C -skjold for bringebærpi og skyv det forsiktig over gpio -pinnene til bringebærpi.

Koble deretter den ene enden av I2C -kabelen til ADXL345 -sensoren og den andre enden til I2C -skjoldet.

Koble også Ethernet -kabelen til pi eller du kan bruke en WiFi -modul.

Tilkoblinger er vist på bildet ovenfor.

Trinn 3: Kode:

Kode
Kode

Java-koden for ADXL345 kan lastes ned fra vårt GitHub-depot- Dcube Store

Her er lenken til det samme:

github.com/DcubeTechVentures/ADXL345

Vi har brukt pi4j bibliotek for java -kode, trinnene for å installere pi4j på bringebær pi er beskrevet her:

pi4j.com/install.html

Du kan også kopiere koden herfra, den er gitt som følger:

// Distribuert med en fri viljelisens.

// Bruk den slik du vil, profitt eller gratis, forutsatt at den passer inn i lisensene til de tilhørende verkene.

// ADXL345

// Denne koden er designet for å fungere med ADXL345_I2CS I2C Mini Module tilgjengelig i Dcube Store.

importer com.pi4j.io.i2c. I2CBus;

importer com.pi4j.io.i2c. I2CDenhet;

importer com.pi4j.io.i2c. I2CFactory;

importer java.io. IOException;

offentlig klasse ADXL345

{

public static void main (String args ) kaster Unntak

{

// Lag I2C -buss

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

// Skaff deg I2C -enhet, enhetens I2C -adresse er 0x53 (83)

I2CDevice -enhet = Bus.getDevice (0x53);

// Velg båndbreddehastighetsregister

// Normal modus, Utdatahastighet = 100 Hz

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

// Velg Power control register

// Deaktiver automatisk søvn

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

// Velg Dataformatregister

// Selvtest deaktivert, 4-leder grensesnitt, Full oppløsning, område = +/- 2g

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

Tråd. Sover (500);

// Les 6 byte med data

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

byte data = ny byte [6];

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

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

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

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

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

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

// Konverter dataene til 10-bits

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

hvis (xAccl> 511)

{

xAccl -= 1024;

}

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

hvis (yAccl> 511)

{

yAccl -= 1024;

}

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

hvis (zAccl> 511)

{

zAccl -= 1024;

}

// Utdata til skjermen

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

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

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

}

}

Trinn 4: Søknader:

ADXL345 er et lite, tynt, ultralavt, 3-akset akselerometer som kan brukes i håndsett, medisinsk instrumentering etc. Applikasjonen inkluderer også spill- og pekeenheter, industriell instrumentering, personlige navigasjonsenheter og beskyttelse mot harddisk (HDD).

Anbefalt: