3 axis Arduino acelerómetro / inclinómetro (inclinación del rodillo / Yaw) (2 / 4 paso)

Paso 2: El código!

Luego subí el siguiente código de http://www.geeetech.com/wiki/index.php/BMA180_Triple_Axis_Accelerometer_Breakout

BMA180 ejes acelerómetro muestra código / /
www.geeetech.com//
//
#include < wire.h >
#define BMA180 0 x 40 //address del acelerómetro
#define RESET 0 x 10
#define PWR 0x0D
#define BW 0 x 20
#define rango 0X35
#define datos 0 x 02
//
int offx = 31;
offy int = 47;
milFD int = -23;
//
void setup()
{
Serial.Begin(9600);
Wire.Begin();
Serial.println ("Demo iniciado, inicialización de los sensores");
AccelerometerInit();
Serial.println ("sensores han sido inicializados");
}
//
void AccelerometerInit()
//
{
temp de Byte [1];
temp1 bytes;
//
writeTo(BMA180,RESET,0xB6);
modo de despertador
writeTo(BMA180,PWR,0x10);
filtro de paso bajo,
readFrom (BMA180, BW, 1, temp);
temp1 = temp [0] & 0x0F;
writeTo (BMA180, BW, temp1);
rango de +/-2g
readFrom (BMA180, gama, 1, temp);
temp1 = (temp [0] & 0xF1) | 0 x 04;
writeTo(BMA180,RANGE,temp1);
}
//
void AccelerometerRead()
{
leer en los datos de 3 ejes, cada uno es de 14 bits
imprimir los datos al terminal de
int n = 6;
resultado de Byte [5];
readFrom (BMA180, resultado n, datos,);

int x = ((resultado [0] | resultado [1] << 8 >> 2) + offx;
Float x1 = x / 4096.0;
Serial.Print("x=");
Serial.Print(x1);
Serial.Print("g");
//
int y = ((resultado [2] | resultado [3] << 8 >> 2) + offy;
Float y1 = y/4096.0;
Serial.Print(",y=");
Serial.Print(Y1);
Serial.Print("g");
//
int z = ((resultado [4] | resultado [5] << 8 >> 2) + milFD;
Float z1 = z/4096.0;
Serial.Print(",z=");
Serial.Print(Z1);
Serial.println("g");
}
//
void loop()
{
AccelerometerRead();
Delay(300); reducir la velocidad de salida
}
//
//---------------- Functions--------------------
Escribe registro de dirección de val en ACC
writeTo vacío (int dispositivo, dirección de byte, byte val)
{
Wire.beginTransmission(DEVICE); iniciar transmisión a ACC
Wire.Write(Address); Dirección de registro
Wire.Write(Val); enviar valor a escribir
Wire.endTransmission(); trnsmisson final
}
Lee num bytes a partir de registro de dirección en a matriz de buff
void readFrom (int dispositivo, dirección de byte, int num, buff[]) bytes
{
Wire.beginTransmission(DEVICE); iniciar transmisión a ACC
Wire.Write(Address); Dirección reguster
Wire.endTransmission(); transmisión final

Wire.beginTransmission(DEVICE); iniciar transmisión a ACC
Wire.requestFrom(DEVICE,num); solicitud de 6 pedacitos de ACC

int i = 0;
while(Wire.Available()) //ACC puede anormal
{
Buff [i] = Wire.read(); recibir un byte
i ++;
}
Wire.endTransmission(); transmisión final
}

Artículos Relacionados

Arduino Acelerómetro Freescale FRDM-STBC-AGM01

Arduino Acelerómetro Freescale FRDM-STBC-AGM01

Gracias de instructable pude hacer mi instructable de este escudo de Freescale para el evento de BuildNight: Casa de Freescale de inventores.Paso 1: Adaptándo LCD un escudo de la... Conseguimos los materiales necesarios para armarla.Usaremos:Potencio
Arduino / acelerómetro ADXL330 procesamiento

Arduino / acelerómetro ADXL330 procesamiento

Esto es todavía un trabajo en progreso. Actualmente sólo muestra el movimiento de eje X y Y, para mostrar algo en el eje z. Esperemos que algún día lo hará. Por favor tarifa y comentario así.Visite http://retardokiddo.blogspot.com/ para más proyectos
Arduino basado metro - un conductor del LED muchas

Arduino basado metro - un conductor del LED muchas

como el resultado directo de una pregunta en el foro de Instructables, para un gráfico de barras Mostrar datos en el salpicadero de un coche, una electronica instructable.Aquí, para su deleite es el coche de barDuino, un simple sistema de visualizaci
Interactuando con un OLED y un acelerómetro

Interactuando con un OLED y un acelerómetro

En el tutorial anterior, aprendimos cómo utilizar un OLED para mostrar diferentes formas. Empezamos dibujando un pixel, y a partir de ahí hemos sido capaces de dibujar líneas, rectángulos, cuadrados y círculos. Sin embargo, cada pantalla nos llevó un
Acelerómetro y giroscopio Tutorial

Acelerómetro y giroscopio Tutorial

IntroducciónEsta guía está dirigida a todos los interesados en el uso de acelerómetros y giróscopos, así como dispositivos de combinación IMU (Unidad de medición inercial) en sus proyectos de electrónicaCubriremos:¿Qué mide un acelerómetro?¿Qué mide
Game Pad USB con inclinación-acelerómetro ratón

Game Pad USB con inclinación-acelerómetro ratón

Hacer un cojín con un acelerómetro dentro del juego!Este tutorial de proyecto le mostrará cómo puede convertir un gamepad de consola en un ratón de teclado USB para jugar en tu PC. El Gamepad USB se puede utilizar con casi cualquier software, como un
Uso de un acelerómetro y un giroscopio con Arduino

Uso de un acelerómetro y un giroscopio con Arduino

he comprado recientemente una combinación de 3 ejes acelerómetro y giroscopio de 2 ejes de Sparkfun y quería publicar parte del código utiliza para conseguirlo ya está en marcha.  Estoy pensando en usarlo en un Arduino basado en controlador MIDI que
Registrador de datos geo: Arduino + GPS + SD + acelerómetro para registrar, sello de tiempo y datos del sensor geo-tag

Registrador de datos geo: Arduino + GPS + SD + acelerómetro para registrar, sello de tiempo y datos del sensor geo-tag

versiones17 de octubre de 2013: he publicado una guía sobre el uso de tu teléfono Android para llevar a cabo una tarea similar al aprovechar tu Android dispositivo de construido en GPS y sensores.06 de febrero de 2013: Aparece en GeoAwesomeness http:
Visualización de ángulo con Edison, acelerómetro y Python de la inclinación

Visualización de ángulo con Edison, acelerómetro y Python de la inclinación

Hace poco compré una placa arduino de Edison de Intel. Después de parpadear el LED a bordo, que quería hacer algo un poco más interesante pero bastante simple. Después de leer Internet, me decidí por acelerómetro basado en detección de inclinación.Po
Controlador de Bluetooth juegos con acelerómetro y Arduino

Controlador de Bluetooth juegos con acelerómetro y Arduino

Todo el mundo le gusta jugar juegos en PC :) ¿Consolas de juegos llevan al siguiente nivel y es más diversión que hacer uno mismo? Aquí hemos construido una consola de juegos con acelerómetro, Arduino y Bluetooth. El acelerómetro en la consola de jue
Arduino Nano: Sensor acelerómetro giroscopio MPU9250 brújula I2C con Visuino

Arduino Nano: Sensor acelerómetro giroscopio MPU9250 brújula I2C con Visuino

MPU9250es uno de los más avanzados sensores de tamaño pequeño acelerómetro, giroscopio y brújula actualmente disponibles combinados. Tienen muchas características avanzadas, incluyendo filtrado de paso bajo, detección de movimiento e incluso un proce
MPU6050: Acelerómetro de Arduino 6 ejes + Gyro - GY 521 prueba y simulación 3D

MPU6050: Acelerómetro de Arduino 6 ejes + Gyro - GY 521 prueba y simulación 3D

¿Está usted buscando para hacer tu propio quadcopter abejón o RC avión con Arduino pero no sabes cómo conseguir el giro de trabajo? ¿Quizás usted ya compró algunos módulos de 6 eje MPU6050 (en las tablas de desglose de GY-521) sólo para descubrir que
Medida del ángulo mediante giroscopio, acelerómetro y Arduino

Medida del ángulo mediante giroscopio, acelerómetro y Arduino

el dispositivo es un prototipo áspero de lo que eventualmente se convertirá en un robot de balance del uno mismo, esta es la segunda parte de la cosa del agujero (leer acelerómetro y controlar un motor a balance del uno mismo). La primera parte con s
Arduino con el motor servo de acelerómetro

Arduino con el motor servo de acelerómetro

Aplicación de control de motor de ADXL345 acelerómetro 2 servo.Paso 1: Código de ArduinoControl de motor de servo ADXL345 acelerómetro 2#include < Wire.h >#include < Servo.h >Servo myservox;Servo myservoy;#define dispositivo (0x53)#define TO_R