Orodha ya maudhui:

Raspberry Pi MMA8452Q 3-Axis 12-bit / 8-bit Digital Accelerometer Java Mafunzo: Hatua 4
Raspberry Pi MMA8452Q 3-Axis 12-bit / 8-bit Digital Accelerometer Java Mafunzo: Hatua 4

Video: Raspberry Pi MMA8452Q 3-Axis 12-bit / 8-bit Digital Accelerometer Java Mafunzo: Hatua 4

Video: Raspberry Pi MMA8452Q 3-Axis 12-bit / 8-bit Digital Accelerometer Java Mafunzo: Hatua 4
Video: Raspberry Pi MMA8452Q 3-Axis 12-bit/8-bit Digital Accelerometer Java Tutorial 2024, Julai
Anonim
Image
Image

MMA8452Q ni smart, nguvu ya chini, mhimili tatu, capacitive, accelerometer ya micromachined na bits 12 za azimio. Chaguo zinazoweza kubadilika za mtumiaji hutolewa kwa msaada wa kazi zilizopachikwa kwenye kipima kasi, kinachoweza kusanidiwa kwa pini mbili za kukatiza. Inayo mizani kamili inayoweza kuchagua ya ± 2g / ± 4g / ± 8g na data iliyochujwa ya kupita-kupita iliyochujwa na vile vile data isiyochujwa inapatikana wakati halisi. Hapa kuna onyesho lake na rasipberry pi kutumia nambari ya java.

Hatua ya 1: Unachohitaji.. !

Unachohitaji..!!
Unachohitaji..!!

1. Raspberry Pi

2. MMA8452Q

3. I²C Cable

4. I²C Shield kwa Raspberry Pi

5. Cable ya Ethernet

Hatua ya 2: Miunganisho:

Miunganisho
Miunganisho
Miunganisho
Miunganisho
Miunganisho
Miunganisho
Miunganisho
Miunganisho

Chukua ngao ya I2C kwa pi ya raspberry na usukume kwa upole juu ya pini za gpio za pi ya raspberry.

Kisha unganisha mwisho mmoja wa kebo ya I2C kwenye sensa ya MMA8452Q na mwisho mwingine kwenye ngao ya I2C.

Pia unganisha kebo ya Ethernet kwa pi au unaweza kutumia moduli ya WiFi.

Uunganisho umeonyeshwa kwenye picha hapo juu.

Hatua ya 3: Nambari:

Nambari
Nambari

Nambari ya Java ya MMA8452Q inaweza kupakuliwa kutoka kwa duka yetu ya GitHub- Dcube Store

Hapa kuna kiunga cha hiyo hiyo:

github.com/DcubeTechVentures/MMA8452Q

Tumetumia maktaba ya pi4j kwa nambari ya java, hatua za kusanikisha pi4j kwenye rasiberi pi imeelezewa hapa:

pi4j.com/install.html

Unaweza pia kunakili nambari kutoka hapa, imepewa kama ifuatavyo:

// Imesambazwa na leseni ya hiari.

// Itumie kwa njia yoyote unayotaka, faida au bure, mradi inafaa katika leseni za kazi zake zinazohusiana.

// MMA8452Q

// Nambari hii imeundwa kufanya kazi na MMA8452Q_I2CS I2C Mini Module inayopatikana katika Duka la Dcube.

kuagiza com.pi4j.io.i2c. I2CBus;

kuagiza com.pi4j.io.i2c. I2CDevice;

kuagiza com.pi4j.io.i2c. I2CFactory;

kuagiza java.io. IOException;

darasa la umma MMA8452Q

{

umma tuli batili kuu (Kamba args ) hutupa Ubaguzi

{

// Unda basi ya I2C

Basi la I2C = I2CFactory.getInstance (I2CBus. BUS_1);

// Pata kifaa cha I2C, anwani ya MMA8452Q I2C ni 0x1C (28)

Kifaa cha I2CDevice = bus.getDevice (0x1C);

// Tuma amri ya kusubiri

andika kifaa (0x2A, (byte) 0x00);

// Tuma amri inayotumika

andika kifaa (0x2A, (byte) 0x01);

// Weka Range upto +/- 2g

andika kifaa (0x0E, (byte) 0x00);

Kulala (500);

// Soma kaiti 7 za data kutoka kwa anwani 0x00 (0)

// Hali, X msb, X lsb, Y msb, Y lsb, Z msb, Z lsb

data data = byte mpya [7];

soma kifaa (0x00, data, 0, 7);

// Badilisha maadili

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

ikiwa (xAccl> 2047)

{

xAccl = xAccl - 4096;

}

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

ikiwa (yAccl> 2047)

{

yAccl = yAccl - 4096;

}

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

ikiwa (zAccl> 2047)

{

zAccl = zAccl - 4096;

}

// Pato data kwa screen

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

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

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

}

}

Hatua ya 4: Maombi:

MMA8452Q ina programu anuwai ambazo ni pamoja na matumizi ya E-Compass, kugundua mwelekeo wa tuli ambao unajumuisha Picha / Mazingira, Juu / Chini, Kushoto / Kulia, Kitambulisho cha nafasi ya nyuma / Mbele, Daftari, msomaji wa e, na Kugundua Laptop na Kugundua Freefall, Wakati wa kweli utambuzi wa mwelekeo ikiwa ni pamoja na ukweli halisi na maoni ya nafasi ya mtumiaji wa 3D ya michezo ya kubahatisha, uchambuzi wa shughuli za wakati halisi kama vile kuhesabu hatua ya pedometer, kugundua kuteremka kwa HDD, hesabu ya GPS iliyokufa na mengi zaidi.

Ilipendekeza: