Sadržaj:

Raspberry Pi - ADXL345 troosni akcelerometar Java Tutorial: 4 koraka
Raspberry Pi - ADXL345 troosni akcelerometar Java Tutorial: 4 koraka

Video: Raspberry Pi - ADXL345 troosni akcelerometar Java Tutorial: 4 koraka

Video: Raspberry Pi - ADXL345 troosni akcelerometar Java Tutorial: 4 koraka
Video: Control PWM con acelerometro Android y arduino 2024, Srpanj
Anonim
Image
Image

ADXL345 je mali, tanki, troosni akcelerometar ultra male snage s mjerenjima visoke razlučivosti (13 bita) do ± 16 g. Digitalni izlazni podaci oblikovani su kao 16-bitne dvojke nadopunjeni i dostupni su putem I2 C digitalnog sučelja. Mjeri statičko ubrzanje gravitacije u aplikacijama osjetljivog nagiba, kao i dinamičko ubrzanje koje je posljedica kretanja ili udara. Njegova visoka razlučivost (3,9 mg/LSB) omogućuje mjerenje promjena nagiba manjih od 1,0 °. Evo demonstracije s malinom pi pomoću java koda.

Korak 1: Što vam treba..

Što trebaš..!!
Što trebaš..!!

1. Malina Pi

2. ADXL345

3. I²C kabel

4. I²C štit za Raspberry Pi

5. Ethernet kabel

Korak 2: Veze:

Priključci
Priključci
Priključci
Priključci
Priključci
Priključci
Priključci
Priključci

Uzmite I2C štit za malinu pi i nježno je gurnite preko gpio igle maline pi.

Zatim spojite jedan kraj I2C kabela na ADXL345 senzor, a drugi kraj na I2C štit.

Također priključite Ethernet kabel na pi ili možete koristiti WiFi modul.

Priključci su prikazani na gornjoj slici.

Korak 3: Kôd:

Kodirati
Kodirati

Java kod za ADXL345 može se preuzeti s našeg GitHub spremišta- Dcube Store

Evo linka za isto:

github.com/DcubeTechVentures/ADXL345

Za java kod koristili smo biblioteku pi4j, koraci za instaliranje pi4j na malinu pi opisani su ovdje:

pi4j.com/install.html

Ovdje možete i kopirati kôd, dat je na sljedeći način:

// Distribuirano s licencom slobodne volje.

// Koristite ga kako god želite, profitno ili besplatno, pod uvjetom da se uklapa u licence povezanih djela.

// ADXL345

// Ovaj kôd je dizajniran za rad s ADXL345_I2CS I2C mini modulom dostupnim u trgovini Dcube.

uvoz com.pi4j.io.i2c. I2CBus;

uvoz com.pi4j.io.i2c. I2CDevice;

uvoz com.pi4j.io.i2c. I2CFactory;

import java.io. IOException;

javna klasa ADXL345

{

public static void main (String args ) baca iznimku

{

// Kreiranje sabirnice I2C

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

// Nabavite I2C uređaj, I2C adresa uređaja je 0x53 (83)

I2CDevice uređaj = Bus.getDevice (0x53);

// Odaberite registar stope propusnosti

// Normalni način rada, Brzina izlaznih podataka = 100 Hz

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

// Odaberite registar kontrole snage

// Onemogućavanje automatskog spavanja

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

// Odaberite registar formata podataka

// Samoispitivanje onemogućeno, 4-žično sučelje, puna razlučivost, raspon = +/- 2g

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

Navoj.spavanje (500);

// Očitavanje 6 bajtova podataka

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

bajt podatak = novi bajt [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);

// Pretvorimo podatke u 10-bitne

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

ako (xAccl> 511)

{

xAccl -= 1024;

}

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

ako (yAccl> 511)

{

yAccl -= 1024;

}

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

ako (zAccl> 511)

{

zAccl -= 1024;

}

// Izlaženje podataka na zaslon

System.out.printf ("Ubrzanje u osi X: %d %n", xAccl);

System.out.printf ("Ubrzanje u osi Y: %d %n", yAccl);

System.out.printf ("Ubrzanje u osi Z: %d %n", zAccl);

}

}

Korak 4: Aplikacije:

ADXL345 je mali, tanki, troosni akcelerometar ultra male snage koji se može koristiti u mobilnim slušalicama, medicinskim instrumentima itd. Njegova primjena također uključuje igraće i pokazivačke uređaje, industrijske instrumente, osobne navigacijske uređaje i zaštitu tvrdog diska (HDD).

Preporučeni: