Sadržaj:

Raspberry Pi MMA8452Q troosni 12-bitni/8-bitni digitalni akcelerometar Java vodič: 4 koraka
Raspberry Pi MMA8452Q troosni 12-bitni/8-bitni digitalni akcelerometar Java vodič: 4 koraka

Video: Raspberry Pi MMA8452Q troosni 12-bitni/8-bitni digitalni akcelerometar Java vodič: 4 koraka

Video: Raspberry Pi MMA8452Q troosni 12-bitni/8-bitni digitalni akcelerometar Java vodič: 4 koraka
Video: Как использовать гироскоп, акселерометр, магнитометр MPU-9250 для Arduino 2024, Studeni
Anonim
Image
Image

MMA8452Q je pametan, troosni, kapacitivni, mikroobrinuti akcelerometar male snage s 12 bita rezolucije. Fleksibilne korisnički programirane opcije omogućene su uz pomoć ugrađenih funkcija u mjeraču ubrzanja, koje se mogu konfigurirati na dva pina prekida. Ima korisničke skale od ± 2 g/± 4 g/± 8 g koje korisnik može odabrati s podacima filtriranim visokopropusnim filtrom, kao i nefiltriranim podacima dostupnim u stvarnom vremenu. Evo njegove demonstracije s malinom pi pomoću java koda.

Korak 1: Što vam treba..

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

1. Malina Pi

2. MMA8452Q

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 senzor MMA8452Q, 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 MMA8452Q možete preuzeti s našeg GitHub spremišta- Dcube Store

Evo linka za isto:

github.com/DcubeTechVentures/MMA8452Q

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.

// MMA8452Q

// Ovaj kôd je dizajniran za rad s MMA8452Q_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 MMA8452Q

{

public static void main (String args ) baca iznimku

{

// Kreiranje sabirnice I2C

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

// Nabavite I2C uređaj, MMA8452Q I2C adresa je 0x1C (28)

I2CDevice uređaj = bus.getDevice (0x1C);

// Pošaljite naredbu u pripravnosti

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

// Slanje aktivne naredbe

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

// Podesite raspon do +/- 2g

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

Navoj.spavanje (500);

// Očitavanje 7 bajtova podataka s adrese 0x00 (0)

// Status, X msb, X lsb, Y msb, Y lsb, Z msb, Z lsb

bajt podatak = novi bajt [7];

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

// Pretvorimo vrijednosti

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

ako (xAccl> 2047)

{

xAccl = xAccl - 4096;

}

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

ako (yAccl> 2047)

{

yAccl = yAccl - 4096;

}

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

ako (zAccl> 2047)

{

zAccl = zAccl - 4096;

}

// Izlaženje podataka na zaslon

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

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

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

}

}

Korak 4: Aplikacije:

MMA8452Q ima različite aplikacije koje uključuju aplikacije za e-kompas, detekciju statičke orijentacije koja uključuje portret/pejzaž, gore/dolje, lijevo/desno, natrag/sprijeda identifikaciju položaja, prijenosno računalo, e-čitač i otkrivanje padova i laptopa u stvarnom vremenu otkrivanje orijentacije, uključujući virtualnu stvarnost i povratne informacije o položaju korisnika 3D igre, analizu aktivnosti u stvarnom vremenu, poput brojanja koraka koraka, detekciju slobodnog pada za HDD, sigurnosno kopiranje GPS-a i još mnogo toga.

Preporučeni: