Índice:

Raspberry Pi MMA8452Q 3 eixos 12 bits / 8 bits acelerômetro digital Java Tutorial: 4 etapas
Raspberry Pi MMA8452Q 3 eixos 12 bits / 8 bits acelerômetro digital Java Tutorial: 4 etapas

Vídeo: Raspberry Pi MMA8452Q 3 eixos 12 bits / 8 bits acelerômetro digital Java Tutorial: 4 etapas

Vídeo: Raspberry Pi MMA8452Q 3 eixos 12 bits / 8 bits acelerômetro digital Java Tutorial: 4 etapas
Vídeo: BeagleBone Black MMA8452Q 3-Axis 12-bit/8-bit Digital Accelerometer 'C' Code Tutorial 2024, Novembro
Anonim
Image
Image

O MMA8452Q é um acelerômetro microusinado, capacitivo, capacitivo, de baixo consumo de energia e 12 bits de resolução. Opções flexíveis programáveis pelo usuário são fornecidas com o auxílio de funções embutidas no acelerômetro, configuráveis para dois pinos de interrupção. Possui escalas completas selecionáveis pelo usuário de ± 2g / ± 4g / ± 8g com dados filtrados por filtro passa-alta, bem como dados não filtrados disponíveis em tempo real. Aqui está sua demonstração com raspberry pi usando código java.

Etapa 1: O que você precisa..

O que você precisa..!!
O que você precisa..!!

1. Raspberry Pi

2. MMA8452Q

3. Cabo I²C

4. Escudo I²C para Raspberry Pi

5. Cabo Ethernet

Etapa 2: Conexões:

Conexões
Conexões
Conexões
Conexões
Conexões
Conexões
Conexões
Conexões

Pegue um escudo I2C para raspberry pi e empurre-o suavemente sobre os pinos gpio de raspberry pi.

Em seguida, conecte uma extremidade do cabo I2C ao sensor MMA8452Q e a outra extremidade à blindagem I2C.

Também conecte o cabo Ethernet ao pi ou você pode usar um módulo WiFi.

As conexões são mostradas na imagem acima.

Etapa 3: Código:

Código
Código

O código Java para MMA8452Q pode ser baixado de nosso repositório GitHub- Dcube Store

Aqui está o link para o mesmo:

github.com/DcubeTechVentures/MMA8452Q

Usamos a biblioteca pi4j para o código java, as etapas para instalar o pi4j no raspberry pi são descritas aqui:

pi4j.com/install.html

Você também pode copiar o código daqui, ele é fornecido da seguinte forma:

// Distribuído com uma licença de livre arbítrio.

// Use-o como quiser, com ou sem lucro, desde que se enquadre nas licenças das suas obras associadas.

// MMA8452Q

// Este código é projetado para funcionar com o Mini Módulo MMA8452Q_I2CS I2C disponível na Dcube Store.

import com.pi4j.io.i2c. I2CBus;

import com.pi4j.io.i2c. I2CDevice;

import com.pi4j.io.i2c. I2CFactory;

import java.io. IOException;

classe pública MMA8452Q

{

public static void main (String args ) lança exceção

{

// Criar barramento I2C

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

// Obter dispositivo I2C, o endereço MMA8452Q I2C é 0x1C (28)

Dispositivo I2CDevice = bus.getDevice (0x1C);

// Enviar comando em espera

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

// Enviar comando ativo

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

// Defina o intervalo até +/- 2g

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

Thread.sleep (500);

// Lê 7 bytes de dados do endereço 0x00 (0)

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

byte data = novo byte [7];

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

// Converta os valores

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

if (xAccl> 2047)

{

xAccl = xAccl - 4096;

}

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

if (yAccl> 2047)

{

yAccl = yAccl - 4096;

}

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

if (zAccl> 2047)

{

zAccl = zAccl - 4096;

}

// Dados de saída para a tela

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

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

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

}

}

Etapa 4: Aplicativos:

MMA8452Q tem vários aplicativos que incluem aplicativos E-Compass, detecção de orientação estática que incorpora Retrato / Paisagem, Para cima / Para baixo, Esquerda / Direita, Identificação da posição traseira / frontal, Notebook, e-reader e Detecção de queda e queda livre do laptop, em tempo real detecção de orientação, incluindo realidade virtual e feedback de posição do usuário em jogos 3D, análise de atividade em tempo real, como contagem de passos de pedômetro, detecção de queda livre para HDD, backup de GPS com estimativa de peso e muito mais.

Recomendado: