Inhaltsverzeichnis:

Raspberry Pi MMA8452Q 3-Achsen 12-Bit/8-Bit digitaler Beschleunigungsmesser Java Tutorial - Gunook
Raspberry Pi MMA8452Q 3-Achsen 12-Bit/8-Bit digitaler Beschleunigungsmesser Java Tutorial - Gunook

Video: Raspberry Pi MMA8452Q 3-Achsen 12-Bit/8-Bit digitaler Beschleunigungsmesser Java Tutorial - Gunook

Video: Raspberry Pi MMA8452Q 3-Achsen 12-Bit/8-Bit digitaler Beschleunigungsmesser Java Tutorial - Gunook
Video: BeagleBone Black MMA8452Q 3-Axis 12-bit/8-bit Digital Accelerometer 'C' Code Tutorial 2024, November
Anonim
Image
Image

Der MMA8452Q ist ein intelligenter, stromsparender, dreiachsiger, kapazitiver, mikrobearbeiteter Beschleunigungsmesser mit 12 Bit Auflösung. Flexible, vom Benutzer programmierbare Optionen werden mit Hilfe eingebetteter Funktionen im Beschleunigungsmesser bereitgestellt, die auf zwei Interrupt-Pins konfigurierbar sind. Es verfügt über vom Benutzer wählbare Skalenendwerte von ±2g/±4g/±8g mit hochpassfiltergefilterten Daten sowie ungefilterten Daten, die in Echtzeit verfügbar sind. Hier ist die Demonstration mit Himbeer-Pi mit Java-Code.

Schritt 1: Was Sie brauchen.

Was du brauchst..!!
Was du brauchst..!!

1. Himbeer-Pi

2. MMA8452Q

3. I²C-Kabel

4. I²C-Shield für Raspberry Pi

5. Ethernet-Kabel

Schritt 2: Anschlüsse:

Anschlüsse
Anschlüsse
Anschlüsse
Anschlüsse
Anschlüsse
Anschlüsse
Anschlüsse
Anschlüsse

Nehmen Sie ein I2C-Schild für Himbeer-Pi und schieben Sie es vorsichtig über die gpio-Pins von Himbeer-Pi.

Verbinden Sie dann das eine Ende des I2C-Kabels mit dem MMA8452Q-Sensor und das andere Ende mit der I2C-Abschirmung.

Verbinden Sie auch das Ethernet-Kabel mit dem Pi oder verwenden Sie ein WiFi-Modul.

Die Anschlüsse sind im Bild oben dargestellt.

Schritt 3: Code:

Code
Code

Der Java-Code für MMA8452Q kann von unserem GitHub-Repository heruntergeladen werden - Dcube Store

Hier der Link dazu:

github.com/DcubeTechVentures/MMA8452Q

Wir haben die pi4j-Bibliothek für Java-Code verwendet, die Schritte zur Installation von pi4j auf Raspberry Pi sind hier beschrieben:

pi4j.com/install.html

Sie können den Code auch von hier kopieren, er wird wie folgt angegeben:

// Wird mit einer frei wählbaren Lizenz vertrieben.

// Verwenden Sie es, wie Sie wollen, gewinnbringend oder kostenlos, sofern es in die Lizenzen der zugehörigen Werke passt.

// MMA8452Q

// Dieser Code wurde entwickelt, um mit dem MMA8452Q_I2CS I2C Mini-Modul zu arbeiten, das im Dcube Store erhältlich ist.

com.pi4j.io.i2c. I2CBus importieren;

com.pi4j.io.i2c. I2CDevice importieren;

com.pi4j.io.i2c. I2CFactory importieren;

import java.io. IOException;

öffentliche Klasse MMA8452Q

{

public static void main(String args) löst Ausnahme aus

{

// I2C-Bus erstellen

I2CBus-Bus = I2CFactory.getInstance(I2CBus. BUS_1);

// I2C-Gerät abrufen, MMA8452Q I2C-Adresse ist 0x1C(28)

I2CDevice-Gerät = bus.getDevice(0x1C);

// Standby-Befehl senden

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

// Aktiven Befehl senden

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

// Bereich bis +/-2g. einstellen

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

Thread.sleep(500);

// 7 Byte Daten von Adresse 0x00(0) lesen

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

Byte Daten = neues Byte[7];

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

// Werte umrechnen

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

if (xAccl > 2047)

{

xAccl = xAccl - 4096;

}

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

if (yAccl > 2047)

{

yAccl = yAccl - 4096;

}

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

if (zAccl > 2047)

{

zAccl = zAccl - 4096;

}

// Daten auf Bildschirm ausgeben

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

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

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

}

}

Schritt 4: Anwendungen:

MMA8452Q verfügt über verschiedene Anwendungen, darunter E-Kompass-Anwendungen, statische Orientierungserkennung, die Hochformat/Querformat, Oben/Unten, Links/Rechts, Hinten/Vorder-Positionserkennung, Notebook, E-Reader und Laptop-Sturz- und Freifall-Erkennung in Echtzeit umfasst Orientierungserkennung einschließlich Virtual Reality und Gaming 3D-Benutzerpositions-Feedback, Echtzeit-Aktivitätsanalyse wie Schrittzähler, Freifall-Erkennung für HDD, Koppelnavigations-GPS-Backup und vieles mehr.

Empfohlen: