Talaan ng mga Nilalaman:

Raspberry Pi MMA8452Q 3-Axis 12-bit / 8-bit Digital Accelerometer Java Tutorial: 4 na Hakbang
Raspberry Pi MMA8452Q 3-Axis 12-bit / 8-bit Digital Accelerometer Java Tutorial: 4 na Hakbang

Video: Raspberry Pi MMA8452Q 3-Axis 12-bit / 8-bit Digital Accelerometer Java Tutorial: 4 na Hakbang

Video: Raspberry Pi MMA8452Q 3-Axis 12-bit / 8-bit Digital Accelerometer Java Tutorial: 4 na Hakbang
Video: Raspberry Pi MMA8452Q 3-осевой 12-битный/8-битный цифровой акселерометр Учебное пособие по Python 2024, Hulyo
Anonim
Image
Image

Ang MMA8452Q ay isang matalino, mababang lakas, three-axis, capacitive, micromachined accelerometer na may 12 piraso ng resolusyon. Ang mga nababaluktot na pagpipilian na maaaring mai-program ng gumagamit ay ibinibigay sa tulong ng mga naka-embed na pag-andar sa accelerometer, mai-configure sa dalawang nakakagambala na mga pin. Mayroon itong mapipiling gumagamit na buong kaliskis na ± 2g / ± 4g / ± 8g na may high-pass filter na na-filter na data pati na rin ang hindi na-filter na data na magagamit na real-time. Narito ang pagpapakita nito sa raspberry pi gamit ang java code.

Hakbang 1: Ano ang Kailangan Mo.. !

Ang iyong kailangan..!!
Ang iyong kailangan..!!

1. Raspberry Pi

2. MMA8452Q

3. I²C Cable

4. I²C Shield para sa Raspberry Pi

5. Ethernet Cable

Hakbang 2: Mga Koneksyon:

Mga koneksyon
Mga koneksyon
Mga koneksyon
Mga koneksyon
Mga koneksyon
Mga koneksyon
Mga koneksyon
Mga koneksyon

Kumuha ng isang kalasag I2C para sa raspberry pi at dahan-dahang itulak ito sa mga gpio pin ng raspberry pi.

Pagkatapos ikonekta ang isang dulo ng I2C cable sa MMA8452Q sensor at ang iba pang mga dulo sa I2C kalasag.

Ikonekta din ang Ethernet cable sa pi o maaari kang gumamit ng isang module ng WiFi.

Ang mga koneksyon ay ipinapakita sa larawan sa itaas.

Hakbang 3: Code:

Code
Code

Ang Java code para sa MMA8452Q ay maaaring ma-download mula sa aming GitHub repository- Dcube Store

Narito ang link para sa pareho:

github.com/DcubeTechVentures/MMA8452Q

Gumamit kami ng pi4j library para sa java code, ang mga hakbang upang mai-install ang pi4j sa raspberry pi ay inilarawan dito:

pi4j.com/install.html

Maaari mo ring kopyahin ang code mula dito, ibinibigay ito tulad ng sumusunod:

// Ipinamamahagi ng isang lisensyang malaya ang kalooban.

// Gumamit nito sa anumang paraan na nais mo, kumita o libre, naibigay na umaangkop ito sa mga lisensya ng mga nauugnay na gawa nito.

// MMA8452Q

// Ang code na ito ay dinisenyo upang gumana sa MMA8452Q_I2CS I2C Mini Module na magagamit sa Dcube Store.

import com.pi4j.io.i2c. I2CBus;

import com.pi4j.io.i2c. I2CDevice;

import com.pi4j.io.i2c. I2CFactory;

i-import ang java.io. IOException;

pampublikong klase MMA8452Q

{

public static void main (String args ) nagtatapon ng Exception

{

// Lumikha ng I2C bus

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

// Kumuha ng I2C device, ang address ng MMA8452Q I2C ay 0x1C (28)

I2CDevice aparato = bus.getDevice (0x1C);

// Magpadala ng standby command

aparato. magsulat (0x2A, (byte) 0x00);

// Magpadala ng aktibong utos

aparato.write (0x2A, (byte) 0x01);

// Set Range hanggang sa +/- 2g

aparato. magsulat (0x0E, (byte) 0x00);

Thread.tulog (500);

// Basahin ang 7 bytes ng data mula sa address 0x00 (0)

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

byte data = bagong byte [7];

aparato.read (0x00, data, 0, 7);

// I-convert ang mga halaga

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

kung (xAccl> 2047)

{

xAccl = xAccl - 4096;

}

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

kung (yAccl> 2047)

{

yAccl = yAccl - 4096;

}

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

kung (zAccl> 2047)

{

zAccl = zAccl - 4096;

}

// Output data sa 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);

}

}

Hakbang 4: Mga Aplikasyon:

Ang MMA8452Q ay may iba't ibang mga application na may kasamang mga application ng E-Compass, detalyadong orientation na pagtuklas na nagsasama ng Portrait / Landscape, Pataas / Pababa, Kaliwa / Kanan, Pagkakakilala sa posisyon ng Back / Front, Notebook, e-reader, at Pagtuklas ng Laptop Tumble at Freefall, Real-time ang pagtuklas ng oryentasyon kabilang ang virtual reality at gaming feedback ng posisyon ng gumagamit ng 3D, pagtatasa ng aktibidad sa real-time tulad ng pagbibilang ng hakbang ng pedometer, pagtuklas ng freefall drop para sa HDD, patay-reckoning backup ng GPS at marami pa.

Inirerekumendang: