Obsah:

Raspberry Pi - 3 -osý akcelerometer ADXL345 Java, návod: 4 kroky
Raspberry Pi - 3 -osý akcelerometer ADXL345 Java, návod: 4 kroky

Video: Raspberry Pi - 3 -osý akcelerometer ADXL345 Java, návod: 4 kroky

Video: Raspberry Pi - 3 -osý akcelerometer ADXL345 Java, návod: 4 kroky
Video: Accelerometer (Raspberry Pi) 2024, Júl
Anonim
Image
Image

ADXL345 je malý, tenký, 3-osový akcelerometer s ultra nízkym výkonom a meraním s vysokým rozlíšením (13 bitov) až ± 16 g. Digitálne výstupné údaje sú formátované ako 16-bitové dvojčatá a sú prístupné prostredníctvom digitálneho rozhrania I2 C. Meria statické gravitačné zrýchlenie v aplikáciách snímajúcich náklon, ako aj dynamické zrýchlenie vyplývajúce z pohybu alebo šoku. Jeho vysoké rozlíšenie (3,9 mg/LSB) umožňuje meranie zmien sklonu menej ako 1,0 °. Tu je ukážka s malinovou pí pomocou kódu Java.

Krok 1: Čo potrebujete.. !

Čo potrebuješ..!!
Čo potrebuješ..!!

1. Raspberry Pi

2. ADXL345

3. Kábel I²C

4. I²C štít pre Raspberry Pi

5. Ethernetový kábel

Krok 2: Pripojenia:

Pripojenia
Pripojenia
Pripojenia
Pripojenia
Pripojenia
Pripojenia
Pripojenia
Pripojenia

Vezmite I2C štít na malinový pi a jemne ho zatlačte cez gpio kolíky malinového pi.

Potom pripojte jeden koniec kábla I2C k senzoru ADXL345 a druhý koniec k štítu I2C.

Pripojte tiež ethernetový kábel k pí alebo môžete použiť modul WiFi.

Pripojenia sú znázornené na obrázku vyššie.

Krok 3: Kód:

Kód
Kód

Java kód pre ADXL345 si môžete stiahnuť z nášho úložiska GitHub- Dcube Store

Tu je odkaz na to isté:

github.com/DcubeTechVentures/ADXL345

Na kód java sme použili knižnicu pi4j, kroky na inštaláciu pi4j na malinový pi sú popísané tu:

pi4j.com/install.html

Odtiaľto môžete tiež skopírovať kód, ktorý je nasledujúci:

// Distribuované s licenciou slobodnej vôle.

// Používajte ho akýmkoľvek spôsobom chcete, so ziskom alebo zadarmo, za predpokladu, že sa zmestí do licencií k ním pridruženým dielam.

// ADXL345

// Tento kód je navrhnutý tak, aby fungoval s mini modulom ADXL345_I2CS I2C dostupným v obchode Dcube Store.

import com.pi4j.io.i2c. I2CBus;

import com.pi4j.io.i2c. I2CDevice;

import com.pi4j.io.i2c. I2CFactory;

import java.io. IOException;

verejná trieda ADXL345

{

public static void main (String args ) hodí výnimku

{

// Vytvorenie zbernice I2C

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

// Získať zariadenie I2C, adresa zariadenia I2C je 0x53 (83)

Zariadenie I2CDevice = Bus.getDevice (0x53);

// Vyberte register rýchlosti šírky pásma

// Normálny režim, výstupný dátový tok = 100 Hz

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

// Vyberte Register riadenia napájania

// Vypnutie automatického spánku

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

// Vyberte register formátu údajov

// Automatický test deaktivovaný, 4-vodičové rozhranie, plné rozlíšenie, rozsah = +/- 2 g

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

Thread.sleep (500);

// Prečítajte 6 bajtov údajov

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

bajt dáta = nový 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);

// Previesť údaje na 10-bitové

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

ak (xAccl> 511)

{

xAccl -= 1024;

}

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

ak (yAccl> 511)

{

yAccl -= 1024;

}

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

ak (zAccl> 511)

{

zAccl -= 1024;

}

// Výstup údajov na obrazovku

System.out.printf ("Zrýchlenie v osi X: %d %n", xAccl);

System.out.printf ("Zrýchlenie v osi Y: %d %n", yAccl);

System.out.printf ("Zrýchlenie v osi Z: %d %n", zAccl);

}

}

Krok 4: Aplikácie:

ADXL345 je malý, tenký, ultraľahký, 3-osový akcelerometer, ktorý je možné použiť v mobilných telefónoch, lekárskych prístrojoch atď. Jeho aplikácia zahŕňa aj herné a ukazovacie zariadenia, priemyselné prístroje, osobné navigačné zariadenia a ochranu pevného disku (HDD).

Odporúča: